:root{color-scheme:dark;--bg:#0b1117;--panel:#111c25;--line:#26343f;--muted:#92a7b7;--text:#e5eef4;--cyan:#77dcea;--green:#7ae7ba;--amber:#f3c77b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px system-ui,-apple-system,sans-serif}.shell{max-width:1360px;margin:auto;padding:28px 36px}button,summary{cursor:pointer}button{font:inherit;border:1px solid #405362;color:var(--text);background:#15222c;border-radius:5px;padding:10px 16px}button:disabled{opacity:.4;cursor:default}button:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button.primary{background:var(--cyan);border-color:var(--cyan);color:#0c2028;font-weight:650}button:not(:disabled):hover{filter:brightness(1.15)}.masthead{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.brand{display:flex;gap:14px;align-items:center}.logo{display:grid;place-items:center;border:1px solid var(--cyan);height:44px;width:44px;font-size:25px;color:var(--cyan);font-weight:300}.brand h1{margin:0;font-size:19px;letter-spacing:2px}.brand h1 span{color:var(--muted);font-size:12px;letter-spacing:1px;font-weight:400}.brand p{margin:6px 0 0;font:10px ui-monospace,monospace;letter-spacing:2px;color:var(--muted)}.connection-actions{display:flex;align-items:center;gap:10px}.dummy-badge{color:var(--amber);background:#2c261c;border:1px solid #58482d;font:10px ui-monospace,monospace;letter-spacing:1px;padding:7px 9px;border-radius:3px;margin-right:8px}.connection-strip{display:flex;justify-content:space-between;gap:16px;border-block:1px solid var(--line);padding:13px 0;font:11px ui-monospace,monospace;color:var(--muted)}.connection-strip strong{color:var(--text);font-weight:400;margin-left:8px}.divider{margin:0 18px;color:#435464}.dot{display:inline-block;width:7px;height:7px;background:#6c7c87;border-radius:50%;margin-right:10px}.dot.live{background:var(--green);box-shadow:0 0 10px #7ae7ba66}.demo-note{font:10px ui-monospace,monospace;color:var(--amber);letter-spacing:.5px;padding:14px 0}.demo-note span{color:var(--muted);letter-spacing:0;margin-left:12px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;margin-top:10px}.tabs button{white-space:nowrap;border:0;border-radius:0;background:transparent;color:var(--muted);padding:17px 22px;border-bottom:2px solid transparent}.tabs button span{font-size:10px;margin-right:8px;opacity:.6}.tabs button[aria-selected=true]{color:var(--cyan);border-bottom-color:var(--cyan);background:#15222a}main{min-height:620px}.section-title{display:flex;justify-content:space-between;align-items:end;margin:30px 0 22px;gap:14px}.eyebrow{font:10px ui-monospace,monospace;letter-spacing:1.5px;color:var(--cyan);margin:0 0 9px}.section-title h2{font-weight:500;font-size:24px;margin:0}.caption{font:12px/1.7 ui-monospace,monospace;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.metric{padding:20px;background:#101b23;border:1px solid var(--line);border-top:2px solid #375363;border-radius:5px}.metric>span{font:10px ui-monospace,monospace;color:var(--muted);letter-spacing:1px}.metric strong{display:block;font:28px ui-monospace,monospace;font-weight:450;color:var(--cyan);margin:15px 0 12px}.metric small{font-size:11px;color:var(--muted)}.grid{display:grid;gap:18px;margin-bottom:18px}.grid.two{grid-template-columns:1fr 1fr}.panel{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:22px;margin-bottom:18px;min-width:0}.grid .panel{margin-bottom:0}.panel>header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.panel h2{font:12px ui-monospace,monospace;letter-spacing:1px;color:var(--cyan);margin:0}.panel header>span{font:9px ui-monospace,monospace;letter-spacing:1px;color:var(--muted)}.coordinates{display:grid;grid-template-columns:1fr 1.5fr;gap:16px;align-items:center;margin:8px 0 24px}.coordinates label{font:10px ui-monospace,monospace;letter-spacing:1px;color:var(--muted)}.coordinates>span{font:27px ui-monospace,monospace;text-align:right;letter-spacing:-1px}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #23313b}dl>div:last-child{border-bottom:0}dt{font-size:12px;color:var(--muted)}dd{margin:0;font:13px ui-monospace,monospace;text-align:right;overflow-wrap:anywhere}.large-value{font:32px ui-monospace,monospace;color:var(--green);margin:12px 0 8px}.mini-row{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--muted)}.mini-row strong{color:var(--cyan)}.spark{width:100%;height:64px;display:block;margin:16px 0 5px}.spark polyline{fill:none;stroke:var(--green);stroke-width:1.8;vector-effect:non-scaling-stroke}.gridline{fill:none;stroke:#263843;stroke-width:.5}.meter{height:5px;background:#263843;margin:16px 0;border-radius:4px;overflow:hidden}.meter i{display:block;background:var(--green);height:100%;width:0;transition:width .5s}.meter.amber i{background:var(--amber)}.good{color:var(--green)}.warn{color:var(--amber)}.sky{width:100%;max-height:290px}.sky>circle,.sky>path{fill:none;stroke:#3b505f;stroke-width:.7}.sky text{fill:#a9c0cf;font:10px ui-monospace,monospace}.centered{text-align:center}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font:12px ui-monospace,monospace}th{text-align:right;font-size:10px;font-weight:400;color:var(--muted);padding:10px 14px;background:#0f1820}td{padding:12px 14px;text-align:right;border-bottom:1px solid #253540}th:first-child,td:first-child{text-align:left}td:nth-child(3){color:var(--green)}tr:last-child td{border-bottom:0}.empty{text-align:center!important;padding:40px 12px!important;color:var(--muted)}.table-note{margin-bottom:0}.signal-display{display:flex;align-items:end;gap:24px;margin:20px 0 32px}.signal-display strong{font:36px ui-monospace,monospace;color:var(--green)}.signal-bars{display:flex;gap:5px;align-items:end;min-height:38px}.signal-bars i{display:block;background:#30404d;width:16px;border-radius:2px}.signal-bars i.lit{background:var(--green)}.notice,.warning-banner{border:1px solid #5b4930;background:#261f17;color:var(--amber);padding:16px;line-height:1.6;border-radius:4px;margin-bottom:18px;font-size:12px}.notice{background:#12212a;border-color:#2f495a;color:var(--muted)}.event{display:flex;gap:24px;font:12px/1.6 ui-monospace,monospace;padding:9px 0;border-bottom:1px solid var(--line)}.event time{color:var(--muted);white-space:nowrap}.event:last-child{border:0}pre{font:11px/1.8 ui-monospace,monospace;color:#b9d5e2;overflow:auto;max-height:480px;margin:0}footer{border-top:1px solid var(--line);margin-top:28px;padding:20px 0;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font:9px/1.8 ui-monospace,monospace;letter-spacing:.5px}footer details{max-width:500px;font-size:11px;letter-spacing:0}footer summary{color:var(--cyan)}code{color:var(--cyan)}[hidden]{display:none!important}.stale .coordinates>span,.stale .metric strong,.stale .large-value{color:#8fa4b3}.stale .panel dd,.stale tbody{opacity:.65}@media(max-width:900px){.shell{padding:20px}.masthead{align-items:start;flex-direction:column}.connection-actions{width:100%}.connection-strip{flex-direction:column}.metrics{grid-template-columns:1fr 1fr}.grid.two{grid-template-columns:1fr}.coordinates>span{font-size:26px}.section-title{align-items:start;flex-direction:column}footer{flex-wrap:wrap}.tabs button{padding:14px 16px}}@media(max-width:480px){.shell{padding:16px 12px}.brand h1 span{display:block;margin-top:4px}.dummy-badge{margin-right:0;font-size:8px}.connection-actions{gap:7px}button{padding:10px;font-size:12px}.metric{padding:14px}.metric strong{font-size:22px}.panel{padding:16px}.coordinates>span{font-size:22px}.demo-note{line-height:1.8}.demo-note span{display:block;margin-left:0}.event{gap:12px}.metrics{gap:10px}dd{font-size:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Terminal-console presentation. Kept as overrides so the dashboard markup remains semantic. */
:root{--term-bg:#070b08;--term-ink:#a7ffae;--term-dim:#629d6a;--term-warn:#ffe184;--term-line:#3c7344;--term-hot:#e7ffe9}
body{background:var(--term-bg);color:var(--term-ink);font:15px/1.42 "SFMono-Regular",Consolas,"Liberation Mono",monospace;text-shadow:0 0 5px #7eff8a20}
body::before{content:"";pointer-events:none;position:fixed;inset:0;background:repeating-linear-gradient(0deg,#00000015 0 1px,transparent 1px 4px);z-index:10;mix-blend-mode:screen}.shell{max-width:1500px;padding:18px 24px}.masthead{border:1px solid var(--term-line);padding:13px 15px;margin-bottom:0;background:#0b120c;box-shadow:inset 0 0 30px #48ff5810}.masthead::before{content:"[ VECTOR_BLE_TERMINAL // SESSION: LOCAL ]";position:absolute;margin-top:-22px;color:var(--term-dim);font-size:10px;background:var(--term-bg);padding:0 6px}.brand{gap:10px}.logo{border:0;width:auto;height:auto;color:var(--term-ink);font:15px/1.2 inherit}.logo::before{content:"["}.logo::after{content:"]"}.brand h1,.brand h1 span{font:inherit;letter-spacing:0;color:var(--term-hot)}.brand p{font:11px/1.5 inherit;color:var(--term-dim);letter-spacing:0}.connection-actions{font-size:12px}.dummy-badge{border:0;background:transparent;color:var(--term-warn);padding:0;margin-right:9px}.dummy-badge::before{content:"["}.dummy-badge::after{content:"]"}button{font:inherit;border:1px solid var(--term-line);border-radius:0;background:#0a120c;color:var(--term-ink);padding:7px 10px;box-shadow:none}button.primary{background:#142b18;border-color:var(--term-ink);color:var(--term-hot);font-weight:400}button:not(:disabled):hover,button:not(:disabled):focus-visible{background:var(--term-ink);color:#071007;filter:none;outline:none}button:disabled{color:#466c4a;opacity:1}.connection-strip{border:1px solid var(--term-line);border-top:0;background:#091009;padding:9px 15px;color:var(--term-dim);font:12px/1.4 inherit}.connection-strip strong{color:var(--term-ink);font:inherit}.dot{border-radius:0;width:8px;height:8px;background:#486c4b}.dot.live{background:var(--term-ink);box-shadow:0 0 8px var(--term-ink)}.demo-note{border-inline:1px solid var(--term-line);padding:9px 15px;color:var(--term-warn);font:12px/1.5 inherit}.demo-note span{color:var(--term-dim)}.tabs{border:1px solid var(--term-line);background:#091009;margin:0;gap:0}.tabs button{border:0;border-right:1px solid #315a36;padding:10px 13px;color:var(--term-dim)}.tabs button[aria-selected=true]{background:#152b18;color:var(--term-hot);border-bottom:0}.tabs button span{font:inherit;opacity:1}.section-title{margin:24px 0 14px;border-bottom:1px dashed var(--term-line);padding-bottom:10px}.eyebrow,.section-title h2,.caption{font:inherit;color:var(--term-dim);letter-spacing:0}.section-title h2::before{content:"$ view ";color:var(--term-ink)}.metrics{gap:8px}.metric,.panel{border:1px solid var(--term-line);border-radius:0;background:#0a110b;box-shadow:none;padding:14px}.metric{border-top:1px solid var(--term-line)}.metric>span,.metric small,.panel header>span,dt{font:inherit;color:var(--term-dim)}.metric>span::before{content:"[ "}.metric>span::after{content:" ]"}.metric strong{font:22px/1.2 inherit;color:var(--term-ink);margin:12px 0}.grid{gap:8px;margin-bottom:8px}.panel{margin-bottom:8px}.panel>header{border-bottom:1px dashed var(--term-line);padding-bottom:8px;margin-bottom:11px}.panel h2{font:inherit;color:var(--term-hot);letter-spacing:0}.panel h2::before{content:"+-- "}.panel h2::after{content:" --+"}.coordinates{margin:8px 0 14px;gap:8px}.coordinates label{font:inherit;color:var(--term-dim)}.coordinates label::before{content:"| "}.coordinates>span{font:inherit;color:var(--term-hot);letter-spacing:0}dl>div{border-bottom:1px dotted #2b4d2f;padding:6px 0}dd,table,.event,pre{font:inherit;color:var(--term-ink)}.large-value{font:26px/1.2 inherit;color:var(--term-ink)}.spark polyline{stroke:var(--term-ink)}.gridline,.sky>circle,.sky>path{stroke:#315a36}.sky text{fill:var(--term-dim);font:11px inherit}.meter{height:4px;border-radius:0;background:#1c3520;margin:10px 0}.meter i{background:var(--term-ink);transition:none}.meter.amber i{background:var(--term-warn)}.notice,.warning-banner{border:1px dashed var(--term-line);border-radius:0;background:#111408;color:var(--term-warn);font:inherit;padding:10px}.notice{background:#091009;color:var(--term-dim)}th{background:#101c12;color:var(--term-dim);font:inherit;border-bottom:1px solid var(--term-line)}td{border-bottom:1px dotted #2b4d2f}td:nth-child(3){color:var(--term-ink)}.signal-bars i{border-radius:0;background:#27442a}.signal-bars i.lit{background:var(--term-ink)}.event{border-bottom:1px dotted #2b4d2f;padding:5px 0}.event time{color:var(--term-dim)}footer{border-top:1px dashed var(--term-line);font:11px/1.5 inherit;color:var(--term-dim);margin-top:16px;padding:12px 0}footer summary,code{color:var(--term-ink)}.stale .coordinates>span,.stale .metric strong,.stale .large-value{color:#729777}@media(max-width:700px){.shell{padding:12px}.masthead{gap:14px}.connection-actions{flex-wrap:wrap}.tabs button{padding:9px}.metrics{grid-template-columns:1fr 1fr}}
