.device-frame .wifi-network-overlay{padding-bottom:64px}.wifi-network-dialog button,.wifi-network-dialog input,.wifi-network-dialog .wifi-dialog-actions button{min-height:48px}.wifi-dialog-header,.wifi-dialog-actions{flex-shrink:0}.wifi-dialog-scroll{min-height:0}.wifi-network-copy strong,.wifi-credential-area strong{overflow-wrap:anywhere}.wifi-signal,.wifi-lock{flex-shrink:0}.wifi-dialog-close{min-width:48px}.wifi-network-overlay{z-index:30;background:#120f10c7;justify-content:center;align-items:flex-end;padding:18px 12px 14px;display:flex;position:absolute;inset:0}.wifi-network-dialog{width:min(100%,458px);max-height:calc(100% - 20px);color:var(--primary-text);background:#2b2627;border:1px solid #5d5355;border-radius:13px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 18px 45px #0009}.wifi-dialog-header{border-bottom:1px solid var(--border-muted);background:#231f20;justify-content:space-between;align-items:flex-start;padding:20px 20px 14px;display:flex}.wifi-dialog-kicker,.wifi-eyebrow,.wifi-list-label{color:#c76a3f;letter-spacing:1.2px;margin:0;font-size:11px;font-weight:700}.wifi-dialog-header h2{margin:4px 0 0;font-size:25px;font-weight:500}.wifi-dialog-close{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;width:40px;height:40px;margin:-7px -7px 0 0;padding-bottom:4px;font-size:30px;line-height:1}.wifi-dialog-close:active,.wifi-manual-trigger:active,.wifi-current-action:active{background:#ffffff1a}.wifi-dialog-scroll{overscroll-behavior:contain;padding:16px 16px 18px;overflow-y:auto}.wifi-dialog-intro{color:var(--light-text);margin:0 0 16px;font-size:15px;line-height:1.35}.wifi-current-panel{background:#332d2e;border:1px solid #786669;border-radius:8px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:13px;display:grid}.wifi-current-mark{border:3px solid #cf6a3e;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 3px #cf6a3e29}.wifi-current-panel strong,.wifi-network-copy strong,.wifi-manual-heading strong{font-size:16px;font-weight:500;display:block}.wifi-current-panel strong{margin:3px 0 1px}.wifi-current-panel span:not(.wifi-current-mark):not(.wifi-eyebrow){color:var(--light-text);font-size:13px}.wifi-current-action{color:#fff;min-height:34px;font:inherit;cursor:pointer;background:0 0;border:1px solid #8c7778;border-radius:4px;grid-column:2;justify-self:start;margin-top:2px;padding:0 10px;font-size:13px}.wifi-list-label{margin:21px 4px 8px}.wifi-network-list{border-top:1px solid #51484a}.wifi-network-row{width:100%;min-height:62px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #51484a;align-items:center;gap:12px;padding:9px 7px;display:flex;position:relative}.wifi-network-row:active:not(:disabled),.wifi-network-row.is-selected{background:#3b3435}.wifi-network-row.is-selected{box-shadow:inset 3px 0 #cf6a3e}.wifi-network-row.is-disabled{cursor:not-allowed;opacity:.48}.wifi-network-copy{flex:1;min-width:0}.wifi-network-copy small{color:var(--light-text);margin-top:3px;font-size:13px;display:block}.wifi-signal{align-items:end;gap:2px;width:22px;height:20px;display:flex}.wifi-signal i{background:#ddd;width:5px;display:block}.wifi-signal i:first-child{height:7px}.wifi-signal i:nth-child(2){height:13px}.wifi-signal i:nth-child(3){height:19px}.is-disabled .wifi-signal i{background:var(--light-text)}.wifi-lock{background:#ddd;border-radius:1px;width:12px;height:10px;margin:6px 3px 0 0;position:relative}.wifi-lock:before{content:"";border:2px solid #ddd;border-bottom:0;border-radius:7px 7px 0 0;width:8px;height:8px;position:absolute;top:-7px;left:2px}.wifi-connected,.wifi-selected{color:#cf6a3e;font-size:11px;font-weight:700}.wifi-selected{font-size:10px;position:absolute;bottom:7px;right:7px}.wifi-manual-trigger{color:#fff;width:100%;min-height:47px;font:inherit;cursor:pointer;background:0 0;border:1px dashed #74686a;border-radius:7px;margin-top:12px;font-size:15px}.wifi-credential-area{background:#322c2d;border-left:3px solid #c76a3f;margin-top:14px;padding:13px 14px}.wifi-credential-area strong{margin-top:3px;font-size:16px;font-weight:500;display:block}.wifi-credential-area label{color:var(--light-text);margin:13px 0 6px;font-size:13px;display:block}.wifi-credential-area input{color:#fff;background:#211d1e;border:1px solid #73686a;border-radius:4px;width:100%;height:42px;padding:0 10px;font-size:16px}.wifi-saved-ready,.wifi-password-note{color:#c7bbbd;margin:8px 0 0;font-size:13px;line-height:1.35}.wifi-manual-form{background:#332d2e;border:1px solid #74686a;border-radius:8px;margin-top:14px;padding:14px}.wifi-manual-heading{justify-content:space-between;align-items:start;margin-bottom:13px;display:flex}.wifi-manual-heading strong{margin-top:3px}.wifi-manual-heading button{color:var(--text-link);font:inherit;cursor:pointer;background:0 0;border:0;font-size:13px}.wifi-manual-form label{color:var(--light-text);margin:12px 0 6px;font-size:13px;display:block}.wifi-manual-form input{color:#fff;background:#211d1e;border:1px solid #73686a;border-radius:4px;width:100%;height:42px;padding:0 10px;font-size:16px}.wifi-validation{color:var(--error-text);margin:13px 2px 0;font-size:13px}.wifi-disclosure{color:#b3a5a7;margin:17px 2px 0;font-size:12px;line-height:1.4}.wifi-dialog-actions{border-top:1px solid var(--border-muted);background:#231f20;justify-content:flex-end;gap:10px;padding:13px 16px;display:flex}.wifi-dialog-actions button{min-height:40px;font:inherit;cursor:pointer;border-radius:4px;padding:0 15px;font-size:15px}.wifi-cancel-button{color:#fff;background:0 0;border:1px solid #716668}.wifi-use-button{color:#251d1d;background:#c7673a;border:1px solid #d2784c;font-weight:700}.wifi-network-dialog button:focus-visible,.wifi-network-dialog input:focus-visible{outline-offset:2px;outline:2px solid #fff}@media (height<=620px){.wifi-network-overlay{padding-top:8px;padding-bottom:8px}.wifi-dialog-header{padding-block:13px 10px}.wifi-dialog-scroll{padding-block:12px}.wifi-list-label{margin-top:14px}.wifi-network-row{min-height:54px}}.wifi-configuration-screen{flex-direction:column;flex:1;min-width:0;padding-bottom:80px;display:flex}.wifi-configuration-intro{padding:16px var(--side-padding) 14px}.wifi-configuration-intro .description-label{margin:0;font-size:1rem;line-height:1.35}.wifi-configuration-intro .hint-label{margin:8px 0 0;font-size:.875rem;line-height:1.35}.wifi-connected-network,.wifi-controller-selection{margin:0 var(--side-padding);background:var(--cell-background);border:1px solid #5d5557}.wifi-connected-network{border-radius:var(--radius-card) var(--radius-card) 0 0;border-bottom:0;align-items:center;gap:13px;min-height:94px;padding:14px;display:flex}.wifi-connection-indicator{border:1px solid var(--positive);border-radius:50%;flex-shrink:0;align-items:end;gap:3px;width:34px;height:32px;padding:5px;display:flex}.wifi-connection-indicator span{background:var(--positive);border-radius:3px;width:5px;display:block}.wifi-connection-indicator span:first-child{height:7px}.wifi-connection-indicator span:nth-child(2){height:13px}.wifi-connection-indicator span:nth-child(3){height:19px}.wifi-connected-copy,.wifi-controller-selection{min-width:0}.wifi-connected-copy{gap:3px;display:grid}.wifi-section-kicker{overflow-wrap:anywhere;min-width:0;color:var(--light-text);letter-spacing:.08em;font-size:.75rem;font-weight:700;line-height:1.2}.wifi-connected-copy strong,.wifi-selected-ssid{overflow-wrap:anywhere;color:var(--primary-text);font-size:1.375rem;font-weight:500;line-height:1.12}.wifi-connected-copy>span:last-child{color:var(--light-text);font-size:1rem}.wifi-controller-selection{border-radius:0 0 var(--radius-card) var(--radius-card);padding:14px}.wifi-selection-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;display:flex}.wifi-readiness{color:var(--light-text);flex:none;font-size:.8125rem;font-weight:500}.wifi-readiness.is-ready{color:var(--positive)}.wifi-selected-ssid{display:block}.wifi-selection-note{color:var(--light-text);margin:7px 0 0;font-size:.9375rem;line-height:1.3}.wifi-network-actions{margin:16px var(--side-padding) 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.wifi-network-actions .btn{white-space:normal;width:100%;min-width:0;height:auto;min-height:52px;padding:8px 10px;font-size:1rem;line-height:1.13}.wifi-screen-validation{margin:10px var(--side-padding) 0;color:var(--error-text);font-size:.9375rem;line-height:1.3}.wifi-confirm-action{margin:24px 0 0}.wifi-confirm-action .btn{height:auto;min-height:52px;padding-block:10px;font-size:1rem}.wifi-simulation-panel{margin:auto var(--side-padding) 0;border:1px dashed var(--border-muted);border-radius:var(--radius-card);gap:11px;padding:13px;display:grid}.wifi-simulation-actions{gap:10px;display:grid}.wifi-simulation-panel .btn-block{white-space:normal;width:100%;height:auto;min-height:48px;padding-block:9px;font-size:1rem}.wifi-simulation-panel .description-label{margin:0;font-size:1rem;line-height:1.35}@media (width<=370px){.wifi-network-actions{gap:6px}.wifi-network-actions .btn{padding-inline:6px;font-size:.9375rem}.wifi-connected-copy strong,.wifi-selected-ssid{font-size:1.3125rem}}@font-face{font-family:Roboto;src:url(/fonts/roboto_thin.ttf);font-weight:100}@font-face{font-family:Roboto;src:url(/fonts/roboto_light.ttf);font-weight:300}@font-face{font-family:Roboto;src:url(/fonts/roboto_regular.ttf);font-weight:400}@font-face{font-family:Roboto;src:url(/fonts/roboto_medium.ttf);font-weight:500}@font-face{font-family:Roboto;src:url(/fonts/roboto_bold.ttf);font-weight:700}@font-face{font-family:Roboto;src:url(/fonts/roboto_black.ttf);font-weight:900}@font-face{font-family:Roboto;src:url(/fonts/roboto_italic.ttf);font-style:italic}:root{--app-background:#352f30;--header-background:#231f20;--cell-background:#231f20;--primary-text:#fff;--light-text:#9f9396;--error-text:#ff2b2b;--error-alpha10:#ff2b2b1a;--text-link:#3982c6;--heating-accent:#fe5b00;--light-accent:#f2c94c;--timer-accent:#27bedf;--border-muted:#3b3536;--menu-divider:#282423;--slider-track:#6c6063;--slider-track-inactive:#777174;--slider-thumb-inactive:#9f9396;--slider-track-disabled:#3f3c3f;--switch-track-unchecked:#787880;--switch-track-disabled:#7878804d;--positive:#6fcf97;--positive-alpha10:#6fcf971a;--unreachable-alert-bg:#51484a;--overlay-bg:#242021cc;--scrollbar:#919090;--tab-icons:#99a5b2;--menu-labels:#798796;--touch-target:48px;--button-height:52px;--radius-pill:100px;--radius-card:10px;--side-padding:16px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{color:var(--primary-text);background:#171415;font-family:Roboto,system-ui,sans-serif;font-size:18px}button,input,select,textarea{font-family:inherit}.device-frame{background:var(--app-background);border-left:1px solid #4a4446;border-right:1px solid #4a4446;flex-direction:column;width:100%;max-width:485px;height:100%;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 32px #00000073}@media (width<=485px){.device-frame{box-shadow:none;border-left:0;border-right:0}}@media (width>=560px){#root{justify-content:center;align-items:center;display:flex}.device-frame{border:1px solid #4a4446;width:100%;height:min(896px,100%);margin:0 auto}}@media (width>=1100px){.device-frame{max-width:485px}}.android-status{background:var(--header-background);color:#fff;justify-content:space-between;align-items:flex-start;height:28px;min-height:28px;padding:4px 10px 0;font-size:17px;font-weight:400;line-height:20px;display:flex}.status-icons{align-items:center;gap:6px;height:18px;padding-top:2px;display:flex}.status-wifi{clip-path:polygon(0 0,100% 0,67% 100%,33% 100%);background:#fff;border-radius:2px 2px 7px 7px;width:18px;height:13px}.status-signal{clip-path:polygon(0 100%,0 70%,28% 70%,28% 42%,57% 42%,57% 14%,86% 14%,86% 100%);background:#fff;width:16px;height:16px}.status-battery{border:2px solid #fff;border-radius:2px;width:10px;height:16px;position:relative}.status-battery:after{content:"";background:#fff;width:4px;height:2px;position:absolute;top:-4px;right:1px}.toolbar{background:var(--header-background);z-index:5;align-items:center;height:76px;min-height:76px;padding:0 10px;display:flex;position:relative}.toolbar-title{text-align:center;white-space:nowrap;text-overflow:ellipsis;font-size:22px;font-weight:500;position:absolute;left:56px;right:56px;overflow:hidden}.toolbar-logo{width:auto;height:31px;margin:0 auto;display:block}.menu-toolbar{justify-content:flex-start}.menu-toolbar .toolbar-logo{position:absolute;left:50%;transform:translate(-50%)}.home-toolbar .icon-button{width:52px;height:52px}.home-toolbar .icon-button img{width:34px;height:34px}.icon-button{width:var(--touch-target);height:var(--touch-target);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.icon-button:active{background:#ffffff14}.icon-button img{object-fit:contain;width:22px;height:22px}.icon-button:focus-visible,button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #fff}.screen-body{flex-direction:column;flex:1;display:flex;overflow-y:auto}.screen-body::-webkit-scrollbar{width:4px}.screen-body::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:2px}.title-label{color:var(--primary-text);font-size:20px;font-weight:500}.description-label{color:var(--primary-text);font-size:18px;font-weight:400}.hint-label{color:var(--light-text);font-size:14px}.description-hint-label{color:var(--light-text);font-size:16px}.error-label{color:var(--error-text);font-size:14px}.field-help-button{border:1px solid var(--light-text);width:28px;min-width:28px;height:28px;color:var(--primary-text);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;line-height:1;display:inline-flex;position:relative}.field-help-button:after{content:"";position:absolute;inset:-8px}.field-help-button:active{background:#ffffff1f}.link-label{color:var(--text-link);cursor:pointer;text-decoration:none}.help-illustration{object-fit:cover;border-radius:var(--radius-card);background:var(--border-muted);width:100%;max-height:180px;margin:0 0 14px;display:block}@media (height<=640px){.help-illustration{max-height:120px}}.btn{height:var(--button-height);border-radius:var(--radius-pill);cursor:pointer;border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-size:16px;transition:opacity .15s;display:inline-flex}.btn:active{opacity:.75}.btn-main{background:var(--app-background);border-color:var(--primary-text);color:var(--primary-text)}.btn-main:disabled{border-color:var(--light-text);color:var(--light-text);cursor:default}.btn-secondary{background:var(--cell-background);border-color:var(--cell-background);color:#fff}.btn-destructive{background:var(--error-alpha10);border-color:var(--error-text);color:var(--error-text)}.btn-positive{background:var(--positive-alpha10);border-color:var(--positive);color:var(--positive)}.btn-selectable{background:var(--cell-background);border-color:var(--cell-background);color:var(--border-muted)}.btn-selectable.selected{background:var(--border-muted);border-color:var(--border-muted);color:#fff}.btn-block{width:65%;margin:0 auto;display:flex}.btn-filter{height:36px;padding:0 18px;font-size:14px}.cell{background:var(--cell-background);padding:16px var(--side-padding);border-bottom:2px solid var(--border-muted);border-radius:0;margin:0}.cell-row{align-items:center;gap:12px;display:flex}.cell-clickable{cursor:pointer}.cell-clickable:active{filter:brightness(1.15)}.separator{background:var(--border-muted);height:2px}.setup-connections{padding:16px var(--side-padding) 24px;flex:none;gap:16px;display:grid}.setup-connections .wizard-progress{line-height:1.4}.setup-connections [role=radiogroup]{gap:8px;display:grid}.setup-connections .cell{width:100%;color:var(--primary-text);border:0;margin:0;font-size:16px;line-height:1.4}.setup-connections .connection-label,.setup-connections .cell>div{text-align:left;overflow-wrap:anywhere;flex:1;min-width:0}.setup-connections .connection-next{width:100%;margin:8px 0 0}.menu-row{cursor:pointer;width:100%;min-height:52px;color:var(--primary-text);text-align:left;box-shadow:inset 0 -1px 0 var(--menu-divider);background:0 0;border:none;align-items:center;gap:16px;padding:4px 16px;font-family:inherit;font-size:18px;font-weight:400;display:flex}.menu-row:active{background:#ffffff0d}.menu-row img{object-fit:contain;width:22px;height:22px}.menu-separator{background:var(--menu-divider);height:1px;margin:0}.user-list-subtitle{margin:16px}.manage-users-list{flex:none;padding-bottom:16px}.manage-users-actions{background:var(--app-background);flex:none;gap:12px;margin-top:auto;padding:16px 0;display:grid;position:sticky;bottom:0}.manage-users-actions .btn{min-height:var(--button-height);height:auto;padding-block:14px}@media (width<=559px){.manage-users-actions{padding-bottom:64px}}.user-row{background:var(--cell-background);width:100%;min-height:0;box-shadow:none;color:var(--primary-text);text-align:left;cursor:pointer;border:none;border-radius:0;align-items:center;gap:16px;margin:0 0 16px;padding:16px;font-family:inherit;display:flex}.user-row:active{filter:brightness(1.15)}.user-row-body{flex:1;min-width:0}.user-row-name{color:var(--primary-text);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-weight:400;overflow:hidden}.user-row-detail{color:var(--light-text);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:16px;overflow:hidden}.menu-site{background:var(--cell-background);height:54px;color:var(--primary-text);justify-content:center;align-items:center;font-size:18px;display:flex}.main-menu{border-top:1px solid var(--menu-divider)}.section-heading{background:var(--app-background);height:56px;min-height:56px;color:var(--primary-text);box-shadow:inset 0 -1px 0 var(--menu-divider);justify-content:center;align-items:center;gap:8px;margin:0;padding:0 16px;font-size:18px;font-weight:600;display:flex}.section-heading img{object-fit:contain;width:20px;height:20px}.tab-layout{background:var(--header-background);display:flex}.tab-item{color:var(--light-text);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;height:53px;padding:0;font-size:clamp(18px,5vw,24px);font-weight:400}.tab-item:disabled{cursor:default;opacity:.45}.tab-item.active{color:var(--primary-text);border-bottom-color:#fff;font-weight:700}.home-tab-strip{border-top:2px solid var(--border-muted);background:#2b2627;height:28px;min-height:28px}.zone-heading{background:var(--header-background);border-bottom:2px solid var(--border-muted);color:#fff;align-items:center;height:62px;padding:0 20px;font-size:24px;font-weight:700;display:flex}.zone-heading-controls{grid-template-rows:50px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:0 12px;height:auto;min-height:62px;padding:6px 16px 6px 20px;display:grid}.zone-heading-controls .timer-options,.zone-heading-light .timer-options{margin-top:12px}.zone-heading-name{white-space:nowrap;text-overflow:ellipsis;grid-area:1/1;min-width:0;overflow:hidden}.zone-heading-actions{cursor:default;display:contents}.zone-collapse-toggle{width:100%;min-height:48px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex}.zone-collapse-chevron{color:var(--light-text);flex:none;font-size:16px}.zone-collapse-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.zone-heading-controls .timer-control-compact{display:contents}.zone-heading-controls .timer-control-header{grid-area:1/2}.zone-heading-controls .switch{grid-area:1/3}.zone-heading-controls .timer-options{grid-area:2/1/auto/-1}.zone-heading-controls .zone-heading-slider{cursor:default;grid-area:4/1/auto/-1;margin-top:4px;padding:0 4px 4px 0}.zone-heading-controls .zone-heading-slider .slider{width:calc(100% - 4px);margin-left:4px}.zone-heading-controls .zone-heading-light{cursor:default;grid-area:5/1/auto/-1;grid-template-rows:50px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:0 12px;display:grid}.zone-heading-light .zone-level{grid-area:1/1}.zone-heading-light .timer-control-compact{display:contents}.zone-heading-light .timer-control-header{grid-area:1/2}.zone-heading-light .switch{grid-area:1/3}.zone-heading-light .timer-options{grid-area:2/1/auto/-1}.zone-heading-light .zone-heading-light-note{grid-area:3/1/auto/-1;margin:6px 0 4px}.zone-heading-light-slider{grid-area:4/1/auto/-1;padding:0 4px 4px}.zone-light-level{color:var(--light-accent)}.appliance-zone-group+.appliance-zone-group{border-top:5px solid #2b2627;margin-top:10px}.appliance-row{padding:10px 16px 16px 20px}.appliance-zone-group>.appliance-row{margin-left:20px}.appliance-row+.appliance-row{margin-top:0}.appliance-title-row{align-items:center;gap:12px}.appliance-disclosure{cursor:pointer;min-width:44px;min-height:44px;color:inherit;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;margin:-11px -11px -11px 0;padding:0;display:flex}.appliance-disclosure:focus-visible{outline:2px solid var(--heating-accent,#e07a2f);outline-offset:2px}.appliance-row .appliance-name{font-size:23px;font-weight:700;line-height:1.15}.appliance-heat-row{cursor:default;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-top:10px;display:grid}.appliance-row .appliance-power{align-items:center;gap:12px;font-size:22px;font-weight:500;display:flex}.appliance-heat-row .appliance-power{grid-area:1/1}.appliance-heat-row .timer-control-compact{display:contents}.appliance-heat-row .timer-control-header{grid-area:1/2;justify-self:end}.appliance-heat-row .switch{grid-area:1/3}.appliance-heat-row .timer-toggle{padding:0 12px}.appliance-heat-row .timer-options{grid-area:2/1/auto/-1}.appliance-dimmer{cursor:default;margin-top:14px;padding:0 4px}.appliance-light-row{cursor:default;align-items:center;gap:12px;margin-top:14px;display:flex}.appliance-light-row .switch{margin-left:auto}@media (width<=380px){.appliance-zone-group>.appliance-row .appliance-heat-row{column-gap:6px}.appliance-zone-group>.appliance-row .appliance-power{flex-wrap:wrap;gap:4px}.appliance-zone-group>.appliance-row .appliance-heat-row .timer-control-compact .timer-toggle{gap:6px;padding-inline:8px}}.appliances-home .appliance-zone-group>.appliance-row{border-left:1px solid #62595a;margin-left:16px;padding-left:15px}.appliances-home .appliance-zone-group>.appliance-row+.appliance-row{border-top:0}.appliances-home .appliances-zone-heading{background:var(--header-background);border-bottom:1px solid var(--border-muted);height:auto;min-height:0;font-size:inherit;padding:0;display:block}.appliances-home .appliances-zone-title-row{align-items:center;height:48px;min-height:48px;padding:0 16px 0 20px;display:flex}.appliances-home .appliances-zone-title-row .zone-heading-name{min-width:0;color:var(--primary-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:24px;font-weight:700;overflow:hidden}.appliances-home .appliances-zone-title-row .zone-collapse-toggle{justify-content:space-between;width:auto;min-width:100%;min-height:48px;margin:0}.appliances-home .appliances-zone-title-row .zone-collapse-chevron{border-right:2px solid var(--primary-text);border-bottom:2px solid var(--primary-text);color:#0000;width:14px;height:14px;margin-right:4px;font-size:0;transform:rotate(45deg)translateY(-3px)}.appliances-home .appliances-zone-title-row .zone-collapse-toggle[aria-expanded=false] .zone-collapse-chevron{transform:rotate(-45deg)translate(-2px,2px)}.appliances-home .appliances-zone-master-controls{background:var(--cell-background);display:block}.appliances-home .appliances-control-line{border-top:1px solid var(--border-muted);grid-template-rows:52px auto;grid-template-columns:minmax(0,1fr) 14px 76px 4px 75px;align-items:center;gap:0;min-height:52px;padding:0 16px 0 20px;display:grid}.appliances-home .appliances-control-line>.slider,.appliances-home .appliances-control-leading{grid-area:1/1;width:100%;min-width:0}.appliances-home .appliances-control-line>.slider{margin:0}.appliances-home .slider::-webkit-slider-thumb{width:26px;height:26px}.appliances-home .slider::-moz-range-thumb{width:26px;height:26px}.appliances-home .appliances-control-leading{height:1px;display:block}.appliances-home .appliances-compact-legacy-readout{display:none}.appliances-home .timer-control-clock{display:contents}.appliances-home .timer-control-clock .timer-control-header{grid-area:1/3;justify-content:flex-end;align-items:center;width:76px;height:40px;display:flex}.appliances-home .timer-control-clock .timer-toggle{border:1px solid var(--border-muted);background:0 0;justify-content:center;gap:0;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}.appliances-home .timer-control-clock .timer-toggle-title,.appliances-home .timer-control-clock .timer-toggle-value,.appliances-home .timer-control-clock .timer-toggle-chevron{display:none}.appliances-home .timer-control-clock .timer-toggle-active{border-color:var(--timer-accent);width:76px;min-width:76px;color:var(--timer-accent);white-space:nowrap;justify-content:flex-start;gap:4px;padding:0 6px;font-size:14px}.appliances-home .timer-control-clock .timer-toggle-active .timer-toggle-value{display:inline}.appliances-home .timer-control-clock .timer-options{grid-area:2/1/auto/-1;margin:8px 0 0;padding:0 0 3px}.appliances-home .appliances-timer-slot{grid-area:1/3;width:76px;height:40px}.appliances-home .appliance-power.appliances-power-button{border:1px solid var(--border-muted);width:75px;min-width:75px;height:40px;min-height:40px;color:var(--light-text);cursor:pointer;background:0 0;border-radius:22px;grid-area:1/5;justify-content:center;align-items:center;gap:4px;padding:0 6px;font-size:17px;font-weight:500;display:inline-flex}.appliances-home .appliance-zone-group>.appliance-row .appliances-power-button{flex-wrap:nowrap}.appliances-home .appliance-power.appliances-power-button.is-heating.is-on{border-color:var(--heating-accent);color:var(--heating-accent);background:#fe5b000f}.appliances-home .appliance-power.appliances-power-button.is-light.is-on{border-color:var(--light-accent);color:var(--light-accent);background:#f2c94c0f}.appliances-home .appliance-power.appliances-power-button:disabled,.appliances-home .timer-control-clock .timer-toggle:disabled{opacity:.4;cursor:default}.appliances-home .appliance-power.appliances-power-button:focus-visible,.appliances-home .timer-control-clock .timer-toggle:focus-visible,.appliances-home .appliances-control-line>.slider:focus-visible{outline-offset:2px;outline:2px solid #fff}.appliances-home .appliance-controls{margin-top:0}.appliances-home .appliance-row{border-bottom-width:1px;padding:0 16px 0 15px}.appliances-home .appliance-title-row{height:40px;min-height:40px}.appliances-home .appliance-disclosure{width:40px;min-width:40px;height:40px;min-height:40px;margin:0 -8px 0 0}.appliances-home .appliance-row .appliance-name{font-size:18px;font-weight:700}.appliances-home .appliance-heat-row,.appliances-home .appliance-light-row .appliances-control-line{border-top:0;margin-top:0;padding-left:0;padding-right:0}.appliances-home .appliance-light-row{margin-top:0;display:block}.appliances-home .appliance-light-row .appliances-control-line{border-top:0}.appliances-home .appliance-row>.appliance-controls+.appliance-light-row{margin-top:0}.appliances-home .appliance-row .appliances-control-line{grid-template-columns:minmax(0,1fr) 14px 76px 4px 75px;column-gap:0}.appliances-home .appliance-zone-group>.appliance-row .appliance-title-row{min-height:40px}@media (width<=390px){.appliances-home .appliances-control-line,.appliances-home .appliance-row .appliances-control-line{grid-template-columns:minmax(0,1fr) 12px 72px 4px 67px}.appliances-home .appliances-zone-master-controls .appliances-control-line{padding-inline:14px 12px}.appliances-home .appliance-row{padding-right:12px}.appliances-home .appliance-zone-group>.appliance-row{padding-left:11px}.appliances-home .appliances-zone-title-row{padding-left:16px}.appliances-home .appliance-power.appliances-power-button{width:67px;min-width:67px;padding-inline:5px;font-size:16px}.appliances-home .timer-control-clock .timer-control-header,.appliances-home .appliances-timer-slot{width:72px}.appliances-home .timer-control-clock .timer-toggle-active{width:72px;min-width:72px;padding-inline:5px;font-size:13px}}.appliances-home{background:#352f30;padding:14px 10px 24px}.appliances-home .appliance-zone-group{background:#231f20;border:1px solid #70686a;border-radius:10px;margin:0 0 18px;overflow:visible;box-shadow:0 5px #14111252}.appliances-home .appliance-zone-group+.appliance-zone-group{border-top:1px solid #70686a;margin-top:0}.appliances-home .appliances-zone-heading{color:#231f20;background:#cd693d;border:0;border-radius:9px 9px 0 0;overflow:visible}.appliances-home .appliances-zone-title-row{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto 44px 48px;align-items:center;column-gap:4px;height:64px;padding:7px 8px 7px 12px;display:grid}.appliances-home .zone-heading-disclosure{grid-area:1/3;width:44px}.appliances-home .zone-heading-disclosure img{filter:brightness(0);opacity:.8}.appliances-home .appliances-zone-title-row .zone-heading-name{color:#231f20;grid-area:1/1;font-size:29px;font-weight:700;line-height:1}.appliances-home .zone-active-count{color:#352f30;font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid #0000;border-radius:999px;grid-area:1/2;justify-self:end;place-items:center;min-width:72px;padding:.45em .6em;font-size:1.0625rem;font-weight:700;line-height:1.2;display:grid}.appliances-home .zone-active-count:before{content:attr(data-full-count);visibility:hidden;grid-area:1/1}.appliances-home .zone-active-label{text-align:center;grid-area:1/1}.appliances-home .zone-active-count strong{color:#352f30;font:inherit}.appliances-home .zone-active-count span{font:inherit}.appliances-home .zone-active-count.is-active{color:#e8b49d;background:#352f30;border-color:#352f30}.appliances-home .zone-active-count.is-active strong{color:#f3ede9}.appliances-home .appliances-zone-title-row .zone-collapse-toggle{background:#ffffff14;border:1px solid #231f207a;border-radius:50%;grid-area:1/4;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;min-height:48px;margin:0;padding:0;display:inline-flex}.appliances-home .appliances-zone-title-row .zone-collapse-toggle .zone-collapse-chevron{border-bottom:2px solid #352f30;border-right:2px solid #352f30;flex:none;width:12px;height:12px;margin:-4px 0 0;display:block;transform:rotate(45deg)}.appliances-home .appliances-zone-title-row .zone-collapse-toggle[aria-expanded=false] .zone-collapse-chevron{margin:4px 0 0;transform:rotate(-135deg)}.zones-home .appliances-zone-title-row{grid-template-columns:minmax(0,1fr) auto 44px 44px;height:auto;min-height:52px;padding-block:2px}.zones-home .appliances-zone-title-row .zone-heading-name{font-size:1.625rem}.zones-home .appliances-zone-title-row .zone-collapse-toggle{background:0 0;border:0;width:44px;min-width:44px;height:44px;min-height:44px;position:relative}.zones-home .appliances-zone-title-row .zone-collapse-toggle:before{content:"";background:#ffffff14;border:1px solid #231f207a;border-radius:50%;position:absolute;inset:4px}.zones-home .appliances-zone-title-row .zone-collapse-toggle .zone-collapse-chevron{width:9px;height:9px}.zones-home .appliances-zone-heading{font-size:1rem;container-type:inline-size}@container (width<15em){.zones-home .appliances-zone-title-row{row-gap:4px;padding-block:8px}.zones-home .appliances-zone-title-row .zone-heading-name{grid-column:1/-1}.zones-home .zone-active-count{grid-area:2/1/auto/3;justify-self:start}.zones-home .zone-heading-disclosure,.zones-home .appliances-zone-title-row .zone-collapse-toggle{grid-row:2}}.appliances-home .appliances-zone-master-controls{background:#302a2b;border-left:5px solid #d6b04c}.appliances-home .appliances-zone-master-controls .appliances-control-line{background:0 0;border-top:0;min-height:54px;padding:0 12px 0 15px}.appliances-home .appliances-zone-master-controls .appliances-control-line:first-child{border-top:0}.appliances-home .zone-unavailable-note{background:var(--cell-background);min-height:30px;color:var(--light-text);align-items:center;gap:6px;margin:0;padding:7px 14px;font-size:13px;font-weight:400;line-height:1.25;display:flex}.appliances-home .zone-unavailable-note img{opacity:.8}.appliance-status-text{color:var(--light-text);font-size:13px;font-weight:600}.appliances-home .appliance-zone-group>.appliance-row{background:#231f20;border-left:2px solid #62595a;margin-left:8px;padding-left:15px}.appliances-home .appliance-row{border-bottom-color:#554d4e;padding-right:12px}.appliances-home .appliance-title-row{gap:8px;height:50px;min-height:50px}.appliances-home .appliance-row .appliance-name.appliance-name-action{color:#d5c9cb;letter-spacing:.4px;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;min-height:44px;padding:0;font-size:18px;font-weight:700;line-height:1.2;overflow:hidden}.appliances-home .appliance-title-row>img,.appliances-home .appliance-title-row .icon{margin-left:auto}.appliances-home .appliance-row .appliances-control-line,.appliances-home .appliances-control-line{grid-template-columns:minmax(0,1fr) 12px 58px 6px 82px;min-height:54px}.appliances-home .appliance-row .appliances-control-line{padding:0}.appliances-home .timer-control-clock .timer-control-header,.appliances-home .appliances-timer-slot{width:58px}.appliances-home .timer-control-clock .timer-toggle{border-color:#70686a;border-radius:50%;width:42px;min-width:42px;height:42px;min-height:42px}.appliances-home .timer-control-clock .timer-toggle-active{border-radius:22px;justify-content:center;width:58px;min-width:58px;font-size:16px;font-weight:500}.appliances-home .timer-control-clock .timer-toggle-active img{display:none}.appliances-home .timer-control-clock .timer-toggle-active .timer-toggle-value{letter-spacing:0;font-variant-numeric:tabular-nums}.appliances-home .appliance-power.appliances-power-button{border-color:#70686a;width:82px;min-width:82px;font-size:16px}.appliances-home .appliances-switch-guidance{color:#c9bbbd;letter-spacing:1.35px;white-space:nowrap;width:100%;font-size:12px;font-weight:500}.appliances-home .manage-actions{margin-inline:6px}@media (width<=390px){.appliances-home{padding-inline:7px}.appliances-home .appliances-control-line,.appliances-home .appliance-row .appliances-control-line{grid-template-columns:minmax(0,1fr) 6px 50px 3px 75px}.appliances-home .appliance-zone-group>.appliance-row .appliances-control-line{padding:0}.appliances-home .appliances-zone-master-controls .appliances-control-line{padding:0 12px 0 15px}.appliances-home .appliance-power.appliances-power-button{width:75px;min-width:75px;font-size:15px}.appliances-home .timer-control-clock .timer-control-header,.appliances-home .appliances-timer-slot,.appliances-home .timer-control-clock .timer-toggle-active{width:50px;min-width:50px}.appliances-home .timer-control-clock .timer-toggle-active{padding-inline:3px;font-size:16px}}.appliance-detail-info{margin-top:22px}.appliance-detail-name{background:var(--cell-background);align-items:center;gap:6px;min-height:62px;padding:0 16px;font-size:20px;font-weight:500;display:flex}.appliance-detail-name>span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.appliance-detail-zone{color:var(--light-text);margin:10px 16px 4px;font-size:16px}.appliance-detail-status{color:var(--light-text);align-items:center;gap:8px;margin:8px 16px 12px;font-size:14px;display:flex}.appliance-detail-status.is-unavailable{color:var(--light-text)}.appliance-detail-photo{background:var(--cell-background);margin:8px 0;padding:16px}.appliance-detail-photo-heading{color:var(--light-text);align-items:center;gap:8px;font-size:16px;display:flex}.appliance-detail-photo-preview{margin-top:10px;position:relative}.appliance-detail-photo-preview>img{object-fit:cover;width:100%;max-height:240px;display:block}.appliance-detail-remove-photo{background:#231f20b8;position:absolute;top:0;right:0}.appliance-detail-photo-actions{justify-content:center;gap:22px;margin-top:34px;display:flex}.appliance-detail-photo-actions .btn{flex:1;padding:0 12px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.active-heating{color:var(--heating-accent)}.active-light{color:var(--light-accent)}.inactive-control{color:var(--border-muted)}.timer-control{flex-direction:column;gap:12px;padding:16px 0;display:flex}.timer-toggle{min-height:var(--touch-target);background:var(--header-background);color:var(--light-text);border:2px solid var(--border-muted);border-radius:var(--radius-pill);cursor:pointer;align-self:flex-start;align-items:center;gap:12px;padding:0 20px;font-family:inherit;font-size:17px;transition:border-color .15s;display:flex}.timer-control-header{align-items:center;display:flex}.timer-control-header .timer-toggle{align-self:center}.timer-toggle-title{color:inherit;font-weight:500}.timer-toggle-value{letter-spacing:1px}.timer-toggle:not(.timer-toggle-active) .timer-toggle-value,.timer-toggle-active .timer-toggle-title{display:none}.timer-toggle-chevron{font-size:13px;line-height:1}.timer-toggle-active{color:var(--timer-accent);border-color:var(--timer-accent)}.timer-toggle:disabled{opacity:.4;cursor:default}.timer-options{cursor:default;flex-wrap:wrap;gap:8px;display:flex}.timer-option{background:var(--header-background);min-height:40px;color:var(--primary-text);border:2px solid var(--border-muted);border-radius:var(--radius-pill);cursor:pointer;padding:0 16px;font-family:inherit;font-size:15px}.timer-option:active{opacity:.75}.timer-option:disabled{opacity:.4;cursor:default}.timer-option.selected{border-color:var(--timer-accent);color:var(--timer-accent)}.timer-custom-option{min-height:40px;display:inline-flex}.timer-custom-apply{border-radius:var(--radius-pill) 0 0 var(--radius-pill);border-right-width:1px}.timer-custom-edit{background:var(--header-background);width:42px;min-height:40px;color:var(--primary-text);border:2px solid var(--border-muted);border-radius:0 var(--radius-pill) var(--radius-pill) 0;cursor:pointer;border-left-width:1px;justify-content:center;align-items:center;padding:0;display:inline-flex}.timer-custom-edit-standalone{border-radius:var(--radius-pill);border-left-width:2px;gap:7px;width:auto;padding:0 14px;font-family:inherit;font-size:15px}.timer-custom-edit:active{opacity:.75}.timer-option-stop{border-color:var(--error-text);color:var(--error-text);background:var(--error-alpha10)}.timer-control-compact{cursor:default;margin-top:20px;padding:0}.timer-control-compact .timer-toggle{gap:10px;min-height:42px;padding:0 16px;font-size:15px}.timer-control-compact .timer-option{min-height:36px;padding:0 13px;font-size:14px}.timer-control-compact .timer-custom-option,.timer-control-compact .timer-custom-edit{min-height:36px}.timer-control-compact .timer-custom-edit-standalone{padding:0 12px;font-size:14px}@media (width<=380px){.timer-option{padding:0 12px;font-size:14px}}.manage-tab{padding-bottom:80px}.manage-add{background:var(--app-background);justify-content:center;align-items:center;height:78px;display:flex}.manage-add-button{min-width:165px;height:42px;padding:0 25px;font-size:16px}.manage-actions{padding:22px var(--side-padding);gap:20px;display:flex}.manage-actions .manage-action-button{flex:1;padding:0 12px}.appliance-manage-actions{gap:8px;padding-inline:12px;display:flex}.appliance-manage-actions .manage-action-button{white-space:nowrap;min-width:0;padding:0 8px;font-size:14px;line-height:1.1}.zone-cell{padding:15px 16px 26px 20px}.zone-cell-row{align-items:center;gap:10px}.zone-copy{flex:1;min-width:0}.zone-name,.scene-name{font-size:19px;font-weight:500;line-height:1.2}.zone-subtitle{margin-top:2px;font-size:14px}.zone-heat-row{cursor:default;grid-template-rows:44px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin-top:20px;display:grid}.zone-level{color:var(--heating-accent);align-items:center;gap:9px;font-size:21px;font-weight:500;display:flex}.zone-heat-row .timer-control-compact{display:contents}.zone-heat-row .timer-control-header{grid-area:1/2}.zone-heat-row .switch{grid-area:1/3}.zone-heat-row .timer-options{grid-area:2/1/auto/-1}.zone-slider{cursor:default;margin-top:24px;padding:0 4px}.timer-running-note{color:var(--light-text);cursor:default;align-items:center;gap:6px;margin-top:10px;font-size:13px;font-weight:400;line-height:1.3;display:flex}.zone-heading-controls .zone-heading-timer-note{grid-area:3/1/auto/-1;margin:6px 0 4px}.zone-detail-timer-note{margin-top:14px;font-size:14px}.zone-detail-name{background:var(--cell-background);align-items:center;gap:6px;min-height:62px;margin-top:8px;padding:0 16px;font-size:20px;font-weight:500;display:flex}.zone-detail-name>span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.zone-detail-subtitle{color:var(--light-text);padding:14px 16px;font-size:16px}.zone-unavailable-note{color:var(--light-text);align-items:center;gap:7px;margin:0 16px 10px;font-size:14px;line-height:1.3;display:flex}.zone-unavailable-note img{opacity:.8}.zone-detail-photo{background:var(--cell-background);padding:4px 16px 22px}.zone-detail-photo-heading{color:var(--light-text);align-items:center;gap:8px;padding:12px 0;font-size:16px;display:flex}.zone-detail-photo-preview{margin:6px 0 4px;position:relative}.zone-detail-photo-preview>img{object-fit:cover;width:100%;max-height:240px;display:block}.zone-detail-remove-photo{background:#231f20b8;position:absolute;top:0;right:0}.zone-detail-photo-actions{gap:22px;margin-top:12px;display:flex}.zone-detail-photo-actions .btn{flex:1;padding:0 12px}.zone-detail-control{background:var(--cell-background);margin-top:10px;padding:25px 16px 20px}.zone-detail-control-row{align-items:center;gap:16px;display:flex}.zone-detail-slider{margin:28px 2px 4px}.zone-detail-timer{background:var(--cell-background);margin-top:10px;padding:0 16px}.zone-detail-timer-label{align-items:center;gap:16px;font-size:18px;display:flex}.zone-detail-timer-value{border:1px solid var(--slider-track);min-width:84px;color:var(--light-text);text-align:center;letter-spacing:2px;border-radius:4px;padding:8px 10px;font-size:18px}.zone-detail-sync{text-align:center;padding:26px 16px 18px}.zone-detail-sync .btn:disabled{border-color:var(--light-text);color:var(--light-text);background:0 0}.zone-detail-sync-status{color:var(--primary-text);margin-top:14px;font-size:15px}.zone-detail-appliances-heading{border-top:2px solid var(--border-muted);border-bottom:2px solid var(--border-muted);padding:18px 16px;font-size:22px;font-weight:700}.zone-member-row{padding:16px}.zone-member-name{align-items:center;gap:8px;margin-bottom:14px;font-size:19px;font-weight:500;display:flex}.zone-member-status{color:var(--light-text);text-transform:uppercase;font-size:13px;font-weight:600}.zone-member-heat{flex:1;align-items:center;gap:10px;font-size:19px;font-weight:500;display:flex}.zone-member-timer{color:var(--light-text);flex:1;align-items:center;gap:8px;font-size:16px;display:flex}.zone-member-unavailable .zone-member-name{color:var(--light-text)}.zone-detail-manage{gap:18px;padding:26px 16px 0;display:flex}.zone-detail-manage .zone-detail-manage-button{flex:1;padding:0 10px;font-size:15px}.zone-detail-delete{margin:30px 0 80px}.cell-kebab .icon-button{width:34px;height:48px}.cell-kebab .icon-button img{width:20px;height:20px}.scene-list{padding-top:22px}.scene-cell{border-bottom:none;margin-bottom:22px;padding:0}.scene-cell+.scene-cell{margin-top:0}.scene-cell-row{gap:12px;padding:16px}.scene-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.scene-separator{margin:0}.scene-schedule-row{align-items:center;gap:0;padding:11px 16px;display:flex}.scene-days{align-items:center;min-width:0;margin-left:16px;display:flex}.scene-day{font-size:16px}.scene-day.enabled{color:var(--primary-text)}.scene-day.disabled{color:var(--slider-track)}.scene-day:nth-child(2n){margin:0 5px}.scene-time{color:var(--primary-text);white-space:nowrap;text-align:right;flex:1;margin-left:16px;font-size:16px}@media (width<=380px){.scene-day,.scene-time{font-size:14px}.scene-days,.scene-time{margin-left:10px}}.rearrange-description{margin:16px}.rearrange-guidance{margin:0 16px 16px;line-height:1.4}.rearrange-list{flex:1 0 auto;padding-bottom:16px}.rearrange-item{border-bottom:none;margin-bottom:8px;padding:16px}.rearrange-item-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.rearrange-handle{color:#fff;-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab;background:#ffffff0f;border-radius:8px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;font-size:30px;line-height:1;display:inline-flex}.rearrange-item-dragging{z-index:2;outline:2px solid var(--heating-accent);outline-offset:-2px;background:#493a34;position:relative;box-shadow:0 4px 12px #0006}.rearrange-item-dragging .rearrange-handle{cursor:grabbing}.rearrange-item-placeholder{outline:2px dashed var(--heating-accent);outline-offset:-2px;background:#fe5b0014}.rearrange-item-placeholder>.cell-row{visibility:hidden}.rearrange-preview{z-index:10000;pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;position:fixed}.rearrange-preview-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.rearrange-buttons{gap:24px;padding:24px 16px 32px;display:flex}.rearrange-buttons .rearrange-button{flex:1;padding:0 12px}.field{margin:10px var(--side-padding);flex-direction:column;gap:6px;display:flex}.field label{color:var(--primary-text);font-size:14px}.field input,.field select,.field textarea{border:1px solid var(--primary-text);color:var(--primary-text);min-height:var(--touch-target);background:0 0;border-radius:6px;padding:14px 12px;font-size:16px}.field input::placeholder{color:var(--light-text)}.field input:focus,.field select:focus,.field textarea:focus{outline-offset:-1px;outline:2px solid #fff}.field.has-error input,.field.has-error select{border-color:var(--error-text)}.field select option{color:#000;background:#fff}.switch{cursor:pointer;flex:none;width:77px;height:40px;display:block;position:relative}.switch input{opacity:0;width:0;height:0;position:absolute}.switch .track{background:var(--switch-track-unchecked);border-radius:24px;transition:background .15s;position:absolute;inset:0}.switch .thumb{background:#fff;border-radius:50%;width:36px;height:36px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0006}.switch input:checked+.track{background:var(--positive)}.switch input:checked+.track+.thumb{transform:translate(37px)}.switch.accent-heating input:checked+.track{background:var(--heating-accent)}.switch.accent-light input:checked+.track{background:var(--light-accent)}.switch.accent-timer input:checked+.track{background:var(--timer-accent)}.switch.disabled{opacity:.4;pointer-events:none}.slider{appearance:none;background:var(--slider-track);outline-offset:6px;border-radius:2px;width:100%;height:4px}.slider::-webkit-slider-thumb{appearance:none;background:var(--thumb-color,#fff);cursor:pointer;border:none;border-radius:50%;width:28px;height:28px}.slider::-moz-range-thumb{background:var(--thumb-color,#fff);cursor:pointer;border:none;border-radius:50%;width:28px;height:28px}.slider:disabled{background:var(--slider-track-disabled)}.slider:disabled::-webkit-slider-thumb{background:var(--border-muted)}.slider:disabled::-moz-range-thumb{background:var(--border-muted)}.slider.inactive:not(:disabled)::-webkit-slider-thumb{background:var(--slider-thumb-inactive)}.slider.inactive:not(:disabled)::-moz-range-thumb{background:var(--slider-thumb-inactive)}.duration-select{background:var(--app-background);color:#fff;border:1px solid #fff;border-radius:6px;padding:10px 14px;font-size:18px}.duration-select option{color:#242021;background:#fff}.dialog-overlay{z-index:50;background:var(--overlay-bg);padding:var(--side-padding);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dialog{background:var(--app-background);border-radius:14px;flex-direction:column;width:100%;max-width:420px;max-height:100%;padding:24px 21px;display:flex;box-shadow:0 8px 40px #00000080}.dialog-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.dialog-body::-webkit-scrollbar{width:4px}.dialog-body::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:2px}.dialog-actions{flex:none;margin-top:4px}.dialog .dialog-title{margin:0 0 8px;font-size:20px;font-weight:500}.dialog .dialog-message{color:var(--light-text);margin:0 0 20px;font-size:18px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.spinner{border:4px solid var(--border-muted);border-top-color:#fff;border-radius:50%;flex:none;width:40px;height:40px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.unreachable-banner{background:var(--unreachable-alert-bg);color:#fff;margin:8px var(--side-padding);border-radius:8px;align-items:center;gap:10px;padding:12px 16px;font-size:15px;display:flex}.notification-unread-dot{background:var(--error-text);border-radius:50%;flex:none;width:10px;height:10px}.notification-active{background:var(--error-alpha10);border:1px solid var(--error-text)}.passcode-dots{justify-content:center;gap:18px;margin:24px 0;display:flex}.passcode-dot{background:0 0;border:1px solid #fff;border-radius:50%;width:16px;height:16px}.passcode-dot.filled{background:#fff}.passcode-dot.invalid{background:var(--error-text);border-color:var(--error-text)}.passcode-pad{grid-template-columns:repeat(3,72px);justify-content:center;gap:18px;display:grid}.passcode-key{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:32px;display:flex}.passcode-key:active{background:#ffffff1f}.passcode-key.ghost{border:none}.icon-white{filter:brightness(0)invert()}.icon-muted{filter:brightness(0)invert(.65)}.icon-heating{filter:brightness(0)invert(48%)sepia(96%)saturate(3766%)hue-rotate(2deg)brightness(101%)contrast(105%)}.icon-light{filter:brightness(0)invert(85%)sepia(33%)saturate(1053%)hue-rotate(340deg)brightness(99%)contrast(92%)}.icon-timer{filter:brightness(0)invert(64%)sepia(59%)saturate(2020%)hue-rotate(148deg)brightness(93%)contrast(88%)}.installer-site-panel{background:var(--header-background);border-bottom:1px solid #ffffff1f;gap:14px;padding:14px 16px 12px;display:grid}.installer-site-panel-copy{text-align:right;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:0;padding:0;display:grid}.installer-site-panel-copy .hint-label{color:var(--primary-text);white-space:nowrap;font-size:20px}.installer-site-selector{border:2px solid var(--primary-text);min-width:0;min-height:44px;color:var(--primary-text);align-items:center;gap:12px;padding:0 12px;display:flex}.installer-site-panel-name{min-width:0;color:var(--primary-text);text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:20px;font-weight:500;overflow:hidden}.installer-site-selector-chevron{border-right:2px solid var(--primary-text);border-bottom:2px solid var(--primary-text);flex:none;width:13px;height:13px;transform:rotate(45deg)translateY(-3px)}.installer-site-panel-copy:active .installer-site-selector{background:#ffffff14}.installer-site-panel-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.installer-site-panel-actions .btn{border-color:var(--primary-text);width:100%;min-width:0;height:42px;min-height:42px;color:var(--primary-text);background:0 0;padding-left:8px;padding-right:8px}@media (width<=320px){.installer-site-panel-actions{grid-template-columns:1fr}}.scenario-fab{z-index:80;opacity:0;color:#0000;cursor:pointer;background:0 0;border:0;width:2px;height:2px;padding:0;position:absolute;bottom:2px;right:2px;overflow:hidden}.scenario-fab:focus-visible{opacity:1;color:#fff;outline-offset:1px;background:#2c72b5;width:auto;height:auto;padding:7px 10px}.scenario-panel{z-index:90;background:var(--overlay-bg);align-items:flex-end;display:flex;position:absolute;inset:0}.scenario-sheet{background:var(--header-background);border-radius:18px 18px 0 0;width:100%;max-height:80%;padding:20px 16px 28px;overflow-y:auto}.scenario-chip{border:1px solid var(--border-muted);border-radius:var(--radius-pill);color:var(--light-text);cursor:pointer;background:0 0;margin:4px 6px 4px 0;padding:8px 14px;font-size:14px}.scenario-chip.active{color:#fff;background:#2c72b5;border-color:#2c72b5}.review-fab{z-index:200;border-radius:var(--radius-pill);color:#fff;cursor:pointer;background:#2c72b5;border:0;align-items:center;gap:8px;padding:10px 16px;font-size:15px;font-weight:600;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 20px #00000073}.review-fab:hover{background:#3a82c7}.review-fab:focus-visible{outline-offset:2px;outline:2px solid #fff}.review-badge{color:#2c72b5;background:#fff;border-radius:11px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:13px;font-weight:700;display:inline-flex}:root{--review-sidebar-width:min(360px, 100vw)}body.review-docked #root{padding-left:var(--review-sidebar-width)}.review-panel{z-index:190;width:var(--review-sidebar-width);color:#1f1f1f;background:#fff;border-right:1px solid #e3e6ea;flex-direction:column;font-size:14px;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:8px 0 24px #00000040}.review-panel-header{background:#fff;border-bottom:1px solid #e3e6ea;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 12px;display:flex}.review-panel-header strong{overflow-wrap:anywhere;font-size:15px;font-weight:700}.review-panel-sub{color:#6b7280;margin-top:6px;font-size:12px;line-height:1.6}.review-active-count{color:#1f1f1f;border-bottom:2px solid #2c72b5;margin-right:2px;padding-bottom:1px;font-weight:600}.review-close{color:#6b7280;cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;width:32px;height:32px;font-size:16px}.review-close:hover{color:#1f1f1f;background:#f1f3f5}.review-scope{gap:6px;padding:10px 16px 4px;display:flex}.review-chip{border-radius:var(--radius-pill);color:#4b5563;cursor:pointer;background:#fff;border:1px solid #d5d9de;padding:5px 11px;font-size:12px}.review-chip.active{color:#fff;background:#2c72b5;border-color:#2c72b5}.review-list{flex-direction:column;flex:1;padding:4px 0 8px;display:flex;overflow-y:auto}.review-empty{color:#6b7280;text-align:center;padding:24px 16px;font-size:13px}.review-error{color:#c62828;padding:0 16px;font-size:13px}.review-link{color:#2c72b5;cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.review-comment{border-bottom:1px solid #eef0f2;border-left:3px solid #0000;padding:12px 16px;transition:background .2s,border-color .2s}.review-comment.active{background:#eaf2fb;border-left-color:#2c72b5}.review-comment-meta{color:#6b7280;align-items:center;gap:8px;font-size:12px;display:flex}.review-comment-meta time{margin-left:auto}.review-edited{color:#6b7280;font-size:11px;font-style:italic}.review-edit-action{font-size:12px;text-decoration:none}.review-edit-action:hover{text-decoration:underline}.review-edit-form{flex-direction:column;gap:8px;margin:6px 0 8px;display:flex}.review-edit-form textarea{box-sizing:border-box;resize:vertical;width:100%;font:inherit;color:#1f1f1f;background:#fff;border:1px solid #b9d3ee;border-radius:8px;padding:8px 10px;font-size:14px;line-height:1.45}.review-edit-form textarea:focus{outline-offset:0;border-color:#2c72b5;outline:2px solid #2c72b5}.review-author{color:#1f1f1f;font-weight:600}.review-body{white-space:pre-wrap;overflow-wrap:anywhere;color:#1f1f1f;margin:6px 0 8px;line-height:1.45}.review-number,.review-pin{color:#fff;text-align:center;cursor:pointer;background:#2c72b5;border:0;border-radius:50%;flex:none;width:22px;height:22px;padding:0;font-size:12px;font-weight:700;line-height:22px;box-shadow:0 0 0 2px #fff}.review-number:hover,.review-pin:hover{background:#3a82c7}.review-pin-layer{z-index:180;pointer-events:none;position:fixed;inset:0}.review-pin{pointer-events:auto;position:fixed;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #fff,0 2px 8px #00000073}.review-pin.active{transform:translate(-50%,-50%)scale(1.25);box-shadow:0 0 0 2px #fff,0 0 0 5px #2c72b573}.review-screen{color:#1f5c9c;border-radius:var(--radius-pill);cursor:pointer;background:#eaf2fb;border:1px solid #b9d3ee;padding:3px 10px;font-size:12px}.review-screen:hover:not(:disabled){background:#d6e6f7}.review-screen:disabled{cursor:default;opacity:.8}.review-form{background:#f8f9fa;border-top:1px solid #e3e6ea;flex-direction:column;gap:10px;padding:12px 16px 16px;display:flex}.review-field{color:#4b5563;flex-direction:column;gap:4px;font-size:12px;display:flex}.review-field em{color:#1f5c9c;font-style:normal}.review-field input,.review-field textarea{color:#1f1f1f;resize:vertical;background:#fff;border:1px solid #d5d9de;border-radius:8px;padding:8px 10px;font-size:14px}.review-field input:focus,.review-field textarea:focus{outline-offset:0;border-color:#2c72b5;outline:2px solid #2c72b5}.review-submit{color:#fff;border-radius:var(--radius-pill);cursor:pointer;background:#2c72b5;border:0;align-self:flex-end;padding:9px 18px;font-size:15px;font-weight:600}.review-submit:disabled{opacity:.5;cursor:default}.review-note{color:#1f5c9c;font-size:13px}.review-pick-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-pick{color:#1f5c9c;border-radius:var(--radius-pill);cursor:pointer;background:#fff;border:1px dashed #2c72b5;padding:5px 12px;font-size:13px}.review-pick:hover{background:#eaf2fb}.review-pick.active{color:#fff;background:#2c72b5;border-style:solid}.review-element-chip,.review-element{color:#1f5c9c;border-radius:var(--radius-pill);text-overflow:ellipsis;white-space:nowrap;background:#eaf2fb;border:1px solid #b9d3ee;align-items:center;gap:6px;max-width:100%;padding:3px 10px;font-size:12px;display:inline-flex;overflow:hidden}.review-element{cursor:pointer}.review-element:hover{background:#d6e6f7}.review-element-clear{color:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:12px;line-height:1}.review-element-clear:hover{color:#c62828}.review-element-missing{color:#b45309;font-style:italic}.review-comment-refs{flex-wrap:wrap;gap:6px;display:flex}.review-thumb{cursor:zoom-in;background:#000;border:1px solid #d5d9de;border-radius:8px;width:84px;margin:0 0 8px;padding:0;transition:box-shadow .15s,border-color .15s;display:block;position:relative;overflow:hidden}.review-thumb:hover,.review-thumb:focus-visible{border-color:#2c72b5;outline:none;box-shadow:0 0 0 2px #2c72b540}.review-thumb img{width:100%;height:auto;min-height:48px;display:block}.review-thumb-expand{color:#fff;text-align:center;pointer-events:none;background:#1f1f1fbf;border-radius:6px;width:20px;height:20px;font-size:12px;line-height:20px;position:absolute;bottom:4px;right:4px}.review-thumb:hover .review-thumb-expand{background:#2c72b5}.review-thumb-static{cursor:default;opacity:.85}.review-thread-bar{color:var(--light-text);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}.review-reply-count{color:#1f5c9c}.review-reply-action{margin-left:auto;font-size:12px;text-decoration:none}.review-reply-action:hover{text-decoration:underline}.review-replies{border-left:2px solid #2c72b573;flex-direction:column;gap:8px;margin-top:8px;padding-left:10px;display:flex}.review-reply{color:#1f1f1f;background:#f1f5f9;border:1px solid #e3e6ea;border-radius:10px;padding:8px 10px;font-size:14px}.review-reply .review-body{margin:4px 0 6px}.review-reply .review-thumb{width:64px}.review-reply-form{background:#eaf2fb;border:1px solid #b9d3ee;border-radius:10px;flex-direction:column;gap:8px;margin-top:8px;padding:10px;display:flex}.review-toggle{color:#1f5c9c;cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.review-toggle input{accent-color:#2c72b5;width:16px;height:16px;margin:0}.review-reply-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.review-reply-actions .review-submit{padding:7px 14px;font-size:14px}body.review-picking .device-frame,body.review-picking .device-frame *{cursor:crosshair!important}.review-pick-layer{z-index:185;pointer-events:none;position:fixed;inset:0}.review-pick-overlay{box-sizing:border-box;pointer-events:none;outline-offset:1px;background:#2c72b52e;outline:2px solid #2c72b5;position:fixed;box-shadow:0 0 0 1px #ffffffb3}.review-pick-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#2c72b5;border-radius:4px;max-width:260px;padding:2px 6px;font-size:11px;font-weight:600;position:absolute;bottom:100%;left:0;overflow:hidden;transform:translateY(-3px)}.review-flash{animation:.5s ease-in-out 4 review-flash}@keyframes review-flash{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px #2c72b5,0 0 0 5px #ffffffd9}}.review-lightbox{z-index:300;background:#000000d9;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:fixed;inset:0}.review-lightbox img{border:1px solid #3c5f85;border-radius:8px;max-width:100%;max-height:calc(100vh - 100px)}.review-lightbox-bar{color:#fff;border-radius:var(--radius-pill);background:#17273a;border:1px solid #2c72b5;align-items:center;gap:14px;padding:8px 8px 8px 16px;font-size:14px;display:flex}.review-lightbox-bar a{color:#9cc7f0}.review-lightbox-bar button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:50%;width:32px;height:32px;font-size:16px}.review-lightbox-bar button:hover{background:#ffffff1a}@media (width<=560px){.review-fab{padding:9px 14px;font-size:14px;bottom:12px;right:12px}body.review-docked #root{padding-left:0}}.center-column{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.day-chip{border:1px solid var(--border-muted);width:40px;height:40px;color:var(--light-text);cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.day-chip.selected{color:#242021;background:#fff;border-color:#fff}.toast{z-index:100;background:var(--header-background);border:1px solid var(--border-muted);border-radius:10px;padding:14px 16px;font-size:15px;animation:.2s ease-out toast-in;position:absolute;bottom:24px;left:16px;right:16px;box-shadow:0 6px 24px #00000080}.toast.success{border-color:var(--positive)}.toast.error{border-color:var(--error-text)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.chart-wrap{flex:1;min-height:220px;margin:16px}.configuration-scan-title{color:var(--primary-text);margin:14px 16px 38px;font-size:21px;font-weight:500;line-height:1.2}.configuration-scan-list{margin:0 16px}.configuration-scan-heading{justify-content:space-between;align-items:center;min-height:28px;margin-bottom:0;display:flex}.configuration-scan-heading .title-label{font-size:20px}.configuration-scan-mini-spinner{border-width:2px;border-color:#a49d9f #5a5556 #5a5556;width:21px;height:21px}.configuration-scan-footer{color:var(--light-text);margin:32px 0 0;font-size:16px;line-height:1.2}.configuration-scan-footer-active{max-width:360px;margin-top:43px}.zone-board{gap:12px;padding:0 0 8px;display:grid}.zone-target{background:var(--cell-background);border:2px dashed var(--border-muted);border-radius:6px;margin:0 16px;padding:12px 16px;transition:border-color .12s,background .12s}.zone-target-hover{border-color:var(--heating-accent);background:#ffffff0f}.zone-editor-header{gap:4px}.zone-reorder-help{margin:0;padding:0 16px}.zone-reorder-handle{width:28px;min-width:28px;color:var(--primary-text);touch-action:none;cursor:grab;letter-spacing:-2px;font-size:18px}.zone-reorder-handle:active{cursor:grabbing}.zone-reorder-handle:disabled{opacity:.4;cursor:default}.zone-reordering{opacity:.6}.zone-drop-before{border-top:3px solid var(--heating-accent)}.zone-drop-after{border-bottom:3px solid var(--heating-accent)}.zone-board-editable,.zone-board-editable .zone-add{grid-template-columns:minmax(0,1fr)}.zone-editor-header h2,.zone-editor-header input{overflow-wrap:anywhere;min-width:0}.zone-editor-header h2>.hint-label{font-size:12px}.zone-member-count{margin-top:3px;display:block}.zone-collapse{color:var(--primary-text);width:40px}.zone-delete{min-height:48px;color:var(--error-text);cursor:pointer;background:0 0;border:none;padding:0 6px;font-size:14px}.zone-chip{border:1px solid var(--border-muted);background:#ffffff0f;border-radius:6px;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;display:flex}.zone-chip-dragging{z-index:3;opacity:.92;pointer-events:none;position:relative;box-shadow:0 4px 12px #00000073}.zone-chip-dragging .zone-chip-handle{pointer-events:auto;cursor:grabbing}.zone-chip-handle{color:#fff;letter-spacing:-2px;-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab;padding:6px 4px;font-size:18px;line-height:1}.zone-chip-move{white-space:nowrap;height:32px;padding:0 10px;font-size:13px}.zone-chip-name{width:100%;min-height:44px;color:var(--primary-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-weight:500;display:flex}.zone-chip-name span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.zone-chip-name img{flex-shrink:0}.zone-chip-name:focus-visible{outline:2px solid var(--heating-accent);outline-offset:2px}.zone-chip-name:disabled{opacity:.6;cursor:default}.zone-move-menu{z-index:4;background:var(--cell-background);border:1px solid var(--border-muted);border-radius:6px;min-width:160px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #00000073}.zone-move-item{color:#fff;border:0;border-bottom:1px solid var(--border-muted);text-align:left;font:inherit;cursor:pointer;background:0 0;padding:10px 12px}.zone-move-item:last-child{border-bottom:0}.zone-move-item:hover,.zone-move-item:focus-visible{background:#ffffff14;outline:none}.zone-add{gap:8px;margin-top:4px;display:grid}
