*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0F1117;--surface: #1A1D27;--card: #20243A;--raised: #252A3F;--accent: #F97316;--accent-soft: rgba(249,115,22,.12);--blue: #3B82F6;--blue-soft: rgba(59,130,246,.12);--green: #22C55E;--green-soft: rgba(34,197,94,.12);--amber: #F59E0B;--amber-soft: rgba(245,158,11,.12);--red: #EF4444;--red-soft: rgba(239,68,68,.12);--text: #F1F5F9;--text-mid: #CBD5E1;--text-muted: #64748B;--border: rgba(255,255,255,.07);--border-mid: rgba(255,255,255,.12);--font: "DM Sans", sans-serif;--radius: 14px}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--raised);border-radius:2px}button{font-family:var(--font);cursor:pointer}input,select,textarea{font-family:var(--font)}a{color:inherit;text-decoration:none}.page{padding:24px;max-width:1100px;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.btn{border:none;border-radius:12px;padding:10px 18px;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s}.btn:hover{opacity:.88}.btn-primary{background:var(--accent);color:#fff}.btn-secondary{background:var(--card);border:1px solid var(--border);color:var(--text-mid)}.btn-green{background:var(--green-soft);border:1px solid rgba(34,197,94,.3);color:var(--green)}.btn-red{background:var(--red-soft);border:1px solid rgba(239,68,68,.3);color:var(--red)}.btn-blue{background:var(--blue-soft);border:1px solid rgba(59,130,246,.3);color:var(--blue)}.input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--text);outline:none}.label{font-size:11px;font-weight:700;color:var(--text-muted);margin-bottom:5px;display:block;letter-spacing:.3px}.pill{border-radius:20px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex;align-items:center;gap:4px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.flex-col{display:flex;flex-direction:column}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.text-accent{color:var(--accent)}.text-muted{color:var(--text-muted)}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-amber{color:var(--amber)}.fw-700{font-weight:700}.fw-800{font-weight:800}.fs-12{font-size:12px}.fs-13{font-size:13px}.fs-14{font-size:14px}@media (max-width: 768px){.grid-4,.grid-3{grid-template-columns:1fr 1fr}.grid-2{grid-template-columns:1fr}.page{padding:16px}}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media (max-width: 768px){.grid-4{grid-template-columns:repeat(2,1fr)}}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.btn{border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;border:none;font-family:inherit}.btn-primary{background:var(--accent);color:#fff;border:none}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--surface);color:var(--text-muted);border:1px solid var(--border)}.btn-secondary:hover{color:var(--text);border-color:var(--text-muted)}.input{width:100%;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--text);outline:none;font-family:inherit}.input:focus{border-color:var(--accent)}select.input{cursor:pointer}textarea.input{min-height:80px}.label{display:block;font-size:11px;font-weight:700;color:var(--text-muted);margin-bottom:5px;letter-spacing:.3px}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}.page{padding:24px;max-width:1100px}[data-theme=light]{--bg: #F1F5F9;--surface: #FFFFFF;--card: #F8FAFC;--raised: #E2E8F0;--text: #0F172A;--text-mid: #334155;--text-muted: #64748B;--border: rgba(0,0,0,.08);--border-mid: rgba(0,0,0,.12)}
