:root{--bg: #0b0f14;--surface: #131a22;--surface-2: #1b2531;--surface-3: #232f3d;--text: #e6edf3;--muted: #93a1b0;--faint: #5d6b7a;--border: rgba(230, 237, 243, .1);--border-strong: rgba(230, 237, 243, .18);--signal: #34e8ff;--signal-dim: #1c91a6;--ok: #3ddc84;--warn: #ffb454;--danger: #ff6170;--info: #8b9aff;--font-display: "Space Grotesk", sans-serif;--font: "Public Sans", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--bg-card: var(--surface);--bg-hover: var(--surface-2);--text-muted: var(--muted);--accent: var(--signal);--accent-hover: var(--signal);--green: var(--ok);--red: var(--danger);--yellow: var(--warn);--amber: var(--warn);--bg-subtle: var(--surface-2)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;font-size:14px;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);line-height:1.2;font-weight:600}a{color:var(--signal);text-decoration:none}a:hover{color:var(--signal);text-decoration:underline}:focus-visible{outline:2px solid var(--signal);outline-offset:2px;border-radius:4px}.container{max-width:1280px;margin:0 auto;padding:0 24px}nav{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 0;position:sticky;top:0;z-index:10}nav .container{display:flex;align-items:center;gap:32px}nav .logo{font-family:var(--font-display);font-weight:700;font-size:17px;color:var(--text);letter-spacing:-.3px}nav .logo span{color:var(--signal)}nav .links{display:flex;gap:8px}nav .links a{color:var(--muted);font-size:13px;font-weight:500;padding:6px 12px;border-radius:6px}nav .links a:hover{color:var(--text);background:var(--surface-2);text-decoration:none}nav .links a.active{color:var(--signal);background:var(--surface-2);box-shadow:inset 2px 0 0 var(--signal)}nav .user{margin-left:auto;display:flex;align-items:center;gap:12px}nav .user-name{color:var(--muted);font-family:var(--mono);font-size:12px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.status-dot.green{background:var(--ok)}.status-dot.red{background:var(--danger)}.status-dot.yellow{background:var(--warn)}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px}.card h2{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.3px;margin-bottom:12px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-value{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--text)}.stat-label{font-size:13px;color:var(--muted)}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;padding:8px 12px;border-bottom:1px solid var(--border-strong)}td{padding:9px 12px;font-size:13px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}tbody tr:hover{background:var(--surface-2)}.badge{display:inline-block;padding:1px 8px;border-radius:4px;font-family:var(--mono);font-size:11px;font-weight:500}.badge.active{background:#3ddc8424;color:var(--ok)}.badge.inactive{background:#93a1b024;color:var(--muted)}.badge.warn{background:#ffb45424;color:var(--warn)}.badge.error{background:#ff617024;color:var(--danger)}code,.mono{font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums}textarea,input[type=text],input:not([type]){font-family:var(--mono);font-size:13px;background:var(--bg);color:var(--text);border:1px solid var(--border-strong);border-radius:6px;padding:8px 10px}textarea:focus,input:focus{border-color:var(--signal);outline:none}label{display:inline-flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:6px;font-family:var(--font);font-size:13px;font-weight:500;cursor:pointer;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);transition:background .12s,border-color .12s}.btn:hover{background:var(--surface-3)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.active{border-color:var(--signal);color:var(--signal);box-shadow:inset 0 0 0 1px var(--signal)}.btn.primary{background:var(--signal);color:#04222a;border-color:var(--signal);font-weight:600}.btn.primary:hover{background:#5cf0ff}.btn.danger{border-color:var(--danger);color:var(--danger);background:transparent}.btn.danger:hover{background:#ff61701f}.page-header{padding:28px 0 20px}.page-header h1{font-size:22px;font-weight:700;letter-spacing:-.3px}.page-header p{color:var(--muted);font-size:14px;margin-top:4px}.time-ago{color:var(--muted);font-size:12px;font-family:var(--mono)}.caret{color:var(--signal);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.skeleton{color:var(--faint);font-family:var(--mono);animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.auth-screen.svelte-12qhfyh{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card.svelte-12qhfyh{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:36px 32px;text-align:center}.brand.svelte-12qhfyh{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.5px;color:var(--text)}.brand.svelte-12qhfyh .sig:where(.svelte-12qhfyh),.logo.svelte-12qhfyh span:where(.svelte-12qhfyh){color:var(--signal)}.tagline.svelte-12qhfyh{color:var(--muted);font-size:13px;margin:8px 0 28px}.signin.svelte-12qhfyh{width:100%;justify-content:center}.hint.svelte-12qhfyh{color:var(--faint);font-size:12px;margin-top:16px}.lang.svelte-12qhfyh{display:inline-flex;gap:2px;border:1px solid var(--border-strong);border-radius:6px;overflow:hidden}.lang.svelte-12qhfyh button:where(.svelte-12qhfyh){background:none;border:none;color:var(--muted);font-family:var(--mono);font-size:11px;padding:4px 8px;cursor:pointer}.lang.svelte-12qhfyh button.on:where(.svelte-12qhfyh){background:var(--surface-3);color:var(--signal)}
