:root{--midnight: #0a1128;--navy: #12213f;--teal: #22e0c8;--cyan: #5af2ff;--ice: #f2f6ff;--slate: #8a9bb8;--teal-deep: #0e9e8e;--border: #1b2b4d;--font: Inter, "Segoe UI", system-ui, -apple-system, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ice);font-family:var(--font);min-height:100vh;background:radial-gradient(1100px 620px at 50% -10%,rgba(34,224,200,.1),transparent 60%),linear-gradient(180deg,var(--navy) 0%,var(--midnight) 46%);background-attachment:fixed;font-variant-numeric:tabular-nums}.center{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.wrap{max-width:760px;margin:0 auto;padding:24px 20px}.card{background:var(--navy);border-radius:14px;padding:20px;margin-top:16px;width:100%;max-width:440px}.brand{color:var(--ice);font-weight:800;letter-spacing:.3px;margin:0}.brand.small{font-size:18px}.sub{margin-top:-6px}.muted{color:var(--slate)}.small{font-size:12px}.teal{color:var(--teal)}.btn{display:inline-block;background:var(--teal);color:var(--midnight);border:none;border-radius:10px;padding:10px 16px;font-size:15px;font-weight:600;text-decoration:none;cursor:pointer;margin-top:10px}.link{background:none;border:none;color:var(--slate);cursor:pointer;font-size:14px}.stub{margin-top:16px;display:flex;flex-direction:column;gap:8px}.stub input{background:var(--midnight);border:1px solid #26365a;color:var(--ice);border-radius:8px;padding:10px}.row{display:flex;align-items:center}.between{justify-content:space-between}.plain{list-style:none;padding:0;margin:8px 0 0}.plain li{padding:6px 0;border-bottom:1px solid var(--border)}.err{color:#ff6b6b;margin-top:10px}.tab{color:var(--slate);padding:2px 4px}.tab.active{color:var(--ice);border-bottom:2px solid var(--teal)}.clickable{cursor:pointer}.chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.chip{font-size:12px;color:var(--ice);background:var(--midnight);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-variant-numeric:tabular-nums}.badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border-radius:6px;padding:2px 8px}.badge.ok{color:var(--teal);background:#22e0c824}.badge.idle{color:#ffcf6b;background:#ffcf6b24}.badge.err{color:#ff6b6b;background:#ff6b6b2e}table.svc{width:100%;border-collapse:collapse;margin-top:12px;font-size:14px}table.svc th{text-align:left;color:var(--slate);font-weight:600;font-size:12px;padding:4px 8px;border-bottom:1px solid var(--border)}table.svc td{padding:6px 8px;border-bottom:1px solid var(--border)}table.svc td.num{text-align:right;font-variant-numeric:tabular-nums}.listen{color:var(--teal);font-weight:600}.signal{display:inline-flex;align-items:center;gap:6px}.signal-label{font-size:11px;color:var(--slate);text-transform:uppercase;letter-spacing:1px}.bar{width:90px;height:8px;background:var(--midnight);border:1px solid var(--border);border-radius:999px;overflow:hidden}.bar-fill{display:block;height:100%;border-radius:999px;transition:width .4s ease}.bar-fill.ok{background:var(--teal)}.bar-fill.idle{background:#ffcf6b}.bar-fill.err{background:#ff6b6b}.signal-pct{font-size:12px;font-variant-numeric:tabular-nums;min-width:34px;text-align:right}.nowplaying{position:sticky;bottom:0;margin-top:12px}.nowplaying audio{height:32px}.swatch{display:inline-block;width:11px;height:11px;border-radius:2px;vertical-align:-1px;margin-right:4px}.tl-grid{display:flex;flex-direction:column;gap:2px}.tl-row{display:flex;align-items:center;gap:8px}.tl-label{width:42px;text-align:right;font-variant-numeric:tabular-nums;flex:none}.tl-cells{display:flex;gap:1px;flex-wrap:nowrap}.tl-cell{width:9px;height:14px;border-radius:1px}.tl-cell:hover{outline:1px solid var(--teal)}.app{display:flex;min-height:100vh}.sidebar{width:220px;flex:0 0 220px;border-right:1px solid var(--border);background:#0a112880;display:flex;flex-direction:column}.sidebar-brand{padding:18px 16px;border-bottom:1px solid var(--border)}.nav-tree{display:flex;flex-direction:column;padding:10px 8px;gap:2px}.nav-section{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:var(--slate);margin:14px 8px 4px}.nav-item{display:block;padding:8px 12px;border-radius:8px;color:var(--ice);text-decoration:none;font-size:14px}.nav-item:hover{background:#ffffff0a}.nav-item.active{background:#22e0c81f;color:var(--teal);font-weight:600}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{padding:12px 24px;border-bottom:1px solid var(--border)}.content{padding:24px;max-width:1180px;width:100%}.stack{display:flex;flex-direction:column;gap:16px}.stack h2{margin:4px 0}.field{display:block;margin:12px 0;font-size:13px;color:var(--slate)}.field input{margin-top:6px;color:var(--ice)}.sample{background:var(--midnight);border:1px solid var(--border);border-radius:8px;padding:10px;font-size:12px;overflow-x:auto;color:var(--slate)}.range{display:flex;gap:4px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:middle}.heatmap-scroll{overflow-x:auto;margin-top:14px}table.heatmap{border-collapse:collapse;font-size:12px}table.heatmap th.hcol{color:var(--slate);font-weight:600;padding:4px 2px;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:34px}table.heatmap td.hcell{width:34px;height:26px;text-align:center;color:var(--midnight);font-weight:700;border:1px solid var(--border);font-variant-numeric:tabular-nums}.sticky-col{position:sticky;left:0;background:var(--navy);text-align:left;padding:4px 12px 4px 6px;white-space:nowrap;z-index:1}th.sticky-col{color:var(--slate);font-weight:600}.lockup{display:inline-flex;align-items:center;gap:10px}.lockup .mark{display:block}.lockup-text{display:inline-flex;flex-direction:column;line-height:1}.lockup.stacked{flex-direction:column;gap:14px;text-align:center}.wordmark{font-family:var(--font);letter-spacing:-1.5px;font-size:24px;white-space:nowrap}.lockup.stacked .wordmark{font-size:40px}.wm-cast{color:var(--ice);font-weight:400}.wm-measure{color:var(--teal);font-weight:700}.tagline,.label{font-weight:600;text-transform:uppercase;letter-spacing:3px;font-size:11px;color:var(--slate)}.tagline{margin-top:8px}.label{display:block;margin-top:14px}.card.login{text-align:center;padding-top:28px}.card.login .stub{text-align:left}
