:root{--bg:#061117;--bg-deep:#040d12;--panel:#0c1b22;--panel-bright:#10252d;--panel-soft:#0a171d;--line:#a4cdd521;--line-strong:#a4cdd538;--text:#f2f7f7;--soft-text:#b4c5c9;--muted:#748b93;--dim:#506970;--mint:#62e6c5;--lime:#c8f75c;--amber:#ffb36d;--danger:#ff7f75}*{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--bg:#f3f7f6;--bg-deep:#e7efed;--panel:#fff;--panel-bright:#f8fbfa;--panel-soft:#edf4f2;--line:#20464e24;--line-strong:#20464e40;--text:#142a30;--soft-text:#365159;--muted:#5e767d;--dim:#73888e;--mint:#087f70;--lime:#527c11;--amber:#a55600;--danger:#ba2b21;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--text);font-family:var(--font-geist-sans), Arial, sans-serif;margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.5}.ng2-app{background:radial-gradient(circle at 68% -12%, #2a857f2e, transparent 31%), linear-gradient(180deg, #0c1f2659, transparent 23%), var(--bg);min-height:100vh;overflow-x:hidden}.ng2-topbar{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#051016db;grid-template-columns:1fr auto 1fr;align-items:center;height:76px;padding:0 30px;display:grid;position:sticky;top:0}.ng2-brand{align-items:center;gap:11px;min-width:0;display:flex}.ng2-brand-mark{width:40px;height:40px;color:var(--mint);background:#62e6c512;border:1px solid #62e6c557;border-radius:12px;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 20px #62e6c50a}.ng2-brand>div:nth-child(2){flex-direction:column;display:flex}.ng2-brand span{color:#78929a;letter-spacing:.2em;font-size:8px;font-weight:850;line-height:1.2}.ng2-brand strong{letter-spacing:-.025em;white-space:nowrap;font-size:16px;line-height:1.25}.ng2-brand>i{border-left:1px solid var(--line);color:#547078;letter-spacing:.15em;margin-left:6px;padding:5px 0 5px 12px;font-size:7px;font-style:normal;font-weight:800}.view-tabs{align-items:center;gap:4px;height:100%;display:flex}.view-tabs button{color:#67828a;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:7px;height:38px;padding:0 13px;font-size:10px;font-weight:700;transition:color .18s,background .18s;display:flex}.view-tabs button:hover{color:#a9bdc1;background:#ffffff06}.view-tabs button.active{color:var(--text);background:#70a3a91a}.view-tabs button span{color:#749097;text-align:center;background:#ffffff0e;border-radius:20px;min-width:17px;padding:2px 5px;font-size:7px}.ng2-top-actions{justify-self:end;align-items:center;gap:8px;display:flex}.square-action{border:1px solid var(--line);color:#829aa1;cursor:pointer;background:#0e232a73;border-radius:10px;place-items:center;width:38px;height:38px;transition:border-color .18s,color .18s,transform .18s;display:grid}.square-action:hover{color:var(--text);border-color:var(--line-strong);transform:translateY(-1px)}.primary-connect{color:#071316;background:var(--lime);cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:130px;height:40px;padding:0 16px;font-size:10px;font-weight:850;transition:transform .18s,box-shadow .18s;display:flex;box-shadow:0 10px 36px #c8f75c1a}.primary-connect:hover{transform:translateY(-1px);box-shadow:0 12px 42px #c8f75c2b}.primary-connect.connected{color:#ffb7af;box-shadow:none;background:#ff7f751a;border:1px solid #ff7f7533}.primary-connect.connecting{color:#b9c8cb;background:#ffffff14}.ng2-workspace{grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 76px);display:grid}.ng2-sidebar{border-right:1px solid var(--line);background:#030c1166;padding:26px 18px 30px}.sidebar-label{color:#557079;letter-spacing:.18em;justify-content:space-between;align-items:center;padding:0 6px 12px;font-size:8px;font-weight:850;display:flex}.sensor-card{border:1px solid var(--line);background:linear-gradient(145deg,#143039b8,#0819208c);border-radius:14px;align-items:center;gap:11px;padding:14px 13px 37px;display:flex;position:relative;overflow:hidden}.sensor-card:after{content:"";background:#62e6c50e;border-radius:50%;width:85px;height:85px;position:absolute;top:-38px;right:-20px}.sensor-card.connected{border-color:#62e6c542}.sensor-icon{color:#8db2bb;background:#94b8c112;border:1px solid #94b8c133;border-radius:50%;flex:none;place-items:center;width:43px;height:43px;display:grid}.sensor-card.connected .sensor-icon{color:var(--mint);background:#62e6c514;border-color:#62e6c542}.sensor-name{min-width:0}.sensor-name strong{color:#d5e0e2;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.sensor-name span{color:#647e86;margin-top:4px;font-size:9px;display:block}.device-state{color:var(--amber);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:6px;font-size:7px;font-weight:850;display:flex;position:absolute;bottom:11px;left:13px}.device-state i{background:currentColor;border-radius:50%;width:5px;height:5px}.device-state.connected{color:var(--mint)}.device-state.connecting{color:var(--lime)}.serial-config{color:#789198;cursor:pointer;text-align:left;background:#0c1c227a;border:1px solid #a4cdd517;border-radius:11px;justify-content:space-between;align-items:center;width:100%;margin-top:10px;padding:12px;display:flex}.serial-config>span:first-child{align-items:center;gap:9px;display:flex}.serial-config>span:first-child>span{flex-direction:column;gap:3px;display:flex}.serial-config small{color:#526c74;letter-spacing:.12em;font-size:7px}.serial-config strong{color:#9aafb4;font-size:9px}.specs-heading{margin-top:27px}.device-specs{margin:0 6px}.device-specs div{border-bottom:1px solid #a4cdd512;padding:10px 0}.device-specs dt{color:#536e76;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:7px;font-weight:750}.device-specs dd{color:#9eb0b5;margin:0;font-size:9px;font-weight:600}.browser-check{color:var(--mint);background:#62e6c50d;border-radius:10px;gap:8px;margin:23px 2px 0;padding:11px;display:flex}.browser-check.warning{color:var(--amber);background:#ffb36d0f}.browser-check>svg{flex:none;margin-top:1px}.browser-check p{margin:0}.browser-check strong{color:currentColor;font-size:8px;display:block}.browser-check span{color:#5e7880;margin-top:3px;font-size:8px;line-height:1.4;display:block}.manufacturer-link{color:#59747c;align-items:center;gap:7px;margin:16px 4px 0;font-size:8px;text-decoration:none;transition:color .18s;display:flex}.manufacturer-link:hover{color:var(--mint)}.ng2-content{width:100%;min-width:0;max-width:1480px;margin:0 auto;padding:34px 38px 60px}.content-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.mint-label{color:var(--mint);letter-spacing:.2em;margin:0 0 8px;font-size:8px;font-weight:850}.content-heading h1{letter-spacing:-.052em;margin:0 0 7px;font-size:clamp(27px,3.1vw,42px);font-weight:590;line-height:1.02}.content-heading>div:first-child>p:last-child{color:#718990;margin:0;font-size:10px}.heading-actions{align-items:center;gap:7px;display:flex}.secondary-action{border:1px solid var(--line);color:#90a5aa;cursor:pointer;background:#10262e94;border-radius:9px;justify-content:center;align-items:center;gap:7px;height:37px;padding:0 12px;font-size:9px;font-weight:750;transition:color .18s,border-color .18s,transform .18s;display:inline-flex}.secondary-action:hover:not(:disabled){color:var(--text);border-color:var(--line-strong);transform:translateY(-1px)}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.demo-banner,.pause-banner{background:#c8f75c0b;border:1px solid #c8f75c1f;border-radius:10px;align-items:center;gap:11px;min-height:42px;margin-bottom:14px;padding:9px 12px;display:flex}.demo-banner>span{color:var(--lime);letter-spacing:.12em;white-space:nowrap;align-items:center;gap:6px;font-size:7px;font-weight:850;display:flex}.demo-banner p{color:#718890;flex:1;margin:0;font-size:8px}.demo-banner button{color:#9db861;cursor:pointer;background:0 0;border:0;font-size:8px;font-weight:750}.pause-banner{color:var(--amber);background:#ffb36d0d;border-color:#ffb36d24;font-size:8px}.main-metrics-grid{grid-template-columns:minmax(0,1.7fr) minmax(220px,.62fr);gap:14px;display:grid}.latest-reading-card,.session-card,.trend-panel,.history-section,.terminal-panel,.protocol-card{border:1px solid var(--line);background:linear-gradient(145deg,#10272feb,#08181fe0);border-radius:16px;box-shadow:0 24px 70px #0000001f}.latest-reading-card{min-height:335px;padding:20px 22px 18px;position:relative;overflow:hidden}.latest-reading-card:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle,#62e6c51c,#0000 65%);border-radius:50%;width:315px;height:315px;position:absolute;top:-150px;right:-95px}.latest-reading-card>*{z-index:1;position:relative}.panel-kicker{color:#6b858c;letter-spacing:.15em;margin:0;font-size:8px;font-weight:850}.panel-kicker>span{align-items:center;gap:7px;display:flex}.latest-reading-card>.panel-kicker{justify-content:space-between;align-items:center;display:flex}.range-state{align-items:center;gap:6px;font-size:7px;display:flex}.range-state i,.table-range i{background:currentColor;border-radius:50%;width:5px;height:5px;box-shadow:0 0 10px}.range-state.nominal,.table-range.nominal{color:var(--mint)}.range-state.low,.range-state.high,.table-range.low,.table-range.high{color:var(--amber)}.range-state.empty{color:#617980}.big-reading{align-items:baseline;gap:12px;margin:28px 0 25px;display:flex}.big-reading strong{color:var(--lime);letter-spacing:-.085em;font-variant-numeric:tabular-nums;text-shadow:0 0 35px #c8f75c12;font-size:clamp(60px,7vw,88px);font-weight:520;line-height:.8}.big-reading span{color:#a9bdc1;font-size:15px;font-weight:650}.nominal-scale>div{background:#ffffff0f;border-radius:8px;height:4px;overflow:hidden}.nominal-scale>div span{border-radius:inherit;background:linear-gradient(90deg, var(--mint), var(--lime));min-width:2px;height:100%;display:block;box-shadow:0 0 12px #c8f75c59}.nominal-scale p{color:#526c74;letter-spacing:.08em;justify-content:space-between;margin:7px 0 0;font-size:7px;font-weight:750;display:flex}.nominal-scale em{font-style:normal}.reading-details{border-top:1px solid var(--line);grid-template-columns:1.25fr .55fr .7fr 1fr 1.5fr;gap:10px;margin-top:21px;padding-top:16px;display:grid}.reading-details small{color:#526c74;letter-spacing:.13em;margin-bottom:5px;font-size:6px;font-weight:800;display:block}.reading-details strong{color:#bbc9cc;text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.received-detail strong{color:#839ba2;font-family:var(--font-geist-mono), monospace;font-weight:500}.empty-reading{color:#4e6971;flex-direction:column;justify-content:center;align-items:center;min-height:250px;display:flex}.empty-reading strong{color:#83989e;margin:11px 0 4px;font-size:12px}.empty-reading span{font-size:9px}.session-card{flex-direction:column;min-height:335px;padding:20px;display:flex}.session-ring{--ring-progress:0%;background:conic-gradient(var(--mint) var(--ring-progress), #ffffff0f 0);border-radius:50%;width:132px;height:132px;margin:23px auto 19px;padding:7px;box-shadow:0 0 30px #62e6c50d}.session-ring>div{background:#0d2027;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.session-ring strong{letter-spacing:-.06em;font-size:38px;font-weight:550;line-height:1}.session-ring span{color:#607a81;letter-spacing:.14em;margin-top:5px;font-size:6px;font-weight:850}.session-summary{grid-template-columns:1fr 1fr;gap:8px;display:grid}.session-summary div{background:#ffffff06;border-radius:9px;padding:9px 10px}.session-summary span{color:#5b747c;margin-bottom:3px;font-size:7px;display:block}.session-summary strong{font-variant-numeric:tabular-nums;font-size:12px}.session-summary strong.warn{color:var(--amber)}.storage-meter{margin-top:auto;padding-top:14px}.storage-meter>div{color:#5e7880;align-items:center;gap:6px;margin-bottom:7px;font-size:7px;display:flex}.storage-meter>div strong{color:#81969c;margin-left:auto;font-weight:650}.storage-meter>span{background:#ffffff0f;border-radius:5px;height:3px;display:block;overflow:hidden}.storage-meter>span i{background:var(--mint);min-width:1px;height:100%;display:block}.trend-panel{margin-top:14px;padding:19px 21px 13px}.panel-heading-row{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.panel-heading-row h2{letter-spacing:-.02em;margin:6px 0 0;font-size:13px;font-weight:620}.trend-stats{gap:6px;display:flex}.trend-stats span{color:#536d74;letter-spacing:.1em;background:#ffffff06;border-radius:8px;flex-direction:column;gap:2px;min-width:64px;padding:7px 8px;font-size:6px;display:flex}.trend-stats strong{color:#a9b9bd;letter-spacing:0;font-size:9px}.trend-canvas{width:100%;height:155px;margin-top:10px;display:block}.chart-axis{color:#4e676e;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;font-size:6px;display:flex}.history-section{margin-top:14px;overflow:hidden}.history-heading{padding:19px 21px 14px}.history-actions{color:#58727a;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;font-size:7px;font-weight:750;display:flex}.history-actions button{border:1px solid var(--line);color:#718990;cursor:pointer;background:0 0;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.history-actions button:hover:not(:disabled){color:var(--danger);border-color:#ff7f7533}.readings-table-wrap{overflow-x:auto}.readings-table{border-collapse:collapse;width:100%;min-width:830px}.readings-table th{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#526c74;letter-spacing:.13em;text-align:left;text-transform:uppercase;background:#00000014;padding:10px 18px;font-size:6px;font-weight:850}.readings-table td{color:#8ea4aa;white-space:nowrap;border-bottom:1px solid #a4cdd511;padding:13px 18px;font-size:9px}.readings-table tbody tr{transition:background .15s}.readings-table tbody tr:hover{background:#ffffff05}.readings-table tbody tr:last-child td{border-bottom:0}.readings-table td>strong{color:#c3d0d3;font-weight:650}.sequence-cell{font-family:var(--font-geist-mono), monospace;color:#58737a!important}.table-value{align-items:baseline;gap:5px;display:flex}.table-value strong{font-variant-numeric:tabular-nums;font-size:11px;color:var(--lime)!important}.table-value span{color:#5c747b;font-size:7px}.time-cell{font-family:var(--font-geist-mono), monospace;color:#657f86!important}.source-badge{letter-spacing:.09em;border-radius:20px;padding:3px 6px;font-size:6px;font-weight:850}.source-badge.demo{color:#9aae67;background:#c8f75c12}.source-badge.device{color:var(--mint);background:#62e6c514}.table-range{align-items:center;gap:6px;font-size:7px;font-weight:650;display:inline-flex}.empty-table{color:#526a72;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:130px;font-size:9px;display:flex}.terminal-title{margin-bottom:22px}.terminal-layout{grid-template-columns:minmax(0,1.6fr) minmax(285px,.65fr);gap:14px;display:grid}.terminal-panel{min-width:0;overflow:hidden}.terminal-toolbar{border-bottom:1px solid var(--line);background:#00000021;justify-content:space-between;align-items:center;height:48px;padding:0 15px;display:flex}.terminal-toolbar>div{color:#647e85;align-items:center;gap:7px;font-size:8px;display:flex}.terminal-toolbar i{background:#5b7077;border-radius:50%;width:6px;height:6px}.terminal-toolbar i.online{background:var(--mint);box-shadow:0 0 10px var(--mint)}.terminal-toolbar button{color:var(--mint);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:8px;font-weight:750;display:flex}.terminal-output{scrollbar-color:#26434b transparent;background:#050e13;height:min(660px,100vh - 230px);min-height:420px;padding:12px 0;overflow:auto}.terminal-line{color:#769098;font-family:var(--font-geist-mono), Consolas, monospace;grid-template-columns:59px 28px minmax(0,1fr);gap:8px;padding:3px 14px;font-size:8px;line-height:1.55;display:grid}.terminal-line time{color:#3e5b64}.terminal-line>span{color:var(--mint);font-weight:750}.terminal-line.system>span{color:#7f9aa1}.terminal-line.error>span,.terminal-line.error pre{color:var(--danger)}.terminal-line pre{color:#8fa8ae;min-width:0;font:inherit;white-space:pre-wrap;word-break:break-all;margin:0}.terminal-empty{color:#4d656c;text-align:center;padding:40px;font-size:9px}.protocol-card{padding:19px}.protocol-card h2{margin:7px 0 14px;font-size:14px}.protocol-card>code{color:#9cb7b8;font-family:var(--font-geist-mono), monospace;word-break:break-all;background:#62e6c509;border:1px solid #62e6c51a;border-radius:8px;padding:11px;font-size:7px;line-height:1.6;display:block}.protocol-card ol{margin:15px 0;padding:0;list-style:none}.protocol-card li{border-bottom:1px solid #a4cdd511;gap:9px;padding:8px 0;display:flex}.protocol-card li>span{width:21px;height:21px;color:var(--mint);background:#62e6c50f;border-radius:7px;flex:none;place-items:center;font-size:6px;font-weight:850;display:grid}.protocol-card li p,.terminator-note p{margin:0}.protocol-card li strong,.terminator-note strong{color:#a6b8bc;font-size:8px;display:block}.protocol-card li small,.terminator-note small{color:#59737a;margin-top:2px;font-size:7px;line-height:1.4;display:block}.terminator-note{background:#c8f75c0b;border-radius:9px;gap:10px;padding:10px;display:flex}.terminator-note>span{color:var(--lime);font-family:var(--font-geist-mono), monospace;font-size:13px;font-weight:750}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#01070ab8;place-items:center;padding:20px;animation:.16s fade-in;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.modal-card{border:1px solid var(--line-strong);background:#0c1b22;border-radius:17px;width:min(490px,100%);padding:22px;animation:.2s rise-in;box-shadow:0 30px 100px #0000007a}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)scale(.99)}}.modal-heading{grid-template-columns:41px 1fr 32px;align-items:center;gap:10px;display:grid}.modal-icon{width:41px;height:41px;color:var(--mint);background:#62e6c50f;border:1px solid #62e6c533;border-radius:11px;place-items:center;display:grid}.modal-heading p{color:#5f7981;letter-spacing:.15em;margin:0 0 3px;font-size:7px;font-weight:850}.modal-heading h2{margin:0;font-size:15px}.modal-heading>button{color:#668088;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.modal-heading>button:hover{color:var(--text);background:#ffffff0a}.modal-intro{color:#6f878e;margin:17px 0;font-size:9px;line-height:1.55}.settings-grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.settings-grid label{flex-direction:column;gap:6px;display:flex}.settings-grid label>span{color:#6b838a;font-size:8px;font-weight:650}.settings-grid select{border:1px solid var(--line);color:#b8c6c9;background:#0a171d;border-radius:9px;width:100%;height:39px;padding:0 11px;font-size:9px}.wide-setting{grid-column:1/-1}.config-summary{color:var(--mint);background:#62e6c50b;border-radius:9px;align-items:flex-start;gap:8px;margin-top:14px;padding:11px;display:flex}.config-summary p{margin:0}.config-summary strong{font-size:8px;display:block}.config-summary span{color:#607a81;margin-top:3px;font-size:8px;display:block}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:20px;padding-top:16px;display:flex}.primary-modal{color:#071315;background:var(--lime);cursor:pointer;border:0;border-radius:9px;height:37px;padding:0 15px;font-size:9px;font-weight:850}.help-steps{margin:20px 0 5px;padding:0;list-style:none}.help-steps li{gap:10px;padding:9px 0;display:flex}.help-steps li>span{width:25px;height:25px;color:var(--mint);border:1px solid #62e6c529;border-radius:50%;flex:none;place-items:center;font-size:8px;font-weight:850;display:grid}.help-steps p{margin:0}.help-steps strong{color:#b4c3c6;font-size:9px;display:block}.help-steps small{color:#647d84;margin-top:3px;font-size:8px;line-height:1.45;display:block}.help-warning{color:var(--amber);background:#ffb36d0f;border-radius:9px;align-items:flex-start;gap:9px;margin-top:12px;padding:11px;display:flex}.help-warning p{margin:0}.help-warning strong{font-size:8px;display:block}.help-warning span{color:#7f7468;margin-top:3px;font-size:8px;display:block}.toast{z-index:150;border:1px solid var(--line-strong);background:#11242b;border-radius:12px;grid-template-columns:27px 1fr 28px;align-items:center;gap:8px;width:min(370px,100vw - 44px);min-height:50px;padding:10px 10px 10px 12px;animation:.25s toast-in;display:grid;position:fixed;bottom:22px;right:22px;box-shadow:0 20px 60px #00000059}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.toast>span{width:27px;height:27px;color:var(--mint);background:#62e6c512;border-radius:8px;place-items:center;display:grid}.toast.error>span{color:var(--danger);background:#ff7f7512}.toast.info>span{color:var(--amber);background:#ffb36d12}.toast p{color:#a9b9bd;margin:0;font-size:8px;line-height:1.45}.toast button{color:#617a81;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}@media (width<=1020px){.ng2-topbar{grid-template-columns:1fr auto}.view-tabs{display:none}.ng2-workspace{grid-template-columns:220px minmax(0,1fr)}.ng2-content{padding:30px 25px 50px}.main-metrics-grid{grid-template-columns:minmax(0,1fr) 215px}.reading-details{grid-template-columns:1.2fr .6fr .8fr 1fr}.received-detail{display:none}.terminal-layout{grid-template-columns:1fr}.protocol-card{order:-1}.protocol-card ol{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}}@media (width<=780px){.ng2-topbar{height:68px;padding:0 16px}.ng2-brand>i,.square-action{display:none}.ng2-workspace{min-height:calc(100vh - 68px);display:block}.ng2-sidebar{display:none}.ng2-content{padding:25px 16px 42px}.content-heading{align-items:flex-start}.content-heading h1{font-size:30px}.main-metrics-grid{grid-template-columns:1fr}.session-card{min-height:260px}.session-ring{width:112px;height:112px;margin:16px auto}.session-summary{margin-top:auto}.trend-stats span:nth-child(3){display:none}}@media (width<=540px){.ng2-brand-mark{width:36px;height:36px}.ng2-brand strong{font-size:14px}.primary-connect{min-width:112px;height:38px;padding:0 10px;font-size:9px}.content-heading{display:block}.heading-actions{margin-top:16px}.heading-actions .secondary-action{flex:1}.mobile-hide{display:none}.demo-banner{flex-wrap:wrap;align-items:flex-start}.demo-banner p{flex-basis:calc(100% - 130px);line-height:1.45}.demo-banner button{margin-left:auto}.latest-reading-card{min-height:320px;padding:18px 16px}.big-reading{margin:31px 0 27px}.big-reading strong{font-size:61px}.big-reading span{font-size:12px}.reading-details{grid-template-columns:1.3fr .6fr .75fr}.reading-details>div:nth-child(4),.received-detail{display:none}.panel-heading-row{align-items:flex-start}.trend-stats span{min-width:53px}.trend-canvas{height:125px}.history-heading{align-items:flex-end}.terminal-title .heading-actions{grid-template-columns:1fr 1fr;display:grid}.protocol-card ol{grid-template-columns:1fr}.terminal-output{height:58vh;min-height:380px}.terminal-line{grid-template-columns:51px 24px minmax(0,1fr);gap:5px;padding:3px 10px}.settings-grid{grid-template-columns:1fr}.wide-setting{grid-column:auto}.modal-card{max-height:calc(100vh - 28px);padding:18px;overflow-y:auto}.toast{width:calc(100vw - 28px);bottom:14px;right:14px}}html[data-theme=light] .ng2-app{background:radial-gradient(circle at 68% -12%, #18978421, transparent 33%), linear-gradient(180deg, #d5e8e399, transparent 26%), var(--bg)}html[data-theme=light] .ng2-topbar{background:#f8fbfae6;box-shadow:0 8px 30px #23474c0f}html[data-theme=light] .ng2-sidebar{background:#e6efed9e}html[data-theme=light] .ng2-brand span,html[data-theme=light] .ng2-brand>i,html[data-theme=light] .view-tabs button,html[data-theme=light] .sidebar-label,html[data-theme=light] .serial-config small,html[data-theme=light] .device-specs dt,html[data-theme=light] .content-heading>div:first-child>p:last-child,html[data-theme=light] .panel-kicker,html[data-theme=light] .chart-axis,html[data-theme=light] .history-actions{color:#557078}html[data-theme=light] .view-tabs button:hover,html[data-theme=light] .sensor-name strong,html[data-theme=light] .serial-config strong,html[data-theme=light] .device-specs dd,html[data-theme=light] .secondary-action,html[data-theme=light] .reading-details strong,html[data-theme=light] .trend-stats strong,html[data-theme=light] .readings-table td,html[data-theme=light] .readings-table td>strong,html[data-theme=light] .protocol-card li strong,html[data-theme=light] .terminator-note strong,html[data-theme=light] .modal-intro,html[data-theme=light] .settings-grid label>span,html[data-theme=light] .help-steps strong,html[data-theme=light] .toast p{color:#29464e}html[data-theme=light] .view-tabs button.active{color:#10282e;background:#087f7017}html[data-theme=light] .view-tabs button span,html[data-theme=light] .trend-stats span,html[data-theme=light] .session-summary div{color:#557078;background:#1749500e}html[data-theme=light] .square-action,html[data-theme=light] .secondary-action,html[data-theme=light] .serial-config{color:#35575f;background:#ffffffb8}html[data-theme=light] .theme-toggle{color:#8a5a00;background:#fff7df;border-color:#ae760033}html[data-theme=light] .sensor-card{background:linear-gradient(145deg,#fffffff2,#e6f0ede0);box-shadow:0 12px 32px #254f520f}html[data-theme=light] .sensor-icon{color:#26766f;background:#087f7012}html[data-theme=light] .sensor-name span,html[data-theme=light] .browser-check span,html[data-theme=light] .manufacturer-link,html[data-theme=light] .demo-banner p,html[data-theme=light] .storage-meter>div,html[data-theme=light] .session-summary span,html[data-theme=light] .protocol-card li small,html[data-theme=light] .terminator-note small,html[data-theme=light] .help-steps small,html[data-theme=light] .config-summary span{color:#617a81}html[data-theme=light] .browser-check{background:#087f7013}html[data-theme=light] .demo-banner{background:#527c1111;border-color:#527c112e}html[data-theme=light] .latest-reading-card,html[data-theme=light] .session-card,html[data-theme=light] .trend-panel,html[data-theme=light] .history-section,html[data-theme=light] .terminal-panel,html[data-theme=light] .protocol-card{background:linear-gradient(145deg,#fffffffa,#f2f7f6f5);box-shadow:0 18px 55px #254a4e14}html[data-theme=light] .latest-reading-card:after{background:radial-gradient(circle,#087f701f,#0000 65%)}html[data-theme=light] .big-reading strong{text-shadow:none}html[data-theme=light] .big-reading span{color:#425e65}html[data-theme=light] .nominal-scale>div,html[data-theme=light] .storage-meter>span{background:#234f561a}html[data-theme=light] .nominal-scale p,html[data-theme=light] .reading-details small,html[data-theme=light] .range-state.empty{color:#617b82}html[data-theme=light] .session-ring{background:conic-gradient(var(--mint) var(--ring-progress), #234f561a 0)}html[data-theme=light] .session-ring>div{background:#fff}html[data-theme=light] .readings-table th{color:#526e75;background:#20464e0e}html[data-theme=light] .readings-table td{border-bottom-color:#20464e17}html[data-theme=light] .readings-table tbody tr:hover{background:#087f7009}html[data-theme=light] .terminal-toolbar{background:#20464e0b}html[data-theme=light] .terminal-output{scrollbar-color:#b5c9c5 transparent;background:#f7faf9}html[data-theme=light] .terminal-line{color:#42636b}html[data-theme=light] .terminal-line time{color:#70878d}html[data-theme=light] .terminal-line pre{color:#355860}html[data-theme=light] .protocol-card>code{color:#285a57;background:#087f700e}html[data-theme=light] .protocol-card li{border-bottom-color:#20464e17}html[data-theme=light] .terminator-note{background:#527c1113}html[data-theme=light] .modal-backdrop{background:#192c307a}html[data-theme=light] .modal-card,html[data-theme=light] .toast{background:#fff;box-shadow:0 30px 90px #23404538}html[data-theme=light] .settings-grid select{color:#243f46;background:#f8fbfa}html[data-theme=light] .modal-heading p{color:#5d747b}body{font-size:14px}.ng2-brand span,.ng2-brand>i,.sidebar-label,.serial-config small,.device-specs dt,.device-state,.mint-label,.panel-kicker,.range-state,.nominal-scale p,.reading-details small,.session-ring span,.trend-stats span,.chart-axis,.history-actions,.readings-table th,.source-badge,.table-range{font-size:10px}.view-tabs button,.primary-connect,.content-heading>div:first-child>p:last-child,.secondary-action,.demo-banner>span,.demo-banner p,.demo-banner button,.pause-banner,.sensor-name span,.serial-config strong,.device-specs dd,.browser-check strong,.browser-check span,.manufacturer-link,.reading-details strong,.empty-reading span,.session-summary span,.storage-meter>div,.trend-stats strong,.readings-table td,.table-value span,.terminal-toolbar>div,.terminal-toolbar button,.terminal-line,.terminal-empty,.protocol-card>code,.protocol-card li small,.terminator-note small,.modal-heading p,.modal-intro,.settings-grid label>span,.settings-grid select,.config-summary strong,.config-summary span,.primary-modal,.help-steps strong,.help-steps small,.help-warning strong,.help-warning span,.toast p{font-size:12px}.sensor-name strong,.empty-reading strong,.session-summary strong,.table-value strong,.protocol-card li strong,.terminator-note strong{font-size:14px}.ng2-brand strong{font-size:18px}.panel-heading-row h2,.protocol-card h2,.modal-heading h2{font-size:17px}.primary-connect,.secondary-action{min-height:42px}.square-action{width:42px;height:42px}.readings-table th{padding-top:13px;padding-bottom:13px}.readings-table td{padding-top:15px;padding-bottom:15px}.terminal-line{grid-template-columns:70px 36px minmax(0,1fr);line-height:1.6}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--font-geist-sans:"Segoe UI", Arial, Helvetica, sans-serif;--font-geist-mono:"Cascadia Mono", "SFMono-Regular", Consolas, monospace}body{min-width:320px}
