:root{--bg:#f9fafb;--surface:#fff;--surface-hover:#f3f4f6;--text:#111827;--text-muted:#6b7280;--text-faint:#9ca3af;--border:#e5e7eb;--border-subtle:#f3f4f6;--shadow-card:0 1px 2px #1018280a;--accent:#4f46e5;--accent-hover:#4338ca;--link:#4f46e5;--nav-bg:#0b0f19;--nav-text:#cbd5e1;--nav-text-hover:#fff;--nav-border:#ffffff14;--btn-bg:#fff;--btn-border:#d1d5db;--btn-text:#111827;--btn-hover-bg:#f3f4f6;--btn-primary-bg:var(--accent);--btn-primary-text:#fff;--btn-primary-hover-bg:var(--accent-hover);--badge-ok-bg:#dcfce7;--badge-ok-text:#166534;--badge-warn-bg:#fef3c7;--badge-warn-text:#92400e;--badge-error-bg:#fee2e2;--badge-error-text:#991b1b;--badge-muted-bg:#f3f4f6;--badge-muted-text:#6b7280;--input-bg:#fff;--input-border:#d1d5db;--error-text:#b91c1c}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0f19;--surface:#131826;--surface-hover:#1b2133;--text:#e5e7eb;--text-muted:#9ca3af;--text-faint:#6b7280;--border:#232a3b;--border-subtle:#1b2133;--shadow-card:none;--accent:#818cf8;--accent-hover:#a5b4fc;--link:#a5b4fc;--nav-bg:#05070d;--nav-text:#9ca3af;--nav-text-hover:#fff;--nav-border:#ffffff0f;--btn-bg:#131826;--btn-border:#2a3245;--btn-text:#e5e7eb;--btn-hover-bg:#1b2133;--btn-primary-bg:var(--accent);--btn-primary-text:#0b0f19;--btn-primary-hover-bg:var(--accent-hover);--badge-ok-bg:#064e3b;--badge-ok-text:#6ee7b7;--badge-warn-bg:#451a03;--badge-warn-text:#fcd34d;--badge-error-bg:#450a0a;--badge-error-text:#fca5a5;--badge-muted-bg:#1b2133;--badge-muted-text:#9ca3af;--input-bg:#131826;--input-border:#2a3245;--error-text:#fca5a5}}:root[data-theme=dark]{--bg:#0b0f19;--surface:#131826;--surface-hover:#1b2133;--text:#e5e7eb;--text-muted:#9ca3af;--text-faint:#6b7280;--border:#232a3b;--border-subtle:#1b2133;--shadow-card:none;--accent:#818cf8;--accent-hover:#a5b4fc;--link:#a5b4fc;--nav-bg:#05070d;--nav-text:#9ca3af;--nav-text-hover:#fff;--nav-border:#ffffff0f;--btn-bg:#131826;--btn-border:#2a3245;--btn-text:#e5e7eb;--btn-hover-bg:#1b2133;--btn-primary-bg:var(--accent);--btn-primary-text:#0b0f19;--btn-primary-hover-bg:var(--accent-hover);--badge-ok-bg:#064e3b;--badge-ok-text:#6ee7b7;--badge-warn-bg:#451a03;--badge-warn-text:#fcd34d;--badge-error-bg:#450a0a;--badge-error-text:#fca5a5;--badge-muted-bg:#1b2133;--badge-muted-text:#9ca3af;--input-bg:#131826;--input-border:#2a3245;--error-text:#fca5a5}*{box-sizing:border-box}body{color:var(--text);background:var(--bg);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}a{color:var(--link)}.container{max-width:960px;margin:0 auto;padding:24px}.nav{background:var(--nav-bg);border-bottom:1px solid var(--nav-border);padding:0 24px}.nav-inner{align-items:center;gap:20px;max-width:960px;height:56px;margin:0 auto;display:flex}.nav a{color:var(--nav-text);font-size:14px;text-decoration:none}.nav a:hover,.nav a.active{color:var(--nav-text-hover)}.nav-spacer{align-items:center;gap:16px;margin-left:auto;display:flex}.nav form{margin:0}.nav button.signout{color:var(--text-faint);cursor:pointer;background:0 0;border:none;font-size:13px}.nav button.signout:hover{color:var(--nav-text-hover)}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{background:var(--accent);color:#fff;letter-spacing:.02em;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:flex}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-name{color:var(--nav-text-hover);font-size:14px;font-weight:600}.brand-by{color:var(--text-faint);font-size:11px}.theme-toggle{border:1px solid var(--nav-border);width:30px;height:30px;color:var(--nav-text);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:14px;line-height:1;display:inline-flex}.theme-toggle:hover{color:var(--nav-text-hover);border-color:var(--nav-text)}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:8px;margin-bottom:16px;padding:20px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--border-subtle);padding:8px 10px}th{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:500}.badge{border-radius:4px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-block}.badge-ok{background:var(--badge-ok-bg);color:var(--badge-ok-text)}.badge-warn{background:var(--badge-warn-bg);color:var(--badge-warn-text)}.badge-error{background:var(--badge-error-bg);color:var(--badge-error-text)}.badge-muted{background:var(--badge-muted-bg);color:var(--badge-muted-text)}.btn{border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-text);cursor:pointer;border-radius:6px;padding:8px 14px;font-size:13px;text-decoration:none;display:inline-block}.btn:hover{background:var(--btn-hover-bg)}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg)}.btn-primary:hover{background:var(--btn-primary-hover-bg);border-color:var(--btn-primary-hover-bg)}.muted{color:var(--text-muted);font-size:13px}.text-error{color:var(--error-text)}input[type=text],input[type=email],input[type=password],select{border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);border-radius:6px;padding:6px 10px;font-size:13px}.switch{width:16px;height:16px}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative}.auth-toggle{position:absolute;top:20px;right:20px}.auth-toggle .theme-toggle{color:var(--text-muted);border-color:var(--border)}.auth-toggle .theme-toggle:hover{color:var(--text);border-color:var(--text-muted)}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:320px;padding:32px;box-shadow:0 1px 3px #10182814}.auth-brand{align-items:center;gap:10px;margin-bottom:20px;display:flex}.auth-brand-text{flex-direction:column;line-height:1.2;display:flex}.auth-brand-name{color:var(--text);font-size:15px;font-weight:600}.auth-brand-by{color:var(--text-faint);font-size:11px}.auth-card input[type=password]{width:100%;margin-bottom:12px}.auth-card .btn-primary{text-align:center;border:none;width:100%}
