@import "https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300..800;1,9..40,300..800&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&display=swap";:root{--nova-sky-50:#eaf6fd;--nova-sky-100:#d6eefb;--nova-sky-200:#b3e1f8;--nova-sky-300:#8dd3f4;--nova-sky-400:#5fc0ee;--nova-sky-500:#3aaee8;--nova-sky-600:#1b8fd8;--nova-sky-700:#1673b3;--nova-sky-800:#135a8c;--nova-sky-900:#0f3f63;--nova-ink-900:#0f172a;--nova-ink-800:#1e293b;--nova-ink-700:#334155;--nova-ink-600:#475569;--nova-ink-500:#64748b;--nova-ink-400:#94a3b8;--nova-ink-300:#cbd5e1;--nova-ink-200:#e2e8f0;--nova-ink-100:#f1f5f9;--nova-ink-50:#f8fafc;--nova-white:#fff;--nova-green-600:#1e8e4b;--nova-green-500:#22a559;--nova-green-100:#e3f5ea;--nova-amber-600:#c77700;--nova-amber-500:#f59e0b;--nova-amber-100:#fef3d9;--nova-red-600:#c93a3f;--nova-red-500:#e5484d;--nova-red-100:#fde8e9;--nova-violet-500:#7c6cf0;--nova-violet-100:#eeebfd;--surface-page:var(--nova-ink-50);--surface-card:var(--nova-white);--surface-sunken:var(--nova-ink-100);--surface-sidebar:var(--nova-sky-50);--surface-selected:var(--nova-sky-100);--surface-brand:var(--nova-sky-600);--surface-brand-hover:var(--nova-sky-700);--surface-brand-soft:var(--nova-sky-50);--surface-overlay:#0f172a73;--text-primary:var(--nova-ink-900);--text-secondary:var(--nova-ink-600);--text-muted:var(--nova-ink-500);--text-placeholder:var(--nova-ink-400);--text-brand:var(--nova-sky-600);--text-on-brand:var(--nova-white);--text-success:var(--nova-green-600);--text-warning:var(--nova-amber-600);--text-danger:var(--nova-red-600);--border-subtle:var(--nova-ink-200);--border-default:var(--nova-ink-300);--border-brand:var(--nova-sky-500);--border-focus:var(--nova-sky-500);--status-success-bg:var(--nova-green-100);--status-success-fg:var(--nova-green-600);--status-warning-bg:var(--nova-amber-100);--status-warning-fg:var(--nova-amber-600);--status-danger-bg:var(--nova-red-100);--status-danger-fg:var(--nova-red-600);--status-info-bg:var(--nova-sky-100);--status-info-fg:var(--nova-sky-700);--status-ai-bg:var(--nova-violet-100);--status-ai-fg:var(--nova-violet-500);--gradient-sky:linear-gradient(180deg, #4db8ea 0%, #8dd3f4 55%, #eaf6fd 100%);--gradient-sky-soft:linear-gradient(180deg, #eaf6fd 0%, #fff 100%);--chart-1:var(--nova-sky-500);--chart-2:var(--nova-sky-800);--chart-3:var(--nova-green-500);--chart-4:var(--nova-amber-500);--chart-5:var(--nova-violet-500);--chart-grid:var(--nova-ink-200);--font-sans:"DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-display-xl:700 64px/1.02 var(--font-sans);--text-display:700 44px/1.08 var(--font-sans);--text-h1:700 30px/1.15 var(--font-sans);--text-h2:600 22px/1.25 var(--font-sans);--text-h3:600 17px/1.35 var(--font-sans);--text-body-lg:400 16px/1.55 var(--font-sans);--text-body:400 14px/1.5 var(--font-sans);--text-body-strong:500 14px/1.5 var(--font-sans);--text-small:400 13px/1.45 var(--font-sans);--text-caption:500 12px/1.4 var(--font-sans);--text-overline:600 11px/1.3 var(--font-sans);--text-stat:700 28px/1.1 var(--font-sans);--text-mono:400 13px/1.5 var(--font-mono);--tracking-display:-.03em;--tracking-heading:-.02em;--tracking-body:0;--tracking-overline:.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--control-h-sm:32px;--control-h-md:40px;--control-h-lg:48px;--sidebar-w:240px;--topbar-h:60px;--content-max:1280px;--card-pad:20px;--radius-sm:8px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:9999px;--shadow-xs:0 1px 2px #0f172a0d;--shadow-card:0 1px 2px #0f172a0a, 0 8px 24px #1b8fd80f;--shadow-float:0 12px 40px #0f172a1f, 0 2px 6px #0f172a0f;--shadow-brand:0 8px 20px #1b8fd847;--ring-focus:0 0 0 3px #3aaee859;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.35s}html{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{font:var(--text-body);color:var(--text-primary);background:var(--surface-page);margin:0}a{color:var(--text-brand);text-decoration:none}a:hover{color:var(--surface-brand-hover)}*{box-sizing:border-box}button,input,select,textarea{font:inherit}@keyframes nova-spin{to{transform:rotate(360deg)}}@keyframes nova-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes nova-slide-in{0%{transform:translate(-100%)}to{transform:none}}html,body,#root{height:100%}::selection{background:var(--nova-sky-200)}.page{max-width:var(--content-max);animation:nova-fade-up var(--dur-base) var(--ease-out);flex-direction:column;gap:20px;margin:0 auto;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head h1{font:var(--text-h1);letter-spacing:var(--tracking-heading);margin:0}.page-head p{font:var(--text-body);color:var(--text-muted);margin:4px 0 0}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.muted{color:var(--text-muted);font:var(--text-small)}.error{color:var(--text-danger);font:var(--text-small)}.mono{font-family:var(--font-mono);font-size:13px}.dl{font:var(--text-body);grid-template-columns:180px 1fr;gap:10px 16px;margin:0;display:grid}.dl dt{color:var(--text-muted);font:var(--text-caption);padding-top:2px;font-size:13px}.dl dd{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;margin:0;display:flex}.timeline{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.timeline li{border-top:1px solid var(--border-subtle);font:var(--text-body);grid-template-columns:150px 1fr;align-items:start;gap:12px;padding:10px 0;display:grid}.timeline li:first-child{border-top:0}.timeline li .t{font:var(--text-caption);color:var(--text-muted);font-variant-numeric:tabular-nums;padding-top:3px}.timeline li .n{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.prose{font:var(--text-body);color:var(--text-secondary);text-wrap:pretty;margin:0}.auth-wrap{background:var(--gradient-sky-soft);place-items:start center;min-height:100%;padding:64px 24px;display:grid}.auth-card{flex-direction:column;gap:20px;width:100%;max-width:760px;display:flex}.wordmark{font:var(--text-h2);letter-spacing:.02em;color:var(--nova-ink-800);font-size:18px;font-weight:800}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 16px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field>label{font:var(--text-caption);color:var(--text-secondary)}.field .hint{font:var(--text-caption);color:var(--text-muted)}.input,.select{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-card);height:36px;font:var(--text-body);color:var(--text-primary);box-sizing:border-box;width:100%;padding:0 12px}.input:focus,.select:focus{outline:2px solid var(--nova-sky-200);outline-offset:0;border-color:var(--border-focus)}.input.mono{font-family:var(--font-mono);font-size:13px}.code{font-family:var(--font-mono);white-space:pre-wrap;word-break:break-all;border-radius:var(--radius-md);background:var(--surface-sunken);border:1px solid var(--border-subtle);max-height:380px;margin:0;padding:12px 14px;font-size:12.5px;line-height:1.5;overflow:auto}details.block>summary{cursor:pointer;font:var(--text-body-strong);color:var(--text-secondary);margin-bottom:8px}
