:root{color:#1b2b32;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-optical-sizing:auto;--ink:#1b2b32;--muted:#89969a;--line:#e9eeee;--green:#177a62;--green-soft:#e9f5f1;--orange:#da8b48;--shadow:0 3px 12px #1a322f09;background:#f5f7f7;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box}body{min-width:350px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #9acdbd}.app-shell{min-height:100vh}.sidebar{z-index:5;background:#fff;border-right:1px solid #edf0f0;flex-direction:column;width:242px;padding:25px 15px 15px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:10px;margin-bottom:34px;padding:0 10px;display:flex}.brand-mark{color:#177a62;background:#e8f4f0;border-radius:11px;place-items:center;width:34px;height:34px;display:grid}.brand b{letter-spacing:-.6px;font:800 16px Manrope,sans-serif}.brand b span{color:#177a62}.brand small{color:#a0aaad;letter-spacing:1.3px;margin-top:2px;font-size:8px;font-weight:700;display:block}.close-menu{display:none!important}.house-picker{border:1px solid #ebf0ef;border-radius:10px;align-items:center;gap:10px;height:58px;margin:0 2px 31px;padding:8px 9px;display:flex}.house-icon{color:#497568;background:#eef4f3;border-radius:9px;place-items:center;width:34px;height:34px;font:700 16px Manrope;display:grid}.house-picker>div:nth-child(2){flex:1}.house-picker small{letter-spacing:.9px;color:#9ca8a9;margin-bottom:3px;font-size:8px;font-weight:700;display:block}.house-picker b{font-size:11px;font-weight:600}.house-picker>svg{color:#9aa5a6}.nav-caption{letter-spacing:1.1px;color:#a7b0b0;padding:0 12px 10px;font-size:9px;font-weight:700}.sidebar nav{gap:4px;display:grid}.nav-item{color:#839093;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;padding:11px 12px;font-size:12px;display:flex;position:relative}.nav-item svg{stroke-width:1.8px}.nav-item:hover{color:#405452;background:#f8faf9}.nav-item.selected{color:#16765e;background:#edf6f3;font-weight:600}.nav-dot{background:#36a17e;border-radius:50%;width:6px;height:6px;position:absolute;right:12px}.sidebar-bottom{margin-top:auto}.support-card{background:#f6f9f8;border:1px solid #eef2f1;border-radius:10px;margin:0 2px 16px;padding:14px 12px 12px}.support-icon{color:#598274;background:#e7f0ec;border-radius:8px;place-items:center;width:27px;height:27px;margin-bottom:10px;display:grid}.support-card>b{font-size:11px;display:block}.support-card>span{color:#899799;margin-top:3px;font-size:9px;display:block}.support-card button{color:#287a65;background:0 0;border:0;align-items:center;gap:3px;padding:10px 0 0;font-size:9px;font-weight:600;display:flex}.profile{border-top:1px solid #eff1f1;align-items:center;gap:9px;padding:13px 6px 0;display:flex}.avatar,.top-avatar{color:#55776c;background:#e8efec;border-radius:50%;place-items:center;font-size:10px;font-weight:700;display:grid}.avatar{width:31px;height:31px}.profile div:nth-child(2){flex:1}.profile b{font-size:10px;display:block}.profile small{color:#95a0a1;font-size:9px}.muted{color:#9da7a8}.main-area{min-height:100vh;margin-left:242px}.topbar{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #edf0f0;justify-content:space-between;align-items:center;height:62px;padding:0 43px;display:flex;position:sticky;top:0}.crumb{color:#929d9e;align-items:center;gap:9px;font-size:10px;display:flex}.crumb b{color:#344348;font-weight:600}.crumb svg{color:#bac2c2}.top-actions{align-items:center;gap:21px;display:flex}.preview-pill{letter-spacing:.7px;color:#8b704e;background:#faf4e9;border:1px solid #f3e9d8;border-radius:5px;align-items:center;gap:6px;padding:6px 9px;font-size:8px;font-weight:700;display:flex}.preview-pill span{background:#d69b4e;border-radius:50%;width:5px;height:5px}.icon-btn{color:#879496;background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.icon-btn:hover{color:#277764;background:#f2f6f5}.notification{position:relative}.notification i{background:#db8158;border:1px solid #fff;border-radius:50%;width:5px;height:5px;position:absolute;top:5px;right:6px}.top-avatar{width:28px;height:28px}.mobile-menu{display:none}.content{max-width:1280px;margin:0 auto;padding:27px 43px 0}.preview-warning{color:#8e7a58;background:#fbf8f1;border:1px solid #f2ead9;border-radius:8px;justify-content:space-between;align-items:center;min-height:39px;margin-bottom:24px;padding:8px 12px;font-size:10px;display:flex}.preview-warning>div{align-items:center;gap:8px;display:flex}.preview-warning svg{color:#b49153}.preview-warning b{color:#765e38;font-weight:700}.preview-warning button{color:#886f49;background:0 0;border:0;align-items:center;gap:4px;font-size:9px;font-weight:600;display:flex}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:22px;display:flex}.eyebrow,.card-kicker{letter-spacing:1px;color:#96a2a3;font-size:8px;font-weight:700}.page-heading h1{letter-spacing:-.7px;color:#223238;margin:5px 0;font:700 25px Manrope,sans-serif}.page-heading p{color:#8c989a;margin:0;font-size:11px}.heading-action{align-items:center;display:flex}.button{white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:7px;height:34px;padding:0 12px;font-size:10px;font-weight:600;display:inline-flex}.button.secondary{color:#586769;background:#fff;border:1px solid #e4eae9}.button.secondary:hover{color:#26765f;border-color:#a8c7bc}.button.primary{color:#fff;background:#177a62;border:1px solid #176f5a;box-shadow:0 2px 4px #177a621b}.button.primary:hover{background:#126550}.button.small{height:30px}.connection-row{color:#869294;justify-content:space-between;align-items:center;margin:-4px 1px 14px;font-size:9px;display:flex}.connected{align-items:center;gap:7px;display:flex}.pulse{background:#36a177;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #e4f3eb}.separator{color:#c5cdcd}.device-label{letter-spacing:.35px;color:#849091;align-items:center;gap:7px;font-size:8px;font-weight:600;display:flex}.device-dot{background:#5e9f88;border-radius:50%;width:5px;height:5px}.device-label svg{margin-left:1px}.dashboard-grid{grid-template-columns:1.17fr 1fr;gap:13px;display:grid}.card{box-shadow:var(--shadow);background:#fff;border:1px solid #ebefee;border-radius:10px}.temperature-card,.status-card{min-height:215px;padding:18px 19px}.card-heading,.section-head{justify-content:space-between;align-items:flex-start;display:flex}.card-heading h2,.section-head h2,.settings-title h2{letter-spacing:-.2px;color:#29383d;margin:5px 0 0;font:650 13px Manrope,sans-serif}.room-tag{letter-spacing:0;color:#8f9a9a;vertical-align:2px;background:#f2f5f4;border-radius:4px;margin-left:4px;padding:3px 6px;font:500 8px DM Sans}.temp-layout{align-items:center;gap:26px;margin:19px 0 15px;display:flex}.temp-number{letter-spacing:-4px;color:#293a3e;font:500 58px/1 Manrope,sans-serif}.temp-number>span{vertical-align:top;margin-left:2px;font-size:35px;line-height:1.35}.temp-number>small{letter-spacing:0;color:#9aa4a3;margin-left:5px;font:500 13px DM Sans}.temp-metrics{gap:13px;display:grid}.temp-metrics>div{align-items:center;gap:8px;display:flex}.metric-symbol{border-radius:7px;place-items:center;width:25px;height:25px;display:grid}.metric-symbol.target{color:#2b8e70;background:#eaf5f0}.metric-symbol.outside{color:#71919b;background:#eef4f5}.temp-metrics small{color:#98a2a2;margin-bottom:3px;font-size:8px;display:block}.temp-metrics b{color:#465457;font-size:10px;font-weight:600;display:block}.target-line{border-top:1px solid #eff2f1;align-items:center;gap:8px;padding-top:11px;display:flex}.target-line-label{color:#899596;align-items:center;gap:5px;margin-right:auto;font-size:8px;display:flex}.target-line-label span{background:#69ab95;border-radius:50%;width:5px;height:5px}.target-controls{border:1px solid #e7ecea;border-radius:6px;align-items:center;gap:8px;height:27px;padding:0 3px;display:flex}.target-controls button{color:#59706a;background:#f5f8f7;border:0;border-radius:4px;width:20px;height:20px;font-size:15px;line-height:1}.target-controls b{font-size:9px;font-weight:600}.save-button{color:#fff;background:#187962;border:0;height:27px;padding:0 9px;font-size:8px}.status-card .card-heading{align-items:center}.status-ok{letter-spacing:.5px;color:#278469;background:#edf7f1;border-radius:4px;padding:5px 7px;font-size:7px;font-weight:700}.status-ok span{background:#4aa985;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.status-list{margin-top:13px}.status-row{border-bottom:1px solid #f0f2f2;align-items:center;gap:8px;padding:8px 0;display:flex}.status-row:last-child{border-bottom:0}.status-icon{border-radius:6px;place-items:center;width:22px;height:22px;display:grid}.status-icon svg{width:13px;height:13px}.status-icon.orange{color:#cb8951;background:#fbf1e9}.status-icon.gold{color:#c7a04d;background:#fbf5e6}.status-icon.blue{color:#7397a1;background:#edf4f6}.status-icon.green{color:#549776;background:#eaf5ef}.status-label{color:#849091;flex:1;font-size:9px}.status-row>b{color:#4a585a;font-size:9px;font-weight:600}.last-update{color:#9aa4a3;border-top:1px solid #eff2f1;align-items:center;gap:5px;padding-top:9px;font-size:8px;display:flex}.chart-card{grid-column:1/2;min-height:237px;padding:17px 19px 13px}.section-head{align-items:center}.select-button{color:#748182;background:#fff;border:1px solid #e9eeee;border-radius:6px;align-items:center;gap:8px;padding:6px 8px;font-size:8px;display:flex}.chart-wrap{height:151px;margin-top:9px;padding:13px 2px 18px 30px;display:flex;position:relative}.chart-y{color:#a6b0b0;flex-direction:column;justify-content:space-between;font-size:7px;display:flex;position:absolute;top:7px;bottom:20px;left:0}.chart{width:100%;height:100%;overflow:visible}.grid-line{stroke:#edf1f0;stroke-width:1px;stroke-dasharray:3 4;fill:none}.temp-line{fill:none;stroke:#249072;stroke-width:2.1px;vector-effect:non-scaling-stroke}.target-line-chart{fill:none;stroke:#d9a25b;stroke-width:1.4px;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}.heat-block{fill:#edc994;opacity:.28}.chart-point{fill:#fff;stroke:#20866b;stroke-width:2.5px;vector-effect:non-scaling-stroke}.chart-x{color:#a6b0b0;justify-content:space-between;font-size:7px;display:flex;position:absolute;bottom:1px;left:30px;right:0}.chart-legend{color:#899596;align-items:center;gap:14px;font-size:8px;display:flex}.chart-legend span{align-items:center;gap:5px;display:flex}.chart-legend i{border-radius:1px;width:12px;height:2px;display:inline-block}.legend-temp{background:#249072}.legend-target{background:#d9a25b}.legend-heat{background:#edc994;height:7px!important}.chart-note{color:#a5afaf;margin-left:auto}.quick-card{min-height:237px;padding:17px 18px}.quick-card .section-head h2{margin-top:5px}.quick-stats{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 17px;display:grid}.quick-stats>div{grid-template-columns:27px 1fr;align-items:center;column-gap:7px;display:grid;position:relative}.quick-icon{border-radius:7px;grid-row:1/3;place-items:center;width:27px;height:27px;display:grid}.quick-icon.orange{color:#ce8950;background:#fbf2e9}.quick-icon.blue{color:#6b9ba3;background:#edf4f5}.quick-stats b{color:#344448;letter-spacing:-.4px;font:600 19px/1.1 Manrope}.quick-stats b span{color:#8b9798;margin-right:3px;font:500 9px DM Sans}.quick-stats small{color:#939e9f;margin-top:3px;font-size:8px}.text-link{color:#287c66;background:0 0;border:0;align-items:center;gap:4px;padding:3px 0;font-size:8px;font-weight:600;display:inline-flex}.text-link:hover{color:#125b48}.bottom-grid{grid-template-columns:1.17fr 1fr;gap:13px;margin-top:13px;display:grid}.events-card{padding:17px 19px}.events-card .section-head{margin-bottom:8px}.event-row{border-top:1px solid #f1f3f3;grid-template-columns:38px 9px 1fr;align-items:start;gap:9px;padding:9px 0;display:grid}.event-time{color:#929e9f;padding-top:2px;font-size:8px}.event-marker{border-radius:50%;width:7px;height:7px;margin-top:3px;box-shadow:0 0 0 3px #f4f6f5}.event-marker.orange{background:#d59055}.event-marker.green{background:#65a88a}.event-marker.gold{background:#c8a458}.event-row b{color:#4c5a5c;font-size:9px;font-weight:600;display:block}.event-row small{color:#9aa4a4;margin-top:3px;font-size:8px;display:block}.comfort-card{align-items:flex-start;gap:13px;padding:19px;display:flex}.comfort-icon{color:#528771;background:#eff5f1;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.comfort-card h2{margin:5px 0 6px;font:650 13px Manrope}.comfort-card p{color:#889596;max-width:290px;margin:0 0 13px;font-size:9px;line-height:1.6}.progress-track{background:#edf2ef;border-radius:5px;height:5px;overflow:hidden}.progress-track span{background:#5fa78c;border-radius:5px;height:100%;display:block}.comfort-card small{text-align:right;color:#789487;margin-top:6px;font-size:8px;display:block}footer{color:#a0aaaa;justify-content:space-between;padding:24px 1px 17px;font-size:8px;display:flex}footer b{color:#6f8b81;font-weight:600}footer i{color:#ccd2d0;padding:0 4px;font-style:normal}footer span:last-child{align-items:center;gap:5px;display:flex}footer svg{color:#79a28f}.toast{z-index:10;color:#fff;background:#243834;border-radius:8px;align-items:center;gap:9px;padding:11px 16px;font-size:10px;animation:.18s ease-out toast-in;display:flex;position:fixed;bottom:23px;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #1d342e33}.toast-check{background:#62aa8e;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;display:grid}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,5px)}to{opacity:1;transform:translate(-50%)}}.range-switch{background:#eff3f1;border-radius:7px;gap:2px;padding:3px;display:flex}.range-switch button{color:#869394;background:0 0;border:0;border-radius:5px;padding:6px 12px;font-size:9px}.range-switch button.active{color:#2e6e5d;background:#fff;font-weight:600;box-shadow:0 1px 3px #1c36321a}.stat-kpis{grid-template-columns:repeat(4,1fr);gap:12px;margin:4px 0 14px;display:grid}.kpi-card{flex-direction:column;align-items:flex-start;min-height:132px;padding:15px 16px;display:flex}.kpi-icon{color:#538b75;background:#eef5f1;border-radius:8px;place-items:center;width:28px;height:28px;margin-bottom:13px;display:grid}.kpi-icon svg{width:15px;height:15px}.kpi-value{letter-spacing:-.6px;color:#304044;margin-top:7px;font:650 20px Manrope}.kpi-card>small{color:#9aa4a4;align-items:center;gap:2px;margin-top:4px;font-size:8px;display:flex}.kpi-card>small.trend-up{color:#408a70}.analytics-chart,.table-card{margin-bottom:13px;padding:18px}.analytics-chart .chart-wrap{height:220px}.table-card .section-head{margin-bottom:14px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:600px}th{text-align:left;letter-spacing:.7px;color:#a0aaaa;border-bottom:1px solid #edf0ef;padding:9px;font-size:7px;font-weight:700}td{color:#5e6c6e;border-bottom:1px solid #f0f2f2;padding:12px 9px;font-size:9px}tbody tr:last-child td{border-bottom:0}.table-status{color:#71817d;background:#f1f4f3;border-radius:4px;padding:4px 7px;font-size:8px}.table-status.live{color:#327c62;background:#edf6f0}.schedule-callout{color:#55806c;background:#edf6f1;border:1px solid #e4f0e9;border-radius:8px;align-items:center;gap:8px;margin-bottom:13px;padding:11px 13px;font-size:9px;display:flex}.schedule-callout>svg{color:#6e9d82}.schedule-callout b{color:#376b52;font-weight:600}.readback-pill{color:#5d9578;letter-spacing:.5px;margin-left:auto;font-size:7px;font-weight:700}.readback-pill span{background:#63a786;border-radius:50%;width:5px;height:5px;margin-right:4px;display:inline-block}.schedule-layout{grid-template-columns:1fr 235px;gap:13px;display:grid}.week-card{padding:18px}.week-arrows{gap:3px;display:flex}.days-grid{grid-template-columns:repeat(7,1fr);gap:7px;margin:18px 0 23px;display:grid}.day-tab{color:#95a1a0;background:#fff;border:1px solid #eaf0ed;border-radius:7px;flex-direction:column;align-items:center;gap:5px;padding:8px 4px;display:flex}.day-tab span{font-size:8px}.day-tab b{color:#5d6d6d;font:600 13px Manrope}.day-tab i{background:#81b297;border-radius:50%;width:4px;height:4px}.day-tab i.weekend{background:#d2a165}.day-tab.selected{color:#348162;background:#edf6f1;border-color:#b7d9c8}.day-tab.selected b{color:#28745a}.schedule-chart{gap:8px;height:187px;padding:8px 0 22px 26px;display:flex;position:relative}.schedule-y{color:#9ca7a6;flex-direction:column;justify-content:space-between;font-size:7px;display:flex;position:absolute;top:2px;bottom:22px;left:0}.schedule-bars{background:repeating-linear-gradient(#0000 0 32%,#eef2f0 33%,#0000 34%);border-top:1px dashed #edf1f0;border-bottom:1px solid #e9eeec;grid-template-columns:repeat(24,1fr);align-items:end;width:100%;display:grid}.schedule-hour{border-right:1px solid #fff;height:100%;position:relative}.schedule-hour:after{content:"";border-radius:2px 2px 0 0;display:block;position:absolute;bottom:0;left:0;right:0}.schedule-hour.comfort:after{background:#e4b37d;height:90%}.schedule-hour.eco:after{background:#a9c7b4;height:57%}.schedule-hour.frost:after{background:#bfced0;height:24%}.schedule-hour span{color:#a0aaaa;font-size:6px;position:absolute;bottom:-16px;left:0;transform:translate(-50%)}.schedule-legend{color:#899696;gap:18px;padding:9px 0 15px;font-size:8px;display:flex}.schedule-legend span{align-items:center;gap:5px;display:flex}.schedule-legend b{color:#647170;font-weight:600}.schedule-legend i{border-radius:2px;width:7px;height:7px}.comfort-dot{background:#e4b37d}.eco-dot{background:#a9c7b4}.frost-dot{background:#bfced0}.schedule-actions{border-top:1px solid #eff2f1;gap:7px;padding-top:13px;display:flex}.schedule-actions .button{padding:0 9px;font-size:8px}.schedule-side{align-content:start;gap:13px;display:grid}.next-card,.schedule-note{padding:16px}.next-time{letter-spacing:-1px;color:#334448;margin:18px 0 5px;font:650 28px Manrope}.next-time small{letter-spacing:0;color:#98a3a2;font:500 10px DM Sans}.next-card p,.schedule-note p{color:#8b9898;margin:0;font-size:9px;line-height:1.55}.next-temp{color:#95a09f;border-top:1px solid #eff2f1;align-items:center;gap:6px;margin-top:15px;padding-top:12px;font-size:8px;display:flex}.next-temp svg{color:#61a182}.next-temp b{color:#42765e;font-size:10px}.note-icon{color:#609375;background:#eff6f1;border-radius:8px;place-items:center;width:28px;height:28px;margin-bottom:11px;display:grid}.schedule-note>b{margin-bottom:6px;font-size:10px;display:block}.note-fresh{color:#8caf9b;margin-top:11px;font-size:8px;display:block}.settings-layout{grid-template-columns:1fr 260px;align-items:start;gap:14px;display:grid}.settings-main,.settings-aside{gap:13px;display:grid}.settings-card{padding:18px}.settings-title{align-items:center;gap:10px;margin-bottom:16px;display:flex}.settings-icon{color:#599078;background:#edf5f1;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.settings-icon.purple{color:#8374aa;background:#f2f0f9}.settings-icon.orange-bg{color:#c58a55;background:#faf1e9}.settings-title>div:nth-child(2){flex:1}.settings-title h2{margin:0}.settings-title p{color:#929e9e;margin:4px 0 0;font-size:9px}.badge-disconnected{letter-spacing:.5px;color:#a17e54;background:#faf5ed;border-radius:4px;padding:5px 7px;font-size:7px}.settings-card label{color:#697779;gap:6px;margin-bottom:12px;font-size:9px;display:grid}.settings-card input,.settings-card select{color:#4c5b5c;background:#fff;border:1px solid #e7edeb;border-radius:6px;min-width:0;height:34px;padding:0 10px;font-size:9px}.settings-card input::placeholder{color:#b1bbbb}.form-row{grid-template-columns:1fr 1fr;gap:11px;display:grid}.settings-help{color:#7d9a89;align-items:center;gap:6px;margin:2px 0 14px;font-size:8px;display:flex}.settings-card .button{height:34px}.setting-line{border-top:1px solid #eff2f1;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.setting-line>div:first-child b{color:#536264;font-size:9px;font-weight:600;display:block}.setting-line small{color:#9aa5a4;margin-top:4px;font-size:8px;display:block}.setting-line select{height:29px;padding:0 7px;font-size:8px}.switch{cursor:pointer;background:#e1e7e5;border-radius:12px;flex:none;width:29px;height:16px;position:relative}.switch i{background:#fff;border-radius:50%;width:12px;height:12px;transition:all .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0002}.switch.on{background:#67a78d}.switch.on i{left:15px}.switch.disabled{opacity:.55;cursor:not-allowed}.export-actions{flex-wrap:wrap;gap:8px;display:flex}.export-actions button{color:#617071;background:#fff;border:1px solid #e7edeb;border-radius:6px;align-items:center;gap:6px;padding:8px 10px;font-size:8px;display:flex}.export-actions button:hover{border-color:#bbd4c8}.security-card{padding:17px}.security-badge{color:#4c9472;background:#edf6f1;border-radius:9px;place-items:center;width:34px;height:34px;margin-bottom:12px;display:grid}.security-card h2{margin:0 0 7px;font:650 12px Manrope}.security-card p,.danger-card p{color:#8e9a9a;margin:0 0 13px;font-size:9px;line-height:1.6}.security-card>div:not(.security-badge){color:#758483;align-items:center;gap:7px;margin-top:10px;font-size:8px;display:flex}.security-card>div>span{background:#6fa887;border-radius:50%;width:5px;height:5px}.danger-card{border-color:#f0e9e2;padding:15px}.danger-card>div{color:#a27e57;align-items:center;gap:6px;margin-bottom:9px;font-size:9px;font-weight:600;display:flex}.danger-card>div svg{color:#bb9563}.danger-card p{margin-bottom:10px}.danger-card button{color:#927a5b;background:#faf5ed;border:0;border-radius:5px;align-items:center;gap:6px;padding:7px 8px;font-size:8px;display:flex}.scrim{display:none}@media (width<=1100px){.sidebar{width:215px}.main-area{margin-left:215px}.content{padding-left:27px;padding-right:27px}.topbar{padding:0 27px}.dashboard-grid,.bottom-grid{grid-template-columns:1fr 1fr}.schedule-layout{grid-template-columns:1fr 210px}.settings-layout{grid-template-columns:1fr 220px}.schedule-actions{flex-wrap:wrap}}@media (width<=820px){.sidebar{width:250px;transition:transform .22s;transform:translate(-100%);box-shadow:10px 0 35px #15252114}.sidebar.open{transform:translate(0)}.close-menu{margin-left:auto;display:grid!important}.scrim{z-index:4;background:#17272255;border:0;display:block;position:fixed;inset:0}.main-area{margin-left:0}.mobile-menu{margin-left:-8px;display:grid}.topbar{justify-content:flex-start;gap:11px;height:56px;padding:0 20px}.crumb{flex:1}.top-actions{gap:14px}.content{padding:21px 20px 0}.dashboard-grid{grid-template-columns:1fr 1fr}.temperature-card{grid-column:1/2}.status-card{grid-column:2/3}.chart-card{grid-column:1/2}.quick-card{grid-column:2/3}.bottom-grid{grid-template-columns:1fr 1fr}.schedule-layout{grid-template-columns:1fr}.schedule-side{grid-template-columns:1fr 1fr}.settings-layout{grid-template-columns:1fr 230px}.stat-kpis{grid-template-columns:1fr 1fr}}@media (width<=580px){.content{padding:16px 13px 0}.topbar{padding:0 13px}.top-actions{gap:9px}.preview-pill{padding:5px 6px;font-size:7px}.notification{width:25px}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:22px}.page-heading p{max-width:270px;font-size:10px;line-height:1.5}.heading-action{align-self:center}.page-heading .button{height:31px;padding:0 8px;font-size:8px}.connection-row{align-items:flex-start;gap:9px;margin-top:2px;font-size:8px}.device-label{white-space:nowrap;font-size:7px}.dashboard-grid,.bottom-grid{grid-template-columns:1fr}.temperature-card,.status-card,.chart-card,.quick-card{grid-column:auto}.temperature-card,.status-card{min-height:auto}.temp-number{font-size:53px}.chart-card,.quick-card{min-height:215px}.bottom-grid{gap:12px}.comfort-card{min-height:135px}.preview-warning{align-items:flex-start;gap:6px;font-size:9px}.preview-warning>div{align-items:flex-start;line-height:1.45}.preview-warning button{white-space:nowrap;padding-top:2px;font-size:8px}.preview-warning button svg{display:none}.stat-kpis{gap:8px}.kpi-card{min-height:123px;padding:12px}.kpi-value{font-size:18px}.kpi-card>small{font-size:7px}.range-switch button{padding:6px 8px}.heading-action .range-switch{margin-top:2px}.analytics-chart,.table-card{padding:14px}.analytics-chart .chart-wrap{height:177px}.schedule-callout{flex-wrap:wrap;font-size:8px}.readback-pill{width:100%;margin-left:25px}.week-card{padding:13px 10px}.days-grid{gap:4px;margin:14px 0 20px}.day-tab{padding:7px 1px}.day-tab span{font-size:7px}.day-tab b{font-size:12px}.schedule-chart{height:158px}.schedule-legend{flex-wrap:wrap;gap:10px;font-size:7px}.schedule-actions .button{flex:1}.schedule-side,.settings-layout{grid-template-columns:1fr}.settings-title{gap:8px}.settings-title h2{font-size:11px}.settings-title p{font-size:8px}.badge-disconnected{padding:4px;font-size:6px}.settings-card{padding:14px}.form-row{gap:8px}footer{flex-wrap:wrap;gap:7px;padding:19px 0 14px}footer span:last-child{display:none}}:root .badge-connected{letter-spacing:.5px;color:#3d8967;background:#edf6f0;border-radius:4px;padding:5px 7px;font-size:7px}.connection-settings{max-width:820px;padding:20px}.connection-settings form{max-width:530px}.connection-settings select{color:#4c5b5c;background:#fff;border:1px solid #e7edeb;border-radius:6px;height:36px;padding:0 10px;font-size:10px}.connection-settings input{height:36px;font-size:10px}.connection-settings .button:disabled{opacity:.6;cursor:wait}.connected-actions{align-items:center;gap:8px;display:flex}.connection-device-count{color:#94a09f;border-top:1px solid #eff2f1;margin-top:14px;padding-top:10px;font-size:8px}.connection-error{color:#a2523f;background:#fff4f0;border:1px solid #f3d9d0;border-radius:6px;max-width:530px;margin-top:13px;padding:10px;font-size:9px}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.schedule-bars{grid-template-columns:repeat(48,1fr)}.remote-control-grid{border-top:1px solid #edf0ef;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;display:grid}.remote-control-grid label{color:#7b898c;gap:5px;font-size:10px;display:grid}.remote-control-grid label:first-child{grid-column:1/-1}.remote-control-grid input,.remote-control-grid select{color:#26383b;background:#fff;border:1px solid #e3e9e7;border-radius:7px;width:100%;min-width:0;height:34px;padding:0 8px}.remote-control-grid :disabled,.target-controls :disabled,.save-button:disabled{opacity:.48;cursor:not-allowed}.schedule-heading-actions{gap:8px;display:flex}.schedule-heading-actions .button{white-space:nowrap}.schedule-hour{background:0 0;border-top:0;border-bottom:0;border-left:0;padding:0}.program-level-editor{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.program-level-editor label{color:#77868a;gap:5px;font-size:9px;display:grid}.program-level-editor input{color:#26383b;background:#fff;border:1px solid #e4eae8;border-radius:7px;width:100%;height:32px;padding:0 7px}.schedule-actions{flex-wrap:wrap}@media (width<=560px){.schedule-heading-actions{flex-direction:column}.schedule-heading-actions .button{height:30px;padding:0 7px;font-size:8px}.program-level-editor{grid-template-columns:1fr}.schedule-actions .button{flex:45%}}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:13px 0;display:grid}.settings-fields label{color:#7a888b;gap:5px;font-size:9px;display:grid}.settings-fields input{color:#26383b;background:#fff;border:1px solid #e4eae8;border-radius:7px;width:100%;min-width:0;height:34px;padding:0 8px}.settings-presets{gap:7px;margin-bottom:12px;display:flex}.export-actions a,.export-actions .export-file{color:#617071;cursor:pointer;background:#fff;border:1px solid #e7edeb;border-radius:6px;align-items:center;gap:6px;padding:8px 10px;font-size:9px;text-decoration:none;display:flex}.export-actions a:hover,.export-actions .export-file:hover{color:#177a62;border-color:#a8c9be}.export-file{position:relative;overflow:hidden}.export-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.export-file.disabled{opacity:.5;pointer-events:none}.permission-state{color:#89969a;margin-top:8px;font-size:9px;display:block}.diagnostic-output{white-space:pre-wrap;overflow-wrap:anywhere;color:#536366;background:#f6f8f8;border-radius:6px;max-height:300px;padding:10px;font-size:9px;overflow:auto}.settings-card .button{margin-top:10px}@media (width<=560px){.settings-fields{grid-template-columns:1fr}.settings-presets{flex-wrap:wrap}.export-actions a,.export-actions .export-file{flex:43%}}.boost-panel{background:#fdfaf6;border:1px solid #f0e7da;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:11px;display:flex}.boost-panel.active{background:#fff8ed;border-color:#edd6b7}.boost-panel>div:first-child{gap:4px;display:grid}.boost-panel>div:first-child>b{color:#5c625e;font-size:11px}.boost-options{flex-wrap:wrap;gap:5px;display:flex}.boost-panel .button{white-space:nowrap}.boost-panel .button:disabled{opacity:.5;cursor:not-allowed}@media (width<=580px){.boost-panel{flex-direction:column;align-items:flex-start}.boost-options{width:100%}.boost-options .button{flex:1}}.scrub-chart{touch-action:pan-y}.scrub-hit{fill:#0000;cursor:crosshair;touch-action:pan-y}.activity-block{fill:#d99a58;opacity:.9}.demand-block{fill:#8bb99f;opacity:.9}.scrub-line{stroke:#566d69;stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.scrub-dot{fill:#fff;stroke:#20866b;stroke-width:2.5px;vector-effect:non-scaling-stroke}.scrub-readout{color:#81908e;background:#fafcfb;border:1px solid #edf1ef;border-radius:7px;flex-wrap:wrap;align-items:center;gap:15px;margin:4px 0 2px;padding:9px 11px;font-size:9px;display:flex}.scrub-readout>b{color:#405451;font-size:10px}.scrub-readout strong{color:#455c57;font-weight:650}.scrub-readout.empty{margin:4px 0 2px;padding:11px}.chart-legend .legend-demand{background:#8bb99f}@media (width<=580px){.scrub-readout{gap:8px 12px}.scrub-readout>b{flex:100%}}.stat-kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.table-card td small{color:#8d9998;white-space:nowrap;margin-top:3px;font-size:8px;display:block}@media (width<=580px){.stat-kpis{grid-template-columns:1fr 1fr}}.hourly-flame-card{padding:18px}.hourly-bars{border-bottom:1px solid #e9eeec;grid-template-columns:repeat(24,minmax(0,1fr));align-items:stretch;gap:3px;height:145px;padding-top:10px;display:grid}.hourly-bars button{color:#8e9b99;background:0 0;border:0;flex-direction:column;justify-content:flex-end;align-items:stretch;gap:5px;min-width:0;height:100%;padding:0 1px;display:flex}.hourly-bars button i{background:#d99a58;border-radius:3px 3px 0 0;flex:none;width:100%;min-height:0;max-height:calc(100% - 19px);transition:background .15s;display:block}.hourly-bars button.selected i,.hourly-bars button:hover i{background:#b36d30}.hourly-bars button span{white-space:nowrap;text-align:center;height:14px;font-size:7px}.hourly-selected{color:#879392;gap:8px;margin:9px 0 0;font-size:8px;display:flex}.hourly-selected b{color:#5c6b68;font-weight:650}@media (width<=580px){.hourly-flame-card{padding:13px 10px}.hourly-bars{gap:1px;height:120px}.hourly-bars button span{transform-origin:top;font-size:6px;transform:rotate(-45deg)}.hourly-selected{font-size:8px}}.house-picker{width:calc(100% - 4px);font:inherit;color:inherit;text-align:left;cursor:pointer;background:#fff}.range-switch{scrollbar-width:thin;max-width:100%;overflow-x:auto}.range-switch button{white-space:nowrap;flex:none}.period-dates{align-items:end;gap:10px;margin:0 0 13px;padding:12px 16px;display:flex}.period-dates label{color:#697779;gap:5px;font-size:9px;display:grid}.period-dates input{color:#4c5b5c;background:#fff;border:1px solid #e7edeb;border-radius:6px;height:32px;padding:0 8px;font-size:9px}.period-dates>span{color:#89969a;padding-bottom:8px}@media (width<=580px){.period-dates{gap:8px;padding:11px}.period-dates label{flex:1;min-width:0}.period-dates input{width:100%;padding:0 5px;font-size:8px}}.thermostat-dial{-webkit-user-select:none;user-select:none;width:min(100%,260px);margin:7px auto 15px}.thermostat-dial svg{touch-action:none;cursor:grab;width:100%;height:auto;display:block;overflow:visible}.thermostat-dial svg:active{cursor:grabbing}.thermostat-dial svg:focus-visible{outline-offset:2px;border-radius:50%;outline:3px solid #9acdbd}.thermostat-dial.disabled svg{cursor:not-allowed}.dial-track,.dial-progress{stroke-linecap:round;stroke-width:13px;vector-effect:non-scaling-stroke}.dial-track{stroke:#e6eeeb}.dial-progress{stroke:#23846a}.dial-thumb{fill:#23846a;stroke:#fff;stroke-width:4px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 3px #194a3d40)}.dial-caption,.dial-applied,.dial-ambient,.dial-limit{fill:#89969a;font-family:inherit}.dial-caption{letter-spacing:1.1px;font-size:9px;font-weight:700}.dial-value{fill:#1b2b32;letter-spacing:-1px;font-size:30px;font-weight:650}.dial-applied,.dial-ambient{font-size:10px}.dial-limit{font-size:9px;font-weight:600}.dial-stepper{justify-content:center;gap:8px;margin-top:-1px;display:flex}.dial-stepper button{color:#536663;background:#fff;border:1px solid #e3e9e7;border-radius:7px;min-height:34px;padding:0 11px;font-size:10px;font-weight:600}.dial-stepper button:hover:not(:disabled){color:#177a62;border-color:#a8c9be}.dial-stepper button:disabled{opacity:.45;cursor:not-allowed}.program-range-editor{border-bottom:1px solid #eff2f1;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:8px;margin:0 0 14px;padding:11px 0;display:grid}.program-range-editor label{color:#7b898c;gap:5px;font-size:8px;display:grid}.program-range-editor select{color:#4c5b5c;background:#fff;border:1px solid #e4eae8;border-radius:6px;width:100%;height:31px;padding:0 7px;font-size:9px}.program-range-editor .button{height:31px;margin:0}@media (width<=580px){.program-range-editor{grid-template-columns:repeat(2,minmax(0,1fr))}.program-range-editor .button{grid-column:1/-1;width:100%}}.diagnostic-output h3{color:#415254;margin:14px 0 7px;font-size:9px;font-weight:700}.diagnostic-output h3:first-child{margin-top:0}.diagnostic-output dl{grid-template-columns:minmax(135px,1fr) minmax(0,2fr);gap:5px 10px;margin:0 0 12px;display:grid}.diagnostic-output dt{color:#859294}.diagnostic-output dd{color:#435355;overflow-wrap:anywhere;min-width:0;margin:0}.diagnostic-output ul{margin:7px 0 0;padding-left:18px}.diagnostic-output li{margin:5px 0;line-height:1.5}.diagnostic-output p{color:#687779;margin:7px 0}@media (width<=580px){.diagnostic-output dl{grid-template-columns:1fr;gap:2px}.diagnostic-output dd{margin-bottom:6px}}.history-sampling-note{color:#8b9898;margin:8px 0 0;font-size:8px}@media (width<=580px){.content .card-kicker,.content .eyebrow{font-size:10px}.content .card p,.content .settings-title p,.content .security-card p,.content .danger-card p{font-size:12px;line-height:1.5}.content .status-label,.content .status-row>b,.content .settings-card label,.content .setting-line>div:first-child b,.content .schedule-note>b{font-size:11px}.content .card small,.content .last-update,.content .chart-legend,.content .quick-stats small,.content .text-link,.content .event-time,.content .event-row small,.content .comfort-card small,.content .kpi-card>small,.content .table-status,.content .schedule-callout,.content .readback-pill,.content .day-tab span,.content .schedule-legend,.content .next-temp,.content .note-fresh,.content .settings-help,.content .setting-line small,.content .permission-state,.content .history-sampling-note{font-size:10px}.content .button,.content .select-button,.content .range-switch button,.content .schedule-actions .button,.content .export-actions button,.content .export-actions a,.content .export-actions .export-file,.content input,.content select,.content textarea,.content .program-range-editor select,.content .period-dates input{font-size:12px}.content .chart-y,.content .chart-x,.content .schedule-y,.content .schedule-hour span,.content th{font-size:9px}.sidebar .brand small,.sidebar .house-picker small,.sidebar .nav-caption,.sidebar .support-card>span,.sidebar .support-card button,.sidebar .profile small{font-size:10px}}.condensation-advice{background:#f8faf9;border:1px solid #e5ece8;border-radius:9px;align-items:flex-start;gap:10px;margin-top:14px;padding:12px;display:flex}.condensation-mark{background:#81908a;border-radius:50%;flex:none;width:9px;height:9px;margin-top:3px}.condensation-advice>div{min-width:0}.condensation-advice .card-kicker{margin-bottom:5px;display:block}.condensation-advice b{color:#44534f;font-size:11px;display:block}.condensation-advice p{color:#77847f;margin:4px 0 0;font-size:9px;line-height:1.5}.condensation-advice.optimal{background:#f4faf5;border-color:#d7eadc}.condensation-advice.optimal .condensation-mark{background:#43a36a}.condensation-advice.moderate{background:#fdfaf3;border-color:#eee3c8}.condensation-advice.moderate .condensation-mark{background:#d4a347}.condensation-advice.poor{background:#fdf6f4;border-color:#f0d9d4}.condensation-advice.poor .condensation-mark{background:#c96554}.condensation-advice.waiting .condensation-mark{background:#83939b}
