:root{--color-bg:#f6f8fb;--color-bg-soft:#eef2f7;--color-surface:#fff;--color-surface-translucent:#ffffffc7;--color-border:#0f172a14;--color-border-strong:#0f172a29;--color-divider:#0f172a0f;--color-text:#0f172a;--color-text-muted:#475569;--color-text-subtle:#94a3b8;--color-text-inverse:#fff;--color-accent:#2563eb;--color-accent-strong:#1d4ed8;--color-accent-soft:#2563eb1a;--color-accent-glow:0 0 0 3px #2563eb2e;--color-success:#047857;--color-success-soft:#0478571a;--color-warning:#b45309;--color-warning-soft:#b453091a;--color-danger:#b91c1c;--color-danger-soft:#b91c1c1a;--font-sans:"Inter", "SF Pro Text", system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", ui-monospace, Consolas, monospace;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 2px 8px #0f172a0d;--shadow-md:0 8px 24px #0f172a0f;--shadow-lg:0 18px 48px #0f172a14;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;color:var(--color-text);background:radial-gradient(circle at 12% -10%, #2563eb14, transparent 45%), radial-gradient(circle at 92% 110%, #6366f10f, transparent 45%), var(--color-bg);font-family:var(--font-sans);letter-spacing:.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-size:14px;font-weight:400;line-height:1.55}*,:before,:after{box-sizing:border-box}html,body{min-height:100vh;margin:0;padding:0}body{background:0 0;min-width:320px}#root{min-height:100vh}a{color:var(--color-accent);text-decoration:none;transition:color .15s}a:hover{color:var(--color-accent-strong)}h1,h2,h3,h4,h5{color:var(--color-text);letter-spacing:-.015em;margin:0 0 var(--space-3);font-weight:600}h1{font-size:clamp(1.5rem,2.2vw,2rem)}h2{font-size:1.25rem}h3{font-size:1rem}h4{font-size:.9375rem}p{margin:0 0 var(--space-3)}p:last-child{margin-bottom:0}code,kbd,pre{font-family:var(--font-mono);font-size:.85em}code{background:var(--color-bg-soft);border:1px solid var(--color-divider);border-radius:var(--radius-xs);color:var(--color-text);padding:1px 6px}hr{border:none;border-top:1px solid var(--color-divider);margin:var(--space-5) 0}.app-shell{min-height:100vh;padding:var(--space-8) var(--space-6) var(--space-8);isolation:isolate;position:relative}.app-shell:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#0f172a0a 1px,#0000 1px),linear-gradient(#0f172a0a 1px,#0000 1px);background-size:56px 56px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(#000 0%,#000000d9 35%,#0000 85%);mask-image:radial-gradient(#000 0%,#000000d9 35%,#0000 85%)}.app-header{z-index:40;justify-content:space-between;align-items:center;gap:var(--space-6);margin:0 auto var(--space-8);max-width:1200px;display:flex;position:relative;overflow:visible}.app-brand{color:var(--color-text);flex-direction:column;gap:2px;text-decoration:none;display:flex}.app-brand:hover{color:var(--color-text)}.brand-primary{letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(135deg,#1e3a5f,#2563eb,#38bdf8);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:18px;font-weight:700}.brand-secondary{letter-spacing:.12em;color:var(--color-text-subtle);font-size:12px;font-weight:500}.eyebrow{margin:0 0 var(--space-2);letter-spacing:.32em;text-transform:uppercase;color:var(--color-accent);font-size:11px;font-weight:600}.app-nav{z-index:45;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-translucent);-webkit-backdrop-filter:blur(16px)saturate(140%);box-shadow:var(--shadow-sm);align-items:center;gap:2px;padding:4px;display:flex;position:relative;overflow:visible}.app-nav a{border-radius:var(--radius-pill);color:var(--color-text-muted);padding:7px 14px;font-size:13px;font-weight:500;transition:color .15s,background .15s;position:relative}.app-nav a:hover{background:var(--color-accent-soft);color:var(--color-accent)}.app-nav a.active,.app-nav a[data-status=active],.app-nav a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.nav-dropdown{z-index:46;position:relative}.nav-dropdown-trigger{border-radius:var(--radius-pill);box-shadow:none;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;padding:7px 14px;font-size:13px;font-weight:500;transition:color .15s,background .15s;display:inline-flex}.nav-dropdown-trigger:hover,.nav-dropdown-trigger[aria-expanded=true]{background:var(--color-accent-soft);color:var(--color-accent)}.nav-dropdown-menu{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:140px;box-shadow:var(--shadow-md);z-index:60;flex-direction:column;gap:2px;padding:6px;animation:.12s ease-out dropdown-in;display:flex;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.nav-dropdown-menu a{border-radius:var(--radius-sm);color:var(--color-text-muted);white-space:nowrap;padding:8px 14px;font-size:13px;font-weight:500;transition:background .1s,color .1s;display:block}.nav-dropdown-menu a:hover{background:var(--color-accent-soft);color:var(--color-accent)}@keyframes dropdown-in{0%{opacity:0;transform:translate(-50%)translateY(-4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.app-main{gap:var(--space-6);max-width:1200px;margin:0 auto;display:grid}.dashboard-grid{gap:var(--space-5);grid-template-columns:1.2fr 1fr;display:grid}.panel{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.panel:before{content:"";opacity:.5;pointer-events:none;background:linear-gradient(90deg,#0000 0%,#2563eb59 40%,#2563eb8c 60%,#0000 100%);height:1px;position:absolute;inset:0 0 auto}.panel>h2:first-child,.panel>h3:first-child{margin-top:0}label{letter-spacing:.04em;color:var(--color-text-muted);text-transform:uppercase;margin-bottom:6px;font-size:12px;font-weight:500;display:inline-block}input,select,textarea,button{font:inherit;color:inherit}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],input[type=datetime-local],input[type=tel],input[type=url],input:not([type]),select,textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);width:100%;color:var(--color-text);padding:9px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:var(--color-accent-glow);outline:none}input::placeholder,textarea::placeholder{color:var(--color-text-subtle)}input[disabled],select[disabled],textarea[disabled]{background:var(--color-bg-soft);color:var(--color-text-subtle);cursor:not-allowed}textarea{resize:vertical;min-height:96px;line-height:1.5}button{border-radius:var(--radius-md);color:#fff;letter-spacing:.01em;cursor:pointer;background:linear-gradient(135deg,#1e3a5f,#2563eb,#38bdf8);border:none;justify-content:center;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:500;transition:opacity .15s,transform 50ms,background-color .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex;box-shadow:0 2px 8px #2563eb2e}button:hover{opacity:.9;box-shadow:0 4px 14px #2563eb47}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}button:focus-visible{box-shadow:0 0 0 3px #2563eb33}button.secondary,button[data-variant=secondary]{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);box-shadow:none}button.secondary:hover,button[data-variant=secondary]:hover{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent);opacity:1}button.ghost,button[data-variant=ghost]{color:var(--color-text-muted);box-shadow:none;background:0 0;border:none}button.ghost:hover,button[data-variant=ghost]:hover{background:var(--color-bg-soft);color:var(--color-text);opacity:1}button.danger,button[data-variant=danger]{background:var(--color-danger);border-color:var(--color-danger)}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--color-divider);vertical-align:middle;padding:10px 12px}th{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;background:var(--color-bg-soft);font-size:11px;font-weight:600}tr:hover td{background:#2563eb06}.stack{gap:var(--space-3);display:grid}.row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.muted{color:var(--color-text-muted)}.subtle{color:var(--color-text-subtle)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.badge{border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;background:var(--color-bg-soft);color:var(--color-text-muted);border:1px solid var(--color-divider);align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge.accent{background:var(--color-accent-soft);color:var(--color-accent);border-color:#0000}.badge.success{background:var(--color-success-soft);color:var(--color-success);border-color:#0000}.badge.warning{background:var(--color-warning-soft);color:var(--color-warning);border-color:#0000}.badge.danger{background:var(--color-danger-soft);color:var(--color-danger);border-color:#0000}.auth-shell{min-height:100vh;padding:var(--space-6);background:radial-gradient(circle at 50% 0%, #2563eb1a, transparent 50%), radial-gradient(circle at 0% 100%, #6366f114, transparent 45%), var(--color-bg);place-items:center;display:grid}.auth-card{width:100%;max-width:420px;padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);gap:var(--space-4);display:grid}.auth-card h1{margin:0;font-size:1.5rem}.auth-card .field{gap:6px;display:grid}@media (width<=960px){.dashboard-grid{grid-template-columns:1fr}}@media (width<=720px){.app-shell{padding:var(--space-5) var(--space-4)}.app-header{flex-direction:column;align-items:flex-start}.app-nav{flex-wrap:wrap;justify-content:flex-start;width:100%}.auth-card{padding:var(--space-6)}}
