:root{--bg:oklch(16.5% .012 245);--panel:oklch(20% .014 245);--panel-raised:oklch(23.5% .016 245);--line:oklch(90% .02 240/.09);--line-strong:oklch(90% .02 240/.16);--tint:oklch(80% .07 225);--tint-soft:oklch(88% .05 225);--tint-deep:oklch(55% .06 225);--heat:oklch(79% .09 55);--cool:oklch(80% .08 235);--auto:oklch(82% .07 165);--attention:oklch(86% .12 95);--ok:oklch(80% .09 155);--danger:oklch(70% .15 25);--on-mode:oklch(20% .02 245);--text:oklch(94% .008 240);--text-dim:oklch(72% .015 240);--text-faint:oklch(55% .015 240);--font:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--ease-calm:cubic-bezier(.25, 1, .5, 1);--r:12px;--mode:var(--tint);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-mode=heating]{--mode:var(--heat)}[data-mode=cooling]{--mode:var(--cool)}[data-mode=auto]{--mode:var(--auto)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{background:var(--bg);scrollbar-color:oklch(90% .02 240/.18) var(--bg)}body{background:radial-gradient(1200px 480px at 50% -12%, oklch(26% .02 240/.55), transparent 70%), var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;font-size:14px;line-height:1.45;overflow-x:hidden}::selection{color:var(--text);background:oklch(80% .07 225/.3)}:focus-visible{outline:2px solid var(--tint);outline-offset:2px}[data-sonner-toaster][data-sonner-theme]{font-family:var(--font)}[data-sonner-toast][data-styled=true]{--normal-bg:var(--panel-raised);--normal-border:var(--line-strong);--normal-text:var(--text);border-radius:10px;font-size:13px;box-shadow:0 12px 32px #00000073}[data-sonner-toast][data-type=success] [data-icon]{color:var(--ok)}[data-sonner-toast][data-type=error] [data-icon]{color:var(--danger)}#app{z-index:1;max-width:1320px;margin:0 auto;padding:26px 30px 70px;position:relative}.climate-shell{padding:26px 30px 70px}.section-title{letter-spacing:-.005em;color:var(--text);font-size:15px;font-weight:600}.section-note{color:var(--text-dim);font-size:12.5px}.deck-head{border-bottom:1px solid var(--line);align-items:center;gap:24px;margin-bottom:20px;padding-bottom:18px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-glyph{width:34px;height:34px;color:var(--text-dim);background:var(--panel);border:1px solid var(--line);border-radius:9px;flex:none;place-items:center;display:grid}.brand-glyph svg{width:18px;height:18px}.brand-text{flex-direction:column;gap:1px;display:flex}.brand-text h1{letter-spacing:-.005em;color:var(--text);font-size:15px;font-weight:600;line-height:1.2}.brand-text span{color:var(--text-dim);font-size:12.5px}.tabs{gap:4px;display:flex}.tab{font-family:var(--font);color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.tab:hover{color:var(--text)}.tab.is-active{color:var(--text);background:var(--panel-raised);border-color:var(--line)}.head-meta{align-items:center;gap:16px;margin-left:auto;display:flex}.head-status{align-items:center;gap:12px;display:flex}.head-fresh{color:var(--text-dim);font-variant-numeric:tabular-nums;cursor:default;font-size:13px}.refresh-link{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:7px;padding:6px 11px;font-size:13px;font-weight:500;transition:background .2s,border-color .2s;display:inline-flex}.refresh-link svg{color:var(--text-dim)}.refresh-link:hover{background:var(--panel-raised);border-color:var(--line-strong)}.refresh-link[data-busy=true]{cursor:progress;opacity:.6}.fake-badge{white-space:nowrap;color:var(--attention);cursor:default;background:oklch(86% .12 95/.07);border:1px solid oklch(86% .12 95/.3);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:500}.user-chip{width:34px;height:34px;font-family:var(--font);color:var(--text);background:var(--panel-raised);border:1px solid var(--line);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.user-chip:hover,.user-chip[data-state=open]{border-color:var(--line-strong);background:oklch(27% .016 245)}.deck-menu{min-width:220px;font-family:var(--font);color:var(--text);border:1px solid var(--line-strong);background:oklch(22% .015 245);border-radius:10px;padding:6px;box-shadow:0 16px 40px #00000073}.deck-menu-user{flex-direction:column;gap:2px;padding:8px 10px;display:flex}.deck-menu-name{color:var(--text);font-size:13px;font-weight:600}.deck-menu-mail{color:var(--text-dim);font-size:12px;font-weight:400}.deck-menu [data-slot=dropdown-menu-separator]{background:var(--line);height:1px;margin:4px 0}.deck-menu [data-slot=dropdown-menu-item]{width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:9px;padding:8px 10px;font-size:13px;text-decoration:none;transition:color .15s,background .15s;display:flex}.deck-menu [data-slot=dropdown-menu-item]:hover,.deck-menu [data-slot=dropdown-menu-item][data-highlighted]{color:var(--text);background:var(--panel-raised);outline:none}.sync-bar{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap;align-items:center;gap:16px 32px;margin-bottom:20px;padding:14px 20px;display:flex}.conditions{flex-wrap:wrap;align-items:baseline;gap:8px 32px;display:flex}.conditions>div{align-items:baseline;gap:8px;display:flex}.conditions dt{color:var(--text-dim);font-size:12.5px}.conditions dd{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.health-v[data-level=caution],.health-v[data-level=warn]{color:var(--attention)}.health-v[data-level=fault]{color:var(--danger)}.health-issue{color:var(--text-dim);font-size:13px;font-weight:400}.health-issue:before{content:"·";color:var(--text-faint);margin:0 8px}.health-code{color:var(--text);font-weight:500}.sync-status{color:var(--text-dim);align-items:center;gap:12px;margin-left:auto;font-size:13px;display:flex}.sync-dot{background:var(--ok);border-radius:50%;flex:none;width:7px;height:7px}.sync-bar[data-synced=false] .sync-dot{background:var(--attention)}.sync-bar[data-synced=false] .sync-txt{color:var(--text)}.sync-all-btn,.ghost-btn{cursor:pointer;font-family:var(--font);border-radius:8px;flex:none;padding:6px 12px;font-size:13px;font-weight:500;transition:background .2s,border-color .2s,color .2s}.sync-all-btn{color:var(--attention);background:oklch(86% .12 95/.08);border:1px solid oklch(86% .12 95/.32)}.sync-all-btn:hover:not(:disabled){background:oklch(86% .12 95/.16)}.ghost-btn{color:var(--text-dim);border:1px solid var(--line);background:0 0}.ghost-btn:hover{color:var(--text);border-color:var(--line-strong)}.deck-alert{color:var(--attention);margin:-6px 0 14px;font-size:13px}.deck-body{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;margin-bottom:20px;display:grid}.units{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.units-empty{background:var(--panel);border:1px dashed var(--line-strong);border-radius:var(--r);flex-direction:column;grid-column:1/-1;gap:6px;padding:32px 20px;display:flex}.unit-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;padding:18px 18px 16px;transition:border-color .3s;display:flex;position:relative}.unit-card[data-desync=true]{border-color:oklch(86% .12 95/.35)}.unit-card[data-fault=true]{border-color:oklch(70% .15 25/.5)}.uc-head{align-items:center;gap:12px;display:flex}.uc-title{flex-direction:column;gap:1px;min-width:0;display:flex}.uc-head .name{letter-spacing:.01em;color:var(--text);font-size:15px;font-weight:600}.uc-head .zone{color:var(--text-dim);font-size:12.5px}.uc-power{cursor:pointer;width:34px;height:34px;color:var(--text-faint);border:1px solid var(--line);background:0 0;border-radius:50%;flex:none;place-items:center;margin-left:auto;transition:color .2s,border-color .2s,background .2s;display:grid}.uc-power svg{width:15px;height:15px}.uc-power:hover:not(:disabled){color:var(--text);border-color:var(--line-strong)}.uc-power:disabled,.uc-sync:disabled,.sync-all-btn:disabled,.power-btn:disabled{cursor:progress;opacity:.6}.uc-power[data-on=true]{color:var(--mode);border-color:color-mix(in oklch, var(--mode) 40%, transparent);background:color-mix(in oklch, var(--mode) 10%, transparent)}.uc-flag{color:var(--attention);background:oklch(86% .12 95/.07);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:5px 5px 5px 11px;font-size:12.5px;display:flex}.uc-sync{cursor:pointer;font:inherit;color:var(--attention);background:0 0;border:1px solid oklch(86% .12 95/.32);border-radius:6px;flex:none;padding:3px 10px;font-weight:500;transition:background .2s}.uc-sync:hover:not(:disabled){background:oklch(86% .12 95/.14)}.uc-visual{width:100%;margin:6px 0 2px;transition:opacity .3s;position:relative}.unit-card[data-power=false] .uc-visual{opacity:.55}.u-svg{width:100%;height:auto;display:block}.u-wall line{stroke:var(--line);stroke-width:1px}.u-shell{fill:oklch(90% .02 240/.035)}.u-shell-edge{fill:none;stroke:var(--line-strong);stroke-width:1.2px}.u-shell-sheen{stroke:oklch(95% .01 240/.08);stroke-width:1px;stroke-linecap:round}.u-grille line{stroke:oklch(90% .02 240/.1);stroke-width:1px}.u-outlet{fill:oklch(12% .01 245/.85);stroke:var(--line);stroke-width:1px}.u-vane{stroke:oklch(90% .02 240/.16);stroke-width:1.2px}.u-vanes{transform:translate(0)}.u-louver{transform-box:fill-box;transform-origin:50% 0}.u-louver rect{fill:oklch(21% .014 245);stroke:var(--line-strong);stroke-width:1.1px}.u-louver-line{stroke:var(--line-strong);stroke-width:1px}.u-fan-rotor circle{fill:none;stroke:oklch(90% .02 240/.1);stroke-width:1px}.u-fan-rotor path{stroke:oklch(90% .02 240/.16);stroke-width:1.2px;fill:none}.u-fan-hub{fill:oklch(90% .02 240/.2)!important;stroke:none!important}.u-fan-rotor{transform-box:fill-box;transform-origin:50%}.u-led{fill:var(--text-faint);transition:fill .3s}.unit-card[data-power=true] .u-led{fill:var(--mode)}.unit-card[data-desync=true] .u-led{fill:var(--attention)}.u-flow{fill:none;stroke:var(--mode);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:22 64;opacity:0}.uc-screen{border:1px solid var(--line);background:oklch(14% .01 245/.92);border-radius:8px;flex-direction:column;align-items:center;gap:1px;width:19.5%;padding:6px 4px;display:flex;position:absolute;top:14%;right:15.5%}.uc-screen-k{color:var(--text-dim);font-size:10.5px}.uc-screen{cursor:text}.uc-screen-val{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--text);font-size:20px;font-weight:500;line-height:1.05}.uc-screen-val .deg{color:var(--text-dim);vertical-align:super;font-size:12px}.uc-screen-val .t{font:inherit;color:inherit;font-variant-numeric:tabular-nums;text-align:center;width:2ch;caret-color:var(--mode);cursor:text;background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;outline:none;margin:0;padding:0;transition:border-color .2s}.uc-screen-val .t:hover:not(:disabled){border-bottom-color:var(--line-strong)}.uc-screen-val .t:focus{border-bottom-color:var(--mode)}.uc-screen-val .t::selection{background:color-mix(in oklch, var(--mode) 30%, transparent)}.uc-screen-val .t:disabled{cursor:default;color:inherit}.unit-card[data-desync=true] .uc-screen{border-color:oklch(86% .12 95/.35)}.unit-card[data-desync=true] .uc-screen-val{color:var(--attention)}.uc-readout{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:12px;display:grid}.uc-stat{flex-direction:column;gap:2px;display:flex}.uc-stat .k{color:var(--text-dim);font-size:12px}.uc-stat .v{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.unit-card[data-fault=true] .st-v{color:var(--danger)}.unit-card[data-warning=true] .st-v{color:var(--attention)}.uc-offset{color:var(--text-dim);justify-content:space-between;align-items:center;gap:12px;margin-top:10px;font-size:12.5px;display:flex}.uc-offset-text{min-width:0}.uc-offset-text strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:500}.uc-offset-step{flex:none;gap:6px;display:flex}.uc-offset-step .dial-step{width:26px;height:26px}.uc-offset-step .dial-step svg{width:12px;height:12px}.uc-offset-step .dial-step[aria-disabled=true]{cursor:default;opacity:.4;pointer-events:none}.uc-controls{grid-template-columns:1.3fr repeat(4,minmax(0,1fr));align-items:stretch;gap:6px;margin-top:14px;display:grid}.chip{font-family:var(--font);white-space:nowrap;border:1px solid var(--line);text-align:center;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:8px;padding:7px 4px;font-size:12px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.chip:hover:not(:disabled){color:var(--text);border-color:var(--line-strong)}.chip:disabled{cursor:default}.chip.on{color:var(--text);border-color:color-mix(in oklch, var(--mode) 35%, transparent);background:color-mix(in oklch, var(--mode) 12%, transparent)}.unit-card[data-power=false] .uc-controls{pointer-events:none;opacity:.6}.fan-trigger{justify-content:space-between;align-items:center;gap:6px;width:100%;padding-inline:9px 7px;display:flex}.fan-lead{align-items:center;gap:6px;display:inline-flex}.fan-trigger svg{flex:none;width:13px;height:13px}.fan-trigger .fan-cur{color:var(--text);text-transform:capitalize}.fan-trigger .fan-caret{color:var(--text-faint);transition:transform .2s var(--ease-calm)}.fan-trigger[data-state=open]{color:var(--text);border-color:var(--line-strong);background:var(--panel-raised)}.fan-trigger[data-state=open] .fan-caret{transform:rotate(180deg)}.fan-menu{min-width:var(--radix-dropdown-menu-trigger-width);font-family:var(--font);color:var(--text);border:1px solid var(--line-strong);background:oklch(23% .015 245);border-radius:9px;flex-direction:column;gap:2px;padding:4px;display:flex;box-shadow:0 12px 32px #00000073}.fan-opt{font-family:var(--font);text-transform:capitalize;color:var(--text-dim);cursor:pointer;border-radius:6px;outline:none;align-items:center;padding:6px 9px 6px 24px;font-size:12.5px;transition:color .15s,background .15s;display:flex;position:relative}.fan-opt>span:first-child{color:var(--mode)}.fan-opt[data-highlighted]{color:var(--text);background:oklch(90% .02 240/.06)}.fan-opt[data-state=checked]{color:var(--text);background:color-mix(in oklch, var(--mode) 14%, transparent)}.master{background:var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr);gap:20px;padding:20px;display:grid}.master-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.master-primary{flex-direction:column;gap:16px;display:flex}.power-btn{font-family:var(--font);color:var(--text-dim);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:7px;padding:6px 11px;font-size:13px;font-weight:500;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.power-btn svg{width:14px;height:14px}.power-btn:hover:not(:disabled){color:var(--text);border-color:var(--line-strong);background:var(--panel-raised)}.mode-switch{border:1px solid var(--line);background:oklch(17% .012 245);border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;display:grid}.mode-switch button{min-height:38px;font-family:var(--font);color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;font-size:13.5px;font-weight:500;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.mode-switch button svg{flex:none;width:15px;height:15px}.mode-switch button:hover{color:var(--text)}.mode-switch button.on{color:var(--text);background:color-mix(in oklch, var(--mode) 14%, transparent);border-color:color-mix(in oklch, var(--mode) 32%, transparent)}.mode-switch button.on svg{color:var(--mode)}.master-dial{place-items:center;display:grid}.dial-wrap{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;width:min(260px,100%);position:relative}.dial-svg{cursor:grab;width:100%;height:100%}.dial-svg:active{cursor:grabbing}.dial-svg:focus-visible{outline:none}.dial-svg:focus-visible .dial-knob{stroke:var(--tint)}.dial-track{fill:none;stroke:oklch(90% .02 240/.08);stroke-width:4px;stroke-linecap:round}.dial-value{fill:none;stroke:var(--mode);stroke-width:4px;stroke-linecap:round}.dial-tick{stroke:oklch(90% .02 240/.12);stroke-width:1px}.dial-tick.lit{stroke:color-mix(in oklch, var(--mode) 55%, transparent)}.dial-knob{fill:var(--text);stroke:var(--panel);stroke-width:3px}.dial-center{text-align:center;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.dial-center .big{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--text);font-size:60px;font-weight:400;line-height:1}.dial-center .big .deg{color:var(--text-dim);vertical-align:super;margin-left:2px;font-size:26px}.dial-center .sub{color:var(--text-dim);margin-top:6px;font-size:12.5px}.dial-steps{gap:12px;display:flex;position:absolute;bottom:4%;left:50%;transform:translate(-50%)}.dial-step{width:34px;height:34px;color:var(--text-dim);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:color .2s,background .2s,border-color .2s;display:grid}.dial-step svg{width:15px;height:15px}.dial-step:hover:not(:disabled){color:var(--text);border-color:var(--line-strong);background:var(--panel-raised)}.dial-step:disabled{cursor:default;opacity:.4}.master-controls{border-top:1px solid var(--line);flex-direction:column;gap:18px;padding-top:18px;display:flex}.field{flex-direction:column;gap:8px;display:flex}.seg-label{color:var(--text-dim);font-size:12.5px}.seg{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;display:grid}.seg button{font-family:var(--font);text-transform:capitalize;cursor:pointer;color:var(--text-dim);border:1px solid var(--line);background:0 0;border-radius:8px;padding:7px 0;font-size:12.5px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.seg button:hover{color:var(--text)}.seg button.on{color:var(--text);background:var(--panel-raised);border-color:var(--line-strong)}.mode-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.mode-toggle{width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--text-dim);border:1px solid var(--line);background:0 0;border-radius:8px;align-items:center;gap:9px;padding:8px 11px;font-size:12.5px;font-weight:500;transition:color .2s,background .2s,border-color .2s;display:flex}.mode-toggle svg{flex:none;width:15px;height:15px}.mode-toggle:hover{color:var(--text)}.mode-toggle.on{color:var(--text);border-color:color-mix(in oklch, var(--mode) 35%, transparent);background:color-mix(in oklch, var(--mode) 12%, transparent)}.mode-toggle.on svg{color:var(--mode)}.master-pending{color:var(--attention);align-items:center;gap:8px;font-size:12.5px;display:flex}.master-pending:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.act-btn{width:100%;font-family:var(--font);cursor:pointer;border-radius:9px;padding:10px 12px;font-size:13.5px;font-weight:600;transition:background .2s,color .2s,border-color .2s,opacity .2s}.act-sync{color:var(--on-mode);background:var(--mode);border:1px solid var(--mode)}.act-sync:hover:not(:disabled){background:color-mix(in oklch, var(--mode) 88%, white)}.act-sync:disabled{cursor:default;color:var(--text-faint);border-color:var(--line);background:0 0}.energy-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:20px 40px;padding:20px;display:grid}.energy-head{flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:12px;display:flex}.energy-totals{grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:16px;display:grid}.energy-total{flex-direction:column;gap:3px;display:flex}.energy-total .k,.energy-split{color:var(--text-dim);font-size:12.5px}.energy-total .v{letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:var(--text);font-size:24px;font-weight:500}.energy-total .v .u,.energy-unit .u{color:var(--text-dim);letter-spacing:0;margin-left:4px;font-size:13px;font-weight:400}.energy-split{font-variant-numeric:tabular-nums;flex-wrap:wrap;grid-column:1/-1;gap:6px 20px;display:flex}.energy-split b{color:var(--text);font-weight:500}.energy-units{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:0 32px;margin-top:-9px;list-style:none;display:grid}.energy-unit{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;display:flex}.energy-unit .name{color:var(--text-dim)}.energy-unit .v{color:var(--text);font-weight:500}.view{display:none}.view.is-active{display:block}@media (width<=1080px){.deck-body{grid-template-columns:1fr}.master{order:-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:32px}.master-head{grid-column:1/-1}.master-controls{border-top:0;padding-top:0}}@media (width<=960px){.sync-bar{row-gap:12px}.sync-status{border-top:1px solid var(--line);width:100%;margin-left:0;padding-top:12px}}@media (width<=760px){.master{grid-template-columns:minmax(0,1fr)}.master-controls{border-top:1px solid var(--line);padding-top:18px}.energy-panel{grid-template-columns:minmax(0,1fr)}}@media (width<=640px){.units{grid-template-columns:1fr}#app{padding:20px 16px 56px}.climate-shell{padding:0}.deck-head{gap:12px;margin-bottom:16px;padding-bottom:14px}.brand-text h1{white-space:nowrap}.head-meta{gap:10px}.head-status{gap:8px}.head-fresh,.fake-badge{white-space:nowrap}.head-fresh{font-size:12px}.refresh-link{min-height:44px}.user-chip{width:44px;height:44px;position:relative}.sync-bar{gap:14px;padding:14px 16px}.conditions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;width:100%;display:grid}.conditions>div{flex-direction:column;gap:1px}.health-issue{display:block}.health-issue:before{content:none}.sync-status{flex-wrap:wrap;width:100%;margin-left:0}.master,.energy-panel{padding:16px}.uc-power{width:40px;height:40px}.chip,.seg button,.mode-toggle,.mode-switch button,.uc-sync,.sync-all-btn,.power-btn{min-height:44px}.dial-step,.uc-offset-step .dial-step{width:44px;height:44px}.energy-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.energy-total .v{font-size:20px}.energy-units{grid-template-columns:1fr}}@media (width<=480px){.refresh-link{justify-content:center;width:44px;height:44px;padding:0;font-size:0}.refresh-link svg{width:15px;height:15px}}@media (width<=400px){.head-fresh{display:none}.uc-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.fan-trigger{grid-column:1/-1}}@media (width<=360px){.deck-head{gap:8px}.fake-badge{display:none}.head-meta{gap:6px}.uc-readout{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.mode-switch button{gap:5px;font-size:12.5px}}.auth-shell{z-index:1;flex-direction:column;min-height:calc(100svh - 96px);display:flex;position:relative}.auth-shell .deck-head{margin-bottom:0}.brand-link{color:inherit;text-decoration:none;transition:opacity .2s}.brand-link:hover{opacity:.85}.auth-main{flex:1;place-items:center;padding:40px 0;display:grid}.auth-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;width:100%;max-width:420px;padding:28px}.auth-title{letter-spacing:-.015em;color:var(--text);margin-bottom:6px;font-size:24px;font-weight:500;line-height:1.2}.auth-sub{color:var(--text-dim);margin-bottom:24px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-label{color:var(--text-dim);font-size:12.5px}.auth-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-hint{color:var(--text-dim);font-size:12px}.auth-input{width:100%;font-family:var(--font);color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;padding:11px 12px;font-size:14px;transition:border-color .2s}.auth-input::placeholder{color:color-mix(in oklch, var(--text-faint) 60%, var(--text-dim))}.auth-input:hover{border-color:oklch(90% .02 240/.24)}.auth-input:focus-visible{border-color:var(--tint);outline:1px solid var(--tint);outline-offset:0}.auth-input[readonly]{color:var(--text-dim);border-color:var(--line);cursor:default;background:0 0}.auth-input[aria-invalid=true]{border-color:oklch(70% .15 25/.6)}.auth-input.auth-code{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.3em;text-indent:.3em;padding:12px;font-size:22px;font-weight:500}.auth-input-wrap{position:relative}.auth-input-wrap .auth-input{padding-right:44px}.auth-reveal{inset-block:0;width:44px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;place-items:center;transition:color .2s;display:grid;position:absolute;right:0}.auth-reveal:hover{color:var(--text)}.auth-error{color:var(--danger);font-size:12.5px}.auth-ghost+.auth-error{margin-top:8px}.auth-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-check{color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:13px;display:inline-flex}.auth-check input{opacity:0;width:0;height:0;position:absolute}.auth-check .box{border:1px solid var(--line-strong);background:var(--bg);border-radius:4px;flex:none;place-items:center;width:16px;height:16px;transition:background .15s,border-color .15s;display:grid}.auth-check:hover .box{border-color:oklch(90% .02 240/.24)}.auth-check input:checked+.box{background:var(--tint);border-color:var(--tint)}.auth-check input:checked+.box:after{content:"";border:solid var(--on-mode);border-width:0 2px 2px 0;width:4px;height:8px;transform:translateY(-1px)rotate(45deg)}.auth-check input:focus-visible+.box{outline:2px solid var(--tint);outline-offset:2px}.auth-link{font:inherit;color:var(--tint);cursor:pointer;text-underline-offset:3px;white-space:nowrap;background:0 0;border:none;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .2s}.auth-link:hover{text-decoration-color:currentColor}.auth-submit,.auth-ghost{width:100%;font-family:var(--font);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:13.5px;transition:background .2s,border-color .2s,opacity .2s;display:inline-flex}.auth-submit:disabled,.auth-ghost:disabled{opacity:.6;cursor:progress}.auth-submit{color:var(--on-mode);background:var(--tint);border:1px solid var(--tint);margin-top:4px;font-weight:600}.auth-submit:hover:not(:disabled){background:color-mix(in oklch, var(--tint) 88%, white)}.auth-ghost{color:var(--text);border:1px solid var(--line-strong);background:0 0;font-weight:500}.auth-ghost svg{color:var(--text-dim)}.auth-ghost:hover:not(:disabled){background:var(--panel-raised)}.auth-divider{color:var(--text-dim);align-items:center;gap:12px;margin:16px 0;font-size:12.5px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-status{color:var(--ok);background:oklch(80% .09 155/.06);border:1px solid oklch(80% .09 155/.22);border-radius:8px;margin-bottom:16px;padding:10px 12px;font-size:13px}.auth-foot{text-align:center;color:var(--text-dim);margin-top:4px;font-size:13px}.auth-spin{border:2px solid color-mix(in oklch, currentColor 30%, transparent);border-top-color:currentColor;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}body.settings-mode{--background:var(--panel);--foreground:var(--text);--card:var(--panel);--card-foreground:var(--text);--popover:var(--panel-raised);--popover-foreground:var(--text);--primary:var(--tint);--primary-foreground:var(--on-mode);--secondary:var(--panel-raised);--secondary-foreground:var(--text);--muted:var(--panel-raised);--muted-foreground:var(--text-dim);--accent:var(--panel-raised);--accent-foreground:var(--text);--destructive:var(--danger);--destructive-foreground:var(--on-mode);--border:var(--line-strong);--input:var(--line-strong);--ring:var(--tint)}.settings-shell{z-index:1;position:relative}.settings-main{width:min(100%,680px);margin:0 auto;padding:36px 0 30px}.settings-intro{margin-bottom:20px}.settings-intro h2{letter-spacing:-.015em;color:var(--text);font-size:24px;font-weight:500;line-height:1.2}.settings-intro p{color:var(--text-dim);margin-top:4px;font-size:13.5px}.settings-tabs{margin-top:18px}.settings-tabs a{text-decoration:none}.settings-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:28px}.settings-content{flex-direction:column;gap:32px;font-size:14px;display:flex}.settings-content>div+div,.settings-content>.danger-zone{border-top:1px solid var(--line);padding-top:32px}.settings-content .space-y-1>*+*{margin-top:4px}.settings-content .space-y-3>*+*,body.settings-mode [data-slot=dialog-content] .space-y-3>*+*{margin-top:12px}.settings-content .space-y-4>*+*{margin-top:16px}.settings-content .space-y-6>*+*,body.settings-mode [data-slot=dialog-content] .space-y-6>*+*,body.settings-mode [data-slot=dialog-content] .space-y-5>*+*{margin-top:20px}.settings-content header h2,.settings-content [data-slot=card-title]{letter-spacing:-.005em;color:var(--text);font-size:15px;font-weight:600;line-height:1.3}.settings-content header p{margin-top:2px}.settings-content .text-muted-foreground,.settings-content header p{color:var(--text-dim);line-height:1.5}.settings-content p{max-width:62ch}.settings-content [data-slot=label]{color:var(--text-dim);font-size:12.5px;font-weight:400}.settings-content [data-slot=input],body.settings-mode [data-slot=dialog-content] [data-slot=input]{height:42px;font-family:var(--font);color:var(--text);background:var(--bg);border:1px solid var(--line-strong);box-shadow:none;border-radius:8px;padding:0 12px;font-size:14px;transition:border-color .2s}.settings-content [data-slot=input]::placeholder,body.settings-mode [data-slot=dialog-content] [data-slot=input]::placeholder{color:color-mix(in oklch, var(--text-faint) 60%, var(--text-dim))}.settings-content [data-slot=input]:hover,body.settings-mode [data-slot=dialog-content] [data-slot=input]:hover{border-color:oklch(90% .02 240/.24)}.settings-content [data-slot=input]:focus-visible,body.settings-mode [data-slot=dialog-content] [data-slot=input]:focus-visible{border-color:var(--tint);outline:1px solid var(--tint);outline-offset:0;box-shadow:none}.settings-content [data-slot=input][aria-invalid=true],body.settings-mode [data-slot=dialog-content] [data-slot=input][aria-invalid=true]{border-color:oklch(70% .15 25/.6)}body.settings-mode .relative>[data-slot=input]:has(+button){padding-right:44px}body.settings-mode .relative>[data-slot=input]+button{width:44px;color:var(--text-dim);box-shadow:none;border-radius:0 8px 8px 0;justify-content:center}body.settings-mode .relative>[data-slot=input]+button:hover{color:var(--text)}body.settings-mode .text-red-600{color:var(--danger);font-size:12.5px}.settings-notice{color:var(--text-dim);flex-direction:column;align-items:flex-start;gap:10px;display:flex}.settings-status{color:var(--ok);font-size:13px}.settings-content [data-variant],body.settings-mode [data-slot=dialog-content] [data-variant]{height:auto;min-height:36px;font-family:var(--font);color:var(--text);border:1px solid var(--line-strong);box-shadow:none;cursor:pointer;background:0 0;border-radius:8px;padding:8px 14px;font-size:13.5px;font-weight:500;transition:color .2s,background .2s,border-color .2s}.settings-content [data-variant] svg,body.settings-mode [data-slot=dialog-content] [data-variant] svg{color:var(--text-dim)}.settings-content [data-variant]:hover,body.settings-mode [data-slot=dialog-content] [data-variant]:hover{background:var(--panel-raised)}.settings-content [data-variant=ghost],body.settings-mode [data-slot=dialog-content] [data-variant=ghost]{color:var(--text-dim);border-color:#0000}.settings-content [data-variant=ghost]:hover,body.settings-mode [data-slot=dialog-content] [data-variant=ghost]:hover{color:var(--text)}.settings-content [data-variant=default],body.settings-mode [data-slot=dialog-content] [data-variant=default]{color:var(--on-mode);background:var(--tint);border-color:var(--tint);font-weight:600}.settings-content [data-variant=default] svg,body.settings-mode [data-slot=dialog-content] [data-variant=default] svg{color:currentColor}.settings-content [data-variant=default]:hover,body.settings-mode [data-slot=dialog-content] [data-variant=default]:hover{background:color-mix(in oklch, var(--tint) 88%, white)}.settings-content [data-variant=destructive]{color:var(--danger);border-color:oklch(70% .15 25/.4)}.settings-content [data-variant=destructive]:hover{background:oklch(70% .15 25/.08);border-color:oklch(70% .15 25/.6)}body.settings-mode [data-slot=dialog-content] [data-variant=destructive]{color:var(--on-mode);background:var(--danger);border-color:var(--danger);font-weight:600}body.settings-mode [data-slot=dialog-content] [data-variant=destructive]:hover{background:color-mix(in oklch, var(--danger) 88%, white)}.settings-content [data-variant]:disabled,body.settings-mode [data-slot=dialog-content] [data-variant]:disabled{cursor:progress;opacity:.6}.passkey-list{border:1px solid var(--line);border-radius:12px}.passkey-empty{align-items:flex-start;gap:12px;padding:16px;display:flex}.passkey-empty>svg{width:18px;height:18px;color:var(--text-dim);flex:none;margin-top:2px}.passkey-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 12px 12px 16px;display:flex}.passkey-row .font-medium{overflow-wrap:anywhere}.passkey-row+.passkey-row{border-top:1px solid var(--line)}.passkey-glyph{width:34px;height:34px;color:var(--text-dim);background:var(--panel-raised);border:1px solid var(--line);border-radius:8px;flex:none;place-items:center;display:grid}.passkey-glyph svg{width:16px;height:16px}.passkey-badge{color:var(--text-dim);border:1px solid var(--line-strong);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:500}.passkey-meta{color:var(--text-dim);flex-wrap:wrap;gap:2px 12px;margin-top:2px;font-size:12.5px;display:flex}.settings-content .passkey-remove{flex:none;width:36px;padding:0}.settings-content .passkey-remove:hover{background:oklch(70% .15 25/.08)}.settings-content .passkey-remove:hover svg{color:var(--danger)}.passkey-register{border:1px solid var(--line);border-radius:12px;padding:16px}.passkey-register .text-xs{font-size:12.5px}.settings-content [data-slot=card]{width:100%;color:var(--text);border:0;border-top:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;gap:16px;margin-top:24px;padding:24px 0 0}.settings-content [data-slot=card-title] svg{color:var(--text-dim)}.settings-content [data-slot=card-description]{color:var(--text-dim);margin-top:2px}.recovery-codes{padding-top:12px}.recovery-codes-list{color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px 16px;padding:14px 16px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;display:grid}.recovery-codes .text-xs{font-size:12.5px}.danger-zone>summary{min-height:32px;color:var(--text-dim);cursor:pointer;align-items:center;gap:6px;font-size:13.5px;font-weight:500;list-style:none;transition:color .2s;display:inline-flex}.danger-zone>summary::-webkit-details-marker{display:none}.danger-zone>summary svg{width:16px;height:16px;transition:transform .2s var(--ease-calm)}.danger-zone[open]>summary svg{transform:rotate(90deg)}.danger-zone>summary:hover,.danger-zone[open]>summary{color:var(--text)}.danger-zone>summary:focus-visible{border-radius:6px}.danger-zone-body{flex-direction:column;align-items:flex-start;gap:14px;margin-top:12px;padding-left:22px;display:flex}.danger-zone-body p{max-width:56ch;color:var(--text-dim)}body.settings-mode [data-slot=dialog-overlay]{background:oklch(12% .01 245/.72)}body.settings-mode [data-slot=dialog-content]{--card:oklch(22% .015 245);font-family:var(--font);color:var(--text);background:var(--card);border:1px solid var(--line-strong);border-radius:14px;gap:20px;padding:24px;box-shadow:0 16px 40px #00000073}body.settings-mode [data-slot=dialog-content]>button:last-child{width:32px;height:32px;color:var(--text-dim);opacity:1;box-shadow:none;border-radius:8px;place-items:center;display:grid;top:12px;right:12px}body.settings-mode [data-slot=dialog-content]>button:last-child:hover{color:var(--text);background:var(--panel-raised)}body.settings-mode [data-slot=dialog-title]{letter-spacing:-.005em;padding-right:28px;font-size:16px;font-weight:600;line-height:1.3}body.settings-mode [data-slot=dialog-description]{color:var(--text-dim);font-size:14px;line-height:1.5}body.settings-mode [data-slot=dialog-footer]{gap:8px}body.settings-mode [data-slot=dialog-header]{gap:6px}.setup-glyph{width:44px;height:44px;color:var(--text-dim);background:var(--panel-raised);border:1px solid var(--line);border-radius:12px;place-items:center;margin-bottom:6px;display:grid}.setup-glyph svg{width:20px;height:20px}.setup-qr{border:1px solid var(--line);border-radius:12px;padding:16px}.setup-divider-label{color:var(--text-dim);background:var(--card);padding:0 8px;font-size:12.5px;position:relative}.setup-key{background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;align-items:stretch;width:100%;min-height:42px;display:flex;overflow:hidden}body.settings-mode .setup-key-input{min-width:0;height:auto;color:var(--text);background:0 0;border:0;border-radius:0;flex:1;padding:0 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}body.settings-mode .setup-key-input:focus-visible{outline:none}.setup-key:focus-within{border-color:var(--tint)}.setup-key-copy{width:44px;color:var(--text-dim);border:0;border-left:1px solid var(--line);cursor:pointer;background:0 0;place-items:center;transition:color .2s,background .2s;display:grid}.setup-key-copy:hover{color:var(--text);background:var(--panel-raised)}.setup-key-copy:focus-visible{outline-offset:-2px}.setup-key-copy svg{width:16px;height:16px}@media (width<=640px){.settings-main{padding-top:24px}.settings-panel{padding:20px 16px}.settings-content{gap:28px}.settings-content>div+div,.settings-content>.danger-zone{padding-top:28px}.settings-content [data-slot=input],body.settings-mode [data-slot=dialog-content] [data-slot=input]{height:44px;font-size:16px}.settings-content [data-variant],body.settings-mode [data-slot=dialog-content] [data-variant]{min-height:44px}.settings-content .passkey-remove{width:44px}.settings-tabs .tab{align-items:center;min-height:44px;display:inline-flex}.danger-zone>summary{min-height:44px}body.settings-mode [data-slot=dialog-content]{padding:20px 16px}body.settings-mode [data-slot=dialog-content]>button:last-child{width:44px;height:44px;top:8px;right:8px}.auth-shell{min-height:calc(100svh - 76px)}.auth-main{padding:24px 0}.auth-panel{padding:20px 16px}.auth-title{font-size:22px}.auth-input{font-size:16px}.auth-submit,.auth-ghost,.auth-check,.brand-link{min-height:44px}.auth-link{margin:-14px -6px;padding:14px 6px}.auth-label-row .auth-link{margin:-20px -6px -6px;padding:20px 6px 6px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}#app{opacity:1}}.deck-nav a{text-decoration:none}@media (width<=640px){.deck-head{flex-wrap:wrap}.deck-nav{order:3;width:100%}.deck-nav .tab{text-align:center;flex:1;padding:11px 12px}}.heating-page{gap:20px;display:grid}.heating-intro h2{letter-spacing:-.015em;color:var(--text);font-size:24px;font-weight:500;line-height:1.2}.heating-intro p{max-width:68ch;color:var(--text-dim);margin-top:4px;font-size:13.5px}.heating-page .deck-alert{margin:0}.heating-notice{color:var(--text);background:oklch(86% .12 95/.06);border:1px solid oklch(86% .12 95/.35);border-radius:14px;gap:10px;padding:16px 20px;font-size:13.5px;display:grid}.heating-notice b{color:var(--attention);font-weight:600}.heating-notice code,.heating-prompt code{font-family:var(--font);font-size:13px}.heating-prompt{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.heating-prompt code{background:var(--bg);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;flex:280px;min-width:0;padding:8px 10px}.heating-prompt .ghost-btn{align-items:center;gap:6px;display:inline-flex}.heating-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.heating-figure{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:4px;padding:20px;display:flex}.heating-figure .k,.heating-figure .n{color:var(--text-dim);font-size:12.5px}.heating-figure .v{letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:var(--text);font-size:24px;font-weight:500}.heating-figure .u{letter-spacing:0;color:var(--text-dim);margin-left:4px;font-size:13px;font-weight:400}.heating-verdict{color:var(--text);border:1px solid color-mix(in oklch, var(--mode) 35%, transparent);background:color-mix(in oklch, var(--mode) 12%, transparent);border-radius:999px;align-self:flex-start;margin-top:6px;padding:3px 9px;font-size:12px;font-weight:500}.heating-verdict.is-worse{color:var(--attention);background:oklch(86% .12 95/.08);border-color:oklch(86% .12 95/.35)}.heating-panel{background:var(--panel);border:1px solid var(--line);border-radius:14px;gap:14px;min-width:0;padding:20px;display:grid}.heating-panel-head{gap:2px;display:grid}.heating-panel-head .section-note{max-width:80ch}.heating-empty{color:var(--text-dim);font-size:13.5px}.heating-chart{min-width:0}.heating-chart svg{touch-action:pan-y;display:block;overflow:visible}.heating-grid{stroke:var(--line)}.heating-baseline{stroke:var(--line-strong)}.heating-axis{fill:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.heating-hit{fill:#0000}.heating-day.is-active .heating-hit,.heating-week.is-active .heating-hit{fill:oklch(90% .02 240/.04)}.heating-bar-ac{fill:var(--mode)}.heating-bar-gas{fill:var(--text-faint)}.heating-ratio-line{fill:none;stroke:var(--mode);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.heating-ratio-dot{fill:var(--mode);stroke:var(--panel);stroke-width:2px}.heating-break-even{stroke:var(--text-dim);stroke-width:2px;stroke-dasharray:4 3}.heating-detail{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 16px;margin-top:8px;font-size:12.5px;display:flex}.heating-detail b{color:var(--text);font-weight:500}.heating-detail span{align-items:center;gap:6px;display:inline-flex}.heating-legend{color:var(--text-dim);flex-wrap:wrap;gap:6px 18px;font-size:12.5px;list-style:none;display:flex}.heating-legend li{align-items:center;gap:6px;display:inline-flex}.heating-key{border-radius:3px;width:10px;height:10px;display:inline-block}.heating-key-ac{background:var(--mode)}.heating-key-gas{background:var(--text-faint)}.heating-key-break-even{border-top:2px dashed var(--text-dim);border-radius:0;width:14px;height:0}.heating-table-wrap{overflow-x:auto}.heating-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.heating-table th{color:var(--text-dim);text-align:right;white-space:nowrap;border-bottom:1px solid var(--line);padding:0 12px 8px;font-size:12.5px;font-weight:400}.heating-table td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--line);padding:9px 12px}.heating-table th:first-child,.heating-table td:first-child{text-align:left;padding-left:0}.heating-table tbody tr:last-child td{border-bottom:0}.heating-partial{color:var(--text-dim)}.heating-sources{color:var(--text-dim);gap:6px;max-width:90ch;padding-left:18px;font-size:12.5px;display:grid}@media (width<=760px){.heating-summary{grid-template-columns:1fr}}@media (width<=640px){.heating-panel,.heating-figure{padding:16px}.heating-prompt .ghost-btn{min-height:44px}}.heating-dot-gas{fill:var(--text-faint);fill-opacity:.5}.heating-dot-ac{fill:var(--mode);stroke:var(--panel);stroke-width:1.5px}.heating-dot-ring{fill:none;stroke:var(--text);stroke-width:1.5px}.heating-fit-line{fill:none;stroke:var(--text-dim);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.heating-key-fit{border-top:2px solid var(--text-dim);border-radius:0;width:14px;height:0}.heating-price-line{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.heating-price-line.is-electricity{stroke:var(--mode)}.heating-price-line.is-gas{stroke:var(--text-faint)}.heating-price-dot{stroke-width:2px;stroke:var(--panel)}.heating-price-dot.is-electricity{fill:var(--mode)}.heating-price-dot.is-gas{fill:var(--text-faint)}.is-estimated .heating-price-dot{fill:var(--panel);stroke-width:1.5px}.is-estimated .heating-price-dot.is-electricity{stroke:var(--mode)}.is-estimated .heating-price-dot.is-gas{stroke:var(--text-faint)}.heating-note{color:var(--text-dim);font-size:13px}.heating-verdict.is-pending{color:var(--text-dim);border-color:var(--line);background:0 0}.heating-ratio-dot.is-partial{fill:var(--panel);stroke:var(--mode);stroke-width:1.5px}.heating-bar-ac.is-provisional,.heating-bar-gas.is-provisional{fill-opacity:.55}
