:root{--page: oklch(.1 .012 260);--bg-0: oklch(.165 .02 254);--bg-1: oklch(.205 .024 250);--bg-2: oklch(.24 .026 248);--bg-3: oklch(.285 .028 246);--border-s: oklch(.27 .024 248);--border-m: oklch(.34 .028 245);--border-h: oklch(.46 .034 240);--text-1: oklch(.965 .008 240);--text-2: oklch(.8 .014 238);--text-3: oklch(.62 .02 238);--text-4: oklch(.46 .022 240);--accent: oklch(.82 .15 170);--accent-dim: oklch(.56 .11 170);--accent-soft: oklch(.82 .15 170 / .12);--good: oklch(.82 .18 150);--good-soft: oklch(.82 .18 150 / .12);--warn: oklch(.82 .155 80);--warn-soft: oklch(.82 .155 80 / .14);--bad: oklch(.7 .2 25);--bad-soft: oklch(.7 .2 25 / .14);--info: oklch(.76 .135 235);--info-soft: oklch(.76 .135 235 / .12);--on-accent: oklch(.17 .02 254);--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--font-ui: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--match-quiet: oklch(.3 .012 248)}@media(prefers-color-scheme:light){:root{--page: oklch(.972 .005 260);--bg-0: oklch(.995 .002 254);--bg-1: oklch(.968 .005 250);--bg-2: oklch(.94 .007 248);--bg-3: oklch(.91 .009 246);--border-s: oklch(.905 .007 248);--border-m: oklch(.845 .01 245);--border-h: oklch(.72 .014 240);--text-1: oklch(.24 .02 240);--text-2: oklch(.39 .018 238);--text-3: oklch(.53 .018 238);--text-4: oklch(.63 .016 240);--accent: oklch(.52 .13 170);--accent-dim: oklch(.64 .105 170);--accent-soft: oklch(.52 .13 170 / .12);--good: oklch(.52 .15 150);--good-soft: oklch(.52 .15 150 / .12);--warn: oklch(.545 .14 80);--warn-soft: oklch(.545 .14 80 / .14);--bad: oklch(.52 .19 25);--bad-soft: oklch(.52 .19 25 / .12);--info: oklch(.51 .13 235);--info-soft: oklch(.51 .13 235 / .12);--on-accent: oklch(.995 0 0);--match-quiet: oklch(.88 .008 248)}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:var(--page);font-family:var(--font-ui);color:var(--text-1);-webkit-font-smoothing:antialiased;letter-spacing:-.005em}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}.num{font-family:var(--font-mono);font-feature-settings:"tnum" 1,"calt" 0;font-variant-numeric:tabular-nums}.app{min-height:100%;display:flex;flex-direction:column;background:var(--bg-0);max-width:520px;margin:0 auto}.app-body{flex:1;overflow-y:auto;padding-bottom:8px}.tabs{display:flex;border-top:1px solid var(--border-s);background:var(--bg-1);position:sticky;bottom:0}.tab{flex:1;text-align:center;padding:12px 0 16px;font-size:11.5px;color:var(--text-4);font-weight:600}.tab.on{color:var(--accent)}.tab .ico{display:block;font-size:15px;margin-bottom:2px}@media(min-width:900px){.app{max-width:none;flex-direction:row}.app-body{padding:0 28px 40px}.tabs{order:-1;flex-direction:column;border-top:none;border-right:1px solid var(--border-s);position:sticky;top:0;align-self:flex-start;height:100vh;width:172px;padding-top:18px;flex:none}.tab{flex:0 0 auto;text-align:left;padding:11px 18px}.tab .ico{display:inline;margin-right:8px}.section-wide{max-width:1180px}}.hdr{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;gap:10px;flex-wrap:wrap}.persons{display:flex;gap:6px}.chip{font-size:12.5px;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--border-m);color:var(--text-3)}.chip.on{background:var(--accent-soft);border-color:var(--accent-dim);color:var(--accent)}.chip.inactive{border-style:dashed;color:var(--text-4)}.chip.on.inactive{background:var(--bg-2);border-color:var(--border-h);color:var(--text-2)}.login{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-3)}.login .dot{width:7px;height:7px;border-radius:50%;background:var(--good)}.login.bad{color:var(--bad)}.login.bad .dot{background:var(--bad)}.login.quiet{color:var(--text-4)}.login.quiet .dot{background:var(--text-4);opacity:.5}.login .sub{color:var(--text-4)}.ticker{padding:6px 16px 10px;border-bottom:1px solid var(--border-s)}.pips{display:flex;gap:4.4px;align-items:center;margin-bottom:6px}.pip{width:8px;height:8px;border-radius:50%;background:var(--accent-dim);flex:none}.pip.hollow{background:transparent;border:1.2px solid var(--border-h)}.pip.missed{background:var(--bad)}.pip.s5seg{width:20px;border-radius:4px;height:8px;background:linear-gradient(90deg,var(--accent-dim) 60%,transparent 60%);border:1px solid var(--accent-dim)}.ticker .line{display:flex;justify-content:space-between;font-size:11px;color:var(--text-3);gap:10px}.ticker .line b{color:var(--text-1);font-weight:600}.ticker .line .sys{color:var(--text-4);font-size:10px}.everyone{padding:8px 16px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--border-s)}.erow{display:flex;align-items:center;gap:8px;font-size:12.5px;width:100%;text-align:left}.erow .dot{width:7px;height:7px;border-radius:50%;flex:none}.erow .dot.g{background:var(--good)}.erow .dot.off{background:var(--text-4);opacity:.5}.erow .dot.bad{background:var(--bad)}.erow .name{font-weight:600;width:62px}.erow .meta{color:var(--text-3);font-size:11.5px}.erow .amt{margin-left:auto;font-size:12.5px}.erow .amt.quiet{font-size:10.5px;color:var(--text-4)}.erow.dim{color:var(--text-4)}.erow.dim .name{color:var(--text-4);font-weight:500}.rollups{display:flex;gap:8px;padding:10px 16px 4px}.roll{flex:1;background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-md);padding:8px 10px}.roll .v{font-size:15px;font-weight:650}.roll .v.pos{color:var(--good)}.roll .v.neg{color:var(--bad)}.roll .v.zero{color:var(--text-3)}.roll .src{font-size:9.5px;color:var(--text-4);margin-top:2px;letter-spacing:.01em}.mtm-line{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:4px 10px;padding:0 16px 8px;font-size:10.5px;color:var(--text-4);align-items:baseline}.mtm-part{display:inline-flex;align-items:baseline;gap:5px}.mtm-part .ml{font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:1px 5px;border-radius:4px}.mtm-part .ml.live{background:var(--accent-soft);color:var(--accent)}.mtm-part .ml.mock{border:1px solid var(--border-m);color:var(--text-3)}.mtm-line .v{color:var(--text-2)}.sleeves{padding:2px 16px 0}.sleeve-h{display:flex;align-items:center;gap:8px;padding:10px 0 6px;flex-wrap:nowrap}.sleeve-h .t{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--text-2)}.badge{font-size:9.5px;font-weight:700;letter-spacing:.05em;padding:2.5px 7px;border-radius:5px;white-space:nowrap;flex:none}.badge.live{background:var(--accent);color:var(--on-accent)}.badge.mock{border:1px solid var(--border-h);color:var(--text-3)}.badge.halted{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn)}.badge.inactive{border:1px dashed var(--border-m);color:var(--text-4)}.sleeve-h .cap{font-size:10px;color:var(--text-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stopbtn{margin-left:auto;flex:none;font-size:11px;font-weight:650;color:var(--bad);border:1px solid var(--bad);background:var(--bad-soft);border-radius:7px;padding:4px 12px}.startbtn{margin-left:auto;flex:none;font-size:11px;font-weight:650;color:var(--accent);border:1px solid var(--accent-dim);background:var(--accent-soft);border-radius:7px;padding:4px 12px}.affordance{margin-left:auto;flex:none;white-space:nowrap;font-size:10.5px;color:var(--text-4);border:1px dashed var(--border-m);border-radius:7px;padding:4px 10px}.cfgrow{width:100%;text-align:left;font-size:11px;color:var(--text-4);border:1px dashed var(--border-m);border-radius:var(--r-md);padding:8px 11px;margin:6px 0 12px}.cfgbtn{font-size:10.5px;color:var(--text-3);border:1px solid var(--border-m);border-radius:7px;padding:3px 9px}.card{background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-lg);padding:11px 13px;margin-bottom:8px}.card.mockcard{background:transparent}.card.orphan{border-color:var(--bad);background:var(--bad-soft)}.card.inactive{opacity:.62;border-style:dashed}.card.nomode{opacity:.72;background:transparent;border-color:var(--border-m)}.card .row1{display:flex;align-items:center;gap:7px;margin-bottom:2px;flex-wrap:wrap}.card .nm{font-size:14px;font-weight:700}.card .inst{font-size:10px;color:var(--text-3);border:1px solid var(--border-m);padding:1.5px 6px;border-radius:5px}.state{margin-left:auto;display:flex;align-items:center;gap:5px;font-size:10.5px;font-weight:650}.state .sdot{width:7px;height:7px;border-radius:50%;flex:none}.state.open{color:var(--accent)}.state.open .sdot{background:var(--accent)}.state.flat{color:var(--text-4)}.state.flat .sdot{background:var(--text-4)}.state.blackout{color:var(--info)}.state.blackout .sdot{background:var(--info)}.state.halted{color:var(--warn)}.state.halted .sdot{background:var(--warn)}.state.orphan{color:var(--bad)}.state.orphan .sdot{background:var(--bad)}.state.inactive{color:var(--text-4)}.state.inactive .sdot{background:transparent;border:1.2px solid var(--text-4)}.state.nomode{color:var(--text-3)}.state.nomode .sdot{background:transparent;border:1.2px dotted var(--text-3)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;margin-top:8px}.leg{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;margin-top:6px}.leg .lg{color:var(--text-3);font-size:11.5px;width:30px}.leg .arrow{color:var(--text-4);font-size:11px}.leg-src{font-size:9.5px;color:var(--text-4);margin-top:2px}.mtm{display:flex;justify-content:space-between;align-items:baseline;border-top:1px dashed var(--border-m);margin-top:9px;padding-top:8px;gap:10px}.mtm .lbl{font-size:10px;color:var(--text-4)}.mtm .v{font-size:16px;font-weight:700}.pos{color:var(--good)}.neg{color:var(--bad)}.quiet-line{font-size:12px;color:var(--text-3);margin-top:4px}.navahint{text-align:center;color:var(--text-4);font-size:10px;padding:2px 0 8px}.crow{display:flex;align-items:center;gap:7px;padding:8px 11px;background:transparent;border:1px solid var(--border-s);border-radius:var(--r-md);margin-bottom:6px;font-size:12.5px;width:100%;text-align:left}.crow .nm{font-weight:700;font-size:13px}.crow .meta{color:var(--text-3);font-size:11.5px}.crow .tail{margin-left:auto;display:flex;align-items:center;gap:6px}.crow .chev{color:var(--text-4);font-size:11px}.atom{display:flex;flex-direction:column}.atom .v{font-size:13.5px}.atom .v.na{color:var(--warn);font-weight:650}.atom .s{font-size:9.5px;color:var(--text-4);margin-top:1.5px}.atom.inline{display:inline-flex}.atom.lg .v{font-size:20px;font-weight:700}.atom.md .v{font-size:16px;font-weight:650}.na{color:var(--warn);font-weight:650}.asof{background:var(--warn-soft);color:var(--warn);font-size:9.5px;padding:1.5px 6px;border-radius:5px}.banner{margin:8px 16px;border-radius:var(--r-md);padding:8px 11px;font-size:11.5px;border:1px solid var(--warn);background:var(--warn-soft);color:var(--warn)}.banner.bad{border-color:var(--bad);background:var(--bad-soft);color:var(--bad)}.pending{background:var(--bg-1);border:1px solid var(--warn);border-radius:var(--r-md);padding:9px 12px;display:flex;align-items:center;gap:9px;font-size:12.5px;margin-bottom:8px}.pending .tick{color:var(--good);font-weight:800}.pending .cd{margin-left:auto;color:var(--warn)}.changed{padding:4px 16px 8px}.changed .cap{font-size:9.5px;letter-spacing:.06em;color:var(--text-4);font-weight:700;margin-bottom:4px}.changed .item{font-size:11.5px;color:var(--text-2)}.changed .item .t{color:var(--text-4);margin-right:6px}.overlay{position:fixed;inset:0;display:flex;align-items:flex-end;justify-content:center;z-index:80}.dimmer{position:absolute;inset:0;background:#0102039e;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.sheet{position:relative;width:100%;max-width:520px;background:var(--bg-2);border-top-left-radius:20px;border-top-right-radius:20px;border-top:1px solid var(--border-h);padding:18px 18px 26px;max-height:92vh;overflow-y:auto}.sheet h2{font-size:16px;font-weight:750;margin-bottom:10px;display:flex;align-items:center;gap:8px}.sheet .copy{font-size:13px;line-height:1.5;color:var(--text-2)}.sheet .copy b{color:var(--text-1)}.sheet .copy .hl{color:var(--warn);font-weight:650}.sheet .copy p{margin-top:6px}.cancel{text-align:center;margin-top:12px;font-size:13px;color:var(--text-3);width:100%}.slide{margin-top:16px;background:var(--bg-0);border:1px solid var(--border-m);border-radius:999px;height:46px;display:flex;align-items:center;padding:4px;position:relative;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}.slide .knob{width:38px;height:38px;border-radius:50%;background:var(--bad);display:flex;align-items:center;justify-content:center;color:var(--on-accent);font-weight:800;position:relative;z-index:2}.slide.go .knob{background:var(--accent)}.slide .lbl{position:absolute;left:0;right:0;text-align:center;font-size:12px;color:var(--text-3);letter-spacing:.04em}.slide .fill{position:absolute;left:0;top:0;bottom:0;background:var(--bad-soft)}.slide.go .fill{background:var(--accent-soft)}.drawer{position:relative;width:100%;max-width:520px;background:var(--bg-2);border-top:1px solid var(--border-h);border-top-left-radius:20px;border-top-right-radius:20px;padding:18px;max-height:92vh;overflow-y:auto}.drawer h2{font-size:15px;font-weight:750;margin-bottom:4px}.drawer .sub{font-size:11.5px;color:var(--text-4);margin-bottom:14px}.cfg-row{border:1px solid var(--border-s);border-radius:var(--r-md);padding:10px 12px;margin-bottom:10px;background:var(--bg-1)}.cfg-row .h{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;margin-bottom:8px}.tri{display:flex;gap:6px}.tri button{font-size:11px;font-weight:650;border:1px solid var(--border-m);border-radius:7px;padding:4px 12px;color:var(--text-3)}.tri button.on{border-color:var(--accent-dim);background:var(--accent-soft);color:var(--accent)}.tri button.on.blank{border-color:var(--border-h);background:transparent;color:var(--text-2)}.toggle{margin-left:auto;font-size:11px;font-weight:650;border:1px solid var(--border-m);border-radius:7px;padding:3px 10px;color:var(--text-3)}.toggle.on{border-color:var(--accent-dim);background:var(--accent-soft);color:var(--accent)}.sec-h{padding:16px 16px 6px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.sec-h h1{font-size:16px;font-weight:750}.sec-h .sub{font-size:11.5px;color:var(--text-4)}.period{display:flex;gap:6px;align-items:center;padding:4px 16px 10px;flex-wrap:wrap}.period button{font-size:11px;font-weight:650;border:1px solid var(--border-m);border-radius:7px;padding:3px 10px;color:var(--text-3)}.period button.on{border-color:var(--accent-dim);background:var(--accent-soft);color:var(--accent)}.period input{background:var(--bg-1);border:1px solid var(--border-m);border-radius:6px;color:var(--text-2);font-size:11px;padding:3px 6px;font-family:var(--font-mono)}.strip{display:flex;gap:6px;padding:0 16px 8px;flex-wrap:wrap}.inbox-head{padding:2px 16px 10px;font-size:13px}.inbox-head b{font-size:15px}.inbox-head.clean b{color:var(--good)}.inbox-head.dirty b{color:var(--warn)}.rrow{border:1px solid var(--border-s);border-radius:var(--r-md);margin:0 16px 6px;background:var(--bg-1);overflow:hidden}.rrow.skip{background:transparent;border-style:dashed}.rrow>.head{display:flex;gap:8px;align-items:center;padding:9px 11px;width:100%;text-align:left;font-size:12.5px}.rrow .date{font-size:11px;color:var(--text-4);width:62px;flex:none}.rrow .who{font-weight:700;font-size:12.5px}.rrow .hl{color:var(--text-2);font-size:11.5px}.rrow .chev{margin-left:auto;color:var(--text-4)}.rrow .body{border-top:1px solid var(--border-s);padding:9px 11px;font-size:11.5px;color:var(--text-3)}.vd{font-size:9.5px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:5px;border:1px solid var(--border-m);color:var(--text-3);flex:none}.vd.DIVERGED{color:var(--bad);border-color:var(--bad);background:var(--bad-soft)}.vd.PARTIAL{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.vd.MATCH{color:var(--text-3)}.vd.EXPECTED-SKIP,.vd.NODATA{color:var(--text-4);border-style:dashed}.vd.MEASURE-ONLY{color:var(--info);border-color:var(--info)}.heat{display:flex;flex-wrap:wrap;gap:3px;padding:2px 16px 10px}.heat .cell{width:13px;height:13px;border-radius:3px;background:var(--match-quiet)}.heat .cell.PARTIAL{background:var(--warn)}.heat .cell.DIVERGED{background:var(--bad)}.heat .cell.NODATA{background:transparent;border:1px solid var(--border-s)}.heat .cell.EXPECTED-SKIP{background:transparent;border:1px dashed var(--border-m)}.heat-legend{padding:0 16px 10px;font-size:10px;color:var(--text-4);display:flex;gap:12px;flex-wrap:wrap}.counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;padding:0 16px 12px}.counter{background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-md);padding:9px 11px}.counter .k{font-size:10px;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase}.measure-badge{font-size:9px;font-weight:700;color:var(--info);border:1px solid var(--info);border-radius:4px;padding:1px 5px;margin-left:6px}.difftable{width:100%;border-collapse:collapse;font-size:11.5px}.difftable th{text-align:left;font-size:9.5px;letter-spacing:.05em;color:var(--text-4);text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--border-s);font-weight:700}.difftable td{padding:7px 8px;border-bottom:1px solid var(--border-s);color:var(--text-2);vertical-align:top}.difftable td .sub{display:block;font-size:9.5px;color:var(--text-4);margin-top:2px}.tablewrap{padding:0 16px 16px;overflow-x:auto}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;padding:0 16px 12px}.kpi{background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-md);padding:10px 12px}.kpi .k{font-size:10px;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.kpi .pair{display:flex;gap:14px;align-items:flex-end}.kpi .half{display:flex;flex-direction:column}.kpi .half .l{font-size:9.5px;color:var(--text-4)}.kpi .half .v{font-size:17px;font-weight:700}.kpi .half.live .v{color:var(--accent)}.kpi .half.live .v.suppressed{color:var(--text-4);font-size:12px;font-weight:600}.chartbox{padding:0 6px 14px}.chart-h{display:flex;align-items:baseline;gap:10px;padding:0 16px 4px}.chart-h .t{font-size:12px;font-weight:700;color:var(--text-2)}.chart-h .s{font-size:10px;color:var(--text-4)}.yeartable{width:100%;border-collapse:collapse;font-size:12px}.yeartable th{text-align:right;font-size:9.5px;letter-spacing:.05em;color:var(--text-4);text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--border-s);font-weight:700}.yeartable th:first-child,.yeartable td:first-child{text-align:left}.yeartable td{padding:7px 8px;border-bottom:1px solid var(--border-s);text-align:right}.yeartable td .live{display:block;font-size:9.5px;color:var(--accent)}.yeartable tr.total td{font-weight:700;border-bottom:none}.reserved{margin:0 16px 16px;border:1px dashed var(--border-m);border-radius:var(--r-md);padding:12px;font-size:11.5px;color:var(--text-4)}.reserved b{color:var(--text-3)}.devpick{position:fixed;left:8px;bottom:62px;z-index:60;display:flex;gap:4px;align-items:center;background:#020306db;padding:4px 6px;border-radius:8px}.devpick .lbl{font-size:9px;letter-spacing:.08em;color:var(--text-4);font-weight:700}.devpick button{font-size:10.5px;border:1px solid var(--border-m);background:var(--bg-2);border-radius:6px;padding:3px 8px;color:var(--text-3)}.devpick button.on{border-color:var(--accent-dim);background:var(--accent-soft);color:var(--accent)}@media(min-width:900px){.devpick{bottom:12px;left:auto;right:12px}}.center-msg{padding:40px 24px;text-align:center;color:var(--text-3);font-size:13px}.signin{margin-top:14px;border:1px solid var(--accent-dim);background:var(--accent-soft);color:var(--accent);border-radius:8px;padding:8px 16px;font-weight:650;font-size:13px}.failbox{margin:12px 16px;border:1px solid var(--bad);background:var(--bad-soft);border-radius:var(--r-md);padding:12px 14px}.failbox .t{font-size:13px;font-weight:700;color:var(--bad)}.failbox .m{font-size:11.5px;color:var(--text-2);margin-top:4px;word-break:break-word}.failbox .h{font-size:10.5px;color:var(--text-4);margin-top:6px;line-height:1.5}.failbox .retry{margin-top:10px;font-size:11.5px;font-weight:650;color:var(--text-1);border:1px solid var(--border-h);border-radius:7px;padding:5px 14px}.welcome{display:flex;align-items:center;gap:10px;padding:10px 16px 2px;font-size:11.5px;color:var(--text-3)}.welcome .w b{color:var(--text-1);font-weight:650}.welcome .since{color:var(--text-4)}.welcome .signout{margin-left:auto;font-size:10.5px;color:var(--text-4);border:1px solid var(--border-m);border-radius:7px;padding:3px 10px}.welcome .signout:hover{color:var(--text-2);border-color:var(--border-h)}.authpage{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--page)}.authcard{width:100%;max-width:380px;background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-lg);padding:28px 26px 22px;box-shadow:0 24px 60px -34px #0009}.wordmark{font-size:26px;font-weight:750;letter-spacing:-.02em;color:var(--text-1)}.wordmark .dotmark{color:var(--accent)}.tagline{font-size:12px;color:var(--text-3);margin-top:4px;margin-bottom:22px;line-height:1.5}.authnote{font-size:11px;color:var(--warn);background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--r-sm);padding:8px 10px;margin-bottom:14px;line-height:1.5}.authnote .hint,.authfoot .hint{display:block;color:var(--text-4);margin-top:4px;font-size:10px}.gbtn{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13.5px;font-weight:650;color:var(--text-1);background:var(--bg-2);border:1px solid var(--border-m);border-radius:9px;padding:11px 14px}.gbtn:hover:not(:disabled){border-color:var(--border-h);background:var(--bg-3)}.gbtn:disabled,.pbtn:disabled{opacity:.55;cursor:default}.gmark{font-family:var(--font-ui);font-weight:800;font-size:14px;color:var(--accent);width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--accent-dim);border-radius:50%}.divider{display:flex;align-items:center;gap:10px;margin:18px 0 14px;color:var(--text-4);font-size:10.5px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border-s)}.field{display:block;margin-bottom:11px}.field span{display:block;font-size:10.5px;color:var(--text-3);margin-bottom:4px;letter-spacing:.02em}.field input{width:100%;background:var(--bg-0);border:1px solid var(--border-m);border-radius:8px;padding:9px 11px;font-size:13px;color:var(--text-1);font-family:var(--font-ui)}.field input:focus{outline:none;border-color:var(--accent-dim);box-shadow:0 0 0 3px var(--accent-soft)}.field input::placeholder{color:var(--text-4)}.autherr{font-size:11.5px;color:var(--bad);background:var(--bad-soft);border:1px solid var(--bad);border-radius:var(--r-sm);padding:7px 10px;margin:4px 0 10px;line-height:1.45}.pbtn{width:100%;font-size:13.5px;font-weight:700;color:var(--on-accent);background:var(--accent);border-radius:9px;padding:11px 14px;margin-top:4px}.pbtn:hover:not(:disabled){filter:brightness(1.06)}.authfoot{margin-top:18px;padding-top:14px;border-top:1px solid var(--border-s);font-size:10.5px;color:var(--text-4);text-align:center;line-height:1.5}.authtitle{font-size:17px;font-weight:750;color:var(--text-1);margin-top:16px}.authtitle+.tagline{margin-top:6px}.authok{font-size:11.5px;color:var(--good);background:var(--good-soft);border:1px solid var(--good);border-radius:var(--r-sm);padding:7px 10px;margin:4px 0 10px;line-height:1.45}.linkbtn{font-size:11.5px;color:var(--text-3);text-decoration:underline;text-underline-offset:2px;padding:0}.linkbtn:hover{color:var(--accent)}.forgot{display:block;width:100%;text-align:center;margin-top:12px}.resetrow{border-top:1px dashed var(--border-m);margin-top:12px;padding-top:4px}.resetacts{display:flex;align-items:center;gap:12px}.resetacts .gbtn{flex:1;padding:9px 12px;font-size:12.5px}.resetrow .field+.autherr{margin:0 0 10px}.resetrow .resetacts+.autherr,.resetrow .resetacts+.authok{margin:10px 0 2px}.verifyaddr{display:block;margin-top:6px;color:var(--text-2);font-size:12px}.welcome-note{margin:2px 16px 0;font-size:10.5px;color:var(--good)}.pwbtn{margin-left:auto;font-size:10.5px;color:var(--text-3);text-decoration:underline;text-underline-offset:2px;border:1px solid transparent;border-radius:7px;padding:3px 10px}.pwbtn:hover:not(:disabled){color:var(--text-2)}.pwbtn:disabled{opacity:1;color:var(--text-2);text-decoration:none;border-color:var(--border-m);cursor:default}.pwnote{margin-left:auto;font-size:10.5px;color:var(--text-3)}.welcome .pwbtn+.signout,.welcome .pwnote+.signout{margin-left:0}@media(prefers-color-scheme:light){.authok{color:#006b2e;color:oklch(.46 .15 150)}}.trendgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:14px}.trendcell .chartbox{margin-top:2px}.notes{margin-top:14px}.noterow{display:flex;gap:10px;padding:4px 16px;font-size:12px;color:var(--text-3)}.noterow .date{color:var(--text-4)}.bt-group{padding:4px 16px 2px}.bt-group .sleeve-h{margin-bottom:6px}.bt-card{background:var(--bg-1);border:1px solid var(--border-s);border-radius:var(--r-lg);padding:11px 13px;margin-bottom:8px}.bt-card .h{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:8px}.bt-card .h .n{font-size:14px;font-weight:750}.bt-card .h .sub{font-size:10.5px;color:var(--text-4)}.bt-card.missing .h .sub{color:var(--warn)}.bt-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.bt-kpi{background:var(--bg-0);border:1px solid var(--border-s);border-radius:var(--r-md);padding:8px 9px;text-align:left;cursor:pointer;color:inherit}.bt-kpi:hover{border-color:var(--accent-dim)}.bt-kpi .k{font-size:9.5px;color:var(--text-4);letter-spacing:.04em;text-transform:uppercase}.bt-kpi .v{font-size:16px;font-weight:700;margin-top:2px}.bt-kpi .hint{font-size:9px;color:var(--text-4);margin-top:2px}.bt-foot{padding:4px 16px 18px;font-size:10.5px;color:var(--text-4);line-height:1.5}.sheet.wide{max-width:780px}.sheet .close{position:absolute;top:12px;right:14px;font-size:18px;color:var(--text-3)}.heatmap{width:100%;border-collapse:separate;border-spacing:2px;font-size:10.5px}.heatmap th{font-size:9px;letter-spacing:.05em;color:var(--text-4);text-transform:uppercase;padding:2px 3px;text-align:center;font-weight:700}.heatmap th.y,.heatmap td.y{text-align:left;font-weight:700;color:var(--text-2);padding-right:6px}.heatmap td.cell{text-align:center;padding:5px 2px;border-radius:4px;color:var(--text-1);min-width:34px}.heatmap td.cell.empty{color:var(--text-4);background:transparent;border:1px dashed var(--border-s)}.heatmap td.total{text-align:center;padding:5px 4px;border-radius:4px;font-weight:750;border-left:2px solid var(--border-h)}.bt-legend{display:flex;gap:14px;font-size:10px;color:var(--text-4);padding:6px 0 2px;flex-wrap:wrap}
