@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700;800&display=swap";:root{--ff:"Be Vietnam Pro";--c-hl-1:#006ffd;--c-hl-2:#2897ff;--c-hl-3:#6fbaff;--c-hl-4:#b4dbff;--c-hl-5:#eaf2ff;--c-nl-1:#c5c6cc;--c-nl-2:#d4d6dd;--c-nl-3:#e8e9f1;--c-nl-4:#f8f9fe;--c-nl-5:#fff;--c-nd-1:#1f2024;--c-nd-2:#2f3036;--c-nd-3:#494a50;--c-nd-4:#71727a;--c-nd-5:#8f9098;--c-ok-1:#298267;--c-ok-2:#3ac0a0;--c-ok-3:#e7f4e8;--c-warn-1:#e86339;--c-warn-2:#ffb37c;--c-warn-3:#fff4e4;--c-err-1:#ed3241;--c-err-2:#ff616d;--c-err-3:#ffe2e5;--t-b-s:400 14px/20px var(--ff), sans-serif;--t-btn:700 13px/18px var(--ff), sans-serif;--t-h4:700 16px/22px var(--ff), sans-serif;--t-cap:600 11px/16px var(--ff), sans-serif;--ls-h4:0;--ls-cap:.5px;--app-bg:#f8f9fe;--app-surface:#fff;--app-surface-raised:#f7f9fc;--app-surface-sunken:#f2f3f6;--app-surface-hover:#eef2f8;--app-overlay:#0f1e3773;--app-skeleton:#edf0f5;--app-surface-translucent:#fffffff0;--app-surface-veil:#ffffff38;--app-text:#1f2024;--app-text-strong:#172033;--app-text-muted:#71727a;--app-text-subtle:#8f9098;--app-text-inverse:#fff;--app-border:#e8e9f1;--app-border-strong:#cbd6e5;--app-primary:#006ffd;--app-primary-strong:#3157d5;--app-primary-cta:#0069f2;--app-primary-soft:#eaf2ff;--app-primary-border:#bad5f2;--app-focus:#006ffd;--app-success:#3ac0a0;--app-success-strong:#16866f;--app-success-soft:#e8faf4;--app-info:#1686b4;--app-info-soft:#e6f4fb;--app-warning:#f0a400;--app-warning-strong:#e27635;--app-warning-soft:#fff4e4;--app-danger:#ed3241;--app-danger-strong:#c81e2c;--app-danger-soft:#ffe2e5;--app-shadow:#112d591f;--chart-series-1:#006ffd;--device-light:#f0a400;--device-light-soft:#fff7df;--device-curtain:#2563a9;--device-curtain-soft:#e6f0fb;--device-tv:#3157d5;--device-tv-soft:#eaf2ff;--device-camera:#1686b4;--device-camera-soft:#e6f4fb;--device-door-lock:#16866f;--device-door-lock-soft:#e8faf4;--device-water-heater:#e27635;--device-water-heater-soft:#fff1e6;--device-air-conditioner:#2897ff;--device-air-conditioner-soft:#eaf6ff;--device-fan:#0f9d8f;--device-fan-soft:#e5f7f4;--device-heater:#ed3241;--device-heater-soft:#ffe9eb;--scene-reading:#f0a400;--scene-reading-soft:#fff7df;--scene-relax:#3b82f6;--scene-relax-soft:#eaf2ff;--scene-focus:#8257e6;--scene-focus-soft:#f1ecff;--scene-night:#475569;--scene-night-soft:#e8edf5;--app-text-secondary:#344054;--app-primary-light:#4d98ff;--app-primary-deep:#0059ca;--app-accent-violet:#9a5bce;--app-accent-violet-soft:#f1ecff;--app-danger-deep:#b42318;--app-warning-deep:#b56b00;--app-media-bg:#0f172a;--app-on-dark:#f4f9ff;--app-on-dark-muted:#bed4f2;--app-on-dark-accent:#9dc9ff;--app-on-dark-border:#c4deff42;--app-on-dark-veil:#c4deff1a;--furniture-frame:#8e795f;--furniture-wood:#8d6d46;--furniture-wood-soft:#c5a77e;--furniture-fabric:#ddd0bd;--furniture-fabric-strong:#bda686;--furniture-neutral:#8c8376;--furniture-metal:#789098;--furniture-metal-soft:#aeb9bd;--furniture-plant:#5f8a55;--furniture-plant-soft:#a9c59b;--furniture-surface:#fbf7ef}:root[data-theme=dark]{--c-hl-1:#6fbaff;--c-hl-2:#8fcaff;--c-hl-3:#b4dbff;--c-hl-4:#dceaff;--c-hl-5:#17345f;--c-nl-1:#334867;--c-nl-2:#2b405e;--c-nl-3:#213957;--c-nl-4:#0d1d38;--c-nl-5:#142c54;--c-nd-1:#f8fbff;--c-nd-2:#e3edf9;--c-nd-3:#cad9eb;--c-nd-4:#b6c9e3;--c-nd-5:#98afca;--c-ok-1:#6fe0c0;--c-ok-2:#3ac0a0;--c-ok-3:#123f36;--c-warn-1:#ffb37c;--c-warn-2:#e8944f;--c-warn-3:#40291a;--c-err-1:#ff8a94;--c-err-2:#ff616d;--c-err-3:#46212a;--app-bg:#0d1d38;--app-surface:#142c54;--app-surface-raised:#102131;--app-surface-sunken:#0a172c;--app-surface-hover:#1b3a68;--app-overlay:#030a169e;--app-skeleton:#1b3a68;--app-surface-translucent:#142c54f0;--app-surface-veil:#b4dbff1a;--app-text:#f8fbff;--app-text-strong:#fff;--app-text-muted:#b6c9e3;--app-text-subtle:#98afca;--app-text-inverse:#0d1d38;--app-border:#b4dbff38;--app-border-strong:#b4dbff61;--app-primary:#6fbaff;--app-primary-strong:#8fcaff;--app-primary-cta:#6fbaff;--app-primary-soft:#6fbaff29;--app-primary-border:#6fbaff6b;--app-focus:#8fcaff;--app-success:#3ac0a0;--app-success-strong:#6fe0c0;--app-success-soft:#3ac0a02e;--app-info:#5cc4ea;--app-info-soft:#5cc4ea2e;--app-warning:#ffc978;--app-warning-strong:#ffb37c;--app-warning-soft:#ffb37c2e;--app-danger:#ff616d;--app-danger-strong:#ff8a94;--app-danger-soft:#ff616d2e;--app-shadow:#00000047;--chart-series-1:#3987e5;--device-light:#ffc978;--device-light-soft:#ffc97829;--device-curtain:#7db6ea;--device-curtain-soft:#7db6ea29;--device-tv:#8fa8ff;--device-tv-soft:#8fa8ff29;--device-camera:#5cc4ea;--device-camera-soft:#5cc4ea29;--device-door-lock:#6fe0c0;--device-door-lock-soft:#6fe0c029;--device-water-heater:#ffa877;--device-water-heater-soft:#ffa87729;--device-air-conditioner:#8fcaff;--device-air-conditioner-soft:#8fcaff29;--device-fan:#5fd6c6;--device-fan-soft:#5fd6c629;--device-heater:#ff8a94;--device-heater-soft:#ff8a9429;--scene-reading:#ffc978;--scene-reading-soft:#ffc97829;--scene-relax:#8fb8ff;--scene-relax-soft:#8fb8ff29;--scene-focus:#b79bff;--scene-focus-soft:#b79bff29;--scene-night:#9fb2c9;--scene-night-soft:#9fb2c929;--app-text-secondary:#cad9eb;--app-primary-light:#8fcaff;--app-primary-deep:#4a9ae8;--app-accent-violet:#b79bff;--app-accent-violet-soft:#b79bff2e;--app-danger-deep:#ff8a94;--app-warning-deep:#ffc978;--app-media-bg:#050d1c;--app-on-dark:#f4f9ff;--app-on-dark-muted:#bed4f2;--app-on-dark-accent:#9dc9ff;--app-on-dark-border:#c4deff42;--app-on-dark-veil:#c4deff1a;--furniture-frame:#6b5a47;--furniture-wood:#6a5334;--furniture-wood-soft:#8f7a5c;--furniture-fabric:#9c9284;--furniture-fabric-strong:#85735c;--furniture-neutral:#665f56;--furniture-metal:#55686f;--furniture-metal-soft:#7a868b;--furniture-plant:#47653f;--furniture-plant-soft:#74906b;--furniture-surface:#1b2436}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:var(--app-bg);min-height:100vh;color:var(--app-text);font-family:var(--ff), system-ui, sans-serif;-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5;transition:background-color .18s,color .18s}button,input,select,textarea{font:inherit}.theme-toggle{border:1px solid var(--app-border);width:38px;height:38px;color:var(--app-text-muted);background:var(--app-surface);box-shadow:0 4px 14px var(--app-shadow);cursor:pointer;border-radius:10px;flex:0 0 38px;place-items:center;padding:0;transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s;display:inline-grid;position:relative;overflow:hidden}.theme-toggle:hover{color:var(--app-primary);border-color:var(--app-primary);background:var(--app-primary-soft)}.theme-toggle:focus-visible{outline:3px solid var(--app-focus);outline-offset:3px}.theme-toggle svg{transition:transform .18s,opacity .18s;position:absolute}.theme-toggle-sun{opacity:1;transform:rotate(0)scale(1)}.theme-toggle-moon{opacity:0;transform:rotate(-50deg)scale(.55)}:root[data-theme=dark] .theme-toggle-sun{opacity:0;transform:rotate(50deg)scale(.55)}:root[data-theme=dark] .theme-toggle-moon{opacity:1;transform:rotate(0)scale(1)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.icon{width:var(--icon-size);height:var(--icon-size);color:var(--icon-color);flex:0 0 var(--icon-size);display:inline-block;position:relative}.icon-shape,.icon-overlay{background:currentColor;display:block;position:absolute;inset:0;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-overlay{background:var(--c-nl-5)}.site-layout{background:var(--c-nl-4);min-height:100vh;color:var(--c-nd-1)}.site-header{z-index:30;border-bottom:1px solid var(--c-nl-3);background:var(--c-nl-5);width:100%;position:fixed;inset:0 0 auto}.site-header-inner{align-items:center;gap:48px;width:100%;min-height:72px;padding:0 32px;display:flex}.site-brand{color:var(--c-nd-1);font:800 16px/20px var(--ff), system-ui, sans-serif;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.site-brand-mark{width:32px;height:32px;color:var(--c-nl-5);background:var(--c-hl-1);border-radius:10px;place-items:center;display:grid}.site-nav{align-items:center;gap:8px;display:flex}.site-nav-link{color:var(--c-nd-4);font:600 13px/20px var(--ff), system-ui, sans-serif;border-radius:9px;padding:9px 12px;text-decoration:none}.site-nav-link:hover,.site-nav-link.active{color:var(--c-hl-1);background:var(--c-hl-5)}.site-account{align-items:center;gap:16px;margin-left:auto;display:flex}.site-email{max-width:240px;color:var(--c-nd-4);font:var(--t-b-s);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-logout,.site-login{border:1px solid var(--c-nl-1);color:var(--c-nd-2);background:var(--c-nl-5);font:600 12px/16px var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;padding:8px 12px;text-decoration:none}.site-logout:hover,.site-login:hover{border-color:var(--c-hl-1);color:var(--c-hl-1)}.site-main{width:100%;margin:0;padding:96px 32px}.site-main>*{width:min(100%,1240px);margin-left:auto;margin-right:auto}.site-footer{border-top:1px solid var(--c-nl-3);width:100%;color:var(--c-nd-5);background:var(--c-nl-5);text-align:center;font:var(--t-b-s);padding:20px 32px;position:static}.hero-image{background:var(--c-hl-5);place-items:center;height:312px;padding:0;display:grid;position:absolute;inset:0 0 auto;overflow:hidden}h1{font:800 24px/1.2 var(--ff), system-ui, sans-serif;letter-spacing:.24px;margin:0 0 24px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes device-fan-spin{to{transform:rotate(360deg)}}@keyframes device-light-glow{50%{filter:drop-shadow(0 0 5px #eaa100bf);transform:scale(1.08)}}@keyframes device-air-flow{50%{opacity:.62;transform:translate(2px)}}@keyframes device-tv-on{50%{filter:drop-shadow(0 0 4px #415ed3b3);transform:scale(1.06)}}@keyframes device-heat-pulse{50%{filter:drop-shadow(0 0 5px #e16027a6);transform:scale(1.08)}}@keyframes device-recording{50%{opacity:.35;transform:scale(.72)}}@media (width<=680px){.site-header-inner{gap:12px;min-height:64px;padding:0 16px}.site-nav{gap:0}.site-nav-link{padding:8px}.site-email{display:none}.site-main{padding:80px 16px}.site-footer{padding:16px}}.site-page-title{max-width:1180px;color:var(--c-nd-1);font:800 28px/34px var(--ff), system-ui, sans-serif;margin:28px auto 0;padding:0 24px}.site-footer a{color:var(--c-hl-1);text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-menu-button{display:none}@media (width<=680px){.site-header-inner{position:relative}.site-menu-button{border:1px solid var(--c-nl-2);width:40px;height:40px;color:var(--c-nd-2);background:var(--c-nl-5);cursor:pointer;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:4px;margin-left:auto;padding:0;display:flex}.site-menu-button i{background:currentColor;border-radius:2px;width:17px;height:2px}.site-nav{display:none}.site-nav.open{border:1px solid var(--c-nl-3);background:var(--c-nl-5);border-radius:12px;flex-direction:column;align-items:stretch;min-width:160px;padding:8px;display:flex;position:absolute;top:calc(100% + 1px);right:16px;box-shadow:0 12px 28px #1f20241f}.site-nav.open .site-nav-link{padding:10px 12px}}.site-layout{flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1}.site-footer{position:static}@media (width<=680px){.site-header{pointer-events:none;background:0 0;border-bottom:0}.site-header-inner{justify-content:flex-end;min-height:56px;padding:8px 16px}.site-brand,.site-account{display:none}.site-menu-button{pointer-events:auto}.site-nav.open{pointer-events:auto;top:calc(100% - 1px)}}.app-toast{z-index:60;width:360px;position:fixed;top:28px;right:28px;box-shadow:0 12px 32px #1f20241f}.page-title-row,.layout-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.site-avatar{width:36px;height:36px;color:var(--c-hl-1);background:var(--c-hl-5);cursor:pointer;font:800 13px/1 var(--ff), system-ui, sans-serif;border:0;border-radius:50%;place-items:center;padding:0;transition:background .15s,box-shadow .15s;display:grid}.site-avatar:hover{background:var(--c-hl-4);box-shadow:0 0 0 4px var(--c-hl-5)}.site-icon-button:hover{border-color:var(--c-err-2);color:var(--c-err-1);background:var(--c-err-3)}.site-icon-button .icon-svg{width:var(--icon-size);height:var(--icon-size);color:var(--icon-color);display:block}@media (width<=680px){.site-avatar{width:34px;height:34px}}.site-nav .top-level-tab{box-sizing:border-box;min-height:38px;color:var(--c-nd-4);box-shadow:none;font:600 13px/20px var(--ff), system-ui, sans-serif;background:0 0;border:0;border-radius:9px;align-items:center;padding:9px 12px;text-decoration:none;display:inline-flex;transform:none}.site-nav .top-level-tab:hover,.site-nav .top-level-tab.active{color:var(--c-hl-1);background:var(--c-hl-5);box-shadow:none}@keyframes page-loading-spin{to{transform:rotate(360deg)}}@keyframes room-light-on{0%{opacity:.55}to{opacity:1}}@keyframes map-light-pulse{50%{filter:drop-shadow(0 0 4px var(--app-warning-soft));transform:scale(1.1)}}@keyframes map-fan-spin{to{transform:rotate(360deg)}}@keyframes map-air-breathe{50%{opacity:.58;transform:translate(2px)}}@keyframes map-tv-flicker{50%{opacity:.58;transform:scale(1.07)}}@keyframes map-recording{50%{opacity:.3;transform:scale(.7)}}@keyframes map-sunlight{50%{opacity:.58;transform:translate(-50%,-5%)rotate(11deg)scale(1.03)}}@keyframes map-breeze{0%{opacity:0;transform:translate(-6px)scaleX(.72)}28%{opacity:.78}to{opacity:0;transform:translate(14px)scaleX(1.05)}}@keyframes map-unlocked-glow{50%{border-color:#f2962d2e;transform:translate(-50%,-50%)scale(1.11);box-shadow:0 0 14px #f2962d6b}}@keyframes map-live-pulse{50%{opacity:.45;box-shadow:0 0 0 3px #34a4dc00}}@keyframes room-map-active-pulse{0%{box-shadow:0 0 #e9911d61}70%{box-shadow:0 0 0 8px #e9911d00}to{box-shadow:0 0 #e9911d00}}@media (width>=681px){.site-header{border:0;border-right:1px solid var(--app-border);width:264px;inset:0 auto 0 0}.site-header.collapsed{width:82px}.site-header-inner{flex-direction:column;align-items:stretch;gap:0;width:100%;height:100%;min-height:100vh;padding:24px 14px 20px;display:flex}.site-sidebar-top{justify-content:space-between;align-items:center;gap:8px;min-height:42px;margin-bottom:34px;padding:0 4px 0 2px;display:flex}.site-brand{gap:10px;min-width:0;overflow:hidden}.site-brand-name{text-overflow:ellipsis;overflow:hidden}.site-collapse-button{border:1px solid var(--app-border);width:32px;height:32px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;flex:0 0 32px;place-items:center;padding:0;display:grid}.site-collapse-button:hover{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-bg)}.site-nav{flex-direction:column;align-items:stretch;gap:7px;display:flex}.site-nav .top-level-tab{min-height:44px;color:var(--app-text-muted);white-space:nowrap;border-radius:11px;justify-content:flex-start;align-items:center;gap:13px;padding:0 14px;display:flex}.site-nav .top-level-tab:hover,.site-nav .top-level-tab.active{color:var(--app-primary);background:var(--app-primary-soft)}.site-nav .top-level-tab svg{flex:0 0 19px}.site-account{border-top:1px solid var(--app-border);flex-direction:column;align-items:stretch;gap:10px;margin-top:auto;margin-left:0;padding-top:18px}.site-profile-link{min-width:0;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:9px;padding:5px;display:flex}.site-profile-link:hover{background:var(--app-bg)}.site-profile-link .site-avatar{flex:0 0 32px;width:32px;height:32px}.site-profile-copy{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.site-profile-copy strong{font:700 11px/15px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-profile-copy small{color:var(--app-text-subtle);font:400 9px/13px var(--ff), system-ui, sans-serif}.site-profile-link>svg{color:var(--app-text-subtle)}.site-account .site-logout{justify-content:center;width:100%}.site-header.collapsed .site-sidebar-top{justify-content:center}.site-header.collapsed .site-brand-name,.site-header.collapsed .site-profile-copy,.site-header.collapsed .site-profile-link>svg{display:none}.site-header.collapsed .site-nav .top-level-tab{justify-content:center;padding:0}.site-header.collapsed .site-profile-link{justify-content:center}.site-header.collapsed .site-account .site-logout{width:100%}.site-main{padding:96px 32px 96px 296px}.site-header.collapsed~.site-main{padding-left:114px}}.site-brand-logo{object-fit:contain;flex:0 0 34px;width:34px;height:34px;display:block}.site-brand-name{white-space:nowrap}.site-brand-home{color:var(--c-nd-1)}.site-brand-mind{color:var(--c-hl-1)}@keyframes fan-spin{to{transform:rotate(360deg)}}@keyframes ac-breathe{50%{opacity:.78;transform:scale(1.08)}}@keyframes curtain-sway{0%{transform:translate(-2px)}to{transform:translate(2px)}}@keyframes heater-pulse{50%{filter:brightness(1.08);transform:scale(1.09)}}@keyframes water-pulse{50%{transform:translateY(-2px)scale(1.08)}}@media (width<=680px){.site-header{background:var(--app-surface);pointer-events:auto}.site-header-inner{justify-content:space-between;min-height:64px;padding:8px 16px}.site-sidebar-top{align-items:center;gap:0;display:flex}.site-brand{display:inline-flex}.site-brand-name{display:inline}.site-collapse-button{display:none}.site-menu-button{pointer-events:auto}}.back-button{width:auto;color:var(--c-nd-4);font:600 12px/16px var(--ff), system-ui, sans-serif;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:flex-start;align-self:flex-start;align-items:center;gap:6px;margin:0 0 24px;padding:4px;line-height:16px;display:inline-flex}.back-button svg{flex:none}.back-button:hover{color:var(--c-hl-1);background:var(--c-hl-5)}.back-button:focus-visible{outline:2px solid var(--c-hl-1);outline-offset:2px}@keyframes camera-spin{to{transform:rotate(360deg)}}@media (width<=680px){.site-sidebar-top{display:none}.site-header-inner{position:relative}.site-header .site-nav .top-level-tab{align-items:center;gap:10px;display:flex}.site-header .site-nav .top-level-tab svg{flex:0 0 18px}.site-profile-link{display:none}}@media (width>=681px){.site-header,.site-header.collapsed{border:0;border-bottom:1px solid var(--app-border);width:100%;height:72px;inset:0 0 auto}.site-header-inner{flex-direction:row;align-items:center;gap:0;width:100%;height:72px;min-height:72px;padding:0 32px;display:flex}.site-sidebar-top{justify-content:flex-start;align-items:center;gap:14px;min-height:0;margin:0;padding:0;display:flex}.site-collapse-button{order:2}.site-nav,.site-header.collapsed .site-nav{z-index:29;border-right:1px solid var(--app-border);background:var(--app-surface);flex-direction:column;align-items:stretch;gap:7px;width:264px;padding:24px 14px 20px;transition:width .2s;display:flex;position:fixed;inset:72px auto 0 0}.site-header.collapsed .site-nav{width:82px}.site-header .site-nav .top-level-tab,.site-header.collapsed .site-nav .top-level-tab{min-height:44px;color:var(--app-text-muted);white-space:nowrap;border-radius:11px;justify-content:flex-start;align-items:center;gap:13px;padding:0 14px;display:flex}.site-header .site-nav .top-level-tab:hover,.site-header .site-nav .top-level-tab.active{color:var(--app-primary);background:var(--app-primary-soft)}.site-header .site-nav .top-level-tab svg{flex:0 0 19px}.site-header.collapsed .site-nav .top-level-tab{justify-content:center;padding:0}.site-header.collapsed .site-nav .top-level-tab span{display:none}.site-account{border:0;flex-direction:row;align-items:center;gap:12px;margin:0 0 0 auto;padding:0;display:flex}.site-account .site-logout{width:34px}.site-main,.site-header.collapsed~.site-main{padding:96px 32px 96px 296px;transition:padding-left .2s}.site-header.collapsed~.site-main{padding-left:114px}.site-header.collapsed .site-sidebar-top{justify-content:flex-start}.site-header.collapsed .site-brand-name{display:inline}.site-header.collapsed .site-profile-copy,.site-header.collapsed .site-profile-link>svg{display:none}.site-header.collapsed .site-profile-link{justify-content:center}}@keyframes assistant-thinking-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.app-with-assistant{flex:1;min-width:0;position:relative}.app-content{width:100%;min-width:0}.header-assistant-button{cursor:pointer;font:inherit;border:0}.header-assistant-trigger{border:1px solid var(--app-border-strong);min-height:34px;color:var(--app-primary-strong);background:var(--app-bg);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.header-assistant-trigger:hover,.header-assistant-trigger.active{color:var(--app-text-inverse);border-color:var(--app-primary-strong);background:var(--app-primary-strong)}.site-header-actions{align-items:center;gap:9px;margin-left:auto;display:flex}.header-add-device{min-height:36px;color:var(--app-text-inverse);background:var(--app-primary);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.header-add-device:hover{background:var(--app-primary-deep)}.header-layout-button{border:1px solid var(--app-border-strong);min-height:36px;color:var(--app-primary-strong);background:var(--app-bg);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.header-layout-button:hover{color:var(--app-text-inverse);border-color:var(--app-primary-strong);background:var(--app-primary-strong)}.site-icon-button{border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;place-items:center;padding:0;display:grid}.header-notifications{position:relative}.header-notification-button:hover,.header-notification-button[aria-expanded=true]{color:var(--app-primary-strong);border-color:var(--app-primary-border);background:var(--app-bg)}.site-sidebar-account{display:none}@keyframes profile-upload-spin{to{transform:rotate(360deg)}}@media (width>=681px){.site-sidebar-account{z-index:31;border-top:1px solid var(--app-border);border-right:1px solid var(--app-border);background:var(--app-surface);align-items:center;gap:8px;width:264px;padding:14px;transition:width .2s;display:flex;position:fixed;bottom:0;left:0}.site-sidebar-account .site-profile-link{min-width:0;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;align-items:center;gap:10px;padding:8px;display:flex}.site-sidebar-account .site-profile-link:hover{background:var(--app-bg)}.site-sidebar-account .site-profile-copy{flex:1;gap:2px;min-width:0;display:grid}.site-sidebar-account .site-profile-copy strong,.site-sidebar-account .site-profile-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-sidebar-account .site-profile-copy strong{font-size:11px}.site-sidebar-account .site-profile-copy small{color:var(--app-text-subtle);font-size:9px}.site-header.collapsed .site-sidebar-account{flex-direction:column;width:82px}.site-header.collapsed .site-sidebar-account .site-profile-copy,.site-header.collapsed .site-sidebar-account .site-profile-link>svg{display:none}.site-header.collapsed .site-sidebar-account .site-profile-link{justify-content:center}.site-header.collapsed .site-sidebar-account .site-logout{width:36px}.site-nav{padding-bottom:104px!important}}@media (width<=680px){.site-header{background:var(--app-surface);border-bottom:1px solid var(--app-border);pointer-events:auto}.site-header-inner{min-height:64px;padding:8px 14px}.site-header-actions{order:1;margin-left:auto}.site-menu-button{order:2;margin-left:0}.header-assistant-trigger span,.header-layout-button span,.header-add-device span{display:none}.header-assistant-trigger,.header-layout-button,.header-add-device{justify-content:center;width:36px;min-height:36px;padding:0}.site-main{padding-top:84px}}@media (width<=900px){.header-assistant-trigger{z-index:30;border-radius:50%;place-items:center;width:50px;height:50px;min-height:50px;padding:0;display:grid;position:fixed;bottom:16px;right:16px;box-shadow:0 8px 22px #3157d540}.header-assistant-trigger span{display:none}.header-assistant-trigger.active{opacity:0;pointer-events:none;bottom:16px;right:16px}}@media (width>=901px){.app-with-assistant{display:flex}.app-content{flex:auto}.site-layout.assistant-is-open .overview-layout-grid,.site-layout.assistant-is-open .presence-row{grid-template-columns:minmax(0,1fr)}.site-layout.assistant-is-open .overview-stat-grid,.site-layout.assistant-is-open .device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-layout.assistant-is-open .profile-grid{grid-template-columns:minmax(0,1fr)}}@media (width>=901px) and (width<=1200px){.site-layout.assistant-is-open .overview-stat-grid,.site-layout.assistant-is-open .device-grid{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.overview-page *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width>=681px){.site-header,.site-header.collapsed{border:0;border-right:1px solid var(--app-border);background:var(--app-surface);width:264px;height:100vh;inset:0 auto 0 0}.site-header-inner{flex-direction:column;align-items:stretch;gap:0;width:100%;height:100%;min-height:100vh;padding:22px 14px 18px;display:flex}.site-sidebar-top{justify-content:space-between;align-items:center;width:100%;min-height:42px;margin:0 0 28px;padding:0 8px;display:flex}.site-collapse-button{order:0}.site-nav,.site-header.collapsed .site-nav{background:0 0;border:0;flex-direction:column;align-items:stretch;gap:7px;width:100%;padding:0;display:flex;position:static;inset:auto}.site-header .site-nav .top-level-tab,.site-header.collapsed .site-nav .top-level-tab{border-radius:11px;justify-content:flex-start;align-items:center;gap:13px;min-height:44px;padding:0 14px;display:flex}.site-sidebar-account{margin-top:auto;padding:10px 0 0;display:flex}.site-header-actions{z-index:35;position:fixed;top:18px;right:28px}.site-main,.site-header.collapsed~.site-main{min-height:100vh;padding:32px 32px 96px 296px;transition:padding-left .2s}.site-header.collapsed{width:82px}.site-header.collapsed .site-brand-name,.site-header.collapsed .site-profile-copy,.site-header.collapsed .site-profile-link>svg,.site-header.collapsed .site-nav .top-level-tab span,.site-header.collapsed .site-collapse-button{display:none}.site-header.collapsed .site-sidebar-top,.site-header.collapsed .site-nav .top-level-tab{justify-content:center;padding:0}.site-header.collapsed .site-sidebar-account,.site-header.collapsed .site-profile-link{justify-content:center}.site-header.collapsed~.site-main{padding-left:114px}.site-floating-collapse{z-index:60;border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;place-items:center;padding:0;display:grid;position:fixed;top:18px;left:246px;box-shadow:0 3px 10px #1f202414}.site-floating-collapse:hover{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-bg)}.site-floating-collapse.collapsed{left:64px}}@media (width<=680px){.site-floating-collapse{display:none}}@media (width>=681px){:root{--sidebar-width:264px;--sidebar-collapsed-width:82px}html,body,#root{min-width:0;min-height:100%}.site-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);grid-template-rows:minmax(0,1fr) auto;min-height:100vh;display:grid;overflow-x:clip}.site-layout:has(.site-header.collapsed){grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.site-header,.site-header.collapsed{z-index:30;grid-area:1/1/3;width:auto;min-width:0;height:100vh;position:relative;inset:auto}.site-header-inner{box-sizing:border-box;width:100%;height:100%;min-height:100vh}.app-with-assistant{grid-area:1/2;width:100%;min-width:0}.app-content>.site-main,.site-main{box-sizing:border-box;width:100%;min-width:0;max-width:none;padding:32px}.site-main>*{width:100%;min-width:0;max-width:1240px}.site-footer{width:auto;margin:0;position:static}.site-floating-collapse{left:calc(var(--sidebar-width) - 18px);position:fixed}.site-layout:has(.site-header.collapsed) .site-floating-collapse{left:calc(var(--sidebar-collapsed-width) - 18px)}}@media (width<=680px){.site-layout{min-height:100vh;display:flex;overflow-x:clip}.app-with-assistant,.app-content,.app-content>.site-main{width:100%;min-width:0}}@media (width>=681px){:root{--sidebar-width:264px;--sidebar-collapsed-width:82px;--header-height:68px}.site-layout{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);grid-template-rows:var(--header-height) minmax(0, 1fr);min-height:100vh;display:grid;overflow-x:clip}.site-layout:has(.app-sidebar.is-collapsed){grid-template-columns:var(--sidebar-collapsed-width) minmax(0, 1fr)}.app-sidebar{z-index:80;width:var(--sidebar-width);border-right:1px solid var(--app-border);background:var(--app-surface);box-sizing:border-box;flex-direction:column;grid-area:1/1/3;min-width:0;height:100vh;padding:20px 14px 16px;transition:width .22s,padding .22s;display:flex;position:fixed;inset:0 auto 0 0}.app-sidebar-brand{justify-content:space-between;align-items:center;gap:10px;min-height:42px;display:flex}.app-sidebar-toggle{border:1px solid var(--app-border);width:34px;height:34px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;flex:0 0 34px;place-items:center;display:grid}.app-sidebar-toggle:hover{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-surface-hover)}.app-sidebar-nav{flex-direction:column;flex:1;gap:7px;margin-top:28px;display:flex}.app-sidebar-nav .top-level-tab{min-height:44px;color:var(--app-text-muted);font:600 13px/18px var(--ff), system-ui, sans-serif;border-radius:10px;align-items:center;gap:12px;padding:0 13px;text-decoration:none;transition:color .16s,background .16s,padding .22s;display:flex}.app-sidebar-nav .top-level-tab svg{flex:0 0 19px}.app-sidebar-nav .top-level-tab:hover,.app-sidebar-nav .top-level-tab.active{color:var(--app-primary);background:var(--app-primary-soft)}.app-sidebar-footer{border-top:1px solid var(--app-border);grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px;padding-top:16px;display:grid}.app-sidebar-footer .site-profile-link{min-width:0;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;padding:5px;display:flex}.app-sidebar-footer .site-profile-link:hover{background:var(--app-surface-sunken)}.app-sidebar-footer .site-profile-copy{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.app-sidebar-footer .site-profile-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.app-sidebar-footer .site-profile-copy small{color:var(--app-text-subtle);font-size:9px}.app-sidebar-footer .site-logout{border:1px solid var(--app-border);width:40px;height:40px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;font:600 11px/1 var(--ff), system-ui, sans-serif;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0;display:inline-flex}.app-sidebar-footer .site-logout:hover{color:var(--app-primary);border-color:var(--app-primary-border);background:var(--app-surface-hover)}.app-sidebar.is-collapsed{width:var(--sidebar-collapsed-width);padding-left:10px;padding-right:10px}.app-sidebar.is-collapsed .site-brand-name,.app-sidebar.is-collapsed .app-sidebar-footer .site-profile-copy,.app-sidebar.is-collapsed .app-sidebar-footer .site-logout span{display:none}.app-sidebar.is-collapsed .app-sidebar-brand{flex-direction:column;justify-content:center;gap:12px}.app-sidebar.is-collapsed .app-sidebar-toggle{display:grid}.app-sidebar.is-collapsed .app-sidebar-nav .top-level-tab,.app-sidebar.is-collapsed .app-sidebar-footer .site-profile-link{justify-content:center}.app-sidebar.is-collapsed .app-sidebar-nav .top-level-tab{border-radius:12px;width:44px;height:44px;min-height:44px;margin-inline:auto;padding:0}.app-sidebar.is-collapsed .app-sidebar-nav .top-level-tab span{display:none}.app-sidebar.is-collapsed .app-sidebar-footer{flex-direction:column;align-items:center;gap:10px;display:flex}.app-sidebar.is-collapsed .app-sidebar-footer .site-profile-link{width:44px;height:44px;padding:0}.app-sidebar.is-collapsed .app-sidebar-footer .site-logout{width:44px;height:40px;margin:0 auto;padding:0}.app-main{display:contents}.app-top-header{z-index:70;border-bottom:1px solid var(--app-border);background:var(--app-surface-translucent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-area:1/2;justify-content:space-between;align-items:center;min-width:0;padding:0 28px 0 30px;display:flex;position:sticky;top:0}.app-header-leading{align-items:center;gap:14px;min-width:0;display:flex}.app-header-toggle{border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;place-items:center;padding:0;display:grid}.app-header-toggle:hover{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-surface-hover)}.app-mobile-menu{display:none}.app-route-context{min-width:0;color:var(--app-text);align-items:center;gap:10px;display:inline-flex}.app-route-icon{width:34px;height:34px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:10px;flex:0 0 34px;place-items:center;display:grid}.app-route-copy{gap:1px;min-width:0;display:grid}.app-route-copy small{color:var(--app-text-subtle);font:600 9px/12px var(--ff), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase}.app-route-copy strong{color:var(--app-text);font:750 14px/18px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-header-actions{align-items:center;gap:10px;display:flex}.app-with-assistant{grid-area:2/2;align-items:stretch;min-width:0;display:flex}.app-content{min-width:0;min-height:calc(100vh - var(--header-height));flex-direction:column;flex:auto;display:flex}.app-content>.site-main{box-sizing:border-box;flex:auto;width:100%;min-width:0;max-width:none;padding:28px 30px 72px}.site-main>*{width:100%;min-width:0;max-width:1240px}.site-footer{flex:none;width:auto;margin:0;padding:16px 30px;position:static}}@media (width<=680px){.site-layout{flex-direction:column;min-height:100vh;display:flex}.app-sidebar{z-index:80;width:min(280px,86vw);transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app-sidebar.is-open{transform:translate(0)}.app-top-header{z-index:70;border-bottom:1px solid var(--app-border);background:var(--app-surface-translucent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;min-height:64px;padding:0 16px;display:flex;position:sticky;top:0}.app-header-leading{align-items:center;gap:11px;min-width:0;display:flex}.app-header-toggle{display:none}.app-mobile-menu{border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-text-muted);background:var(--app-surface);border-radius:9px;place-items:center;display:grid}.app-route-icon{border-radius:9px;flex-basis:32px;width:32px;height:32px}.app-route-copy small{display:none}.app-sidebar.is-collapsed{transform:translate(-100%)}.app-with-assistant{flex:1;min-width:0;display:flex}.app-content{flex-direction:column;flex:1;width:100%;min-width:0;min-height:calc(100vh - 64px);display:flex}.app-content>.site-main{box-sizing:border-box;flex:1;width:100%;min-width:0;padding:20px 16px 64px}.site-footer{box-sizing:border-box;width:100%;margin:0;padding:16px}}h1{letter-spacing:0;font-size:30px;line-height:1.25}.site-brand{font-size:17px;line-height:22px}.site-nav-link,.site-nav .top-level-tab{font-size:14px;line-height:20px}.site-email,.site-footer{font:var(--t-b-s)}@media (width<=760px){.site-nav-link,.site-nav .top-level-tab{font-size:13px}}.app-page-header{align-items:center;min-height:40px;margin:0;padding:0;display:flex}.app-page-header h1{color:var(--c-nd-1);font:800 32px/40px var(--ff), system-ui, sans-serif;letter-spacing:-.2px;margin:0}@keyframes energy-refresh-spin{to{transform:rotate(360deg)}}@keyframes energy-drawer-in{0%{opacity:.5;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.placeholder-icon{background:var(--c-hl-4);width:32px;height:32px;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.status-bar{z-index:2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);height:44px;font:600 15px/1 var(--ff), system-ui, sans-serif;letter-spacing:-.165px;justify-content:space-between;align-items:center;padding:0 20px;display:flex;position:absolute;inset:0 0 auto}.status-icons{letter-spacing:-2px;align-items:center;gap:7px;font-size:12px;display:flex}.signal{transform:scaleY(.8)}.wifi{font-size:21px;line-height:10px;transform:rotate(-20deg)}.battery{letter-spacing:-3px;font-size:14px}.input-field{border:1px solid var(--c-nl-1);background:var(--c-nl-5);border-radius:12px;align-items:center;height:48px;padding:12px 16px;transition:border-color .15s,box-shadow .15s;display:flex}.input-field:focus-within{border-color:var(--c-hl-1);box-shadow:0 0 0 3px var(--c-hl-5)}.input-field input{width:100%;min-width:0;color:var(--c-nd-1);font:400 14px/20px var(--ff), system-ui, sans-serif;background:0 0;border:0;outline:0}.input-field input::placeholder{color:var(--c-nd-5);opacity:1}.icon-button{cursor:pointer;background:0 0;border:0;flex:0 0 20px;place-items:center;width:20px;height:20px;padding:0;display:grid}.mask-icon{background:currentColor;width:16px;height:16px;display:block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.icon-button .mask-icon{color:var(--c-nd-5)}.text-button{color:var(--c-hl-1);font:600 12px/1.35 var(--ff), system-ui, sans-serif;cursor:pointer;background:0 0;border:0;padding:0}.form-actions{flex-direction:column;gap:16px;margin-top:8px;display:flex}.primary-button{width:100%;height:48px;color:var(--c-nl-5);background:var(--c-hl-1);font:600 12px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:12px;transition:background .15s,transform .15s}.primary-button:hover{background:var(--app-primary-deep)}.primary-button:active,.social-button:active{transform:scale(.98)}.feedback{color:var(--c-nd-4);text-align:center;font:400 12px/16px var(--ff), system-ui, sans-serif;margin:12px 0 -4px}.danger-button{border-color:var(--app-danger-deep)!important;background:var(--app-danger-deep)!important}.kit-toast{width:280px;font:var(--t-b-s);border-radius:16px;align-items:center;gap:16px;padding:16px;display:flex}.kit-toast-informative{background:var(--c-hl-5)}.kit-toast-success{background:var(--c-ok-3)}.kit-toast-warning{background:var(--c-warn-3)}.kit-toast-error{background:var(--c-err-3)}.kit-toast-icon{background:var(--c-hl-4);width:24px;height:24px;color:var(--c-hl-1);border-radius:50%;flex:0 0 24px;place-items:center;font-weight:800;display:grid}.kit-toast-success .kit-toast-icon{background:var(--c-ok-2);color:var(--c-nl-5)}.kit-toast-warning .kit-toast-icon{background:var(--c-warn-2);color:var(--c-nl-5)}.kit-toast-error .kit-toast-icon{background:var(--c-err-2);color:var(--c-nl-5)}.kit-toast-content{flex:1;min-width:0}.kit-toast-content p{color:var(--c-nd-3);margin:4px 0 0;line-height:16px}.kit-toast-close{color:var(--c-nd-4);cursor:pointer;background:0 0;border:0;padding:0;font-size:18px}.check-row{color:var(--c-nd-4);font:400 12px/16px var(--ff), system-ui, sans-serif;align-items:center;gap:8px;margin:4px 0 8px;display:flex}.check-row input{width:16px;height:16px;accent-color:var(--c-hl-1)}.secondary-button{border:1px solid var(--c-nl-1);height:48px;color:var(--c-nd-1);background:var(--c-nl-5);cursor:pointer;font:600 12px/1 var(--ff), system-ui, sans-serif;border-radius:12px}.secondary-button:hover{border-color:var(--c-hl-1);color:var(--c-hl-1)}.state-conflict-retry{border:1px solid var(--app-warning-soft);color:var(--app-warning-deep);background:var(--app-warning-soft);font:600 12px/16px var(--ff), system-ui, sans-serif;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 14px;padding:10px 12px;display:flex}.state-conflict-retry .secondary-button{border-color:var(--app-warning);height:34px;color:var(--app-warning-deep);background:var(--app-surface);white-space:nowrap;padding:0 12px}.button-link{justify-content:center;align-items:center;text-decoration:none;display:flex}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.choice-card{border:1px solid var(--c-nl-3);min-height:200px;color:var(--c-nd-1);background:var(--c-nl-5);cursor:pointer;border-radius:16px;flex-direction:column;gap:14px;padding:24px;text-decoration:none;transition:border-color .2s,box-shadow .2s,background-color .2s;display:flex}.choice-card:hover{border-color:var(--c-hl-4);background:var(--c-nl-4);box-shadow:0 12px 30px #1f202414}.choice-card:focus-visible{outline:3px solid var(--c-hl-4);outline-offset:3px}.choice-card>svg{color:var(--c-hl-1)}.choice-card strong{font:700 16px/24px var(--ff), system-ui, sans-serif;margin-top:auto}.choice-card span{color:var(--c-nd-4);font:var(--t-b-s)}.panel-heading-row h2{font:800 18px/24px var(--ff), system-ui, sans-serif;margin:0 0 5px}.panel-heading{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.detail-grid div{flex-direction:column;gap:7px;display:flex}.detail-grid span{color:var(--c-nd-5);font:400 12px/16px var(--ff), system-ui, sans-serif}.detail-grid strong{color:var(--c-nd-1);font:600 13px/20px var(--ff), system-ui, sans-serif}.modal-actions{gap:12px;margin-top:24px;display:flex}.modal-actions button{flex:1}.form-toast{z-index:40;width:360px;position:fixed;top:28px;right:28px;box-shadow:0 12px 32px #1f20241f}@media (width<=680px){.form-toast,.app-toast{width:auto;top:16px;left:16px;right:16px}}.danger-text{color:var(--app-danger)}.custom-layout-link{width:100%;margin-top:14px}.panel-title{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.panel-title h2{color:var(--app-text);font:800 18px/24px var(--ff), system-ui, sans-serif;margin:0 0 5px}.panel-title p{color:var(--app-text-muted);font:400 12px/16px var(--ff), system-ui, sans-serif;margin:0}.count-badge{min-width:28px;color:var(--app-primary);background:var(--app-primary-soft);text-align:center;font:700 11px/16px var(--ff), system-ui, sans-serif;border-radius:999px;padding:5px 9px}.loading-dot{background:var(--c-hl-3);width:10px;height:10px;box-shadow:0 0 0 6px var(--app-primary-soft);border-radius:50%;margin-bottom:8px}.loading-spinner{border:3px solid var(--app-border);border-top-color:var(--app-primary-light);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite page-loading-spin}.modal-description{color:var(--app-text-muted);font:400 12px/18px var(--ff), system-ui, sans-serif;margin:-12px 0 20px}.hold-unlock-button,.lock-button{color:var(--app-text-inverse);background:var(--app-primary);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:13px 15px;display:inline-flex}.hold-unlock-button:disabled,.lock-button:disabled{cursor:not-allowed;opacity:.5}.inline-loading{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;align-items:center;gap:9px;margin:10px 0 14px;display:inline-flex}.inline-loading .loading-spinner{border-width:2px;width:16px;height:16px}.compact-camera-page{max-width:900px!important}.smart-control-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;margin-top:18px;padding:22px;box-shadow:0 12px 32px #1f20240b}.smart-panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.smart-panel-heading h2{letter-spacing:-.35px;margin:6px 0 0;font-size:21px}.smart-current-value{color:var(--app-primary);background:var(--app-primary-soft);font:700 11px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.smart-range-control{gap:11px;margin-top:24px;display:grid}.smart-range-control>span{color:var(--app-text-muted);font:500 12px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;display:flex}.smart-range-control>span strong{color:var(--app-text)}.smart-range-control>span b{color:var(--app-primary)}.smart-range-control input{width:100%;accent-color:var(--app-primary);cursor:pointer}.smart-range-control input:disabled{cursor:not-allowed;opacity:.45}.smart-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:19px;display:grid}.smart-toggle{border:1px solid var(--app-border);color:var(--app-text);background:var(--app-surface-raised);text-align:left;cursor:pointer;border-radius:12px;grid-template-rows:1fr 1fr;grid-template-columns:34px 1fr;column-gap:9px;padding:11px;display:grid}.smart-toggle>span{width:34px;height:34px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:10px;grid-row:1/3;place-items:center;display:grid}.smart-toggle strong{align-self:end;font-size:11px}.smart-toggle small{color:var(--app-text-muted);align-self:start;font-size:10px}.smart-toggle.active{border-color:var(--app-primary-border);background:var(--app-bg)}.smart-toggle:disabled{cursor:not-allowed;opacity:.5}.smart-mode-row{gap:9px;margin-top:20px;display:grid}.smart-mode-row>span{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.08em}.smart-mode-row>div{flex-wrap:wrap;gap:7px;display:flex}.smart-mode-row button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;padding:9px 12px}.smart-mode-row button.selected,.smart-mode-row button:hover:not(:disabled){border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.smart-mode-row button:disabled{cursor:not-allowed;opacity:.45}.smart-quick-actions,.lock-actions{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:21px;display:grid}.smart-quick-actions button,.lock-actions button{border:1px solid var(--app-border);color:var(--app-primary);background:var(--app-surface-raised);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:12px;justify-items:center;gap:7px;padding:14px 8px;display:grid}.smart-quick-actions button:hover,.lock-actions button:hover{border-color:var(--app-primary-border);background:var(--app-bg)}.smart-quick-actions button:disabled,.lock-actions button:disabled{cursor:not-allowed;opacity:.45}@media (width<=560px){.smart-toggle-grid,.smart-quick-actions{grid-template-columns:1fr}.smart-control-panel{padding:17px}}.smart-home-chat{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;flex-direction:column;gap:0;width:min(920px,100%);min-height:calc(100vh - 150px);padding:0;display:flex;overflow:hidden;max-width:920px!important}.toast-viewport{z-index:120;pointer-events:none;gap:10px;width:min(380px,100vw - 32px);display:grid;position:fixed;top:88px;right:24px}.toast-viewport .kit-toast{pointer-events:auto;border:1px solid #1f202412;align-items:flex-start;width:100%;box-shadow:0 14px 38px #1f202424}.toast-viewport .kit-toast-close{border-radius:8px;flex:0 0 28px;place-items:center;width:28px;height:28px;display:grid}.toast-viewport .kit-toast-close:hover{background:#1f202414}.modal-description{color:var(--c-nd-4);margin:-14px 0 22px;font-size:12px;line-height:18px}.notification-popover{z-index:70;border:1px solid var(--app-border);background:var(--app-surface);border-radius:14px;width:300px;padding:16px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 16px 36px #1f202424}.notification-popover>strong{font-size:13px}.notification-empty{color:var(--app-text-subtle);text-align:center;justify-items:center;gap:6px;padding:30px 12px 20px;display:grid}.notification-empty span{color:var(--app-text-muted);font-size:12px;font-weight:700}.notification-empty small{font-size:10px}.simple-schedule-editor{gap:8px;display:grid}.simple-schedule-row{background:var(--app-surface-raised);border-radius:10px;grid-template-columns:100px 132px minmax(210px,1fr) 39px 30px;align-items:end;gap:8px;padding:10px;display:grid}.simple-schedule-row label{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;gap:5px;display:grid}.simple-schedule-row input,.simple-schedule-row select{border:1px solid var(--app-border);min-width:0;color:var(--app-text);background:var(--app-surface);font:600 11px/1 var(--ff), system-ui, sans-serif;border-radius:7px;padding:8px}.simple-schedule-days{flex-wrap:wrap;gap:4px;display:flex}.simple-schedule-days button{border:1px solid var(--app-border);min-width:28px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:7px;padding:7px 5px}.simple-schedule-days button.selected{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.simple-schedule-row button:disabled,.simple-schedule-row input:disabled,.simple-schedule-row select:disabled{cursor:not-allowed;opacity:.48}@media (width<=700px){.simple-schedule-row{grid-template-columns:1fr 1fr 39px 30px}.simple-schedule-days{grid-area:2/1/auto/-1}}.primary-button,.secondary-button{font-size:14px}.login-screen{background:var(--c-nl-5);width:100%;max-width:375px;min-height:812px;color:var(--c-nd-1);margin:0 auto;position:relative;overflow:hidden}.auth-main{place-items:center;display:grid}.login-hero-image{object-fit:cover;object-position:center 52%;width:100%;height:100%;display:block}.login-options{z-index:1;padding:352px 24px 40px;position:relative}.login-brand{align-items:center;gap:9px;margin-bottom:18px;display:inline-flex}.login-brand-logo{border-radius:10px;width:38px;height:38px;display:block}.login-brand-wordmark{color:var(--c-nd-1);font:800 18px/22px var(--ff), system-ui, sans-serif;letter-spacing:-.35px;display:inline-flex}.login-brand-wordmark span:last-child,.login-heading-mind{color:var(--c-hl-1)}.login-form{flex-direction:column;gap:16px;display:flex}.password-field{gap:8px}.password-toggle{color:var(--c-nd-5)}.password-toggle:hover{color:var(--c-hl-1)}.forgot-button{align-self:flex-start;margin-top:-2px;text-decoration:none}.demo-account-picker{gap:8px;display:grid}.demo-account-label{color:var(--c-nd-4);font:500 11px/16px var(--ff), system-ui, sans-serif}.demo-account-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.demo-account-button{border:1px solid var(--c-nl-1);min-height:48px;color:var(--c-nd-2);background:var(--c-nl-5);text-align:left;cursor:pointer;border-radius:12px;align-content:center;gap:2px;padding:8px 10px;transition:border-color .15s,color .15s,background .15s,box-shadow .15s;display:grid}.demo-account-button strong{font:700 12px/16px var(--ff), system-ui, sans-serif}.demo-account-button span{color:var(--c-nd-5);font:400 10px/14px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.demo-account-button:hover{border-color:var(--c-hl-2);color:var(--c-hl-1);background:var(--c-hl-5)}.demo-account-button:focus-visible{border-color:var(--c-hl-1);box-shadow:0 0 0 3px var(--c-hl-5);outline:0}.register-copy{color:var(--c-hl-1);text-align:center;font:600 12px/16px var(--ff), system-ui, sans-serif;letter-spacing:.12px;margin:0}.register-copy span{color:var(--c-nd-4);font-weight:400}@media (width>=768px){.login-screen{border-radius:24px;grid-template-columns:minmax(420px,1fr) minmax(420px,1fr);max-width:1180px;height:min(100vh,820px);min-height:720px;margin:0 auto;display:grid;overflow:hidden;box-shadow:0 24px 70px #1f20241f}.hero-image{height:100%;min-height:720px;padding:0;position:relative;inset:auto;overflow:hidden}.placeholder-icon{width:72px;height:72px}.status-bar{display:none}.login-options{flex-direction:column;justify-content:center;width:100%;max-width:500px;min-height:100%;margin:0 auto;padding:64px 72px;display:flex}.login-brand{margin-bottom:20px}h1{margin-bottom:32px}.login-form{width:100%}.form-actions{margin-top:8px}.feedback{margin-bottom:-8px}}@media (width>=376px) and (width<=767px){.login-screen{min-height:100vh;box-shadow:0 16px 50px #1f202414}}@media (width<=374px){.login-options{padding-left:20px;padding-right:20px}}.auth-page{background:var(--c-nl-4);min-height:100vh;color:var(--c-nd-1);place-items:center;padding:40px 20px;display:grid}.auth-card{border:1px solid var(--c-nl-3);background:var(--c-nl-5);border-radius:24px;width:min(100%,720px);padding:64px 72px;box-shadow:0 24px 70px #1f20241a}.auth-card>*{width:100%;max-width:560px;margin-left:auto;margin-right:auto}.auth-card .auth-heading,.auth-card .auth-footer{max-width:560px}.signup-card{flex-direction:column;justify-content:center;width:min(100%,720px);height:auto;min-height:680px;display:flex}.auth-heading{margin-bottom:32px}.auth-heading h1{margin:0 0 8px;font-size:24px}.auth-heading p{color:var(--c-nd-4);font:400 14px/20px var(--ff), system-ui, sans-serif;margin:0}.auth-heading strong{color:var(--c-nd-1);font-weight:600}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-label{color:var(--c-nd-2);font:600 12px/16px var(--ff), system-ui, sans-serif;flex-direction:column;gap:8px;display:flex}.auth-label input,.code-inputs input{border:1px solid var(--c-nl-1);width:100%;height:48px;color:var(--c-nd-1);background:var(--c-nl-5);font:400 14px/20px var(--ff), system-ui, sans-serif;border-radius:12px;outline:0;padding:12px 16px}.auth-label input:focus,.code-inputs input:focus{border-color:var(--c-hl-1);box-shadow:0 0 0 3px var(--c-hl-5)}.auth-label input::placeholder{color:var(--c-nd-5)}.auth-password{position:relative}.auth-password input{padding-right:60px}.auth-password button{height:48px;color:var(--c-hl-1);cursor:pointer;font:600 12px/1 var(--ff), system-ui, sans-serif;background:0 0;border:0;padding:0 4px;position:absolute;top:0;right:12px}.signup-card .auth-password button{color:var(--app-text)}.auth-footer{color:var(--c-nd-4);text-align:center;font:400 12px/16px var(--ff), system-ui, sans-serif;margin:24px 0 0}.auth-footer a{color:var(--c-hl-1);font-weight:600;text-decoration:none}.logout-card{text-align:center}.signup-toast{z-index:20;width:360px;position:fixed;top:28px;right:28px;box-shadow:0 12px 32px #1f20241f}@media (width<=600px){.auth-page{place-items:start center;padding:20px}.auth-card{border-radius:18px;margin-top:32px;padding:36px 24px}.choice-grid{grid-template-columns:1fr}}@media (width<=680px){.signup-card{width:100%;height:auto;min-height:680px}.signup-toast{width:auto;top:16px;left:16px;right:16px}}.auth-layout{background:var(--c-nl-4);min-height:100vh;color:var(--c-nd-1)}.auth-main{box-sizing:border-box;justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex}.auth-main>.auth-card{margin:0}@media (width>=681px){.auth-main{padding:40px 32px}}@media (width<=600px){.auth-main{align-items:flex-start}.auth-main>.auth-card{margin-top:32px}}.auth-label select{border:1px solid var(--c-nl-1);width:100%;min-height:48px;color:var(--c-nd-1);background:var(--app-surface);font:inherit;border-radius:12px;padding:0 14px}.demo-code-hint{color:var(--c-nd-5);font:400 11px/16px var(--ff), system-ui, sans-serif;margin-top:8px;display:block}.demo-code-hint strong{color:var(--c-hl-1);letter-spacing:.04em;font-weight:800}.auth-heading p,.auth-label,.check-row,.auth-footer,.feedback{font-size:13px;line-height:19px}.code-inputs{justify-content:center;gap:16px;margin:24px 0 8px;display:flex}.code-inputs input{text-align:center;width:56px;height:56px;padding:0;font-size:20px;font-weight:600}.profile-page{background:var(--c-nl-4);min-height:100vh;color:var(--c-nd-1);display:flex}.profile-topbar{justify-content:space-between;align-items:center;margin-bottom:44px;display:flex}.profile-topbar h1{letter-spacing:-.4px;margin:0;font-size:32px}.profile-eyebrow{color:var(--c-nd-5);font:600 11px/16px var(--ff), system-ui, sans-serif;letter-spacing:1px;text-transform:uppercase;margin:0 0 8px}.profile-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:24px;display:grid}.profile-hero-card,.profile-panel{border:1px solid var(--c-nl-3);background:var(--c-nl-5);border-radius:20px;box-shadow:0 12px 32px #1f20240a}.profile-hero-card{grid-column:1/-1;align-items:center;gap:24px;padding:32px;display:flex}.profile-avatar-wrap{background:var(--c-hl-5);border-radius:50%;flex:0 0 104px;width:104px;height:104px;padding:4px}.profile-identity{flex:1}.profile-identity h2,.panel-heading h2{font:800 18px/24px var(--ff), system-ui, sans-serif;margin:0 0 6px}.profile-identity p,.panel-heading p{color:var(--c-nd-4);font:400 13px/20px var(--ff), system-ui, sans-serif;margin:0}.profile-badge{color:var(--c-hl-1);background:var(--c-hl-5);font:600 11px/16px var(--ff), system-ui, sans-serif;border-radius:999px;margin-top:12px;padding:5px 10px;display:inline-flex}.profile-edit{width:140px}.profile-panel{padding:28px}.profile-modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1f202459;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.profile-modal{background:var(--c-nl-5);border-radius:20px;width:min(100%,440px);padding:32px;box-shadow:0 24px 70px #1f202433}.profile-modal h2{font:800 20px/24px var(--ff), system-ui, sans-serif;margin:0 0 24px}@media (width<=900px){.profile-hero-card{grid-column:auto}}@media (width<=640px){.profile-hero-card{flex-wrap:wrap;align-items:flex-start;padding:24px}.profile-edit{width:100%}.detail-grid{grid-template-columns:1fr}.profile-topbar{margin-bottom:28px}}.household-page{max-width:1180px}.household-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;margin-top:24px;padding:24px}.household-location-panel .panel-title{margin-bottom:18px}.household-location-picker{gap:14px;display:grid}.location-address-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;display:grid}.location-address-field{min-width:0;margin:0;position:relative}.location-search-results{z-index:500;border:1px solid var(--app-border);background:var(--app-surface);border-radius:12px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden;box-shadow:0 12px 30px #1f2a4429}.location-search-result{border:0;border-bottom:1px solid var(--app-border);width:100%;color:var(--app-text-secondary);background:var(--app-surface);cursor:pointer;text-align:left;font:inherit;align-items:flex-start;gap:10px;padding:11px 12px;display:flex}.location-search-result:last-child{border-bottom:0}.location-search-result:hover{background:var(--app-bg)}.location-search-result>span:last-child{gap:3px;min-width:0;display:grid}.location-search-result strong{color:var(--app-text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.location-search-result small{color:var(--app-text-muted);font-size:10px}.location-result-icon{width:24px;height:24px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:50%;flex:0 0 24px;place-items:center;font-size:16px;display:grid}.location-search-button{white-space:nowrap;min-height:42px}.location-map-shell{border:1px solid var(--app-border);background:var(--app-surface-hover);border-radius:14px;min-height:330px;position:relative;overflow:hidden}.household-location-map{z-index:0;width:100%;height:330px}.location-map-hint{z-index:400;color:var(--app-text-secondary);background:var(--app-surface-translucent);pointer-events:none;border-radius:999px;padding:7px 10px;font-size:11px;position:absolute;top:12px;left:12px;box-shadow:0 4px 12px #1f2a441f}.location-picker-footer{color:var(--app-text-muted);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;font-size:11px;display:flex}.location-search-message{color:var(--app-primary-light)}.location-form-actions{justify-content:flex-end;margin-top:16px;display:flex}@media (width<=700px){.household-panel{padding:18px}.location-address-row{grid-template-columns:1fr}.location-search-button{width:100%}.location-map-shell,.household-location-map{height:280px;min-height:280px}.location-map-hint{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden}}.household-select{border:1px solid var(--app-border)}.household-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.household-card{border:1px solid var(--c-nl-3);min-height:104px;color:var(--c-nd-1);background:var(--c-nl-5);text-align:left;cursor:pointer;border-radius:16px;align-items:flex-start;gap:14px;padding:18px;display:flex}.household-type-fieldset{border:0;padding:0}.household-type-fieldset legend{padding:0}.household-create-card{width:min(100%,640px)}.household-create-card .household-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-page{max-width:1240px}.layout-form{gap:18px;display:grid}.layout-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.layout-details label{gap:6px;font-size:.9rem;font-weight:650;display:grid}.layout-details input,.layout-details select{border:1px solid var(--border,var(--app-border-strong));background:#fff;border-radius:10px;width:100%;padding:10px 12px}.layout-editor{border:1px solid var(--border,var(--app-border-strong));background:var(--app-surface);border-radius:16px;grid-template-columns:180px minmax(0,1fr);min-height:580px;display:grid;overflow:hidden}.layout-palette{background:var(--app-surface-raised);border-right:1px solid var(--border,var(--app-border-strong));flex-direction:column;gap:7px;padding:16px;display:flex;overflow-y:auto}.layout-palette strong{margin-top:8px}.layout-palette small{color:var(--app-text-muted);font-size:.74rem;line-height:1.4}.layout-palette select{border:1px solid var(--app-border-strong);background:var(--app-surface);width:100%;color:var(--app-text-secondary);border-radius:8px;padding:9px 10px}.layout-palette button,.layout-floor-tabs button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:8px;display:flex}.layout-palette button:hover,.layout-floor-tabs button:hover,.layout-floor-tabs button.selected{background:var(--app-primary-soft);color:var(--app-primary-strong)}.layout-workspace{flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex}.layout-floor-tabs{gap:5px;display:flex}.layout-canvas{border:2px dashed var(--app-border-strong);background-color:var(--app-surface-raised);background-image:linear-gradient(var(--app-border) 1px, transparent 1px), linear-gradient(90deg, var(--app-border) 1px, transparent 1px);touch-action:none;background-size:5% 5%;flex:1;min-height:460px;position:relative;overflow:hidden}.layout-photo-canvas{aspect-ratio:4/3;border:1px solid var(--app-border-strong);background-color:var(--app-surface-raised);background-image:radial-gradient(var(--app-border) 1.2px, transparent 1.2px);background-size:18px 18px;border-radius:12px;place-items:center;display:grid;box-shadow:inset 0 0 0 8px #ffffff7a}.layout-floorplan-image{object-fit:contain;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.layout-template-badge{z-index:2;color:var(--app-text-inverse);background:var(--app-text-secondary);text-transform:uppercase;border-radius:7px;padding:7px 10px;font-size:.75rem;font-weight:800;position:absolute;top:14px;left:14px;box-shadow:0 4px 12px #16203038}.layout-room{border:2px solid var(--app-primary-border);background:var(--app-primary-soft);min-width:20px;min-height:20px;color:var(--app-text-secondary);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:10px;position:absolute}.layout-room.selected{border-color:var(--app-primary-deep);box-shadow:0 0 0 3px var(--app-primary-border)}.layout-room>span{text-overflow:ellipsis;white-space:nowrap;padding:7px;font-size:.78rem;font-weight:700;display:block;overflow:hidden}.layout-delete{background:var(--app-surface);width:20px;height:20px;color:var(--app-danger-deep);cursor:pointer;border:0;border-radius:50%;position:absolute;top:4px;right:4px}.layout-resize{cursor:nwse-resize;background:var(--app-primary-strong);border-radius:3px 0 8px;width:14px;height:14px;position:absolute;bottom:-2px;right:-2px}.layout-device-wrap{z-index:3;width:27px;height:27px;position:absolute;transform:translate(-50%,-50%)}.layout-device{border:2px solid var(--app-surface);background:var(--app-primary);width:27px;height:27px;color:var(--app-text-inverse);cursor:grab;border-radius:50%;place-items:center;display:grid;box-shadow:0 3px 8px #1a23344d}.layout-device-delete{width:16px;height:16px;color:var(--app-text-inverse);background:var(--app-danger-deep);cursor:pointer;border:0;border-radius:50%;font-size:13px;line-height:1;position:absolute;top:-8px;right:-8px}.layout-empty{text-align:center;color:var(--app-text-muted);margin:0;padding:30px}@media (width<=720px){.layout-details,.layout-editor{grid-template-columns:1fr}.layout-palette{border-right:0;border-bottom:1px solid var(--border,var(--app-border-strong));max-height:190px}.layout-canvas{min-height:360px}.page-title-row{flex-direction:column;align-items:flex-start}}.household-card>.icon{color:var(--c-hl-1);flex:none}.household-type-fieldset,.household-type-fieldset .household-grid{width:100%;min-width:0}.household-card:hover,.household-card.selected{border-color:var(--c-hl-3);box-shadow:0 8px 24px #006ffd14}.household-card-icon{width:40px;height:40px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:12px;flex:0 0 40px;place-items:center;font-size:20px;display:grid}.household-card>span:nth-child(2){flex-direction:column;flex:1;align-items:flex-start;gap:3px;min-width:0;display:flex;overflow:hidden}.household-card strong{font:700 14px/20px var(--ff), system-ui, sans-serif}.household-card small{max-width:100%;color:var(--c-nd-4);font:400 11px/16px var(--ff), system-ui, sans-serif;white-space:normal;overflow-wrap:anywhere}.household-card>span:nth-child(2) small+small{color:var(--c-nd-5)}.household-card{grid-template-columns:40px minmax(0,1fr) 22px;align-items:start;min-height:126px;display:grid}.household-card-check{width:22px;height:22px;color:var(--app-text-inverse);background:var(--app-primary);opacity:0;border-radius:50%;place-items:center;transition:opacity .15s,transform .15s;display:grid;transform:scale(.8)}.household-card.selected .household-card-check{opacity:1;transform:scale(1)}.household-card>span:nth-child(2){padding-top:1px}.household-card strong{min-height:20px}.household-card small:first-of-type{min-height:32px}@media (width<=700px){.household-grid{grid-template-columns:1fr}}.household-picker{position:relative}.household-menu{z-index:20;border:1px solid var(--app-border);background:var(--app-surface);border-radius:14px;width:100%;padding:8px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 34px #1f202424}.household-option{width:100%;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.household-option:hover,.household-option.selected{background:var(--app-bg)}.household-option>span:first-child{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.household-option strong{font:700 12px/16px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.household-option small,.household-menu-state{color:var(--app-text-muted);font:400 10px/14px var(--ff), system-ui, sans-serif}.household-option>.icon{color:var(--app-primary)}.household-menu-state{padding:14px 10px;display:block}.household-hero{justify-content:space-between;align-items:flex-end;gap:32px;padding:8px 0 28px;display:flex}.household-title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.household-hero h1{color:var(--app-text);font:800 30px/36px var(--ff), system-ui, sans-serif;letter-spacing:-.3px;margin:0 0 6px}.household-edit-button{border-color:var(--app-primary-border);min-height:36px;color:var(--app-primary-deep);background:var(--app-surface-raised);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.household-edit-button:hover{border-color:var(--app-primary-border);background:var(--app-primary-soft)}.household-edit-button:focus-visible{outline:2px solid var(--app-primary);outline-offset:2px}.household-hero p:not(.profile-eyebrow){color:var(--app-text-muted);font:400 13px/20px var(--ff), system-ui, sans-serif;margin:0}.household-metrics{gap:10px;display:flex}.household-metrics div{border:1px solid var(--app-border);background:var(--app-surface);text-align:center;border-radius:12px;min-width:92px;padding:12px 14px}.household-metrics strong,.household-metrics span{display:block}.household-metrics strong{color:var(--app-primary);font:800 20px/24px var(--ff), system-ui, sans-serif}.household-metrics span{color:var(--app-text-subtle);font:600 10px/14px var(--ff), system-ui, sans-serif;text-transform:uppercase;margin-top:3px}.request-list,.member-cards{flex-direction:column;gap:12px;display:flex}.request-card,.member-card{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:14px;padding:18px}.request-card{justify-content:space-between;align-items:center;gap:20px;display:flex}.request-person{align-items:center;gap:12px;min-width:0;display:flex}.request-person>div{min-width:0}.request-person strong,.request-person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.request-person strong{color:var(--app-text);font:700 13px/18px var(--ff), system-ui, sans-serif}.request-person small{color:var(--app-text-muted);font:400 11px/15px var(--ff), system-ui, sans-serif;margin-top:3px}.member-avatar{width:40px;height:40px;color:var(--app-primary);background:var(--app-primary-soft);font:800 14px/1 var(--ff), system-ui, sans-serif;border-radius:50%;flex:0 0 40px;place-items:center;display:grid}.request-actions,.member-card-actions{align-items:center;gap:10px;display:flex}.member-card-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.household-preview{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.member-meta{align-items:center;gap:8px;display:flex}.member-status,.member-role{font:700 10px/14px var(--ff), system-ui, sans-serif;text-transform:capitalize;border-radius:999px;padding:5px 8px}.member-status.active{color:var(--app-success-strong);background:var(--app-success-soft)}.member-status.suspended{color:var(--app-warning-deep);background:var(--app-warning-soft)}.member-status.deleted{color:var(--app-danger);background:var(--app-danger-soft)}.member-role{color:var(--app-primary);background:var(--app-primary-soft)}.permission-heading{border-top:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:12px;margin:18px 0 10px;padding-top:16px;display:flex}.permission-heading strong{color:var(--app-text-secondary);font:700 11px/16px var(--ff), system-ui, sans-serif}.permission-heading small{color:var(--app-text-subtle);font:400 10px/14px var(--ff), system-ui, sans-serif}.permission-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.permission-control{border:1px solid var(--app-border);min-height:40px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;font:600 10px/14px var(--ff), system-ui, sans-serif;text-transform:capitalize;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:8px;display:flex}.permission-control span{border:1px solid var(--app-border-strong);border-radius:4px;place-items:center;width:15px;height:15px;font-size:10px;display:grid}.permission-control.selected{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.permission-control.selected span{border-color:var(--app-primary);color:var(--app-text-inverse);background:var(--app-primary)}.member-card-actions{border-top:1px solid var(--app-border);justify-content:flex-end;margin-top:16px;padding-top:12px}.household-empty{border:1px dashed var(--app-border);color:var(--app-text-muted);background:var(--app-surface-raised);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:6px;padding:42px 20px;display:flex}.household-empty.compact{border:0;padding:26px 20px}.household-empty strong{color:var(--app-text-secondary);font:700 12px/16px var(--ff), system-ui, sans-serif}.household-empty small{color:var(--app-text-subtle);font:400 11px/16px var(--ff), system-ui, sans-serif}.household-edit-modal{width:min(100%,640px)}.household-edit-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.household-edit-form-grid .auth-label{margin:0}.household-edit-name,.household-edit-address{grid-column:1/-1}.household-edit-note{color:var(--app-text-muted);margin:14px 0 0;font-size:11px;line-height:16px}.household-edit-modal .primary-button{justify-content:center;align-items:center;gap:7px;display:inline-flex}@media (width<=800px){.household-hero{flex-direction:column;align-items:flex-start}.household-metrics{width:100%}.household-metrics div{flex:1}.request-card,.member-card-header{flex-direction:column;align-items:flex-start}.request-actions,.member-card-actions{justify-content:flex-start;width:100%}.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-heading{flex-direction:column;align-items:flex-start;gap:4px}}@media (width<=520px){.household-edit-form-grid{grid-template-columns:1fr}.household-edit-name,.household-edit-address{grid-column:auto}}.profile-page{display:block}.profile-content{width:min(100%,1180px);margin:0 auto;padding:36px 32px 64px}.profile-grid{grid-template-columns:minmax(0,1fr)}.profile-details{grid-column:auto}.household-code-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:20px 24px;display:flex}.household-code-card h2{font:800 18px/24px var(--ff), system-ui, sans-serif;margin:0 0 5px}.household-code-card p:not(.profile-eyebrow){color:var(--app-text-muted);font:400 12px/18px var(--ff), system-ui, sans-serif;margin:0}.household-code-value{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:12px;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex}.household-code-value strong{min-width:116px;color:var(--app-text);font:800 18px/24px var(--ff), system-ui, sans-serif;letter-spacing:.14em;text-align:center}.household-code-value .site-icon-button{width:32px;height:32px}.household-copy-button{width:32px;height:32px;padding:0}@media (width<=700px){.household-code-card{flex-direction:column;align-items:flex-start;padding:18px}.household-code-value{justify-content:space-between;width:100%}}.profile-modal-backdrop{z-index:100}.profile-details .detail-grid strong{overflow-wrap:anywhere}.profile-page .profile-topbar{margin-bottom:24px}.profile-page .profile-hero-card,.profile-page .profile-panel{border-color:var(--app-border);border-radius:16px;padding:24px}.profile-page .panel-heading{margin-bottom:24px}.profile-page .detail-grid{gap:24px}.user-avatar{border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative;overflow:hidden}.profile-avatar-wrap{border:3px solid var(--app-border-strong);background:var(--app-surface-hover);padding:0}.user-avatar img,.user-avatar-fallback{width:100%;height:100%}.user-avatar img{object-fit:cover;object-position:center;display:block}.user-avatar-fallback{color:var(--app-primary);background:var(--app-primary-soft);letter-spacing:.02em;place-items:center;font-size:28px;font-weight:800;display:grid}.profile-avatar-file-input{display:none}.profile-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.profile-actions .profile-edit,.profile-avatar-upload-button{white-space:nowrap;width:auto;min-height:38px;padding:0 14px}.profile-avatar-upload-button{border-color:var(--app-primary-border);color:var(--app-primary-deep);background:var(--app-surface-raised);justify-content:center;align-items:center;gap:7px;display:inline-flex}.profile-avatar-upload-button:hover:not(:disabled){border-color:var(--app-primary-border);background:var(--app-primary-soft)}.profile-avatar-upload-button:disabled{cursor:wait;opacity:.75}.profile-upload-spinner{animation:.8s linear infinite profile-upload-spin}.avatar-crop-modal{width:min(100%,680px)}.avatar-crop-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.avatar-crop-heading h2{margin-bottom:6px}.avatar-crop-heading p{max-width:440px;color:var(--app-text-muted);margin:0;font-size:12px;line-height:18px}.avatar-crop-layout{grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:22px;display:grid}.avatar-crop-viewport{aspect-ratio:1;border:1px solid var(--app-border-strong);background:var(--app-border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:14px;width:min(100%,260px);margin:0 auto;position:relative;overflow:hidden}.avatar-crop-viewport:active{cursor:grabbing}.avatar-crop-viewport img,.avatar-crop-preview img{pointer-events:none;transform-origin:50%;max-width:none;position:absolute;top:50%;left:50%}.avatar-crop-preview{color:var(--app-text-muted);justify-items:center;gap:8px;font-size:11px;font-weight:700;display:grid}.avatar-crop-preview>div{border:3px solid var(--app-border-strong);background:var(--app-surface-hover);border-radius:50%;width:96px;height:96px;position:relative;overflow:hidden}.avatar-crop-zoom{color:var(--app-text-muted);grid-template-columns:auto minmax(0,1fr) 42px;align-items:center;gap:12px;margin-top:22px;font-size:12px;font-weight:700;display:grid}.avatar-crop-zoom input{width:100%;accent-color:var(--app-primary)}.avatar-crop-zoom output{color:var(--app-primary);font-variant-numeric:tabular-nums;text-align:right}.avatar-crop-modal .modal-actions .primary-button{justify-content:center;align-items:center;gap:7px;display:inline-flex}@media (width<=520px){.avatar-crop-modal{padding:22px}.avatar-crop-layout{grid-template-columns:1fr}.avatar-crop-preview{display:none}.avatar-crop-zoom{grid-template-columns:1fr 42px}}@media (prefers-reduced-motion:reduce){.profile-upload-spinner{animation:none}}.household-code-card .profile-eyebrow{font-size:0}.household-code-card .profile-eyebrow:after{content:"Mời thành viên";font-size:11px}.household-code-card h2{font-size:0}.household-code-card h2:after{content:"Mã ngôi nhà";font-size:21px}.household-code-card>div:first-child>p:last-child{font-size:0}.household-code-card>div:first-child>p:last-child:after{content:"Chia sẻ mã này để người khác gửi yêu cầu tham gia ngôi nhà.";font-size:12px}.request-panel .panel-title h2{font-size:0}.request-panel .panel-title h2:after{content:"Yêu cầu tham gia";font-size:18px}.request-panel .panel-title p{font-size:0}.request-panel .panel-title p:after{content:"Duyệt những người muốn tham gia ngôi nhà của bạn.";font-size:12px}.request-panel .household-empty strong{font-size:0}.request-panel .household-empty strong:after{content:"Không có yêu cầu đang chờ";font-size:13px}.request-panel .household-empty small{font-size:0}.request-panel .household-empty small:after{content:"Yêu cầu mới sẽ xuất hiện tại đây.";font-size:11px}.member-panel .panel-title h2{font-size:0}.member-panel .panel-title h2:after{content:"Thành viên";font-size:18px}.member-panel .panel-title p{font-size:0}.member-panel .panel-title p:after{content:"Xem vai trò, trạng thái và quyền truy cập.";font-size:12px}.household-page>.household-metrics{justify-content:flex-end;margin:-8px 0 24px}@media (width<=700px){.app-page-header{min-height:34px}.app-page-header h1{font-size:26px;line-height:34px}.overview-household-picker .household-picker,.overview-household-picker .household-select{width:100%}.household-page>.household-metrics{justify-content:flex-start;margin-top:-4px}}.profile-content{padding:0 0 64px}.overview-page .icon,.overview-page .household-icon{color:var(--c-hl-1)}.overview-page .household-select{border:1px solid var(--app-border);min-width:236px;color:var(--c-nd-1);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:11px;padding:9px 11px;transition:border-color .2s,box-shadow .2s,background-color .2s;display:flex;box-shadow:0 3px 10px #1f202409}.overview-page .household-select:hover{border-color:var(--app-primary-border);background:var(--app-surface-raised);box-shadow:0 5px 16px #1f406814}.overview-page .household-dot{border:3px solid var(--c-ok-3);background:var(--c-ok-2);width:10px;height:10px;box-shadow:0 0 0 1px var(--c-ok-2);border-radius:50%;flex:0 0 10px}.overview-page .household-select>span:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.overview-page .household-select small{color:var(--c-nd-5);font:600 10px/14px var(--ff), system-ui, sans-serif;text-transform:uppercase}.overview-page .household-select strong{font:700 13px/18px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-page .household-icon{background:var(--c-hl-5);border-radius:8px;flex:0 0 28px;place-items:center;width:28px;height:28px;margin-left:auto;display:grid}.overview-page{max-width:1240px;color:var(--app-text-strong);gap:24px;display:grid}.overview-page>*{min-width:0}.overview-welcome{justify-content:space-between;align-items:center;gap:32px;padding:4px 0 2px;display:flex}.overview-welcome-copy{min-width:0}.overview-welcome h1{letter-spacing:-.025em;margin:0 0 6px;font-size:clamp(26px,2.6vw,34px);line-height:1.2}.overview-welcome p{color:var(--app-text-muted);margin:0;font-size:14px;line-height:1.5}.overview-welcome .household-picker{margin-left:auto}@media (width<=700px){.overview-welcome{display:block}.overview-welcome .household-picker{width:100%;margin-top:20px}.overview-welcome .household-select{width:100%}}.overview-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.overview-stat-grid article{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;min-height:130px;padding:19px;display:grid;box-shadow:0 5px 18px #1f37580a}.overview-stat-grid article>div{flex-direction:column;gap:4px;min-width:0;display:flex}.overview-stat-icon{width:42px;height:42px;color:var(--app-primary-deep);background:var(--app-primary-soft);border-radius:12px;place-items:center;display:grid}.overview-stat-grid small,.overview-stat-grid article>div>span,.overview-room-list small{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif}.overview-stat-grid strong{overflow-wrap:anywhere;color:var(--app-text-strong);font:800 24px/28px var(--ff), system-ui, sans-serif;font-variant-numeric:tabular-nums}.overview-stat-grid strong b{color:var(--app-text-muted);font-size:11px;font-weight:700}.overview-layout-grid{grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);align-items:stretch;gap:20px;margin-top:0;display:grid}.overview-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;margin-top:24px;padding:24px}.overview-page>.overview-panel{margin-top:0}.overview-device-list{scrollbar-width:thin;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:288px;padding:2px 8px 8px 2px;display:grid;overflow:hidden auto}.overview-device-list article{border:1px solid var(--app-border);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.overview-device-card{cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.overview-device-card:hover,.overview-device-card:focus-visible{border-color:var(--app-primary-border);background:var(--app-surface-raised);outline:none;box-shadow:0 5px 14px #006ffd14}.overview-device-list article div{text-align:left;flex-direction:column;flex:1;align-items:flex-start;gap:3px;min-width:0;display:flex}.overview-device-icon{width:30px;height:30px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:9px;flex:0 0 30px;place-items:center;display:grid}.overview-device-list article>.overview-device-icon{color:var(--app-primary)}.overview-device-list strong{font:700 13px/18px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-device-list small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}.overview-room-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.overview-room-list article{border:1px solid var(--app-border);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.overview-room-card{cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.overview-room-card:hover,.overview-room-card:focus-visible{border-color:var(--app-primary-border);background:var(--app-surface-raised);outline:none;box-shadow:0 5px 14px #006ffd14}.overview-room-list article div{flex-direction:column;gap:3px;min-width:0;display:flex}.overview-room-list strong{font:700 13px/18px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overview-room-list article>span{color:var(--app-success-strong);font:600 11px/16px var(--ff), system-ui, sans-serif;white-space:nowrap}.overview-access-grid{grid-template-columns:repeat(2,minmax(0,160px));gap:12px;display:grid}.overview-access-grid article{background:var(--app-surface-raised);border-radius:12px;flex-direction:column;gap:3px;padding:14px;display:flex}.overview-access-grid strong{color:var(--app-primary);font:800 22px/26px var(--ff), system-ui, sans-serif}.overview-access-grid span,.overview-request-list small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}.overview-request-list{border-top:1px solid var(--app-border);flex-direction:column;gap:10px;margin-top:16px;padding-top:16px;display:flex}.overview-request-list div{flex-direction:column;gap:2px;display:flex}.overview-request-list strong{font:700 12px/16px var(--ff), system-ui, sans-serif}.overview-access-panel{border-color:var(--app-border);background:var(--app-surface-raised);box-shadow:none}.overview-access-panel .overview-access-grid article{border:1px solid var(--app-border);background:var(--app-surface)}@media (width<=800px){.overview-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.overview-stat-grid,.overview-room-list,.overview-device-list{grid-template-columns:1fr}.overview-panel{padding:18px}}@media (width<=900px){.overview-layout-grid{grid-template-columns:1fr}.overview-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.presence-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;flex-direction:column;justify-content:space-between;align-items:stretch;gap:20px;min-height:176px;margin-bottom:0;padding:22px;display:flex;box-shadow:0 6px 20px #20375c0d}.presence-copy{align-items:flex-start;gap:14px;min-width:0;display:flex}.presence-copy>div{min-width:0}.presence-icon{width:46px;height:46px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:13px;flex:0 0 46px;place-items:center;display:grid}.presence-panel.away .presence-icon{color:var(--app-text-muted);background:var(--app-surface-sunken)}.presence-panel h2{color:var(--app-text-strong);margin:3px 0 4px;font-size:18px;line-height:1.25}.presence-panel p{max-width:510px;color:var(--app-text-muted);margin:0;font-size:12px;line-height:1.5}.presence-label{color:var(--app-primary);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;font-size:10px;font-weight:800}.presence-panel.away .presence-label{color:var(--app-text-muted)}.presence-actions{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:12px;flex:none;gap:4px;padding:4px;display:flex}.presence-actions button{min-height:36px;color:var(--app-text-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:9px;flex:1;padding:7px 11px;font-size:10px;font-weight:700;transition:background-color .2s,color .2s,box-shadow .2s}.presence-actions button:hover:not(:disabled):not(.active){color:var(--app-text-secondary);background:var(--app-surface)}.presence-actions button.active{color:var(--app-text-inverse);background:var(--app-primary);box-shadow:0 3px 8px #006ffd38}.presence-panel.away .presence-actions button.active{background:var(--app-text-muted);box-shadow:0 3px 8px #47556933}.presence-actions button:disabled{cursor:progress;opacity:.7}.presence-readonly{color:var(--app-text-muted);font-size:11px}.presence-row{grid-template-columns:minmax(0,1.8fr) repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;margin-bottom:0;display:grid}.presence-row .presence-panel{margin-bottom:0}.home-insight-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;flex-direction:column;align-items:flex-start;gap:14px;min-width:0;min-height:176px;padding:20px;display:flex;box-shadow:0 6px 20px #20375c0b}.home-insight-card>div{flex-direction:column;flex:1;min-width:0;display:flex}.home-insight-card strong,.home-insight-card small{overflow-wrap:anywhere;display:block}.home-insight-card strong{color:var(--app-text-secondary);font-size:12px;line-height:1.4}.home-insight-value{color:var(--app-text-strong);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:7px;font-size:17px;font-weight:800;line-height:1.4;display:block}.home-insight-card small{color:var(--app-text-muted);margin-top:auto;padding-top:10px;font-size:11px;line-height:1.45}.home-insight-icon{width:40px;height:40px;color:var(--app-info);background:var(--app-info-soft);border-radius:11px;flex:0 0 40px;place-items:center;display:grid}.home-insight-card.weather .home-insight-icon{color:var(--app-primary-light);background:var(--app-primary-soft)}.attention-panel{box-shadow:0 7px 24px #20375c0e;border-color:var(--app-border)!important}.attention-panel .panel-heading-row h2{color:var(--app-text-strong)}.attention-count{color:var(--app-text-secondary);background:var(--app-surface-sunken);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800}.attention-panel.warning .attention-count{color:var(--app-warning-deep);background:var(--app-warning-soft)}.attention-panel.critical .attention-count{color:var(--app-danger-strong);background:var(--app-danger-soft)}.attention-list{gap:9px;margin-top:16px;display:grid}.attention-card{border:1px solid var(--app-border);border-left:3px solid var(--app-warning);background:var(--app-surface-raised);border-radius:12px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.attention-card.critical{border-left-color:var(--app-danger);background:var(--app-surface)}.attention-card-icon{width:34px;height:34px;color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:10px;place-items:center;display:grid}.attention-card.critical .attention-card-icon{color:var(--app-danger-strong);background:var(--app-danger-soft)}.attention-card-copy{gap:2px;min-width:0;display:grid}.attention-card-copy>span{color:var(--app-warning-deep);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800}.attention-card.critical .attention-card-copy>span{color:var(--app-danger-strong)}.attention-card-copy strong{color:var(--app-text-strong);font-size:13px;line-height:1.35}.attention-card-copy small{color:var(--app-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.45;overflow:hidden}.attention-card-copy em{color:var(--app-text-muted);font-size:11px;font-style:normal;line-height:1.45}.attention-card-actions{align-items:center;gap:8px;display:flex}.attention-action-button,.attention-batch-button{border:1px solid var(--app-border-strong);color:var(--app-primary-deep);background:var(--app-surface);cursor:pointer;border-radius:9px;font-size:11px;font-weight:750;transition:background-color .2s,border-color .2s,color .2s}.attention-action-button{white-space:nowrap;min-height:34px;padding:7px 11px}.attention-action-button:hover:not(:disabled){border-color:var(--app-primary-border);background:var(--app-bg)}.attention-action-button:focus-visible,.attention-batch-button:focus-visible{outline-offset:2px;outline:3px solid #2a69ba3d}.attention-action-button:disabled,.attention-batch-button:disabled{color:var(--app-text-subtle);background:var(--app-surface-sunken);cursor:not-allowed}.attention-batch-actions{align-items:center;gap:12px;margin-top:14px;display:flex}.attention-batch-button{border-color:var(--app-primary-deep);min-height:40px;color:var(--app-text-inverse);background:var(--app-primary-deep);padding:9px 16px;font-size:12px}.attention-batch-button:hover:not(:disabled){border-color:var(--app-primary-deep);background:var(--app-primary-deep)}.attention-batch-actions small{color:var(--app-text-muted);font-size:11px;line-height:1.45}.attention-empty{color:var(--app-success-strong);background:var(--app-success-soft);border-radius:12px;align-items:center;gap:8px;margin:16px 0 0;padding:13px 14px;font-size:11px;display:flex}@media (width<=1279px){.presence-row{grid-template-columns:repeat(2,minmax(0,1fr))}.presence-panel{grid-column:1/-1;min-height:0}}@media (width<=720px){.overview-page{gap:18px}.overview-welcome .household-picker{margin:0}.presence-row{grid-template-columns:1fr}.presence-panel{grid-column:auto;padding:18px}.presence-actions{width:100%}.presence-actions button{flex:1}.home-insight-card{min-height:0;padding:18px}.overview-stat-grid article{min-height:0;padding:16px}.attention-card{grid-template-columns:36px minmax(0,1fr)}.attention-card-copy small{white-space:normal}.attention-card-actions{flex-wrap:wrap;grid-column:2}.attention-batch-actions{flex-direction:column;align-items:stretch}.attention-batch-button{width:100%}.alerts-card-actions,.alerts-live-label{grid-column:2;justify-self:start}}@media (width<=420px){.presence-copy,.presence-actions{flex-direction:column}.overview-stat-grid article{grid-template-columns:38px minmax(0,1fr);gap:12px}.overview-stat-icon{width:38px;height:38px}.overview-access-grid{grid-template-columns:1fr}}.overview-page :is(button,[tabindex]):focus-visible{outline-offset:2px;outline:3px solid #006ffd47}.overview-analysis-grid{grid-template-columns:minmax(0,1.65fr) minmax(310px,.75fr);gap:20px;min-width:0;display:grid}.overview-analysis-grid.single{grid-template-columns:minmax(0,1fr)}.overview-analysis-grid.single .overview-analysis-card{width:100%;max-width:820px}.overview-analysis-card{box-sizing:border-box;border:1px solid var(--app-border);min-width:0;height:320px;color:var(--app-text-strong);background:var(--app-surface);cursor:pointer;border-radius:18px;flex-direction:column;padding:20px;transition:border-color .2s,box-shadow .2s,background-color .2s;display:flex;overflow:hidden;box-shadow:0 7px 24px #1f37580e}.overview-analysis-card:hover{border-color:var(--app-primary-border);background:var(--app-surface);box-shadow:0 10px 28px #1f487a17}.overview-analysis-card:focus-visible{border-color:var(--app-primary);outline-offset:3px!important;outline:3px solid #2563eb3d!important}.overview-analysis-heading{align-items:flex-start;gap:11px;min-width:0;display:flex}.overview-analysis-heading>div{flex:1;min-width:0}.overview-analysis-heading h2{color:var(--app-text-strong);text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:16px;line-height:1.35;overflow:hidden}.overview-analysis-heading p{color:var(--app-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;line-height:1.5;overflow:hidden}.overview-analysis-heading p strong{color:var(--app-text-strong);font-variant-numeric:tabular-nums;font-weight:800}.overview-analysis-icon{width:38px;height:38px;color:var(--app-primary-deep);background:var(--app-primary-soft);border-radius:11px;flex:0 0 38px;place-items:center;display:grid}.overview-card-cta,.overview-camera-cta{min-height:44px;color:var(--app-primary-strong);white-space:nowrap;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.overview-card-cta{align-self:center}.overview-analysis-body{flex:1;align-items:stretch;min-height:0;margin-top:8px;display:flex;overflow:hidden}.overview-energy-card .energy-chart-wrap{width:100%;height:220px;min-height:0;overflow:hidden}.overview-energy-card .energy-chart-wrap svg{width:100%;height:100%;min-height:0;overflow:hidden}.overview-energy-card .energy-chart-point{cursor:inherit}.overview-energy-card .energy-section-empty{width:100%;min-height:0}.overview-card-state{width:100%;min-height:170px;color:var(--app-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.overview-card-state .loading-spinner,.overview-camera-loading .loading-spinner{width:24px;height:24px}.overview-card-state strong{color:var(--app-text-secondary);font-size:12px}.overview-card-state small{max-width:340px;color:var(--app-text-muted);font-size:10px;line-height:1.5}.overview-card-state.error>svg{color:var(--app-danger-deep)}.overview-camera-status{white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:28px;padding:5px 9px;font-size:9px;font-weight:800;display:inline-flex}.overview-camera-status i{background:currentColor;border-radius:50%;width:7px;height:7px}.overview-camera-status.online{color:var(--app-success-strong);background:var(--app-success-soft)}.overview-camera-status.offline{color:var(--app-danger-deep);background:var(--app-surface-sunken)}.overview-camera-preview{min-height:0;color:var(--app-text-inverse);background:var(--app-media-bg);border-radius:13px;flex:1;margin-top:12px;position:relative;overflow:hidden}.overview-camera-preview video{object-fit:cover;background:var(--app-media-bg);width:100%;height:100%;display:block}.overview-demo-label{z-index:3;color:var(--app-text-inverse);letter-spacing:.04em;text-transform:uppercase;background:#0f172ac7;border:1px solid #ffffff59;border-radius:7px;padding:5px 8px;font-size:9px;font-weight:850;position:absolute;top:10px;left:10px}.overview-camera-fallback,.overview-camera-loading{color:var(--app-text-inverse);background:linear-gradient(145deg,var(--app-text-strong),var(--app-media-bg));text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:38px 20px 16px;display:flex;position:absolute;inset:0}.overview-camera-fallback strong{color:var(--app-text-inverse);font-size:13px}.overview-camera-fallback small{max-width:280px;color:var(--app-primary-border);font-size:10px;line-height:1.5}.overview-camera-loading{z-index:2;color:var(--app-border);font-size:10px}.overview-camera-loading .loading-spinner{border-color:#ffffff47;border-top-color:var(--app-surface)}.overview-camera-cta{align-self:flex-start;min-height:38px}@media (width<=1279px){.overview-analysis-grid{grid-template-columns:minmax(0,1fr)}.overview-analysis-grid.single .overview-analysis-card{max-width:none}.overview-analysis-card{height:320px}}@media (width<=720px){.overview-analysis-grid{gap:14px}.overview-analysis-card{height:auto;min-height:300px;padding:16px}.overview-analysis-heading h2{white-space:normal}.overview-card-cta{display:none}.overview-energy-card .energy-chart-wrap{height:190px}.overview-camera-preview{min-height:190px}.overview-camera-cta{min-height:44px}}@media (width<=420px){.overview-analysis-heading{align-items:flex-start}.overview-analysis-icon{flex-basis:36px;width:36px;height:36px}.overview-camera-card .overview-analysis-heading{flex-wrap:wrap}.overview-camera-card .overview-camera-status{margin-left:47px}.overview-energy-card .energy-chart-y-label,.overview-energy-card .energy-chart-x-label{font-size:10px}}.overview-welcome.app-page-header,.energy-hero.app-page-header,.alerts-hero.app-page-header{min-height:40px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.overview-household-picker{justify-content:flex-end;display:flex}.overview-stat-card{border:1px solid var(--app-border);min-height:130px;color:inherit;background:var(--app-surface);cursor:pointer;font:inherit;text-align:left;border-radius:16px;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;padding:19px;transition:border-color .2s,background-color .2s,box-shadow .2s;display:grid;box-shadow:0 5px 18px #1f37580a}.overview-stat-card>div{flex-direction:column;gap:4px;min-width:0;display:flex}.overview-stat-card:hover{border-color:var(--app-primary-border);background:var(--app-surface-raised);box-shadow:0 9px 24px #195db11c}.overview-stat-card:focus-visible{border-color:var(--app-primary);outline-offset:3px;outline:3px solid #2563eb3d}.overview-stat-card small,.overview-stat-card>div>span{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif}.overview-stat-card strong{overflow-wrap:anywhere;color:var(--app-text-strong);font:800 24px/28px var(--ff), system-ui, sans-serif;font-variant-numeric:tabular-nums}.overview-stat-card strong b{color:var(--app-text-muted);font-size:11px;font-weight:700}.presence-panel,.home-insight-card{transition:border-color .2s,background-color .2s,box-shadow .2s}.presence-panel:hover,.home-insight-card:hover{border-color:var(--app-primary-border);box-shadow:0 10px 26px #20375c17}.home-insight-card.interactive{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left}.home-insight-card.interactive:focus-visible{outline-offset:3px;outline:3px solid #2563eb3d}.home-insight-card.temperature.cold{border-color:var(--app-primary-border);background:linear-gradient(145deg, var(--app-surface-raised), var(--app-primary-soft))}.home-insight-card.temperature.cold .home-insight-icon{color:var(--app-primary-light);background:var(--app-primary-soft)}.home-insight-card.temperature.cool{border-color:var(--app-border-strong);background:linear-gradient(145deg, var(--app-success-soft), var(--app-success-soft))}.home-insight-card.temperature.cool .home-insight-icon{color:var(--app-success-strong);background:var(--app-success-soft)}.home-insight-card.temperature.comfortable{border-color:var(--furniture-plant-soft);background:linear-gradient(145deg, var(--app-surface), var(--app-warning-soft))}.home-insight-card.temperature.comfortable .home-insight-icon{color:var(--app-success-strong);background:var(--app-warning-soft)}.home-insight-card.temperature.warm{border-color:var(--app-warning-soft);background:linear-gradient(145deg, var(--app-surface), var(--app-warning-soft))}.home-insight-card.temperature.warm .home-insight-icon{color:var(--app-warning-deep);background:var(--app-warning-soft)}.home-insight-card.temperature.hot{border-color:var(--app-danger-soft);background:linear-gradient(145deg, var(--app-surface), var(--app-danger-soft))}.home-insight-card.temperature.hot .home-insight-icon{color:var(--app-danger-deep);background:var(--app-danger-soft)}.home-insight-card.weather.sunny{border-color:var(--app-warning-soft);background:linear-gradient(145deg, var(--app-surface), var(--app-warning-soft))}.home-insight-card.weather.sunny .home-insight-icon{color:var(--app-warning-deep);background:var(--app-warning-soft)}.home-insight-card.weather.partly-cloudy{border-color:var(--app-border-strong);background:linear-gradient(145deg, var(--app-surface), var(--app-surface-hover))}.home-insight-card.weather.partly-cloudy .home-insight-icon{color:var(--app-info);background:var(--app-primary-soft)}.home-insight-card.weather.cloudy{border-color:var(--app-border-strong);background:linear-gradient(145deg, var(--app-surface), var(--app-skeleton))}.home-insight-card.weather.cloudy .home-insight-icon{color:var(--app-text-muted);background:var(--app-border)}.home-insight-card.weather.rain{border-color:var(--app-primary-border);background:linear-gradient(145deg, var(--app-surface-raised), var(--app-info-soft))}.home-insight-card.weather.rain .home-insight-icon{color:var(--app-info);background:var(--app-info-soft)}.home-insight-card.weather.storm{border-color:var(--app-primary-border);background:linear-gradient(145deg, var(--app-bg), var(--app-primary-soft))}.home-insight-card.weather.storm .home-insight-icon{color:var(--app-accent-violet);background:var(--app-border-strong)}.home-insight-card.weather.snow{border-color:var(--app-border-strong);background:linear-gradient(145deg, var(--app-surface), var(--app-info-soft))}.home-insight-card.weather.snow .home-insight-icon{color:var(--app-info);background:var(--app-info-soft)}.home-insight-card.weather.fog{border-color:var(--furniture-fabric);background:linear-gradient(145deg, var(--app-surface), var(--app-surface-sunken))}.home-insight-card.weather.fog .home-insight-icon{color:var(--app-text-muted);background:var(--app-surface-sunken)}@media (width<=720px){.overview-stat-card{min-height:0;padding:16px}}.overview-page.feature-page,.schedules-page.feature-page,.household-page.feature-page{padding:0 0 56px}.device-schedule-fields,.schedule-recurrence-fields{gap:13px;display:grid}.device-schedule-fields .schedule-blocker{margin:-4px 0 0;font-size:11px;line-height:1.45}.devices-page{width:100%;min-height:100vh;color:var(--c-nd-1);background:var(--c-nl-4)}.devices-content{width:min(100%,1180px);margin:0 auto;padding:0 24px 56px}.devices-heading,.panel-heading-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:20px;display:flex}.devices-heading h1{font:800 30px/36px var(--ff), system-ui, sans-serif;margin:0 0 5px}.devices-heading p:not(.profile-eyebrow),.panel-heading-row p{color:var(--c-nd-4);font:400 12px/16px var(--ff), system-ui, sans-serif;margin:0}.devices-add-button{width:auto;padding:0 16px}.room-tabs{gap:8px;margin-bottom:16px;display:flex;overflow-x:auto}.room-tabs button{border:1px solid var(--c-nl-3);color:var(--c-nd-4);background:var(--c-nl-5);cursor:pointer;font:600 11px/16px var(--ff), system-ui, sans-serif;border-radius:999px;flex:none;padding:8px 14px}.room-tabs button.selected{border-color:var(--c-hl-1);color:var(--c-hl-1);background:var(--c-hl-5)}.device-grid,.device-grid-room{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.device-card{border:1px solid var(--c-nl-3);background:var(--c-nl-5);cursor:pointer;border-radius:16px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:108px;padding:16px;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s;display:grid;position:relative;box-shadow:0 7px 20px #1f202409}.device-card:hover,.device-card:focus-visible{border-color:var(--app-primary-border);outline:none;transform:translateY(-1px);box-shadow:0 10px 24px #006ffd17}.device-card.is-active{border-color:var(--app-primary-border);background:linear-gradient(135deg, var(--app-surface) 0%, var(--app-bg) 100%)}.device-card.is-offline{opacity:.68}.device-icon{width:48px;height:48px;color:var(--c-hl-1);background:var(--c-hl-5);border-radius:14px;place-items:center;transition:color .2s,background .2s,box-shadow .2s;display:grid}.device-card-copy{gap:1px;min-width:0;display:grid}.device-card h3{font:700 15px/21px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.device-card p{color:var(--c-nd-5);font:400 12px/17px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.device-card-meta{align-items:center;gap:7px;min-width:0;margin-top:3px;display:flex}.device-status{color:var(--c-nd-5);font:600 10px/14px var(--ff), system-ui, sans-serif;flex:none;align-items:center;gap:4px;display:inline-flex}.device-status i{background:var(--c-nl-1);border-radius:50%;width:6px;height:6px}.device-status.online{color:var(--c-ok-1)}.device-status.online i{background:var(--c-ok-2)}.device-card-meta strong{color:var(--c-nd-4);font:600 11px/15px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.device-card-meta strong.is-active{color:var(--app-success-strong)}.device-toggle{background:var(--c-nl-2);cursor:pointer;border:0;border-radius:999px;width:40px;height:24px;padding:3px}.device-toggle i{background:var(--c-nl-5);border-radius:50%;width:18px;height:18px;transition:transform .15s;display:block}.device-toggle.active{background:var(--c-hl-1)}.device-toggle.active i{transform:translate(16px)}.device-icon-light.is-active{color:var(--light-device-color,var(--app-warning));background:color-mix(in srgb, var(--light-device-color,var(--app-warning)) 14%, var(--app-surface));box-shadow:0 0 0 5px color-mix(in srgb, var(--light-device-color,var(--app-warning)) 18%, transparent), 0 0 18px color-mix(in srgb, var(--light-device-color,var(--app-warning)) 36%, transparent)}.device-icon-light.is-active svg{animation:1.8s ease-in-out infinite device-light-glow}.device-icon-fan.is-active{color:var(--app-success-strong);background:var(--app-success-soft)}.device-icon-fan.is-active svg{animation:1.25s linear infinite device-fan-spin}.device-icon-air_conditioner.is-active{color:var(--app-primary-light);background:var(--app-info-soft);box-shadow:0 0 0 4px #45a3f521}.device-icon-air_conditioner.is-active svg{animation:1.35s ease-in-out infinite device-air-flow}.device-icon-tv.is-active{color:var(--app-primary-deep);background:var(--app-primary-soft);box-shadow:0 0 0 4px #4b68d81f,0 0 16px #4b68d833}.device-icon-tv.is-active svg{animation:1.8s ease-in-out infinite device-tv-on}.device-icon-water_heater.is-active,.device-icon-heater.is-active{color:var(--app-warning-strong);background:var(--app-warning-soft);box-shadow:0 0 0 4px #df6a3a1f,0 0 17px #ed753538}.device-icon-water_heater.is-active svg,.device-icon-heater.is-active svg{animation:1.55s ease-in-out infinite device-heat-pulse}.device-icon-curtain{color:var(--app-accent-violet);background:linear-gradient(90deg, var(--app-primary-soft) 0 46%, var(--app-surface) 46% 54%, var(--app-primary-soft) 54% 100%);position:relative;overflow:hidden}.device-icon-curtain svg{opacity:0}.device-icon-curtain:before,.device-icon-curtain:after{z-index:3;background:repeating-linear-gradient(90deg, var(--app-accent-violet) 0 4px, var(--app-accent-violet) 4px 8px);content:"";border-radius:4px 3px 3px 4px;width:52%;height:calc(100% - 10px);transition:transform .48s cubic-bezier(.22,1,.36,1);position:absolute;top:5px;box-shadow:inset -2px 0 #ffffff52,0 1px 2px #58378e33}.device-icon-curtain:before{left:0;transform:translate(0)}.device-icon-curtain:after{border-radius:3px 4px 4px 3px;right:0;transform:translate(0);box-shadow:inset 2px 0 #ffffff52,0 1px 2px #58378e33}.device-icon-curtain.curtain-open:before{transform:translate(-82%)}.device-icon-curtain.curtain-open:after{transform:translate(82%)}.device-icon-camera.is-active{color:var(--app-danger-strong);background:var(--app-surface-sunken);position:relative;box-shadow:0 0 0 4px #d943501f}.device-icon-camera.is-active:after{border:1.5px solid var(--app-surface);background:var(--app-danger);content:"";border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite device-recording;position:absolute;top:7px;right:7px;box-shadow:0 0 0 2px #e5484d21}.device-icon-door_lock.is-unlocked{color:var(--app-warning-strong);background:var(--app-warning-soft);box-shadow:0 0 0 4px #c96a201f}@media (prefers-reduced-motion:reduce){.device-card,.device-icon,.device-icon:after,.device-icon.is-active svg{transition:none;animation:none;transform:none}}.device-lock-action{border:1px solid var(--app-primary-border);min-height:27px;color:var(--app-primary);background:var(--app-bg);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:7px;padding:0 10px}.device-lock-action:hover,.device-lock-action:focus-visible{border-color:var(--app-primary);background:var(--app-primary-soft);outline:none}@media (width<=700px){.devices-heading{align-items:flex-start}.device-grid,.device-grid-room{grid-template-columns:1fr}.device-card{min-height:94px;padding:14px}}.room-map-card,.room-devices-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;min-width:0;height:100%;padding:24px;box-shadow:0 6px 20px #1f37580b}.room-devices-card{flex-direction:column;align-self:stretch;display:flex}.room-map-header,.room-devices-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.room-map-kicker{color:var(--app-primary);font:700 10px/14px var(--ff), system-ui, sans-serif;text-transform:uppercase;align-items:center;gap:5px;display:inline-flex}.room-map-header h2,.room-devices-heading h2{font:800 18px/24px var(--ff), system-ui, sans-serif;margin:4px 0 5px}.room-map-header p,.room-devices-heading p:not(.profile-eyebrow){color:var(--app-text-muted);font:400 12px/16px var(--ff), system-ui, sans-serif;margin:0}.room-map-type{color:var(--app-primary);background:var(--app-primary-soft);font:700 10px/14px var(--ff), system-ui, sans-serif;border-radius:999px;padding:6px 9px}.room-map-header-actions{flex-direction:column;flex:none;align-items:flex-end;gap:9px;display:flex}.room-map-live-summary{color:var(--app-text-muted);font:700 9px/12px var(--ff), system-ui, sans-serif;align-items:center;gap:6px;display:flex}.room-map-live-summary span{border:1px solid var(--app-border);background:var(--app-surface);border-radius:999px;align-items:center;gap:4px;padding:4px 6px;display:inline-flex}.room-map-live-summary i,.room-device-copy small i{background:var(--app-border-strong);border-radius:50%;flex:0 0 6px;width:6px;height:6px;display:inline-block}.room-map-live-summary i.online,.room-device-copy small i.online{background:var(--app-success)}.room-map-live-summary i.active,.room-device-copy small i.active{background:var(--app-warning);box-shadow:0 0 0 3px #ef981d26}.room-map-floor-switch{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:9px;padding:3px;display:inline-flex}.room-map-floor-switch button{color:var(--app-text-muted);font:700 9px/12px var(--ff), system-ui, sans-serif;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 9px}.room-map-floor-switch button.selected{color:var(--app-text-inverse);background:var(--app-primary);box-shadow:0 2px 6px #006ffd38}.room-map-floor-tabs{border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:-4px 0 12px;padding:5px;display:grid}.room-map-floor-tabs button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;font-size:11px;display:flex}.room-map-floor-tabs button:not(.selected){border-color:var(--app-border);background:var(--app-surface)}.room-map-floor-tabs button strong{width:21px;height:21px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:6px;place-items:center;font-size:11px;display:grid}.room-map-floor-tabs button.selected strong{color:var(--app-primary);background:var(--app-surface)}.room-map-stage{border:1px solid var(--app-border);background-color:var(--app-surface-sunken);background-image:radial-gradient(var(--app-border) 1px, transparent 1px);background-size:18px 18px;border-radius:14px;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;padding:14px;display:grid;overflow:hidden}.room-map-canvas{border:1px solid var(--app-border-strong);background:var(--app-skeleton);background-image:linear-gradient(135deg, var(--app-surface-translucent), transparent 42%), repeating-linear-gradient(0deg, #495b5f09 0 1px, transparent 1px 14px), repeating-linear-gradient(90deg, #495b5f09 0 1px, transparent 1px 14px);border-radius:12px;min-height:390px;position:relative;overflow:hidden;box-shadow:0 10px 26px #212b3c1f}.room-map-canvas:before{border:3px solid var(--app-text-secondary);content:"";pointer-events:none;border-radius:5px;position:absolute;inset:10px;box-shadow:inset 0 0 0 2px #ffffff7a,0 0 0 1px #fffc}.room-map-canvas:after{z-index:0;content:"";pointer-events:none;border:1px dashed #4b5d622e;border-radius:3px;position:absolute;inset:16px}.room-map-photo-plan{aspect-ratio:4/3;background:var(--app-surface);height:auto;min-height:0}.room-map-photo-plan:before,.room-map-photo-plan:after{display:none}.room-map-floorplan-image{z-index:0;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.room-map-template-badge{z-index:7;color:var(--app-text-inverse);background:var(--app-text-secondary);font:800 10px/13px var(--ff), system-ui, sans-serif;letter-spacing:.03em;text-transform:uppercase;border-radius:6px;padding:7px 11px;position:absolute;top:14px;left:14px;box-shadow:0 3px 8px #1a222d33}.room-map-photo-plan .room-map-room{isolation:isolate;border-color:#0000;overflow:visible;background-color:#0000!important;background-image:none!important}.room-map-photo-plan .room-map-room:before,.room-map-photo-plan .room-map-room:after,.room-map-photo-plan .room-map-furniture,.room-map-photo-plan .room-map-window,.room-map-photo-plan .room-map-door{display:none}.room-map-photo-plan .room-map-room:hover,.room-map-photo-plan .room-map-room.selected{border-color:var(--app-primary);box-shadow:inset 0 0 0 1px var(--app-primary);background-color:#246bfd14!important;background-image:none!important}.room-map-photo-plan .room-map-room.room-lit,.room-map-photo-plan .room-map-room.room-lit:hover,.room-map-photo-plan .room-map-room.room-lit.selected{box-shadow:none;border-color:#0000;animation:.45s ease-out both room-light-on;background-color:#0000!important;background-image:none!important}.room-map-photo-plan .room-map-room.room-dimmed,.room-map-photo-plan .room-map-room.room-dimmed:hover,.room-map-photo-plan .room-map-room.room-dimmed.selected{box-shadow:none;border-color:#0000;background-color:#0000!important;background-image:none!important}.room-map-photo-plan .room-map-room.room-lit:before,.room-map-photo-plan .room-map-room.room-dimmed:before{z-index:0;pointer-events:none;border:0;border-radius:42%;display:block;inset:-10%}.room-map-photo-plan .room-map-room.room-dimmed:before{filter:blur(7px);background:radial-gradient(#050f1e33,#050f1e1a 55%,#0000 77%)}.room-map-photo-plan .room-map-room.room-lit:before{background:radial-gradient(ellipse at 50% 47%, var(--room-light-core,#fff8cfc7) 0%, var(--room-light-mid,#ffd25061) 48%, var(--room-light-outer,#ffbe262e) 72%, transparent 100%);filter:blur(11px);opacity:.9}.room-map-photo-plan .room-map-room.room-light-reading{--room-light-core:#fff9d5cc;--room-light-mid:#ffc94878;--room-light-outer:#ee9d003d;--room-light-edge:#ee9d0099}.room-map-photo-plan .room-map-room.room-light-relax{--room-light-core:#e6f5ffd1;--room-light-mid:#59aaff6e;--room-light-outer:#2177f430;--room-light-edge:#3b82f69e}.room-map-photo-plan .room-map-room.room-light-focus{--room-light-core:#f4e9ffd1;--room-light-mid:#9c69ef6e;--room-light-outer:#7347d233;--room-light-edge:#8257e6a3}.room-map-photo-plan .room-map-room.room-light-night{--room-light-core:#dde5f4b3;--room-light-mid:#6477975e;--room-light-outer:#2d3c573b;--room-light-edge:#475569a8}.room-map-photo-plan .room-map-room.selected,.room-map-photo-plan .room-map-room.room-lit.selected,.room-map-photo-plan .room-map-room.room-dimmed.selected{border-color:var(--app-primary);box-shadow:inset 0 0 0 1px var(--app-primary)}.room-map-photo-plan .room-map-room-label{z-index:5;background:var(--app-surface-translucent);border-color:#cdd3dce6}.room-map-photo-plan .room-map-room-label,.room-map-photo-plan .room-map-pin{pointer-events:none}.room-map-photo-plan .room-map-room.room-entrance{z-index:4}.room-map-room{z-index:1;border:1.5px solid var(--app-text-secondary);color:var(--app-text);background-color:var(--app-warning-soft);text-align:left;cursor:pointer;background-image:linear-gradient(90deg,#7b684b0d 1px,#0000 1px),linear-gradient(#7b684b0d 1px,#0000 1px);background-size:13px 13px;border-radius:3px;padding:8px;transition:border-color .15s,box-shadow .15s,filter .15s;display:block;position:absolute;overflow:hidden}.room-map-room:before{z-index:0;content:"";pointer-events:none;border:1px solid #5d696a29;border-radius:2px;position:absolute;inset:5px}.room-map-room.room-garden{background-color:var(--app-success-soft);background-image:radial-gradient(circle at 15% 20%,#5480471f 0 4px,#0000 5px),radial-gradient(circle at 70% 65%,#5480471a 0 5px,#0000 6px);background-size:31px 35px}.room-map-room.room-bath{background-color:var(--app-surface-sunken);background-image:linear-gradient(90deg,#4e697012 1px,#0000 1px),linear-gradient(#4e697012 1px,#0000 1px);background-size:12px 12px}.room-map-room:hover,.room-map-room.selected{z-index:3;border-color:var(--app-primary);box-shadow:inset 0 0 0 1px var(--app-primary), 0 8px 20px #006ffd2e;filter:brightness(1.03);outline:none}.room-map-room-label{z-index:3;background:var(--app-surface-translucent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border:1px solid #37444c1f;border-radius:7px;flex-direction:column;gap:2px;width:fit-content;min-width:0;max-width:100%;padding:5px 7px;display:flex;position:relative;box-shadow:0 2px 7px #2c3a3f12}.room-map-room-title{align-items:center;gap:5px;min-width:0;display:flex}.room-map-room-label strong{font:750 9px/12px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-map-room-label small{color:var(--app-text-muted);font:500 8px/10px var(--ff), system-ui, sans-serif}.room-map-room-title i{background:var(--app-border-strong);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.room-map-room-title i.online{background:var(--app-success)}.room-map-room-title i.active{background:var(--app-warning);box-shadow:0 0 0 3px #ef981d24}.room-map-window{z-index:4;border:1px solid var(--furniture-metal);background:linear-gradient(90deg, transparent 46%, var(--furniture-metal) 46% 54%, transparent 54%), var(--app-info-soft);width:28%;height:5px;box-shadow:0 1px 0 var(--app-surface);pointer-events:none;border-radius:2px;position:absolute;top:-2px;left:50%;transform:translate(-50%)}.room-map-pin{z-index:5;border:3px solid var(--app-surface);width:29px;height:29px;color:var(--app-text-inverse);background:var(--pin,var(--app-primary-deep));pointer-events:auto;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px 9px #16334e47}.room-map-pin.device-light.active{background:var(--pin,var(--app-warning));box-shadow:0 0 0 4px #ffcc3647,0 0 18px #ffc216bf}.room-map-pin.device-light.active svg{animation:1.65s ease-in-out infinite map-light-pulse}.room-map-pin.device-fan.active svg{animation:1.05s linear infinite map-fan-spin}.room-map-pin.device-air_conditioner.active{box-shadow:0 0 0 3px #51bdd533,0 3px 12px #33a3c373}.room-map-pin.device-air_conditioner.active svg{animation:1.35s ease-in-out infinite map-air-breathe}.room-map-pin.device-tv.active{box-shadow:0 0 0 3px #6070f42e,0 0 15px #495ce28c}.room-map-pin.device-tv.active svg{animation:1.8s ease-in-out infinite map-tv-flicker}.room-map-pin.device-door_lock.door-unlocked{color:var(--app-warning-deep);background:var(--app-warning-soft);box-shadow:0 0 0 3px #ec913933,0 3px 10px #b465184d}.room-map-pin.device-curtain{color:#0000;background:var(--app-primary-soft);overflow:hidden}.room-map-pin.device-curtain svg{opacity:0}.room-map-curtain-panels:before,.room-map-curtain-panels:after{background:repeating-linear-gradient(90deg, var(--app-accent-violet) 0 3px, var(--app-accent-violet) 3px 5px);content:"";border-radius:2px;width:52%;height:16px;transition:transform .48s cubic-bezier(.22,1,.36,1);position:absolute;top:5px;box-shadow:inset -1px 0 #ffffff59}.room-map-curtain-panels:before{left:0}.room-map-curtain-panels:after{right:0;transform:scaleX(-1)}.room-map-pin.device-curtain.curtain-open .room-map-curtain-panels:before{transform:translate(-72%)}.room-map-pin.device-curtain.curtain-open .room-map-curtain-panels:after{transform:scaleX(-1)translate(-72%)}.room-map-effect{z-index:4;box-sizing:border-box;pointer-events:none;display:block;position:absolute}.room-map-sunlight{filter:blur(4px);opacity:.9;transform-origin:top;background:linear-gradient(145deg,#fff9c19e,#ffda604d 42%,#0000 76%);border-radius:45% 55% 60% 40%;width:96px;height:116px;animation:4.5s ease-in-out infinite map-sunlight;transform:translate(-50%,-5%)rotate(9deg)}.room-map-sunlight i{background:linear-gradient(#ffffe2d1,#0000);width:2px;height:86%;position:absolute;top:8%;transform:rotate(17deg);box-shadow:0 0 5px #ffef97bf}.room-map-sunlight i:first-child{left:38%}.room-map-sunlight i:last-child{left:62%;transform:rotate(-10deg)}.room-map-fan-breeze{width:66px;height:46px;transform:translate(-8%,-50%)}.room-map-fan-breeze i,.room-map-ac-breeze i{filter:drop-shadow(0 1px 1px #ffffffb8);opacity:0;border-top:3px solid #199d94b3;border-radius:60%;height:8px;animation:1.7s ease-out infinite map-breeze;display:block;position:absolute}.room-map-fan-breeze i:first-child{width:38px;animation-delay:0s;top:5px;left:14px}.room-map-fan-breeze i:nth-child(2){width:48px;animation-delay:.42s;top:20px;left:3px}.room-map-fan-breeze i:nth-child(3){width:32px;animation-delay:.84s;top:34px;left:16px}.room-map-ac-breeze{width:74px;height:50px;transform:translate(-96%,-50%)}.room-map-ac-breeze i{border-top-color:#1eadd7b8}.room-map-ac-breeze i:first-child{width:54px;animation-delay:0s;top:6px;left:3px}.room-map-ac-breeze i:nth-child(2){width:48px;animation-delay:.35s;top:22px;left:12px}.room-map-ac-breeze i:nth-child(3){width:42px;animation-delay:.7s;top:38px;left:0}.room-map-camera-live{z-index:6;min-width:28px;color:var(--app-info);font:800 7px/9px var(--ff), system-ui, sans-serif;letter-spacing:.04em;background:#f4fcfff0;border:1px solid #2090cc40;border-radius:5px;padding:3px 5px 3px 10px;transform:translate(5px,-27px);box-shadow:0 2px 7px #1e7aac29}.room-map-camera-live:before{background:var(--app-info);content:"";border-radius:50%;width:4px;height:4px;animation:1.8s ease-in-out infinite map-live-pulse;position:absolute;top:5px;left:3px;box-shadow:0 0 0 2px #34a4dc24}.room-map-camera-rec{z-index:6;min-width:26px;color:var(--app-danger-strong);background:var(--app-surface-translucent);font:800 7px/9px var(--ff), system-ui, sans-serif;letter-spacing:.04em;border:1px solid #eb485338;border-radius:5px;padding:3px 5px 3px 10px;transform:translate(5px,-27px);box-shadow:0 2px 7px #43212333}.room-map-camera-rec:before{background:var(--app-danger);content:"";border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite map-recording;position:absolute;top:5px;left:3px}.room-map-unlocked-glow{background:radial-gradient(circle,#ffd99b52,#0000 68%);border:2px solid #f2962d75;border-radius:50%;width:43px;height:43px;animation:1.8s ease-in-out infinite map-unlocked-glow;transform:translate(-50%,-50%)}.room-map-pin:after{z-index:8;max-width:130px;color:var(--app-text-inverse);background:var(--app-text-secondary);content:attr(data-device);font:600 8px/11px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none;border-radius:5px;padding:4px 6px;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 5px);left:50%;overflow:hidden;transform:translate(-50%,3px);box-shadow:0 3px 8px #0000002e}.room-map-pin:hover:after{opacity:1;transform:translate(-50%)}.room-map-pin.active{animation:1.8s ease-out infinite room-map-active-pulse;box-shadow:0 0 0 3px #ef981d61,0 3px 9px #ac5b0359}.room-map-pin.offline{filter:grayscale(.75);opacity:.7;animation:none}.room-map-pin-status{border:2px solid var(--app-surface);background:var(--app-success);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-3px;right:-3px}.room-map-pin.compact{border-width:2px;width:22px;height:22px;box-shadow:0 2px 6px #16334e3d}.room-map-pin.compact .room-map-pin-status{border-width:1.5px;width:7px;height:7px;bottom:-3px;right:-3px}.room-map-pin.active .room-map-pin-status{background:var(--app-warning)}@media (prefers-reduced-motion:reduce){.room-map-photo-plan .room-map-room.room-lit,.room-map-pin.active svg,.room-map-effect{animation:none}.room-map-curtain-panels:before,.room-map-curtain-panels:after{transition:none}}.room-map-pin.offline .room-map-pin-status{background:var(--furniture-metal)}.room-map-compass{z-index:6;border:1px solid var(--app-border);width:24px;height:24px;color:var(--app-primary);background:var(--app-surface);font:700 9px/1 var(--ff), system-ui, sans-serif;border-radius:50%;place-items:center;display:grid;position:absolute;top:12px;right:14px}.room-map-active-floor{z-index:6;border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface-translucent);font:750 8px/10px var(--ff), system-ui, sans-serif;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;border-radius:5px;padding:4px 7px;position:absolute;top:13px;left:15px}.room-map-legend{color:var(--app-text-muted);font:400 10px/14px var(--ff), system-ui, sans-serif;flex-wrap:wrap;gap:18px;margin-top:12px;display:flex}.room-map-legend span{align-items:center;gap:6px;display:inline-flex}.room-map-legend-dot{background:var(--app-success);border-radius:50%;width:7px;height:7px}.room-map-legend-dot.active{background:var(--app-warning)}.room-map-legend-dot.offline{background:var(--app-border-strong)}.room-map-device-legend{border:1px solid var(--app-border);background:var(--app-surface-translucent);border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(122px,1fr));gap:8px 12px;min-width:0;padding:12px;display:grid;box-shadow:0 4px 12px #1f2a3c0f}.room-map-device-legend h3{color:var(--app-text-secondary);font:800 10px/14px var(--ff), system-ui, sans-serif;text-transform:uppercase;grid-column:1/-1;margin:1px 0 3px}.room-map-device-legend-row{color:var(--app-text-muted);font:650 9px/12px var(--ff), system-ui, sans-serif;align-items:center;gap:7px;margin:0;display:flex}.room-map-device-legend-row>i{border:2px solid var(--app-surface);width:25px;height:25px;color:var(--app-text-inverse);border-radius:50%;flex:0 0 25px;place-items:center;font-style:normal;display:grid;box-shadow:0 2px 6px #202b402e}.room-map-device-legend-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-map-device-legend p{color:var(--app-text-subtle);font:500 9px/13px var(--ff), system-ui, sans-serif;margin:0}.room-devices-card .room-map-device-legend{background:var(--app-surface-raised);box-shadow:none;margin-top:22px}.room-map-legend-wall{border-top:2px solid var(--app-text-secondary);border-right:2px solid var(--app-text-secondary);width:14px;height:7px}.room-map-door{z-index:5;border-top:2px solid var(--furniture-wood);border-left:2px solid var(--furniture-wood);background:var(--app-surface-raised);transform-origin:100% 100%;pointer-events:none;border-radius:18px 0 0;width:22px;height:14px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%);box-shadow:0 -1px #fffc}.room-living:after,.room-bed:after,.room-dining:after{z-index:1;content:"";pointer-events:none;background:#c7ab8438;border:1px solid #68574040;border-radius:3px;width:31%;height:16%;position:absolute;bottom:10%;right:8%}.room-bath:after{z-index:1;content:"";pointer-events:none;background:#d2e8e975;border:1px solid #66898f42;border-radius:50%;width:31%;height:14%;position:absolute;bottom:11%;right:8%}.room-map-furniture,.room-map-furniture i{box-sizing:border-box;pointer-events:none;display:block;position:absolute}.room-map-furniture{z-index:2;opacity:.9;filter:drop-shadow(0 2px 1px #3138391a);inset:0}.room-device-count{color:var(--app-success-strong);background:var(--app-success-soft);font:700 10px/14px var(--ff), system-ui, sans-serif;border-radius:999px;flex:none;padding:6px 9px}.room-device-items{scrollbar-width:thin;flex-direction:column;gap:8px;min-height:0;max-height:340px;padding:1px 4px 4px 1px;display:flex;overflow-y:auto}.room-device-item{border:1px solid var(--app-border);width:100%;min-height:46px;color:var(--app-text-muted);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:11px;align-items:center;gap:10px;padding:10px;transition:border-color .2s,background-color .2s,box-shadow .2s;display:flex}.room-device-item:hover,.room-device-item:focus-visible{border-color:var(--app-primary-border);background:var(--app-surface-raised);outline:none;box-shadow:0 4px 12px #006ffd12}.room-device-item.active{border-color:var(--furniture-fabric);background:var(--app-warning-soft)}.room-device-icon{width:30px;height:30px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:8px;flex:0 0 30px;place-items:center;display:grid}.room-device-icon.light-mode-icon{color:var(--light-device-color);background:color-mix(in srgb, var(--light-device-color) 14%, var(--app-surface))}.room-device-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.room-device-copy strong{color:var(--app-text);font:700 12px/16px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-device-copy small{color:var(--app-success-strong);font:400 10px/14px var(--ff), system-ui, sans-serif;align-items:center;gap:5px;display:inline-flex}.room-device-copy small .offline{background:var(--app-border-strong)}.room-device-item:has(.room-device-copy small) svg{color:var(--app-text-subtle)}.room-device-item.active .room-device-icon{color:var(--app-warning-deep);background:var(--app-warning-soft)}.room-device-item.active .room-device-copy small{color:var(--app-warning-deep)}.room-device-item.active .room-device-icon.light-mode-icon{color:var(--light-device-color);background:color-mix(in srgb, var(--light-device-color) 14%, var(--app-surface))}.room-devices-empty{border:1px dashed var(--app-border);color:var(--app-text-subtle);text-align:center;font:400 11px/16px var(--ff), system-ui, sans-serif;border-radius:11px;padding:28px 12px}.device-status-label{color:var(--c-ok-1);font:600 11px/16px var(--ff), system-ui, sans-serif;white-space:nowrap}.device-status-label.offline{color:var(--c-err-1)}.device-details-page{padding-top:0}.device-add-modal{width:min(100%,480px)}.device-details-heading{align-items:center;gap:16px;margin:24px 0;display:flex}.device-details-heading h1{font:800 28px/34px var(--ff), system-ui, sans-serif;margin:0 0 4px}.device-details-heading p:not(.profile-eyebrow){color:var(--app-text-muted);font:400 13px/20px var(--ff), system-ui, sans-serif;margin:0}.device-details-heading>.device-status{margin-left:auto}.device-details-icon{width:64px;height:64px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:16px;place-items:center;display:grid;position:relative}.device-details-icon>span{border:2px solid var(--app-primary-soft);background:var(--app-border-strong);border-radius:50%;width:9px;height:9px;position:absolute;bottom:4px;right:4px}.device-details-icon>span.online{background:var(--app-success)}.device-detail-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;margin-top:20px;padding:24px}.device-action-grid{flex-wrap:wrap;gap:10px;display:flex}.device-action-grid .secondary-button{text-transform:capitalize}.device-state-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.device-state-grid div{background:var(--app-surface-raised);border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.device-state-grid small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif;text-transform:capitalize}.device-state-grid strong{font:700 14px/18px var(--ff), system-ui, sans-serif;text-transform:capitalize}@media (width<=700px){.device-details-heading{flex-wrap:wrap;align-items:flex-start}.device-details-heading>.device-status{width:100%;margin-left:0}.device-detail-panel{padding:18px}.device-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-map-card,.room-devices-card{padding:18px}.room-map-stage{grid-template-columns:1fr;padding:9px}.room-map-device-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 10px;padding:10px;display:grid}.room-map-device-legend h3{grid-column:1/-1;margin-bottom:3px}.room-map-device-legend-row{margin:4px 0}.room-map-canvas{min-height:310px}.room-map-header{flex-direction:column}.room-map-header-actions{align-items:flex-start;width:100%}.room-map-floor-switch{align-self:stretch}.room-map-floor-switch button{flex:1}.room-map-pin{border-width:2px;width:24px;height:24px}}.device-details-fancy{max-width:1160px!important}.device-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.device-fancy-hero{align-items:center;gap:15px;margin-bottom:25px;display:flex}.device-fancy-icon{width:70px;height:70px;color:var(--app-primary);background:linear-gradient(145deg, var(--app-primary-soft), var(--app-primary-soft));border-radius:21px;flex:0 0 70px;place-items:center;display:grid;position:relative;box-shadow:0 10px 22px #006ffd1a}.device-fancy-icon>span{border:2px solid var(--app-primary-soft);background:var(--app-border-strong);border-radius:50%;width:11px;height:11px;position:absolute;bottom:5px;right:5px}.device-fancy-icon>span.online{background:var(--app-success)}.device-fancy-title{min-width:0}.device-fancy-kicker{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:5px;display:flex}.device-fancy-kicker span{color:var(--app-border-strong)}.device-fancy-title h1{letter-spacing:-.8px;margin:5px 0 4px;font-size:31px}.device-fancy-title p{color:var(--app-text-muted);margin:0;font-size:12px}.device-fancy-status{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 11px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:7px;margin-left:auto;padding:8px 11px;display:inline-flex}.device-fancy-status i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.device-fancy-status.online{color:var(--app-success-strong);background:var(--app-success-soft)}.device-fancy-status.online i{background:var(--app-success);box-shadow:0 0 0 4px #3ac0a01f}.device-fancy-feedback{align-items:center;gap:7px;margin:-7px 0 16px;display:flex}.device-fancy-grid{grid-template-columns:minmax(0,1.4fr) minmax(285px,.75fr);align-items:start;gap:18px;display:grid}.device-control-card,.device-state-card,.device-tip-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;box-shadow:0 12px 32px #1f20240b}.device-control-card,.device-state-card{padding:21px}.device-side-column{gap:14px;display:grid}.device-card-topline{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.device-card-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:5px;display:inline-flex}.device-card-eyebrow svg{color:var(--app-primary)}.device-card-topline h2{letter-spacing:-.25px;margin:6px 0 0;font-size:19px}.device-power-button{width:44px;height:44px;color:var(--app-text-muted);background:var(--app-surface-sunken);cursor:pointer;border:0;border-radius:13px;place-items:center;display:grid}.device-power-button.active{color:var(--app-text-inverse);background:var(--app-primary);box-shadow:0 7px 16px #006ffd3d}.device-power-button:disabled{cursor:not-allowed;opacity:.5}.device-action-grid-fancy{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.device-action-tile{border:1px solid var(--app-border);min-height:68px;color:var(--app-text);background:var(--app-surface-raised);text-align:left;cursor:pointer;border-radius:13px;align-items:center;gap:10px;padding:11px;transition:border-color .15s,background .15s,transform .15s;display:flex}.device-action-tile:hover{border-color:var(--app-primary-border);background:var(--app-bg);transform:translateY(-1px)}.device-action-tile:disabled{cursor:not-allowed;opacity:.55;transform:none}.device-action-tile.busy{border-color:var(--app-primary-border);background:var(--app-primary-soft)}.device-action-tile>span:nth-child(2){flex:1;gap:4px;min-width:0;display:grid}.device-action-tile strong{font:700 11px/14px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;overflow:hidden}.device-action-tile small{color:var(--app-text-muted);font:400 10px/13px var(--ff), system-ui, sans-serif}.device-action-tile-icon{width:34px;height:34px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:10px;flex:0 0 34px;place-items:center;display:grid}.device-offline-note{color:var(--app-warning-deep);background:var(--app-warning-soft);font:500 11px/16px var(--ff), system-ui, sans-serif;border-radius:10px;align-items:flex-start;gap:8px;margin-top:17px;padding:11px;display:flex}.device-state-live{color:var(--app-success-strong);font:700 10px/1 var(--ff), system-ui, sans-serif;align-items:center;gap:5px;display:inline-flex}.device-state-live i{background:var(--app-success);border-radius:50%;width:6px;height:6px}.device-state-list{gap:7px;margin-top:20px;display:grid}.device-state-row{background:var(--app-surface-raised);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.device-state-row span{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;text-transform:capitalize}.device-state-row strong{font:700 12px/1 var(--ff), system-ui, sans-serif}.device-empty-state{color:var(--app-text-muted);padding:20px 0;font-size:12px}.device-tip-card{color:var(--app-primary);background:var(--app-bg);border-color:var(--app-border-strong);align-items:flex-start;gap:11px;padding:17px;display:flex}.device-tip-card>span{background:var(--app-primary-soft);border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.device-tip-card div{gap:5px;display:grid}.device-tip-card strong{color:var(--app-text);font-size:12px}.device-tip-card small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}@media (width<=820px){.device-fancy-grid{grid-template-columns:1fr}}@media (width<=560px){.device-fancy-hero{flex-wrap:wrap;align-items:flex-start}.device-fancy-title h1{font-size:26px}.device-fancy-status{margin-left:0}.device-action-grid-fancy{grid-template-columns:1fr}.device-control-card,.device-state-card{padding:17px}}.device-secondary-details{border:1px solid var(--app-border);background:var(--app-surface);border-radius:15px;margin-top:16px;box-shadow:0 8px 24px #1f202409}.device-secondary-details summary{color:var(--app-text);font:700 12px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.device-secondary-details summary::-webkit-details-marker{display:none}.device-secondary-details summary span{align-items:center;gap:8px;display:inline-flex}.device-secondary-details summary span svg{color:var(--app-primary)}.device-secondary-content{border-top:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:14px;padding:0 17px 17px;display:flex}.device-secondary-content div{gap:4px;padding-top:14px;display:grid}.device-secondary-content strong{font-size:12px}.device-secondary-content small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}.device-secondary-content button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface-raised);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;align-items:center;gap:5px;margin-top:14px;padding:8px 10px;display:inline-flex}.device-meta-strip{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;flex-wrap:wrap;gap:14px;padding:15px 2px 2px;display:flex}.device-meta-strip span{align-items:center;gap:5px;display:inline-flex}.device-meta-strip svg{color:var(--app-success)}.device-add-modal{max-height:calc(100vh - 40px);overflow-y:auto}.device-groups{gap:28px;display:grid}.device-group{min-width:0}.device-group-heading{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.device-group-heading>div{align-items:center;gap:9px;display:flex}.device-group-heading h2{font:800 16px/22px var(--ff), system-ui, sans-serif;margin:0}.device-group-heading>span{min-width:25px;color:var(--app-primary-strong);background:var(--app-primary-soft);text-align:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.room-map-room:focus-visible{z-index:3;border-color:var(--app-primary);box-shadow:inset 0 0 0 1px var(--app-primary),0 8px 20px #006ffd2e;outline-offset:2px;outline:3px solid #006ffd3d}.device-offline-note{color:var(--app-warning-deep);background:var(--app-warning-soft);font:600 11px/16px var(--ff), system-ui, sans-serif;border-radius:10px;align-items:center;gap:6px;margin:-8px 0 13px;padding:10px 12px;display:flex}.device-control-hint,.water-mode-hint{color:var(--app-text-muted);font:500 11px/1.45 var(--ff), system-ui, sans-serif;margin:12px 0 0}.device-fault-note{border:1px solid var(--app-danger-soft);color:var(--app-danger-deep);background:var(--app-surface-sunken);font:700 11px/1.35 var(--ff), system-ui, sans-serif;border-radius:11px;align-items:center;gap:8px;margin:-4px 0 13px;padding:11px 13px;display:flex}.devices-heading h1,.household-hero h1,.site-page-title{letter-spacing:-.2px;font-size:32px;line-height:40px}.devices-heading p:not(.profile-eyebrow),.panel-heading-row p,.profile-identity p,.panel-heading p,.household-hero p:not(.profile-eyebrow),.panel-title p{font-size:14px;line-height:21px}.device-card h3,.household-card strong,.request-person strong{font-size:14px;line-height:20px}.device-card p,.household-card small,.request-person small{font-size:12px;line-height:17px}.devices-heading.app-page-header,.profile-page .profile-topbar.app-page-header,.schedules-header.app-page-header,.household-hero.app-page-header{margin-bottom:24px}.devices-content{padding:0 0 56px}.furniture-bed{border:1px solid var(--furniture-frame);background:var(--furniture-fabric);width:48%;height:45%;box-shadow:inset 0 10px var(--furniture-surface), inset 0 -8px #9e84622e;border-radius:3px;top:27%;right:12%}.furniture-bed:before{background:var(--app-warning-soft);width:22%;height:18%;box-shadow:26px 0 var(--furniture-surface);content:"";border:1px solid #8e795f73;border-radius:2px;position:absolute;top:4px;left:6px}.furniture-bed:after{content:"";background:#8e795f52;border-radius:2px;width:46%;height:2px;position:absolute;bottom:10%;right:8%}.furniture-side{border:1px solid var(--furniture-frame);background:var(--furniture-fabric-strong);width:8%;height:13%;top:29%;right:5%}.furniture-sofa{border:1px solid var(--furniture-metal);background:var(--furniture-metal-soft);border-radius:4px;width:55%;height:22%;top:37%;left:17%;box-shadow:inset 9px 0 #ffffff38,inset -9px 0 #ffffff38,0 2px #46525729}.furniture-sofa:before{background:linear-gradient(90deg, transparent 0 30%, var(--app-surface-veil) 30% 33%, transparent 33% 63%, var(--app-surface-veil) 63% 66%, transparent 66%);content:"";border:1px solid #56666f47;border-radius:3px;position:absolute;inset:4px 18%}.furniture-coffee{border:1px solid var(--furniture-frame);background:var(--furniture-wood-soft);border-radius:50%;width:24%;height:12%;top:66%;left:34%}.furniture-counter{border:1px solid var(--furniture-neutral);background:var(--furniture-fabric);width:17%;height:55%;top:17%;right:5%;box-shadow:inset 0 0 0 3px #ffffff2e}.furniture-counter:before{background:var(--furniture-neutral);width:64%;height:7%;box-shadow:0 20px var(--furniture-neutral), 0 40px var(--furniture-neutral);opacity:.42;content:"";border-radius:4px;position:absolute;top:12%;left:18%}.furniture-table{border:1px solid var(--furniture-frame);background:var(--furniture-wood-soft);width:34%;height:28%;box-shadow:-7px 0 0 -4px var(--furniture-frame), 7px 0 0 -4px var(--furniture-frame), 0 2px 2px #493c292e;border-radius:14px;top:42%;left:27%}.furniture-table:before{background:var(--furniture-fabric-strong);content:"";border:1px solid #ffffff59;border-radius:50%;width:22%;height:22%;position:absolute;top:38%;left:39%}.furniture-shower{border:1px solid var(--furniture-metal);background:repeating-linear-gradient(45deg, #bed5d8b8 0 5px, var(--app-surface-veil) 5px 6px);border-radius:50% 3px 3px;width:38%;height:35%;top:18%;right:8%}.furniture-basin{border:1px solid var(--furniture-metal);background:var(--app-surface-raised);border-radius:50%;width:30%;height:20%;bottom:18%;left:12%}.furniture-plant{border:4px dotted var(--furniture-plant);background:var(--furniture-plant-soft);border-radius:50%;width:18px;height:18px}.furniture-plant.one{top:28%;left:14%}.furniture-plant.two{bottom:18%;right:14%}.furniture-path{border-left:4px dashed #7d6f5859;border-right:4px dashed #7d6f5859;width:20%;top:12%;bottom:12%;left:42%}.furniture-console{border:1px solid var(--furniture-frame);background:var(--furniture-fabric-strong);width:48%;height:18%;top:34%;left:15%;box-shadow:inset 0 -4px #755b3829}.furniture-console:before{background:var(--furniture-wood);width:10%;height:44%;box-shadow:19px 0 var(--furniture-wood), 38px 0 var(--furniture-wood), 57px 0 var(--furniture-wood);opacity:.55;content:"";border-radius:2px;position:absolute;top:28%;left:8%}.feature-page{max-width:1180px;margin:0 auto;padding:32px 24px 56px}@media (width<=700px){.feature-page{padding:24px 18px 44px}}.lock-page{max-width:760px!important}.lock-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.lock-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.lock-header-icon{width:57px;height:57px;color:var(--app-success-strong);background:var(--app-success-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.lock-header-icon.unlocked,.lock-header-icon.unlocking{color:var(--app-primary);background:var(--app-primary-soft)}.lock-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.lock-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.lock-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.lock-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.lock-online.online i{background:var(--app-success)}.lock-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.lock-primary-card,.lock-info-card,.lock-control-card,.lock-activity-card,.lock-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.lock-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.lock-primary-card.locked{border-color:var(--app-success-soft);background:var(--app-surface)}.lock-primary-card.locking,.lock-primary-card.unlocking{background:var(--app-surface-raised)}.lock-status-visual{gap:6px;display:grid}.lock-large-icon{width:62px;height:62px;color:var(--app-success-strong);background:var(--app-success-soft);border-radius:18px;place-items:center;margin-bottom:3px;display:grid}.unlocking .lock-large-icon,.unlocked .lock-large-icon{color:var(--app-primary);background:var(--app-primary-soft)}.lock-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:5px;display:inline-flex}.lock-eyebrow svg{color:var(--app-primary)}.lock-status-visual strong{font-size:23px}.lock-status-visual small,.lock-primary-action small,.lock-info-card small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}.lock-primary-action{text-align:center;justify-items:stretch;gap:8px;min-width:185px;display:grid}.lock-button{background:var(--app-success-strong)}.lock-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:13px;display:grid}.lock-info-card,.lock-control-card,.lock-activity-card{padding:17px 19px}.lock-card-heading{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;align-items:center;gap:12px;display:flex}.lock-card-heading span{align-items:center;gap:7px;display:inline-flex}.lock-card-heading svg{color:var(--app-primary)}.lock-info-card>strong{margin-top:17px;font-size:22px;display:block}.lock-info-card>small{margin-top:6px;display:block}.lock-card-heading strong.low,.lock-low-battery{color:var(--app-warning-strong)}.lock-battery-bar{background:var(--app-border);border-radius:999px;height:7px;margin-top:18px;overflow:hidden}.lock-battery-bar i{border-radius:inherit;background:var(--app-success);height:100%;display:block}.lock-battery-bar i[style*="12%"],.lock-battery-bar i[style*="20%"]{background:var(--app-warning-deep)}.lock-control-card,.lock-activity-card,.lock-schedule-section{margin-top:13px}.lock-switch{background:var(--app-border-strong);cursor:pointer;border:0;border-radius:999px;width:39px;height:22px;padding:0;position:relative}.lock-switch i{background:var(--app-surface);border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.lock-switch.on{background:var(--app-primary)}.lock-switch.on i{transform:translate(17px)}.lock-delay-row{gap:9px;margin-top:17px;display:grid}.lock-delay-row small,.lock-card-heading>small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.lock-delay-row>div{flex-wrap:wrap;gap:7px;display:flex}.lock-delay-row button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:8px;padding:8px 10px}.lock-delay-row button.selected{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.lock-activity-list{gap:10px;margin-top:16px;display:grid}.lock-activity-list>div{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;grid-template-columns:44px 20px 1fr;align-items:center;gap:7px;display:grid}.lock-activity-list time{color:var(--app-text-subtle);font-variant-numeric:tabular-nums}.lock-activity-list svg{color:var(--app-primary)}.lock-schedule-section{display:block}.lock-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.lock-schedule-section summary::-webkit-details-marker{display:none}.lock-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.lock-schedule-section summary span svg,.lock-schedule-section summary>svg{color:var(--app-primary)}.lock-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.lock-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.lock-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.lock-header{flex-wrap:wrap;align-items:flex-start}.lock-online{margin-left:0}.lock-primary-card{flex-direction:column;align-items:stretch;padding:16px}.lock-primary-action{min-width:0}.lock-info-grid{grid-template-columns:1fr}.lock-info-card,.lock-control-card,.lock-activity-card{padding:15px}}.fan-page{max-width:760px!important}.fan-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.fan-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.fan-header-icon{width:57px;height:57px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.fan-header-icon.active svg{animation:1.6s linear infinite fan-spin}.fan-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.fan-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.fan-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.fan-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.fan-online.online i{background:var(--app-success)}.fan-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.fan-primary-card,.fan-control-card,.fan-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.fan-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.fan-primary-card.on{border-color:var(--app-primary-border);background:var(--app-surface-raised)}.fan-primary-card>div{gap:6px;display:grid}.fan-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:inline-flex}.fan-eyebrow svg{color:var(--app-primary)}.fan-primary-card strong{font-size:23px}.fan-primary-card small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.fan-power-button{min-width:130px;color:var(--app-text-inverse);background:var(--app-primary);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:13px 15px;display:inline-flex}.fan-power-button:disabled{cursor:not-allowed;opacity:.5}.fan-control-card{margin-top:13px;padding:17px 19px}.fan-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.fan-section-heading h2{margin:6px 0 0;font-size:21px}.fan-speed-value{color:var(--app-primary);font-size:13px!important}.fan-speed-buttons,.fan-choice-row{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.fan-speed-buttons button,.fan-choice-row button{border:1px solid var(--app-border);min-width:42px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;padding:10px 12px}.fan-choice-row button{min-width:78px}.fan-speed-buttons button.selected,.fan-choice-row button.selected,.fan-speed-buttons button:hover:not(:disabled),.fan-choice-row button:hover:not(:disabled){border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.fan-speed-buttons button:disabled,.fan-choice-row button:disabled{cursor:not-allowed;opacity:.45}.fan-syncing{color:var(--app-primary);font:500 10px/1 var(--ff), system-ui, sans-serif;margin-top:10px;display:block}.fan-control-line{color:var(--app-text);font:700 12px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;align-items:center;display:flex}.fan-control-line span{align-items:center;gap:7px;display:inline-flex}.fan-control-line svg{color:var(--app-primary)}.fan-control-value{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;margin-top:11px}.fan-switch{background:var(--app-border-strong);cursor:pointer;border:0;border-radius:999px;width:39px;height:22px;padding:0;position:relative}.fan-switch i{background:var(--app-surface);border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.fan-switch.on{background:var(--app-primary)}.fan-switch.on i{transform:translate(17px)}.fan-switch:disabled{cursor:not-allowed;opacity:.45}.fan-timer-active{color:var(--app-primary);font:500 10px/1 var(--ff), system-ui, sans-serif}.fan-schedule-section{margin-top:13px;display:block}.fan-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.fan-schedule-section summary::-webkit-details-marker{display:none}.fan-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.fan-schedule-section summary span svg,.fan-schedule-section summary>svg{color:var(--app-primary)}.fan-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.fan-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.fan-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.fan-header{flex-wrap:wrap;align-items:flex-start}.fan-online{margin-left:0}.fan-primary-card{flex-direction:column;align-items:stretch;padding:16px}.fan-power-button{width:100%}.fan-control-card{padding:15px}.fan-choice-row button{flex:1}}.ac-page{max-width:760px!important}.ac-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.ac-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.ac-header-icon{width:57px;height:57px;color:var(--app-info);background:var(--app-info-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.ac-header-icon.active svg{animation:2.1s ease-in-out infinite ac-breathe}.ac-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.ac-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.ac-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.ac-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.ac-online.online i{background:var(--app-success)}.ac-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.ac-primary-card,.ac-control-card,.ac-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.ac-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.ac-primary-card.on{border-color:var(--app-border-strong);background:var(--app-surface-raised)}.ac-primary-card>div{gap:6px;display:grid}.ac-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:inline-flex}.ac-eyebrow svg{color:var(--app-info)}.ac-primary-card strong{font-size:23px}.ac-primary-card small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.ac-power-button{min-width:130px;color:var(--app-text-inverse);background:var(--app-info);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:13px 15px;display:inline-flex}.ac-power-button:disabled{cursor:not-allowed;opacity:.5}.ac-control-card{margin-top:13px;padding:17px 19px}.ac-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.ac-section-heading h2{margin:7px 0 0;font-size:22px}.ac-section-heading>small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.ac-temperature-actions{justify-content:center;align-items:center;gap:24px;margin-top:18px;display:flex}.ac-temperature-actions button{border:1px solid var(--app-border);width:43px;height:43px;color:var(--app-info);background:var(--app-surface-raised);cursor:pointer;border-radius:12px;place-items:center;font-size:24px;display:grid}.ac-temperature-actions button:hover:not(:disabled){color:var(--app-text-inverse);background:var(--app-info)}.ac-temperature-actions button:disabled{cursor:not-allowed;opacity:.35}.ac-temperature-display{min-width:100px;color:var(--app-info);letter-spacing:-1.5px;text-align:center;font-size:38px;font-weight:800}.ac-temperature-display span{letter-spacing:0;margin-left:2px;font-size:17px}.ac-choice-row{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.ac-choice-row button{border:1px solid var(--app-border);min-width:68px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;flex:1;padding:10px 11px}.ac-choice-row button.selected,.ac-choice-row button:hover:not(:disabled){border-color:var(--app-border-strong);color:var(--app-info);background:var(--app-info-soft)}.ac-choice-row button:disabled{cursor:not-allowed;opacity:.45}.ac-control-line{color:var(--app-text);font:700 12px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;align-items:center;display:flex}.ac-control-line span{align-items:center;gap:7px;display:inline-flex}.ac-control-line svg{color:var(--app-info)}.ac-control-value{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;margin-top:11px}.ac-switch{background:var(--app-border-strong);cursor:pointer;border:0;border-radius:999px;width:39px;height:22px;padding:0;position:relative}.ac-switch i{background:var(--app-surface);border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.ac-switch.on{background:var(--app-info)}.ac-switch.on i{transform:translate(17px)}.ac-switch:disabled{cursor:not-allowed;opacity:.45}.ac-timer-active{color:var(--app-info)!important}.ac-schedule-section{margin-top:13px;display:block}.ac-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.ac-schedule-section summary::-webkit-details-marker{display:none}.ac-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.ac-schedule-section summary span svg,.ac-schedule-section summary>svg{color:var(--app-info)}.ac-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.ac-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.ac-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.ac-header{flex-wrap:wrap;align-items:flex-start}.ac-online{margin-left:0}.ac-primary-card{flex-direction:column;align-items:stretch;padding:16px}.ac-power-button{width:100%}.ac-control-card{padding:15px}.ac-temperature-actions{gap:14px}.ac-choice-row button{min-width:62px}}.curtain-page{max-width:760px!important}.curtain-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.curtain-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.curtain-header-icon{width:57px;height:57px;color:var(--app-accent-violet);background:var(--app-primary-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.curtain-header-icon.moving svg{animation:1.25s ease-in-out infinite alternate curtain-sway}.curtain-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.curtain-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.curtain-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.curtain-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.curtain-online.online i{background:var(--app-success)}.curtain-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.curtain-primary-card,.curtain-control-card,.curtain-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.curtain-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.curtain-primary-card.open,.curtain-primary-card.closed{background:var(--app-bg);border-color:var(--app-accent-violet-soft)}.curtain-status-copy{gap:7px;display:grid}.curtain-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:inline-flex}.curtain-eyebrow svg{color:var(--app-accent-violet)}.curtain-status-copy strong{font-size:23px}.curtain-status-copy small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.curtain-position-visual{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;align-items:end;gap:9px;display:flex}.curtain-visual-track{border:1px solid var(--app-border);background:repeating-linear-gradient(90deg, var(--app-primary-soft) 0 8px, var(--app-surface) 8px 12px);border-radius:9px;width:58px;height:88px;position:relative;overflow:hidden}.curtain-visual-track i{background:var(--app-surface);transition:height .2s;position:absolute;bottom:0;left:0;right:0}.curtain-visual-track span{background:var(--app-accent-violet);border-radius:99px;height:3px;transition:bottom .2s;position:absolute;left:5px;right:5px;box-shadow:0 0 0 3px #9a5bce22}.curtain-control-card{margin-top:13px;padding:17px 19px}.curtain-action-row{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.curtain-action-row button{border:1px solid var(--app-border);background:var(--app-surface);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px 10px;display:inline-flex}.curtain-action-row button.open{color:var(--app-success-strong);background:var(--app-success-soft);border-color:var(--furniture-surface)}.curtain-action-row button.stop{color:var(--app-warning-deep);background:var(--app-warning-soft);border-color:var(--furniture-fabric)}.curtain-action-row button.close{color:var(--app-accent-violet);background:var(--app-border);border-color:var(--app-border-strong)}.curtain-action-row button:hover:not(:disabled){filter:brightness(.97);transform:translateY(-1px)}.curtain-action-row button:disabled{cursor:not-allowed;opacity:.42}.curtain-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.curtain-section-heading h2{margin:7px 0 0;font-size:22px}.curtain-section-heading>small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.curtain-slider{width:100%;accent-color:var(--app-accent-violet);cursor:pointer;margin-top:24px}.curtain-slider:disabled{cursor:not-allowed;opacity:.45}.curtain-slider-labels{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;margin-top:7px;display:flex}.curtain-schedule-section{margin-top:13px;display:block}.curtain-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.curtain-schedule-section summary::-webkit-details-marker{display:none}.curtain-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.curtain-schedule-section summary span svg,.curtain-schedule-section summary>svg{color:var(--app-accent-violet)}.curtain-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.curtain-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.curtain-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.curtain-header{flex-wrap:wrap;align-items:flex-start}.curtain-online{margin-left:0}.curtain-primary-card{padding:16px}.curtain-action-row{gap:6px}.curtain-action-row button{padding:11px 5px}.curtain-control-card{padding:15px}}.heater-page{max-width:760px!important}.heater-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.heater-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.heater-header-icon{width:57px;height:57px;color:var(--app-warning-strong);background:var(--app-warning-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.heater-header-icon.active svg{animation:1.25s ease-in-out infinite heater-pulse}.heater-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.heater-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.heater-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.heater-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.heater-online.online i{background:var(--app-success)}.heater-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.heater-primary-card,.heater-control-card,.heater-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.heater-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.heater-primary-card.on{border-color:var(--furniture-fabric);background:var(--app-surface)}.heater-primary-card>div{gap:6px;display:grid}.heater-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:inline-flex}.heater-eyebrow svg{color:var(--app-warning-strong)}.heater-primary-card strong{font-size:23px}.heater-primary-card small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.heater-power-button{min-width:130px;color:var(--app-text-inverse);background:var(--app-warning-strong);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:13px 15px;display:inline-flex}.heater-power-button:disabled{cursor:not-allowed;opacity:.5}.heater-control-card{margin-top:13px;padding:17px 19px}.heater-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.heater-section-heading h2{margin:7px 0 0;font-size:22px}.heater-section-heading>small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.heater-temperature-actions{justify-content:center;align-items:center;gap:24px;margin-top:18px;display:flex}.heater-temperature-actions button{border:1px solid var(--furniture-fabric);width:43px;height:43px;color:var(--app-warning-strong);background:var(--app-surface);cursor:pointer;border-radius:12px;place-items:center;font-size:24px;display:grid}.heater-temperature-actions button:hover:not(:disabled){color:var(--app-text-inverse);background:var(--app-warning-strong)}.heater-temperature-actions button:disabled{cursor:not-allowed;opacity:.35}.heater-temperature-display{min-width:100px;color:var(--app-warning-strong);letter-spacing:-1.5px;text-align:center;font-size:38px;font-weight:800}.heater-temperature-display span{letter-spacing:0;margin-left:2px;font-size:17px}.heater-choice-row{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.heater-choice-row button{border:1px solid var(--app-border);min-width:68px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;flex:1;padding:10px 11px}.heater-choice-row button.selected,.heater-choice-row button:hover:not(:disabled){border-color:var(--furniture-fabric);color:var(--app-warning-strong);background:var(--app-warning-soft)}.heater-choice-row button:disabled{cursor:not-allowed;opacity:.45}.heater-syncing{color:var(--app-warning-strong);font:500 10px/1 var(--ff), system-ui, sans-serif;margin-top:10px;display:block}.heater-timer-active{color:var(--app-warning-strong)!important}.heater-schedule-section{margin-top:13px;display:block}.heater-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.heater-schedule-section summary::-webkit-details-marker{display:none}.heater-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.heater-schedule-section summary span svg,.heater-schedule-section summary>svg{color:var(--app-warning-strong)}.heater-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.heater-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.heater-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.heater-header{flex-wrap:wrap;align-items:flex-start}.heater-online{margin-left:0}.heater-primary-card{flex-direction:column;align-items:stretch;padding:16px}.heater-power-button{width:100%}.heater-control-card{padding:15px}.heater-temperature-actions{gap:14px}.heater-choice-row button{min-width:62px}}.water-page{max-width:760px!important}.water-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.water-header{align-items:center;gap:13px;margin-bottom:20px;display:flex}.water-header-icon{width:57px;height:57px;color:var(--app-info);background:var(--app-info-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid}.water-header-icon.active svg{animation:1.7s ease-in-out infinite water-pulse}.water-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.water-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.water-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.water-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.water-online.online i{background:var(--app-success)}.water-inline-error{align-items:center;gap:6px;margin:-6px 0 13px;display:flex}.water-primary-card,.water-control-card,.water-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.water-primary-card{justify-content:space-between;align-items:center;gap:20px;padding:20px;display:flex}.water-primary-card.on{border-color:var(--app-border-strong);background:var(--app-surface-raised)}.water-primary-card>div{gap:6px;display:grid}.water-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:6px;display:inline-flex}.water-eyebrow svg{color:var(--app-info)}.water-primary-card strong{font-size:23px}.water-primary-card small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.water-power-button{min-width:130px;color:var(--app-text-inverse);background:var(--app-info);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:13px 15px;display:inline-flex}.water-power-button:disabled{cursor:not-allowed;opacity:.5}.water-control-card{margin-top:13px;padding:17px 19px}.water-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.water-section-heading h2{margin:7px 0 0;font-size:22px}.water-section-heading>small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.water-temperature-actions{justify-content:center;align-items:center;gap:24px;margin-top:18px;display:flex}.water-temperature-actions button{border:1px solid var(--app-border-strong);width:43px;height:43px;color:var(--app-info);background:var(--app-surface-raised);cursor:pointer;border-radius:12px;place-items:center;font-size:24px;display:grid}.water-temperature-actions button:hover:not(:disabled){color:var(--app-text-inverse);background:var(--app-info)}.water-temperature-actions button:disabled{cursor:not-allowed;opacity:.35}.water-temperature-display{min-width:100px;color:var(--app-info);letter-spacing:-1.5px;text-align:center;font-size:38px;font-weight:800}.water-temperature-display span{letter-spacing:0;margin-left:2px;font-size:17px}.water-choice-row{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.water-choice-row button{border:1px solid var(--app-border);min-width:68px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:9px;flex:1;padding:10px 11px}.water-choice-row button.selected,.water-choice-row button:hover:not(:disabled){border-color:var(--app-border-strong);color:var(--app-info);background:var(--app-info-soft)}.water-choice-row button:disabled{cursor:not-allowed;opacity:.45}.water-syncing{color:var(--app-info);font:500 10px/1 var(--ff), system-ui, sans-serif;margin-top:10px;display:block}.water-timer-active{color:var(--app-info)!important}.water-schedule-section{margin-top:13px;display:block}.water-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.water-schedule-section summary::-webkit-details-marker{display:none}.water-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.water-schedule-section summary span svg,.water-schedule-section summary>svg{color:var(--app-info)}.water-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.water-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.water-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}@media (width<=560px){.water-header{flex-wrap:wrap;align-items:flex-start}.water-online{margin-left:0}.water-primary-card{flex-direction:column;align-items:stretch;padding:16px}.water-power-button{width:100%}.water-control-card{padding:15px}.water-temperature-actions{gap:14px}.water-choice-row button{min-width:62px}}.camera-page{max-width:1180px!important}.camera-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.camera-page-heading{align-items:center;gap:14px;margin-bottom:24px;display:flex}.camera-page-heading h1{letter-spacing:-.8px;margin:2px 0 4px;font-size:30px}.camera-page-heading p:last-child{color:var(--app-text-muted);align-items:center;gap:5px;margin:0;display:flex}.camera-title-icon{width:62px;height:62px;color:var(--app-primary);background:linear-gradient(145deg, var(--app-primary-soft), var(--app-primary-soft));border-radius:18px;place-items:center;display:grid;position:relative}.camera-title-icon>span{border:2px solid var(--app-primary-soft);background:var(--app-border-strong);border-radius:50%;width:10px;height:10px;position:absolute;bottom:4px;right:4px}.camera-title-icon>span.online{background:var(--app-success)}.camera-live-badge{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 11px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:7px;margin-left:auto;padding:8px 11px;display:inline-flex}.camera-live-badge i,.camera-status-dot{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.camera-live-badge.online{color:var(--app-success-strong);background:var(--app-success-soft)}.camera-live-badge.online i,.camera-status-dot{background:var(--app-success);box-shadow:0 0 0 4px #3ac0a01f}.camera-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,.8fr);align-items:start;gap:18px;display:grid}.camera-view-card,.camera-info-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;box-shadow:0 12px 32px #1f20240b}.camera-view-card{overflow:hidden}.camera-view-toolbar,.camera-view-footer{justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.camera-view-toolbar h2{margin:4px 0 0;font-size:18px}.camera-eyebrow,.camera-encrypted{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:5px;display:inline-flex}.camera-encrypted{color:var(--app-success-strong);text-transform:none;letter-spacing:0}.camera-viewport{background:radial-gradient(circle at 50% 34%, var(--app-text-secondary) 0, var(--app-media-bg) 48%, var(--app-media-bg) 100%);place-items:center;min-height:470px;display:grid;position:relative;overflow:hidden}.camera-viewport.has-stream{background:var(--app-media-bg)}.camera-video{object-fit:cover;width:100%;height:100%;min-height:470px}.camera-grid-lines{opacity:.2;background-image:linear-gradient(#7db7ff4d 1px,#0000 1px),linear-gradient(90deg,#7db7ff4d 1px,#0000 1px);background-size:12.5% 20%;position:absolute;inset:0}.camera-preview-center{z-index:1;max-width:270px;color:var(--app-text-inverse);text-align:center;justify-items:center;gap:9px;display:grid}.camera-preview-center small{color:var(--app-text-subtle);font:400 12px/18px var(--ff), system-ui, sans-serif}.camera-preview-center .primary-button{align-items:center;gap:7px;margin-top:9px;display:inline-flex}.camera-preview-orb{width:72px;height:72px;color:var(--app-primary-border);background:#5e9fe429;border:1px solid #96c9ff4d;border-radius:24px;place-items:center;margin-bottom:5px;display:grid;box-shadow:0 0 0 12px #5e9fe40d}.camera-corner-label{z-index:2;color:var(--app-text-inverse);font:800 9px/1 var(--ff), system-ui, sans-serif;letter-spacing:.12em;background:#0c1828ad;border-radius:5px;padding:5px 8px;position:absolute;top:16px;left:18px}.camera-viewport.has-stream .camera-corner-label{color:var(--app-danger-soft)}.camera-viewport.has-stream .camera-corner-label:before{content:"• ";color:var(--app-danger)}.camera-view-footer{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif}.camera-view-footer span{align-items:center;gap:7px;display:inline-flex}.camera-sidebar{gap:14px;display:grid}.camera-info-card{padding:18px}.camera-card-heading{color:var(--app-text-muted);font:700 11px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;justify-content:space-between;align-items:center;display:flex}.camera-card-heading svg{color:var(--app-primary)}.camera-health-row{gap:5px;margin:18px 0;display:grid}.camera-health-row strong{font-size:15px}.camera-health-row small,.camera-health-metrics span,.camera-note-card small{color:var(--app-text-muted);font:400 11px/16px var(--ff), system-ui, sans-serif}.camera-health-metrics{grid-template-columns:1fr 1fr;gap:8px;display:grid}.camera-health-metrics div{background:var(--app-surface-raised);border-radius:10px;gap:5px;padding:11px;display:grid}.camera-health-metrics strong{font-size:13px}.camera-control-list{gap:7px;margin-top:15px;display:grid}.camera-control-button{color:var(--app-text);background:var(--app-surface-raised);text-align:left;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.camera-control-button:hover{background:var(--app-primary-soft)}.camera-control-button:disabled{cursor:not-allowed;opacity:.5}.camera-control-button span{width:30px;height:30px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:8px;place-items:center;display:grid}.camera-control-button strong{font:700 11px/1 var(--ff), system-ui, sans-serif;text-transform:capitalize;flex:1}.camera-note-card{color:var(--app-primary);background:var(--app-bg);border-color:var(--app-border-strong);align-items:flex-start;gap:11px;display:flex}.camera-note-card div{gap:5px;display:grid}.camera-note-card strong{color:var(--app-text);font-size:12px}.camera-note-card small{color:var(--app-text-muted)}@media (width<=850px){.camera-layout{grid-template-columns:1fr}.camera-viewport,.camera-video{min-height:390px}}@media (width<=560px){.camera-page-heading{flex-wrap:wrap;align-items:flex-start}.camera-live-badge{margin-left:0}.camera-page-heading h1{font-size:25px}.camera-viewport,.camera-video{min-height:320px}.camera-view-toolbar,.camera-view-footer{padding:14px}}.light-page{max-width:900px!important}.light-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.light-header{align-items:center;gap:14px;margin-bottom:22px;display:flex}.light-header-icon{width:58px;height:58px;color:var(--app-warning);background:var(--app-warning-soft);border-radius:17px;flex:0 0 58px;place-items:center;display:grid;position:relative}.light-header-icon>span{border:2px solid var(--furniture-surface);background:var(--app-border-strong);border-radius:50%;width:9px;height:9px;position:absolute;bottom:3px;right:3px}.light-header-icon>span.online{background:var(--app-success)}.light-header h1{letter-spacing:-.7px;margin:4px 0;font-size:28px}.light-header p:last-child,.light-eyebrow{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif;align-items:center;gap:5px;display:flex}.light-header .profile-eyebrow{align-items:center;gap:5px;margin:0;display:flex}.light-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.light-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.light-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.light-online.online i{background:var(--app-success)}.light-inline-error{align-items:center;gap:6px;margin:-8px 0 14px;display:flex}.light-primary-card,.light-control-card,.light-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:17px;box-shadow:0 10px 28px #1f20240a}.light-primary-card{justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.light-primary-card.is-on{border-color:var(--app-warning-soft);background:linear-gradient(110deg, var(--app-surface), var(--app-warning-soft))}.light-primary-copy{gap:5px;display:grid}.light-primary-copy strong{font-size:22px}.light-primary-copy small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.light-eyebrow{text-transform:uppercase;letter-spacing:.07em;font-weight:700}.light-eyebrow svg{color:var(--app-warning)}.light-power-button{color:var(--app-text-inverse);background:var(--app-primary);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:11px;align-items:center;gap:7px;padding:11px 15px;display:inline-flex;box-shadow:0 7px 15px #006ffd33}.light-power-button.active{color:var(--app-warning-deep);background:var(--app-warning);box-shadow:0 7px 15px #f0a4002e}.light-power-button:disabled{cursor:not-allowed;opacity:.5}.light-control-card{margin-top:14px;padding:18px 20px}.light-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.light-section-heading h2{margin:5px 0 0;font-size:17px}.light-section-heading>strong{color:var(--app-warning);font-size:24px}.light-brightness-control{justify-content:center;align-items:center;gap:14px;height:190px;margin-top:5px;display:flex}.light-brightness-control input{width:170px;height:22px;accent-color:var(--app-warning);cursor:pointer;transform:rotate(-90deg)}.light-brightness-control input:disabled{cursor:not-allowed;opacity:.45}.light-brightness-scale{height:150px;color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;align-content:space-between;display:grid}.light-glow-preview{width:53px;height:53px;color:var(--app-text-inverse);background:var(--app-warning);border-radius:50%;place-items:center;display:grid;box-shadow:0 0 0 10px #f0a4001c,0 0 34px #f0a40059}.light-slider-caption{color:var(--app-text-muted);font:400 10px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;display:flex}.light-slider-caption span:nth-child(2){color:var(--app-warning);font-weight:700}.light-mode-selector{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:15px;display:grid}.light-mode-selector button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface-raised);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:11px;justify-items:center;gap:7px;padding:12px 7px;display:grid}.light-mode-selector button svg{color:var(--app-warning-deep)}.light-mode-selector button.selected{border-color:var(--app-warning-soft);color:var(--app-warning-deep);background:var(--app-warning-soft)}.light-mode-selector button:disabled{cursor:not-allowed;opacity:.45}.light-schedule-section{margin-top:14px;display:block}.light-schedule-section summary{color:var(--app-text);font:700 12px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 18px;list-style:none;display:flex}.light-schedule-section summary::-webkit-details-marker{display:none}.light-schedule-section summary span{align-items:center;gap:8px;display:inline-flex}.light-schedule-section summary span svg{color:var(--app-primary)}.light-schedule-content{gap:8px;padding:0 18px 15px;display:grid}.light-schedule-row{background:var(--app-surface-raised);border-radius:10px;align-items:center;gap:9px;padding:10px;display:flex}.light-schedule-row>span{width:29px;height:29px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:8px;place-items:center;display:grid}.light-schedule-row div{flex:1;gap:3px;display:grid}.light-schedule-row strong{font-size:11px}.light-schedule-row small{color:var(--app-text-muted);font:400 10px/1 var(--ff), system-ui, sans-serif}.light-schedule-row i{color:var(--app-success-strong);font:700 10px/1 var(--ff), system-ui, sans-serif;font-style:normal}.light-add-schedule{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:10px;display:inline-flex}.light-add-schedule:disabled{cursor:not-allowed;opacity:.65}@media (width<=560px){.light-header{flex-wrap:wrap;align-items:flex-start}.light-online{margin-left:0}.light-primary-card{padding:15px}.light-control-card{padding:16px}.light-mode-selector{grid-template-columns:repeat(2,1fr)}}.camera-preview-card,.camera-main-controls,.camera-compact-card,.camera-audio-card,.camera-events-card,.camera-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.camera-preview-card{overflow:hidden}.camera-preview-frame{aspect-ratio:16/9;background:radial-gradient(circle at 50% 35%, var(--app-text-secondary), var(--app-media-bg) 72%);place-items:center;min-height:390px;display:grid;position:relative;overflow:hidden}.camera-stream-skeleton{color:var(--app-text-inverse);justify-items:center;gap:12px;font-size:12px;display:grid}.camera-stream-skeleton span{border:3px solid #9dccff33;border-top-color:var(--app-primary-border);border-radius:50%;width:74px;height:74px;animation:.9s linear infinite camera-spin}.camera-stream-skeleton strong{color:var(--app-text-inverse);font-size:12px}.camera-unavailable{max-width:250px;color:var(--app-text-inverse);text-align:center;justify-items:center;gap:8px;display:grid}.camera-unavailable svg{color:var(--app-primary-border)}.camera-unavailable small{color:var(--app-text-subtle);font:400 11px/16px var(--ff), system-ui, sans-serif}.camera-frame-status{z-index:2;color:var(--app-text-inverse);font:800 9px/1 var(--ff), system-ui, sans-serif;letter-spacing:.1em;background:#07111eb8;border-radius:5px;align-items:center;gap:6px;padding:6px 8px;display:inline-flex;position:absolute;top:14px;left:15px}.camera-frame-status i{background:var(--app-success);border-radius:50%;width:7px;height:7px}.camera-frame-status.recording{color:var(--app-danger-soft)}.camera-frame-status.recording i{background:var(--app-danger);box-shadow:0 0 0 4px #ed324133}.camera-fullscreen{z-index:2;width:34px;height:34px;color:var(--app-text-inverse);cursor:pointer;background:#07111eb8;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;bottom:13px;right:14px}.camera-fullscreen:disabled{cursor:not-allowed;opacity:.4}.camera-main-controls{align-items:center;gap:10px;margin-top:13px;padding:13px 15px;display:flex}.camera-recording-copy{flex:1;gap:5px;display:grid}.camera-recording-copy strong{font-size:14px}.camera-record-button,.camera-snapshot-button{color:var(--app-text-inverse);background:var(--app-primary);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:10px 12px;display:inline-flex}.camera-record-button.recording{background:var(--app-danger)}.camera-snapshot-button{color:var(--app-primary);background:var(--app-primary-soft)}.camera-record-button:disabled,.camera-snapshot-button:disabled{cursor:not-allowed;opacity:.5}.camera-control-grid{grid-template-columns:1fr 1fr;gap:13px;margin-top:13px;display:grid}.camera-compact-card,.camera-audio-card,.camera-events-card{padding:16px}.camera-compact-heading{color:var(--app-text-muted);font:700 11px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;align-items:center;gap:10px;display:flex}.camera-compact-heading>span{color:var(--app-text);align-items:center;gap:7px;display:inline-flex}.camera-compact-heading>span svg{color:var(--app-primary)}.camera-compact-heading em,.camera-compact-heading small{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;font-style:normal}.camera-switch{background:var(--app-border-strong);cursor:pointer;border:0;border-radius:20px;width:39px;height:23px;padding:0;position:relative}.camera-switch i{background:var(--app-surface);border-radius:50%;width:17px;height:17px;transition:left .15s;position:absolute;top:3px;left:3px}.camera-switch.on{background:var(--app-primary)}.camera-switch.on i{left:19px}.camera-segmented{gap:6px;margin-top:15px;display:flex}.camera-segmented small{color:var(--app-text-muted);align-self:center;margin-right:auto;font-size:10px}.camera-segmented button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:7px;padding:7px 9px}.camera-segmented button.selected{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.camera-audio-card{margin-top:13px}.camera-audio-card>.camera-compact-heading{margin-bottom:12px}.camera-audio-controls{grid-template-columns:1fr 1fr 1.1fr;gap:8px;display:grid}.camera-audio-controls button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface-raised);text-align:left;cursor:pointer;border-radius:10px;grid-template-rows:1fr 1fr;grid-template-columns:21px 1fr;column-gap:7px;padding:10px;display:grid}.camera-audio-controls button svg{color:var(--app-primary);grid-row:1/3;align-self:center}.camera-audio-controls button span{align-self:end;font-size:10px}.camera-audio-controls button b{font:700 9px/1 var(--ff), system-ui, sans-serif;align-self:start}.camera-audio-controls button.active{border-color:var(--app-primary-border);background:var(--app-bg)}.camera-talk-button.talking{border-color:var(--app-danger-soft);color:var(--app-danger-strong);background:var(--app-surface-sunken)}.camera-schedule-section{margin-top:13px;display:block}.camera-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 16px;list-style:none;display:flex}.camera-schedule-section summary::-webkit-details-marker{display:none}.camera-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.camera-schedule-section summary svg{color:var(--app-primary)}.camera-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 16px 15px;display:grid}.camera-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.camera-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}.camera-events-card{margin-top:13px}.camera-events-list{gap:7px;margin-top:13px;display:grid}.camera-events-list>div{background:var(--app-surface-raised);border-radius:8px;grid-template-columns:46px 20px 1fr;align-items:center;gap:7px;padding:8px 9px;display:grid}.camera-events-list time{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif}.camera-events-list svg{color:var(--app-primary)}.camera-events-list span{font:600 10px/1 var(--ff), system-ui, sans-serif}.camera-page-skeleton{gap:12px;display:grid}.camera-page-skeleton span{background:linear-gradient(90deg, var(--app-border), var(--app-surface-raised), var(--app-border));border-radius:14px;height:54px}.camera-page-skeleton span:first-child{height:320px}@media (width<=700px){.camera-preview-frame{min-height:250px}.camera-main-controls{flex-wrap:wrap;align-items:stretch}.camera-recording-copy{flex-basis:100%}.camera-control-grid,.camera-audio-controls{grid-template-columns:1fr}.camera-audio-controls button{min-height:44px}}.tv-page{max-width:850px!important}.tv-back-button{align-items:center;gap:6px;margin-bottom:18px;display:inline-flex}.tv-header{align-items:center;gap:13px;margin-bottom:21px;display:flex}.tv-header-icon{width:57px;height:57px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:16px;flex:0 0 57px;place-items:center;display:grid;position:relative}.tv-header-icon>span{border:2px solid var(--app-primary-soft);background:var(--app-border-strong);border-radius:50%;width:9px;height:9px;position:absolute;bottom:3px;right:3px}.tv-header-icon>span.online{background:var(--app-success)}.tv-header h1{letter-spacing:-.6px;margin:4px 0;font-size:27px}.tv-online{color:var(--app-text-muted);background:var(--app-surface-sunken);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:8px 10px;display:inline-flex}.tv-online i{background:var(--app-border-strong);border-radius:50%;width:7px;height:7px}.tv-online.online{color:var(--app-success-strong);background:var(--app-success-soft)}.tv-online.online i{background:var(--app-success)}.tv-inline-error{align-items:center;gap:6px;margin:-7px 0 13px;display:flex}.tv-primary-card,.tv-control-card,.tv-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;box-shadow:0 9px 26px #1f20240a}.tv-primary-card{justify-content:space-between;align-items:center;gap:16px;padding:17px 19px;display:flex}.tv-primary-card.on{border-color:var(--app-primary-border);background:var(--app-surface-raised)}.tv-primary-card>div{gap:5px;display:grid}.tv-primary-card strong{font-size:21px}.tv-primary-card small{color:var(--app-text-muted);font:400 11px/1 var(--ff), system-ui, sans-serif}.tv-eyebrow{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;text-transform:uppercase;letter-spacing:.07em;align-items:center;gap:5px;display:flex}.tv-eyebrow svg{color:var(--app-primary)}.tv-power-button,.tv-mute-button{color:var(--app-text-inverse);background:var(--app-primary);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:10px 13px;display:inline-flex}.tv-power-button:disabled,.tv-mute-button:disabled{cursor:not-allowed;opacity:.5}.tv-control-card{margin-top:13px;padding:17px 19px}.tv-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.tv-section-heading h2{margin:5px 0 0;font-size:21px}.tv-mute-button{color:var(--app-primary);background:var(--app-primary-soft)}.tv-mute-button.muted{color:var(--app-text-inverse);background:var(--app-primary)}.tv-volume-slider{width:100%;accent-color:var(--app-primary);cursor:pointer;margin-top:21px}.tv-volume-slider:disabled{cursor:not-allowed;opacity:.45}.tv-slider-labels{color:var(--app-text-muted);font:500 10px/1 var(--ff), system-ui, sans-serif;justify-content:space-between;margin-top:6px;display:flex}.tv-source-chips{flex-wrap:wrap;gap:7px;margin-top:15px;display:flex}.tv-source-chips button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:8px;padding:9px 12px}.tv-source-chips button.selected,.tv-source-chips button:hover:not(:disabled){border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.tv-source-chips button:disabled{cursor:not-allowed;opacity:.5}.tv-remote-card{text-align:center}.tv-remote-card .tv-section-heading{text-align:left}.tv-nav-pad{grid-template-rows:repeat(3,37px);grid-template-columns:repeat(3,43px);justify-content:center;gap:6px;margin:18px auto 12px;display:grid}.tv-nav-pad button{border:1px solid var(--app-border);color:var(--app-primary);background:var(--app-bg);cursor:pointer;border-radius:9px;place-items:center;display:grid}.tv-nav-pad button:hover,.tv-nav-pad button:active{color:var(--app-text-inverse);background:var(--app-primary)}.tv-nav-pad button:first-child{grid-column:2}.tv-nav-pad button:nth-child(2){grid-area:2/1}.tv-nav-pad .ok{color:var(--app-text-inverse);background:var(--app-primary);font:800 10px/1 var(--ff), system-ui, sans-serif;grid-area:2/2}.tv-nav-pad button:nth-child(4){grid-area:2/3}.tv-nav-pad button:nth-child(5){grid-area:3/2}.tv-nav-bottom{justify-content:center;gap:7px;display:flex}.tv-nav-bottom button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:8px;align-items:center;gap:5px;padding:8px 11px;display:inline-flex}.tv-nav-sync{color:var(--app-primary);font:500 10px/1 var(--ff), system-ui, sans-serif;margin-top:10px;display:block}.tv-schedule-section{margin-top:13px;display:block}.tv-schedule-section summary{color:var(--app-text);font:700 11px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:15px 17px;list-style:none;display:flex}.tv-schedule-section summary::-webkit-details-marker{display:none}.tv-schedule-section summary span{align-items:center;gap:7px;display:inline-flex}.tv-schedule-section summary svg{color:var(--app-primary)}.tv-schedule-content{color:var(--app-text-muted);font:500 11px/1 var(--ff), system-ui, sans-serif;gap:7px;padding:0 17px 15px;display:grid}.tv-schedule-content div{background:var(--app-surface-raised);border-radius:8px;padding:9px 10px}.tv-schedule-content button{border:1px dashed var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}.tv-schedule-content button:disabled{opacity:.65}@media (width<=560px){.tv-header{flex-wrap:wrap;align-items:flex-start}.tv-online{margin-left:0}.tv-primary-card,.tv-control-card{padding:15px}.tv-primary-card{flex-direction:column;align-items:flex-start}.tv-power-button{justify-content:center;align-self:stretch}.tv-section-heading h2{font-size:19px}}.tv-control-line{align-items:end;gap:16px;margin-top:19px;display:flex}.tv-control-line .smart-range-control{flex:1;margin-top:0}.tv-power{width:43px;height:43px;color:var(--app-text-inverse);background:var(--app-primary);cursor:pointer;border:0;border-radius:12px;place-items:center;display:grid}.tv-power:disabled{opacity:.5}.tv-remote{background:var(--app-surface-raised);border-radius:14px;justify-items:center;gap:14px;margin-top:22px;padding:16px;display:grid}.tv-channel-row{align-items:center;gap:14px;display:flex}.tv-channel-row button,.tv-dpad button{color:var(--app-primary);background:var(--app-primary-soft);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:8px}.tv-channel-row button{padding:9px 11px}.tv-channel-row strong{text-align:center;min-width:60px;font-size:13px}.tv-dpad{grid-template-rows:repeat(3,32px);grid-template-columns:repeat(3,37px);gap:5px;display:grid}.tv-dpad button{padding:0}.tv-dpad button:first-child{grid-column:2}.tv-dpad button:nth-child(2){grid-area:2/1}.tv-dpad .ok{color:var(--app-text-inverse);background:var(--app-primary);grid-area:2/2}.tv-dpad button:nth-child(4){grid-area:2/3}.tv-dpad button:nth-child(5){grid-area:3/2}.lock-actions{grid-template-columns:1fr 1fr}.lock-actions button{padding:17px}.lock-security-note{color:var(--app-text-muted);background:var(--app-bg);font:400 11px/16px var(--ff), system-ui, sans-serif;border-radius:10px;align-items:flex-start;gap:8px;margin-top:16px;padding:11px;display:flex}.lock-security-note svg{color:var(--app-primary);flex:none}.light-brightness-card .light-eyebrow,.light-brightness-card h2,.light-brightness-card .light-slider-caption span,.light-control-card:not(.light-brightness-card) .light-eyebrow,.light-control-card:not(.light-brightness-card) h2{font-size:revert}.light-brightness-card .light-eyebrow:after,.light-brightness-card h2:after,.light-brightness-card .light-slider-caption span:after,.light-control-card:not(.light-brightness-card) .light-eyebrow:after,.light-control-card:not(.light-brightness-card) h2:after{content:none}.curtain-back-button,.fan-back-button,.ac-back-button,.water-back-button,.heater-back-button,.camera-back-button,.door-back-button{font-size:0}.curtain-back-button:after,.fan-back-button:after,.ac-back-button:after,.water-back-button:after,.heater-back-button:after,.camera-back-button:after,.door-back-button:after{content:"Quay lại danh sách thiết bị";font-size:13px}.curtain-action-row button.open,.curtain-action-row button.stop,.curtain-action-row button.close,.fan-power-button,.ac-power-button,.water-power-button,.heater-power-button{font-size:0}.curtain-action-row button.open:after{content:"Mở";font-size:13px}.curtain-action-row button.stop:after{content:"Dừng";font-size:13px}.curtain-action-row button.close:after{content:"Đóng";font-size:13px}.fan-power-button:after,.ac-power-button:after,.water-power-button:after,.heater-power-button:after{content:"Bật / Tắt";font-size:13px}.curtain-control-card .curtain-section-heading .curtain-eyebrow,.fan-control-card .fan-eyebrow,.ac-control-card .ac-eyebrow,.water-control-card .water-eyebrow,.heater-control-card .heater-eyebrow{font-size:0}.curtain-control-card .curtain-section-heading .curtain-eyebrow:after{content:"Vị trí rèm";font-size:10px}.fan-control-card .fan-eyebrow:after{content:"Tốc độ quạt";font-size:10px}.fan-page .fan-primary-card strong{font-size:0}.fan-page .fan-primary-card.on strong:after{content:"Đang bật";font-size:22px}.fan-page .fan-primary-card:not(.on) strong:after{content:"Đang tắt";font-size:22px}.fan-page .fan-primary-card small:after{content:"Tốc độ quạt đang chọn";font-size:12px}.fan-page .fan-control-line span:after{content:"Đảo chiều";font-size:13px}.fan-page .fan-control-value:after{content:"Đang tắt";font-size:13px}.fan-page .fan-timer-active:after{content:"Tắt sau thời gian đã chọn";font-size:11px}.fan-page .fan-schedule-section summary span{font-size:0}.fan-page .fan-schedule-section summary span:after{content:"Lịch thiết bị";font-size:12px}.curtain-control-card .curtain-action-row button{letter-spacing:normal}.camera-record-button,.camera-snapshot-button,.camera-talk-button{font-size:0}.camera-record-button:after{content:"Bắt đầu ghi";font-size:12px}.camera-snapshot-button:after{content:"Chụp ảnh";font-size:12px}.camera-talk-button span{font-size:0}.camera-talk-button span:after{content:"Nhấn giữ để nói";font-size:12px}.camera-page .camera-eyebrow{font-size:0}.camera-page .camera-eyebrow:after{content:"Trạng thái ghi hình";font-size:10px}.camera-page .camera-schedule-section summary span{font-size:0}.camera-page .camera-schedule-section summary span:after{content:"Lịch thiết bị";font-size:12px}.camera-simulated-preview,.camera-preview-card.offline .camera-simulated-preview{background:radial-gradient(circle at 50% 35%, var(--app-text-secondary), var(--app-media-bg) 72%)}.camera-simulation-center{z-index:1;max-width:290px;color:var(--app-text-inverse);text-align:center;justify-items:center;gap:9px;display:grid}.camera-simulation-center strong{font-size:17px}.camera-simulation-center small{color:var(--app-primary-border);font:400 12px/18px var(--ff), system-ui, sans-serif}.camera-simulated-preview.recording .camera-preview-orb{color:var(--app-danger-soft);background:#ed32412e;border-color:#ff74806b}.camera-simulated-preview.recording .camera-frame-status{color:var(--app-danger-soft)}.camera-simulated-preview.recording .camera-frame-status i{background:var(--app-danger);box-shadow:0 0 0 4px #ed324133}.camera-control-lock-note,.camera-control-hint,.camera-empty-events,.camera-empty-schedule{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif;margin:10px 0 0}.camera-control-lock-note{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:10px;align-items:center;gap:6px;padding:10px 12px;display:flex}.camera-control-hint{margin-bottom:0}.camera-segmented button:disabled,.camera-switch:disabled,.camera-schedule-editor button:disabled,.camera-schedule-editor input:disabled,.camera-schedule-editor select:disabled{cursor:not-allowed;opacity:.48}.camera-schedule-content>p{margin:0;line-height:1.45}.camera-schedule-editor{background:var(--app-surface-raised);border-radius:10px;grid-template-columns:100px 130px minmax(230px,1fr) 39px 30px;align-items:end;gap:8px;padding:10px;display:grid}.camera-schedule-editor label{color:var(--app-text-muted);font:700 10px/1 var(--ff), system-ui, sans-serif;gap:5px;display:grid}.camera-schedule-editor input,.camera-schedule-editor select{border:1px solid var(--app-border);min-width:0;color:var(--app-text);background:var(--app-surface);font:600 11px/1 var(--ff), system-ui, sans-serif;border-radius:7px;padding:8px}.camera-repeat-days{flex-wrap:wrap;gap:4px;display:flex}.camera-repeat-days button{border:1px solid var(--app-border);min-width:28px;color:var(--app-text-muted);background:var(--app-surface);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:7px;padding:7px 5px}.camera-repeat-days button.selected{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-primary-soft)}.camera-remove-schedule{border:1px solid var(--app-border);width:30px;height:30px;color:var(--app-danger-strong);background:var(--app-surface);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid}@media (width<=700px){.camera-schedule-editor{grid-template-columns:1fr 1fr 39px 30px}.camera-repeat-days{grid-area:2/1/auto/-1}}.light-control-hint{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif;margin:8px 0 -2px}.lock-control-description,.lock-empty-activity{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif;margin:10px 0 0;display:block}.lock-page .lock-eyebrow{font-size:0}.lock-page .lock-eyebrow:after{content:"Trạng thái khóa";font-size:10px}.ac-page .ac-eyebrow,.water-page .water-eyebrow,.heater-page .heater-eyebrow{font-size:0}.ac-page .ac-eyebrow:after,.water-page .water-eyebrow:after,.heater-page .heater-eyebrow:after{content:"Trạng thái thiết bị";font-size:10px}.ac-page .ac-temperature-card .ac-eyebrow:after,.water-page .water-temperature-card .water-eyebrow:after,.heater-page .heater-temperature-card .heater-eyebrow:after{content:"Nhiệt độ mục tiêu"}.ac-page .ac-control-card:nth-of-type(5) .ac-eyebrow:after{content:"Chế độ hoạt động"}.ac-page .ac-control-card:nth-of-type(6) .ac-eyebrow:after{content:"Tốc độ quạt"}.water-page .water-control-card .water-eyebrow:after,.heater-page .heater-control-card .heater-eyebrow:after{content:"Chế độ làm nóng"}.ac-page .ac-primary-card strong,.water-page .water-primary-card strong,.heater-page .heater-primary-card strong{font-size:0}.ac-page .ac-primary-card.on strong:after,.water-page .water-primary-card.on strong:after,.heater-page .heater-primary-card.on strong:after{content:"Đang bật";font-size:22px}.ac-page .ac-primary-card:not(.on) strong:after,.water-page .water-primary-card:not(.on) strong:after,.heater-page .heater-primary-card:not(.on) strong:after{content:"Đang tắt";font-size:22px}.ac-page .ac-control-value,.water-page .water-status-value,.heater-page .heater-status-value{font-size:0}.ac-page .ac-control-value:after,.water-page .water-status-value:after,.heater-page .heater-status-value:after{content:"Tắt";font-size:13px}.ac-page .ac-timer-active:first-letter,.water-page .water-timer-active:first-letter,.heater-page .heater-timer-active:first-letter,.ac-page .ac-schedule-section summary span,.water-page .water-schedule-section summary span,.heater-page .heater-schedule-section summary span{font-size:0}.ac-page .ac-schedule-section summary span:after,.water-page .water-schedule-section summary span:after,.heater-page .heater-schedule-section summary span:after{content:"Lịch thiết bị";font-size:12px}.ac-page .ac-schedule-content button,.water-page .water-schedule-content button,.heater-page .heater-schedule-content button{font-size:0}.ac-page .ac-schedule-content button:after,.water-page .water-schedule-content button:after,.heater-page .heater-schedule-content button:after{content:"Thêm lịch hoặc tự động hóa";font-size:12px}.light-page{--light-mode-color:var(--app-warning);--light-mode-soft:var(--app-warning-soft);--light-mode-ring:#f0a4001c;--light-mode-glow:#f0a40059}.light-page .light-primary-card.is-on{border-color:var(--light-mode-color);background:linear-gradient(110deg, var(--app-surface), var(--light-mode-soft))}.light-page .light-glow-preview{background:var(--light-mode-color);box-shadow:0 0 0 10px var(--light-mode-ring), 0 0 34px var(--light-mode-glow);transition:background .18s,box-shadow .18s}.light-page .light-mode-selector button.selected{border-color:var(--light-mode-color);color:var(--light-mode-color);background:var(--light-mode-soft)}.light-page .light-mode-selector button.selected svg,.light-page .light-section-heading>strong{color:var(--light-mode-color)}.tv-control-card.is-inactive{border-color:var(--app-border);background:var(--app-surface-raised)}.tv-control-card.is-inactive .tv-mute-button,.tv-control-card.is-inactive .tv-volume-slider,.tv-control-card.is-inactive .tv-source-chips{opacity:.45}.tv-control-card.is-inactive .tv-mute-button,.tv-control-card.is-inactive .tv-source-chips button{cursor:not-allowed}.light-control-card.is-inactive,.ac-control-card.is-inactive,.fan-control-card.is-inactive,.water-control-card.is-inactive,.heater-control-card.is-inactive{opacity:.52}.light-control-card.is-inactive input,.light-control-card.is-inactive button,.ac-control-card.is-inactive button,.fan-control-card.is-inactive button,.water-control-card.is-inactive button,.heater-control-card.is-inactive button{cursor:not-allowed}.camera-power-button{color:var(--app-primary);background:var(--app-primary-soft);font:700 10px/1 var(--ff), system-ui, sans-serif;cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:10px 12px;display:inline-flex}.camera-power-button:disabled{cursor:not-allowed;opacity:.5}.camera-main-controls.is-inactive .camera-recording-copy,.camera-main-controls.is-inactive .camera-record-button,.camera-main-controls.is-inactive .camera-snapshot-button,.camera-control-grid.is-inactive,.camera-audio-card.is-inactive{opacity:.5}.camera-main-controls.is-inactive .camera-record-button,.camera-main-controls.is-inactive .camera-snapshot-button,.camera-control-grid.is-inactive button,.camera-audio-card.is-inactive button{cursor:not-allowed}.ac-page .ac-primary-card strong.ac-status-text,.water-page .water-primary-card strong.water-status-text{font-size:23px}.ac-page .ac-primary-card strong.ac-status-text:after,.water-page .water-primary-card strong.water-status-text:after{content:none}.ac-page .ac-control-card .ac-eyebrow,.water-page .water-control-card .water-eyebrow,.ac-page .ac-primary-card .ac-eyebrow,.water-page .water-primary-card .water-eyebrow{font-size:10px}.ac-page .ac-control-card .ac-eyebrow:after,.water-page .water-control-card .water-eyebrow:after,.ac-page .ac-primary-card .ac-eyebrow:after,.water-page .water-primary-card .water-eyebrow:after{content:none}.ac-page .ac-schedule-section summary span:after,.water-page .water-schedule-section summary span:after{content:"Lịch thiết bị"}.ac-page .ac-schedule-content button:after,.water-page .water-schedule-content button:after{content:"Quản lý lịch"}.fan-page .fan-primary-card strong.fan-status-text{font-size:23px}.fan-page .fan-primary-card strong.fan-status-text:after{content:none}.fan-page .fan-primary-card small{font-size:11px}.fan-page .fan-primary-card small:after{content:none}.fan-page .fan-eyebrow{font-size:10px}.fan-page .fan-eyebrow:after{content:none}.fan-page .fan-control-line span,.fan-page .fan-control-value,.fan-page .fan-timer-active{font-size:11px}.fan-page .fan-control-line span:after,.fan-page .fan-control-value:after,.fan-page .fan-timer-active:after{content:none}.light-schedule-section,.curtain-schedule-section,.camera-schedule-section,.lock-schedule-section,.tv-schedule-section,.fan-schedule-section,.ac-schedule-section,.water-schedule-section,.heater-schedule-section{border:1px solid var(--app-border);background:var(--app-surface);border-radius:14px;margin-top:14px;display:block;box-shadow:0 8px 24px #1f20240a}.light-schedule-section summary,.curtain-schedule-section summary,.camera-schedule-section summary,.lock-schedule-section summary,.tv-schedule-section summary,.fan-schedule-section summary,.ac-schedule-section summary,.water-schedule-section summary,.heater-schedule-section summary{min-height:52px;color:var(--app-text);font:700 12px/1 var(--ff), system-ui, sans-serif;cursor:pointer;justify-content:space-between;align-items:center;padding:0 17px;list-style:none;display:flex}.light-schedule-section summary::-webkit-details-marker{display:none}.curtain-schedule-section summary::-webkit-details-marker{display:none}.camera-schedule-section summary::-webkit-details-marker{display:none}.lock-schedule-section summary::-webkit-details-marker{display:none}.tv-schedule-section summary::-webkit-details-marker{display:none}.fan-schedule-section summary::-webkit-details-marker{display:none}.ac-schedule-section summary::-webkit-details-marker{display:none}.water-schedule-section summary::-webkit-details-marker{display:none}.heater-schedule-section summary::-webkit-details-marker{display:none}.light-schedule-section summary span,.curtain-schedule-section summary span,.camera-schedule-section summary span,.lock-schedule-section summary span,.tv-schedule-section summary span,.fan-schedule-section summary span,.ac-schedule-section summary span,.water-schedule-section summary span,.heater-schedule-section summary span{align-items:center;gap:8px;display:inline-flex;font-size:12px!important}.light-schedule-section summary span:after,.curtain-schedule-section summary span:after,.camera-schedule-section summary span:after,.lock-schedule-section summary span:after,.tv-schedule-section summary span:after,.fan-schedule-section summary span:after,.ac-schedule-section summary span:after,.water-schedule-section summary span:after,.heater-schedule-section summary span:after{content:none!important;display:none!important}.light-schedule-content,.curtain-schedule-content,.camera-schedule-content,.lock-schedule-content,.tv-schedule-content,.fan-schedule-content,.ac-schedule-content,.water-schedule-content,.heater-schedule-content{color:var(--app-text-secondary);font:500 12px/1.45 var(--ff), system-ui, sans-serif;gap:10px;padding:0 17px 16px;display:grid}.light-schedule-content>div,.curtain-schedule-content>div,.camera-schedule-content>div,.lock-schedule-content>div,.tv-schedule-content>div,.fan-schedule-content>div,.ac-schedule-content>div,.water-schedule-content>div,.heater-schedule-content>div{background:0 0;border-radius:0;padding:0}.light-schedule-content button,.curtain-schedule-content button,.camera-schedule-content button,.lock-schedule-content button,.tv-schedule-content button,.fan-schedule-content button,.ac-schedule-content button,.water-schedule-content button,.heater-schedule-content button{border:1px dashed var(--app-border-strong);width:100%;min-height:37px;color:var(--app-text-muted);background:var(--app-surface);border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:9px;display:inline-flex;font:700 10px/1 var(--ff), system-ui, sans-serif!important}.light-schedule-content button:after,.curtain-schedule-content button:after,.camera-schedule-content button:after,.lock-schedule-content button:after,.tv-schedule-content button:after,.fan-schedule-content button:after,.ac-schedule-content button:after,.water-schedule-content button:after,.heater-schedule-content button:after{content:none!important;display:none!important}.ac-page .ac-eyebrow,.water-page .water-eyebrow,.heater-page .heater-eyebrow,.camera-page .camera-eyebrow{font-size:10px!important}.ac-page .ac-eyebrow:after,.water-page .water-eyebrow:after,.heater-page .heater-eyebrow:after,.camera-page .camera-eyebrow:after{content:none!important;display:none!important}.ac-page .ac-power-button,.water-page .water-power-button,.heater-page .heater-power-button,.camera-page .camera-record-button,.camera-page .camera-snapshot-button{font-size:11px!important}.ac-page .ac-power-button:after,.water-page .water-power-button:after,.heater-page .heater-power-button:after,.camera-page .camera-record-button:after,.camera-page .camera-snapshot-button:after{content:none!important;display:none!important}.ac-page .ac-control-value{font-size:11px!important}.ac-page .ac-control-value:after{content:none!important;display:none!important}.ac-page .ac-timer-active:first-letter,.water-page .water-timer-active:first-letter,.heater-page .heater-timer-active:first-letter{font-size:inherit!important}.lock-battery-card{margin-top:13px}.lock-battery-card>small{color:var(--app-text-muted);font:500 11px/16px var(--ff), system-ui, sans-serif;margin-top:7px;display:block}@media (width<=700px){.devices-content{padding-bottom:48px}.profile-content{padding:0 0 48px}.overview-page.feature-page,.schedules-page.feature-page,.household-page.feature-page{padding:0 0 44px}.energy-hero.app-page-header h1{font-size:26px;line-height:34px}}.schedules-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.schedules-header h1{margin:4px 0}.schedules-header p{color:var(--app-text-muted);margin:0}.schedules-filter{gap:8px;margin-bottom:16px;display:flex}.schedules-filter button,.weekday-picker button{border:1px solid var(--app-border);background:var(--app-surface);cursor:pointer;border-radius:8px;padding:8px 11px}.schedules-filter button.selected,.weekday-picker button.selected{color:var(--app-primary);border-color:var(--app-primary-border);background:var(--app-primary-soft)}.schedules-grid{gap:12px;display:grid}.schedule-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:15px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.schedule-card-copy{min-width:0}.schedule-card h2{margin:8px 0 4px;font-size:17px}.schedule-card p{color:var(--app-text-muted);margin:3px 0 0;font-size:13px}.schedule-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.schedule-actions .secondary-button{height:36px;padding:0 11px}.schedule-draft-note{color:var(--app-warning-deep);margin-top:7px;display:block}.schedule-status{color:var(--app-success-strong);background:var(--app-success-soft);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.schedule-status.draft,.schedule-status.paused{color:var(--app-warning-deep);background:var(--app-warning-soft)}.schedule-status.cancelled{color:var(--app-danger-deep);background:var(--app-danger-soft)}.schedule-status.completed{color:var(--app-text-muted);background:var(--app-skeleton)}.schedule-modal{z-index:100;background:#0006;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.schedule-form{background:var(--app-surface);border-radius:16px;gap:13px;width:min(100%,520px);max-height:90vh;padding:22px;display:grid;overflow:auto}.schedule-form header{justify-content:space-between;align-items:center;display:flex}.schedule-form header h2{margin:0}.schedule-form header button{cursor:pointer;background:0 0;border:0;font-size:24px}.schedule-form label{color:var(--app-text-secondary);gap:6px;font-size:12px;font-weight:700;display:grid}.schedule-form input,.schedule-form select{border:1px solid var(--app-border);font:inherit;border-radius:8px;padding:10px}.schedule-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.weekday-picker{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.schedule-warning{color:var(--app-warning-deep)}.schedule-blocker{color:var(--app-danger-deep);font-weight:700}.schedule-history{width:min(100%,620px)}.schedule-run{border:1px solid var(--app-border);border-radius:10px;grid-template-columns:1fr 1fr;gap:4px 14px;padding:12px;font-size:12px;display:grid}.schedule-run strong,.schedule-run small{grid-column:1/-1}.schedule-run span{color:var(--app-text-muted)}@media (width<=760px){.schedule-card{flex-direction:column;align-items:flex-start}.schedule-actions{justify-content:flex-start}.schedule-form-row,.schedule-run{grid-template-columns:1fr}}.schedule-form select:disabled,.schedule-form input:disabled{color:var(--app-text-subtle);background:var(--app-surface-sunken);cursor:not-allowed}.schedule-safety-note{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:8px;margin:-4px 0 0;padding:9px 10px;font-size:11px;line-height:1.45}.scene-schedule-picker,.scene-action-preview{gap:10px;display:grid}.scene-summary-card{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:12px;gap:12px;padding:14px;display:grid}.scene-summary-heading,.scene-editor-heading{align-items:flex-start;gap:10px;display:flex}.scene-summary-heading svg,.scene-editor-heading svg{color:var(--app-primary)}.scene-summary-heading p,.scene-editor-heading small{color:var(--app-text-muted);margin:3px 0 0;font-size:11px;line-height:1.5}.scene-action-preview small{color:var(--app-text-secondary);background:var(--app-surface-raised);border-radius:8px;padding:8px 10px;line-height:1.45;display:block}.scene-action-preview h3{margin:4px 0 0}.scene-editor{width:min(100%,760px)}.scene-editor textarea{border:1px solid var(--app-border);resize:vertical;width:100%;font:inherit;border-radius:8px;padding:10px}.scene-device-list{gap:12px;display:grid}.scene-device-card{border:1px solid var(--app-border);border-radius:12px;gap:10px;padding:14px;display:grid}.scene-device-card.is-disabled{background:var(--app-surface-raised)}.scene-device-toggle{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px!important;display:flex!important}.scene-device-toggle input,.scene-action-enabled input{width:18px;height:18px}.scene-device-toggle span{gap:2px;display:grid}.scene-device-toggle small{color:var(--app-text-muted);font-weight:400}.scene-action-row{background:var(--app-surface-raised);border-radius:10px;grid-template-columns:minmax(130px,.7fr) minmax(180px,1fr);gap:10px;padding:12px;display:grid}.scene-action-row>label:not(.scene-action-enabled),.scene-action-row>.secondary-button{grid-column:1/-1}.scene-action-enabled{grid-template-columns:auto 1fr;align-items:center;gap:7px!important;display:flex!important}.scene-action-row .secondary-button{justify-self:start}.scene-editor .schedule-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.scene-editor .schedule-confirm-actions button{min-width:130px}.scene-action-order{grid-column:1/-1;align-items:center;gap:6px;display:flex}.scene-action-order strong{color:var(--app-text-muted);margin-right:auto;font-size:11px}.scene-action-order button{border:1px solid var(--app-border);background:var(--app-surface);cursor:pointer;border-radius:7px;width:30px;height:30px}.scene-action-order button:disabled{cursor:not-allowed;opacity:.4}@media (width<=680px){.scene-action-row{grid-template-columns:1fr}.scene-editor .schedule-confirm-actions{flex-direction:column-reverse}.scene-editor .schedule-confirm-actions button{width:100%}}.schedules-page{max-width:1180px!important}.schedule-calendar-shell{border:1px solid var(--app-border);background:var(--app-surface);border-radius:18px;overflow:hidden;box-shadow:0 12px 34px #1f20240b}.schedule-calendar-toolbar,.schedule-list-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:17px 18px;display:flex}.schedule-month-navigation,.schedule-calendar-actions,.schedule-list-toolbar>div{align-items:center;gap:8px;display:flex}.schedule-month-navigation h2,.schedule-list-toolbar h2{min-width:190px;margin:0;font-size:19px}.schedule-month-navigation>button:not(.schedule-today-button){border:1px solid var(--app-border);width:36px;height:36px;color:var(--app-text-secondary);background:var(--app-surface);cursor:pointer;border-radius:9px;place-items:center;padding:0;font-size:24px;line-height:1;display:grid}.schedule-today-button{border:1px solid var(--app-border);height:36px;color:var(--app-primary);background:var(--app-bg);cursor:pointer;border-radius:9px;padding:0 12px;font-weight:700}.schedule-calendar-actions .primary-button,.schedule-calendar-actions .secondary-button,.schedule-list-toolbar .primary-button,.schedule-list-toolbar .secondary-button{justify-content:center;align-items:center;gap:6px;width:auto;height:38px;padding:0 14px;display:inline-flex}.schedule-calendar-scroll{border-top:1px solid var(--app-border);position:relative;overflow-x:auto}.schedule-calendar-weekdays,.schedule-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;display:grid}.schedule-calendar-weekdays{color:var(--app-text-muted);background:var(--app-surface-raised);text-align:center;font-size:11px;font-weight:800}.schedule-calendar-weekdays span{border-right:1px solid var(--app-border);padding:10px 4px}.schedule-calendar-cell{border-top:1px solid var(--app-border);border-right:1px solid var(--app-border);background:var(--app-surface);min-height:128px;position:relative;overflow:hidden}.schedule-calendar-cell:nth-child(7n){border-right:0}.schedule-calendar-cell.outside{background:var(--app-surface-raised)}.schedule-calendar-day-button{width:100%;color:var(--app-text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;padding:9px;display:flex;position:absolute;inset:0}.schedule-calendar-day-button:focus-visible{z-index:4;outline-offset:-3px;outline:3px solid #006ffd40}.schedule-calendar-day-button:disabled{color:var(--app-text-subtle);cursor:default}.schedule-calendar-date{border-radius:50%;place-items:center;width:27px;height:27px;font-size:12px;font-weight:800;display:grid}.schedule-calendar-cell.today .schedule-calendar-date{color:var(--app-text-inverse);background:var(--app-primary)}.schedule-calendar-badge{color:var(--app-primary-deep);background:var(--app-primary-soft);border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.schedule-calendar-previews{z-index:2;pointer-events:none;align-content:start;gap:4px;display:grid;position:absolute;inset:44px 7px 7px}.schedule-calendar-entry{border:0;border-left:3px solid var(--app-success-strong);width:100%;color:var(--app-success-strong);background:var(--app-success-soft);text-align:left;text-overflow:ellipsis;white-space:nowrap;font:700 9px/1.2 var(--ff), system-ui, sans-serif;cursor:pointer;pointer-events:auto;border-radius:5px;padding:5px 6px;display:block;overflow:hidden}.schedule-calendar-entry time{font-variant-numeric:tabular-nums}.schedule-calendar-entry.success,.schedule-calendar-entry.completed{border-left-color:var(--furniture-metal);color:var(--app-text-muted);background:var(--app-skeleton)}.schedule-calendar-entry.failed,.schedule-calendar-entry.missed,.schedule-calendar-entry.cancelled{border-left-color:var(--app-danger);color:var(--app-danger-deep);background:var(--app-danger-soft)}.schedule-calendar-entry.paused,.schedule-calendar-entry.draft{border-left-color:var(--app-warning);color:var(--app-warning-deep);background:var(--app-warning-soft)}.schedule-calendar-more{color:var(--app-text-muted);pointer-events:none;font-size:10px;font-weight:800}.schedule-calendar-loading,.schedule-calendar-error,.schedule-calendar-empty{min-height:170px;color:var(--app-text-muted);text-align:center;align-content:center;place-items:center;gap:7px;padding:24px;display:grid}.schedule-calendar-error{color:var(--app-danger-deep);background:var(--app-surface)}.schedule-calendar-error span,.schedule-calendar-empty span{font-size:12px}.schedule-calendar-warning{color:var(--app-warning-deep);background:var(--app-warning-soft);margin:0;padding:10px 18px;font-size:11px}.schedule-list-toolbar{margin-bottom:12px;padding:0}.schedule-day-panel{width:min(100%,720px)}.schedule-day-panel header>div,.schedule-detail header>div{gap:4px;display:grid}.schedule-day-panel header small{color:var(--app-text-muted)}.schedule-day-entries{gap:7px;display:grid}.schedule-day-entry{border:1px solid var(--app-border);color:var(--app-text);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.schedule-day-entry:hover,.schedule-day-entry:focus-visible{border-color:var(--app-primary-border);background:var(--app-surface-raised)}.schedule-day-entry time{color:var(--app-primary);font-size:13px;font-weight:800}.schedule-day-entry>span:nth-child(2){gap:3px;min-width:0;display:grid}.schedule-day-entry small{color:var(--app-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.schedule-day-empty{color:var(--app-text-muted);text-align:center;margin:8px 0}.schedule-detail{width:min(100%,720px)}.schedule-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.schedule-detail-summary>div{background:var(--app-surface-raised);border-radius:10px;gap:4px;padding:11px;display:grid}.schedule-detail-summary small{color:var(--app-text-muted);font-size:10px}.schedule-detail-summary strong{overflow-wrap:anywhere;font-size:12px}.schedule-detail h3{margin:6px 0 0;font-size:14px}.schedule-detail-actions{border-bottom:1px solid var(--app-border);justify-content:flex-start;padding-bottom:5px}.schedule-occurrence-result{color:var(--app-success-strong);background:var(--app-success-soft);border-radius:10px;gap:4px;padding:11px;font-size:11px;display:grid}.schedule-occurrence-result.failed,.schedule-occurrence-result.partial_failed,.schedule-occurrence-result.missed{color:var(--app-danger-deep);background:var(--app-danger-soft)}.schedule-occurrence-result.projected{color:var(--app-text-muted);background:var(--app-surface-hover)}.schedule-confirm-overlay{z-index:130}.schedule-confirm{width:min(100%,450px)}.schedule-confirm>p{color:var(--app-text-muted);margin:0;font-size:12px;line-height:1.6}.schedule-confirm-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.schedule-confirm-actions .secondary-button,.schedule-confirm-actions .primary-button{height:42px}@media (width<=760px){.schedule-calendar-toolbar,.schedule-list-toolbar{flex-direction:column;align-items:stretch}.schedule-month-navigation{grid-template-columns:36px minmax(0,1fr) 36px auto;display:grid}.schedule-month-navigation h2{text-align:center;min-width:0}.schedule-calendar-actions,.schedule-list-toolbar>div{justify-content:flex-end}.schedule-day-entry{grid-template-columns:44px minmax(0,1fr)}.schedule-day-entry>.schedule-status{grid-column:2;justify-self:start}.schedule-detail-summary{grid-template-columns:1fr}}@media (width<=520px){.schedule-calendar-weekdays,.schedule-calendar-grid{min-width:0}.schedule-calendar-weekdays{font-size:8px}.schedule-calendar-cell{min-height:88px}.schedule-calendar-day-button{padding:5px}.schedule-calendar-date{width:23px;height:23px;font-size:10px}.schedule-calendar-badge{text-overflow:ellipsis;white-space:nowrap;max-width:39px;padding:3px 4px;font-size:7px;overflow:hidden}.schedule-calendar-previews{top:34px;left:3px;right:3px}.schedule-calendar-entry{padding:4px 3px;font-size:7px}.schedule-calendar-previews .schedule-calendar-entry:nth-child(n+2){display:none}.schedule-confirm-actions{grid-template-columns:1fr}}.energy-hero{justify-content:space-between;align-items:center;gap:24px;padding:4px 2px 2px;display:flex}.energy-hero h1{font:800 32px/40px var(--ff), system-ui, sans-serif;letter-spacing:-.2px;margin:0}.energy-hero p{max-width:650px;color:var(--c-nd-4);margin:0;font-size:13px;line-height:1.6}.energy-kicker{color:var(--c-hl-1);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-size:11px;font-weight:800;display:inline-flex}.energy-range-summary{border:1px solid var(--app-border);color:var(--app-text-strong);background:var(--app-surface-translucent);border-radius:12px;align-items:center;gap:9px;padding:8px 12px;display:inline-flex;box-shadow:0 2px 8px #1f293709}.energy-range-summary>div{gap:2px;min-width:0;display:grid}.energy-range-summary small{color:var(--app-text-muted);font-size:10px;font-weight:700}.energy-range-summary strong{white-space:nowrap;font-size:12px;line-height:16px}.energy-range-icon{width:28px;height:28px;color:var(--app-primary);background:var(--app-surface-hover);border-radius:8px;place-items:center;display:grid}.energy-filters{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;gap:10px;padding:16px;display:grid;box-shadow:0 5px 20px #1f202409}.energy-filter-row{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.energy-period-tabs{background:var(--app-surface-sunken);scrollbar-width:thin;border-radius:11px;flex:0 auto;gap:4px;min-width:0;padding:3px;display:flex;overflow-x:auto}.energy-period-tabs button{height:36px;color:var(--app-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;padding:0 13px;font-size:12px;font-weight:700;transition:color .18s,border-color .18s,background .18s,box-shadow .18s}.energy-period-tabs button:hover{color:var(--app-primary-deep);background:var(--app-surface)}.energy-period-tabs button.selected{border-color:var(--app-primary-border);color:var(--app-primary-deep);background:var(--app-surface);box-shadow:0 1px 3px #2563eb1f}.energy-custom-dates,.energy-filter-actions{align-items:center;gap:8px;min-width:0;display:flex}.energy-custom-dates label,.energy-room-filter{color:var(--app-text-muted);white-space:nowrap;align-items:center;gap:7px;font-size:11px;font-weight:700;display:inline-flex}.energy-custom-dates input,.energy-room-filter select{border:1px solid var(--app-border);min-width:0;height:36px;color:var(--app-text);background:var(--app-surface);font:500 12px/1 var(--ff), system-ui, sans-serif;border-radius:8px;padding:0 10px;transition:border-color .18s,box-shadow .18s,background .18s}.energy-custom-dates input{width:136px}.energy-filter-actions{flex:none;margin-left:auto}.energy-room-filter select{width:186px}.energy-group-label{height:36px;color:var(--app-text-muted);background:var(--app-surface-sunken);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.energy-refresh-button{border:1px solid var(--app-primary-border);min-width:105px;height:36px;color:var(--app-primary-deep);background:var(--app-surface-raised);white-space:nowrap;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:800;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.energy-refresh-button:hover{border-color:var(--app-primary-border);background:var(--app-primary-soft)}.energy-refresh-icon.spinning{animation:.8s linear infinite energy-refresh-spin}.energy-period-tabs button:focus-visible,.energy-custom-dates input:focus-visible,.energy-room-filter select:focus-visible,.energy-refresh-button:focus-visible{outline:2px solid var(--app-primary);outline-offset:2px}.energy-period-tabs button:disabled,.energy-custom-dates input:disabled,.energy-room-filter select:disabled,.energy-refresh-button:disabled{opacity:.58;cursor:not-allowed}.energy-filter-error,.energy-room-note{align-items:center;gap:6px;margin:-4px 0 0;font-size:11px;line-height:1.5;display:flex}.energy-filter-error{color:var(--app-danger-deep);font-weight:700}.energy-room-note{color:var(--app-text-muted)}.energy-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.energy-kpi-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:15px;gap:12px;min-width:0;padding:18px;display:flex}.energy-kpi-card.primary{border-color:var(--app-primary-border);background:linear-gradient(145deg, var(--app-surface) 20%, var(--app-bg) 100%)}.energy-kpi-icon{width:38px;height:38px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:11px;flex:0 0 38px;place-items:center;display:grid}.energy-kpi-card>div{flex-direction:column;gap:5px;min-width:0;display:flex}.energy-kpi-card small{color:var(--app-text-muted);font-size:10px;font-weight:700}.energy-kpi-card strong{overflow-wrap:anywhere;font-size:clamp(18px,2vw,23px);line-height:1.2}.energy-kpi-card>div>span{color:var(--app-text-subtle);font-size:9px;line-height:1.4}.energy-comparison{align-items:center;gap:3px;font-weight:700;display:inline-flex}.energy-comparison.decreased{color:var(--app-success-strong)}.energy-comparison.increased{color:var(--app-danger-deep)}.energy-comparison.neutral{color:var(--app-text-muted)}.energy-analytics-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,.7fr);align-items:stretch;gap:16px;display:grid}.energy-panel{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;min-width:0;padding:20px}.energy-panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.energy-panel-heading h2,.energy-panel-heading h3{margin:0 0 4px;font-size:15px}.energy-panel-heading p{color:var(--app-text-muted);margin:0;font-size:10px;line-height:1.5}.energy-chart-total{color:var(--app-text-muted);white-space:nowrap;font-size:10px;font-weight:700}.energy-chart-wrap{width:100%;min-height:260px;position:relative}.energy-chart-wrap svg{width:100%;height:auto;min-height:220px;display:block;overflow:visible}.energy-chart-grid{stroke:var(--app-border);stroke-width:1px;stroke-dasharray:4 5}.energy-chart-line{fill:none;stroke:var(--chart-series-1);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.energy-chart-point{fill:var(--app-surface);stroke:var(--chart-series-1);stroke-width:2.5px;cursor:pointer;transition:r .16s,fill .16s}.energy-chart-point:hover,.energy-chart-point:focus,.energy-chart-point.active{fill:var(--chart-series-1);outline:none}.energy-chart-y-label,.energy-chart-x-label{fill:var(--app-text-subtle);font:500 9px var(--ff), system-ui, sans-serif}.energy-chart-tooltip{z-index:2;border:1px solid var(--app-border-strong);background:var(--app-surface);pointer-events:none;border-radius:9px;gap:2px;min-width:128px;padding:9px 11px;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 11px));box-shadow:0 8px 24px #1f365424}.energy-chart-tooltip time,.energy-chart-tooltip span{color:var(--app-text-muted);font-size:9px}.energy-chart-tooltip strong{font-size:12px}.energy-breakdown-list{gap:14px;display:grid}.energy-breakdown-row{justify-content:space-between;align-items:center;gap:12px;font-size:10px;display:flex}.energy-breakdown-row>span{min-width:0;color:var(--app-text-secondary);align-items:center;gap:7px;font-weight:700;display:flex}.energy-breakdown-row strong{font-size:10px}.energy-breakdown-dot{background:var(--app-primary-light);border-radius:50%;flex:0 0 8px;width:8px;height:8px}.energy-breakdown-track{background:var(--app-skeleton);border-radius:99px;height:7px;margin-top:7px;display:block;overflow:hidden}.energy-breakdown-track>span{border-radius:inherit;background:var(--app-primary-light);height:100%;display:block}.energy-breakdown-item>small{color:var(--app-text-subtle);margin-top:5px;font-size:9px;display:block}.energy-breakdown-dot.color-1,.energy-breakdown-track>.color-1{background:var(--app-success)}.energy-breakdown-dot.color-2,.energy-breakdown-track>.color-2{background:var(--app-accent-violet)}.energy-breakdown-dot.color-3,.energy-breakdown-track>.color-3{background:var(--app-warning-deep)}.energy-breakdown-dot.color-4,.energy-breakdown-track>.color-4{background:var(--app-danger)}.energy-breakdown-dot.color-5,.energy-breakdown-track>.color-5{background:var(--furniture-metal)}.energy-ranking-list{gap:8px;display:grid}.energy-ranking-row{border:1px solid var(--app-border);width:100%;min-height:64px;color:var(--app-text);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:26px 36px minmax(0,1fr) minmax(118px,auto) 18px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.energy-ranking-row:hover{border-color:var(--app-primary-border);background:var(--app-bg);box-shadow:0 4px 14px #006ffd0d}.energy-ranking-rank{color:var(--app-text-subtle);text-align:center;font-size:10px;font-weight:800}.energy-ranking-device-icon{width:34px;height:34px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:9px;place-items:center;display:grid}.energy-ranking-copy{gap:2px;min-width:0;display:grid}.energy-ranking-copy>strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.energy-ranking-copy>small,.energy-ranking-value small{color:var(--app-text-subtle);font-size:9px}.energy-ranking-track{background:var(--app-border);border-radius:99px;width:min(100%,340px);height:4px;margin-top:4px;display:block;overflow:hidden}.energy-ranking-track i{border-radius:inherit;background:linear-gradient(90deg, var(--app-primary), var(--app-primary-light));height:100%;display:block}.energy-ranking-value{text-align:right;gap:2px;display:grid}.energy-ranking-value strong{font-size:11px}.energy-loading,.energy-error-state,.energy-empty-state,.energy-access-state{border:1px solid var(--app-border);background:var(--app-surface);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:260px;padding:34px;display:flex}.energy-loading>span:last-child,.energy-error-state p,.energy-empty-state p,.energy-access-state p{max-width:550px;color:var(--app-text-muted);margin:0;font-size:11px;line-height:1.6}.energy-error-state h2,.energy-empty-state h2,.energy-access-state h1{margin:3px 0 0;font-size:18px}.energy-error-state>svg{color:var(--app-danger-strong)}.energy-error-state.permission>svg,.energy-access-state>span{color:var(--app-warning-deep)}.energy-error-state .secondary-button{width:auto;height:38px;margin-top:7px;padding:0 16px}.energy-empty-state>span,.energy-access-state>span{background:var(--app-primary-soft);border-radius:15px;place-items:center;width:54px;height:54px;display:grid}.energy-section-empty{min-height:210px;color:var(--app-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.energy-section-empty.compact{min-height:150px}.energy-section-empty strong{color:var(--app-text-secondary);font-size:12px}.energy-section-empty span{max-width:310px;font-size:10px;line-height:1.5}.energy-refresh-indicator{z-index:50;border:1px solid var(--app-border-strong);color:var(--app-text-muted);background:var(--app-surface);border-radius:10px;align-items:center;gap:7px;padding:9px 12px;font-size:10px;font-weight:700;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #1f365421}.device-energy-overlay{z-index:120;background:#161d276b;justify-content:flex-end;display:flex;position:fixed;inset:0}.device-energy-drawer{background:var(--app-surface);width:min(100%,520px);height:100%;padding:22px;animation:.22s ease-out energy-drawer-in;overflow-y:auto;box-shadow:-12px 0 36px #161d2729}.device-energy-drawer>header{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;gap:16px;padding-bottom:18px;display:flex}.device-energy-heading{align-items:center;gap:11px;min-width:0;display:flex}.device-energy-heading>span{width:42px;height:42px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:12px;flex:0 0 42px;place-items:center;display:grid}.device-energy-heading small{color:var(--app-text-muted);font-size:9px}.device-energy-heading h2{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:17px;overflow:hidden}.device-energy-drawer>header>button{border:1px solid var(--app-border);width:38px;height:38px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:9px;flex:0 0 38px;place-items:center;display:grid}.device-energy-drawer>header>button:hover{color:var(--app-primary);border-color:var(--app-primary-border);background:var(--app-bg)}.energy-drawer-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:300px;display:flex}.energy-drawer-state>span{max-width:360px;color:var(--app-text-muted);font-size:11px;line-height:1.5}.energy-drawer-state.error>svg{color:var(--app-danger-strong)}.energy-drawer-state .secondary-button{width:auto;height:38px;padding:0 16px}.device-energy-content{gap:24px;padding-top:20px;display:grid}.device-energy-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.device-energy-kpis>div{background:var(--app-surface-raised);border-radius:11px;gap:5px;min-width:0;padding:13px;display:grid}.device-energy-kpis small{color:var(--app-text-muted);font-size:9px}.device-energy-kpis strong{overflow-wrap:anywhere;font-size:12px}.device-energy-chart svg{background:var(--app-surface-raised);border-radius:10px;width:100%;height:auto;display:block}.device-energy-chart line{stroke:var(--app-border)}.device-energy-chart path{fill:none;stroke:var(--app-primary-light);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.device-energy-chart circle{fill:var(--app-text-inverse);stroke:var(--app-primary-light);stroke-width:2px}.device-energy-chart circle:focus{fill:var(--app-primary-light);outline:none}.device-energy-chart>div{color:var(--app-text-subtle);justify-content:space-between;margin-top:6px;font-size:8px;display:flex}.energy-page :is(button,input,select,[tabindex]):focus-visible,.device-energy-overlay :is(button,[tabindex]):focus-visible{outline-offset:2px;outline:3px solid #006ffd47}@media (width<=1023px){.energy-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.energy-analytics-grid{grid-template-columns:1fr}.energy-breakdown-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=899px){.energy-filter-row{flex-wrap:wrap}.energy-period-tabs{flex:100%}.energy-filter-actions{margin-left:0}}@media (width<=767px){.energy-hero{flex-direction:column;align-items:flex-start}.energy-range-summary{text-align:left}.energy-filter-row{align-items:stretch}.energy-custom-dates,.energy-filter-actions{flex-wrap:wrap;width:100%}.energy-custom-dates label{flex:1}.energy-room-filter{min-width:min(100%,220px)}.energy-ranking-row{grid-template-columns:24px 34px minmax(0,1fr) 16px}.energy-ranking-value{text-align:left;grid-column:3}.energy-ranking-row>svg{grid-area:1/4/span 2}}@media (width<=520px){.energy-filters,.energy-panel{border-radius:14px;padding:15px}.energy-kpi-grid{grid-template-columns:1fr;gap:9px}.energy-kpi-card{padding:15px}.energy-custom-dates{flex-direction:column}.energy-custom-dates label,.energy-room-filter,.energy-refresh-button{width:100%}.energy-custom-dates input,.energy-room-filter select{flex:1;width:auto}.energy-group-label{flex:1;justify-content:center}.energy-breakdown-list{grid-template-columns:1fr}.energy-panel-heading{flex-direction:column;gap:6px}.energy-chart-wrap{min-height:210px}.energy-chart-wrap svg{min-width:0;min-height:190px}.energy-chart-tooltip{display:none}.energy-ranking-row{padding:10px 8px}.energy-ranking-rank{display:none}.energy-ranking-row{grid-template-columns:34px minmax(0,1fr) 16px}.energy-ranking-value{grid-column:2}.energy-ranking-row>svg{grid-column:3}.device-energy-drawer{padding:16px}.device-energy-kpis{grid-template-columns:1fr}.energy-refresh-indicator{bottom:12px;right:12px}}@media (prefers-reduced-motion:reduce){.energy-page *,.device-energy-overlay *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.alerts-page{gap:16px;max-width:1120px;margin:0 auto;padding-bottom:36px;display:grid}.alerts-hero,.alerts-inbox{border:1px solid var(--app-border);background:var(--app-surface);border-radius:20px;padding:20px}.alerts-kicker{color:var(--app-primary);text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:800;display:inline-flex}.alerts-hero h1{margin:8px 0}.alerts-hero p,.alerts-inbox-heading p{color:var(--app-text-muted);margin:0;font-size:12px}.alerts-inbox-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.alerts-heading-actions{align-items:center;gap:8px;display:flex}.alerts-tabs{background:var(--app-surface-hover);border-radius:10px;gap:4px;padding:4px;display:flex}.alerts-tabs button{cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:10px;font-weight:800}.alerts-tabs button.active{color:var(--app-primary);background:var(--app-surface)}.alerts-clear-history-button{border:1px solid var(--app-danger-soft);min-height:32px;color:var(--app-danger-strong);background:var(--app-surface);cursor:pointer;border-radius:9px;padding:7px 10px;font-size:10px;font-weight:800}.alerts-clear-history-button:hover:not(:disabled){border-color:var(--app-danger-soft);background:var(--app-surface-sunken)}.alerts-clear-history-button:disabled{color:var(--app-text-subtle);border-color:var(--app-border);background:var(--app-surface-sunken);cursor:not-allowed}.alerts-confirm-overlay{z-index:160;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#141f306b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.alerts-confirm-modal{border:1px solid var(--app-border);width:min(100%,430px);color:var(--app-text-strong);background:var(--app-surface);border-radius:17px;grid-template-columns:42px minmax(0,1fr);gap:13px;padding:21px;display:grid;box-shadow:0 22px 60px #141f3040}.alerts-confirm-icon{width:42px;height:42px;color:var(--app-danger-strong);background:var(--app-surface-sunken);border-radius:12px;place-items:center;display:grid}.alerts-confirm-modal h2{margin:1px 0 5px;font-size:17px;line-height:1.3}.alerts-confirm-modal p{color:var(--app-text-muted);margin:0;font-size:12px;line-height:1.55}.alerts-confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:3px;display:flex}.alerts-confirm-actions button{cursor:pointer;border-radius:9px;min-height:36px;padding:0 13px;font-size:11px;font-weight:800}.alerts-confirm-delete{border:1px solid var(--app-danger);color:var(--app-text-inverse);background:var(--app-danger)}.alerts-confirm-delete:hover:not(:disabled){border-color:var(--app-danger-deep);background:var(--app-danger-deep)}.alerts-confirm-delete:disabled{cursor:not-allowed;opacity:.65}.alerts-list{gap:10px;margin-top:16px;display:grid}.alerts-card{border:1px solid var(--app-border);border-left:4px solid var(--app-warning);border-radius:14px;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;padding:15px;display:grid}.alerts-card.critical{border-left-color:var(--app-danger);background:var(--app-surface)}.alerts-card-icon{width:40px;height:40px;color:var(--app-danger-strong);background:var(--app-danger-soft);border-radius:11px;place-items:center;display:grid}.alerts-card-meta{color:var(--app-text-muted);text-transform:uppercase;gap:8px;font-size:9px;display:flex}.alerts-card h3{margin:5px 0;font-size:14px}.alerts-card p{color:var(--app-text-muted);margin:0 0 6px;font-size:11px}.alerts-card small{color:var(--app-text-muted)}.alerts-card-actions{align-self:center;align-items:center;gap:8px;display:flex}.alerts-remediate-button{border:1px solid var(--app-border-strong);min-height:32px;color:var(--app-primary-deep);background:var(--app-surface);cursor:pointer;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:750}.alerts-remediate-button:hover:not(:disabled){border-color:var(--app-primary-border);background:var(--app-bg)}.alerts-remediate-button:disabled{color:var(--app-text-subtle);background:var(--app-surface-sunken);cursor:not-allowed}.alerts-live-label{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:999px;align-self:center;padding:7px 10px;font-size:9px;font-weight:800}.alerts-empty{text-align:center;justify-items:center;gap:6px;padding:28px;display:grid}.alerts-error{color:var(--app-danger-strong);margin-top:12px}.alerts-page{gap:20px}.alerts-hero{border:1px solid var(--app-border);background:linear-gradient(118deg,var(--app-surface) 0%,var(--app-bg) 100%);justify-content:space-between;align-items:center;gap:24px;padding:26px 28px;display:flex;overflow:hidden;box-shadow:0 10px 28px #2850820f}.alerts-hero h1{color:var(--app-text-strong);letter-spacing:-.6px;margin:7px 0 6px;font-size:30px;line-height:1.18}.alerts-hero p{max-width:570px;color:var(--app-text-muted);font-size:12px;line-height:1.55}.alerts-kicker{color:var(--app-primary-deep);letter-spacing:.08em}.alerts-hero-status{border:1px solid var(--furniture-surface);background:var(--app-success-soft);border-radius:14px;align-items:center;gap:10px;min-width:185px;padding:11px 13px;display:flex}.alerts-hero-status>span{width:34px;height:34px;color:var(--app-success-strong);background:var(--app-success-soft);border-radius:10px;place-items:center;display:grid}.alerts-hero-status.needs-attention{border-color:var(--app-warning-soft);background:var(--app-warning-soft)}.alerts-hero-status.needs-attention>span{color:var(--app-warning-deep);background:var(--app-warning-soft)}.alerts-hero-status div{gap:2px;display:grid}.alerts-hero-status strong{color:var(--app-text-secondary);font-size:12px;line-height:1.3}.alerts-hero-status small{color:var(--app-text-muted);font-size:10px}.alerts-inbox{border-color:var(--app-border);padding:23px;box-shadow:0 8px 22px #243e640a}.alerts-inbox-heading{border-bottom:1px solid var(--app-border);padding-bottom:16px}.alerts-inbox-heading h2{color:var(--app-text-strong);margin:0 0 4px;font-size:17px;line-height:1.3}.alerts-inbox-heading p{color:var(--app-text-subtle);font-size:11px}.alerts-heading-actions{gap:10px}.alerts-tabs{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:11px;padding:3px}.alerts-tabs button{min-height:32px;color:var(--app-text-muted);border-radius:8px;padding:7px 11px;font-size:10px;transition:color .18s,background .18s,box-shadow .18s}.alerts-tabs button.active{color:var(--app-primary-deep);background:var(--app-surface);box-shadow:0 2px 7px #2b4e7d1a}.alerts-clear-history-button{border-radius:10px;align-items:center;gap:5px;min-height:34px;display:inline-flex}.alerts-list{gap:11px;margin-top:18px}.alerts-card{border:1px solid var(--app-border);background:var(--app-surface);border-left:0;border-radius:15px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 17px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden;box-shadow:0 3px 11px #162c4c06}.alerts-card:before{content:"";background:var(--app-warning);width:4px;position:absolute;inset:0 auto 0 0}.alerts-card.critical:before{background:var(--app-danger)}.alerts-card.info:before{background:var(--app-primary-light)}.alerts-card:hover{border-color:var(--app-border-strong);transform:translateY(-1px);box-shadow:0 10px 24px #20416914}.alerts-card.resolved{opacity:.78;background:var(--app-surface)}.alerts-card.resolved:before{background:var(--furniture-metal-soft)}.alerts-card-icon{width:44px;height:44px;color:var(--app-warning-deep);background:var(--app-warning-soft)}.alerts-card.critical .alerts-card-icon{color:var(--app-danger-strong);background:var(--app-surface-sunken)}.alerts-card.info .alerts-card-icon{color:var(--app-primary-deep);background:var(--app-primary-soft)}.alerts-card.resolved .alerts-card-icon{color:var(--app-text-muted);background:var(--app-skeleton)}.alerts-card-copy{min-width:0}.alerts-card-meta{color:var(--app-text-subtle);text-transform:none;align-items:center;gap:8px;font-size:10px}.alerts-severity{color:var(--app-warning-deep);background:var(--app-warning-soft);letter-spacing:.02em;border-radius:999px;align-items:center;padding:3px 7px;font-size:9px;font-weight:800;display:inline-flex}.alerts-severity.critical{color:var(--app-danger-strong);background:var(--app-surface-sunken)}.alerts-severity.info{color:var(--app-primary-deep);background:var(--app-primary-soft)}.alerts-card h3{color:var(--app-text-strong);margin:6px 0 4px;font-size:14px;line-height:1.35}.alerts-card p{color:var(--app-text-muted);margin:0;font-size:11px;line-height:1.5}.alerts-card small{color:var(--app-text-subtle);align-items:center;gap:4px;margin-top:7px;font-size:10px;display:inline-flex}.alerts-remediate-button{border-color:var(--app-primary-border);min-height:34px;color:var(--app-primary-deep);background:var(--app-bg)}.alerts-remediate-button:hover:not(:disabled){border-color:var(--app-primary-border);color:var(--app-primary-deep);background:var(--app-primary-soft)}.alerts-live-label{color:var(--app-warning-deep);background:var(--app-warning-soft);align-items:center;gap:5px;display:inline-flex}.alerts-live-label i{background:currentColor;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #a05f001f}.alerts-empty{border:1px dashed var(--app-border-strong);min-height:170px;color:var(--app-text-muted);background:var(--app-surface-raised);border-radius:15px;place-content:center;margin-top:18px}.alerts-empty strong{color:var(--app-text-secondary)}.alerts-error{background:var(--app-surface-sunken);border-radius:10px;align-items:center;gap:7px;padding:10px 12px;display:flex}.alerts-history-actions{align-items:center;gap:7px;display:flex}.alerts-select-all-button{border:1px solid var(--app-border);min-height:34px;color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:10px;padding:7px 10px;font-size:10px;font-weight:800}.alerts-select-all-button:hover:not(:disabled){border-color:var(--app-primary-border);color:var(--app-primary-deep);background:var(--app-bg)}.alerts-select-all-button:disabled{opacity:.55;cursor:not-allowed}.alerts-clear-history-button.all{color:var(--app-danger-deep);border-color:var(--app-danger-soft);background:var(--app-surface)}.alerts-clear-history-button.all:hover:not(:disabled){border-color:var(--app-danger-soft);background:var(--app-surface-sunken)}.alerts-card.selected{opacity:1;border-color:var(--app-primary-border);background:var(--app-bg);box-shadow:0 0 0 3px #4c8eea1c}.alerts-select-card{cursor:pointer;place-items:center;width:22px;height:22px;display:grid}.alerts-select-card input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.alerts-select-card span{border:1.5px solid var(--app-border-strong);background:var(--app-surface);border-radius:6px;place-items:center;width:18px;height:18px;transition:border-color .18s,background .18s;display:grid}.alerts-select-card input:checked+span{border-color:var(--app-primary-deep);background:var(--app-primary-deep)}.alerts-select-card input:checked+span:after{border:solid var(--app-surface);content:"";border-width:0 0 2px 2px;width:8px;height:4px;margin-top:-2px;transform:rotate(-45deg)}.alerts-select-card input:focus-visible+span{outline-offset:2px;outline:3px solid #2670d838}.alerts-selection-cancel{min-height:34px;color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;padding:7px 9px;font-size:10px;font-weight:800}.alerts-selection-cancel:hover:not(:disabled){color:var(--app-text-secondary);background:var(--app-surface-sunken)}.alerts-selection-cancel:disabled{opacity:.55;cursor:not-allowed}.alert-bell{position:relative}.alert-badge{border:2px solid var(--app-surface);min-width:17px;color:var(--app-text-inverse);background:var(--app-danger);text-align:center;border-radius:999px;padding:2px 5px;font-size:9px;font-weight:800;line-height:13px;position:absolute;top:-5px;right:-5px}.alert-popover{z-index:50;border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;width:340px;padding:16px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 18px 48px #1f2a442e}.alert-popover-heading{align-items:center;gap:11px;display:flex}.alert-popover-icon{width:38px;height:38px;color:var(--app-danger-strong);background:var(--app-danger-soft);border-radius:11px;place-items:center;display:grid}.alert-popover-heading strong{color:var(--app-text-strong);font-size:15px;line-height:1.3;display:block}.alert-popover-heading small,.alert-mini-card small{color:var(--app-text-muted);display:block}.alert-popover-heading small{margin-top:2px;font-size:11px}.alert-popover-list{gap:8px;margin:14px 0;display:grid}.alert-mini-card{border:1px solid var(--app-border);border-left:3px solid var(--app-warning);background:var(--app-surface-raised);border-radius:11px;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;display:grid}.alert-mini-card.critical{border-left-color:var(--app-danger);background:var(--app-surface)}.alert-mini-icon{width:31px;height:31px;color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:9px;place-items:center;display:grid}.alert-mini-card.critical .alert-mini-icon{color:var(--app-danger-strong);background:var(--app-danger-soft)}.alert-mini-card div{min-width:0}.alert-mini-card strong{color:var(--app-text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;display:block;overflow:hidden}.alert-mini-card small{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:10px;line-height:1.4;display:-webkit-box;overflow:hidden}.alert-empty{color:var(--app-success-strong);background:var(--app-success-soft);text-align:center;border-radius:10px;margin:14px 0;padding:13px;font-size:11px}.alert-view-all{width:100%;min-height:40px;color:var(--app-text-inverse);background:var(--app-primary);cursor:pointer;font:inherit;border:0;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:800;transition:background .18s,transform .18s}.alert-view-all:hover{background:var(--app-primary-strong)}.alert-view-all:active{transform:translateY(1px)}.confirmation-card{width:min(100%,600px)}.confirmation-card .auth-form{max-width:400px;margin:0 auto}.confirmation-card .feedback{margin:-4px 0 0}.assistant-page{max-width:1180px!important}.assistant-hero{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.assistant-hero h1,.assistant-confirmation-card h1,.assistant-result-card h1{font:800 30px/36px var(--ff), system-ui, sans-serif;margin:0 0 8px}.assistant-hero p:not(.profile-eyebrow),.assistant-confirmation-description,.assistant-result-card p:not(.profile-eyebrow){max-width:620px;color:var(--app-text-muted);font:400 13px/20px var(--ff), system-ui, sans-serif;margin:0}.assistant-hero-icon,.assistant-confirmation-icon{width:58px;height:58px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:16px;flex:0 0 58px;place-items:center;display:grid}.assistant-command-card,.assistant-plan-card,.assistant-confirmation-card,.assistant-result-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:16px;padding:24px}.assistant-command-label,.assistant-plan-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.assistant-command-label strong{font:700 14px/20px var(--ff), system-ui, sans-serif}.assistant-command-label span,.assistant-status{color:var(--app-primary);background:var(--app-primary-soft);font:700 10px/14px var(--ff), system-ui, sans-serif;text-transform:uppercase;border-radius:999px;padding:5px 9px}.assistant-input-wrap{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:13px;padding:12px}.assistant-input-wrap:focus-within{border-color:var(--c-hl-3);box-shadow:0 0 0 3px var(--app-primary-soft)}.assistant-input-wrap textarea{resize:vertical;width:100%;color:var(--app-text);font:400 13px/20px var(--ff), system-ui, sans-serif;background:0 0;border:0;outline:0;display:block}.assistant-input-wrap textarea::placeholder{color:var(--app-text-subtle)}.assistant-input-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.assistant-mic-button,.assistant-send-button,.assistant-confirm-link{justify-content:center;align-items:center;gap:7px;display:inline-flex}.assistant-mic-button{color:var(--app-text-muted);cursor:pointer;font:600 11px/16px var(--ff), system-ui, sans-serif;background:0 0;border:0;padding:8px 0}.assistant-mic-button:hover{color:var(--app-primary)}.assistant-send-button{width:auto;height:38px;padding:0 15px}.assistant-examples{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.assistant-examples>span{color:var(--app-text-subtle);font:600 10px/14px var(--ff), system-ui, sans-serif;margin-right:3px}.assistant-examples button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;font:400 10px/14px var(--ff), system-ui, sans-serif;border-radius:999px;padding:6px 9px}.assistant-examples button:hover{border-color:var(--app-primary-border);color:var(--app-primary);background:var(--app-surface-raised)}.assistant-feedback{color:var(--app-primary);background:var(--app-primary-soft);font:400 12px/17px var(--ff), system-ui, sans-serif;border-radius:10px;align-items:flex-start;gap:8px;margin-top:14px;padding:12px;display:flex}.assistant-feedback.error{color:var(--app-danger);background:var(--app-danger-soft)}.assistant-plan-card{margin-top:20px}.assistant-plan-heading h2{font:800 18px/24px var(--ff), system-ui, sans-serif;margin:0}.assistant-status.needs_clarification,.assistant-status.waiting_for_confirmation{color:var(--app-warning-deep);background:var(--app-warning-soft)}.assistant-status.succeeded{color:var(--app-success-strong);background:var(--app-success-soft)}.assistant-step-list{flex-direction:column;gap:9px;margin-top:18px;display:flex}.assistant-step{border:1px solid var(--app-border);border-radius:11px;align-items:center;gap:10px;padding:12px;display:flex}.assistant-step-number{width:24px;height:24px;color:var(--app-primary);background:var(--app-primary-soft);font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:50%;flex:0 0 24px;place-items:center;display:grid}.assistant-step div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.assistant-step strong{color:var(--app-text);font:700 12px/16px var(--ff), system-ui, sans-serif;text-transform:capitalize}.assistant-step small{color:var(--app-text-muted);font:400 10px/14px var(--ff), system-ui, sans-serif}.assistant-step>svg{color:var(--app-success)}.assistant-confirm-link{width:auto;height:38px;margin-top:16px;padding:0 14px}.assistant-confirmation-page{max-width:620px!important}.assistant-confirmation-page>.back-button{margin-bottom:18px}.assistant-confirmation-card{box-shadow:0 12px 32px #1f20240a}.assistant-confirmation-icon{color:var(--app-warning-deep);background:var(--app-warning-soft);margin-bottom:18px}.assistant-risk-banner{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:11px;align-items:flex-start;gap:10px;margin-top:22px;padding:13px;display:flex}.assistant-risk-banner div{flex-direction:column;gap:3px;display:flex}.assistant-risk-banner strong{font:700 12px/16px var(--ff), system-ui, sans-serif}.assistant-risk-banner small{font:400 10px/14px var(--ff), system-ui, sans-serif}.assistant-confirmation-details{gap:10px;margin-top:16px;display:grid}.assistant-confirmation-details>div{background:var(--app-surface-raised);border-radius:10px;flex-direction:column;gap:3px;padding:13px;display:flex}.assistant-confirmation-details span,.assistant-confirmation-details small{color:var(--app-text-muted);font:400 10px/14px var(--ff), system-ui, sans-serif}.assistant-confirmation-details strong{color:var(--app-text);font:700 13px/18px var(--ff), system-ui, sans-serif;text-transform:capitalize}.assistant-confirmation-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.assistant-confirmation-actions button{justify-content:center;align-items:center;gap:7px;display:inline-flex}.assistant-result-card{text-align:center}.assistant-result-icon{width:58px;height:58px;color:var(--app-text-inverse);background:var(--app-success);border-radius:50%;place-items:center;margin:0 auto 18px;display:grid}.assistant-result-icon.cancelled{background:var(--app-danger)}.assistant-result-card .primary-button{width:auto;margin-top:24px;padding:0 18px}@media (width<=700px){.assistant-page{padding-left:0;padding-right:0}.assistant-hero{align-items:flex-start}.assistant-hero-icon{display:none}.assistant-command-card,.assistant-plan-card,.assistant-confirmation-card,.assistant-result-card{padding:18px}.assistant-confirmation-actions{grid-template-columns:1fr}.assistant-hero h1,.assistant-confirmation-card h1,.assistant-result-card h1{font-size:25px;line-height:31px}}.assistant-panel{background:var(--surface,var(--app-surface));grid-template-rows:auto auto minmax(0,1fr) auto;display:grid}.assistant-panel-messages{scrollbar-width:thin;min-height:0;padding:14px 16px 18px;overflow-y:auto}.assistant-panel-welcome{text-align:center;max-width:300px;margin:10vh auto 24px}.assistant-panel-welcome-icon{margin-inline:auto}.assistant-panel-welcome-copy{gap:6px;display:grid}.assistant-panel-welcome-copy p,.assistant-panel-welcome-copy small{margin:0}.assistant-panel-footer{z-index:2;border-top:1px solid var(--border-subtle,var(--app-border));background:var(--surface,var(--app-surface));padding:10px 14px 14px;position:relative}.smart-chat-composer{border:1px solid var(--border,var(--app-border));background:var(--surface,var(--app-surface));border-radius:16px;gap:8px;padding:10px 10px 8px 12px;transition:border-color .16s,box-shadow .16s;display:grid;box-shadow:0 3px 12px #0000000d}.smart-chat-composer textarea{resize:none;width:100%;min-height:24px;max-height:none;color:inherit;font:inherit;background:0 0;border:0;outline:0;padding:1px 2px;line-height:1.5;display:block;overflow:hidden}.smart-chat-composer-actions,.smart-chat-composer-meta{align-items:center;display:flex}.smart-chat-composer-actions{justify-content:flex-end;gap:10px}.smart-chat-composer-meta{gap:8px}.chat-mic-button,.chat-send-button{cursor:pointer;border:0;justify-content:center;align-items:center;display:inline-flex}.chat-mic-button{min-height:30px;color:var(--text-muted,var(--app-text-muted));background:0 0;border-radius:9px;gap:6px;padding:0 8px}.chat-mic-button:hover:not(:disabled),.chat-mic-button.active{background:var(--surface-subtle,var(--app-surface-sunken));color:var(--text-primary,var(--app-text))}.chat-mic-button span{font-size:11px;font-weight:600}.smart-chat-word-count{font-variant-numeric:tabular-nums;color:var(--text-muted,var(--app-text-subtle));font-size:10px}.smart-chat-composer.near-limit .smart-chat-word-count{color:var(--warning-text,var(--app-warning-deep));font-weight:700}.chat-send-button{background:var(--text-primary,var(--app-media-bg));width:31px;height:31px;color:var(--surface,var(--app-text-inverse));border-radius:10px}.chat-send-button:hover:not(:disabled){transform:translateY(-1px)}.chat-send-button:disabled,.chat-mic-button:disabled{opacity:.38;cursor:not-allowed}.assistant-panel-input-hint{text-align:center;color:var(--text-muted,var(--app-text-subtle));margin-top:6px;font-size:10px;display:block}@media (width<=520px){.assistant-panel-messages{padding-inline:12px}.assistant-panel-footer{padding-inline:10px}}@media (prefers-reduced-motion:reduce){.assistant-thinking-dots i{opacity:.75;animation:none}}.smart-chat-header{border-bottom:1px solid var(--app-border);justify-content:space-between;align-items:center;min-height:58px;padding:0 20px;display:flex}.smart-chat-title,.smart-chat-actions,.smart-chat-status{align-items:center;gap:9px;display:flex}.smart-chat-title{color:var(--app-text-strong);font-size:14px}.smart-chat-icon{width:30px;height:30px;color:var(--app-primary-strong);background:var(--app-primary-soft);border-radius:9px;place-items:center;display:grid}.smart-chat-status{color:var(--app-text-muted);font-size:11px}.smart-chat-status i{background:var(--app-warning);border-radius:50%;width:7px;height:7px}.smart-chat-status.online i{background:var(--app-success)}.chat-clear-button{color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;font-size:11px}.smart-chat-messages{flex-direction:column;flex:1;gap:16px;min-height:380px;padding:24px 22px;display:flex;overflow-y:auto}.smart-chat-empty{min-height:300px;color:var(--app-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.smart-chat-empty strong{color:var(--app-text-strong);font-size:17px}.smart-chat-empty span{max-width:300px;font-size:12px}.smart-chat-composer-area{border-top:1px solid var(--app-border);background:var(--app-surface);padding:12px 18px 15px}.smart-chat-quick-actions{gap:7px;margin-bottom:10px;display:flex;overflow-x:auto}.smart-chat-quick-actions button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:999px;flex:none;padding:7px 10px;font-size:11px}.smart-chat-quick-actions button:hover{border-color:var(--app-primary-strong);color:var(--app-primary-strong)}.smart-chat-composer{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:14px;align-items:flex-end;gap:7px;padding:7px 8px 7px 13px;display:flex}.smart-chat-composer textarea{resize:none;min-height:25px;max-height:100px;color:var(--app-text-strong);font:inherit;background:0 0;border:0;outline:0;flex:1;padding:4px 0;font-size:13px}.chat-mic-button,.chat-send-button{cursor:pointer;border:0;border-radius:9px;place-items:center;min-width:31px;height:31px;display:grid}.chat-mic-button{color:var(--app-text-muted);background:0 0}.assistant-voice-notice{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:9px;align-items:center;gap:7px;padding:8px 10px;font-size:11px;display:flex}.chat-mic-button span{color:var(--app-text-inverse);background:var(--app-text-strong);border-radius:5px;padding:3px 6px;font-size:9px;position:absolute;transform:translateY(-27px)}.chat-send-button:disabled{cursor:not-allowed;opacity:.45}.smart-chat-composer-area>small{color:var(--app-text-subtle);text-align:right;margin-top:7px;font-size:10px;display:block}.chat-action-result{border-top:1px solid var(--app-border);color:var(--app-success-strong);align-items:center;gap:6px;margin-top:10px;padding-top:9px;font-size:11px;display:flex}.chat-inline-error{color:var(--app-danger-deep);background:var(--app-surface-sunken);border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.chat-inline-error button{color:var(--app-danger-deep);cursor:pointer;background:0 0;border:0;margin-left:auto;font-weight:700}@media (width<=700px){.smart-home-chat{border-left:0;border-right:0;border-radius:0;min-height:calc(100vh - 110px)}.smart-chat-messages{padding:18px 14px}.smart-chat-header{padding:0 14px}}.assistant-trigger{z-index:30;height:42px;color:var(--app-text-inverse);background:var(--app-primary-strong);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 22px #3157d540}.assistant-trigger.active{right:390px}.assistant-panel{z-index:25;border-left:1px solid var(--app-border);background:var(--app-surface);pointer-events:none;visibility:hidden;flex-direction:column;width:390px;height:calc(100vh - 72px);min-height:0;transition:transform .18s,visibility 0s linear .18s;display:flex;position:fixed;top:72px;right:0;overflow:hidden;transform:translate(100%);box-shadow:-8px 0 24px #0f172a14}.assistant-panel.open{pointer-events:auto;visibility:visible;transition-delay:0s;transform:translate(0)}.assistant-panel-messages,.assistant-monitor{flex-direction:column;flex:1;gap:13px;min-height:260px;padding:16px 13px;display:flex;overflow-y:auto}.assistant-panel-empty{color:var(--app-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:7px;font-size:11px;display:flex}.assistant-panel-empty strong{color:var(--app-text-strong);font-size:14px}.assistant-panel-messages .assistant-message{max-width:100%}.assistant-panel-messages .assistant-message-body{padding:9px 11px;font-size:12px}.assistant-panel-messages .assistant-message-avatar{flex-basis:28px;width:28px;height:28px}.assistant-suggestion-card{border:1px solid var(--app-primary-border);color:var(--app-primary-strong);background:var(--app-bg);border-radius:12px;gap:7px;padding:11px;font-size:11px;display:grid}.assistant-suggestion-card p{color:var(--app-text-muted);margin:0;line-height:1.45}.assistant-suggestion-card>div{gap:6px;display:flex}.assistant-suggestion-card button{border:1px solid var(--app-primary-border);color:var(--app-primary-strong);background:var(--app-surface);cursor:pointer;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:700}.assistant-suggestion-card button:disabled{cursor:not-allowed;opacity:.5}.assistant-panel-footer{border-top:1px solid var(--app-border);padding:10px 12px 12px}.assistant-panel-quick{gap:5px;margin-bottom:8px;display:flex;overflow-x:auto}.assistant-panel-quick button{border:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);cursor:pointer;border-radius:999px;flex:none;padding:6px 8px;font-size:10px}.assistant-panel-footer>small{color:var(--app-text-subtle);margin-top:6px;font-size:9px;display:block}.assistant-clear{color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;margin-top:8px;font-size:10px}.assistant-clear:disabled{cursor:default;opacity:.4}.assistant-monitor{gap:8px}.assistant-monitor-context{color:var(--app-text-muted);margin-bottom:5px;font-size:11px}.assistant-monitor-row{border:1px solid var(--app-border);color:var(--app-text-muted);border-radius:9px;justify-content:space-between;align-items:center;padding:11px;font-size:11px;display:flex}.assistant-monitor-row strong{color:var(--app-text-strong);font-size:13px}@media (width<=700px){.assistant-panel{height:100vh;top:0}.assistant-panel.open{width:min(100%,390px);inset:0 0 0 auto;transform:translate(0)}.assistant-trigger.active{top:70px;bottom:auto;right:22px}.assistant-trigger{bottom:14px;right:14px}.overview-stat-grid{grid-template-columns:1fr}.assistant-panel.open{width:min(100%,430px)}}.assistant-message-confirmation{background:0 0!important;padding:0!important}.assistant-message-confirmation>.assistant-message-role{display:none}.assistant-panel-welcome{border:1px solid var(--app-border-strong);background:linear-gradient(145deg, var(--app-surface-raised), var(--app-primary-soft));border-radius:16px;align-items:flex-start;gap:11px;margin:auto 2px;padding:15px;display:flex;box-shadow:0 8px 22px #3157d512}.assistant-panel-welcome-icon{width:38px;height:38px;color:var(--app-primary-strong);background:var(--app-primary-soft);border-radius:12px;flex:0 0 38px;place-items:center;display:grid}.assistant-panel-welcome-copy{gap:4px;min-width:0;display:grid}.assistant-panel-welcome-copy strong{color:var(--app-primary-deep);font-size:15px;line-height:1.35}.assistant-panel-welcome-copy small{color:var(--app-text-muted);font-size:10px;line-height:1.45}.assistant-panel .assistant-confirmation-inline{border:1px solid var(--app-border-strong);background:linear-gradient(145deg, var(--app-surface-raised), var(--app-primary-soft));border-radius:16px;gap:13px;width:100%;margin-top:8px;padding:15px;display:grid;box-shadow:0 8px 22px #3157d514}.assistant-confirmation-heading{align-items:center;gap:10px;display:flex}.assistant-confirmation-heading>span{width:34px;height:34px;color:var(--app-primary-strong);background:var(--app-primary-soft);border-radius:10px;flex:0 0 34px;place-items:center;display:grid}.assistant-confirmation-heading div{gap:2px;min-width:0;display:grid}.assistant-confirmation-heading strong{color:var(--app-primary-deep);font-size:14px;line-height:1.3}.assistant-confirmation-heading small{color:var(--app-text-muted);font-size:10px;line-height:1.4}.assistant-confirmation-details-list{gap:7px;min-width:0;display:grid}.assistant-confirmation-primary{color:var(--app-text-strong);font-size:14px;line-height:1.45}.assistant-confirmation-detail{min-width:0;color:var(--app-text-muted);background:var(--app-surface-translucent);border-radius:9px;align-items:flex-start;gap:7px;padding:7px 9px;font-size:10px;line-height:1.45;display:flex}.assistant-confirmation-detail svg{color:var(--app-primary-strong);flex:none;margin-top:1px}.assistant-confirmation-detail span{overflow-wrap:anywhere}.assistant-panel .assistant-confirmation-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:2px;display:grid}.assistant-panel .assistant-confirmation-actions button{border-radius:10px;min-height:38px;font-size:11px}@media (width<=520px){.assistant-panel .assistant-confirmation-actions{grid-template-columns:1fr 1fr}}.assistant-panel-messages{background:var(--c-nl-5);gap:14px;padding:14px 16px 18px}.assistant-panel-welcome{border-color:var(--c-hl-4);background:var(--c-hl-5);box-shadow:none;margin:auto 2px;padding:16px}.assistant-panel-welcome-icon{color:var(--c-hl-1);background:var(--c-hl-4)}.assistant-panel-welcome-copy strong{color:var(--c-nd-1)}.assistant-panel-welcome-copy p{color:var(--c-nd-3)}.assistant-panel-welcome-copy small{color:var(--c-nd-4)}.assistant-message{align-items:flex-start;gap:8px;width:100%;display:flex}.assistant-message-user{flex-direction:row-reverse}.assistant-message-avatar{width:28px;height:28px;color:var(--c-hl-1);background:var(--c-hl-5);border-radius:9px;flex:0 0 28px;place-items:center;display:grid}.assistant-message-user .assistant-message-avatar{color:var(--c-nd-3);background:var(--c-nl-3)}.assistant-message-body{min-width:0;max-width:calc(100% - 36px);color:var(--c-nd-1);background:var(--c-nl-4);border-radius:12px;padding:9px 11px;font-size:12px;line-height:1.5}.assistant-message-user .assistant-message-body{background:var(--c-hl-5)}.assistant-message-role{color:var(--c-nd-5);margin-bottom:3px;font-size:9px;font-weight:800;display:block}.assistant-message-body p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.assistant-message-thinking .assistant-message-body{color:var(--c-nd-4)}.assistant-thinking-content{align-items:center;gap:8px;display:flex}.assistant-thinking-content p{color:inherit}.assistant-thinking-dots{gap:3px;display:inline-flex}.assistant-thinking-dots i{background:var(--c-hl-1);border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite assistant-thinking-bounce}.assistant-thinking-dots i:nth-child(2){animation-delay:.12s}.assistant-thinking-dots i:nth-child(3){animation-delay:.24s}.assistant-turn-activity{min-width:0;color:var(--c-nd-4);align-self:flex-start;align-items:center;gap:7px;margin-left:36px;font-size:11px;line-height:1.4;display:flex}.assistant-turn-activity>span:last-child{overflow-wrap:anywhere;min-width:0}.assistant-turn-activity-dot{background:var(--c-hl-1);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.assistant-suggestion-card{border-color:var(--c-hl-4);color:var(--c-hl-1);background:var(--c-hl-5)}.assistant-suggestion-card p{color:var(--c-nd-3)}.assistant-suggestion-card button{border-color:var(--c-hl-4);color:var(--c-hl-1);background:var(--c-nl-5)}.assistant-panel-footer{border-top-color:var(--c-nl-3);background:var(--c-nl-5);padding:10px 14px 14px}.smart-chat-composer{border-color:var(--c-nl-2);background:var(--c-nl-4);box-shadow:none}.smart-chat-composer textarea{color:var(--c-nd-1)}.smart-chat-composer textarea::placeholder{color:var(--c-nd-5)}.smart-chat-composer.busy{background:var(--c-nl-3)}.smart-chat-composer textarea:disabled{cursor:not-allowed;opacity:.7}.chat-mic-button{color:var(--c-nd-4)}.chat-mic-button:hover:not(:disabled),.chat-mic-button.active{color:var(--c-hl-1);background:var(--c-hl-5)}.chat-send-button{color:var(--c-nl-5);background:var(--c-hl-1)}.chat-send-button:hover:not(:disabled){background:var(--app-primary-deep)}.smart-chat-word-count,.assistant-panel-input-hint{color:var(--c-nd-5)}.assistant-panel .assistant-confirmation-inline{border-color:var(--c-hl-4);background:var(--c-hl-5);box-shadow:none}.assistant-confirmation-heading>span{color:var(--c-hl-1);background:var(--c-hl-4)}.assistant-confirmation-heading strong,.assistant-confirmation-primary{color:var(--c-nd-1)}.assistant-confirmation-heading small,.assistant-confirmation-detail{color:var(--c-nd-4)}.assistant-confirmation-detail{background:var(--app-surface-translucent)}.assistant-confirmation-detail svg{color:var(--c-hl-1)}.assistant-panel .assistant-confirmation-actions .primary-button{background:var(--c-hl-1)}.assistant-panel .assistant-confirmation-actions .secondary-button{color:var(--c-nd-3);background:var(--c-nl-5)}.assistant-confirmation-slot{background:var(--c-nl-5);padding:8px 16px 0}.mie-confirmation-card{border:1px solid var(--c-hl-4);width:min(100%,328px);color:var(--c-nd-1);background:var(--c-hl-5);border-radius:12px;align-self:flex-start;margin:0;padding:12px 14px;box-shadow:0 2px 8px #1f20240a}.mie-confirmation-card:focus-visible{outline:2px solid var(--c-hl-2);outline-offset:2px}.mie-confirmation-card>strong{font-size:13px;line-height:1.4;display:block}.mie-confirmation-card>p{color:var(--c-nd-4);margin:3px 0 0;font-size:11px;line-height:1.4}.mie-confirmation-card .mie-confirmation-transcript{color:var(--c-nd-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:7px;font-size:11px;font-style:italic;display:-webkit-box;overflow:hidden}.mie-confirmation-card .mie-confirmation-status{color:var(--c-hl-1);font-weight:700}.mie-confirmation-replay{border:1px solid var(--c-hl-4);min-height:26px;color:var(--c-hl-1);background:var(--c-nl-5);cursor:pointer;border-radius:7px;align-items:center;gap:4px;margin:0 0 8px;padding:3px 7px;font-size:10px;font-weight:700;display:inline-flex}.mie-confirmation-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.mie-confirmation-actions button{border:1px solid var(--c-nl-2);min-height:36px;color:var(--c-nd-2);background:var(--c-nl-5);cursor:pointer;border-radius:8px;padding:6px 9px;font-size:11px;font-weight:700}.mie-confirmation-actions button:hover:not(:disabled),.mie-confirmation-replay:hover:not(:disabled){border-color:var(--c-hl-3);color:var(--c-hl-1)}.mie-confirmation-actions button:disabled,.mie-confirmation-replay:disabled{cursor:not-allowed;opacity:.65}.mie-confirmation-actions button:focus-visible,.mie-confirmation-replay:focus-visible{outline:2px solid var(--c-hl-2);outline-offset:2px}.mie-confirmation-actions button.primary-button{border-color:var(--c-hl-1);color:var(--c-nl-5);background:var(--c-hl-1)}.voice-conversation-confirmation{z-index:2;position:absolute;bottom:74px;left:12px;right:12px}.voice-conversation-confirmation .mie-confirmation-card{width:100%;margin:0}.chat-inline-error{color:var(--c-err-1);background:var(--c-err-3)}.assistant-panel-messages{gap:16px;padding:18px 18px 22px}.assistant-panel-welcome{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:16px;width:100%;max-width:none;margin:auto 0 8px;padding:18px}.assistant-panel-welcome-icon{border-radius:11px;flex-basis:36px;width:36px;height:36px}.assistant-panel-welcome-copy strong{font-size:14px}.assistant-panel-welcome-copy p{font-size:11px;line-height:1.5}.assistant-panel-welcome-copy small{font-size:10px;line-height:1.5}.assistant-message{gap:8px}.assistant-message-avatar{border-radius:8px;flex-basis:26px;width:26px;height:26px}.assistant-message-body{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:4px 13px 13px;max-width:min(82%,304px);padding:10px 12px;font-size:12px;line-height:1.55}.assistant-message-user .assistant-message-body{border-color:var(--app-border-strong);background:var(--app-primary-soft);border-radius:13px 4px 13px 13px}.assistant-message-role{letter-spacing:.02em;margin-bottom:4px;font-size:9px}.assistant-panel-footer{background:var(--app-surface);padding:12px 16px 16px}.smart-chat-composer{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:15px;gap:7px;padding:9px 9px 8px 13px}.smart-chat-composer:focus-within{border-color:var(--app-primary-border);box-shadow:0 0 0 3px #006ffd1a}.smart-chat-composer textarea{min-height:25px;font-size:12px;line-height:1.45}.chat-send-button{border-radius:10px;width:32px;height:32px}.assistant-panel-input-hint{margin-top:7px;font-size:9px}.assistant-voice-composer .chat-mic-button:focus-visible{outline:2px solid var(--c-hl-2);outline-offset:2px}.assistant-voice-composer,.assistant-conversation-pending{border:1px solid var(--c-nl-3);background:var(--c-nl-4);border-radius:14px;gap:8px;padding:12px;display:grid}.assistant-voice-composer .chat-mic-button{border:1px solid var(--c-hl-4);min-height:38px;color:var(--c-hl-1);background:var(--c-hl-5);justify-self:start;padding-inline:12px}.assistant-voice-composer p,.assistant-conversation-pending{color:var(--c-nd-3);margin:0;font-size:11px;line-height:1.45}.assistant-voice-error{color:var(--app-danger-deep)!important}.voice-conversation-panel{box-sizing:border-box;text-align:center;align-self:stretch;width:auto;min-width:0;max-width:100%;height:100%;min-height:100%;padding:0;display:block;position:relative;overflow:hidden}.voice-conversation-panel.voice-only{background:var(--c-nl-4,var(--app-surface-raised));min-height:360px;padding:28px 18px 96px}.voice-conversation-current-turn{z-index:2;text-align:left;gap:10px;display:grid;position:absolute;top:18px;left:16px;right:16px}.voice-only .voice-conversation-current-turn{position:static}.voice-current-transcript,.voice-current-activity,.voice-current-subtitle{overflow-wrap:anywhere;margin:0}.voice-current-transcript{color:var(--c-nd-3,var(--app-text-secondary));font-size:12px;line-height:1.5}.voice-current-transcript span,.voice-current-subtitle span{color:var(--c-nd-4,var(--app-text-muted));margin-bottom:3px;font-size:10px;font-weight:700;display:block}.voice-current-transcript.is-interim{opacity:.68;font-style:italic}.voice-current-activity{color:var(--c-nd-4,var(--app-text-muted));align-items:center;gap:7px;font-size:11px;line-height:1.45;display:flex}.voice-current-activity>span{background:var(--c-hl-1,var(--app-primary));border-radius:50%;flex:0 0 6px;width:6px;height:6px}.voice-current-subtitle{border-left:2px solid var(--c-hl-1,var(--app-primary));color:var(--c-nd-1,var(--app-text));background:#ffffffe0;padding:10px 12px;font-size:12px;line-height:1.5}.voice-conversation-controls{z-index:3;gap:7px;display:flex;position:absolute;bottom:12px;right:10px}.voice-conversation-controls button{background:#ffffffeb;place-items:center;width:34px;height:34px;padding:0;display:grid}.voice-input-level{z-index:1;width:calc(82px + 22px * var(--voice-input-level));height:calc(82px + 22px * var(--voice-input-level));pointer-events:none;border:1px solid #d83a3a73;border-radius:50%;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.voice-conversation-panel[data-interaction-state=processing] .voice-current-activity,.voice-conversation-panel[data-interaction-state=connecting] .voice-current-activity{font-weight:600}.voice-conversation-panel[data-interaction-state=error] .voice-conversation-current-turn{color:var(--c-err-1,var(--app-danger-deep))}.mie-live2d[data-interaction-state=listening]{filter:saturate(1.05)}.mie-live2d[data-interaction-state=processing]{filter:brightness(.98)}.mie-live2d[data-interaction-state=awaiting_confirmation]{filter:saturate(.9)}.mie-live2d,.mie-live2d-canvas{width:100%;min-width:0;max-width:100%;height:100%;display:block}.mie-live2d{position:relative;overflow:hidden}.voice-conversation-mie{z-index:0;width:100%;max-width:none;height:100%;margin:0;position:absolute;inset:0}.mie-live2d-fallback{border:1px solid var(--c-hl-4,var(--app-primary-border));background:var(--c-hl-5,var(--app-primary-soft));border-radius:50%;width:62px;height:62px;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.mie-live2d-canvas{transform:none}}.voice-conversation-mic-button{z-index:2;border:1px solid var(--c-hl-1,var(--app-primary));width:76px;height:76px;color:var(--app-text-inverse);background:var(--c-hl-1,var(--app-primary));cursor:pointer;border-radius:50%;place-items:center;margin:0;display:grid;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #006ffd33}.voice-conversation-mic-button.is-listening{border-color:var(--app-danger);background:var(--app-danger)}.voice-conversation-mic-button:disabled{cursor:not-allowed;opacity:.55}.voice-conversation-mic-button:hover:not(:disabled){transform:translate(-50%,-1px)}.voice-conversation-mic-button:focus-visible{outline:2px solid var(--c-hl-2,var(--app-primary-light));outline-offset:3px}.voice-conversation-primary,.voice-conversation-controls button,.voice-conversation-secondary-actions button,.voice-conversation-transcript-heading button,.voice-conversation-return-button{border:1px solid var(--c-nl-3,var(--app-border));font:700 11px/1.3 var(--ff), system-ui, sans-serif;cursor:pointer;border-radius:10px}.voice-conversation-primary{border-color:var(--c-hl-1,var(--app-primary));min-height:43px;color:var(--app-text-inverse);background:var(--c-hl-1,var(--app-primary));justify-content:center;align-items:center;gap:8px;display:inline-flex}.voice-conversation-primary:disabled{cursor:not-allowed;opacity:.55}.voice-conversation-secondary-actions{gap:8px;width:min(100%,300px);display:grid}.voice-conversation-secondary-actions button,.voice-conversation-transcript-heading button,.voice-conversation-return-button{min-height:34px;color:var(--c-hl-1,var(--app-primary));background:var(--c-nl-5,var(--app-surface))}.voice-conversation-help{color:var(--c-nd-4,var(--app-text-muted));margin:-4px 0 0;font-size:11px;line-height:1.45}.voice-conversation-alert{color:var(--c-err-1,var(--app-danger-deep))}.voice-conversation-transcript-heading{justify-content:space-between;align-items:center;gap:10px;padding-bottom:4px;display:flex}.voice-conversation-transcript-heading strong{color:var(--c-nd-1,var(--app-text));font-size:13px}.voice-conversation-transcript-heading button{padding-inline:9px}.voice-conversation-return-button{width:100%;margin-top:9px}.voice-conversation-primary:hover:not(:disabled),.voice-conversation-controls button:hover,.voice-conversation-secondary-actions button:hover,.voice-conversation-transcript-heading button:hover,.voice-conversation-return-button:hover{border-color:var(--c-hl-2,var(--app-primary-light))}.voice-conversation-primary:focus-visible,.voice-conversation-controls button:focus-visible,.voice-conversation-secondary-actions button:focus-visible,.voice-conversation-transcript-heading button:focus-visible,.voice-conversation-return-button:focus-visible{outline:2px solid var(--c-hl-2,var(--app-primary-light));outline-offset:2px}@media (width<=360px){.voice-conversation-panel{padding-inline:12px}}.assistant-panel .assistant-confirmation-inline{border-radius:14px;margin-top:4px;padding:14px}.assistant-confirmation-primary{font-size:13px}.assistant-panel .assistant-confirmation-actions button{min-height:36px}.assistant-suggestion-card{border-radius:14px}@media (width<=700px){.assistant-panel-messages{padding-inline:14px}.assistant-panel-footer{padding-inline:12px}}.assistant-executed-actions{border-top:1px solid var(--app-border);gap:7px;margin-top:12px;padding-top:10px;display:grid}.assistant-executed-actions-label{color:var(--app-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.assistant-receipt-group{gap:6px;min-width:0;display:grid}.assistant-receipt-group-heading{gap:1px;min-width:0;padding:1px 2px;display:grid}.assistant-receipt-group-heading span{color:var(--app-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800}.assistant-receipt-group-heading strong{overflow-wrap:anywhere;min-width:0;color:var(--app-text);font-size:12px;line-height:1.4}.assistant-receipt-group-items{gap:6px;display:grid}.assistant-executed-action{min-width:0;color:var(--app-success-strong);background:var(--app-success-soft);border-radius:8px;align-items:flex-start;gap:8px;padding:7px 8px;font-size:10px;line-height:1.4;display:flex}.assistant-executed-action>svg{flex:none;margin-top:1px}.assistant-executed-action>div{flex-wrap:wrap;align-items:baseline;gap:1px 5px;min-width:0;display:flex}.assistant-executed-action strong{color:var(--app-success-strong);white-space:nowrap;font-size:10px;font-weight:800}.assistant-executed-action strong:after{content:""}.assistant-executed-action span{overflow-wrap:anywhere;min-width:0;color:var(--app-success-strong);font-size:10px}.assistant-history-view{align-content:start;gap:12px;width:100%;display:grid}.assistant-history-view>strong{color:var(--app-text);font:800 15px/20px var(--ff), system-ui, sans-serif}.assistant-history-view>span:not(.chat-inline-error){color:var(--app-text-subtle);font-size:10px}.assistant-history-view>.chat-inline-error{width:100%}.assistant-history-view>button.assistant-history-item{border:1px solid var(--app-border);width:100%;min-height:62px;color:var(--app-text);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:13px;align-items:center;gap:10px;padding:10px 34px 10px 12px;transition:border-color .16s,background .16s,transform .16s;display:flex;position:relative}.assistant-history-view>button.assistant-history-item:after{color:var(--app-text-subtle);content:"›";font-size:20px;line-height:1;position:absolute;top:50%;right:12px;transform:translateY(-53%)}.assistant-history-view>button.assistant-history-item:hover:not(:disabled){border-color:var(--app-primary-border);background:var(--app-surface-raised);transform:translateY(-1px)}.assistant-history-view>button.assistant-history-item:disabled{cursor:wait;opacity:.55}.assistant-history-view>button.assistant-history-item:first-line{font-weight:700}.assistant-history-view>button.assistant-history-item{white-space:normal;font-size:11px;line-height:1.45;overflow:hidden}.assistant-history-view>button.assistant-history-item-icon{width:32px;height:32px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:10px;flex:0 0 32px;place-items:center;display:grid}.assistant-history-empty{color:var(--app-text-subtle);text-align:center;padding:28px 16px;font-size:11px}.assistant-panel-welcome{background:var(--app-surface-raised);text-align:center;width:100%;min-height:210px;box-shadow:none;border:0;border-radius:16px;align-content:center;justify-items:center;gap:12px;margin:auto 0;padding:24px 20px;display:grid}.assistant-panel-welcome-mark{border:7px solid var(--app-primary-soft);width:58px;height:58px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:18px;place-items:center;display:grid;box-shadow:0 8px 18px #006ffd1f}.assistant-panel-welcome-copy{justify-items:center;gap:6px;max-width:270px;display:grid}.assistant-panel-welcome-copy strong{color:var(--app-text);font:800 17px/23px var(--ff), system-ui, sans-serif}.assistant-panel-welcome-copy p{color:var(--app-text-secondary);margin:0;font-size:12px;line-height:1.55}.assistant-panel-welcome-copy small{color:var(--app-text-subtle);margin-top:2px;font-size:12px;line-height:17px}.assistant-panel-messages>[role=tabpanel]{min-height:100%;display:grid}.assistant-panel-welcome{margin:clamp(24px,8vh,72px) 0 16px}.assistant-history-view{align-content:start}.assistant-history-group{gap:8px;display:grid}.assistant-history-group+.assistant-history-group{margin-top:8px}.assistant-history-group h2{color:var(--c-nd-3,var(--app-text-secondary));font:800 11px/16px var(--ff), system-ui, sans-serif;margin:0}.assistant-history-group>button.assistant-history-item{border:1px solid var(--c-nl-3,var(--app-border));width:100%;min-height:58px;color:var(--c-nd-3,var(--app-text-secondary));background:var(--c-nl-5,var(--app-surface));text-align:left;cursor:pointer;border-radius:12px;gap:3px;padding:10px 36px 10px 12px;display:grid;position:relative}.assistant-history-group>button.assistant-history-item:after{color:var(--c-nd-5,var(--app-text-subtle));content:"›";font-size:20px;line-height:1;position:absolute;top:50%;right:12px;transform:translateY(-53%)}.assistant-history-group>button.assistant-history-item strong{color:var(--c-nd-1,var(--app-text));font:700 12px/16px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-history-group>button.assistant-history-item span{color:var(--c-nd-5,var(--app-text-subtle));font-size:10px}.assistant-history-group>button.assistant-history-item:hover:not(:disabled){border-color:var(--c-hl-3,var(--app-primary-border));background:var(--c-hl-5,var(--app-surface-raised))}.assistant-history-card{border:1px solid var(--c-nl-3,var(--app-border));background:var(--c-nl-5,var(--app-surface));border-radius:12px;min-width:0;min-height:58px;transition:border-color .18s,background .18s;display:flex;position:relative;overflow:hidden}.assistant-history-card:hover{border-color:var(--c-hl-3,var(--app-primary-border));background:var(--c-hl-5,var(--app-surface-raised))}.assistant-history-card>.assistant-history-item{min-width:0;color:var(--c-nd-3,var(--app-text-secondary));text-align:left;cursor:pointer;background:0 0;border:0;flex:1;gap:3px;padding:10px 44px 10px 12px;display:grid}.assistant-history-card>.assistant-history-item strong{color:var(--c-nd-1,var(--app-text));font:700 12px/16px var(--ff), system-ui, sans-serif;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-history-card>.assistant-history-item span{color:var(--c-nd-5,var(--app-text-subtle));font-size:10px}.assistant-history-delete-button{width:30px;height:30px;color:var(--c-nd-5,var(--app-text-subtle));cursor:pointer;opacity:.6;background:0 0;border:0;border-radius:8px;place-items:center;transition:color .18s,background .18s,opacity .18s;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.assistant-history-card:hover .assistant-history-delete-button,.assistant-history-delete-button:focus-visible{opacity:1}.assistant-history-delete-button:hover:not(:disabled){color:var(--app-danger-strong);background:var(--app-surface-sunken)}.assistant-history-delete-button:disabled{cursor:not-allowed;opacity:.4}.assistant-history-card:focus-within{border-color:var(--c-hl-2,var(--app-primary));box-shadow:0 0 0 3px var(--c-hl-5,var(--furniture-surface))}.assistant-history-delete-confirm{width:100%;min-width:0;color:var(--app-danger-deep);background:var(--app-surface);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:11px;font-weight:700;display:flex}.assistant-history-delete-confirm>div{flex:none;gap:6px;display:flex}.assistant-history-delete-confirm button{border:1px solid var(--furniture-fabric);min-height:28px;color:var(--app-danger-deep);background:var(--app-surface);cursor:pointer;font:700 10px/1 var(--ff), system-ui, sans-serif;border-radius:8px;padding:0 9px}.assistant-history-delete-confirm button.danger{border-color:var(--app-danger-deep);color:var(--app-text-inverse);background:var(--app-danger-deep)}.assistant-history-delete-confirm button:disabled{cursor:wait;opacity:.6}.assistant-history-notice{color:var(--app-success-strong);background:var(--app-success-soft);border-radius:9px;margin:0;padding:8px 10px;font-size:11px}.assistant-history-delete-error{color:var(--app-danger-deep);background:var(--app-surface-sunken);border-radius:9px;margin:0;padding:8px 10px;font-size:11px}.assistant-executed-action.pending{color:var(--app-warning-deep);background:var(--app-warning-soft)}.assistant-executed-action.failed{color:var(--app-danger-deep);background:var(--app-danger-soft)}.assistant-executed-action.pending strong{color:var(--app-warning-deep)}.assistant-executed-action.failed strong{color:var(--app-danger-deep)}.assistant-completion-summary{border:1px solid var(--app-success-soft);color:var(--app-success-strong);background:var(--app-success-soft);border-radius:9px;align-items:center;gap:9px;padding:6px 8px;display:flex}.assistant-completion-summary>span{width:23px;height:23px;color:var(--app-text-inverse);background:var(--app-success-strong);border-radius:50%;flex:0 0 23px;place-items:center;display:grid}.assistant-completion-summary>div{gap:1px;min-width:0;display:grid}.assistant-completion-summary strong{color:inherit;font-size:11px;line-height:1.3}.assistant-completion-summary small{color:var(--app-success-strong);font-size:9px;line-height:1.3}.assistant-message-content>:first-child{margin-top:0}.assistant-message-content>:last-child{margin-bottom:0}.assistant-message-content p{margin:0 0 8px}.assistant-message-content :is(ul,ol){margin:6px 0;padding-left:18px}.assistant-message-content a{color:inherit;text-decoration-color:currentColor}.assistant-panel-header{border-bottom:1px solid var(--app-border);background:var(--app-surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:8px 12px 8px 14px;display:grid}.assistant-panel-title{align-items:center;gap:9px;min-width:0;display:flex}.assistant-panel-title strong{color:var(--app-text-strong);font:800 15px/20px var(--ff), system-ui, sans-serif;letter-spacing:-.2px}.assistant-panel-brand-icon{width:30px;height:30px;color:var(--app-primary-deep);background:var(--app-primary-soft);box-shadow:inset 0 0 0 1px var(--app-primary-border);border-radius:10px;flex:0 0 30px;place-items:center;display:grid;position:relative}.assistant-panel-brand-icon>i{border:2px solid var(--app-surface);background:var(--app-danger);border-radius:50%;width:9px;height:9px;position:absolute;bottom:-1px;right:-1px}.assistant-panel-brand-icon.is-online>i{background:var(--app-success-strong)}.assistant-panel-status{white-space:nowrap;color:var(--app-danger-deep);background:var(--app-danger-soft);font:700 10px/14px var(--ff), system-ui, sans-serif;border-radius:999px;padding:2px 7px}.assistant-panel-close{width:30px;height:30px;color:var(--app-text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;transition:color .18s,background-color .18s;display:grid}.assistant-panel-close:hover{color:var(--app-text-strong);background:var(--app-surface-hover)}.assistant-panel-header .assistant-interaction-modes{background:var(--app-surface-sunken);min-width:0;box-shadow:inset 0 0 0 1px var(--app-border);border-radius:11px;justify-self:end;gap:2px;padding:3px;display:flex}.assistant-panel-header .assistant-interaction-modes button{min-width:0;color:var(--app-text-secondary);cursor:pointer;font:700 10px/14px var(--ff), system-ui, sans-serif;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:5px 9px;transition:color .18s,background-color .18s,box-shadow .18s}.assistant-panel-header .assistant-interaction-modes button[aria-pressed=false]:hover{color:var(--app-text-strong)}.assistant-panel-header .assistant-interaction-modes button[aria-pressed=true]{color:var(--app-primary-deep);background:var(--app-surface);box-shadow:0 1px 2px var(--app-shadow), inset 0 0 0 1px var(--app-primary-border)}.assistant-text-toolbar{border-bottom:1px solid var(--app-border);background:var(--app-surface);align-items:stretch;gap:8px;min-width:0;padding:0 12px 0 14px;display:flex}.assistant-text-tabs{scrollbar-width:none;gap:2px;min-width:0;display:flex;overflow-x:auto}.assistant-text-tabs::-webkit-scrollbar{display:none}.assistant-text-tabs button{min-width:0;min-height:38px;color:var(--app-text-muted);cursor:pointer;font:700 11px/1 var(--ff), system-ui, sans-serif;white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;padding:0 9px;transition:color .18s;display:flex;position:relative}.assistant-text-tabs button:hover{color:var(--app-text-strong)}.assistant-text-tabs button[aria-selected=true]{color:var(--app-primary-deep)}.assistant-text-tabs button[aria-selected=true]:after{content:"";background:currentColor;border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:6px;right:6px}.assistant-new-chat-button{width:30px;height:30px;color:var(--app-primary-deep);background:var(--app-primary-soft);cursor:pointer;border:0;border-radius:9px;align-self:center;place-items:center;margin-left:auto;transition:color .18s,background-color .18s;display:grid}.assistant-new-chat-button:hover:not(:disabled){color:var(--app-text-inverse);background:var(--app-primary-cta)}.assistant-new-chat-button:disabled{cursor:not-allowed;opacity:.5}.assistant-panel-close:focus-visible,.assistant-panel-header .assistant-interaction-modes button:focus-visible,.assistant-text-tabs button:focus-visible,.assistant-new-chat-button:focus-visible{outline:2px solid var(--app-focus);outline-offset:2px}@media (width<=390px){.assistant-panel-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title close""modes modes";gap:8px 10px}.assistant-panel-title{grid-area:title}.assistant-panel-close{grid-area:close}.assistant-panel-header .assistant-interaction-modes{grid-area:modes;justify-self:stretch}.assistant-panel-header .assistant-interaction-modes button{text-align:center;flex:1}}@media (prefers-reduced-motion:reduce){.assistant-panel-close,.assistant-panel-header .assistant-interaction-modes button,.assistant-text-tabs button,.assistant-new-chat-button{transition:none}}.auth-label input,.code-inputs input,.input-field input{font-size:15px;line-height:22px}.panel-heading-row h2,.profile-identity h2,.panel-heading h2,.panel-title h2{font-size:20px;line-height:27px}.overview-page,.energy-page,.alerts-page{max-width:1180px!important}.energy-page{color:var(--c-nd-1);gap:20px;display:grid;max-width:1180px!important}@media (width<=600px){.code-inputs{gap:10px}.code-inputs input{width:52px}}@media (width<=560px){.lock-actions{grid-template-columns:1fr 1fr}}@media (width<=680px){.notification-popover{width:auto;position:fixed;top:72px;left:14px;right:14px}.toast-viewport{width:auto;top:76px;left:16px;right:16px}}@media (width<=1200px){.overview-layout-grid{grid-template-columns:minmax(0,1fr)}.overview-welcome{flex-direction:column;align-items:stretch}.overview-welcome .household-picker{margin-left:0}}@media (width>=901px){.assistant-panel{flex:0 0 0;transition:width .18s,flex-basis .18s,visibility 0s linear .18s;position:sticky;top:72px;transform:none}.assistant-panel.open{flex-basis:min(390px,32vw);width:min(390px,32vw);transform:none}}@media (width<=1279px){.overview-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-layout-grid{grid-template-columns:minmax(0,1fr)}.room-devices-card{height:auto}.room-device-items{max-height:360px}}@media (width<=720px){.overview-welcome{flex-direction:column;align-items:stretch;gap:18px}.overview-stat-grid{grid-template-columns:1fr;gap:10px}.alert-popover{width:auto;position:fixed;top:72px;left:14px;right:14px}.alerts-card{grid-template-columns:36px 1fr}.alerts-inbox-heading{flex-direction:column;align-items:flex-start}}.assistant-panel{color:var(--c-nd-1);border-left-color:var(--c-nl-3);background:var(--c-nl-5);border-left:1px solid var(--app-border);background:var(--app-surface);width:408px;box-shadow:-12px 0 32px #1f20240f}@media (width>=901px){.assistant-panel{flex-basis:min(408px,34vw);width:min(408px,34vw)}}@media (width<=700px){.assistant-panel{width:100%}}@media (width>=901px){.assistant-panel{width:0;min-width:0;box-shadow:none;border-left:0;flex:0 1 0}.assistant-panel.open{border-left:1px solid var(--app-border);flex:0 0 min(408px,34vw);width:min(408px,34vw);min-width:min(408px,34vw);box-shadow:-12px 0 32px #1f20240f}}@media (width<=760px){h1,.devices-heading h1,.household-hero h1,.site-page-title{font-size:26px;line-height:34px}}@media (width<=700px){.overview-household-picker{justify-content:stretch}}@media (width<=520px){.energy-page{gap:14px}}.assistant-panel .assistant-transcript{flex-direction:column;flex:1 0 auto;gap:14px;min-height:100%;display:flex}.assistant-panel .assistant-message-list{flex-direction:column;gap:14px;min-width:0;display:flex}.assistant-panel .assistant-message-list>.assistant-message{width:100%;margin:0}.assistant-panel .assistant-message-list>.assistant-message,.assistant-panel .assistant-message-list>.assistant-voice-notice,.assistant-panel .assistant-message-list>.chat-inline-error{flex:none}.assistant-panel .assistant-message-activity{animation:.18s ease-out assistant-activity-in}.assistant-panel .assistant-message-activity .assistant-message-body{flex-direction:column;gap:4px;display:flex}.assistant-panel .assistant-thinking-content{align-items:center;gap:8px;min-width:0;display:flex}.assistant-panel .assistant-thinking-content p{overflow-wrap:anywhere;min-width:0;margin:0}.assistant-panel .assistant-thinking-dots{flex:none;gap:3px;display:inline-flex}.assistant-panel .assistant-thinking-dots i{background:var(--c-hl-1);border-radius:50%;width:4px;height:4px;animation:1.1s ease-in-out infinite assistant-thinking-bounce}.assistant-panel .assistant-thinking-dots i:nth-child(2){animation-delay:.12s}.assistant-panel .assistant-thinking-dots i:nth-child(3){animation-delay:.24s}@keyframes assistant-activity-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.assistant-panel .assistant-message-activity,.assistant-panel .assistant-thinking-dots i{animation:none}}@media (width<=520px){.assistant-panel .assistant-transcript,.assistant-panel .assistant-message-list{gap:12px}}.assistant-panel .assistant-activity-view{padding:14px 16px 24px}.assistant-panel .assistant-activity-filters{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.assistant-panel .assistant-activity-filters label{color:var(--app-text-muted);gap:4px;font-size:11px;font-weight:700;display:grid}.assistant-panel .assistant-activity-filters select{border:1px solid var(--app-border);background:var(--app-surface);min-width:108px;color:var(--app-text);font:inherit;border-radius:8px;padding:7px 8px}.assistant-panel .assistant-activity-list{gap:9px;display:grid}.assistant-panel .assistant-activity-item{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:12px;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:9px;padding:10px;display:grid}.assistant-panel .assistant-activity-icon{width:30px;height:30px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:9px;place-items:center;display:grid}.assistant-panel .assistant-activity-copy{gap:3px;min-width:0;display:grid}.assistant-panel .assistant-activity-copy strong{color:var(--app-text);overflow-wrap:anywhere;font-size:12px}.assistant-panel .assistant-activity-copy small{color:var(--app-text-muted);overflow-wrap:anywhere;font-size:10px}.assistant-panel .assistant-activity-copy .assistant-activity-detail{color:var(--app-text);font-weight:700}.assistant-panel .assistant-activity-error{color:var(--app-danger-strong)!important}.assistant-panel .assistant-activity-status{white-space:nowrap;color:var(--app-text);background:var(--app-primary-soft);border-radius:999px;align-self:start;padding:4px 7px;font-size:10px;font-weight:800}.assistant-panel .assistant-activity-item.is-succeeded .assistant-activity-status{color:var(--app-success-strong);background:var(--app-success-soft)}.assistant-panel .assistant-activity-item.is-failed .assistant-activity-status{color:var(--app-danger-strong);background:var(--app-danger-soft)}.assistant-panel .assistant-activity-state{color:var(--app-text-muted);text-align:center;justify-items:center;gap:10px;padding:28px 12px;display:grid}.assistant-panel .assistant-activity-state p{margin:0}.assistant-panel .assistant-activity-state button,.assistant-panel .assistant-activity-more{border:1px solid var(--app-border);background:var(--app-surface);color:var(--app-text);cursor:pointer;border-radius:9px;padding:8px 12px}.assistant-panel .assistant-activity-more{margin:14px auto 0;display:block}.assistant-panel .assistant-activity-skeleton{gap:9px;display:grid}.assistant-panel .assistant-activity-skeleton span{background:var(--app-primary-soft);border-radius:12px;height:56px;animation:1.2s ease-in-out infinite assistant-activity-pulse}@keyframes assistant-activity-pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.assistant-panel .assistant-activity-skeleton span{animation:none}}@media (width<=520px){.assistant-panel .assistant-activity-view{padding-inline:10px}.assistant-panel .assistant-activity-item{grid-template-columns:28px minmax(0,1fr)}.assistant-panel .assistant-activity-status{grid-column:2;justify-self:start}}.assistant-panel .assistant-message-activity .assistant-message-body{border-color:var(--app-border-strong);background:var(--app-surface-hover)}.nexora-landing,.nexora-setup-page{--nx-bg:var(--app-surface-raised);--nx-surface:var(--app-surface);--nx-text:var(--app-media-bg);--nx-muted:var(--app-text-secondary);--nx-primary:var(--app-primary);--nx-primary-hover:var(--app-primary-strong);--nx-success:var(--app-success);--nx-warning:var(--app-warning);--nx-error:var(--app-danger);--nx-border:var(--app-border);--nx-ring:var(--app-primary-light);color:var(--nx-text);font-family:var(--ff), system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}.nexora-landing button,.nexora-landing a,.nexora-setup-page button,.nexora-setup-page a,.nexora-setup-page input{-webkit-tap-highlight-color:transparent}.nexora-landing button:focus-visible,.nexora-landing a:focus-visible,.nexora-setup-page button:focus-visible,.nexora-setup-page a:focus-visible{outline:3px solid var(--nx-ring);outline-offset:3px}.nexora-setup-page input:focus,.nexora-setup-page input:focus-visible,.nexora-setup-page select:focus,.nexora-setup-page select:focus-visible{outline:none!important}.nexora-landing{background:var(--app-media-bg);min-height:100svh;color:var(--app-text-inverse);position:relative;overflow-x:clip}.landing-media{background:var(--app-media-bg) url(/assets/smart-home-hero-poster.webp) center / cover no-repeat;position:absolute;inset:0;overflow:hidden}.landing-media video{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.landing-media-overlay{background:linear-gradient(#040e1e80,#071a3466 42%,#030c1bf5),radial-gradient(circle at 50% 36%,#07172b2e,#0713268a 74%);position:absolute;inset:0}.landing-header{z-index:20;padding:0 16px;animation:.45s ease-out both nx-enter-down;position:absolute;inset:16px 0 auto}.landing-nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07172bdb;border:1px solid #ffffff2e;border-radius:16px;align-items:center;width:min(100%,1280px);min-height:68px;margin:0 auto;padding:0 18px;display:flex;position:relative;box-shadow:0 16px 48px #0208173d}.landing-brand,.nexora-brand{min-height:44px;color:inherit;letter-spacing:-.02em;white-space:nowrap;border-radius:12px;align-items:center;gap:10px;font-size:16px;font-weight:800;text-decoration:none;display:inline-flex}.landing-brand>span,.nexora-brand-mark{width:38px;height:38px;color:var(--app-primary);background:0 0;border-radius:12px;flex:0 0 38px;place-items:center;display:grid;overflow:hidden;box-shadow:0 6px 18px #2563eb38}.nexora-brand-mark img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.landing-links{align-items:center;gap:2px;margin-left:auto;display:flex}.landing-links button,.landing-mobile-menu button{min-height:44px;color:var(--app-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:0 14px;font-size:14px;font-weight:600;transition:color .2s,background-color .2s}.landing-links button:hover,.landing-mobile-menu button:hover{color:var(--app-text-strong);background:#ffffff1a}.landing-actions{align-items:center;gap:8px;margin-left:12px;display:flex}.landing-start,.hero-primary,.nexora-submit{min-height:44px;color:var(--app-text-inverse);background:var(--app-primary-cta);cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:750;transition:background-color .2s,box-shadow .2s;display:inline-flex;box-shadow:0 8px 22px #2563eb4d}.landing-start:hover,.hero-primary:hover,.nexora-submit:hover{background:var(--app-primary-strong);box-shadow:0 11px 28px #2563eb61}.landing-start:disabled,.hero-primary:disabled,.nexora-submit:disabled{cursor:wait;opacity:.68}.landing-menu-button{width:44px;height:44px;color:var(--app-text-strong);cursor:pointer;background:0 0;border:0;border-radius:12px;place-items:center;padding:0;display:none}.landing-menu-button:hover{background:#ffffff1a}.landing-mobile-menu{border:1px solid var(--app-border-strong);background:var(--app-surface-raised);border-radius:16px;gap:2px;padding:8px;display:grid;position:absolute;inset:calc(100% + 8px) 0 auto;box-shadow:0 24px 60px #02081761}.landing-mobile-menu button{text-align:left;width:100%}.landing-main{z-index:2;position:relative}.landing-hero{text-align:center;width:min(100%,1440px);min-height:100svh;margin:0 auto;padding:114px 32px 64px}.hero-badge{background:#07172bc7;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:8px;min-height:32px;padding:6px 14px;font-size:13px;font-weight:650;animation:.5s ease-out both nx-enter-up;display:inline-flex;box-shadow:0 8px 24px #02081726}.landing-hero>h1{max-width:850px;color:var(--app-text-inverse);letter-spacing:-.045em;text-wrap:balance;margin:16px auto 0;font-size:clamp(2.45rem,5.3vw,4rem);font-weight:850;line-height:1.04;animation:.6s ease-out .1s both nx-enter-up}.landing-hero>h1 span{color:var(--app-primary-border);text-shadow:0 0 28px #60a5fa47}.landing-hero>p{max-width:680px;color:var(--app-text-inverse);text-wrap:pretty;margin:16px auto 0;font-size:clamp(1rem,2vw,1.125rem);font-weight:520;line-height:1.65;animation:.6s ease-out .2s both nx-enter-up}.hero-actions{justify-content:center;gap:12px;margin-top:24px;animation:.6s ease-out .3s both nx-enter-up;display:flex}.hero-primary,.hero-secondary{min-height:48px;padding:0 24px;font-size:15px}.hero-secondary{color:var(--app-text-inverse);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#07172bb8;border:1px solid #ffffff4d;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-weight:750;transition:background-color .2s,border-color .2s;display:inline-flex;box-shadow:0 10px 24px #02081729}.hero-secondary:hover{background:#0b203be6;border-color:#ffffff80}.hero-trust{flex-wrap:wrap;justify-content:center;gap:10px 28px;margin:20px 0 0;padding:0;list-style:none;display:flex}.hero-trust li{align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.hero-trust span{width:25px;height:25px;color:var(--app-primary-border);background:#ffffff1f;border:1px solid #fff3;border-radius:50%;place-items:center;display:grid}.landing-preview{width:min(100%,1120px);margin:28px auto 0;scroll-margin-top:96px;animation:.8s ease-out .45s both nx-preview;position:relative}.landing-preview:before{z-index:-1;filter:blur(42px);content:"";background:#2563eb40;border-radius:40px;position:absolute;inset:-28px 8%}.landing-preview-frame{background:#ffffffeb;border:1px solid #ffffff94;border-radius:22px;padding:7px;overflow:hidden;box-shadow:0 28px 80px #02081757}.preview-browser-bar{height:30px;color:var(--app-success);background:var(--app-surface-raised);border-radius:15px 15px 0 0;align-items:center;gap:6px;padding:0 10px;display:flex}.preview-browser-bar i{background:var(--app-danger);border-radius:50%;width:9px;height:9px}.preview-browser-bar i:nth-child(2){background:var(--app-warning)}.preview-browser-bar i:nth-child(3){background:var(--app-success)}.preview-browser-bar span{background:var(--app-border);border-radius:99px;width:112px;height:6px;margin:auto}.landing-preview img{border:1px solid var(--app-border);border-radius:0 0 15px 15px;width:100%;height:auto;display:block}.preview-fallback{min-height:340px;color:var(--app-text-strong);background:linear-gradient(135deg, var(--app-surface-raised), var(--app-surface-hover));border-radius:0 0 15px 15px;align-content:center;place-items:center;gap:10px;padding:30px;display:grid}.preview-fallback svg{color:var(--app-primary)}.preview-fallback p{max-width:430px;color:var(--app-text-secondary);margin:0;font-size:13px}.nexora-setup-page{background:var(--app-surface-raised);grid-template-columns:minmax(330px,40%) minmax(0,1fr);min-height:100svh;display:grid;overflow-x:clip}.setup-context{height:100svh;min-height:680px;color:var(--app-on-dark);background:radial-gradient(circle at 70% 30%, var(--app-primary-strong) 0, var(--app-media-bg) 42%, var(--app-media-bg) 78%);flex-direction:column;padding:40px clamp(28px,4vw,64px);display:flex;position:sticky;top:0;overflow:hidden}.nexora-brand{color:var(--app-text-strong)}.nexora-brand-inverse{color:var(--app-on-dark)}.setup-context-copy{z-index:2;max-width:460px;margin-top:auto;position:relative}.setup-eyebrow{color:var(--app-on-dark-accent);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:7px;font-size:13px;font-weight:750;display:inline-flex}.setup-context h2{color:var(--app-on-dark);letter-spacing:-.04em;text-wrap:balance;margin:16px 0 0;font-size:clamp(2rem,3.4vw,3.4rem);line-height:1.08}.setup-context-copy>p{max-width:480px;color:var(--app-on-dark-muted);margin:18px 0 0;font-size:15px;line-height:1.75}.setup-house-visual{opacity:.44;width:min(80%,470px);height:280px;position:absolute;top:24%;right:-6%;transform:rotate(-3deg)}.setup-house-roof{border:2px solid #fff9;border-width:2px 2px 0 0;width:72%;height:110px;margin:0 auto -36px;transform:rotate(-30deg)skew(28deg)}.setup-house-body{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff0f;border:2px solid #ffffff80;border-radius:8px;justify-content:space-evenly;align-items:center;width:72%;height:170px;margin:0 auto;display:flex}.setup-house-body span{background:#ffffff1f;border:1px solid #ffffff59;border-radius:16px;place-items:center;width:54px;height:54px;display:grid}.setup-trust-list{z-index:2;color:var(--app-on-dark-muted);gap:10px;margin:28px 0 0;padding:0;font-size:13px;list-style:none;display:grid;position:relative}.setup-trust-list li{align-items:center;gap:8px;display:flex}.setup-trust-list svg{color:var(--app-success)}.setup-content{flex-direction:column;min-width:0;min-height:100svh;padding:28px clamp(22px,5vw,72px) 48px;display:flex}.setup-mobile-brand{display:none}.setup-stepper{width:min(100%,760px);margin:0 auto 30px}.setup-stepper>p{color:var(--app-text-strong);margin:0 0 10px;font-size:13px;font-weight:750}.setup-stepper ol{grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid;position:relative}.setup-stepper ol:before{background:var(--app-border);content:"";height:2px;position:absolute;top:17px;left:12.5%;right:12.5%}.setup-stepper li{z-index:1;color:var(--app-text-secondary);justify-items:center;gap:8px;display:grid;position:relative}.setup-stepper li>span{border:2px solid var(--app-border);background:var(--app-surface);border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.setup-stepper-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:6px;padding:0;display:grid}.setup-stepper-link>span{border:2px solid var(--app-success);width:36px;height:36px;color:var(--app-text-inverse);background:var(--app-success);border-radius:50%;place-items:center;display:grid}.setup-stepper-link small{text-align:center;font-size:12px;font-weight:650}.setup-stepper-link:hover small,.setup-stepper-link:focus-visible small{text-underline-offset:3px;text-decoration:underline}.setup-stepper-link:focus-visible{outline:3px solid var(--app-primary-light);outline-offset:4px;border-radius:12px}.setup-stepper li small{text-align:center;font-size:12px;font-weight:650}.setup-stepper li.is-active{color:var(--app-primary-strong)}.setup-stepper li.is-active>span{border-color:var(--app-primary);color:var(--app-text-inverse);background:var(--app-primary);box-shadow:0 0 0 5px var(--app-primary-soft)}.setup-stepper li.is-complete{color:var(--app-success-strong)}.setup-stepper li.is-complete>span{border-color:var(--app-success);color:var(--app-text-inverse);background:var(--app-success)}.setup-form-shell{width:min(100%,760px);margin:auto;animation:.38s ease-out both nx-enter-up}.auth-mode-tabs{border:1px solid var(--app-border);background:var(--app-surface-sunken);border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-mode-tabs button{min-height:44px;color:var(--app-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1)}.auth-mode-tabs button[aria-selected=true]{color:var(--app-primary-strong);background:var(--app-surface);transform:scale(1.01);box-shadow:0 2px 8px #0f172a14}.nexora-auth-panel{margin-top:28px;animation:.32s cubic-bezier(.16,1,.3,1) both nx-panel-fade-in}@keyframes nx-panel-fade-in{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}.demo-accounts-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.demo-account-card{background:var(--app-surface);border:1px solid var(--app-border-strong);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:13px 15px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.demo-account-card:hover{background:var(--app-surface-hover);border-color:var(--app-primary);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb14}.demo-account-card:active{transform:translateY(0)}.demo-account-title{color:var(--app-text-strong);font-size:13px;font-weight:700;transition:color .2s}.demo-account-card:hover .demo-account-title{color:var(--app-primary-strong)}.demo-account-email{color:var(--app-text-muted);font-size:12px;font-weight:500;line-height:1.45}.nexora-kicker{color:var(--app-primary-strong);letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800;line-height:1.5}.nexora-auth-panel h1{color:var(--app-text-strong);letter-spacing:-.02em;margin:10px 0 0;font-size:clamp(1.8rem,3.6vw,2.2rem);line-height:1.28}.nexora-lead{max-width:56ch;color:var(--app-text-secondary);margin:14px 0 0;font-size:15px;line-height:1.75}.nexora-auth-panel form{gap:18px;margin-top:26px;display:grid}.nexora-field{min-width:0}.nexora-field>label,.home-type-fieldset>legend{color:var(--app-text-strong);margin-bottom:8px;font-size:14px;font-weight:700;display:block}.nexora-input-wrap{border:1px solid var(--app-border-strong);min-height:48px;color:var(--app-text-muted);background:var(--app-surface);border-radius:12px;align-items:center;gap:10px;padding:0 10px 0 14px;transition:border-color .2s,box-shadow .2s;display:flex}.nexora-input-wrap:hover{border-color:var(--app-primary-border)}.nexora-input-wrap:focus-within{border-color:var(--app-primary);box-shadow:0 0 0 3px var(--app-primary-soft)}.nexora-input-wrap.has-error{border-color:var(--app-danger)}.nexora-input-wrap input{width:100%;min-width:0;min-height:46px;color:var(--app-text-strong);background:0 0;border:0;outline:0;padding:0;font-size:15px}.nexora-input-wrap input::placeholder{color:var(--app-text-muted)}.nexora-input-wrap>button{width:44px;height:44px;color:var(--app-text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:0 0 44px;place-items:center;padding:0;display:grid}.nexora-input-wrap>button:hover{color:var(--app-text-strong);background:var(--app-surface-sunken)}.nexora-field-error{color:var(--app-danger-deep);align-items:flex-start;gap:6px;margin:7px 0 0;font-size:12px;font-weight:600;line-height:1.5;display:flex}.nexora-field-error svg{flex:none;margin-top:2px}.auth-form-meta{justify-content:space-between;align-items:center;gap:16px;display:flex}.auth-form-meta-single{justify-content:flex-end}.auth-form-meta>a,.auth-switch-copy button{min-height:44px;color:var(--app-primary-strong);border-radius:9px;align-items:center;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.nexora-check{min-height:44px;color:var(--app-text-secondary);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:inline-flex}.nexora-check input{opacity:0;width:1px;height:1px;position:absolute}.nexora-check>span{border:1px solid var(--app-primary-border);color:#0000;background:var(--app-surface);border-radius:6px;place-items:center;width:20px;height:20px;display:grid}.nexora-check input:checked+span{border-color:var(--app-primary);color:var(--app-text-inverse);background:var(--app-primary)}.nexora-check input:focus-visible+span{outline:3px solid var(--app-primary-light);outline-offset:3px}.terms-check{align-items:flex-start;line-height:1.5}.terms-check>span{flex:0 0 20px;margin-top:1px}.auth-live{min-height:0}.auth-live:empty{display:none}.auth-live p{border:1px solid var(--app-danger);color:var(--app-danger-deep);background:var(--app-danger-soft);border-radius:12px;align-items:flex-start;gap:8px;margin:0;padding:11px 13px;font-size:13px;line-height:1.6;display:flex}.auth-live svg{flex:none;margin-top:1px}.nexora-submit{width:100%;min-height:48px;font-size:15px}.auth-switch-copy{color:var(--app-text-secondary);text-align:center;margin:22px 0 0;font-size:13px;line-height:1.6}.auth-switch-copy button{cursor:pointer;background:0 0;border:0;min-height:auto;padding:5px;display:inline}.auth-availability{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.auth-availability span{border:1px solid var(--app-border);min-height:32px;color:var(--app-text-secondary);background:var(--app-surface);border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:650;display:inline-flex}.auth-availability span:first-child{border-color:var(--app-success-soft);color:var(--app-success-strong);background:var(--app-success-soft)}.password-requirements{color:var(--app-text-muted);flex-wrap:wrap;gap:6px 16px;margin:-10px 0 0;padding:0;font-size:12px;line-height:1.6;list-style:none;display:flex}.password-requirements li:before{background:var(--app-border-strong);content:"";border-radius:50%;width:6px;height:6px;margin:0 7px 1px 0;display:inline-block}.password-requirements li.met{color:var(--app-success-strong)}.password-requirements li.met:before{background:var(--app-success)}.nexora-auth-panel.confirmation-card{width:100%}.nexora-auth-panel .code-inputs{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;width:min(100%,400px);margin:8px auto;display:grid}.nexora-auth-panel .code-inputs input{width:100%;min-width:0}.nexora-auth-panel.confirmation-card .auth-form{width:100%;max-width:440px;margin:26px auto 0}.spin{animation:.8s linear infinite nx-spin}.auth-restoring{min-height:100svh;color:var(--app-text-secondary);background:var(--app-surface-raised);font:600 14px/1.5 var(--ff), system-ui, sans-serif;justify-content:center;align-items:center;gap:10px;display:flex}.setup-home-panel,.setup-device-panel{margin-top:0}.setup-two-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}.home-type-fieldset{border:0;min-width:0;margin:0;padding:0}.home-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-type-grid>button{border:1px solid var(--app-border);min-width:0;min-height:76px;color:var(--app-text-secondary);background:var(--app-surface);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:11px;padding:12px;transition:border-color .2s,background-color .2s,box-shadow .2s;display:flex;position:relative}.home-type-grid>button:hover{border-color:var(--app-primary-border);background:var(--app-surface-raised)}.home-type-grid>button.selected{border-color:var(--app-primary);background:var(--app-surface-hover);box-shadow:0 0 0 2px var(--app-primary-soft)}.home-type-icon{width:40px;height:40px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:11px;flex:0 0 40px;place-items:center;display:grid}.home-type-grid button>span:nth-child(2){gap:3px;min-width:0;display:grid}.home-type-grid strong{color:var(--app-text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.home-type-grid small{font-size:11px}.home-type-check{color:var(--app-primary);position:absolute;top:8px;right:8px}.room-preview{border:1px solid var(--app-primary-soft);background:var(--app-surface-raised);border-radius:14px;gap:12px;padding:16px;display:grid}.room-preview>div{gap:3px;display:grid}.room-preview strong{font-size:13px}.room-preview small{color:var(--app-text-muted);font-size:11px}.room-preview ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.room-preview li{border:1px solid var(--app-primary-soft);color:var(--app-primary-deep);background:var(--app-surface);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:650}.setup-navigation{grid-template-columns:minmax(110px,.35fr) 1fr;gap:12px;display:grid}.setup-navigation-back-only{grid-template-columns:minmax(150px,.35fr);margin-top:18px}.nexora-back{border:1px solid var(--app-border-strong);min-height:48px;color:var(--app-text-secondary);background:var(--app-surface);cursor:pointer;border-radius:12px;padding:0 18px;font-weight:700}.nexora-back:hover{border-color:var(--app-primary-border);background:var(--app-surface-raised)}.pairing-status{border:1px solid var(--app-success-soft);color:var(--app-success-strong);background:var(--app-success-soft);border-radius:16px;align-items:flex-start;gap:12px;margin-top:24px;padding:16px;display:flex}.pairing-status>span{width:42px;height:42px;color:var(--app-text-inverse);background:var(--app-success);border-radius:12px;flex:0 0 42px;place-items:center;display:grid}.pairing-status strong{color:var(--app-success-strong)}.pairing-status p{margin:4px 0 0;font-size:12px}.pairing-options{gap:10px;margin-top:18px;display:grid}.pairing-options article{border:1px solid var(--app-border);background:var(--app-surface);border-radius:14px;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.pairing-options article>span{width:42px;height:42px;color:var(--app-primary);background:var(--app-surface-hover);border-radius:12px;flex:0 0 42px;place-items:center;display:grid}.pairing-options article>div{flex:1;min-width:0}.pairing-options strong{font-size:13px}.pairing-options p{color:var(--app-text-muted);margin:3px 0 0;font-size:11px}.pairing-options small{color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:999px;flex:none;padding:5px 8px;font-weight:700}.pairing-boundary{border:1px solid var(--app-warning-soft);color:var(--app-warning-deep);background:var(--app-warning-soft);border-radius:12px;align-items:flex-start;gap:10px;margin:18px 0;padding:13px;display:flex}.pairing-boundary svg{flex:none;margin-top:2px}.pairing-boundary p{margin:0;font-size:12px;line-height:1.55}@keyframes nx-enter-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes nx-enter-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes nx-preview{0%{opacity:0;transform:translateY(34px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes nx-spin{to{transform:rotate(360deg)}}@media (width<=960px){.landing-links{display:none}.landing-menu-button{display:grid}.landing-actions{margin-left:auto}.nexora-setup-page{display:block}.setup-context{display:none}.setup-content{min-height:100svh;padding-top:20px}.setup-mobile-brand{margin-bottom:24px;display:block}}@media (width<=640px){.landing-header{padding:0 10px}.landing-nav{min-height:64px;padding:0 10px 0 12px}.landing-brand{font-size:14px}.landing-brand>span{flex-basis:36px;width:36px;height:36px}.landing-start{padding:0 14px}.landing-hero{padding:112px 16px 44px}.landing-hero>h1{font-size:clamp(2.3rem,11vw,3rem)}.hero-badge{max-width:100%;font-size:11px}.hero-actions{flex-direction:column}.hero-primary,.hero-secondary{width:100%}.hero-trust{gap:9px 15px}.hero-trust li{font-size:11px}.landing-preview-frame{border-radius:18px;padding:5px}.preview-browser-bar{height:24px}.preview-browser-bar span{width:76px}.setup-content{padding:16px 16px 36px}.setup-stepper{margin-bottom:22px}.setup-stepper li small{font-size:10px}.setup-form-shell{margin-top:0}.nexora-auth-panel{margin-top:22px}.auth-form-meta{flex-direction:column;align-items:flex-start;gap:2px}.setup-two-columns,.home-type-grid{grid-template-columns:1fr}.home-type-grid{max-height:310px;padding:3px;overflow-y:auto}.setup-navigation{grid-template-columns:1fr}.setup-navigation .nexora-back{order:2}.pairing-options article{align-items:flex-start}.pairing-options small{font-size:9px}}@media (height<=720px) and (width>=768px){.landing-hero{padding-top:104px}.landing-preview{max-width:900px;margin-top:20px}.setup-context{min-height:100svh}.setup-content{padding-top:20px;padding-bottom:30px}}@media (prefers-reduced-motion:reduce){.nexora-landing *,.nexora-landing :before,.nexora-landing :after,.nexora-setup-page *,.nexora-setup-page :before,.nexora-setup-page :after,.spin{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.landing-media video{display:none}}.nexora-brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.homemind-landing{min-height:100svh;color:var(--app-text);background:var(--app-bg);overflow-x:clip}.homemind-landing[data-leaving=true]{pointer-events:none}.homemind-landing .landing-header{z-index:30;padding:0 20px;animation:none;position:fixed;inset:16px 0 auto}.homemind-landing .landing-nav{background:#142c54e0;border-color:#ffffff5e;width:min(100%,1180px);min-height:66px;box-shadow:0 18px 52px #07142b57}.homemind-landing .nexora-brand{color:var(--app-on-dark)}.homemind-landing .nexora-brand-mark{background:var(--app-surface);padding:0;overflow:hidden}.homemind-landing .nexora-brand-mark img{width:100%;height:100%;display:block}.homemind-landing .landing-main{width:100%;overflow:clip}.homemind-landing .landing-hero{text-align:left;grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);align-items:center;gap:clamp(38px,7vw,104px);width:min(100%,1280px);min-height:min(880px,100svh);padding:142px 52px 96px;display:grid}.landing-hero-copy{z-index:2;position:relative}.landing-kicker,.landing-section-intro>p:not(.landing-section-lead),.landing-mie-heading>p:first-child,.landing-final-cta p{color:var(--app-primary);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800;line-height:1.5}.homemind-landing .landing-hero h1{max-width:720px;color:var(--app-text-strong);letter-spacing:-.03em;text-wrap:balance;margin:18px 0 0;font-size:clamp(2.75rem,5vw,5rem);font-weight:800;line-height:1.14;animation:none}.landing-lead{max-width:560px;color:var(--app-text-muted);margin:22px 0 0;font-size:clamp(1rem,1.35vw,1.08rem);line-height:1.85}.homemind-landing .hero-actions{justify-content:flex-start;margin-top:32px;animation:none}.homemind-landing .hero-primary{background:var(--app-primary);border-radius:14px;box-shadow:0 14px 28px #006ffd3b}.homemind-landing .hero-primary:hover{background:var(--app-primary-deep);box-shadow:0 18px 34px #006ffd4d}.homemind-landing .hero-secondary{border-color:var(--app-border-strong);color:var(--app-text-secondary);background:var(--app-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 9px 22px #1a2f5214}.homemind-landing .hero-secondary:hover{border-color:var(--app-primary-border);background:var(--app-bg)}.landing-hero-art{background:linear-gradient(135deg, var(--app-primary-soft), var(--app-surface-raised) 65%);border:1px solid #006ffd2e;border-radius:28px;min-width:0;padding:13px;position:relative;transform:rotate(2deg);box-shadow:0 34px 74px #112d5933}.landing-hero-art:before{z-index:-1;aspect-ratio:1;background:var(--app-primary-border);filter:blur(6px);content:"";border-radius:50%;width:58%;position:absolute;top:-12%;right:-14%}.landing-hero-art-chrome{height:32px;color:var(--app-text-muted);background:var(--app-surface);border-radius:17px 17px 0 0;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:700;display:flex}.landing-hero-art-chrome i{background:var(--app-danger);border-radius:50%;width:8px;height:8px}.landing-hero-art-chrome i:nth-child(2){background:var(--app-warning)}.landing-hero-art-chrome i:nth-child(3){background:var(--app-success)}.landing-hero-art-chrome span{margin-left:auto;margin-right:auto}.landing-hero-art img{border:1px solid var(--app-primary-soft);border-radius:0 0 18px 18px;width:100%;display:block}.landing-marquee{color:var(--app-on-dark);background:var(--app-media-bg);padding:22px 0;overflow:hidden}.landing-marquee-track{width:max-content;animation:28s linear infinite landing-marquee;display:flex}.landing-marquee-track span{white-space:nowrap;align-items:center;gap:34px;padding-left:34px;font-size:15px;font-weight:700;display:inline-flex}.landing-marquee-track i{background:var(--app-primary-light);border-radius:50%;width:6px;height:6px}.landing-chapter{width:min(100%,1180px);margin:0 auto;padding:clamp(112px,14vw,184px) 28px}.landing-section-intro{max-width:760px}.landing-section-intro h2,.landing-spaces-copy h2,.landing-mie-heading h2,.landing-final-cta h2{color:var(--app-text-strong);letter-spacing:-.024em;text-wrap:balance;margin:18px 0 0;font-size:clamp(2rem,3.4vw,3.3rem);font-weight:800;line-height:1.2}.landing-bento-grid{grid-auto-flow:dense;grid-template-rows:repeat(2,minmax(230px,auto));grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:52px;display:grid}.landing-bento-card{border:1px solid var(--app-border);background:var(--app-surface);border-radius:24px;min-width:0;padding:28px;transition:transform .25s,box-shadow .25s,border-color .25s;overflow:hidden;box-shadow:0 15px 34px #1c36600e}.landing-bento-card:hover{border-color:var(--app-primary-border);transform:translateY(-4px);box-shadow:0 24px 44px #1c36601f}.landing-bento-card h3{color:var(--app-text-strong);letter-spacing:-.03em;margin:18px 0 0;font-size:21px}.landing-bento-card p{color:var(--app-text-muted);margin:10px 0 0;font-size:14px;line-height:1.7}.landing-card-icon{width:44px;height:44px;color:var(--app-primary);background:var(--app-primary-soft);border-radius:13px;place-items:center;display:grid}.landing-bento-dashboard{background:linear-gradient(145deg, var(--app-surface-hover), var(--app-surface));grid-area:span 2/span 7;grid-template-columns:minmax(180px,.6fr) minmax(310px,1fr);align-items:end;gap:22px;display:grid;position:relative}.landing-bento-dashboard img{border:1px solid var(--app-primary-soft);border-radius:15px;width:100%;min-width:0;transition:transform .5s;box-shadow:0 16px 30px #11396f21}.landing-bento-dashboard:hover img{transform:scale(1.035)}.landing-bento-mie,.landing-bento-energy{grid-column:span 5}.landing-bento-mie{color:var(--app-on-dark);background:radial-gradient(circle at 100% 0, var(--app-primary-light), transparent 46%), var(--app-media-bg)}.landing-bento-mie p,.landing-bento-mie strong{color:var(--app-on-dark)}.landing-mie-mini-head{align-items:center;gap:8px;display:flex}.landing-mie-mini-head>span{width:34px;height:34px;color:var(--app-primary);background:var(--app-surface);border-radius:10px;place-items:center;display:grid}.landing-mie-mini-head small{color:var(--app-on-dark-muted);margin-left:auto;font-size:10px}.landing-mini-user,.landing-mini-mie{border-radius:12px;width:fit-content;max-width:92%;padding:9px 11px;font-size:11px!important}.landing-mini-user{background:#ffffff2b;margin:20px 0 0 auto!important}.landing-mini-mie{background:#ffffff14}.landing-card-caption{color:var(--app-on-dark-muted);margin-top:16px;font-size:10px;font-weight:700;display:block}.landing-bento-energy{grid-template-columns:145px 1fr;align-items:center;gap:18px;display:grid}.landing-energy-sample{pointer-events:none;transform-origin:100%;width:132%;transform:scale(.76)}.landing-energy-sample .energy-kpi-grid{grid-template-columns:repeat(2,minmax(130px,1fr));gap:7px}.landing-energy-sample .energy-kpi-card{border-radius:11px;min-height:88px;padding:10px}.landing-energy-sample .energy-kpi-card strong{font-size:15px}.landing-energy-sample .energy-kpi-card small,.landing-energy-sample .energy-kpi-card span{font-size:8px}.landing-energy-sample .energy-kpi-icon{width:28px;height:28px}.landing-accordion-chapter{padding-top:42px}.landing-feature-accordion{gap:10px;height:390px;margin-top:52px;display:flex}.landing-feature-accordion>button{border:1px solid var(--app-primary-soft);min-width:74px;color:var(--app-text-secondary);background:linear-gradient(155deg, var(--app-surface-raised), var(--app-primary-soft));text-align:left;cursor:pointer;border-radius:20px;flex:1;align-items:flex-end;gap:14px;padding:24px;transition:flex .55s cubic-bezier(.2,.8,.2,1),background .25s,border-color .25s;display:flex;overflow:hidden}.landing-feature-accordion>button:hover,.landing-feature-accordion>button.active{border-color:var(--app-primary-border);background:linear-gradient(145deg, var(--app-primary), var(--app-primary-deep));color:var(--app-text-inverse);flex:4.5}.landing-feature-icon{width:42px;height:42px;color:var(--app-primary);background:var(--app-surface);border-radius:13px;flex:0 0 42px;place-items:center;display:grid}.landing-feature-copy{opacity:0;gap:9px;min-width:0;transition:opacity .25s .1s,transform .35s .1s;display:grid;transform:translate(16px)}.landing-feature-accordion>button.active .landing-feature-copy,.landing-feature-accordion>button:hover .landing-feature-copy{opacity:1;transform:translate(0)}.landing-feature-copy strong{font-size:20px}.landing-feature-copy>span{max-width:330px;font-size:13px;line-height:1.65}.landing-feature-copy small{max-width:340px;color:inherit;opacity:.78;font-size:11px;line-height:1.6}.landing-feature-arrow{opacity:0;align-self:flex-start;margin-left:auto;transition:opacity .2s}.landing-feature-accordion>button.active .landing-feature-arrow,.landing-feature-accordion>button:hover .landing-feature-arrow{opacity:1}.landing-mie-story{width:100%;max-width:none;color:var(--app-on-dark);background:var(--app-media-bg);padding:clamp(120px,16vw,210px) max(28px,50% - 562px)}.landing-mie-layout{grid-template-columns:minmax(310px,.78fr) minmax(0,1fr);gap:clamp(54px,10vw,150px);max-width:1180px;margin:auto;display:grid}.landing-mie-heading{align-self:start;padding-top:28px}.landing-mie-heading>p:first-child{color:var(--app-on-dark-accent)}.landing-mie-heading h2{color:var(--app-on-dark)}.landing-mie-word-reveal{color:var(--app-on-dark-muted);margin:32px 0 0;font-size:16px;font-weight:700;line-height:1.75}.landing-mie-word-reveal span{opacity:.22}.landing-mie-modes{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff12;border:1px solid #b4dbff40;border-radius:25px;padding:18px;box-shadow:0 28px 70px #00000038}.landing-mie-mode-tabs{background:#0000002e;border-radius:13px;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;display:grid}.landing-mie-mode-tabs button{min-height:40px;color:var(--app-on-dark-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:700;display:inline-flex}.landing-mie-mode-tabs button[aria-selected=true]{color:var(--app-text-secondary);background:var(--app-surface);box-shadow:0 3px 10px #00000026}.landing-mie-conversation{min-height:294px;color:var(--app-text-strong);background:var(--app-surface);border-radius:17px;margin-top:14px;padding:18px}.landing-mie-conversation header{align-items:center;gap:9px;display:flex}.landing-mie-conversation header>span{width:36px;height:36px;color:var(--app-text-inverse);background:var(--app-primary);border-radius:11px;place-items:center;display:grid}.landing-mie-conversation header div{gap:1px;display:grid}.landing-mie-conversation header small{color:var(--app-text-subtle);font-size:10px}.landing-mie-conversation header em{color:var(--app-primary);background:var(--app-primary-soft);border-radius:999px;margin-left:auto;padding:5px 8px;font-size:10px;font-style:normal;font-weight:700}.landing-mie-dialogue{gap:12px;margin-top:30px;display:grid}.landing-mie-dialogue p{border-radius:13px;max-width:84%;margin:0;padding:11px 13px;font-size:12px;line-height:1.6}.landing-mie-dialogue .from-user{color:var(--app-text-inverse);background:var(--app-primary);justify-self:end}.landing-mie-dialogue .from-mie{background:var(--app-surface-hover)}.landing-mie-conversation footer{border-top:1px solid var(--app-border);color:var(--app-text-muted);align-items:center;gap:8px;margin-top:26px;padding-top:13px;font-size:10px;line-height:1.45;display:flex}.landing-mie-conversation footer svg{color:var(--app-success-strong);margin-left:auto}.landing-experience{padding-top:90px}.landing-demo-carousel{grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;gap:18px;max-width:780px;margin:54px auto 0;display:grid}.landing-demo-carousel>button{border:1px solid var(--app-primary-soft);width:52px;height:52px;color:var(--app-primary);background:var(--app-surface);cursor:pointer;border-radius:50%;place-items:center;transition:background .2s,color .2s,transform .2s;display:grid}.landing-demo-carousel>button:hover{color:var(--app-text-inverse);background:var(--app-primary);transform:translateY(-2px)}.landing-demo-carousel>div{border:1px solid var(--app-primary-soft);background:linear-gradient(145deg, var(--app-surface-hover), var(--app-surface));border-radius:24px;min-height:220px;padding:34px}.landing-demo-carousel span{color:var(--app-primary);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800}.landing-demo-carousel strong{color:var(--app-text-strong);margin-top:10px;font-size:25px;display:block}.landing-demo-carousel p{color:var(--app-text-secondary);margin:20px 0 0;font-size:16px;font-weight:650}.landing-demo-carousel small{color:var(--app-text-muted);margin-top:12px;font-size:12px;line-height:1.7;display:block}.landing-final-cta{width:min(100% - 56px,1124px);color:var(--app-on-dark);background:radial-gradient(circle at 92% 0, var(--app-primary-light), transparent 34%), var(--app-media-bg);border-radius:30px;justify-content:space-between;align-items:end;gap:30px;margin:0 auto clamp(72px,10vw,120px);padding:clamp(44px,7vw,82px);display:flex}.landing-final-cta p{color:var(--app-on-dark-accent)}.landing-final-cta h2{max-width:650px;color:var(--app-on-dark)}.landing-final-cta .hero-primary{color:var(--app-primary);background:var(--app-surface);box-shadow:none;flex:none}.landing-final-cta .hero-primary:hover{background:var(--app-primary-soft)}.landing-footer{border-top:1px solid var(--app-border);color:var(--app-text-muted);background:var(--app-surface);grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:30px max(28px,50% - 562px);font-size:12px;display:grid}.landing-footer .nexora-brand-mark{padding:0;overflow:hidden}.landing-footer .nexora-brand-mark img{width:100%;height:100%}.landing-footer a{color:var(--app-primary);font-weight:700;text-decoration:none}@keyframes landing-marquee{to{transform:translate(-50%)}}@media (width<=959px){.homemind-landing .landing-hero{grid-template-columns:1fr;min-height:auto;padding-top:136px}.landing-hero-copy{max-width:730px}.landing-hero-art{max-width:720px}.landing-bento-dashboard{grid-area:span 1/span 12}.landing-bento-mie,.landing-bento-energy{grid-column:span 6}.landing-mie-layout{grid-template-columns:1fr}.landing-mie-heading{padding:0}.landing-mie-story{padding-left:28px;padding-right:28px}.landing-mie-layout{max-width:720px}.landing-footer{grid-template-columns:auto 1fr}.landing-footer a{grid-column:1/-1}}@media (width<=680px){.homemind-landing .landing-header{padding:0 10px}.homemind-landing .landing-nav{min-height:62px}.homemind-landing .landing-hero{gap:38px;padding:116px 20px 68px}.homemind-landing .landing-hero h1{max-width:none;font-size:clamp(2.25rem,11vw,3.4rem)}.landing-lead{font-size:15px}.homemind-landing .hero-actions{align-items:stretch}.landing-chapter{padding:94px 20px}.landing-section-intro h2,.landing-spaces-copy h2,.landing-mie-heading h2,.landing-final-cta h2{font-size:clamp(1.85rem,8.5vw,2.75rem)}.landing-bento-grid{grid-template-rows:none;grid-template-columns:1fr;margin-top:36px}.landing-bento-dashboard,.landing-bento-mie,.landing-bento-energy{grid-area:auto}.landing-bento-dashboard,.landing-bento-energy{grid-template-columns:1fr}.landing-bento-dashboard img{margin-top:12px}.landing-energy-sample{transform-origin:0 0;width:100%;margin-bottom:-42px;transform:scale(.88)}.landing-feature-accordion{gap:9px;height:auto;margin-top:36px;display:grid}.landing-feature-accordion>button,.landing-feature-accordion>button.active{min-height:94px;color:var(--app-text-secondary);background:var(--app-surface);flex:none;align-items:center;padding:18px}.landing-feature-accordion>button.active{border-color:var(--app-primary-border);background:var(--app-surface-hover)}.landing-feature-copy,.landing-feature-accordion>button.active .landing-feature-copy{opacity:1;transform:none}.landing-feature-copy>span,.landing-feature-copy small{display:none}.landing-feature-arrow,.landing-feature-accordion>button.active .landing-feature-arrow{opacity:1;color:var(--app-primary)}.landing-mie-story{padding:96px 20px}.landing-mie-mode-tabs button{font-size:10px}.landing-mie-mode-tabs button svg{display:none}.landing-demo-carousel{grid-template-columns:42px minmax(0,1fr) 42px;gap:8px;margin-top:36px}.landing-demo-carousel>button{width:42px;height:42px}.landing-demo-carousel>div{min-height:240px;padding:24px}.landing-final-cta{border-radius:24px;flex-direction:column;align-items:flex-start;width:calc(100% - 40px);padding:34px 26px}.landing-final-cta .hero-primary{width:100%}.landing-footer{grid-template-columns:1fr;gap:15px;padding:28px 20px;display:grid}.landing-footer a{grid-column:auto}}@media (prefers-reduced-motion:reduce){.homemind-landing *,.homemind-landing :before,.homemind-landing :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.landing-mie-word-reveal span{opacity:1}}.homemind-landing{background:radial-gradient(circle at 84% 8%, #2a6ac961, transparent 25%), radial-gradient(circle at 14% 34%, #006ffd2b, transparent 28%), var(--app-media-bg)}.homemind-landing:before{z-index:0;content:"";pointer-events:none;background-image:linear-gradient(#b4dbff0b 1px,#0000 1px),linear-gradient(90deg,#b4dbff0b 1px,#0000 1px);background-size:42px 42px;position:fixed;inset:0}.homemind-landing>*{z-index:1;position:relative}.homemind-landing .landing-hero{min-height:min(820px,100svh)}.homemind-landing .landing-hero h1{color:var(--app-on-dark)}.homemind-landing .landing-lead{color:var(--app-on-dark-muted)}.homemind-landing .landing-kicker{color:var(--app-on-dark-accent)}.landing-hero-art{background:radial-gradient(circle at 50% 43%, #4189f459, transparent 24%), radial-gradient(circle at 50% 50%, #133568e6, var(--app-media-bg) 70%);border-color:#8fc0ff52;place-items:center;min-height:430px;display:grid;transform:rotate(2deg);box-shadow:0 34px 74px #00000052}.landing-hero-art:after{content:"";border:1px solid #b8dcff29;border-radius:50%;position:absolute;inset:10%}.landing-hero-art-chrome,.landing-hero-art>img{display:none}.landing-hero-art-orbit{border:1px solid #a1cdff57;border-radius:50%;position:absolute}.landing-hero-art-orbit.orbit-one{aspect-ratio:1;width:75%}.landing-hero-art-orbit.orbit-two{aspect-ratio:1;border-style:dashed;width:48%;animation:18s linear infinite landing-orbit}.landing-hero-art-home{z-index:2;background:linear-gradient(145deg, var(--app-primary), var(--app-primary-light));border:1px solid #ffffff7a;border-radius:34px;place-items:center;width:122px;height:122px;display:grid;position:relative;box-shadow:0 0 0 16px #006ffd21,0 20px 40px #0000004d}.landing-hero-art-home img{width:84px;height:84px;display:block}.landing-hero-art-node{z-index:3;border:3px solid var(--app-primary-soft);background:var(--app-primary);width:13px;height:13px;box-shadow:0 0 16px var(--app-primary-light);border-radius:50%;position:absolute}.landing-hero-art-node:after{content:"";background:linear-gradient(90deg,#8fc0ffcc,#0000);width:92px;height:1px;position:absolute;top:50%}.node-one{top:23%;right:20%}.node-one:after{transform-origin:100%;right:100%;transform:rotate(30deg)}.node-two{bottom:22%;left:19%}.node-two:after{transform-origin:0;left:100%;transform:rotate(-27deg)}.node-three{bottom:18%;right:22%}.node-three:after{transform-origin:100%;right:100%;transform:rotate(-52deg)}.homemind-landing .landing-section-intro h2,.homemind-landing .landing-spaces-copy h2{color:var(--app-on-dark)}.homemind-landing .landing-section-intro>p:not(.landing-section-lead){color:var(--app-on-dark-accent)}.landing-bento-card{border-color:#b4dbff33;box-shadow:0 16px 38px #00000026}.landing-bento-dashboard{color:var(--app-on-dark-muted);background:radial-gradient(circle at 76% 25%, #458df661, transparent 30%), var(--app-text-secondary);grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr)}.landing-bento-dashboard h3{color:var(--app-on-dark)}.landing-bento-dashboard p{color:var(--app-on-dark-muted)}.landing-overview-orbit{place-items:center;min-height:170px;display:grid;position:relative}.landing-overview-orbit:before,.landing-overview-orbit:after,.landing-overview-orbit i{content:"";border:1px solid #b6daff47;border-radius:50%;position:absolute}.landing-overview-orbit:before{width:160px;height:160px}.landing-overview-orbit:after{border-style:dashed;width:104px;height:104px}.landing-overview-orbit i{background:var(--app-primary);width:50px;height:50px;box-shadow:0 0 0 11px #006ffd2b,0 0 30px #4496ffbf}.landing-overview-orbit span{z-index:2;width:40px;height:40px;color:var(--app-on-dark);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#ffffff24;border:1px solid #ffffff52;border-radius:13px;place-items:center;display:grid;position:absolute}.landing-overview-orbit span:first-child{top:6%;left:10%}.landing-overview-orbit span:nth-child(2){bottom:18%;right:5%}.landing-overview-orbit span:nth-child(3){top:18%;right:13%}.landing-accordion-chapter{background:linear-gradient(#0000,#0c2143ad,#0000)}.landing-feature-accordion>button{border-color:var(--app-on-dark-border);color:var(--app-on-dark-muted);background:#ffffff14}.landing-feature-accordion>button:hover,.landing-feature-accordion>button.active{border-color:var(--app-primary-light);background:linear-gradient(145deg, var(--app-primary), var(--app-primary-deep))}.landing-feature-icon{color:var(--app-primary);background:var(--app-surface)}.landing-feature-copy small{color:inherit}.landing-mie-story{background:radial-gradient(circle at 83% 22%, #006ffd52, transparent 27%), var(--app-media-bg)}.landing-mie-conversation.has-live2d{grid-template-rows:auto minmax(245px,1fr) auto;display:grid}.landing-mie-live2d{border:1px solid var(--app-primary-soft);background:radial-gradient(circle at 50% 38%, var(--app-info), var(--app-media-bg) 70%);border-radius:15px;min-height:245px;margin-top:12px;position:relative;overflow:hidden}.landing-mie-live2d:after{content:"";pointer-events:none;background:linear-gradient(#0000,#102131bf);height:30%;position:absolute;inset:auto 0 0}.landing-mie-live2d .mie-live2d,.landing-mie-live2d .mie-live2d-canvas{width:100%;height:100%}.landing-mie-live2d .mie-live2d-canvas{transform-origin:bottom;position:absolute;inset:0;transform:scale(1.08)}.landing-experience{background:linear-gradient(#0000,#193b6f7a)}.landing-demo-carousel>div{border-color:var(--app-on-dark-border);background:var(--app-surface)}.landing-final-cta{background:radial-gradient(circle at 92% 0, var(--app-primary-light), transparent 34%), var(--app-media-bg);border:1px solid #8fc0ff57}.landing-footer{border-color:var(--app-on-dark-border);color:var(--app-on-dark-muted);background:var(--app-media-bg)}.landing-footer .nexora-brand{color:var(--app-on-dark)}@keyframes landing-orbit{to{transform:rotate(360deg)}}@media (width<=680px){.landing-hero-art{min-height:320px}.landing-hero-art-home{border-radius:28px;width:96px;height:96px}.landing-hero-art-home img{width:66px;height:66px}.landing-bento-dashboard{grid-template-columns:1fr}.landing-overview-orbit{min-height:150px}.landing-mie-live2d{min-height:220px}}.landing-mie-story{z-index:1;position:relative;overflow:clip}.landing-mie-heading{z-index:1;position:relative}.landing-mie-modes{z-index:3;position:relative}.landing-mie-mode-tabs{z-index:5;position:sticky;top:18px}.landing-experience{z-index:2;background:radial-gradient(circle at 86% 18%,#006ffd66,#0000 28%),linear-gradient(145deg,#15376cf7,#0b1d3dfa);border:1px solid #8fc0ff42;border-radius:36px;width:min(100% - 56px,1440px);min-height:1040px;margin:0 auto clamp(72px,10vw,120px);padding:clamp(108px,12vw,172px) clamp(32px,8vw,132px) 66px;position:relative;overflow:clip;box-shadow:0 32px 86px #00000040}.landing-experience:before{opacity:.22;content:"";pointer-events:none;background-image:linear-gradient(#a4cfff47 1px,#0000 1px),linear-gradient(90deg,#a4cfff47 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0}.landing-experience>*{z-index:1;position:relative}.landing-experience .landing-section-intro{max-width:920px}.landing-experience .landing-demo-carousel{max-width:920px;margin-top:clamp(64px,9vw,124px)}.landing-experience .landing-final-cta{width:100%;margin:clamp(180px,20vw,286px) 0 0}@media (width<=680px){.landing-mie-mode-tabs{position:static}.landing-experience{border-radius:24px;width:calc(100% - 24px);min-height:0;margin-bottom:48px;padding:76px 20px 20px}.landing-experience .landing-demo-carousel{margin-top:44px}.landing-experience .landing-final-cta{width:100%;margin-top:82px}}@media (prefers-reduced-motion:reduce){.landing-hero-art-orbit.orbit-two{animation:none}}.nexora-setup-page,.auth-layout,.auth-page{background:var(--app-bg);color:var(--app-text)}.setup-theme-toggle,.auth-theme-toggle{z-index:90;position:fixed;top:20px;right:20px}.nexora-setup-page .setup-theme-toggle{color:var(--app-on-dark);border-color:var(--app-on-dark-border);box-shadow:none;background:#0a1830b3}:root[data-theme=light] .homemind-landing{color:var(--app-text-strong);background:radial-gradient(circle at 84% 8%, #60a5fa42, transparent 28%), radial-gradient(circle at 14% 34%, #bfdbfebf, transparent 32%), var(--app-primary-soft)}:root[data-theme=light] .homemind-landing:before{background-image:linear-gradient(#006ffd0f 1px,#0000 1px),linear-gradient(90deg,#006ffd0f 1px,#0000 1px)}:root[data-theme=light] .homemind-landing .landing-nav{background:#fffffff0;border-color:#0d1d3880;box-shadow:0 18px 52px #1c4a842e}:root[data-theme=light] .homemind-landing .nexora-brand{color:var(--app-text-strong)}:root[data-theme=light] .homemind-landing .landing-links button{color:var(--app-text-secondary)}:root[data-theme=light] .homemind-landing .landing-links button:hover,:root[data-theme=light] .homemind-landing .landing-menu-button:hover{color:var(--app-text-strong);background:var(--app-primary-soft)}:root[data-theme=light] .homemind-landing .landing-menu-button{color:var(--app-text-strong)}:root[data-theme=light] .homemind-landing .landing-mobile-menu{border-color:#0d1d3880;box-shadow:0 24px 60px #1c4a8438}:root[data-theme=light] .homemind-landing .theme-toggle{color:var(--app-text-secondary);border-color:var(--app-border-strong);background:var(--app-surface-raised);box-shadow:none}:root[data-theme=light] .homemind-landing .landing-hero h1,:root[data-theme=light] .homemind-landing .landing-section-intro h2,:root[data-theme=light] .homemind-landing .landing-spaces-copy h2{color:var(--app-text-strong)}:root[data-theme=light] .homemind-landing .landing-lead{color:var(--app-text-secondary)}:root[data-theme=light] .homemind-landing .landing-kicker,:root[data-theme=light] .homemind-landing .landing-section-intro>p:not(.landing-section-lead){color:var(--app-primary)}:root[data-theme=light] .homemind-landing .landing-hero-art{background:radial-gradient(circle at 50% 43%, #60a5fa73, transparent 24%), linear-gradient(145deg, var(--app-primary-soft), var(--app-surface-raised) 70%);border-color:#006ffd33;box-shadow:0 34px 74px #1c4a842e}:root[data-theme=light] .homemind-landing .landing-hero-art:after,:root[data-theme=light] .homemind-landing .landing-hero-art-orbit{border-color:#006ffd40}:root[data-theme=light] .homemind-landing .landing-marquee,:root[data-theme=light] .homemind-landing .landing-mie-story{background:linear-gradient(135deg, var(--app-primary-deep), var(--app-media-bg))}:root[data-theme=light] .homemind-landing .landing-bento-dashboard{background:linear-gradient(145deg, var(--app-primary-soft), var(--app-surface-raised));color:var(--app-text-strong)}:root[data-theme=light] .homemind-landing .landing-bento-dashboard h3{color:var(--app-text-strong)}:root[data-theme=light] .homemind-landing .landing-bento-dashboard p{color:var(--app-text-secondary)}:root[data-theme=light] .homemind-landing .landing-feature-accordion>button{color:var(--app-text-secondary);border-color:var(--app-primary-border);background:#ffffffb8}:root[data-theme=light] .homemind-landing .landing-accordion-chapter{background:linear-gradient(#0000,#bfdbfe80,#0000)}:root[data-theme=light] .homemind-landing .landing-experience{border-color:var(--app-primary-border);background:radial-gradient(circle at 86% 18%, #60a5fa54, transparent 28%), linear-gradient(145deg, var(--app-primary-soft), var(--app-surface-hover));box-shadow:0 32px 86px #1c4a8429}:root[data-theme=light] .homemind-landing .landing-experience:before{opacity:.15}:root[data-theme=light] .homemind-landing .landing-final-cta{border-color:var(--app-primary-light);background:radial-gradient(circle at 92% 0, var(--app-primary-light), transparent 36%), var(--app-primary-deep)}:root[data-theme=light] .homemind-landing .landing-footer{color:var(--app-info);border-color:var(--app-primary-border);background:var(--app-surface-raised)}:root[data-theme=light] .homemind-landing .landing-footer .nexora-brand{color:var(--app-text-strong)}@media (width<=680px){.setup-theme-toggle,.auth-theme-toggle{top:12px;right:12px}}:root[data-theme=light] .homemind-landing .landing-mie-mode-tabs button[aria-selected=true]{color:var(--app-primary-strong)}.landing-section-intro>h2:first-child{margin-top:0}.landing-modules{padding-top:clamp(70px,8.5vw,116px)}.landing-panel{border:1px solid var(--app-border);border-radius:24px;margin-top:clamp(38px,4.4vw,58px);overflow:hidden;box-shadow:0 28px 66px #08163042}.landing-panel-grid{grid-auto-flow:dense;background:var(--app-border);grid-template-columns:repeat(12,minmax(0,1fr));gap:1px;display:grid}.landing-panel-cell{background:var(--app-surface-raised);align-content:start;gap:clamp(18px,1.8vw,26px);min-height:214px;padding:clamp(22px,2.2vw,30px);transition:background .34s cubic-bezier(.32,.72,0,1);display:grid}.landing-panel-cell:hover{background:var(--app-surface)}.cell-schedule{grid-column:span 7}.cell-energy{grid-column:span 5}.cell-alerts,.cell-members,.cell-sim{grid-column:span 4}.landing-panel-cell>header{align-items:center;gap:11px;display:flex}.landing-panel-icon{width:30px;height:30px;color:var(--app-primary-strong);background:var(--app-primary-soft);border-radius:10px;place-items:center;display:grid}.landing-panel-cell h3{color:var(--app-text-strong);letter-spacing:-.004em;margin:0;font-size:15px;font-weight:700;line-height:1.6}.landing-panel-cell>header small{color:var(--app-text-muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;margin-left:auto;font-size:11.5px}.landing-schedule{gap:13px;display:grid}.landing-schedule-row{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;display:grid}.landing-schedule-row b{color:var(--app-text-muted);font-variant-numeric:tabular-nums;letter-spacing:.015em;font-size:12px;font-weight:600}.landing-schedule-track{background:var(--app-surface-sunken);border-radius:999px;height:8px;position:relative}.landing-schedule-track i{background:linear-gradient(90deg, var(--app-primary), var(--app-primary-strong));border-radius:999px;height:100%;position:absolute;top:0}.landing-schedule-row em{color:var(--app-text-secondary);white-space:nowrap;font-size:12.5px;font-style:normal;line-height:1.6}.landing-spark{gap:18px;display:grid}.landing-spark-figure{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.landing-spark-figure strong{color:var(--app-text-strong);font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:clamp(1.9rem,2.6vw,2.45rem);font-weight:800;line-height:1.1}.landing-spark-figure span{color:var(--app-text-muted);font-size:12.5px;line-height:1.6}.landing-spark-figure i{color:var(--app-primary-strong);background:var(--app-primary-soft);font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 9px;font-size:11.5px;font-style:normal;line-height:1.5}.landing-spark-bars{border-bottom:1px solid var(--app-border);grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:7px;height:82px;padding-bottom:1px;display:grid}.landing-spark-bars span{background:linear-gradient(180deg, var(--app-primary), var(--app-primary-strong));border-radius:4px 4px 0 0}.landing-alert-stack{gap:9px;margin:0;padding:0;list-style:none;display:grid}.landing-alert-stack li{border:1px solid var(--app-border);border-radius:12px;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;display:grid}.landing-alert-stack i{border-radius:50%;width:8px;height:8px}.landing-alert-stack li[data-level=high] i{background:var(--app-danger)}.landing-alert-stack li[data-level=mid] i{background:var(--app-warning)}.landing-alert-stack li[data-level=low] i{background:var(--app-primary)}.landing-alert-stack span{color:var(--app-text-strong);font-size:12.5px;line-height:1.6}.landing-alert-stack em{color:var(--app-primary-strong);white-space:nowrap;font-size:11.5px;font-style:normal;font-weight:600;line-height:1.5}.landing-seat-row{flex-wrap:wrap;gap:9px;display:flex}.landing-seat{border:1px solid var(--app-border);border-radius:14px;flex:1 1 0;justify-items:center;gap:8px;min-width:58px;padding:13px 7px;display:grid}.landing-seat b{width:34px;height:34px;color:var(--app-primary-strong);background:var(--app-primary-soft);letter-spacing:.04em;border-radius:50%;place-items:center;font-size:12.5px;font-weight:700;display:grid}.landing-seat small{color:var(--app-text-muted);text-align:center;font-size:11px;line-height:1.5}.landing-wave{grid-template-rows:84px auto;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:5px;display:grid}.landing-wave span{background:linear-gradient(180deg, var(--app-accent-violet), var(--app-primary));border-radius:3px 3px 0 0}.landing-wave em{border-top:1px solid var(--app-border);color:var(--app-text-muted);grid-column:1/-1;align-self:start;padding-top:11px;font-size:11.5px;font-style:normal;line-height:1.6}.landing-spaces-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(34px,5vw,74px);display:grid}.landing-spaces-copy .landing-lead{margin-top:18px}.landing-space-highlights{margin:clamp(28px,3vw,42px) 0 0;padding:0;list-style:none;display:grid}.landing-space-highlights li{border-top:1px solid var(--app-border);grid-template-columns:34px minmax(0,1fr);align-items:start;gap:15px;padding:15px 2px;display:grid}.landing-space-highlights li:last-child{border-bottom:1px solid var(--app-border)}.landing-space-bullet{border:1px solid var(--app-border);width:34px;height:34px;color:var(--app-primary-strong);background:var(--app-surface);border-radius:11px;place-items:center;display:grid}.landing-space-text{gap:4px;display:grid}.landing-space-text strong{color:var(--app-text-strong);font-size:14.5px;font-weight:700;line-height:1.6}.landing-space-text>span{color:var(--app-text-secondary);font-size:13px;line-height:1.75}.landing-floorplan{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:22px;padding:16px;box-shadow:0 28px 66px #08163042}.landing-floorplan-bar{color:var(--app-text-strong);letter-spacing:.015em;justify-content:space-between;align-items:center;padding:2px 4px 13px;font-size:12.5px;font-weight:700;display:flex}.landing-floorplan-bar em{color:var(--app-text-muted);font-variant-numeric:tabular-nums;font-size:12px;font-style:normal;font-weight:600}.landing-floorplan-canvas{aspect-ratio:4/3;background-color:var(--app-surface-sunken);background-image:linear-gradient(var(--app-border) 1px, transparent 1px), linear-gradient(90deg, var(--app-border) 1px, transparent 1px);background-size:26px 26px;border-radius:14px;position:relative;overflow:hidden}.landing-floorplan-room{border:1px solid var(--app-border-strong);background:var(--app-surface);border-radius:8px;transition:border-color .3s cubic-bezier(.32,.72,0,1),background .3s cubic-bezier(.32,.72,0,1);position:absolute}.landing-floorplan-room:hover{border-color:var(--app-primary);box-shadow:0 0 0 3px var(--app-primary-soft)}.landing-floorplan-name{color:var(--app-text-strong);font-size:11.5px;font-weight:700;line-height:1.5;position:absolute;top:9px;left:11px}.landing-floorplan-area{color:var(--app-text-muted);font-variant-numeric:tabular-nums;font-size:10.5px;line-height:1.5;position:absolute;bottom:9px;left:11px}.landing-floorplan-pin{width:26px;height:26px;color:var(--app-text-inverse);background:var(--app-primary);border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 18px #08163057}.landing-journey-head{gap:clamp(26px,3vw,38px);display:grid}.landing-stat-rail{border:1px solid var(--app-border);background:var(--app-border);border-radius:16px;grid-auto-columns:1fr;grid-auto-flow:column;gap:1px;margin:0;padding:0;display:grid;overflow:hidden}.landing-stat-rail>div{background:var(--app-surface-raised);align-items:baseline;gap:10px;padding:17px 19px;display:flex}.landing-stat-rail dt{color:var(--app-text-strong);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1.3}.landing-stat-rail dd{color:var(--app-text-muted);margin:0;font-size:12.5px;line-height:1.65}.landing-journey-viewport{margin-top:clamp(36px,4.2vw,56px);overflow:hidden}.landing-journey-track{will-change:transform;gap:18px;display:flex}.landing-journey-panel{border:1px solid var(--app-border);background:var(--app-surface-raised);border-radius:22px;flex:none;align-content:start;gap:13px;width:clamp(272px,30vw,420px);padding:clamp(26px,2.6vw,38px);display:grid}.landing-journey-glyph{width:46px;height:46px;color:var(--app-primary-strong);background:var(--app-primary-soft);border-radius:15px;place-items:center;display:grid}.landing-journey-panel strong{color:var(--app-text-strong);letter-spacing:-.01em;font-size:clamp(1.05rem,1.4vw,1.24rem);font-weight:700;line-height:1.5}.landing-journey-panel p{color:var(--app-text-secondary);margin:0;font-size:13.5px;line-height:1.8}.landing-journey-progress{background:var(--app-border);border-radius:999px;height:2px;margin-top:clamp(24px,2.6vw,34px);overflow:hidden}.landing-journey-progress i{background:linear-gradient(90deg, var(--app-primary), var(--app-accent-violet));transform-origin:0;border-radius:999px;height:100%;display:block;transform:scaleX(.08)}.landing-marquee-track:hover{animation-play-state:paused}.homemind-landing .landing-links button:after{background:var(--app-primary);transform-origin:0;content:"";border-radius:2px;height:2px;transition:transform .28s cubic-bezier(.32,.72,0,1);display:block;transform:scaleX(0)}.homemind-landing .landing-links button:hover:after{transform:scaleX(1)}@media (width>=960px){.landing-journey{align-content:center;min-height:100svh;padding-top:clamp(72px,8vw,112px);padding-bottom:clamp(72px,8vw,112px);display:grid}.landing-journey-viewport{width:100vw;margin-left:calc(50% - 50vw)}.landing-journey-track{width:max-content;padding-left:max(28px,50vw - 562px);padding-right:clamp(28px,6vw,96px)}}@media (width<=959px){.landing-spaces-layout{grid-template-columns:1fr}.cell-schedule,.cell-energy,.cell-alerts{grid-column:span 12}.cell-members,.cell-sim{grid-column:span 6}.landing-journey-viewport{overflow:visible}.landing-journey-track{flex-wrap:wrap;transform:none}.landing-journey-panel{flex:260px;width:auto}.landing-journey-progress{display:none}}@media (width<=680px){.landing-modules{padding-top:62px}.landing-panel{border-radius:18px}.cell-members,.cell-sim{grid-column:span 12}.landing-schedule-row{grid-template-columns:44px minmax(0,1fr)}.landing-schedule-row em{grid-column:2}.landing-stat-rail{grid-auto-flow:row}.landing-floorplan{padding:12px}.landing-floorplan-canvas{aspect-ratio:1}}@media (prefers-reduced-motion:reduce){.landing-journey-viewport{overflow:visible}.landing-journey-track{flex-wrap:wrap}.landing-journey-panel{flex:258px;width:auto}.landing-journey-progress{display:none}}.simulation-page{color:#f8fafc;width:100vw;height:100dvh;min-height:100dvh;font-family:var(--ff), system-ui, sans-serif;background:#0b1220;position:relative;overflow:hidden}.simulation-workspace{grid-template-columns:minmax(0,var(--simulation-log-ratio,38%)) 12px minmax(0,1fr);gap:0;width:100%;height:100%;padding:12px;display:grid}.simulation-workspace[data-view=activity],.simulation-workspace[data-view=layout]{grid-template-columns:minmax(0,1fr)}.simulation-workspace[data-view=activity] :is(.simulation-resize-handle,.home-layout-panel),.simulation-workspace[data-view=layout] :is(.simulation-resize-handle,.activity-panel){display:none}.simulation-panel{background:#111b2d;border:1px solid #94a3b82e;border-radius:20px;min-width:0;min-height:0;overflow:hidden;box-shadow:0 18px 48px #02061747}.simulation-panel-heading{border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:center;gap:14px;min-height:76px;padding:13px 16px;display:flex}.simulation-eyebrow{color:#60a5fa;letter-spacing:.14em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:800;display:block}.simulation-panel-heading h1{color:#f8fafc;letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:20px;line-height:1.2}.simulation-heading-actions,.simulation-layout-actions{flex:none;align-items:center;gap:7px;display:flex}.simulation-panel-control{color:#94a3b8;cursor:pointer;background:#0f172a80;border:1px solid #94a3b82e;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;padding:0;transition:color .2s,border-color .2s,background .2s,transform .2s;display:grid}.simulation-panel-control:hover{color:#bfdbfe;background:#2563eb29;border-color:#60a5fa6b}.simulation-panel-control:active{transform:scale(.96)}.simulation-panel-control:focus-visible{outline-offset:2px;outline:3px solid #60a5fa4d}.simulation-resize-handle{z-index:4;cursor:col-resize;touch-action:none;place-items:center;min-width:12px;display:grid;position:relative}.simulation-resize-handle:before{content:"";background:#94a3b82e;border-radius:999px;width:2px;height:calc(100% - 32px);transition:width .2s,background .2s;position:absolute}.simulation-resize-handle>span{z-index:1;color:#64748b;opacity:.78;background:#111b2d;border:1px solid #94a3b833;border-radius:9px;place-items:center;width:24px;height:42px;transition:color .2s,border-color .2s,opacity .2s,transform .2s;display:grid;position:relative}.simulation-resize-handle:hover:before,.simulation-workspace.is-resizing .simulation-resize-handle:before{background:#3b82f6;width:3px}.simulation-resize-handle:hover>span,.simulation-workspace.is-resizing .simulation-resize-handle>span{color:#93c5fd;opacity:1;border-color:#3b82f6;transform:scale(1.04)}.simulation-resize-handle:focus-visible{outline:0}.simulation-resize-handle:focus-visible>span{outline-offset:2px;outline:3px solid #60a5fa59}.simulation-login-shell{z-index:50;color:#0f172a;width:min(320px,100% - 24px);position:absolute;top:12px;left:12px}.simulation-login-collapsed{color:#0f172a;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border:1px solid #dbe2ea;border-radius:12px;align-items:center;gap:8px;max-width:280px;height:42px;padding:0 12px;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;box-shadow:0 10px 30px #02061733}.simulation-login-collapsed span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:700;overflow:hidden}.simulation-login-collapsed:hover{border-color:#60a5fa;transform:translateY(-1px);box-shadow:0 12px 34px #02061747}.simulation-login-collapsed:active{transform:translateY(0)scale(.99)}.simulation-login-collapsed:focus-visible,.simulation-login-card button:focus-visible,.simulation-login-card input:focus-visible{outline-offset:2px;outline:3px solid #2563eb47}.simulation-login-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffffa;border:1px solid #dbe2ea;border-radius:16px;overflow:hidden;box-shadow:0 18px 46px #02061747}.simulation-login-title{border-bottom:1px solid #e8edf3;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.simulation-login-title>div{align-items:center;gap:9px;min-width:0;display:flex}.simulation-login-title>div>div{gap:2px;min-width:0;display:grid}.simulation-login-title strong{font-size:12px}.simulation-login-title small{color:#64748b;font-size:9px}.simulation-login-title>button,.simulation-password-field button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;width:32px;height:32px;padding:0;display:grid}.simulation-login-title>button:hover,.simulation-password-field button:hover{color:#2563eb;background:#eff6ff}.simulation-login-icon{color:#2563eb;background:#eff6ff;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.simulation-login-form{gap:7px;padding:13px 14px 14px;display:grid}.simulation-login-form label,.simulation-account-panel span{color:#475569;letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800}.simulation-login-form>input,.simulation-password-field{background:#fff;border:1px solid #d8e0e9;border-radius:9px;height:38px}.simulation-login-form>input{color:#0f172a;outline:0;width:100%;padding:0 10px}.simulation-login-form>input:focus,.simulation-password-field:focus-within{border-color:#3b82f6}.simulation-password-field{align-items:center;display:flex}.simulation-password-field input{color:#0f172a;background:0 0;border:0;outline:0;width:100%;min-width:0;height:100%;padding:0 4px 0 10px}.simulation-login-submit,.simulation-logout-button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:9px;height:38px;margin-top:4px;font-size:11px;font-weight:800;transition:background .2s,transform .2s}.simulation-login-submit:hover,.simulation-logout-button:hover{background:#1d4ed8}.simulation-login-submit:active,.simulation-logout-button:active{transform:scale(.99)}.simulation-login-submit:disabled{color:#94a3b8;cursor:not-allowed;background:#e2e8f0}.simulation-login-error{color:#b42318;margin:2px 0;font-size:10px;line-height:1.4}.simulation-account-panel{gap:10px;padding:14px;display:grid}.simulation-account-panel>div{gap:3px;display:grid}.simulation-account-panel strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.simulation-logout-button{color:#b42318;background:#fff0f0;width:100%}.simulation-logout-button:hover{color:#fff;background:#dc2626}.activity-panel{grid-template-rows:auto minmax(0,1fr);display:grid}.activity-panel-heading{min-height:88px}.simulation-realtime-status{color:#94a3b8;background:#0f172a80;border:1px solid #94a3b82e;border-radius:8px;flex:none;align-items:center;gap:6px;padding:6px 8px;font-size:9px;font-weight:700;display:inline-flex}.simulation-realtime-status i{background:#64748b;border-radius:50%;width:7px;height:7px}.simulation-realtime-status.connected{color:#bbf7d0}.simulation-realtime-status.connected i{background:#4ade80;box-shadow:0 0 0 3px #4ade801f}.simulation-realtime-status.disconnected{color:#fecaca}.simulation-realtime-status.disconnected i{background:#f87171}.simulation-activity-list{scrollbar-color:#334155 transparent;min-height:0;padding:12px;overflow-y:auto}.simulation-activity-empty{color:#94a3b8;text-align:center;align-content:center;justify-items:center;height:100%;min-height:18rem;padding:30px;display:grid}.simulation-activity-empty>span{color:#60a5fa;background:#2563eb1a;border:1px solid #60a5fa3d;border-radius:15px;place-items:center;width:54px;height:54px;margin-bottom:14px;display:grid}.simulation-activity-empty strong{color:#e2e8f0;font-size:13px}.simulation-activity-empty p{text-wrap:pretty;max-width:34ch;margin:7px 0 0;font-size:11px;line-height:1.55}.simulation-activity-item{background:#0f172a7a;border:1px solid #94a3b824;border-radius:13px;margin-bottom:8px;transition:border-color .2s,background .2s,transform .2s;position:relative;overflow:hidden}.simulation-activity-item:hover{background:#162337c2;border-color:#60a5fa57;transform:translateY(-1px)}.simulation-activity-item[open]{background:#162337;border-color:#60a5fa59}.simulation-activity-item summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;list-style:none;display:grid}.simulation-activity-item summary::-webkit-details-marker{display:none}.simulation-activity-item summary:focus-visible{outline-offset:-3px;outline:3px solid #60a5fa47}.simulation-activity-item summary>svg{color:#64748b;transition:transform .2s}.simulation-activity-item[open] summary>svg{transform:rotate(180deg)}.simulation-activity-icon{color:#93c5fd;background:#2563eb24;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.simulation-activity-item.automation .simulation-activity-icon{color:#c4b5fd;background:#7c3aed24}.simulation-activity-item.success .simulation-activity-icon{color:#86efac;background:#22c55e1f}.simulation-activity-item.failure .simulation-activity-icon{color:#fca5a5;background:#ef44441f}.simulation-activity-copy{gap:3px;min-width:0;display:grid}.simulation-activity-meta{color:#64748b;font-variant-numeric:tabular-nums;align-items:center;gap:7px;font-size:8px;display:flex}.simulation-activity-meta b{color:#60a5fa;letter-spacing:.09em}.simulation-activity-item.automation .simulation-activity-meta b{color:#a78bfa}.simulation-activity-copy>strong{color:#f1f5f9;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.simulation-activity-copy>small{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.45;overflow:hidden}.simulation-activity-source{color:#cbd5e1;white-space:nowrap;background:#94a3b817;border-radius:6px;padding:5px 7px;font-size:8px;font-weight:700}.simulation-activity-details{gap:0;padding:0 12px 12px 58px;display:grid}.simulation-activity-details div{border-top:1px solid #94a3b81a;grid-template-columns:minmax(7rem,.42fr) minmax(0,1fr);gap:10px;padding:8px 0;display:grid}.simulation-activity-details span{color:#64748b;font-size:9px;font-weight:600}.simulation-activity-details strong{color:#cbd5e1;font-size:9px;font-weight:600;line-height:1.45}.home-layout-panel{grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.simulation-layout-toolbar{border-bottom:1px solid #94a3b824;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px 10px 16px;display:flex}.simulation-layout-toolbar>div:first-child{gap:1px;display:grid}.simulation-layout-toolbar strong{color:#f8fafc;letter-spacing:-.01em;font-size:14px}.simulation-layout-toolbar .simulation-eyebrow{margin:0}.simulation-layout-body{background:var(--app-bg);min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.simulation-layout-blank{width:100%;height:100%;color:var(--app-text-muted);background-color:var(--app-bg);background-image:radial-gradient(var(--app-border) 1px, transparent 1px);text-align:center;background-size:22px 22px;place-content:center;justify-items:center;gap:8px;padding:24px;display:grid}.simulation-layout-blank svg{color:var(--app-primary);margin-bottom:8px}.simulation-layout-blank strong{color:var(--app-text);font-size:15px}.simulation-layout-blank span{max-width:42ch;font-size:11px;line-height:1.5}.simulation-dashboard-layout{width:100%;height:100%;color:var(--app-text);background:var(--app-bg);padding:12px;overflow:auto}.simulation-dashboard-layout>.room-map-card{height:auto;min-height:100%;box-shadow:none}@media (width<=900px){.simulation-workspace{grid-template-columns:minmax(0,1fr)}.simulation-workspace[data-view=split] .activity-panel,.simulation-workspace[data-view=split] .simulation-resize-handle{display:none}}@media (width<=560px){.simulation-workspace{gap:6px;padding:6px}.simulation-panel{border-radius:14px}.simulation-panel-heading{min-height:78px;padding:10px}.simulation-eyebrow{display:none}.simulation-panel-heading h1{font-size:15px}.simulation-realtime-status{padding:5px 6px}.simulation-activity-item summary{grid-template-columns:auto minmax(0,1fr) auto}.simulation-activity-source{display:none}.simulation-activity-details{padding-left:12px}.simulation-activity-details div{grid-template-columns:6rem minmax(0,1fr)}.simulation-login-shell{width:min(280px,100% - 16px);top:8px;left:8px}.simulation-dashboard-layout{padding:6px}.simulation-dashboard-layout .room-map-card{padding:14px}.simulation-dashboard-layout .room-map-header{flex-direction:column}.simulation-dashboard-layout .room-map-header-actions{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.simulation-login-collapsed,.simulation-login-submit,.simulation-logout-button,.simulation-activity-item,.simulation-activity-item summary>svg,.simulation-panel-control,.simulation-resize-handle:before,.simulation-resize-handle>span{transition:none}}
