:root{--bg: #0a0a0a;--bg-elev: #111111;--bg-elev-2: #161616;--border: #1f1f1f;--border-hot: #2a2a2a;--text: #e8e8e8;--text-dim: #8a8a8a;--text-faint: #525252;--accent: #00ffa3;--accent-dim: #00c882;--warn: #ffa500;--crit: #ff3366;--info: #6ea8ff;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif: "Instrument Serif", "Times New Roman", serif;--radius: 2px;--hairline: 1px solid var(--border)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-mono);font-size:13px;line-height:1.5;color:var(--text);background:var(--bg);font-feature-settings:"ss01" 1,"ss02" 1,"cv01" 1;-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hot);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}::selection{background:var(--accent);color:var(--bg)}.grid-bg{position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0;-webkit-mask-image:radial-gradient(ellipse at center,black 40%,transparent 85%);mask-image:radial-gradient(ellipse at center,black 40%,transparent 85%)}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;opacity:.035;mix-blend-mode:screen;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.shell{display:flex;min-height:100vh;position:relative;z-index:2}.content{flex:1;padding:40px 48px 80px;overflow-y:auto;max-width:100%}.sidebar{width:240px;background:var(--bg-elev);border-right:var(--hairline);padding:32px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{margin-bottom:40px}.brand-mark{font-size:18px;font-weight:600;letter-spacing:.2em;color:var(--text);line-height:1}.brand-sub{font-size:10px;color:var(--text-faint);letter-spacing:.12em;margin-top:6px}.section-label{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.18em;color:var(--text-faint);text-transform:uppercase;margin-bottom:12px;padding:0 8px}.section-label .dot{width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 8px var(--accent);animation:pulse 2.4s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.nav{display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;gap:12px;padding:10px 12px;font-size:13px;color:var(--text-dim);text-decoration:none;border-left:2px solid transparent;transition:background .15s,color .15s,border-color .15s;font-variant-numeric:tabular-nums}.nav-link:hover{color:var(--text);background:var(--bg-elev-2)}.nav-link.router-link-active{color:var(--accent);background:var(--bg-elev-2);border-left-color:var(--accent)}.nav-idx{font-size:10px;color:var(--text-faint);letter-spacing:.08em}.nav-link.router-link-active .nav-idx{color:var(--accent-dim)}.sidebar-footer{margin-top:auto;padding-top:24px;border-top:var(--hairline)}.telemetry{font-size:11px;margin-bottom:16px;padding:0 8px}.telemetry-row{display:flex;gap:8px;padding:2px 0;color:var(--text-dim);font-variant-numeric:tabular-nums}.tl-k{color:var(--text-faint);width:14px}.tl-v{color:var(--text-dim);flex:1;min-width:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--text-dim);background:transparent;border:var(--hairline);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.logout-btn:hover{color:var(--crit);border-color:var(--crit);background:#ff33660d}.logout-btn .arrow{transition:transform .15s}.logout-btn:hover .arrow{transform:translate(3px)}.page-head{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:20px;margin-bottom:32px;border-bottom:var(--hairline);gap:24px;flex-wrap:wrap}.page-title{font-size:28px;font-weight:500;letter-spacing:-.01em;line-height:1}.page-title-serif{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:32px;letter-spacing:-.01em;line-height:1}.page-eyebrow{font-size:10px;letter-spacing:.2em;color:var(--text-faint);text-transform:uppercase;margin-bottom:10px;display:flex;align-items:center;gap:10px}.page-eyebrow:before{content:"";width:24px;height:1px;background:var(--accent)}.crumbs{font-size:11px;color:var(--text-faint);letter-spacing:.1em;margin-bottom:20px;text-transform:uppercase}.crumbs a{color:var(--text-dim);text-decoration:none;border-bottom:1px dotted var(--text-faint)}.crumbs a:hover{color:var(--accent);border-color:var(--accent)}.panel{background:var(--bg-elev);border:var(--hairline);padding:24px 28px;margin-bottom:20px;position:relative}.panel-title{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);margin-bottom:16px;padding-bottom:12px;border-bottom:var(--hairline);display:flex;align-items:center;gap:8px}.panel-title:before{content:"[";color:var(--accent)}.panel-title:after{content:"]";color:var(--accent);margin-left:auto}.btn{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:10px 18px;border:1px solid var(--border-hot);background:transparent;color:var(--text);cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;gap:8px}.btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:#00ffa30a}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--bg);border-color:var(--accent);font-weight:600}.btn-primary:hover:not(:disabled){background:transparent;color:var(--accent)}.btn-danger{border-color:var(--crit);color:var(--crit)}.btn-danger:hover:not(:disabled){background:var(--crit);color:var(--bg)}.btn-sm{font-size:10px;padding:6px 12px;letter-spacing:.12em}.btn-ghost{border-color:transparent;color:var(--text-dim)}.btn-ghost:hover:not(:disabled){border-color:var(--border-hot);color:var(--text);background:var(--bg-elev-2)}.input,.textarea,.select{font-family:var(--font-mono);font-size:13px;width:100%;padding:12px 14px;background:var(--bg);border:1px solid var(--border-hot);color:var(--text);transition:border-color .15s;caret-color:var(--accent)}.input::placeholder,.textarea::placeholder{color:var(--text-faint)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #00ffa314}.textarea{min-height:120px;resize:vertical;font-family:var(--font-mono);line-height:1.6}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2300ffa3'><path d='M4 6l4 4 4-4'/></svg>");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:36px;cursor:pointer}.form-row{margin-bottom:20px}.form-label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.form-help{font-size:11px;color:var(--text-faint);margin-top:6px;line-height:1.5}.alert{padding:12px 16px;border-left:2px solid var(--crit);background:#ff33660f;font-size:12px;color:var(--text);margin-bottom:20px;font-family:var(--font-mono)}.alert-success{border-left-color:var(--accent);background:#00ffa30d;color:var(--accent)}.loading{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);padding:20px 0}.loading:after{content:"";display:inline-block;width:8px;text-align:left;animation:dots 1.4s steps(4,end) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}.empty{padding:60px 20px;text-align:center;color:var(--text-faint);font-size:12px;letter-spacing:.1em;text-transform:uppercase;border:1px dashed var(--border-hot)}.data-table{width:100%;border-collapse:collapse;background:var(--bg-elev);border:var(--hairline);font-variant-numeric:tabular-nums}.data-table th{text-align:left;padding:14px 18px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);background:var(--bg);border-bottom:var(--hairline);font-weight:500}.data-table td{padding:14px 18px;font-size:12px;color:var(--text);border-bottom:1px solid var(--border)}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:#00ffa305}.data-table a{color:var(--accent);text-decoration:none;border-bottom:1px dotted var(--accent-dim)}.data-table a:hover{border-bottom-style:solid}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;border:1px solid;background:transparent;font-family:var(--font-mono)}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.badge-hot{color:var(--crit);border-color:#f366;background:#ff336614}.badge-warm{color:var(--warn);border-color:#ffa50066;background:#ffa50014}.badge-cold{color:var(--info);border-color:#6ea8ff4d;background:#6ea8ff0f}.badge-success{color:var(--accent);border-color:#00ffa359;background:#00ffa30f}.badge-neutral{color:var(--text-dim);border-color:var(--border-hot);background:var(--bg-elev-2)}.filters{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap}.filters .form-row{margin-bottom:0;min-width:180px}.pagination{display:flex;gap:16px;align-items:center;justify-content:center;margin-top:28px;color:var(--text-dim);font-size:11px;letter-spacing:.14em;text-transform:uppercase}a{color:var(--accent)}a:hover{color:var(--accent-dim)}.panel h3{font-size:13px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text);margin-bottom:16px}code{font-family:var(--font-mono);background:var(--bg);padding:2px 6px;border:1px solid var(--border);color:var(--accent);font-size:11px}pre{background:var(--bg);border:1px solid var(--border);padding:14px 16px;font-size:11px;line-height:1.6;color:var(--text-dim);overflow-x:auto;font-family:var(--font-mono);white-space:pre-wrap}
