:root{color-scheme:light;--font-sans: "Inter var", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "JetBrains Mono", "Cascadia Mono", "Cascadia Code", Consolas, "SFMono-Regular", monospace;--r-xs: 4px;--r-sm: 7px;--r-md: 9px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--bg: #edf3f6;--bg-elev: #ffffff;--bg-soft: #f4f9fb;--bg-inset: #e9f1f4;--bg-subtle: #e4edf1;--bg-hover: #e4f0f4;--bg-sunken: #e2ebef;--border: #d3e1e7;--border-strong: #a6c1cb;--border-subtle: #e5eef2;--text: #10222a;--text-soft: #33505b;--text-muted: #62808c;--text-faint: #8ba3ad;--brand: #0e7490;--brand-strong: #0b5c74;--brand-soft: #d8f2f7;--brand-tint: #eef9fb;--brand-fg: #ffffff;--brand-ring: rgb(14 116 144 / .26);--ok: #0d9488;--ok-fg: #047857;--ok-bg: #e2f8f1;--ok-border: #9ce4cf;--warn: #d97706;--warn-fg: #b45309;--warn-bg: #fffaeb;--warn-border: #fbd89e;--amber-fg: var(--warn-fg);--amber-bg: var(--warn-bg);--amber-border: var(--warn-border);--bad: #e11d48;--bad-fg: #be123c;--bad-bg: #fff1f3;--bad-border: #fbc9d1;--info: #0284c7;--info-fg: #0369a1;--info-bg: #eff8ff;--info-border: #a9d8f5;--row-issue: #fff8ee;--terminal-bg: #0b1117;--terminal-fg: #dce6ee;--terminal-border: #1d2a33;--terminal-chrome: #131c24;--backdrop: rgb(14 28 35 / .44);--ring-hairline: 0 0 0 1px rgb(16 34 42 / .05);--shadow-1: var(--ring-hairline), 0 1px 2px rgb(16 34 42 / .05), 0 2px 6px -1px rgb(16 34 42 / .05);--shadow-2: var(--ring-hairline), 0 4px 10px -2px rgb(16 34 42 / .09), 0 12px 26px -6px rgb(16 34 42 / .1);--shadow-3: 0 0 0 1px rgb(16 34 42 / .07), 0 18px 32px -12px rgb(16 34 42 / .24), 0 40px 80px -24px rgb(16 34 42 / .3);--shadow-glow: 0 0 0 1px color-mix(in srgb, var(--brand) 34%, transparent), 0 6px 18px -6px color-mix(in srgb, var(--brand) 42%, transparent);--focus-ring: 0 0 0 2px var(--bg-elev), 0 0 0 4px var(--brand-ring);--speed: .14s;--speed-fast: 90ms;--speed-slow: .26s;--ease: cubic-bezier(.32, .72, 0, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);font-family:var(--font-sans);background:var(--bg);color:var(--text);letter-spacing:0;font-feature-settings:"cv05" 1,"ss01" 1}:root[data-theme=dark]{color-scheme:dark;--bg: #081015;--bg-elev: #101c23;--bg-soft: #16262e;--bg-inset: #0c171d;--bg-subtle: #13222a;--bg-hover: #1c303a;--bg-sunken: #060d11;--border: #233d47;--border-strong: #3a5d6b;--border-subtle: #1b2f38;--text: #e8f0f5;--text-soft: #a9bcc6;--text-muted: #7f97a2;--text-faint: #62787f;--brand: #2dd4bf;--brand-strong: #5eead4;--brand-soft: #123b3d;--brand-tint: #0e2c30;--brand-fg: #04211f;--brand-ring: rgb(45 212 191 / .34);--ok: #2dd4bf;--ok-fg: #34d399;--ok-bg: #0e2f28;--ok-border: #216554;--warn: #f59e0b;--warn-fg: #fbbf24;--warn-bg: #2c2110;--warn-border: #6a5222;--amber-fg: var(--warn-fg);--amber-bg: var(--warn-bg);--amber-border: var(--warn-border);--bad: #fb7185;--bad-fg: #fb7185;--bad-bg: #2f171d;--bad-border: #782c3c;--info: #38bdf8;--info-fg: #7dd3fc;--info-bg: #0e2739;--info-border: #1d5578;--row-issue: #251519;--terminal-bg: #05090d;--terminal-fg: #dce6ee;--terminal-border: #1a2731;--terminal-chrome: #0b1219;--backdrop: rgb(2 6 10 / .68);--ring-hairline: 0 0 0 1px rgb(255 255 255 / .04);--shadow-1: var(--ring-hairline), 0 1px 2px rgb(0 0 0 / .44);--shadow-2: var(--ring-hairline), 0 6px 16px -4px rgb(0 0 0 / .56);--shadow-3: 0 0 0 1px rgb(255 255 255 / .06), 0 22px 44px -16px rgb(0 0 0 / .7), 0 44px 90px -30px rgb(0 0 0 / .6);--shadow-glow: 0 0 0 1px color-mix(in srgb, var(--brand) 40%, transparent), 0 6px 20px -6px color-mix(in srgb, var(--brand) 34%, transparent)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(1200px 620px at 82% -8%,color-mix(in srgb,var(--brand) 7%,transparent),transparent 62%),var(--bg);background-attachment:fixed;color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;letter-spacing:-.011em}table,code,.mono,.stat-value,.badge,.kv-grid,.metric-card,.packet-total-card,.storage-stat-grid,.status-summary-grid,input,select,textarea{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}::selection{background:color-mix(in srgb,var(--brand) 26%,transparent)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--border-strong) 82%,transparent) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--r-pill);border:3px solid transparent;background-clip:padding-box;transition:background var(--speed) var(--ease)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted);background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-corner{background:transparent}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}button,input,select,textarea{font:inherit}button{font-size:13px;font-weight:600;border:1px solid var(--border);background:var(--bg-elev);color:var(--text-soft);border-radius:var(--r-sm);padding:8px 12px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;box-shadow:0 1px 1px #10222a08;transition:background var(--speed) var(--ease),border-color var(--speed) var(--ease),color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),transform var(--speed-fast) var(--ease)}button:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text)}button:active{transform:translateY(1px);box-shadow:none}button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}button:disabled:hover{background:var(--bg-elev);border-color:var(--border);color:var(--text-soft)}button svg{flex:none;transition:transform var(--speed) var(--ease),color var(--speed) var(--ease)}input,select,textarea{width:100%;font-size:13px;border:1px solid var(--border);border-radius:var(--r-sm);padding:8px 10px;min-height:36px;background:var(--bg-elev);color:var(--text);box-shadow:inset 0 1px 2px #10222a08;transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),background var(--speed) var(--ease)}select{cursor:pointer}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);background:var(--bg-elev);box-shadow:0 0 0 3px var(--brand-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--bg-inset);color:var(--text-muted);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--text-faint);opacity:1}:root[data-theme=dark] input::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.55)}textarea{resize:vertical;font-family:var(--font-mono);font-size:12px;line-height:1.5}input[type=checkbox]{accent-color:var(--brand)}label{display:grid;gap:6px;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.025em}progress{width:100%;height:8px;border:0;border-radius:var(--r-pill);overflow:hidden;background:var(--bg-inset);accent-color:var(--brand)}progress::-webkit-progress-bar{background:var(--bg-inset);border-radius:var(--r-pill)}progress::-webkit-progress-value{background:var(--brand);border-radius:var(--r-pill)}progress::-moz-progress-bar{background:var(--brand)}.mono,code{font-family:var(--font-mono)}.strong{font-weight:700}.muted-text{color:var(--text-muted);font-size:12px}.app-shell{min-height:100vh;display:grid;grid-template-columns:238px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 5%,var(--bg-elev)),var(--bg-elev) 220px);border-right:1px solid var(--border);padding:15px 12px 12px;display:grid;grid-template-rows:auto 1fr auto;gap:14px;overflow:hidden}.brand-row{display:flex;align-items:center;gap:11px;min-width:0;padding:0 4px 13px;border-bottom:1px solid var(--border-subtle)}.brand-mark{position:relative;width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:var(--r-md);background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 62%,#0ea5b7));color:var(--brand-fg);box-shadow:0 3px 10px -3px color-mix(in srgb,var(--brand) 62%,transparent),inset 0 1px #ffffff3d}.brand-row h1{font-size:15px;font-weight:750;letter-spacing:-.015em;white-space:nowrap}.brand-row p{margin:2px 0 0;color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.075em;text-transform:uppercase}.brand-row.compact h1{font-size:15px}nav{display:grid;align-content:start;gap:1px;overflow-y:auto;overscroll-behavior:contain;margin:0 -4px;padding:0 4px}.nav-section-label{padding:12px 11px 5px;color:var(--text-faint);font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.nav-section-label:first-child{padding-top:2px}nav button{position:relative;justify-content:flex-start;border-color:transparent;background:transparent;color:var(--text-soft);font-size:13px;font-weight:600;min-height:34px;padding:7px 11px;box-shadow:none;border-radius:var(--r-sm)}nav button svg{color:var(--text-faint)}nav button:hover{background:var(--bg-hover);border-color:transparent;color:var(--text)}nav button:hover svg{color:var(--brand);transform:translate(1px)}nav button:active{transform:none}.active-nav,.active-nav:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--brand) 15%,transparent),color-mix(in srgb,var(--brand) 6%,transparent));color:var(--brand);font-weight:700;border-color:transparent}.active-nav svg,.active-nav:hover svg{color:var(--brand)}nav button:before{content:"";position:absolute;left:0;top:50%;width:3px;height:0;border-radius:0 var(--r-pill) var(--r-pill) 0;background:var(--brand);transform:translateY(-50%);transition:height var(--speed-slow) var(--ease-out)}.active-nav:before{height:20px;box-shadow:0 0 10px color-mix(in srgb,var(--brand) 70%,transparent)}.sidebar-footer{display:grid;gap:8px;padding-top:11px;border-top:1px solid var(--border-subtle)}.sidebar-user{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;padding:0 4px;min-width:0}.sidebar-user-avatar{display:grid;place-items:center;width:28px;height:28px;flex:none;border-radius:var(--r-pill);background:var(--brand-soft);color:var(--brand);font-size:11px;font-weight:800;text-transform:uppercase}.sidebar-user-meta{min-width:0;display:grid;gap:1px}.sidebar-user-meta strong{font-size:12px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-meta span{color:var(--text-faint);font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.sidebar-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.theme-toggle{justify-content:flex-start;gap:8px;color:var(--text-soft);font-size:12px;min-height:32px;padding:6px 10px}.theme-toggle svg{transition:transform var(--speed-slow) var(--ease-out)}.theme-toggle:hover svg{transform:rotate(-22deg)}.logout{justify-content:center;min-height:32px;padding:6px 10px}.logout:hover{color:var(--bad-fg);border-color:var(--bad-border);background:var(--bad-bg)}.main{min-width:0;padding:14px 16px 20px;display:grid;grid-template-rows:auto 1fr;gap:13px;align-content:start}.topbar{position:sticky;top:14px;z-index:20;min-height:58px;background:color-mix(in srgb,var(--bg-elev) 88%,transparent);-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);border:1px solid var(--border);border-radius:var(--r-lg);padding:10px 14px 11px;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:var(--shadow-2)}.topbar-heading{display:flex;align-items:center;gap:11px;min-width:0;padding-right:13px;border-right:1px solid var(--border-subtle)}.topbar-tab-icon{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:var(--r-md);background:linear-gradient(160deg,var(--brand-soft),var(--brand-tint));color:var(--brand);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 20%,transparent)}.topbar h1{font-size:16px;font-weight:750;white-space:nowrap}.topbar-title{min-width:0;display:grid;gap:1px}.topbar-controls{display:flex;align-items:center;gap:8px;min-width:min(920px,68vw)}.tenant-picker-wrap{display:grid;gap:2px;min-width:220px;max-width:360px}.device-picker-wrap{display:grid;gap:2px;flex:1;min-width:260px;max-width:680px}.tenant-picker,.device-picker{min-height:34px;height:34px;max-width:none;min-width:0;font-family:var(--font-mono);font-size:12px;border-color:var(--border);border-radius:var(--r-sm)}.tenant-picker{border-color:color-mix(in srgb,var(--brand) 34%,var(--border));background:color-mix(in srgb,var(--brand-soft) 55%,var(--bg-elev));color:var(--brand-strong);font-weight:700}:root[data-theme=dark] .tenant-picker{color:var(--brand-strong)}.device-selector-bar{display:flex;align-items:flex-start;gap:6px;min-width:0;flex:1}.device-step-button{width:34px;min-width:34px;min-height:34px;height:34px;padding:0;border-radius:var(--r-sm);color:var(--text-muted);background:var(--bg-elev);border-color:var(--border);justify-content:center}.device-step-button:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--brand)}.device-step-button:disabled{opacity:.4;cursor:not-allowed}.device-picker-meta{min-width:0;display:flex;align-items:center;gap:4px;color:var(--text-muted);font-size:11px;font-weight:500;line-height:1.25;overflow:hidden;padding-left:2px;text-overflow:ellipsis;white-space:nowrap}.device-meta-token{min-width:0;overflow:hidden;text-overflow:ellipsis}.device-meta-token svg{vertical-align:-2px}.device-meta-separator{color:var(--border-strong);font-weight:500}.device-meta-separator:has(+.device-meta-time){display:none}.device-meta-time{margin-left:auto;color:var(--text-faint);font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}.tenant-picker-meta{display:flex;align-items:center;gap:5px;min-width:0;color:var(--text-faint);font-size:10.5px;line-height:1.25;overflow:hidden;padding-left:2px;text-overflow:ellipsis;white-space:nowrap}.tenant-picker-meta .live-dot{width:6px;height:6px}.tenant-picker-meta-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-grid{display:grid;gap:14px;align-content:start}.split{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.4fr);gap:14px;min-width:0}.panel,.table-panel,.log-list{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.panel{padding:14px;display:grid;gap:12px;align-content:start;min-width:0}.panel h2{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:750;letter-spacing:-.005em}.panel h3{font-size:12.5px;font-weight:750}.table-panel,.log-list{overflow:auto;position:relative}.panel-heading,.modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel>.panel-heading{padding-bottom:10px;margin-bottom:-2px;border-bottom:1px solid var(--border-subtle)}.toolbar,.tag-row,.meta-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.toolbar input{max-width:220px}.toolbar select{max-width:140px}.logs-filter-bar{display:grid;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);box-shadow:var(--shadow-1)}.logs-filter-bar .filter-chip{font-family:var(--font-mono);font-size:11px;letter-spacing:.02em}.logs-range-row{display:flex;flex-wrap:wrap;align-items:end;gap:8px;padding-top:10px;border-top:1px solid var(--border-subtle)}.logs-range-row .compact-field{min-width:190px}.logs-range-row .muted-text{align-self:center;margin-left:auto;font-variant-numeric:tabular-nums}.logs-toggle-group{display:inline-flex;align-items:center;gap:12px;align-self:center;padding:0 10px;min-height:34px;border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle)}.filter-bar{padding:11px 12px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);box-shadow:var(--shadow-1);align-items:end;gap:9px}.filter-bar>label{gap:5px}.filter-bar>button{align-self:end}.primary{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 92%,#ffffff),var(--brand));border-color:color-mix(in srgb,var(--brand) 82%,#000000);color:var(--brand-fg);box-shadow:0 1px 2px #10222a24,inset 0 1px #ffffff2e}.primary:hover{background:linear-gradient(180deg,var(--brand),var(--brand-strong));border-color:var(--brand-strong);color:var(--brand-fg);box-shadow:0 3px 10px -3px color-mix(in srgb,var(--brand) 58%,transparent),inset 0 1px #fff3}.primary:disabled:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 92%,#ffffff),var(--brand));border-color:color-mix(in srgb,var(--brand) 82%,#000000);color:var(--brand-fg)}:root[data-theme=dark] .primary,:root[data-theme=dark] .primary:disabled:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 62%,var(--bg-elev)),color-mix(in srgb,var(--brand) 48%,var(--bg-elev)));border-color:color-mix(in srgb,var(--brand) 58%,var(--bg-elev));color:#eafffb;box-shadow:inset 0 1px #ffffff14}:root[data-theme=dark] .primary:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 76%,var(--bg-elev)),color-mix(in srgb,var(--brand) 60%,var(--bg-elev)));border-color:color-mix(in srgb,var(--brand) 72%,var(--bg-elev));color:#fff;box-shadow:0 3px 12px -4px color-mix(in srgb,var(--brand) 46%,transparent)}.icon-button{width:34px;min-height:34px;padding:6px;justify-content:center;color:var(--text-muted)}.icon-button:hover{color:var(--brand)}.action-buttons{display:flex;gap:6px;align-items:center}.danger-button{color:var(--bad-fg);border-color:var(--bad-border)}.danger-button:hover{background:var(--bad-bg);border-color:var(--bad-fg)}.active-chip,.active-chip:hover{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 48%,var(--border));color:var(--brand-strong);font-weight:700;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 16%,transparent)}.toggle-active,.toggle-active:hover{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-strong)}.badge{display:inline-flex;align-items:center;gap:4px;min-height:0;padding:2px 9px;border-radius:var(--r-pill);font-size:11px;font-weight:650;letter-spacing:.005em;line-height:1.35;background:var(--bg-subtle);border:0;color:var(--text-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-muted) 22%,transparent);margin-right:4px;white-space:nowrap}.badge-success,.badge-ok{color:var(--ok-fg);background:var(--ok-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ok-fg) 26%,transparent)}.badge-danger,.badge-bad{color:var(--bad-fg);background:var(--bad-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bad-fg) 28%,transparent)}.badge-warning,.badge-warn{color:var(--amber-fg);background:var(--amber-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--amber-fg) 26%,transparent)}.badge-neutral{color:var(--text-soft);background:var(--bg-subtle);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-muted) 22%,transparent)}.badge-info{color:var(--info-fg);background:var(--info-bg);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--info-fg) 26%,transparent)}.badge-success:before,.badge-danger:before{content:"";width:5px;height:5px;flex:none;border-radius:50%;background:currentColor}.badge-success:before{animation:badge-pulse 2.4s var(--ease) infinite}@keyframes badge-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,currentColor 55%,transparent)}60%{box-shadow:0 0 0 4px transparent}}.device-picker-meta .badge,.station-cell .badge,.device-name-cell .badge{margin-right:0}.alarm-hover-target{display:inline-flex;align-items:center;min-width:0;cursor:help}.alarm-hover-stat{display:block;min-width:0}.alarm-hover-stat .stat-card{height:100%}.alarm-hover-popup{position:fixed;z-index:45;display:grid;gap:8px;width:max-content;min-width:min(380px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:min(430px,calc(100vh - 24px));overflow:auto;padding:10px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-3);font-size:12px}.alarm-popup-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,minmax(0,auto));grid-auto-columns:minmax(290px,320px);gap:8px;align-items:stretch}.alarm-popup-header,.alarm-popup-row-head,.alarm-popup-meta{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.alarm-popup-header{justify-content:space-between;padding-bottom:2px}.alarm-popup-row{display:grid;gap:4px;align-content:start;min-width:0;padding:8px;border:1px solid var(--border);border-left-width:3px;border-radius:var(--r-sm);background:var(--bg-soft)}.alarm-popup-critical{border-left-color:var(--bad-fg)}.alarm-popup-warning{border-left-color:var(--warn-fg)}.alarm-popup-info{border-left-color:var(--brand)}.alarm-popup-row strong,.alarm-popup-row span,.alarm-popup-row code{min-width:0;overflow-wrap:anywhere}.alarm-popup-row>span{color:var(--text-soft);line-height:1.35}.alarm-popup-row-head code,.alarm-popup-meta,.alarm-popup-empty,.alarm-popup-more{color:var(--text-muted);font-size:11px}table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}th,td{border-bottom:1px solid var(--border-subtle);padding:8px 9px;text-align:left;vertical-align:top}th{position:sticky;top:0;z-index:2;color:var(--text-muted);background:var(--bg-elev);border-bottom:1px solid var(--border);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.075em;white-space:nowrap}@supports (backdrop-filter: blur(1px)){th{background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(8px) saturate(1.6);backdrop-filter:blur(8px) saturate(1.6)}}tbody tr{transition:background-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}tbody tr:nth-child(2n):not(.selected-row):not(.station-issue-row){background:color-mix(in srgb,var(--text-muted) 4%,transparent)}tbody tr:hover,tbody tr:nth-child(2n):not(.selected-row):not(.station-issue-row):hover{background:var(--bg-hover)}td:last-child,tbody tr:last-child td{border-bottom:0}.table-panel{max-height:min(40vh,380px)}.table-empty{padding:34px 14px;text-align:center;color:var(--text-muted);font-size:12.5px}.sort-button{width:100%;height:100%;border:0;background:transparent;color:inherit;padding:7px 8px;min-height:30px;justify-content:flex-start;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.075em;box-shadow:none}th.sortable-column{padding:0}.sort-button:hover{background:transparent;color:var(--brand)}.sort-button:active{transform:none}.active-sort{color:var(--brand)}.selected-row,.selected-row:hover{background:color-mix(in srgb,var(--brand) 11%,var(--bg-elev));box-shadow:inset 3px 0 0 var(--brand)}:root[data-theme=dark] .selected-row,:root[data-theme=dark] .selected-row:hover{background:color-mix(in srgb,var(--brand) 15%,var(--bg-elev))}.payload-cell{max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono)}.payload-preview{display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:6px;align-items:center;max-width:560px}.payload-preview code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.payload-preview .icon-button{width:30px;min-height:30px;height:30px;padding:4px}.audit-preview{cursor:default}.fleet-overview{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}.stat-grid{flex:1 1 460px;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stat-card{position:relative;display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;min-height:70px;padding:12px 14px;overflow:hidden;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);transition:transform var(--speed) var(--ease),box-shadow var(--speed) var(--ease),border-color var(--speed) var(--ease)}.stat-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:var(--stat-tone, var(--brand));opacity:.85}.stat-card:after{content:"";position:absolute;top:-34px;left:-22px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--stat-tone, var(--brand)) 16%,transparent),transparent 70%);pointer-events:none}.stat-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--stat-tone, var(--brand)) 42%,var(--border));box-shadow:var(--shadow-2)}.stat-icon{position:relative;grid-row:1 / span 2;width:38px;height:38px;display:grid;place-items:center;border-radius:var(--r-md);background:color-mix(in srgb,var(--stat-tone, var(--brand)) 13%,var(--bg-elev));color:var(--stat-tone, var(--brand));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--stat-tone, var(--brand)) 24%,transparent)}.stat-label{align-self:end;font-size:10px;font-weight:800;letter-spacing:.085em;text-transform:uppercase;color:var(--text-muted)}.stat-value{position:relative;align-self:start;font-size:24px;font-weight:750;line-height:1.12;letter-spacing:-.025em}.stat-card[data-tone=brand]{--stat-tone: var(--brand)}.stat-card[data-tone=ok]{--stat-tone: var(--ok-fg)}.stat-card[data-tone=bad]{--stat-tone: var(--bad-fg)}.stat-card[data-tone=warn]{--stat-tone: var(--amber-fg)}.fleet-controls{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.toolbar-actions{flex:0 0 auto;display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.toolbar-button{min-height:34px;height:34px;padding:0 11px;gap:6px;border-radius:var(--r-sm);border-color:var(--border);background:var(--bg-elev);color:var(--text-soft);font-size:12.5px;font-weight:600}.toolbar-button svg{color:var(--text-faint)}.toolbar-button:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text)}.toolbar-button:hover svg{color:var(--brand)}.toolbar-button.is-active{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 42%,var(--border));color:var(--brand-strong)}.toolbar-button.is-active svg{color:var(--brand)}.toolbar-button:focus-visible,.device-step-button:focus-visible,.filter-chip:focus-visible{outline:none;box-shadow:var(--focus-ring)}.toolbar-icon-button{width:34px;padding:0}.toolbar-icon-button:hover svg{transform:rotate(115deg)}.toolbar-divider{width:1px;height:20px;margin:0 4px;background:var(--border)}.fleet-filters,.column-picker{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1);padding:12px;display:grid;gap:11px;animation:panel-expand var(--speed-slow) var(--ease-out)}@keyframes panel-expand{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.filter-chips{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;padding:3px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset);width:fit-content;max-width:100%}.filter-chip{min-height:28px;padding:0 11px;gap:5px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);box-shadow:none;font-size:12px;font-weight:650;line-height:1.25}.filter-chip:hover{background:color-mix(in srgb,var(--bg-elev) 74%,transparent);color:var(--text);box-shadow:none}.filter-chip:active{transform:none}.filter-chip.is-active,.filter-chip.is-active:hover{background:var(--bg-elev);color:var(--brand);box-shadow:var(--shadow-1)}.filter-chip-separator{opacity:.45}.filter-chip-count{padding:0 5px;border-radius:var(--r-pill);background:color-mix(in srgb,currentColor 13%,transparent);font-size:10.5px;font-weight:750;font-variant-numeric:tabular-nums}.filter-chip-separator{display:none}.filter-grid{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.8fr));gap:9px;align-items:end}.audit-filter-grid{grid-template-columns:repeat(5,minmax(140px,1fr))}.column-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px}.column-grid label{flex-direction:row;display:flex;align-items:center;gap:7px;min-height:30px;font-size:12px;font-weight:600;color:var(--text)}.column-grid input{width:auto;min-height:auto}.locked-column{color:var(--text-muted)}.fleet-table-panel{max-height:min(48vh,460px)}.fleet-table-panel-expanded{max-height:calc(100vh - 300px)}.fleet-table-panel-maximized{max-height:calc(100vh - 184px)}.fleet-table{table-layout:auto;min-width:1180px}.fleet-table th,.fleet-table td{padding:4px 7px;vertical-align:middle}.fleet-table tbody td{font-size:12px}.fleet-table .badge{min-height:0;padding:2px 10px;font-size:12px;font-weight:500;line-height:1.25}.fleet-table .icon-button{width:28px;min-height:26px;padding:3px}.fleet-table .action-buttons{gap:4px}.fleet-table .table-action-button{min-height:26px;padding:3px 8px;font-size:12px;white-space:nowrap}.fleet-table td{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-name-cell{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.device-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.station-cell{display:inline-flex;align-items:center;gap:6px;min-width:0}.station-cell small{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis}.station-tag-list,.station-tag-preview{display:flex;align-items:center;flex-wrap:wrap;gap:5px;white-space:normal}.fleet-note-cell{display:inline-block;max-width:280px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.station-edit-form{display:grid;gap:10px}.station-edit-form textarea{min-height:150px}.form-help{color:var(--text-muted);font-size:12px;line-height:1.4}.form-character-count{justify-self:end}.station-tag-preview{min-height:32px;padding:6px 8px;border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--bg-soft)}.station-tag-preview>span:not(.badge){color:var(--text-muted);font-size:12px}.station-metadata-panel .panel-heading h2{display:inline-flex;align-items:center;gap:7px}.station-metadata-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end}.station-metadata-cooperative{grid-column:span 2}.station-metadata-save{white-space:nowrap}.station-issue-row td,.station-issue-row:hover td{background:var(--row-issue)}.alarm-filter-grid{grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.2fr) repeat(4,minmax(130px,.75fr))}.form-error{color:var(--bad-fg);font-size:12px;font-weight:700}.alarm-table-panel{min-height:min(64vh,680px);max-height:calc(100vh - 284px)}.alarm-table{min-width:1220px}.alarm-table th:nth-child(1),.alarm-table td:nth-child(1){width:104px}.alarm-table th:nth-child(2),.alarm-table td:nth-child(2){width:230px}.alarm-table th:nth-child(4),.alarm-table td:nth-child(4),.alarm-table th:nth-child(5),.alarm-table td:nth-child(5),.alarm-table th:nth-child(6),.alarm-table td:nth-child(6),.alarm-table th:nth-child(7),.alarm-table td:nth-child(7){width:96px}.alarm-table th:nth-child(8),.alarm-table td:nth-child(8){width:245px}.alarm-row-critical{box-shadow:inset 3px 0 0 var(--bad-fg)}.alarm-row-warning{box-shadow:inset 3px 0 0 var(--amber-fg)}.alarm-action-buttons{gap:5px}.table-action-button{min-height:26px;padding:3px 9px;font-size:11.5px;font-weight:650;white-space:nowrap;box-shadow:none}.action-emphasis{border-color:color-mix(in srgb,var(--brand) 42%,var(--border));background:var(--brand-soft);color:var(--brand-strong)}.action-emphasis:hover{background:var(--brand);border-color:var(--brand);color:var(--brand-fg)}.action-emphasis:disabled:hover{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand) 42%,var(--border));color:var(--brand-strong)}.action-segment{display:inline-flex}.action-segment>button{border-radius:0;margin-left:-1px}.action-segment>button:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm);margin-left:0}.action-segment>button:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0}.action-segment>button:hover{position:relative;z-index:1}.alarm-message{display:grid;gap:3px;min-width:0}.alarm-message strong,.alarm-message span,.alarm-message code{min-width:0;overflow:hidden;text-overflow:ellipsis}.alarm-message span{color:var(--text-soft);font-size:12px}.alarm-message code{color:var(--text-muted);font-size:10px}.alarm-meta-line{display:inline-flex;gap:8px;align-items:center;min-width:0}.alarm-meta-line small{color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.link-button{min-height:0;justify-content:flex-start;padding:0;border:0;background:transparent;color:var(--brand);font-weight:700}.link-button:hover{background:transparent;color:var(--brand-strong);text-decoration:underline}.inline-link-button{max-width:100%;min-height:0;justify-content:flex-start;padding:0;border:0;background:transparent;color:var(--brand);font:inherit;font-weight:800;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.inline-link-button:hover{background:transparent;color:var(--brand-strong);text-decoration:underline}.alarm-rule-grid,.alarm-trigger-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:10px}.alarm-rule-card,.alarm-trigger-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.alarm-rule-card h3,.alarm-trigger-card h3{font-size:13px}.alarm-rule-card p,.alarm-trigger-card p{margin:5px 0 0;color:var(--text-muted);font-size:12px;line-height:1.35}.alarm-rule-card code,.alarm-trigger-card code{display:block;margin-top:3px;color:var(--text-muted);font-size:10px}.alarm-rule-actions,.alarm-trigger-controls{display:grid;justify-items:end;gap:8px;min-width:150px}.alarm-trigger-controls{min-width:280px}.alarm-trigger-controls label{width:100%}.trigger-checks{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.checkbox-label{display:inline-flex;grid-auto-flow:column;align-items:center;gap:7px}.checkbox-label input{width:auto;min-height:0}.audit-table-panel{max-height:min(52vh,520px)}.storage-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.storage-stat-grid>div{display:grid;gap:4px;min-width:0;padding:10px 11px;border:1px solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-soft);transition:border-color var(--speed) var(--ease)}.storage-stat-grid>div:hover{border-color:color-mix(in srgb,var(--brand) 34%,var(--border))}.storage-stat-grid span{color:var(--text-muted);font-size:9.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.storage-stat-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:750;letter-spacing:-.02em}.storage-maintenance-grid{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(440px,1.05fr);gap:10px}.storage-tool-panel{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.storage-purge-grid{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:8px}.storage-preview{display:grid;grid-template-columns:minmax(110px,auto) minmax(90px,1fr) minmax(150px,auto) minmax(90px,1fr) minmax(70px,auto) minmax(90px,1fr);gap:8px;align-items:center;padding:9px 10px;border:1px solid var(--warn-border);border-radius:var(--r-md);background:var(--warn-bg);font-size:12px}.storage-preview span{color:var(--warn-fg);font-weight:650}.storage-preview strong{color:var(--text)}.storage-operation-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);font-size:12px}.storage-operation-note>svg,.storage-operation-note>.spinner{margin-top:1px;flex:none}.storage-operation-note>div{display:grid;gap:3px;min-width:0}.storage-operation-note strong,.storage-operation-note span{min-width:0;overflow-wrap:anywhere}.storage-operation-note-warn{border-color:var(--warn-border);background:var(--warn-bg);color:var(--warn-fg)}.storage-operation-note-ok{border-color:var(--ok-border);background:var(--ok-bg);color:var(--ok-fg)}.storage-operation-note-bad{border-color:var(--bad-border);background:var(--bad-bg);color:var(--bad-fg)}.storage-device-list{height:min(360px,46vh);max-height:min(360px,46vh);overflow-x:hidden;overflow-y:auto}.compact-list.storage-device-list{overflow-x:hidden;overflow-y:auto}.storage-device-row{grid-template-columns:minmax(240px,1fr) 110px 110px auto;align-items:center}.storage-device-row>div{display:grid;gap:2px;min-width:0}.storage-device-row strong,.storage-device-row span,.storage-type-row span,.storage-table-row span,.storage-type-row code,.storage-table-row code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.storage-type-row{grid-template-columns:minmax(160px,1fr) 120px 140px}.storage-table-row{grid-template-columns:minmax(150px,1fr) minmax(130px,160px) 115px 135px auto;align-items:center}.storage-table-row button{justify-self:end;white-space:nowrap}.storage-table-cleanup{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.tenant-admin-grid{grid-template-columns:minmax(300px,.65fr) minmax(520px,1.35fr)}.tenant-card-list{display:grid;gap:10px}.tenant-card{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.tenant-card-head,.tenant-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.tenant-card h3{font-size:13px}.tenant-card code{display:block;margin-top:3px;color:var(--text-muted);font-size:10px}.tenant-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:9px 10px}.label-text{display:flex;align-items:baseline;gap:5px;min-width:0}.label-optional{color:var(--text-faint);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.audit-table{min-width:1400px;table-layout:fixed}.audit-table th:nth-child(1),.audit-table td:nth-child(1){width:150px}.audit-table th:nth-child(2),.audit-table td:nth-child(2){width:190px}.audit-table th:nth-child(3),.audit-table td:nth-child(3){width:170px}.audit-table th:nth-child(4),.audit-table td:nth-child(4){width:250px}.audit-table th:nth-child(5),.audit-table td:nth-child(5){width:160px}.audit-table th:nth-child(6),.audit-table td:nth-child(6){width:270px}.audit-table th:nth-child(7),.audit-table td:nth-child(7){width:210px}.audit-table th:nth-child(8),.audit-table td:nth-child(8){width:110px}.audit-table th:nth-child(9),.audit-table td:nth-child(9){width:110px}.log-list{max-height:72vh}.log-line,.compact-row{display:grid;grid-template-columns:160px minmax(170px,240px) minmax(90px,160px) 1fr;gap:8px;padding:9px 12px;border-bottom:1px solid var(--border-subtle);align-items:start;font-size:12px;transition:background var(--speed) var(--ease)}.log-line:hover{background:var(--bg-hover)}.log-line:nth-child(2n){background:color-mix(in srgb,var(--text-muted) 4%,transparent)}.log-line:nth-child(2n):hover{background:var(--bg-hover)}.log-line:last-child,.compact-row:last-child{border-bottom:0}.log-line code{white-space:pre-wrap;overflow-wrap:anywhere}.compact-list{display:grid;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--bg-elev)}.compact-row{grid-template-columns:minmax(150px,1fr) 90px 100px 160px minmax(160px,1fr);background:transparent;transition:background var(--speed) var(--ease)}.compact-row:nth-child(2n){background:color-mix(in srgb,var(--text-muted) 4%,transparent)}.compact-row:hover,.compact-row:nth-child(2n):hover{background:var(--bg-hover)}.user-admin-row{grid-template-columns:minmax(180px,1fr) minmax(120px,160px) auto;align-items:center}.router-table-panel{max-height:min(52vh,480px)}.gis-filters{grid-template-columns:minmax(280px,2fr) minmax(160px,.8fr) minmax(130px,.65fr) auto auto;align-items:end}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;top:50%;left:11px;color:var(--text-muted);transform:translateY(-50%);pointer-events:none}.input-with-icon input{width:100%;padding-left:34px}.gis-camera-filter{min-height:38px;align-self:end}.gis-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,.7fr);gap:14px;min-width:0}.gis-map-panel{position:relative}.gis-map{height:min(68vh,680px);min-height:480px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-subtle)}.gis-map-empty{position:absolute;inset:50% auto auto 50%;z-index:500;padding:12px 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);color:var(--text-muted);transform:translate(-50%,-50%);box-shadow:var(--shadow-2)}.leaflet-container{font-family:inherit}.leaflet-tooltip{border-color:var(--border);border-radius:var(--r-md);background:var(--bg-elev);color:var(--text);box-shadow:var(--shadow-2)}.leaflet-tooltip.gis-selected-tooltip{border:2px solid #22d3ee;box-shadow:0 0 0 4px #22d3ee33,var(--shadow-2);font-size:13px}.gis-tooltip{display:grid;gap:3px;min-width:170px}.gis-tooltip span{color:var(--text-muted);font-size:11px}.gis-detail-panel{min-height:0;border-color:color-mix(in srgb,var(--brand) 42%,var(--border));box-shadow:inset 0 3px 0 var(--brand),var(--shadow-1)}.gis-group-identity{display:grid;gap:4px}.gis-group-identity>strong{font-size:17px}.gis-group-identity>span{color:var(--text-muted);font-size:12px;line-height:1.45}.gis-kv{grid-template-columns:110px minmax(0,1fr)}.gis-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.gis-station-list{display:grid;gap:4px;max-height:330px;overflow:auto;padding-top:4px;border-top:1px solid var(--border)}.gis-station-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;min-height:50px;padding:7px 9px;border-color:transparent;background:transparent;text-align:left}.gis-station-row:hover,.gis-station-row.is-selected{border-color:var(--border);background:var(--bg-hover)}.gis-station-row.is-selected{border-color:color-mix(in srgb,var(--brand) 72%,var(--border));background:color-mix(in srgb,var(--brand-soft) 84%,var(--bg-elev));box-shadow:inset 5px 0 0 var(--brand),0 0 0 1px color-mix(in srgb,var(--brand) 26%,transparent);color:var(--text)}.gis-station-row.is-selected .gis-station-status{display:grid;width:24px;height:24px;place-items:center;border-radius:999px;background:var(--brand);color:#fff}.gis-station-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.gis-station-row strong,.gis-station-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gis-station-row small{color:var(--text-muted)}.gis-station-status{color:var(--brand)}.router-table{table-layout:auto;min-width:900px}.router-table th,.router-table td{padding:4px 7px;vertical-align:middle}.router-table tbody td{font-size:12px}.router-table .badge{min-height:0;padding:2px 10px;font-size:12px;font-weight:500;line-height:1.25}.router-table td{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.router-table tbody tr{cursor:pointer}.router-name{font-weight:800}.router-name-offline{color:var(--bad-fg)}.router-link-panel{display:grid;gap:8px;padding:9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.router-ip-controls,.router-link-controls{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:end}.router-station-link{align-self:end;white-space:nowrap}.router-station-empty{align-self:end;color:var(--text-muted);font-size:12px;padding-bottom:8px}.router-linked-list{background:var(--bg-elev)}.router-linked-row{display:grid;grid-template-columns:minmax(0,1fr) 78px auto auto;gap:8px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--border);font-size:12px}.router-linked-row:last-child{border-bottom:0}.router-linked-row>span:first-child{display:grid;gap:2px;min-width:0}.router-linked-row strong,.router-linked-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.router-linked-row small{color:var(--text-muted)}.audit-history-list{max-height:280px;overflow:auto}.audit-history-row{grid-template-columns:155px minmax(130px,auto) minmax(130px,190px) minmax(0,1fr) auto}.audit-history-row code{overflow-wrap:anywhere}.ota-command-row{grid-template-columns:150px 100px minmax(90px,130px) minmax(160px,1fr) 180px minmax(0,1fr)}.ota-command-row code{overflow-wrap:anywhere}.ota-command-detail{overflow-wrap:anywhere;color:var(--text-muted)}.kv-grid{display:grid;grid-template-columns:130px minmax(0,1fr);gap:7px 12px;align-items:start;font-size:12px}.kv-grid span{color:var(--text-muted);font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase;padding-top:1px}.kv-grid code{overflow-wrap:anywhere}.config-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.config-table>div{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1fr);gap:8px;align-items:center;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--r-sm);background:var(--bg-soft);font-size:12px}.config-table span{color:var(--text-muted);font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.config-table code{overflow-wrap:anywhere}.help-grid{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 12px;align-items:center;font-size:12px}.help-grid>span{color:var(--text-muted);font-weight:700}.json-block,.terminal{margin:0;overflow:auto;padding:12px 13px;border-radius:var(--r-md);background:linear-gradient(180deg,var(--terminal-chrome),var(--terminal-bg) 46px),var(--terminal-bg);color:var(--terminal-fg);border:1px solid var(--terminal-border);box-shadow:inset 0 1px #ffffff0b,inset 0 0 40px #00000059;font-family:var(--font-mono);font-size:12px;font-variant-ligatures:none;line-height:1.55;-moz-tab-size:2;tab-size:2}.json-block::selection,.terminal::selection,.json-block ::selection,.terminal ::selection{background:color-mix(in srgb,var(--brand) 42%,transparent)}.json-block{min-height:180px;max-height:280px}.terminal{min-height:220px;max-height:42vh;white-space:pre-wrap}.terminal:empty:before,.json-block:empty:before{content:"▍";color:color-mix(in srgb,var(--brand) 78%,transparent);animation:caret-blink 1.15s steps(1) infinite}.json-block-empty{display:grid;place-items:center;color:color-mix(in srgb,var(--terminal-fg) 46%,transparent);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase}.json-block-empty span:before{content:"▍ ";color:color-mix(in srgb,var(--brand) 78%,transparent);animation:caret-blink 1.15s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.mini-code{margin:0;padding:10px;border-radius:var(--r-sm);background:var(--bg-soft);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:12px}.wide-code{display:block;padding:9px 10px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--r-sm);overflow-wrap:anywhere;font-family:var(--font-mono);font-size:12px}.error-line{color:var(--bad-fg);background:var(--bad-bg);border:1px solid var(--bad-border);border-radius:var(--r-sm);padding:9px 10px;font-size:12px;font-weight:600}.warn-line{color:var(--warn-fg);background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--r-sm);padding:9px 10px;font-size:12px;font-weight:600;line-height:1.4}.inline-check{display:inline-flex;grid-auto-flow:column;align-items:center;justify-content:flex-start;gap:8px;color:var(--text-soft);font-size:12px;font-weight:650}.inline-check input{width:16px;height:16px;min-height:0;flex:none}.retain-command-check{margin-top:2px}.inline-note{font-size:12px;line-height:1.5;color:var(--text-muted);background:var(--bg-soft);border:1px solid var(--border-subtle);border-left:3px solid var(--brand);border-radius:var(--r-sm);padding:8px 11px}.ota-source-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:4px;padding:4px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset)}.ota-source-grid>button{min-height:32px;border-color:transparent;background:transparent;color:var(--text-muted);font-size:12.5px;box-shadow:none}.ota-source-grid>button:hover{background:color-mix(in srgb,var(--bg-elev) 74%,transparent);border-color:transparent;color:var(--text)}.ota-source-grid>button:active{transform:none}.ota-source-grid>.toggle-active,.ota-source-grid>.toggle-active:hover{background:var(--bg-elev);border-color:transparent;color:var(--brand);box-shadow:var(--shadow-1)}.ota-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.url-check,.manual-url-panel{display:grid;gap:8px;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.compact-field{min-width:240px}.favorite-url-list{display:flex;gap:6px;flex-wrap:wrap}.favorite-url-list button{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.binary-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:10px 11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft);font-size:12px}.binary-summary code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ota-activity{display:grid;gap:8px;padding-top:4px}.ota-activity h3{font-size:13px}.ota-log-list{display:grid;gap:6px;max-height:260px;overflow:auto}.ota-log-entry{display:grid;grid-template-columns:76px minmax(0,1fr);gap:4px 8px;padding:8px 10px;border:1px solid var(--border-subtle);border-left:3px solid var(--border-strong);border-radius:var(--r-sm);background:var(--bg-soft);font-size:12px;animation:view-in .26s var(--ease-out)}.ota-log-entry span{color:var(--text-muted);font-family:var(--font-mono);font-size:11px;font-variant-numeric:tabular-nums}.ota-log-entry strong{min-width:0}.ota-log-entry code{grid-column:2;color:var(--text-soft);overflow-wrap:anywhere}.ota-log-ok{border-color:var(--ok-border);border-left-color:var(--ok-fg);background:var(--ok-bg)}.ota-log-ok span,.ota-log-ok code{color:var(--ok-fg)}.ota-log-warn{border-color:var(--amber-border);border-left-color:var(--amber-fg);background:var(--amber-bg)}.ota-log-warn span,.ota-log-warn code{color:var(--amber-fg)}.ota-log-error{border-color:var(--bad-border);border-left-color:var(--bad-fg);background:var(--bad-bg)}.ota-log-error span,.ota-log-error code{color:var(--bad-fg)}.builds-layout{grid-template-columns:minmax(430px,.95fr) minmax(560px,1.45fr);align-items:start}.builds-layout .panel{padding:12px;gap:9px}.builds-layout label{gap:4px}.builds-layout input,.builds-layout select{min-height:34px;padding:7px 9px}.builds-layout button{min-height:34px;padding:7px 10px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:end}.build-profile-toolbar{gap:6px}.build-status{padding:7px 9px}.env-grid{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:8px;max-height:44vh;overflow:auto;padding-right:4px}.build-env-grid{gap:7px;max-height:calc(100vh - 284px)}.build-env-grid label{min-width:0;font-family:var(--font-mono);font-size:10.5px;font-weight:600;letter-spacing:0;color:var(--text-soft)}.build-env-grid input,.build-env-grid select{font-family:var(--font-mono);font-size:12px}.build-select-field{align-content:start}.build-field-name{width:fit-content;max-width:100%}.build-field-tooltip-trigger{position:relative;display:inline-flex;align-items:center;gap:5px;cursor:help}.build-field-tooltip-trigger svg{color:var(--text-muted);flex:none}.build-field-tooltip-trigger-right .build-option-tooltip{right:0;left:auto}.build-option-tooltip{position:absolute;top:calc(100% + 7px);left:0;z-index:10;display:grid;gap:5px;width:min(320px,calc(100vw - 48px));padding:9px 10px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-elev);box-shadow:var(--shadow-2);color:var(--text-soft);font-size:11px;font-weight:500;line-height:1.35;opacity:0;pointer-events:none;transform:translateY(-2px);transition:opacity var(--speed) ease,transform var(--speed) ease;visibility:hidden}.build-option-tooltip-wide{width:min(460px,calc(100vw - 48px))}.build-env-grid label:nth-child(2n) .build-option-tooltip{right:0;left:auto}.build-field-tooltip-trigger:hover .build-option-tooltip,.build-field-tooltip-trigger:focus-visible .build-option-tooltip{opacity:1;transform:translateY(0);visibility:visible}.build-option-tooltip span{min-width:0;overflow-wrap:anywhere}.build-tooltip-option{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:7px;align-items:start}.build-tooltip-note{margin-top:3px;padding-top:7px;border-top:1px solid var(--border);color:var(--text-muted)}.build-option-tooltip code{display:inline-flex;align-items:center;justify-content:center;min-width:16px;padding:0 4px;border:1px solid var(--border);border-radius:var(--r-xs);background:var(--bg-soft);color:var(--text-soft);font-size:10px}.admin-title-with-help,.admin-action-with-help{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.admin-title-with-help{flex-wrap:wrap}.admin-action-with-help{position:relative}.admin-help-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;min-height:22px;border:1px solid var(--border);border-radius:999px;background:var(--bg-elev);color:var(--text-muted);cursor:help}.admin-help-trigger:hover,.admin-help-trigger:focus-visible{border-color:var(--border-strong);background:var(--bg-hover);color:var(--text);outline:none}.admin-help-trigger-right .admin-help-tooltip{right:0;left:auto}.admin-help-tooltip{position:absolute;top:calc(100% + 7px);left:0;z-index:30;display:grid;gap:6px;width:min(360px,calc(100vw - 48px));padding:10px 11px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-elev);box-shadow:var(--shadow-2);color:var(--text-soft);font-size:11px;font-weight:500;line-height:1.4;opacity:0;pointer-events:none;text-align:left;transform:translateY(-2px);transition:opacity var(--speed) ease,transform var(--speed) ease;visibility:hidden}.admin-help-trigger-wide .admin-help-tooltip{width:min(500px,calc(100vw - 48px))}.admin-help-trigger:hover .admin-help-tooltip,.admin-help-trigger:focus-visible .admin-help-tooltip{opacity:1;transform:translateY(0);visibility:visible}.admin-help-tooltip span{min-width:0;overflow-wrap:anywhere}.build-run-panel{position:sticky;top:16px}.build-run-controls{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(120px,.85fr) minmax(90px,.65fr) minmax(108px,auto);gap:8px;align-items:end}.build-version-field{min-width:0}.build-run-button{width:100%;align-self:end}.build-progress{display:grid;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.build-ota-ready-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--ok) 36%,var(--border));border-radius:var(--r-md);background:color-mix(in srgb,var(--ok) 10%,var(--bg-soft))}.build-ota-ready-panel h3{font-size:13px;margin-bottom:3px}.build-ota-ready-panel code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.binary-summary-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.build-binaries-strip{padding:9px 10px}.binary-summary-panel h3{font-size:13px}.binary-summary-panel p{margin:2px 0 0}.build-output-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.build-terminal{height:min(52vh,520px);min-height:320px;max-height:none}.artifact-panel{display:grid;gap:8px;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.artifact-panel h3{font-size:14px}.artifact-list{display:grid;gap:7px}.artifact-filters{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:8px}.artifact-row{display:grid;grid-template-columns:minmax(80px,1fr) auto auto;align-items:center;gap:8px;padding:8px 9px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev)}.artifact-row code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exported-artifacts{max-height:430px;overflow:auto;padding-right:2px}.exported-artifact-row{grid-template-columns:minmax(260px,1fr) minmax(130px,auto) auto;align-items:start}.artifact-main{min-width:0;display:grid;gap:4px}.artifact-subline{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;min-width:0;color:var(--text-soft);font-size:12px}.artifact-subline span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.artifact-subline-muted{color:var(--text-muted)}.artifact-meta{display:grid;gap:4px;justify-items:start;min-width:130px;font-size:12px}.artifact-actions,.modal-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}.serial-grid{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:8px}.check-row{display:flex;align-items:center;gap:7px;color:var(--text-soft);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;cursor:pointer;white-space:nowrap}.check-row input{width:15px;height:15px;min-height:auto;flex:none;cursor:pointer}.check-row:hover{color:var(--text)}.flash-parts{display:grid;gap:6px}.flash-parts>div:not(.error-line){display:grid;grid-template-columns:80px minmax(100px,1fr) 70px minmax(120px,1fr);gap:8px;align-items:center;font-size:12px;border:1px solid var(--border);border-radius:var(--r-sm);padding:8px;background:var(--bg-soft)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--backdrop);-webkit-backdrop-filter:blur(6px) saturate(.85);backdrop-filter:blur(6px) saturate(.85);display:grid;place-items:center;padding:20px;animation:backdrop-in .16s var(--ease-out)}.modal-panel{width:min(760px,calc(100vw - 40px));max-height:min(800px,calc(100vh - 40px));overflow:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-3);animation:modal-in .24s var(--ease-out)}.modal-wide{width:min(1040px,calc(100vw - 40px))}.modal-header{position:sticky;top:0;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:13px 16px;z-index:1}.modal-header h2{font-size:14px;font-weight:750}.modal-body{padding:15px;display:grid;gap:15px}.modal-body h3{font-size:13px}.modal-body p,.modal-body ul,.modal-body ol{margin:0;color:var(--text-soft);font-size:13px;line-height:1.5}.modal-body ul,.modal-body ol{padding-left:20px}.modal-body li+li{margin-top:4px}.modal-body section{display:grid;gap:8px}.build-detail-grid{grid-template-columns:150px minmax(0,1fr)}.audit-detail-grid{grid-template-columns:120px minmax(0,1fr)}.audit-long-text,.audit-detail-json{white-space:pre-wrap;overflow-wrap:anywhere}.audit-detail-json{max-height:50vh}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}.login-shell{position:relative;min-height:100vh;display:grid;place-items:center;padding:24px;overflow:hidden;background:radial-gradient(1100px 600px at 50% -12%,color-mix(in srgb,var(--brand) 26%,transparent),transparent 68%),var(--bg)}.login-shell:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(color-mix(in srgb,var(--brand) 9%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--brand) 9%,transparent) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000,transparent 66%);mask-image:radial-gradient(circle at 50% 42%,#000,transparent 66%);pointer-events:none}.login-panel{position:relative;width:min(430px,calc(100vw - 24px));overflow:hidden;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-3);padding:28px;display:grid;gap:15px;animation:modal-in .32s var(--ease-out)}.login-panel:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand) 45%,transparent))}.login-panel .brand-row{padding-bottom:16px}.login-panel button[type=submit],.login-panel .primary{min-height:40px;margin-top:3px}.password-field{position:relative}.password-field input{padding-right:42px}.pw-toggle{position:absolute;right:4px;bottom:4px;width:32px;height:28px;min-height:28px;padding:0;border-color:transparent;background:transparent;color:var(--text-muted)}.pw-toggle:hover{background:var(--bg-hover);border-color:transparent;color:var(--text)}.toast-stack{position:fixed;right:16px;bottom:16px;z-index:40;display:grid;gap:8px;width:min(380px,calc(100vw - 32px))}.toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;padding:11px 12px;border-radius:var(--r-md);background:color-mix(in srgb,var(--bg-elev) 94%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.5);backdrop-filter:blur(12px) saturate(1.5);border:1px solid var(--border);box-shadow:var(--shadow-2);animation:toast-in .28s var(--ease-out)}.toast-icon{display:grid;place-items:center;padding-top:1px}.toast-message{font-size:13px;line-height:1.45;overflow-wrap:anywhere}.toast-close{width:24px;height:24px;min-height:24px;padding:0;border-color:transparent;background:transparent;color:var(--text-muted)}.toast-close:hover{background:var(--bg-hover);border-color:transparent;color:var(--text)}.toast-success{border-left:3px solid var(--ok-fg)}.toast-success .toast-icon{color:var(--ok-fg)}.toast-error{border-left:3px solid var(--bad-fg)}.toast-error .toast-icon{color:var(--bad-fg)}.toast-warn{border-left:3px solid var(--warn-fg)}.toast-warn .toast-icon{color:var(--warn-fg)}.toast-info{border-left:3px solid var(--brand)}.toast-info .toast-icon{color:var(--brand)}@keyframes toast-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}.confirm-modal{width:min(440px,calc(100vw - 40px))}.danger-solid,.danger-solid:hover{background:var(--bad-fg);border-color:var(--bad-fg);color:#fff}.danger-solid:hover{filter:brightness(1.08)}.spinner{display:inline-block;width:14px;height:14px;border:2px solid color-mix(in srgb,var(--brand) 22%,transparent);border-top-color:var(--brand);border-radius:50%;animation:spin .62s linear infinite;vertical-align:-3px}.data-loading-state{display:flex;min-height:150px;align-items:center;justify-content:center;gap:14px;padding:32px 18px;color:var(--text-muted);text-align:left}.data-loading-state>.spinner{width:28px;height:28px;border-width:3px;flex:none}.data-loading-state>span{display:grid;gap:3px}.data-loading-state strong{color:var(--text);font-size:14px}.data-loading-state small{color:var(--text-muted);font-family:var(--font-mono);font-size:11px}.table-empty .spinner{margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.signal-cell{display:inline-flex;align-items:center;gap:7px}.signal-bars{display:inline-flex;align-items:flex-end;gap:2px;height:13px}.signal-bars i{width:3px;border-radius:1px;background:color-mix(in srgb,var(--border-strong) 55%,transparent);transition:background var(--speed) var(--ease)}.signal-bars i:nth-child(1){height:4px}.signal-bars i:nth-child(2){height:7px}.signal-bars i:nth-child(3){height:10px}.signal-bars i:nth-child(4){height:13px}.signal-bars[data-tone=ok] i.on{background:var(--ok-fg)}.signal-bars[data-tone=warn] i.on{background:var(--warn-fg)}.signal-bars[data-tone=bad] i.on{background:var(--bad-fg)}.metrics-header{grid-template-columns:minmax(0,1fr) auto;align-items:center}.metrics-header p{margin:4px 0 0}.metrics-actions{display:flex;flex-wrap:wrap;align-items:end;justify-content:flex-end;gap:8px}.metric-visibility-menu{position:relative}.metric-visibility-menu>summary{display:inline-flex;min-height:34px;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);color:var(--text);cursor:pointer;font-size:12px;font-weight:700;list-style:none;-webkit-user-select:none;user-select:none}.metric-visibility-menu>summary::-webkit-details-marker{display:none}.metric-visibility-menu>summary span{padding:1px 5px;border-radius:999px;background:var(--bg-inset);color:var(--text-muted);font-size:10px}.metric-visibility-menu[open]>summary{border-color:var(--brand);color:var(--brand)}.metric-visibility-popover{position:absolute;top:calc(100% + 7px);right:0;z-index:30;width:min(440px,calc(100vw - 32px));max-height:min(70vh,620px);overflow:auto;padding:12px;border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--bg-elev);box-shadow:var(--shadow-2)}.metric-visibility-head{position:sticky;top:-12px;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-12px -12px 10px;padding:12px;border-bottom:1px solid var(--border-subtle);background:var(--bg-elev)}.metric-visibility-head>div:first-child{display:grid;gap:2px}.metric-visibility-head small{color:var(--text-muted);font-size:10px}.metric-visibility-head>div:last-child{display:flex;gap:5px}.metric-visibility-head button{min-height:27px;padding:4px 8px;font-size:11px}.metric-visibility-search{width:100%;min-height:34px;margin-bottom:11px;font-size:12px}.metric-visibility-empty{padding:18px 8px;color:var(--text-muted);font-size:12px;text-align:center}.metric-visibility-popover fieldset{display:grid;gap:3px;margin:0;padding:0;border:0}.metric-visibility-popover fieldset+fieldset{margin-top:12px}.metric-visibility-popover legend{width:100%;margin-bottom:5px;color:var(--text-muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.metric-visibility-popover label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:7px 8px;border-radius:var(--r-sm);cursor:pointer}.metric-visibility-popover label:hover{background:var(--bg-soft)}.metric-visibility-popover input{margin-top:2px}.metric-visibility-popover label span{display:grid;min-width:0;gap:2px}.metric-visibility-popover label strong{font-size:12px}.metric-visibility-popover label code{overflow:hidden;color:var(--text-faint);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.range-chip-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px;padding:3px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset)}.range-chip-row button{min-height:28px;padding:5px 11px;border-color:transparent;border-radius:var(--r-sm);background:transparent;color:var(--text-muted);font-size:12px;box-shadow:none}.range-chip-row button:hover{background:color-mix(in srgb,var(--bg-elev) 74%,transparent);border-color:transparent;color:var(--text)}.range-chip-row button:active{transform:none}.range-chip-row .active-chip,.range-chip-row .active-chip:hover{background:var(--bg-elev);border-color:transparent;color:var(--brand);box-shadow:var(--shadow-1)}.custom-range-grid{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:8px;align-items:end}.custom-range-grid input{min-height:32px;padding:6px 8px}.packet-total-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.packet-total-card{display:grid;gap:3px;padding:10px 11px;border:1px solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-soft)}.packet-total-card span{color:var(--text-muted);font-size:9.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.packet-total-card strong{font-size:19px;font-weight:750;letter-spacing:-.022em}.packet-total-card[data-tone=ok]{border-color:var(--ok-border);background:var(--ok-bg)}.packet-total-card[data-tone=warn]{border-color:var(--warn-border);background:var(--warn-bg)}.packet-total-card[data-tone=bad]{border-color:var(--bad-border);background:var(--bad-bg)}.packet-bars{width:100%;height:170px;display:block;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset);padding:8px}.chart-tooltip-wrap{position:relative;min-width:0}.chart-tooltip{position:absolute;z-index:12;display:grid;gap:2px;min-width:150px;max-width:min(260px,calc(100vw - 40px));padding:8px 10px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--terminal-bg);color:var(--terminal-fg);box-shadow:var(--shadow-2);font-size:11px;line-height:1.35;pointer-events:none;transform:translate(-50%,calc(-100% - 10px))}.chart-tooltip span:first-child{font-weight:750}.packet-bar-hit{fill:transparent;pointer-events:all}.chart-gap-region{fill:color-mix(in srgb,var(--text-faint) 11%,transparent);stroke:color-mix(in srgb,var(--text-faint) 22%,transparent);stroke-width:.25;stroke-dasharray:1.2 1.2;pointer-events:none}.packet-bar-empty{fill:color-mix(in srgb,var(--text-faint) 12%,transparent);stroke:color-mix(in srgb,var(--text-faint) 34%,transparent);stroke-width:.4;stroke-dasharray:1.2 1.2;vector-effect:non-scaling-stroke}.metric-legend{display:flex;flex-wrap:wrap;gap:9px 14px;color:var(--text-muted);font-size:12px}.metric-legend span{display:inline-flex;align-items:center;gap:5px}.metric-legend i{width:10px;height:10px;border-radius:2px}.metric-card-grid{display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:10px}.metric-card{display:grid;gap:9px;min-width:0;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.metric-card-head{display:flex;justify-content:space-between;gap:10px;min-width:0}.metric-card-head h3{font-size:12.5px;font-weight:750}.metric-card-head code{display:block;max-width:190px;margin-top:2px;color:var(--text-faint);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-card-head strong{flex:none;font-size:17px;font-weight:750;letter-spacing:-.022em;text-align:right}.sparkline{width:100%;height:54px;display:block}.sparkline-area{fill:color-mix(in srgb,var(--brand) 14%,transparent)}.sparkline-line{fill:none;stroke:var(--brand);stroke-width:1.8;vector-effect:non-scaling-stroke}.sparkline-hit{fill:transparent;stroke:transparent;pointer-events:all}.sparkline-dot{position:absolute;width:3px;height:3px;border-radius:50%;background:color-mix(in srgb,var(--brand) 84%,#ffffff);box-shadow:0 0 0 1px color-mix(in srgb,var(--bg-elev) 90%,transparent);pointer-events:none;transform:translate(-50%,-50%)}.sparkline-dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.sparkline-hit,.packet-bar-hit{cursor:crosshair}.sparkline-area{fill:color-mix(in srgb,var(--brand) 11%,transparent)}.sparkline-line{stroke:color-mix(in srgb,var(--brand) 78%,#2563eb)}.packet-bars{background:linear-gradient(180deg,var(--bg-elev),var(--bg-inset))}.metric-card,.packet-total-card,.status-summary-grid div{background:var(--bg-soft);transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease)}.metric-card:hover,.packet-total-card:hover,.status-summary-grid div:hover{border-color:color-mix(in srgb,var(--brand) 42%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--brand) 10%,transparent)}svg .sparkline-dot{pointer-events:none}.metric-card-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;color:var(--text-muted);font-size:11px}.metric-card-stats b{color:var(--text);font-weight:700}.metric-empty{min-height:54px;display:grid;place-items:center;color:var(--text-muted);font-size:12px;border:1px dashed var(--border);border-radius:var(--r-md)}.status-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.status-summary-grid div{display:grid;gap:4px;min-width:0;padding:9px 11px;border:1px solid var(--border-subtle);border-radius:var(--r-md);background:var(--bg-soft)}.status-summary-grid span{color:var(--text-muted);font-size:9.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.status-summary-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;letter-spacing:-.015em}.transport-timeline-card{display:grid;gap:9px;min-width:0;margin-top:10px;margin-bottom:10px;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.router-timeline-grid{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:10px}.router-timeline-grid .transport-timeline-card{margin:10px 0 0}.router-signal-chart-card{display:grid;gap:10px;margin-top:10px;padding:11px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-soft)}.signal-chart-wrap{position:relative;display:grid;gap:8px;min-width:0}.signal-chart{width:100%;height:210px;display:block;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset)}.signal-chart-grid{stroke:color-mix(in srgb,var(--border) 78%,transparent);stroke-width:.35;vector-effect:non-scaling-stroke}.signal-chart-line{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.signal-chart-point{stroke:var(--bg-elev);stroke-width:.7;vector-effect:non-scaling-stroke}.signal-chart-scale{position:absolute;top:8px;right:10px;bottom:31px;display:flex;flex-direction:column;justify-content:space-between;color:var(--text-muted);font-size:10px;pointer-events:none}.transport-timeline-head{display:flex;justify-content:space-between;gap:10px;min-width:0}.transport-timeline-head h3{font-size:12.5px;font-weight:750}.transport-timeline-head code{display:block;margin-top:2px;color:var(--text-faint);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transport-timeline-head strong{flex:none;font-size:15px;font-weight:750;letter-spacing:-.02em;text-align:right}.transport-track{position:relative;display:block;width:100%;height:40px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-sm);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--text-faint) 8%,var(--bg-inset)) 0,color-mix(in srgb,var(--text-faint) 8%,var(--bg-inset)) 5px,var(--bg-inset) 5px,var(--bg-inset) 10px);box-shadow:inset 0 1px 3px #10222a14}.transport-segment{position:absolute;top:0;min-width:1px;height:100%;cursor:crosshair;border-right:1px solid color-mix(in srgb,var(--bg-elev) 55%,transparent);transition:filter var(--speed) var(--ease)}.transport-segment:last-child{border-right:0}.missing-data-swatch{border:1px dashed color-mix(in srgb,var(--text-faint) 55%,transparent);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--text-faint) 16%,transparent) 0,color-mix(in srgb,var(--text-faint) 16%,transparent) 3px,transparent 3px,transparent 6px)}.transport-segment:hover{filter:saturate(1.3) brightness(1.08)}.transport-legend{display:flex;flex-wrap:wrap;gap:9px 14px;color:var(--text-muted);font-size:12px}.transport-legend span{display:inline-flex;align-items:center;gap:5px}.transport-legend i{width:10px;height:10px;border-radius:2px}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:25;height:auto;overflow:visible;padding:9px 12px;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto;gap:12px;align-items:center;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.4);backdrop-filter:blur(12px) saturate(1.4);border-right:0;border-bottom:1px solid var(--border)}.brand-row{padding:0;border-bottom:0}.brand-row>div{display:none}nav{grid-auto-flow:column;justify-content:start;gap:2px;overflow-x:auto;overflow-y:hidden;margin:0;padding:2px 0;scrollbar-width:none}nav::-webkit-scrollbar{display:none}nav button{white-space:nowrap}.nav-section-label{align-self:center;width:1px;height:18px;padding:0;margin:0 5px;overflow:hidden;text-indent:-999px;background:var(--border)}.nav-section-label:first-child{display:none}nav button:before{left:0;top:auto;bottom:-2px;width:100%;height:2px;border-radius:var(--r-pill);transform:none;transition:opacity var(--speed) var(--ease);opacity:0}.active-nav:before{height:2px;opacity:1}.sidebar-footer{display:flex;align-items:center;gap:8px;padding-top:0;border-top:0}.sidebar-user-meta{display:none}.theme-toggle{gap:0;font-size:0;width:34px;justify-content:center;padding:6px}.theme-toggle svg{font-size:15px}.split,.tenant-admin-grid,.form-row,.build-run-controls,.env-grid,.serial-grid,.filter-grid,.audit-filter-grid,.artifact-filters,.config-table,.alarm-rule-grid,.alarm-trigger-grid,.column-grid,.metrics-header,.metrics-actions,.custom-range-grid,.storage-stat-grid,.storage-maintenance-grid,.storage-purge-grid,.storage-preview,.station-metadata-form,.gis-filters,.gis-layout,.router-ip-controls,.router-link-controls,.router-linked-row,.packet-total-grid,.metric-card-grid,.router-timeline-grid,.status-summary-grid,.alarm-rule-card,.alarm-trigger-card{grid-template-columns:1fr}.alarm-rule-actions,.alarm-trigger-controls{justify-items:stretch;min-width:0}.metrics-actions{justify-content:stretch}.stat-grid{flex-basis:100%;grid-template-columns:repeat(2,1fr)}.topbar{align-items:stretch;flex-direction:column;top:8px}.topbar-heading{padding-right:0;padding-bottom:10px;border-right:0;border-bottom:1px solid var(--border-subtle)}.logs-range-row .muted-text{margin-left:0}.logs-toggle-group{border-left:0;border-right:0;padding:0}.filter-chips,.range-chip-row{width:100%;justify-content:flex-start;overflow-x:auto}.topbar-controls{display:grid;grid-template-columns:1fr;min-width:0;align-items:center;width:100%}.tenant-picker-wrap{grid-column:1 / -1;max-width:none}.device-selector-bar{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;width:100%}.tenant-edit-grid{grid-template-columns:1fr}.station-metadata-cooperative{grid-column:auto}.build-run-panel{position:static}.build-terminal{height:320px;min-height:260px}.device-picker{min-width:0;max-width:none}.device-picker-wrap{max-width:none;min-width:0}.build-option-tooltip,.build-option-tooltip-wide,.build-field-tooltip-trigger-right .build-option-tooltip,.build-env-grid label:nth-child(2n) .build-option-tooltip,.admin-help-tooltip,.admin-help-trigger-wide .admin-help-tooltip,.admin-help-trigger-right .admin-help-tooltip{position:fixed;top:auto;right:16px;bottom:16px;left:16px;z-index:40;width:auto;max-height:min(64vh,430px);overflow:auto}.log-line,.compact-row,.audit-history-row,.artifact-row,.binary-summary,.binary-summary-panel,.build-ota-ready-panel,.ota-command-row,.ota-source-grid,.ota-upload-form,.ota-log-entry{grid-template-columns:1fr}.ota-log-entry code{grid-column:1}}@media(max-width:560px){.stat-grid{grid-template-columns:1fr}}.main>.view-grid,.main>.split,.main>.panel{animation:view-in var(--speed-slow) var(--ease-out) both}@keyframes view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.stat-grid>.stat-card,.stat-grid>.alarm-hover-stat{animation:view-in .34s var(--ease-out) both}.stat-grid>*:nth-child(1){animation-delay:0ms}.stat-grid>*:nth-child(2){animation-delay:45ms}.stat-grid>*:nth-child(3){animation-delay:90ms}.stat-grid>*:nth-child(4){animation-delay:135ms}.table-panel:after,.log-list:after{content:"";position:sticky;bottom:0;left:0;display:block;height:22px;margin-top:-22px;background:linear-gradient(180deg,transparent,var(--bg-elev));pointer-events:none}.skeleton{position:relative;overflow:hidden;border-radius:var(--r-sm);background:var(--bg-inset)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--bg-elev) 82%,transparent),transparent);animation:shimmer 1.4s var(--ease) infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-stack{display:grid;gap:8px;padding:14px}.skeleton-line{height:11px}.skeleton-line:nth-child(2n){width:72%}.skeleton-line:nth-child(3n){width:88%}.table-empty .spinner+*,.table-empty>.spinner~*{color:var(--text-muted)}.live-dot{display:inline-block;width:7px;height:7px;flex:none;border-radius:50%;background:var(--text-faint);box-shadow:0 0 0 2px color-mix(in srgb,var(--text-faint) 22%,transparent)}.live-dot[data-state=on]{background:var(--ok-fg);box-shadow:0 0 0 2px color-mix(in srgb,var(--ok-fg) 24%,transparent);animation:live-ping 2.6s var(--ease) infinite}.live-dot[data-state=off]{background:var(--bad-fg);box-shadow:0 0 0 2px color-mix(in srgb,var(--bad-fg) 24%,transparent)}@keyframes live-ping{0%,to{box-shadow:0 0 0 2px color-mix(in srgb,var(--ok-fg) 26%,transparent)}55%{box-shadow:0 0 0 6px transparent}}.tenant-card,.alarm-rule-card,.alarm-trigger-card,.artifact-row,.transport-timeline-card,.router-signal-chart-card{transition:border-color var(--speed) var(--ease),box-shadow var(--speed) var(--ease),transform var(--speed) var(--ease)}.tenant-card:hover,.alarm-rule-card:hover,.alarm-trigger-card:hover,.artifact-row:hover{border-color:color-mix(in srgb,var(--brand) 34%,var(--border));box-shadow:var(--shadow-1)}.danger-button:hover,.danger-solid:hover{box-shadow:0 3px 10px -4px color-mix(in srgb,var(--bad-fg) 55%,transparent)}.live-feed{display:inline-flex;align-items:center;gap:6px;flex:none;padding:3px 9px 3px 8px;border-radius:var(--r-pill);background:var(--bg-subtle);color:var(--text-muted);font-size:10.5px;font-weight:750;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;transition:background var(--speed) var(--ease),color var(--speed) var(--ease)}.live-feed-online{background:var(--ok-bg);color:var(--ok-fg)}.live-feed-offline{background:var(--bad-bg);color:var(--bad-fg);animation:live-feed-alert 2s var(--ease) infinite}@keyframes live-feed-alert{0%,to{box-shadow:0 0 color-mix(in srgb,var(--bad-fg) 34%,transparent)}55%{box-shadow:0 0 0 5px transparent}}.station-combobox{position:relative;min-width:0}.station-combobox-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;font-weight:500}.station-combobox-trigger svg{color:var(--text-muted)}.station-combobox-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-combobox-popup{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:40;display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:min(420px,60vh);overflow:hidden;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-elev);box-shadow:var(--shadow-3);animation:panel-expand var(--speed) var(--ease-out)}.station-combobox-search{padding:8px;border-bottom:1px solid var(--border-subtle)}.station-combobox-search input{min-height:32px;font-family:var(--font-mono);font-size:12px}.station-combobox-list{margin:0;padding:4px;overflow-y:auto;list-style:none}.station-combobox-option{display:grid;grid-template-columns:16px minmax(0,1fr);gap:7px;align-items:center;padding:6px 8px;border-radius:var(--r-sm);color:var(--text-soft);font-family:var(--font-mono);font-size:12px;cursor:pointer}.station-combobox-option.is-active{background:var(--bg-hover);color:var(--text)}.station-combobox-option[aria-selected=true]{color:var(--brand);font-weight:700}.station-combobox-check{display:grid;place-items:center;color:var(--brand)}.station-combobox-option-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-combobox-empty{padding:18px 10px;color:var(--text-muted);font-size:12px;text-align:center}.station-combobox-footer{padding:6px 10px;border-top:1px solid var(--border-subtle);background:var(--bg-soft);color:var(--text-faint);font-size:10.5px;font-variant-numeric:tabular-nums}.view-error{align-self:start;border-color:var(--bad-border)}.view-error-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:11px;align-items:start}.view-error-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:var(--r-md);background:var(--bad-bg);color:var(--bad-fg)}.view-error-head p{margin:4px 0 0;color:var(--text-muted);font-size:12.5px;line-height:1.45}.view-error-detail{color:var(--bad-fg);max-height:180px;overflow:auto}.cmp-chart-wrap{position:relative;display:grid;gap:6px;min-width:0}.cmp-chart{width:100%;height:300px;display:block;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-inset)}.cmp-chart-grid{stroke:color-mix(in srgb,var(--border) 78%,transparent);stroke-width:.35;vector-effect:non-scaling-stroke}.cmp-chart-band{fill:color-mix(in srgb,var(--text-faint) 20%,transparent);stroke:none}.cmp-chart-median{fill:none;stroke:var(--text-soft);stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.cmp-chart-line{fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.72;vector-effect:non-scaling-stroke;transition:opacity var(--speed) var(--ease),stroke-width var(--speed) var(--ease)}.cmp-chart-line.is-dimmed,.cmp-chart-dot.is-dimmed{opacity:.1}.cmp-chart-line.is-active{opacity:1;stroke-width:2.75}.cmp-chart-dot{opacity:.8}.cmp-chart-cursor{stroke:var(--text-muted);stroke-width:1;vector-effect:non-scaling-stroke;pointer-events:none}.cmp-chart-scale{position:absolute;top:4px;right:9px;height:300px;display:flex;flex-direction:column;justify-content:space-between;padding:6px 0 22px;color:var(--text-muted);font-size:10px;font-variant-numeric:tabular-nums;pointer-events:none}.cmp-chart-callouts{position:absolute;top:0;right:0;bottom:28px;left:0;pointer-events:none}.cmp-chart-callout{position:absolute;transform:translate(-100%,-50%);padding:1px 5px;border-radius:var(--r-xs);background:color-mix(in srgb,var(--bg-elev) 88%,transparent);box-shadow:var(--ring-hairline);font-size:10.5px;font-weight:700;white-space:nowrap;pointer-events:all}.cmp-chart-axis,.cmp-matrix-axis>span{display:flex;justify-content:space-between;color:var(--text-muted);font-size:10.5px;font-variant-numeric:tabular-nums}.cmp-legend{margin-top:8px}.cmp-legend-band{background:color-mix(in srgb,var(--text-faint) 30%,transparent)}.cmp-legend-median{height:3px!important;border-radius:2px;background:var(--text-soft)}.cmp-tooltip-row{display:flex;align-items:center;gap:5px}.cmp-tooltip-swatch{flex:none;width:8px;height:8px;border-radius:2px}.cmp-note{margin:0;font-size:11.5px;line-height:1.45}.cmp-refreshing{opacity:.55;transition:opacity var(--speed) var(--ease)}.cmp-matrix{position:relative;display:grid;gap:2px;margin-top:10px;max-height:520px;overflow-y:auto}.cmp-matrix-row{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:center;gap:10px;border-radius:var(--r-xs)}.cmp-matrix-row.is-active{background:var(--bg-hover)}.cmp-matrix-label{display:flex;align-items:center;gap:6px;min-width:0;padding-left:4px;font-size:11.5px}.cmp-matrix-label i{flex:none;width:9px;height:9px;border-radius:2px}.cmp-matrix-label strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.cmp-matrix-label small{margin-left:auto;padding-right:4px;color:var(--text-muted);font-variant-numeric:tabular-nums}.cmp-matrix-track{position:relative;display:block;height:16px;overflow:hidden;border:1px solid var(--border);border-radius:var(--r-xs);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--text-faint) 12%,var(--bg-inset)) 0,color-mix(in srgb,var(--text-faint) 12%,var(--bg-inset)) 4px,var(--bg-inset) 4px,var(--bg-inset) 8px)}.cmp-matrix-segment{position:absolute;top:0;height:100%;min-width:1px;cursor:crosshair}.cmp-matrix-axis{display:grid;grid-template-columns:210px minmax(0,1fr);gap:10px;padding-top:4px;position:sticky;bottom:0;background:var(--bg-elev)}.cmp-table{margin-top:12px;max-height:460px}.cmp-table table{width:100%}.cmp-table th{position:sticky;top:0;z-index:1;background:var(--bg-elev)}.cmp-table td{font-variant-numeric:tabular-nums}.cmp-table tr.cmp-active-row{background:var(--bg-hover)}.cmp-entity-cell{display:flex;align-items:center;gap:7px;min-width:0;text-align:left}.cmp-entity-cell i{flex:none;width:10px;height:10px;border-radius:2px}.cmp-entity-cell span{display:grid;min-width:0}.cmp-entity-cell small{color:var(--text-muted);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmp-picker-meta{margin-left:auto;padding-left:8px;color:var(--text-faint);font-size:10.5px;font-style:normal;white-space:nowrap}@media(max-width:900px){.cmp-matrix-row,.cmp-matrix-axis{grid-template-columns:130px minmax(0,1fr)}.cmp-chart,.cmp-chart-scale{height:230px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
