.energy-history{--eh-ink:#18241f;--eh-muted:#687970;--eh-line:#dfe8e3;--eh-soft:#f5f8f6;--eh-load:#159665;--eh-pv:#e8a126;--eh-battery:#397ec3;--eh-grid:#667781;color:var(--eh-ink);margin-top:30px;font-family:inherit}.energy-history *{box-sizing:border-box}.eh-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px;display:flex}.eh-header small,.eh-card header small{color:#708178;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:750;display:block}.eh-header h2{letter-spacing:-.035em;margin:4px 0 0;font-size:20px;line-height:1.1}.eh-header p{color:var(--eh-muted);margin:7px 0 0;font-size:13px}.eh-controls{align-items:center;gap:12px;display:flex}.eh-status{color:#53665c;white-space:nowrap;background:#fff;border:1px solid #dce8e1;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:700;display:inline-flex}.eh-status i{background:#93a39b;border-radius:50%;width:7px;height:7px}.eh-status.live{color:#16774e;background:#f1faf5;border-color:#cfe7da}.eh-status.live i{background:#1aa36b;box-shadow:0 0 0 4px #1aa36b18}.eh-status.offline{color:#965d5d;background:#fff7f7;border-color:#ebdddd}.eh-status.offline i{background:#b96e6e}.eh-status.connecting i{background:var(--eh-pv)}.eh-ranges{border:1px solid var(--eh-line);background:#fff;border-radius:10px;padding:3px;display:flex}.eh-ranges button{color:#66776e;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:34px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700;line-height:1}.eh-ranges button:hover{color:var(--eh-ink);background:#f2f6f3}.eh-ranges button:focus-visible,.eh-chart:focus-visible{outline-offset:2px;outline:3px solid #5aa98255}.eh-ranges button.active{color:#176f4b;background:#e8f4ed}.eh-cards{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.eh-card{border:1px solid var(--eh-line);background:#fff;border-radius:18px;min-width:0;overflow:hidden;box-shadow:0 10px 32px #1c33270b}.eh-card>header{justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px 6px;display:flex}.eh-card h3{letter-spacing:-.025em;margin:4px 0 0;font-size:18px}.eh-legend{color:#5f7067;flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;font-size:12px;display:flex}.eh-legend span{white-space:nowrap;align-items:center;gap:6px;display:flex}.eh-legend i,.eh-tooltip i{border-radius:50%;width:8px;height:8px}.eh-legend .load,.eh-tooltip .load{background:var(--eh-load)}.eh-legend .pv,.eh-tooltip .pv{background:var(--eh-pv)}.eh-legend .battery,.eh-tooltip .battery{background:var(--eh-battery)}.eh-legend .grid,.eh-tooltip .grid{background:var(--eh-grid)}.eh-chart-wrap{min-width:0;padding:0 10px 2px;position:relative}.eh-chart{width:100%;height:auto;display:block;overflow:visible}.eh-hit-area{fill:#0000;pointer-events:all}.eh-grid-line{stroke:#e9efec;stroke-width:1px;vector-effect:non-scaling-stroke}.eh-grid-line.zero{stroke:#aebcb5;stroke-width:1.25px}.eh-axis-label{fill:#718178;font:12px ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.eh-series{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.eh-series.load{stroke:var(--eh-load)}.eh-series.pv{stroke:var(--eh-pv)}.eh-series.battery{stroke:var(--eh-battery)}.eh-series.grid{stroke:var(--eh-grid);stroke-dasharray:6 4}.eh-series-dot{stroke:none}.eh-series-dot.load,.eh-active-dot.load{fill:var(--eh-load)}.eh-series-dot.pv,.eh-active-dot.pv{fill:var(--eh-pv)}.eh-series-dot.battery,.eh-active-dot.battery{fill:var(--eh-battery)}.eh-series-dot.grid,.eh-active-dot.grid{fill:var(--eh-grid)}.eh-cursor{stroke:#86978e;stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.eh-active-dot{stroke:#fff;stroke-width:2px;vector-effect:non-scaling-stroke}.eh-tooltip{z-index:3;top:15px;left:clamp(105px,var(--eh-tooltip-x),calc(100% - 105px));pointer-events:none;background:#fffffff7;border:1px solid #d9e4de;border-radius:11px;min-width:190px;padding:11px 12px;position:absolute;transform:translate(-50%);box-shadow:0 10px 30px #162a201f}.eh-tooltip strong{margin-bottom:6px;font-size:12px;display:block}.eh-tooltip span{color:#5e6f66;grid-template-columns:10px 1fr auto;align-items:center;gap:7px;padding:2px 0;font-size:12px;display:grid}.eh-tooltip span b{color:var(--eh-ink);font-size:12px}.eh-tooltip small{color:#77887f;margin-top:6px;font-size:11px;display:block}.eh-grid-note{color:#718178;margin:0;padding:2px 20px 16px;font-size:12px}.eh-soc-card>header>b{color:var(--eh-battery);letter-spacing:-.035em;font-size:22px}.eh-soc-wrap{padding-bottom:8px}.eh-soc-stats{grid-template-columns:repeat(3,1fr);gap:6px;margin:8px 8px 0;display:grid}.eh-soc-stats span{background:var(--eh-soft);color:var(--eh-muted);text-align:center;border-radius:8px;padding:7px 6px;font-size:11px}.eh-soc-stats b{color:var(--eh-ink);margin-top:2px;font-size:12px;display:block}.eh-empty{text-align:center;background:linear-gradient(#fff,#fafcfb);flex-direction:column;justify-content:center;align-items:center;min-height:220px;padding:28px;display:flex}.eh-soc-card .eh-empty{min-height:220px}.eh-empty strong{font-size:14px}.eh-empty span{max-width:420px;color:var(--eh-muted);margin-top:6px;font-size:12px;line-height:1.5}@media (width>=1001px){.eh-cards{grid-template-columns:minmax(0,1.7fr) minmax(310px,1fr);align-items:stretch}.eh-card{height:100%}}@media (width<=700px){.eh-header{display:block}.eh-controls{justify-content:space-between;margin-top:15px}.eh-card>header{display:block}.eh-legend{justify-content:flex-start;margin-top:13px}.eh-tooltip{min-width:170px;left:clamp(95px,var(--eh-tooltip-x),calc(100% - 95px))}.eh-chart-wrap{overflow:visible}.eh-chart,.eh-soc-chart,.eh-empty{min-width:0}.eh-grid-note{padding-top:8px}}@media (width<=430px){.eh-controls{flex-direction:column;align-items:stretch}.eh-ranges{align-self:stretch}.eh-ranges button{flex:1}.eh-status{align-self:flex-start}}.energy-history .eh-ranges button{min-height:44px}.eh-coverage{border:1px solid var(--eh-line);color:#52645a;background:#f9fbfa;border-radius:11px;justify-content:space-between;align-items:center;gap:16px;margin:-4px 0 14px;padding:10px 13px;font-size:12px;display:flex}.eh-coverage span{font-weight:750}.eh-coverage small{color:var(--eh-muted);text-align:right}.eh-status.ready{color:#16774e;background:#f1faf5;border-color:#cfe7da}.eh-status.ready i{background:#1aa36b}.eh-status.error{color:#965d5d;background:#fff7f7;border-color:#ebdddd}.eh-status.error i{background:#b96e6e}.eh-status.demo{color:#806423;background:#fffaf0;border-color:#eadfbf}.eh-status.demo i{background:#c39528}@media (width<=820px){.eh-controls{flex-direction:column;align-items:flex-end}.eh-ranges{max-width:100%;overflow-x:auto}.eh-ranges button{flex:none}.eh-coverage{flex-direction:column;align-items:flex-start}.eh-coverage small{text-align:left}}@media (width<=520px){.eh-ranges{width:100%}.eh-ranges button{flex:1;padding:0 8px}}.camera-preview{margin:12px 0 0}.camera-preview-frame{aspect-ratio:16/9;background:#edf1f2;border:1px solid #dde5e5;border-radius:10px;position:relative;overflow:hidden}.camera-preview-frame img,.camera-preview-frame video{object-fit:contain;background:#172326;width:100%;height:100%;display:block}.camera-preview-badge{color:#fff;background:#172b32cc;border-radius:6px;padding:5px 8px;font-size:9px;position:absolute;top:8px;left:8px}.camera-preview-badge.ready{background:#215f48dd}.camera-preview-empty{text-align:center;color:#70837b;flex-direction:column;justify-content:center;align-items:center;gap:7px;height:100%;padding:14px;display:flex}.camera-preview-empty>svg{width:26px;height:26px}.camera-preview-empty strong{font-size:11px}.camera-preview-empty small{font-size:9px;line-height:1.4}.camera-preview-empty button{color:#416a57;font:inherit;background:#fff;border:0;border-radius:6px;padding:6px 10px}.camera-preview figcaption{color:#829089;margin-top:5px;font-size:9px}.device-energy-readings{margin-top:28px}.der-heading{margin-top:0}.der-heading>span.is-unavailable{color:#9a5e5e}.der-list{background:#fff;border:1px solid #dfe8e3;border-radius:15px;overflow:hidden}.der-row{width:100%;min-width:0;color:var(--ed-ink);font:inherit;text-align:left;background:#fff;border:0;border-bottom:1px solid #e8eeeb;align-items:center;gap:12px;padding:10px 13px;display:flex}.der-row:last-child{border-bottom:0}.der-row:is(button){cursor:pointer;transition:background .18s}.der-row:is(button):hover{background:#f7faf8}.der-row:is(button):focus-visible{z-index:1;outline-offset:-3px;outline:3px solid #389a79;position:relative}.der-asset{flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.der-asset img,.der-asset svg{object-fit:contain;filter:drop-shadow(0 3px 4px #42545a14);width:40px;height:40px}.der-copy{flex:1;min-width:0;display:block}.der-copy strong,.der-copy small,.der-value strong,.der-value small{display:block}.der-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.der-copy small{color:var(--ed-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;overflow:hidden}.der-bar{background:#edf2ef;border-radius:99px;width:min(210px,100%);height:3px;margin-top:6px;display:block;overflow:hidden}.der-bar i{border-radius:inherit;background:#41a979;height:100%;display:block}.der-value{text-align:right;flex:none;min-width:112px}.der-value strong{white-space:nowrap;font-size:15px;font-weight:650}.der-value small{color:#73887e;white-space:nowrap;margin-top:3px;font-size:9px}.der-value.is-missing strong{color:#8a9690}.der-value.is-missing small{color:#8b7770}.der-open{color:#8ba096;font-size:20px;line-height:1}.der-note,.der-empty{color:#7b867f;margin:9px 2px 0;font-size:10px;line-height:1.5}.der-empty{background:#fff;border:1px solid #dfe8e3;border-radius:15px;margin:0;padding:16px}@media (width<=700px){.der-row{gap:9px;padding:9px 10px}.der-asset{flex-basis:36px;width:36px;height:36px}.der-asset img,.der-asset svg{width:36px;height:36px}.der-value{min-width:94px}.der-value strong{font-size:14px}.der-copy small,.der-value small{font-size:9px}.der-bar{max-width:130px}}@media (prefers-reduced-motion:reduce){.der-row:is(button){transition:none}}.solar-sky-banner{background:#f6faf7;border:1px solid #dce5e1;border-radius:20px;grid-template-columns:minmax(240px,.8fr) minmax(0,1.4fr);align-items:center;gap:24px;margin:0 0 22px;padding:22px 24px 30px;display:grid;position:relative;overflow:hidden}.ss-copy{min-width:0}.ss-eyebrow{text-transform:uppercase;letter-spacing:.13em;color:#7e9487;font-size:9px;font-weight:700}.ss-copy h2{letter-spacing:-.7px;margin:8px 0;font-size:23px;font-weight:550}.ss-copy p{color:#789084;margin:0;font-size:12px;line-height:1.6}.ss-measure{align-items:center;gap:16px;margin-top:15px;display:flex}.ss-measure>span{letter-spacing:-1px;font-size:27px;font-weight:500}.ss-measure>b{color:#668574;border-left:1px solid #d5e0d9;padding-left:16px;font-size:11px;font-weight:500}.ss-sky{min-width:0}.ss-sky>svg{border-radius:12px;width:100%;height:auto;display:block}.ss-times{color:#82928a;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;font-size:10px;display:flex}.ss-times b{color:#425e50;font-weight:600}.ss-disclaimer{color:#95a69b;font-size:8px;position:absolute;bottom:9px;left:24px}.solar-sky-banner.night{background:#f4f7f9;border-color:#dce4e9}.night .ss-eyebrow,.night .ss-copy p,.night .ss-measure>b{color:#7c92a4}@media (width<=800px){.solar-sky-banner{border-radius:17px;grid-template-columns:1fr;gap:17px;margin-bottom:15px;padding:18px 16px 29px}.ss-copy h2{margin:5px 0;font-size:20px}.ss-copy p{font-size:11px}.ss-measure{gap:13px;margin-top:10px}.ss-measure>span{font-size:23px}.ss-measure>b{padding-left:13px;font-size:10px}.ss-sky>svg{min-height:100px}.ss-times{gap:5px;font-size:9px}.ss-times>span:nth-child(2){font-size:8px}.ss-disclaimer{font-size:7px;left:16px}}@media (prefers-reduced-motion:reduce){.ss-sun{transition:none}}.ss-weather-reading{color:#526e65;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;font-size:13px;display:flex}.ss-weather-reading small{color:#81938d;margin-top:4px;font-size:9px;display:block}.ss-temperature{text-align:right;white-space:nowrap}.ss-temperature strong{letter-spacing:-.7px;margin-top:4px;font-size:25px;font-weight:550;display:block}.ss-disclaimer a{color:inherit;text-decoration:underline}.ss-cloud{animation:12s ease-in-out infinite alternate ss-cloud-drift}.ss-rain path{animation:1.3s linear infinite ss-raindrop}.ss-snow{animation:4s ease-in-out infinite alternate ss-snowfall}.ss-lightning{animation:7s linear infinite ss-flash}.weather-rain .ss-sky>svg,.weather-overcast .ss-sky>svg,.weather-storm .ss-sky>svg{filter:saturate(.6)}.night .ss-weather-reading{color:#627a8e}.solar-sky-banner{padding-bottom:38px}@keyframes ss-cloud-drift{to{transform:translate(9px)}}@keyframes ss-raindrop{0%{opacity:0;transform:translate(3px,-7px)}35%{opacity:.8}to{opacity:0;transform:translate(-3px,9px)}}@keyframes ss-snowfall{to{transform:translate(7px,10px)}}@keyframes ss-flash{0%,92%,96%,to{opacity:0}93%,95%{opacity:.9}}@media (width<=800px){.ss-weather-reading{font-size:12px}.ss-temperature strong{font-size:24px}.solar-sky-banner{padding-bottom:43px}.ss-disclaimer{line-height:1.5;right:16px}}@media (prefers-reduced-motion:reduce){.ss-cloud,.ss-rain path,.ss-snow,.ss-lightning{animation:none}.ss-lightning{opacity:.7}}.solar-sky-banner{isolation:isolate;background:#daeaf0;border:1px solid #d5e1e4;min-height:270px;padding:0;display:block}.ss-sky{z-index:-1;position:absolute;inset:0}.ss-sky>svg{border-radius:0;width:100%;height:100%;min-height:0;position:absolute;inset:0}.solar-sky-banner:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(90deg,#f4faf9ed 0%,#f4faf980 28%,#0000 65%);position:absolute;inset:0}.ss-copy{z-index:2;max-width:45%;padding:27px 28px 80px;position:relative}.ss-copy h2{color:#254842;max-width:350px;font-size:24px;line-height:1.2}.ss-copy p{color:#57766d;max-width:340px;font-size:12px;line-height:1.6}.ss-copy .ss-eyebrow{color:#6a8b81}.ss-measure{margin-top:20px}.ss-measure>span{color:#254842;font-size:29px}.ss-measure>b{color:#59796a;border-color:#aac8b8}.ss-weather-reading{z-index:3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#365c58;background:#ffffffe0;border:1px solid #ffffffa0;border-radius:16px;gap:20px;max-width:46%;margin:0;padding:13px 16px;position:absolute;top:23px;right:24px;box-shadow:0 8px 26px #425d6510}.ss-weather-reading>span:first-child{font-size:12px;font-weight:550;line-height:1.5}.ss-temperature{border-left:1px solid #dbe6e6;padding-left:17px}.ss-temperature strong{font-size:25px}.ss-weather-reading .ss-temperature small{margin:0}.ss-times{z-index:3;color:#3b6659;justify-content:space-between;font-size:11px;position:absolute;bottom:43px;left:25px;right:25px}.ss-times b{color:inherit}.ss-disclaimer{z-index:3;color:#668979;font-size:9px;bottom:13px;left:25px;right:25px}.solar-sky-banner.night:after{background:linear-gradient(90deg,#223b4ce8,#223b4c60 42%,#0000 75%)}.night .ss-copy h2,.night .ss-measure>span{color:#f0f7fc}.night .ss-copy p,.night .ss-copy .ss-eyebrow,.night .ss-measure>b,.night .ss-times,.night .ss-disclaimer{color:#c8dbe5}.night .ss-weather-reading{color:#e5f0f6;background:#254052df;border-color:#7d9aaa40}.night .ss-weather-reading small{color:#b6ccd9}.night .ss-temperature{border-color:#71899960}@media (width<=800px){.solar-sky-banner{min-height:360px;padding:0}.ss-copy{max-width:61%;padding:20px 18px 150px}.ss-copy h2{font-size:20px}.ss-copy p{font-size:11px}.ss-measure{flex-wrap:wrap;gap:8px;margin-top:14px}.ss-measure>span{font-size:24px}.ss-measure>b{border:0;padding:0;font-size:10px}.ss-weather-reading{border-radius:13px;flex-direction:column;align-items:flex-start;gap:10px;max-width:35%;padding:11px 12px;display:flex;top:18px;right:16px}.ss-weather-reading>span:first-child{font-size:10px}.ss-weather-reading small{font-size:8px}.ss-temperature{text-align:left;border:0;padding:0}.ss-temperature strong{font-size:23px}.ss-times{gap:5px;font-size:9px;bottom:51px;left:18px;right:18px}.ss-times>span:nth-child(2){font-size:9px}.ss-disclaimer{font-size:8px;line-height:1.45;bottom:13px;left:18px;right:18px}.solar-sky-banner:after{background:linear-gradient(#f4faf9bc,#0000 65%)}}@media (prefers-reduced-motion:reduce){.ss-sun{transition:none}}.ss-sky{z-index:auto}.ss-sky>svg{z-index:0}.solar-sky-banner:after{z-index:1}.ss-sun{transition:none}.energy-dashboard{--ed-ink:#263c3b;--ed-muted:#768883;--ed-line:#dce6e2;--ed-green:#319778;--ed-solar:#dca73f;--ed-blue:#5789bb;color:var(--ed-ink);font-variant-numeric:tabular-nums;max-width:1600px;margin:0 auto}.ed-heading h1{letter-spacing:-1.2px;margin:6px 0;font-size:32px;font-weight:600}.ed-heading h1>span{color:#4da68a}@media (width<=700px){.ed-heading h1{font-size:25px}}.ed-heading{justify-content:space-between;align-items:center;gap:24px;padding:10px 2px 25px;display:flex}.ed-eyebrow{color:#7b8c87;letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.ed-heading h2{letter-spacing:-1.2px;margin:6px 0;font-size:32px;font-weight:600}.ed-heading h2>span{color:#4da68a}.ed-heading p{color:var(--ed-muted);margin:5px 0 0;font-size:12px}.ed-heading-right{align-items:center;gap:25px;display:flex}.ed-connection{text-align:right}.ed-status{color:#53796a;background:#edf3ef;border:1px solid #dce7e0;border-radius:30px;align-items:center;gap:8px;padding:8px 11px;font-size:11px;font-weight:600;display:inline-flex}.ed-status i{background:#98aba2;border-radius:50%;width:6px;height:6px}.ed-status.live i{background:#35a17d;box-shadow:0 0 0 4px #35a17d15}.ed-status.offline{color:#a36d5e;background:#f7eeeb;border-color:#eedcd6}.ed-status.offline i{background:#bd8976}.ed-connection>small{color:var(--ed-muted);margin-top:7px;font-size:10px;display:block}.ed-clock{border-right:1px solid var(--ed-line);align-items:center;gap:12px;padding:10px 18px;display:flex}.ed-clock small{color:var(--ed-muted);font-size:10px;display:block}.ed-clock strong{letter-spacing:-.6px;font-size:20px;font-weight:500}.ed-celestial{background:linear-gradient(140deg,#ffe5a2,#efb954);border-radius:50%;width:25px;height:25px;display:block;box-shadow:0 0 0 6px #f0ce8220,0 0 0 12px #f0ce820d}.ed-clock.night .ed-celestial{background:linear-gradient(140deg,#d7e1ef,#889eb7);box-shadow:inset -6px -3px #7e94ae,0 0 18px #98b0d633}.ed-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.ed-kpi{background:linear-gradient(120deg,#fff,#f8faf9);border:1px solid #e2e9e6;border-radius:17px;padding:17px 19px;box-shadow:0 5px 18px #263d3205}.ed-kpi-title{color:#677c74;justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.ed-kpi-title i{color:#8faaa0;font-size:17px;font-style:normal}.ed-kpi-reading{justify-content:space-between;align-items:center;gap:12px;margin:13px 0 7px;display:flex}.ed-kpi-reading strong{letter-spacing:-1px;white-space:nowrap;font-size:28px;font-weight:550;line-height:1.1}.ed-kpi>small{color:#819088;font-size:10px}.ed-mini-trend{width:70px;min-width:30px;height:30px;overflow:visible}.ed-mini-trend path{fill:none;stroke:#379d7d;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.ed-mini-trend.solar path{stroke:var(--ed-solar)}.ed-mini-trend.battery path{stroke:var(--ed-blue)}.ed-mini-trend.grid path{stroke:#869298}.ed-kpi-quiet{align-items:center;gap:4px;height:20px;display:flex}.ed-kpi-quiet i{background:#dbe5e0;width:8px;height:2px}.ed-note{color:#8a7546;background:#f6f0df;border-radius:12px;padding:12px 16px;font-size:12px;line-height:1.6}.ed-note.offline{color:#966b5c;background:#f8efeb}.ed-section-heading{justify-content:space-between;align-items:center;gap:18px;margin:25px 2px 14px;display:flex}.ed-section-heading h3{letter-spacing:-.5px;margin:5px 0 0;font-size:18px;font-weight:600}.ed-section-heading>span{color:var(--ed-muted);font-size:11px}.ed-inverter-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.ed-inverter-list article{background:linear-gradient(115deg,#f2f7f3,#fff 45%);border:1px solid #dfe8e3;border-radius:17px;align-items:center;gap:8px;padding:20px 22px 20px 5px;display:flex}.ed-inverter-list article>svg{flex-shrink:0;width:132px;height:112px}.ed-inverter-content{flex:1;min-width:0}.ed-inverter-content h4{margin:4px 0;font-size:17px;font-weight:600}.ed-inverter-content p{color:var(--ed-muted);margin:0 0 14px;font-size:11px}.ed-inverter-content dl{border-top:1px solid #e9eeeb;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding-top:10px;display:grid}.ed-inverter-content dt{color:#81918a;font-size:10px}.ed-inverter-content dd{margin:4px 0 0;font-size:15px;font-weight:600}.ed-totals{background:#fff;border:1px solid #e0e8e4;border-radius:17px;grid-template-columns:repeat(6,minmax(0,1fr));padding:20px 6px;display:grid}.ed-total{border-right:1px solid #e6ece8;padding:0 15px}.ed-total:last-child{border:0}.ed-total>span{color:#7a8a82;align-items:center;gap:7px;font-size:11px;display:flex}.ed-total i{color:var(--ed-green);font-style:normal}.ed-total.ed-solar i{color:var(--ed-solar)}.ed-total.ed-battery i{color:var(--ed-blue)}.ed-total strong{white-space:nowrap;letter-spacing:-.5px;margin-top:9px;font-size:19px;font-weight:500;display:block}.ed-footer{color:#87988e;justify-content:space-between;gap:20px;margin:22px 2px 10px;font-size:10px;display:flex}.ed-footer>span:first-child{align-items:center;gap:7px;display:flex}.ed-footer i{background:#94b8a4;border-radius:50%;width:5px;height:5px}.ed-empty{color:var(--ed-muted);padding:16px;font-size:12px}@media (width<=1100px){.ed-kpi{padding:15px}.ed-kpi-reading strong{font-size:24px}.ed-mini-trend{width:48px}.ed-totals{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}.ed-total:nth-child(3){border:0}.ed-inverter-list article>svg{width:100px}.ed-clock{display:none}}@media (width<=700px){.ed-heading{align-items:flex-start;gap:12px;padding:3px 0 18px}.ed-heading h2{font-size:25px}.ed-heading p{font-size:11px}.ed-heading .ed-eyebrow{font-size:8px}.ed-heading-right{padding-top:5px}.ed-status{white-space:nowrap;padding:7px 9px;font-size:10px}.ed-connection>small{font-size:8px}.ed-summary{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.ed-kpi{padding:13px}.ed-kpi-reading{gap:3px;margin:12px 0 6px}.ed-kpi-reading strong{font-size:25px}.ed-kpi-title{font-size:11px}.ed-mini-trend{width:37px}.ed-kpi>small{font-size:9px}.ed-inverter-list{grid-template-columns:1fr}.ed-inverter-list article>svg{width:116px}.ed-section-heading{align-items:flex-end;gap:12px}.ed-section-heading>span{text-align:right;max-width:125px;font-size:9px}.ed-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 0;padding:17px 3px}.ed-total:nth-child(3){border-right:1px solid #e6ece8}.ed-total:nth-child(2n){border:0}.ed-total strong{font-size:19px}.ed-footer{gap:12px;font-size:9px;line-height:1.5}.ed-footer>span:last-child{text-align:right}}@media (width<=370px){.ed-heading{flex-direction:column}.ed-heading-right{width:100%}.ed-connection{align-items:center;gap:12px;display:flex}.ed-connection>small{margin:0}.ed-kpi-reading strong{font-size:22px}.ed-mini-trend{display:none}}.ed-inverter-list article>.energy-product-render{object-fit:contain;filter:drop-shadow(0 6px 5px #42545a15);flex-shrink:0;width:132px;height:112px}@media (width<=800px){.ed-heading{flex-wrap:wrap;gap:12px;padding-bottom:16px}.ed-heading>div:first-child{width:100%}.ed-heading h1{font-size:27px}.ed-heading-right{width:100%;padding-top:0}.ed-connection{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.ed-connection>small{margin-top:0;font-size:10px}.ed-kpi-reading strong{font-size:clamp(21px,6vw,27px)}.ed-kpi-title{font-size:12px}.ed-kpi>small{font-size:10px;line-height:1.5;display:block}.ed-inverter-list article>.energy-product-render{width:100px;height:102px}.ed-inverter-content h4{overflow-wrap:anywhere}.ed-section-heading h3{font-size:19px}.ed-footer{margin-bottom:20px}}@media (width<=370px){.ed-kpi{padding:11px}.ed-kpi-title{font-size:11px}.ed-inverter-list article{padding-right:12px}.ed-inverter-list article>.energy-product-render{width:82px}.ed-inverter-content dl{gap:6px}}.ed-battery-monitor{background:linear-gradient(115deg,#eef4f8,#fff 70%);border:1px solid #dce6ed;border-radius:18px;grid-template-columns:1fr 1.2fr;gap:22px;padding:24px;display:grid}.ed-battery-device{align-items:center;gap:18px;min-width:0;display:flex}.ed-battery-device>svg,.ed-battery-device>img{object-fit:contain;flex-shrink:0;width:130px;height:120px}.ed-battery-device>div{flex:1}.ed-battery-device h4{letter-spacing:-1px;margin:9px 0;font-size:34px;font-weight:550}.ed-battery-device h4 small{color:#82919c;letter-spacing:0;font-size:12px}.ed-battery-device p{color:#617b8c;margin:10px 0 0;font-size:12px}.ed-battery-gauge{background:#dbe5ec;border-radius:5px;height:7px;overflow:hidden}.ed-battery-gauge i{background:linear-gradient(90deg,#6499bc,#78b69b);border-radius:5px;height:100%;transition:width 1s;display:block}.ed-battery-metrics{border-left:1px solid #e0e8ed;grid-template-columns:1fr 1fr;align-content:center;gap:22px;margin:0;padding-left:24px;display:grid}.ed-battery-metrics dt{color:#748992;font-size:11px}.ed-battery-metrics dd{color:#355467;margin:7px 0 4px;font-size:21px;font-weight:550}.ed-battery-metrics small,.ed-battery-caption{color:#87979e;font-size:10px}.ed-battery-caption{margin:10px 3px;line-height:1.5}@media (width<=700px){.ed-battery-monitor{grid-template-columns:1fr;gap:20px;padding:17px}.ed-battery-device>img,.ed-battery-device>svg{width:115px;height:105px}.ed-battery-metrics{border-top:1px solid #e0e8ed;border-left:0;padding:18px 0 0}.ed-battery-device h4{font-size:30px}}.ed-battery-direction{align-items:center;gap:10px;display:flex}.ed-direction-arrow{color:#7b8992;background:#edf1f4;border-radius:50%;flex-shrink:0;place-items:center;width:31px;height:31px;font-size:22px;line-height:1;display:grid}.ed-battery-direction.charging{color:#247e57}.charging .ed-direction-arrow{color:#23935e;background:#e2f4e9}.ed-battery-direction.discharging{color:#b25b55}.discharging .ed-direction-arrow{color:#ce5d54;background:#f9e6e3}.ed-battery-direction small{opacity:.8;margin-top:3px;font-size:10px;display:block}.charging .ed-direction-arrow.is-live,.discharging .ed-direction-arrow.is-live{animation:2.5s ease-in-out infinite ed-direction-pulse}@keyframes ed-direction-pulse{50%{box-shadow:0 0 0 5px #86b3a216}}@media (prefers-reduced-motion:reduce){.ed-direction-arrow{animation:none!important}}.ed-note{justify-content:space-between;align-items:center;gap:16px;display:flex}.ed-note button{color:#895e4f;min-height:40px;font:inherit;cursor:pointer;background:#fff9f5;border:1px solid #dec4b9;border-radius:999px;flex-shrink:0;padding:9px 13px;font-weight:600}.ed-note button:focus-visible{outline-offset:2px;outline:3px solid #ca9d87}@media (width<=600px){.ed-note{flex-direction:column;align-items:flex-start}}.energy-network{background:linear-gradient(135deg,#f8fbf9,#f0f5f3);border:1px solid #dce6e0;border-radius:23px;overflow:hidden;box-shadow:0 9px 35px #4a6a5710}.en-toolbar{justify-content:space-between;align-items:center;gap:15px;padding:23px 27px 0;display:flex}.en-eyebrow{color:#8b9b91;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:700;display:block}.en-toolbar h3{letter-spacing:-.5px;margin:5px 0 0;font-size:18px;font-weight:550}.en-hint{color:#85988b;font-size:11px}.en-hint>span{margin-left:10px;font-size:17px}.en-stage{background-image:radial-gradient(#a5bca62f .75px,#0000 .75px);background-size:18px 18px;margin:0 16px;position:relative;container:energy-network/inline-size}.en-layout{grid-template-rows:repeat(2,auto);grid-template-columns:repeat(3,minmax(0,1fr));place-items:center;gap:70px 90px;padding:38px 28px 28px;display:grid;position:relative}.en-device{z-index:2;appearance:none;font:inherit;color:#334d46;text-align:center;cursor:pointer;background:linear-gradient(145deg,#ffffffed,#f7faf8ed);border:1px solid #e3eae4;border-radius:17px;flex-direction:column;align-items:center;width:190px;max-width:100%;padding:12px 12px 17px;transition:box-shadow .2s,border-color .2s,background .2s;display:flex;position:relative;box-shadow:0 8px 18px #4c695511,inset 0 1px 1px #fff}.en-device:hover{border-color:#a6c5b3;box-shadow:0 10px 24px #4c695525}.en-device:focus-visible{outline-offset:5px;outline:3px solid #389a79}.en-device.is-selected{background:linear-gradient(145deg,#fff,#eef6f0);border-color:#98bca8;box-shadow:0 0 0 3px #b3cebc22,0 10px 24px #4c69551a}.en-device-top{letter-spacing:.12em;color:#a0ada5;justify-content:space-between;align-items:center;width:100%;padding:0 2px;font-size:8px;display:flex}.en-device-top i{background:#bcc8c0;border-radius:50%;width:5px;height:5px}.en-device-top i.is-on{background:#5dad80;box-shadow:0 0 0 3px #5dad8015}.en-device>svg{width:175px;max-width:100%;height:108px;margin:2px 0 1px;display:block;overflow:visible}.en-device-name{margin:0 0 4px;font-size:12px;font-weight:550}.en-device-value{letter-spacing:-.8px;font-size:23px;font-weight:550;line-height:1.2}.en-device-state{color:#82958a;min-height:14px;margin-top:4px;font-size:9px;line-height:1.5}.en-device-solar{grid-area:1/1}.en-device-inverter{grid-area:1/2}.en-device-home{grid-area:1/3}.en-device-battery{grid-area:2/1}.en-device-grid{grid-area:2/3}.en-center-note{text-align:center;color:#92a398;grid-area:2/2;align-self:end;padding-bottom:35px}.en-center-note>span{color:#b6c9bc;margin-bottom:7px;font-size:23px;font-weight:300;display:block}.en-center-note b{font-size:10px;font-weight:500;display:block}.en-center-note small{color:#a3b2a8;margin-top:4px;font-size:9px;display:block}.en-port{pointer-events:none;width:1px;height:1px;position:absolute}.en-port-solar-out,.en-port-inv-load,.en-port-battery-in{top:50%;right:-.5px}.en-port-inv-solar,.en-port-home-in,.en-port-grid-in{top:50%;left:-.5px}.en-port-inv-battery{bottom:-.5px;left:30%}.en-port-inv-grid{bottom:-.5px;left:70%}.en-connections{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:visible}.en-route{--flow:#47a184}.en-route.en-solar{--flow:#ce9e44}.en-route.en-battery{--flow:#689ccd}.en-route.en-grid{--flow:#8d9baa}.en-route path{fill:none;stroke-linecap:round;stroke-linejoin:round}.en-track-shadow{stroke:#fff;stroke-width:5px;opacity:.8}.en-track{stroke:#d0ddd4;stroke-width:1.4px}.en-route.is-active .en-track{stroke:var(--flow);opacity:.38}.en-current{stroke:var(--flow);stroke-width:3px;stroke-dasharray:2 10;opacity:0}.en-route.is-active .en-current{opacity:1;animation:5s linear infinite en-current-travel}.en-route.is-reverse .en-current{animation-direction:reverse}.en-terminal{fill:#f5f9f6;stroke:#a9beb0;stroke-width:1.5px}.en-route.is-active .en-terminal{stroke:var(--flow);fill:#fff}.en-inspector{background:#ffffffa8;border:1px solid #e0e9e2;border-radius:14px;justify-content:space-between;align-items:center;gap:26px;margin:0 21px;padding:20px 26px;display:flex}.en-inspector h4{margin:4px 0;font-size:15px;font-weight:550}.en-inspector p{color:#829188;max-width:460px;margin:0;font-size:11px;line-height:1.6}.en-inspector dl{flex-shrink:0;gap:28px;margin:0;display:flex}.en-inspector dt{color:#8a9d91;margin-bottom:5px;font-size:9px}.en-inspector dd{color:#435e50;white-space:nowrap;margin:0;font-size:13px;font-weight:550}.en-legend{color:#86998c;align-items:center;gap:18px;padding:16px 27px;font-size:9px;display:flex}.en-legend>span{align-items:center;gap:6px;display:flex}.en-legend i{background:#4ba483;border-radius:50%;width:5px;height:5px}.en-legend i.solar{background:#d3aa52}.en-legend i.battery{background:#74a4cf}.en-legend i.grid{background:#95a0a9}.en-legend>small{color:#9aaba0;margin-left:auto;font-size:9px}@keyframes en-current-travel{0%{stroke-dashoffset:0}to{stroke-dashoffset:-120px}}.en-flow-label rect{fill:#f7faf8;stroke:#e0e9e3;stroke-width:.8px}.en-flow-label text{fill:#91a297;font-family:inherit;font-size:9px}.en-route.is-active .en-flow-label text{fill:var(--flow);font-weight:600}.en-route.is-active .en-flow-label rect{fill:#fff;stroke:var(--flow);stroke-opacity:.2}@container energy-network (width<=650px){.en-layout{grid-template-rows:repeat(3,auto);grid-template-columns:1fr 1fr;gap:58px 34px;padding:28px 9px 26px}.en-device{width:162px;padding:10px 8px 13px}.en-device>svg{width:142px;height:87px}.en-device-name{font-size:11px}.en-device-value{font-size:20px}.en-device-state{font-size:8px}.en-device-solar{grid-area:1/1}.en-device-grid{grid-area:1/2}.en-device-inverter{grid-area:2/1/3/3;width:164px}.en-device-battery{grid-area:3/1}.en-device-home{grid-area:3/2}.en-center-note{display:none}.en-port-solar-out,.en-port-grid-in{inset:auto auto -.5px 50%}.en-port-inv-solar{top:40%;bottom:auto;left:-.5px}.en-port-inv-grid{inset:40% -.5px auto auto}.en-port-inv-load{inset:auto auto -.5px 70%}.en-port-home-in,.en-port-battery-in{inset:-.5px auto auto 50%}}@media (width<=900px){.en-inspector{flex-direction:column;align-items:flex-start;gap:14px}.en-inspector dl{gap:35px}.en-legend{flex-wrap:wrap;gap:11px 15px}.en-legend>small{margin-left:0}}@media (width<=700px){.energy-network{border-radius:19px}.en-toolbar{align-items:flex-start;padding:20px 18px 0}.en-toolbar h3{max-width:180px;font-size:16px}.en-hint{text-align:right;max-width:89px;font-size:9px;line-height:1.6}.en-hint>span{display:none}.en-stage{margin:0 7px}.en-inspector{margin:0 13px;padding:15px}.en-inspector p{font-size:10px}.en-inspector dl{justify-content:space-between;gap:10px;width:100%}.en-inspector dd{font-size:12px}.en-legend{gap:10px 12px;padding:14px 18px;font-size:8px}.en-legend>small{width:100%;font-size:8px}.en-device-state{white-space:normal}}@media (prefers-reduced-motion:reduce){.en-route.is-active .en-current{animation:none!important}.en-device{transition:none}}.en-device:active:not(:disabled){transform:none}.en-device>.energy-product-render{object-fit:contain;filter:drop-shadow(0 6px 5px #42545a15);width:175px;max-width:100%;height:108px;margin:2px 0 1px;transition:filter .2s,opacity .2s;display:block}.energy-product-render.is-idle{opacity:.85}.en-device:has(.energy-product-render.is-active){--render-glow:#4bd7d012}@container energy-network (width<=650px){.en-device>.energy-product-render{width:142px;height:98px}}@media (width<=430px){.en-toolbar{padding-top:17px}.en-toolbar h3{max-width:200px;font-size:15px}.en-hint{max-width:82px}.en-layout{gap:54px 22px;padding-inline:5px}.en-device{border-radius:14px}.en-device-name{font-size:11px;line-height:1.3}.en-device-state{line-height:1.5}.en-inspector h4{font-size:15px}.en-inspector p{font-size:11px}.en-inspector dt{font-size:10px}.en-inspector dd{font-size:14px}}.device-icon-picker{background:#fafcfb;border:1px solid #e1e8e4;border-radius:15px;gap:10px;padding:12px;display:grid}.device-icon-picker-summary{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.device-icon-picker-summary>span:nth-child(2){gap:3px;display:grid}.device-icon-picker-summary strong{font-size:12px}.device-icon-picker-summary small{color:#71807a;font-size:10px}.device-icon-picker-preview,.device-icon-picker-options button>span{background:#fff;border-radius:12px;place-items:center;display:grid;overflow:hidden}.device-icon-picker-preview{width:52px;height:52px}.device-icon-picker-preview .device-product-asset{object-fit:contain;width:56px;height:56px}.device-icon-picker-options{grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:7px;max-height:260px;padding:2px;display:grid;overflow:auto}.device-icon-picker-options button{color:#405048;cursor:pointer;background:#fff;border:1px solid #e0e7e3;border-radius:12px;gap:4px;min-width:0;padding:7px;display:grid}.device-icon-picker-options button.selected{background:#e9f7f0;border-color:#4d9b76;box-shadow:0 0 0 1px #4d9b76}.device-icon-picker-options button>span{height:50px}.device-icon-picker-options .device-product-asset{object-fit:contain;width:54px;height:54px}.device-icon-picker-options small{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.device-icon-picker-reset{color:#386e55;cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px;font-size:10px;text-decoration:underline}@media (width<=560px){.device-icon-picker-summary{grid-template-columns:46px 1fr}.device-icon-picker-summary .iot-secondary{grid-column:1/-1}.device-icon-picker-preview{width:46px;height:46px}}.iot-panel-backdrop{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#26312f66;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.iot-panel-dialog{color:#202728;background:#fff;border-radius:27px;width:min(680px,100%);max-height:calc(100dvh - 36px);padding:27px;overflow:auto;box-shadow:0 20px 80px #1e2b2d33}.iot-panel-dialog>header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.iot-panel-dialog header p{color:#7d8586;margin:0 0 3px;font-size:11px}.iot-panel-dialog h2,.iot-panel-dialog h3{letter-spacing:-.04em;margin:0;font-size:23px}.iot-panel-dialog h3{font-size:16px}.iot-icon-button{background:#f0f2f2;border:0;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1}.iot-lead,.iot-muted,.iot-hint{color:#687371;margin:0 0 17px;font-size:12px;line-height:1.55}.iot-form{gap:18px;display:grid}.iot-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.iot-field{gap:6px;font-size:12px;font-weight:600;display:grid}.iot-field>span b{color:#b35050}.iot-field input,.iot-field select,.iot-capability input,.iot-capability select{color:#202728;background:#fbfcfb;border:1px solid #dce2df;border-radius:11px;width:100%;min-height:42px;padding:0 11px}.iot-form fieldset{border:1px solid #e4e9e6;border-radius:16px;margin:0;padding:16px}.iot-form legend{padding:0 5px;font-size:12px;font-weight:700}.iot-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.iot-check-grid label,.iot-check{background:#f7f9f8;border-radius:11px;align-items:flex-start;gap:8px;padding:10px;font-size:12px;display:flex}.iot-check-grid input,.iot-check input{accent-color:#2d6a4f}.iot-check-grid span{gap:2px;display:grid}.iot-check-grid small{color:#7d8586}.iot-form footer,.iot-diagnostics footer{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.iot-primary,.iot-secondary,.iot-danger{border:0;border-radius:999px;min-height:38px;padding:0 15px;font-size:12px;font-weight:600}.iot-primary{color:#fff;background:#2d6a4f}.iot-secondary{color:#355c4b;background:#edf1ef}.iot-danger{color:#9b3b34;background:#fae8e5}.iot-primary:disabled,.iot-secondary:disabled,.iot-danger:disabled,.iot-switch:disabled{opacity:.48;cursor:default}.iot-errors,.iot-notice{color:#285f47;background:#e8f3ec;border-radius:12px;padding:11px 13px;font-size:12px;line-height:1.5}.iot-errors,.iot-notice.error{color:#9b3b34;background:#fae8e5}.iot-status{color:#687371;background:#edf0ef;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.iot-status.online{color:#286143;background:#dcefe3}.iot-status.error{color:#a34037;background:#fae4e1}.iot-status.pairing{color:#806a26;background:#f5edcf}.iot-quick-controls{background:#fff;border-radius:21px;padding:18px;box-shadow:0 8px 24px #313a3510}.iot-quick-controls header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:13px;display:flex}.iot-quick-controls h3{margin:6px 0 0;font-size:16px}.iot-capability-list{gap:9px;display:grid}.iot-capability{border:1px solid #e7ece9;border-radius:14px;grid-template-columns:minmax(120px,1fr) minmax(130px,1fr);align-items:center;gap:13px;padding:13px;display:grid;position:relative}.iot-capability>span{gap:3px;display:grid}.iot-capability strong{font-size:12px}.iot-capability small,.iot-telemetry small,.iot-connection small,.iot-diagnostics small{color:#7d8586;font-size:10px}.iot-capability b{font-size:12px;font-weight:500}.iot-capability output{font-size:14px;font-weight:600}.iot-capability em{color:#a34037;grid-column:1/-1;font-size:11px;font-style:normal}.iot-switch{background:#d9dedb;border:0;border-radius:999px;justify-self:end;width:42px;height:26px;padding:3px}.iot-switch i{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;display:block;box-shadow:0 1px 4px #0001}.iot-switch.on{background:#2d6a4f}.iot-switch.on i{transform:translate(16px)}.iot-telemetry{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.iot-telemetry span,.iot-connection span,.iot-diagnostics>div{background:#f4f7f5;border-radius:11px;gap:4px;padding:10px;display:grid}.iot-telemetry strong{font-size:12px}.iot-tabs{gap:4px;margin:-3px 0 18px;padding-bottom:4px;display:flex;overflow:auto}.iot-tabs button{color:#65716c;background:#f0f3f1;border:0;border-radius:999px;flex:none;padding:8px 11px;font-size:11px}.iot-tabs button.active{color:#235d47;background:#c9f1df}.iot-connection{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.iot-connection strong,.iot-diagnostics strong{overflow-wrap:anywhere;font-size:12px}.iot-diagnostics{gap:9px;display:grid}.iot-diagnostics pre{max-height:150px;margin:0;font-size:11px;overflow:auto}.iot-settings{width:min(760px,100%)}@media (width<=560px){.iot-panel-backdrop{padding:9px}.iot-panel-dialog{border-radius:22px;max-height:calc(100dvh - 18px);padding:20px}.iot-form-grid,.iot-check-grid,.iot-connection,.iot-capability{grid-template-columns:1fr}.iot-switch{position:absolute;top:15px;right:13px}.iot-capability select{grid-column:1}.iot-tabs{margin-inline:-5px}.iot-panel-dialog h2{font-size:21px}}.iot-json{color:#202728;resize:vertical;background:#fbfcfb;border:1px solid #dce2df;border-radius:11px;width:100%;min-height:92px;padding:10px;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.iot-unknown{color:#806a26}.iot-switch.unknown{background:#d6c98e}.iot-switch.unknown i{place-items:center;font-size:12px;font-style:normal;display:grid}.iot-snapshot{margin:13px 0 0}.iot-snapshot img{object-fit:cover;background:#edf0ef;border-radius:14px;width:100%;max-height:180px;display:block}.iot-snapshot figcaption{color:#7d8586;margin-top:5px;font-size:10px}.iot-collection-tab{gap:18px;display:grid}.iot-collections{gap:8px;display:grid}.iot-collections article{border:1px solid #e5ebe7;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;padding:11px;display:flex}.iot-collections article>div{gap:3px;display:grid}.iot-collections small{color:#7d8586;font-size:10px}.iot-collections article>span{gap:6px;display:flex}.iot-collections .iot-secondary,.iot-collections .iot-danger{min-height:31px;padding-inline:10px;font-size:10px}.iot-type-picker{align-items:center;gap:10px;display:flex}.iot-type-picker select{flex:1;min-width:0}.iot-type-preview{background:linear-gradient(145deg,#f8f8fa,#ebe8f3);border-radius:14px;flex:0 0 58px;place-items:center;width:58px;height:52px;display:grid;overflow:hidden}.iot-type-preview .device-product-asset{object-fit:contain;filter:drop-shadow(0 4px 6px #263a3330);width:54px;height:54px;transform:scale(1.15)}.iot-wizard{width:min(620px,100%)}.iot-wizard-steps{gap:9px;margin:0 0 18px;padding:0;list-style:none;display:flex}.iot-wizard-steps li{color:#98a19e;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.iot-wizard-steps b,.iot-wizard-connection>span{color:#6b7772;background:#edf1ef;border-radius:50%;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.iot-wizard-steps li.active{color:#285f47}.iot-wizard-steps li.active b{color:#1d6549;background:#c9f1df}.iot-wizard-device,.iot-wizard-connection{background:linear-gradient(135deg,#f6faf8,#eff7f2);border-radius:17px;align-items:center;gap:14px;padding:13px 15px;display:flex}.iot-wizard-device>div,.iot-wizard-connection>div{gap:3px;display:grid}.iot-wizard-device strong,.iot-wizard-connection strong{font-size:14px}.iot-wizard-device p,.iot-wizard-connection p,.iot-disclosure p{color:#71807a;margin:0;font-size:11px;line-height:1.45}.iot-wizard-asset{background:#fff;border-radius:18px;flex:0 0 68px;place-items:center;width:68px;height:68px;display:grid;overflow:hidden;box-shadow:0 4px 14px #284e3b12}.iot-wizard-asset .device-product-asset{object-fit:contain;filter:drop-shadow(0 5px 7px #263a3325);width:72px;height:72px}.iot-disclosure{padding:0 2px}.iot-disclosure.open{background:#fafbfa;border-radius:13px;padding:12px 13px}.iot-disclosure-button{color:#355c4b;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:4px 0;font-size:12px;font-weight:700;display:flex}.iot-disclosure-button span{font-size:18px;font-weight:400}.iot-disclosure .iot-check-grid,.iot-advanced-fields{margin-top:11px}.iot-advanced-fields{gap:12px;display:grid}.iot-wizard .iot-form-grid{margin-top:1px}.iot-wizard footer{padding-top:2px}@media (width<=560px){.iot-wizard-device{align-items:flex-start}.iot-wizard-asset{flex-basis:58px;width:58px;height:58px}.iot-wizard-asset .device-product-asset{width:63px;height:63px}}.iot-device-overview{gap:20px;display:grid}.iot-device-hero{background:linear-gradient(135deg,#f3f8f5,#eef3f1);border-radius:20px;align-items:center;gap:16px;padding:16px;display:flex}.iot-settings-asset{background:#fff;border-radius:20px;flex:0 0 82px;place-items:center;width:82px;height:82px;display:grid;overflow:hidden;box-shadow:0 6px 18px #284e3b14}.iot-settings-asset .device-product-asset{object-fit:contain;filter:drop-shadow(0 6px 8px #263a3326);width:88px;height:88px}.iot-device-hero>div{gap:4px;display:grid}.iot-device-hero h3{margin-top:2px}.iot-device-hero p{color:#71807a;margin:0;font-size:11px;line-height:1.45}.iot-settings-section{gap:10px;display:grid}.iot-settings-section>h3{font-size:13px}.iot-settings-telemetry,.iot-device-identity{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.iot-settings-telemetry span,.iot-device-identity span{background:#f4f7f5;border-radius:13px;gap:5px;padding:12px;display:grid}.iot-settings-telemetry small,.iot-device-identity small{color:#7d8586;font-size:10px}.iot-settings-telemetry strong,.iot-device-identity strong{overflow-wrap:anywhere;font-size:13px}.iot-device-identity{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-advanced-settings{gap:9px;display:grid}.iot-advanced-settings>details{background:#fafbfa;border:1px solid #e4e9e6;border-radius:15px}.iot-advanced-settings summary{cursor:pointer;color:#355c4b;padding:14px 16px;font-size:12px;font-weight:700;list-style-position:inside}.iot-advanced-settings details[open]>summary{border-bottom:1px solid #e8ecea}.iot-advanced-settings details>.iot-form,.iot-advanced-settings details>.iot-collection-tab{padding:16px}.iot-advanced-settings>footer{justify-content:flex-end;padding-top:8px;display:flex}@media (width<=560px){.iot-device-hero{align-items:flex-start;padding:13px}.iot-settings-asset{flex-basis:68px;width:68px;height:68px}.iot-settings-asset .device-product-asset{width:74px;height:74px}.iot-settings-telemetry{grid-template-columns:repeat(2,minmax(0,1fr))}.iot-device-identity{grid-template-columns:1fr}}.device-onboarding-intro{gap:16px;margin-bottom:18px;display:grid}.device-onboarding-heading{gap:7px;display:grid}.device-onboarding-eyebrow{letter-spacing:.14em;color:#78877f;font-size:9px;font-weight:750}.device-onboarding-heading h3,.device-code-result h3{letter-spacing:-.035em;color:#22332b;margin:0;font-size:23px;font-weight:650}.device-onboarding-heading p,.device-code-result p{color:#78867e;margin:0;font-size:12px;line-height:1.6}.device-product-protocol{color:#65766b;justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.device-product-protocol select{color:#42594b;min-width:0;max-width:230px;font:inherit;background:#fafcfb;border:1px solid #e3e9e5;border-radius:11px;padding:9px 10px}.device-method-switch{--method-gap:5px;--method-size:calc((100% - 10px) / var(--method-count));grid-template-columns:repeat(var(--method-count),minmax(0,1fr));isolation:isolate;background:#eef2ef;border-radius:18px;padding:5px;display:grid;position:relative}.device-method-thumb{width:var(--method-size);transform:translateX(calc(var(--method-index) * 100%));z-index:-1;background:#fff;border-radius:13px;transition:transform .24s cubic-bezier(.2,.75,.25,1);position:absolute;top:5px;bottom:5px;left:5px;box-shadow:0 3px 10px #223d2d12,0 0 0 1px #dfe9e2}.device-method-switch button{min-width:0;min-height:47px;font:inherit;color:#718178;cursor:pointer;background:0 0;border:0;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:8px 5px;font-size:11px;font-weight:650;transition:color .2s;display:flex}.device-method-switch button svg{flex-shrink:0;width:17px;height:17px}.device-method-switch button[aria-selected=true]{color:#20583f}.device-method-switch button:disabled{color:#a9b3ad;cursor:not-allowed}.device-method-switch button:focus-visible,.device-scan-actions input:focus-visible{outline-offset:2px;outline:2px solid #3a9270}.device-onboarding-note{color:#859188;margin:0;font-size:10px;line-height:1.6}.device-method-panel{animation:.22s ease-out device-method-enter}.device-manual-fields{gap:17px;display:grid}.device-code-scanner{gap:12px;display:grid}.device-scan-frame{background:radial-gradient(#edf8f0,#f9fbfa 76%);border:1px solid #e2eae4;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:205px;display:flex;position:relative;overflow:hidden}.device-scan-frame>svg{color:#4e8b69;width:58px;height:58px;margin-bottom:9px}.device-scan-frame>strong{color:#3b5b47;font-size:13px;font-weight:600}.device-scan-frame>p{color:#89978e;margin:0;font-size:11px}.device-scan-frame.is-live{background:#17271e;min-height:225px}.device-scan-frame video{object-fit:cover;width:100%;height:225px;display:block}.device-scan-guide{pointer-events:none;border:2px solid #c0efcf;border-radius:17px;width:140px;height:140px;position:absolute;box-shadow:0 0 0 120px #0003}.device-scan-caption{color:#fff;background:#12281cbf;border-radius:30px;padding:7px 11px;font-size:10px;position:absolute;bottom:12px}.device-scan-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.device-scan-upload{cursor:pointer;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.device-scan-upload input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.device-scan-upload.is-busy{opacity:.6;cursor:wait}.device-code-paste{color:#637b6b;padding:10px 0;font-size:11px}.device-code-paste summary{cursor:pointer}.device-code-paste label{gap:7px;margin:12px 0 8px;display:grid}.device-code-paste textarea{box-sizing:border-box;resize:vertical;color:#344e40;background:#fafcfb;border:1px solid #dfe8e1;border-radius:12px;width:100%;min-height:76px;padding:11px;font:12px ui-monospace,monospace}.device-code-privacy{color:#97a29b;margin:7px 0 0;font-size:9px;line-height:1.6}.device-code-result{background:#f4f9f5;border:1px solid #dce8df;border-radius:19px;gap:13px;padding:23px;display:grid}.device-code-result h3{font-size:19px}.device-code-result small{color:#7c8b81;overflow-wrap:anywhere;font-size:10px}.device-code-result>div{flex-wrap:wrap;gap:8px;margin-top:5px;display:flex}.device-connection-readiness{color:#627a6a;background:#f0f6f2;border-radius:12px;padding:12px 14px;font-size:11px}.device-connection-readiness p{margin:0;line-height:1.6}.device-connection-readiness label{align-items:center;gap:10px;line-height:1.5;display:flex}.device-connection-readiness input{accent-color:#317554}@keyframes device-method-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width<=560px){.device-onboarding-heading h3{font-size:22px}.device-method-switch button{flex-direction:column;gap:5px;min-height:55px;font-size:10px}.device-product-protocol{flex-direction:column;align-items:flex-start;gap:7px}.device-product-protocol select{box-sizing:border-box;width:100%;max-width:none}.device-scan-frame{min-height:190px}.device-code-result{padding:17px}}@media (prefers-reduced-motion:reduce){.device-method-thumb{transition:none}.device-method-panel{animation:none}}.iot-field.has-addon{grid-column:1/-1}.model-catalog-search{gap:7px;min-width:0;margin-top:3px;display:grid}.model-catalog-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.model-catalog-actions>button{color:#30634a;min-height:36px;font:inherit;cursor:pointer;background:#f3f9f5;border:1px solid #d8e6dd;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:8px 11px;font-size:11px;font-weight:650;display:inline-flex}.model-catalog-actions>button:disabled{opacity:.5;cursor:default}.model-catalog-actions svg{flex-shrink:0;width:16px;height:16px}.model-catalog-actions>a{color:#7e9385;white-space:nowrap;font-size:10px;text-decoration:none}.model-catalog-actions>a:hover{text-decoration:underline}.model-catalog-scope,.model-catalog-feedback{color:#829085;margin:0;font-size:10px;line-height:1.6}.model-catalog-error{color:#917237;background:#faf4e9;border-radius:10px;margin:0;padding:10px 12px;font-size:11px;line-height:1.5}.model-catalog-selected{color:#3e7353;background:#eaf6ee;border-radius:11px;margin:0;padding:11px 13px;font-size:11px;line-height:1.6}.model-catalog-results{gap:9px;animation:.2s ease-out device-method-enter;display:grid}.model-catalog-results ul{overscroll-behavior:contain;gap:6px;min-width:0;max-height:275px;margin:0;padding:2px;list-style:none;display:grid;overflow:auto}.model-catalog-results li{min-width:0}.model-catalog-results li>button{box-sizing:border-box;text-align:left;color:#335d44;width:100%;font:inherit;cursor:pointer;background:#fafcfb;border:1px solid #e1e8e2;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;transition:background .15s,border-color .15s;display:flex}.model-catalog-results li>button:hover{background:#f0f8f2;border-color:#acd1b8}.model-catalog-results li>button:focus-visible{outline-offset:1px;outline:2px solid #478965}.model-catalog-results li>button>span:first-child{gap:4px;min-width:0;display:grid}.model-catalog-results strong{overflow-wrap:anywhere;font-size:12px;font-weight:650}.model-catalog-results small{color:#849187;overflow-wrap:anywhere;font-size:10px;line-height:1.45}.model-catalog-use{color:#467957;text-align:right;flex-shrink:0;gap:4px;font-size:10px;font-weight:700;display:grid}.model-catalog-use small{font-size:9px;font-weight:400}@media (width<=420px){.model-catalog-actions{flex-direction:column;align-items:flex-start;gap:7px}.model-catalog-actions>button{width:100%}.model-catalog-results li>button{padding:11px}}@media (prefers-reduced-motion:reduce){.model-catalog-results{animation:none}.model-catalog-results li>button{transition:none}}.model-catalog-field{grid-column:1/-1;min-width:0}.model-catalog-input{background:#fafcfb;border:1px solid #dde5df;border-radius:13px;align-items:stretch;transition:border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.model-catalog-input:focus-within{border-color:#75b494;box-shadow:0 0 0 3px #75b49420}.model-catalog-input.is-selected{border-color:#94c7a7}.iot-form .model-catalog-input input{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;flex:1;padding:12px 13px}.model-catalog-input>button{color:#2f7954;cursor:pointer;background:#dff1e6;border:0;border-radius:9px;flex:0 0 45px;place-items:center;margin:4px;padding:0;transition:background .17s,transform .12s,opacity .17s;display:grid}.model-catalog-input>button:hover{background:#cce8d7}.model-catalog-input>button:active{transform:scale(.94)}.model-catalog-input>button:disabled{opacity:.55;cursor:default}.model-catalog-input>button:focus-visible{outline-offset:-2px;outline:2px solid #448f64}.model-catalog-input svg{width:18px;height:18px}.model-catalog-caption{color:#87958c;justify-content:space-between;align-items:baseline;gap:10px;font-size:9px;line-height:1.6;display:flex}.model-catalog-caption>a{color:#7e9385;white-space:nowrap;text-decoration:none}.model-catalog-caption>a:hover{text-decoration:underline}.model-catalog-spinner{border:1.6px solid #367c5140;border-top-color:#367c51;border-radius:50%;width:15px;height:15px;animation:.65s linear infinite catalog-spin}.model-catalog-selected{animation:.18s ease-out catalog-confirm}.iot-wizard-type-picker{cursor:pointer;border-radius:18px;flex:none;align-items:center;gap:5px;display:flex;position:relative}.iot-wizard-type-picker>select{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.iot-wizard-type-arrow{color:#4d7a5e;background:#e5f1e9;border-radius:9px;flex:0 0 22px;place-items:center;width:22px;height:27px;transition:background .17s,transform .17s;display:grid}.iot-wizard-type-arrow svg{width:14px;height:14px}.iot-wizard-type-picker:hover .iot-wizard-type-arrow{background:#d3e8da;transform:translateY(1px)}.iot-wizard-type-picker:focus-within{outline-offset:4px;outline:2px solid #7eb394}.iot-wizard-type-picker .device-product-asset{animation:.18s ease-out catalog-confirm}@keyframes catalog-spin{to{transform:rotate(360deg)}}@keyframes catalog-confirm{0%{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (width<=560px){.model-catalog-caption{flex-wrap:wrap;gap:2px 10px}}@media (prefers-reduced-motion:reduce){.model-catalog-input,.model-catalog-input>button,.iot-wizard-type-arrow{transition:none}.model-catalog-spinner,.model-catalog-selected,.iot-wizard-type-picker .device-product-asset{animation:none}}.iot-wizard.wizard-unified{--wizard-border:#e3e9e5;--wizard-fill:#f7f9f8;--wizard-ink:#293d32;--wizard-muted:#8a978f;width:min(580px,100%);padding:25px}.wizard-unified>header{margin-bottom:18px}.wizard-unified>header p{display:none}.wizard-unified h2{letter-spacing:-.035em;font-size:22px}.wizard-progress{align-items:center;gap:25px;margin:0 0 19px;padding:0;list-style:none;display:flex}.wizard-progress li{color:#a2aba5;align-items:center;gap:7px;font-size:11px;display:flex}.wizard-progress li>span{background:#f0f3f1;border-radius:50%;place-items:center;width:21px;height:21px;font-size:10px;display:grid}.wizard-progress .active{color:#2e6c4e;font-weight:650}.wizard-progress .active>span,.wizard-progress .complete>span{color:#357653;background:#e0f2e7}.wizard-methods{gap:9px;margin-bottom:18px;display:grid}.wizard-muted{color:var(--wizard-muted);font-size:10px;line-height:1.5}.wizard-unified .device-method-switch{background:#f0f3f1;border-radius:14px;padding:4px}.wizard-unified .device-method-thumb{width:calc((100% - 8px)/var(--method-count));border-radius:10px;top:4px;bottom:4px;left:4px;box-shadow:0 2px 7px #25432e0c,0 0 0 1px #e0e8e2}.wizard-unified .device-method-switch button{border-radius:10px;min-height:39px}.wizard-form,.wizard-device-step,.wizard-connection-step{gap:17px;display:grid}.wizard-unified .iot-form-grid{gap:14px}.wizard-unified .iot-field{gap:6px}.wizard-unified .iot-field>span,.wizard-unified .iot-field-label{color:#687b6e;font-size:11px;font-weight:550}.wizard-unified .iot-field>span b{color:#54846a}.wizard-unified .iot-field input:not([type=checkbox]),.wizard-unified .iot-field select{border-color:var(--wizard-border);background-color:var(--wizard-fill);min-height:43px;color:var(--wizard-ink);border-radius:12px;font-size:12px}.wizard-unified .iot-field input:focus,.wizard-unified .iot-field select:focus{border-color:#83b698;outline:none;box-shadow:0 0 0 3px #79ab8e14}.wizard-device-step>.iot-form-grid>.iot-field:last-child,.wizard-full{grid-column:1/-1}.wizard-unified .model-catalog-input{border-color:var(--wizard-border);background:var(--wizard-fill);border-radius:12px}.wizard-unified .model-catalog-input input{background:0 0;border:0;border-radius:0;min-height:43px;box-shadow:none!important}.wizard-unified .model-catalog-input>button{border-radius:8px;flex-basis:38px}.wizard-unified .model-catalog-caption{font-size:9px}.wizard-unified .model-catalog-selected{padding:8px 10px;font-size:10px}.wizard-unified .model-catalog-results ul{max-height:190px}.wizard-disclosure{border:1px solid var(--wizard-border);background:#fff;border-radius:12px;overflow:hidden}.wizard-disclosure>button,.wizard-disclosure>summary{box-sizing:border-box;text-align:left;cursor:pointer;width:100%;font:inherit;color:#647b6c;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;font-size:11px;font-weight:550;list-style:none;display:flex}.wizard-disclosure>summary::-webkit-details-marker{display:none}.wizard-disclosure>summary:after{content:"+";font-size:15px;font-weight:400}.wizard-disclosure[open]>summary:after{content:"−"}.wizard-disclosure>button>span:first-child{align-items:center;gap:10px;display:flex}.wizard-disclosure>button small{color:#99a59d;font-size:10px;font-weight:400}.wizard-disclosure-body{gap:11px;padding:0 13px 13px;animation:.18s ease-out device-method-enter;display:grid}.wizard-disclosure .iot-check-grid{gap:6px}.wizard-disclosure .iot-check-grid label{padding:9px;font-size:11px}.wizard-disclosure .iot-check-grid input{flex:none;width:14px;height:14px}.wizard-unified footer{border-top:1px solid #edf0ee;justify-content:space-between;gap:10px;margin-top:2px;padding-top:15px;display:flex}.wizard-unified .iot-primary,.wizard-unified .iot-secondary{border-radius:12px;min-height:40px;padding-inline:17px;font-size:11px;transition:background .17s,transform .12s}.wizard-unified .iot-primary:active,.wizard-unified .iot-secondary:active{transform:scale(.97)}.wizard-connection-state{color:var(--wizard-muted);font-size:10px;line-height:1.6}.wizard-connection-state label{align-items:center;gap:8px;display:flex}.wizard-connection-state input{accent-color:#397950}.wizard-device-summary{background:var(--wizard-fill);border-radius:13px;align-items:center;gap:12px;padding:12px;display:flex}.wizard-device-summary>.device-product-asset{object-fit:contain;width:42px;height:42px}.wizard-device-summary>div{gap:4px;display:grid}.wizard-device-summary strong{color:var(--wizard-ink);font-size:12px;font-weight:600}.wizard-device-summary small{color:var(--wizard-muted);font-size:10px}.wizard-type-control{min-width:0;position:relative}.wizard-type-trigger{border:1px solid var(--wizard-border);cursor:pointer;text-align:left;width:100%;font:inherit;background:#fafcfb;border-radius:15px;align-items:center;gap:13px;padding:10px 13px;transition:border-color .18s,background .18s;display:flex}.wizard-type-trigger:hover{background:#f3f8f5;border-color:#bfd6c7}.wizard-type-preview{background:#fff;border-radius:13px;flex:0 0 54px;place-items:center;width:54px;height:54px;display:grid}.wizard-type-preview>.device-product-asset{object-fit:contain;width:57px;height:57px;animation:.18s ease-out catalog-confirm}.wizard-type-trigger>span:nth-child(2){flex:1;gap:4px;display:grid}.wizard-type-trigger small{color:var(--wizard-muted);font-size:10px}.wizard-type-trigger strong{color:var(--wizard-ink);font-size:13px;font-weight:600}.wizard-type-trigger>svg{color:#62806c;width:18px;height:18px;transition:transform .18s}.wizard-type-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.wizard-type-menu{z-index:40;background:#fff;border:1px solid #dce8df;border-radius:16px;padding:12px;animation:.18s ease-out device-method-enter;position:absolute;top:calc(100% + 7px);left:0;right:0;box-shadow:0 16px 45px #203d2724}.wizard-type-menu-heading{color:#617568;justify-content:space-between;align-items:center;padding:0 2px 10px;font-size:11px;display:flex}.wizard-type-menu-heading strong{font-weight:550}.wizard-type-menu-heading button{color:#6b8072;cursor:pointer;background:#f2f5f3;border:0;border-radius:8px;place-items:center;width:25px;height:25px;font-size:18px;display:grid}.wizard-type-grid{overscroll-behavior:contain;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:310px;padding:2px;display:grid;overflow:auto}.wizard-type-grid>button{color:#6a7c70;min-width:0;min-height:91px;font:inherit;cursor:pointer;background:#f7f9f8;border:1px solid #0000;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:7px 4px;transition:background .15s,border-color .15s;display:flex;position:relative}.wizard-type-grid>button:hover{background:#edf5ef;border-color:#d4e6da}.wizard-type-grid>button[aria-pressed=true]{color:#2f6e46;background:#e6f4eb;border-color:#9bcbac}.wizard-type-grid .device-product-asset{object-fit:contain;width:49px;height:49px;transition:transform .17s}.wizard-type-grid>button:hover .device-product-asset{transform:translateY(-2px)}.wizard-type-grid>button>span{text-align:center;overflow-wrap:anywhere;font-size:9px;line-height:1.25}.wizard-type-grid i{font-size:10px;font-style:normal;position:absolute;top:4px;right:5px}.wizard-type-grid>button:focus-visible,.wizard-type-trigger:focus-visible{outline-offset:2px;outline:2px solid #78aa8b}.wizard-unified .device-scan-frame{border-radius:15px;min-height:185px}.wizard-unified .device-code-paste{padding-bottom:0}.wizard-unified .device-code-result{border-radius:14px;padding:17px}.wizard-unified .device-code-result h3{font-size:17px}.wizard-unified .device-code-result p{font-size:11px}@media (width<=560px){.iot-wizard.wizard-unified{padding:20px}.wizard-unified .device-method-switch button{gap:4px;min-height:46px;font-size:10px}.wizard-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-type-menu{padding:10px}.wizard-progress{margin-bottom:15px}.wizard-form,.wizard-device-step,.wizard-connection-step{gap:14px}}@media (prefers-reduced-motion:reduce){.wizard-disclosure-body,.wizard-type-menu,.wizard-type-preview>.device-product-asset{animation:none}.wizard-type-grid>button,.wizard-type-grid .device-product-asset,.wizard-type-trigger,.wizard-type-trigger>svg,.wizard-unified .iot-primary,.wizard-unified .iot-secondary{transition:none}}.wizard-disclosure>button>.wizard-feature-summary{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.wizard-feature-summary>span:first-child{flex-shrink:0}.wizard-feature-chips{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.wizard-feature-chip{color:#50745b;text-align:left;overflow-wrap:anywhere;background:#eaf4ed;border-radius:7px;align-items:center;max-width:100%;padding:4px 7px;font-size:9px;font-weight:500;line-height:1.35;animation:.16s ease-out catalog-confirm;display:inline-flex}.wizard-feature-summary+.wizard-feature-expand{flex-shrink:0}@media (prefers-reduced-motion:reduce){.wizard-feature-chip{animation:none}}.device-list{gap:18px;width:100%;min-width:0;display:grid}.device-list-group{min-width:0}.device-list-group>header{justify-content:space-between;align-items:center;gap:10px;padding:0 4px;display:flex}.device-list-group h3{color:#62716a;letter-spacing:.075em;text-transform:uppercase;min-width:0;margin:0;font-size:11px}.device-list-group header span{color:#78857f;background:#eef1ef;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font-size:10px;font-weight:700;display:grid}.device-list-group.is-favorites>header h3{color:#8a681e}.device-list-items{gap:7px;margin-top:8px;display:grid}.device-list-entry{background:#f4f5f4;border-radius:16px;min-width:0;transition:background .2s,box-shadow .2s;overflow:hidden}.device-list-row{grid-template-columns:minmax(0,1fr) 42px;align-items:stretch;min-width:0;display:grid}.device-list-select{text-align:left;min-width:0;color:inherit;background:0 0;border:0;align-items:center;gap:10px;padding:12px;display:flex}.device-list-select:focus-visible,.device-list-favorite:focus-visible,.device-list-actions button:focus-visible{outline-offset:-3px;outline:3px solid #79b99f}.device-list-icon{color:#7667a2;background:#ece9f7;border-radius:13px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid;position:relative}.device-list-icon svg,.device-list-icon img{object-fit:contain;width:27px;height:27px}.device-list-dot{background:#a5aaa8;border:2px solid #f4f5f4;border-radius:50%;width:9px;height:9px;position:absolute;bottom:0;right:-1px}.is-selected .device-list-dot{border-color:#e0f4ea}.device-list-dot.online{background:#43aa79}.device-list-copy{min-width:0}.device-list-copy strong,.device-list-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.device-list-copy small{color:#697870;margin-top:4px;font-size:10px}.device-list-favorite{color:#bdc3bf;background:0 0;border:0;border-left:1px solid #ffffff90;place-items:center;min-width:42px;font-size:20px;display:grid}.device-list-favorite[aria-pressed=true]{color:#e3a928}.device-list-action-reveal{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .24s,opacity .18s;display:grid}.device-list-entry.is-selected .device-list-action-reveal{opacity:1;grid-template-rows:1fr}.device-list-action-reveal>div{min-height:0}.device-list-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 10px 10px;display:grid}.device-list-actions button{color:#315b49;background:#fff;border:0;border-radius:10px;min-width:0;min-height:35px;padding:6px 5px;font-size:10px;font-weight:700;line-height:1.15}.device-list-actions button:disabled{cursor:default;opacity:.45}.device-list-progress,.device-list-error{border-radius:9px;align-items:center;gap:7px;margin:0 10px 10px;padding:8px 9px;font-size:10px;display:flex}.device-list-progress{color:#62716a;background:#fff}.device-list-progress i{border:2px solid #75a894;border-right-color:#0000;border-radius:50%;width:11px;height:11px;animation:.8s linear infinite device-list-spin}.device-list-error{color:#923b35;background:#fae8e5}.device-list-empty{color:#697870}.device-list button{cursor:pointer}@keyframes device-list-spin{to{transform:rotate(1turn)}}@media (width<=430px){.device-list{gap:15px}.device-list-select{padding:10px 8px}.device-list-row{grid-template-columns:minmax(0,1fr) 40px}.device-list-icon{flex-basis:36px;width:36px;height:36px}.device-list-actions{grid-template-columns:1fr}.device-list-actions button{min-height:38px;font-size:11px}}@media (prefers-reduced-motion:reduce){.device-list-action-reveal{transition:none}.device-list-progress i{animation:none}}.device-list,.device-list-items{grid-template-columns:minmax(0,1fr)}.device-list-group{width:100%}.device-list-action-reveal>div{overflow:hidden}.device-list-actions button{min-height:40px}.device-list-entry{background:#f4f5f4;border-radius:12px}.device-list-entry.is-selected{background:#f1f6f3;box-shadow:inset 0 0 0 1px #c8ddd2}.device-list-select{gap:10px;padding:13px 11px}.device-list-icon{background:0 0;flex-basis:40px;width:40px;height:40px}.device-list-icon img,.device-list-icon svg{width:34px;height:34px}.device-list-copy strong{font-size:13px}.device-list-copy small{font-size:11px;line-height:1.35}.device-list-favorite{color:#9aa8a1;border-left:0;min-height:44px;position:relative}.device-list-favorite svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;z-index:1;width:21px;height:21px;position:relative}.device-list-favorite[aria-pressed=true] svg{fill:#e9b64d;stroke:#ca9a32}.favorite-feedback svg{animation:.45s favorite-bounce}.favorite-feedback:after{content:"";border:2px solid #e3bb5d;border-radius:50%;width:27px;height:27px;animation:.45s ease-out forwards favorite-ring;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.device-list-actions{border-top:1px solid #e0e8e3;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:10px}.device-list-actions button{background:#fff;border:1px solid #dce6df;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:54px;padding:8px 3px;font-size:10px;line-height:1.25;display:flex}.device-list-actions button svg{width:17px;height:17px}.device-list-action-reveal .camera-preview{margin:2px 10px 12px}.device-list-actions button:hover:not(:disabled){background:#eaf2ed;border-color:#b5d0c0}@keyframes favorite-bounce{40%{transform:scale(1.32)rotate(-12deg)}75%{transform:scale(.93)}to{transform:scale(1)}}@keyframes favorite-ring{to{opacity:0;transform:translate(-50%,-50%)scale(1.75)}}@media (prefers-reduced-motion:reduce){.favorite-feedback svg,.favorite-feedback:after{animation:none}.favorite-feedback:after{display:none}}.device-list{overflow-anchor:none}.iot-room-devices .device-list-actions{align-items:flex-start;gap:9px;padding:10px}.iot-room-devices .device-list-actions .device-settings-icon{border-radius:7px;flex:0 0 33px;width:33px;min-width:33px;height:33px;min-height:33px;padding:7px}.device-list-entry{transform-origin:0 0}.compact-device-content{flex:1;gap:8px;min-width:0;display:grid}.compact-control{color:#466452;justify-content:space-between;align-items:center;gap:9px;min-height:34px;font-size:11px;display:flex}.compact-control>span:first-child{min-width:0}.compact-control small{color:#809187;margin-top:3px;font-size:9px;display:block}.compact-control select,.compact-number input{color:#355a46;width:76px;min-width:0;font:inherit;background:#fff;border:1px solid #d8e3db;border-radius:6px;padding:6px}.compact-number{align-items:center;gap:4px;display:flex}.compact-number small{margin:0}.iot-room-devices .device-list-actions .compact-toggle{background:#d5dfd8;border:0;border-radius:20px;width:37px;min-width:37px;height:23px;min-height:23px;padding:2px;display:block;position:relative}.compact-toggle i{color:#8a998f;background:#fff;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;font-style:normal;transition:transform .2s;display:grid}.iot-room-devices .device-list-actions .compact-toggle.is-on{background:#428c64}.compact-toggle.is-on i{transform:translate(14px)}.compact-toggle.is-pending i{animation:1s ease-in-out infinite compact-wait}.compact-toggle:disabled{opacity:.5}.compact-readings{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.compact-reading{background:#ffffffb0;border:1px solid #dfe7e1;border-radius:7px;min-width:0;padding:7px 8px}.compact-reading small{color:#7b8d81;font-size:9px;display:block}.compact-reading strong{color:#335a46;overflow-wrap:anywhere;align-items:center;gap:4px;margin-top:4px;font-size:12px;font-weight:600;display:flex}.compact-reading strong span{font-size:10px;font-weight:400}.compact-reading i{background:#a7b5ac;border-radius:50%;width:5px;height:5px}.compact-reading.is-active i{background:#4b9b6e}.compact-stale{color:#87958c;font-size:9px;line-height:1.4}.compact-control-error{color:#a25d50;margin:0;font-size:10px;line-height:1.4}.iot-room-devices .device-list-actions .compact-camera-link{border-radius:7px;justify-content:flex-start;gap:6px;min-height:33px;padding:6px 8px;font-size:10px;display:flex}.compact-camera-link svg{width:15px;height:15px}.compact-camera-link svg:last-child{margin-left:auto}.compact-device-content:empty{display:none}@keyframes compact-wait{50%{opacity:.4}}@media (prefers-reduced-motion:reduce){.compact-toggle i{transition:none;animation:none}}.device-list-entry.is-command-pending{background:#edf7f1;box-shadow:inset 0 0 0 1px #afd5be}.device-list-entry.is-command-pending .device-list-dot{background:#82b89b;animation:1s ease-in-out infinite device-pending-dot}.device-list-entry.is-breaker{box-shadow:inset 3px 0 #dcb85d}.device-breaker-icon{color:#bc942b;fill:#f8ebbd;vertical-align:middle;width:13px;height:13px;margin-left:6px}.compact-breaker-warning{color:#9b7b29;align-items:center;gap:5px;font-size:9px;display:flex}.compact-breaker-warning svg{fill:#fff0be;width:13px;height:13px}.is-breaker .compact-toggle.is-on{background:#af9451!important}.compact-charge{justify-content:space-between;align-items:center;gap:10px;min-height:31px;display:flex}.compact-charge>div{gap:3px;display:grid}.compact-charge small{color:#7f9487;font-size:9px}.compact-charge strong{color:#376450;font-size:14px}.compact-charge-meter{background:#dce8e1;border-radius:4px;flex-shrink:0;width:83px;height:7px;overflow:hidden}.compact-charge-meter i{background:linear-gradient(90deg,#5c9a7f,#8abd9a);border-radius:4px;height:100%;transition:width .4s;display:block}.compact-availability{color:#85968b;align-items:center;gap:6px;padding:6px 0;font-size:10px;display:flex}.compact-availability i{background:#a8b4ac;border-radius:50%;width:5px;height:5px}.compact-availability.is-online i{background:#5caa7e}.device-list-select:disabled{cursor:default;opacity:1}@keyframes device-pending-dot{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.is-command-pending .device-list-dot{animation:none}.compact-charge-meter i{transition:none}}.compact-reading.is-alert i{background:#c67762}.compact-reading.is-alert strong{color:#a06351}.compact-device-content.is-breaker .compact-control{color:#8d743e}.compact-control>span:first-child,.compact-reading small{overflow-wrap:anywhere}.iot-room-devices .device-list-action-reveal{opacity:0;grid-template-rows:0fr}.iot-room-devices .device-list-entry.is-selected .device-list-action-reveal{opacity:1;grid-template-rows:1fr}.compact-reading.is-stale strong{color:#8b928d}.compact-reading.is-stale small{color:#9a8159}.iot-home-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.iot-home-heading h1{margin:5px 0;font-size:30px}.iot-home-heading p,.iot-home-heading small{color:#75807d}.iot-home button{cursor:pointer}.iot-home-heading>div:last-child{gap:8px;display:flex}.iot-home-heading button,.iot-connect button,.iot-selected>button,.iot-edit-banner button{background:#fff;border:0;border-radius:20px;padding:11px 17px}.iot-home-heading .primary-button{color:#fff;background:#286a52}.iot-connect{background:#fff;border-radius:20px;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:20px;display:flex}.iot-connect label{flex:1;gap:7px;min-width:200px;display:grid}.iot-connect input{border:1px solid #dce1df;border-radius:9px;padding:10px}.iot-connect small{color:#697970;width:100%}.iot-feedback{background:#e2efe9;border-radius:12px;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.iot-feedback button{background:0 0;border:0;font-size:23px}.iot-map-layout{grid-template-columns:minmax(0,1fr) 290px;gap:22px;display:grid}.iot-house{background:#eff0f2;border-radius:24px;min-height:600px;position:relative;overflow:hidden}.iot-room-devices{background:#fff;border-radius:22px;max-height:740px;padding:20px;overflow:auto}.iot-room-devices header{justify-content:space-between;align-items:center;display:flex}.iot-room-devices h2{font-size:18px}.iot-device-item{text-align:left;background:#f4f5f4;border:0;border-radius:15px;gap:10px;width:100%;margin:8px 0;padding:13px;display:flex}.iot-device-item.selected{background:#e0f4ea}.iot-device-item small{color:#697870;margin-top:5px;font-size:11px;display:block}.iot-dot{background:#a5aaa8;border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:5px}.iot-dot.online{background:#4eb989}.iot-selected{border-top:1px solid #eee;margin-top:15px;padding-top:15px}.iot-selected>button{background:#edf3ef;margin:4px}.iot-edit-banner{white-space:nowrap;background:#fff;border-radius:25px;padding:8px 15px;font-size:12px;position:absolute;bottom:15px;left:50%;transform:translate(-50%);box-shadow:0 4px 25px #0002}.iot-home .room-pills{flex-wrap:wrap;margin-bottom:16px}.iot-home .room-pills button.active{background:#cdf1e1}@media (width<=1050px){.iot-map-layout{grid-template-columns:1fr}.iot-room-devices{max-height:none}.iot-house,.iot-house>div:first-child{height:540px;min-height:540px}}@media (width<=600px){.iot-home-heading{flex-direction:column;align-items:flex-start}.iot-home-heading h1{font-size:25px}.iot-house,.iot-house>div:first-child{height:470px;min-height:470px}.iot-map-layout{gap:12px}}.iot-map-controls{background:#fffffff2;border-radius:18px;width:250px;padding:14px;position:absolute;top:16px;right:16px;box-shadow:0 8px 30px #20352c12}.iot-map-controls h3{margin:4px 0}@media (width<=600px){.iot-map-controls{width:210px;padding:9px;top:8px;right:8px}}.map-device-overlay{pointer-events:none;z-index:4;inset:0;overflow:hidden;height:100%!important;min-height:0!important;position:absolute!important}.map-device-control{visibility:hidden;pointer-events:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#263d35;box-sizing:border-box;background:#fffffff0;border:1px solid #ffffffd9;border-radius:19px;width:174px;padding:9px 10px;transition:background .2s,box-shadow .2s;position:absolute;box-shadow:0 7px 23px #364b4920}.map-device-control:after{content:"";z-index:-1;background:#fff;border-radius:0 0 3px;width:12px;height:12px;position:absolute;bottom:-6px;left:calc(50% - 6px);transform:rotate(45deg)}.map-device-control.is-on{background:#e4f7efed;border-color:#b7e4d1}.map-device-main{align-items:center;gap:7px;display:flex}.map-device-glyph{color:#8170ae;touch-action:manipulation;background:#edeaf8;border:0;border-radius:12px;flex-shrink:0;width:33px;height:36px;padding:7px}.map-device-glyph svg{width:100%;height:100%}.is-on .map-device-glyph{color:#28775c;background:#bfe9d9}.map-device-title{flex:1;min-width:0}.map-device-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.4;display:block;overflow:hidden}.map-device-title small{color:#7a8580;margin-top:3px;font-size:9px;display:block}.map-device-power{background:0 0;border:0;min-width:34px;min-height:44px;padding:0;position:relative}.map-device-power:before{content:"";background:#dce0df;border-radius:10px;width:30px;height:18px;display:block}.map-device-power span{background:#fff;border-radius:100%;width:12px;height:12px;transition:transform .18s;position:absolute;top:15px;left:3px;box-shadow:0 1px 3px #0002}.map-device-power[aria-checked=true]:before{background:#69b89f}.map-device-power[aria-checked=true] span{transform:translate(12px)}.map-device-power:disabled{opacity:.5;cursor:default}.map-device-slider{grid-template-columns:1fr auto;gap:2px 8px;margin-top:5px;display:grid}.map-device-slider>span{color:#697d74;grid-column:1/-1;font-size:9px}.map-device-slider input{accent-color:#74bba2;touch-action:pan-y;width:100%;min-width:0;height:26px}.map-device-slider output{align-self:center;font-size:10px}.map-device-control select{background:#f2f4f2;border:0;border-radius:8px;width:100%;margin-top:5px;padding:6px;font-size:11px}.map-device-position{color:#70837b;background:#eef0f6;border:2px solid #fff;border-radius:100%;width:25px;height:25px;font-size:17px;line-height:17px;position:absolute;bottom:-9px;right:-6px}.map-device-error{color:#a33d44;margin-top:6px;font-size:10px;display:block}.iot-room-devices{overflow-x:hidden}.iot-selected .iot-quick-controls{display:none}.iot-house{background:linear-gradient(145deg,#eff0f2,#edecf4)}@media (width<=600px){.map-device-control{border-radius:16px;width:148px;padding:7px 8px}.map-device-title strong{font-size:10px}.map-device-glyph{width:28px;padding:5px}.map-device-main{gap:4px}.map-device-position{width:30px;height:30px}.iot-home .room-pills{flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.iot-home .room-pills button{white-space:nowrap;flex-shrink:0}.iot-house,.iot-house>div:first-child{height:540px;min-height:540px}}.device-product-asset{object-fit:contain;filter:drop-shadow(0 4px 5px #253b3530);width:100%;height:100%;display:block}.map-device-glyph{background:linear-gradient(145deg,#f5f3fb,#e9e4f6);width:42px;height:42px;padding:2px;overflow:visible}.is-on .map-device-glyph{background:linear-gradient(145deg,#e5f8f1,#caecdf)}.iot-device-asset{background:linear-gradient(145deg,#f8f8fa,#eceaf3);border-radius:14px;flex:0 0 48px;place-items:center;width:48px;height:48px;display:grid;position:relative}.iot-device-asset .device-product-asset{width:44px;height:44px;transform:scale(1.15)}.iot-device-asset .iot-dot{box-sizing:content-box;border:2px solid #fff;margin:0;position:absolute;bottom:4px;right:4px}@media (width<=600px){.map-device-glyph{width:36px;height:38px;padding:1px}.iot-device-asset{flex-basis:44px;width:44px;height:44px}.iot-device-asset .device-product-asset{width:40px;height:40px}}.map-device-control,.map-device-control.is-on{width:64px;height:64px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0;transition:width .18s;overflow:visible}.map-device-control.is-open{width:210px}.map-device-control:after{display:none}.map-device-glyph,.is-on .map-device-glyph{filter:drop-shadow(0 9px 12px #263b3530);background:0 0;border:0;border-radius:20px;width:64px;height:64px;margin:0 auto;padding:0;transition:transform .18s,filter .18s;display:block;position:relative}.map-device-glyph:hover,.map-device-glyph[aria-expanded=true]{filter:drop-shadow(0 12px 15px #263b3540);transform:translateY(-3px)scale(1.06)}.map-device-glyph .device-product-asset{transform:scale(1.2)}.map-device-control.is-on .map-device-glyph{filter:drop-shadow(0 0 15px #ffd36b99)drop-shadow(0 9px 12px #263b3530)}.map-device-control.is-pending .map-device-glyph{animation:.7s ease-in-out infinite alternate device-command-pulse}.map-device-glyph[aria-disabled=true]{cursor:default;opacity:.58}.map-device-popover{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-sizing:border-box;transform-origin:50% 0;background:#fffffff4;border:1px solid #fffc;border-radius:20px;width:210px;padding:12px;animation:.18s ease-out device-popover-in;position:absolute;top:72px;left:0;box-shadow:0 16px 45px #273c352b}.map-device-popover:after{content:"";background:#fff;border-radius:3px 0 0;width:12px;height:12px;position:absolute;top:-6px;left:calc(50% - 6px);transform:rotate(45deg)}.map-device-popover header{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:9px;display:flex}.map-device-popover header span{min-width:0}.map-device-popover header strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;display:block;overflow:hidden}.map-device-popover header small{color:#82908a;margin-top:2px;font-size:9px;display:block}.map-device-popover header>button{color:#65736e;background:#eef1ef;border:0;border-radius:50%;place-items:center;width:26px;height:26px;padding:0;font-size:17px;line-height:1;display:grid}.map-device-reading{color:#20352e;letter-spacing:-.04em;margin:2px 0 8px;font-size:24px;font-weight:750;display:block}.map-device-reading small{color:#71807a;letter-spacing:0;margin-left:3px;font-size:11px;font-weight:600}.map-device-power-row{color:#30433d;text-align:left;background:#f0f3f1;border:0;border-radius:13px;justify-content:space-between;align-items:center;width:100%;min-height:42px;padding:8px 10px;font-size:11px;font-weight:700;display:flex}.map-device-power-row>i{background:#d8dddb;border-radius:12px;width:34px;height:20px;transition:background .18s;position:relative}.map-device-power-row>i b{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0002}.map-device-power-row[aria-checked=true]>i{background:#55b895}.map-device-power-row[aria-checked=true]>i b{transform:translate(14px)}.map-device-power-row:disabled,.map-device-action:disabled,.map-device-popover select:disabled,.map-device-slider input:disabled{cursor:default;opacity:.48}.map-device-popover .map-device-slider{grid-template-columns:1fr auto;gap:3px 8px;margin:9px 2px 1px;display:grid}.map-device-popover .map-device-slider>span{color:#5f7069;grid-column:auto;font-size:10px;font-weight:650}.map-device-popover .map-device-slider output{font-size:10px;font-weight:700}.map-device-popover .map-device-slider input{accent-color:#55b895;grid-column:1/-1;width:100%;height:24px;margin:0}.map-device-popover>select{color:#30433d;background:#f0f3f1;border:0;border-radius:12px;width:100%;margin:1px 0;padding:9px 10px;font-size:11px}.map-device-action{color:#fff;background:#2c765b;border:0;border-radius:13px;width:100%;min-height:40px;padding:8px 10px;font-size:11px;font-weight:700}.map-device-read-label{color:#74827d;margin-top:-5px;font-size:9px;display:block}.map-device-popover footer{border-top:1px solid #e9edeb;justify-content:flex-end;gap:6px;margin-top:9px;padding-top:8px;display:flex}.map-device-popover footer button{color:#50625b;background:#eef2f0;border:0;border-radius:10px;place-items:center;width:30px;height:30px;padding:0;font-size:15px;display:grid}.map-device-popover footer button:disabled{opacity:.35}.map-device-popover .map-device-error{margin:7px 2px 0}@keyframes device-popover-in{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:none}}@keyframes device-command-pulse{to{opacity:.64;transform:scale(.94)}}@media (width<=600px){.map-device-control,.map-device-control.is-on{width:56px;height:56px}.map-device-control.is-open{width:190px}.map-device-glyph,.is-on .map-device-glyph{width:56px;height:56px}.map-device-popover{width:190px;padding:11px;top:63px}}.map-device-control.is-open{z-index:20;width:64px;height:64px}.map-device-glyph{z-index:2}.map-device-glyph:hover,.map-device-glyph[aria-expanded=true]{transform:none}.map-device-popover{z-index:1;color:#fff;transform-origin:32px;background:linear-gradient(135deg,#09112f,#111a43);border:1px solid #35416d;border-radius:42px;width:252px;min-height:84px;padding:13px 14px 13px 82px;animation:.22s cubic-bezier(.2,.8,.2,1) device-control-expand;top:50%;left:-10px;transform:translateY(-50%);box-shadow:0 18px 48px #11193542}.map-device-popover:after{display:none}.map-device-popover header{margin-bottom:7px}.map-device-popover header small{color:#aeb9d3}.map-device-popover header>button{color:#fff;background:#ffffff18}.map-device-reading{color:#fff;margin-bottom:6px;font-size:22px}.map-device-reading small,.map-device-read-label{color:#aeb9d3}.map-device-power-row{color:#fff;background:linear-gradient(90deg,#20b9e9,#147ee7);border-radius:21px;min-height:38px}.map-device-popover>select{color:#fff;background:#ffffff17}.map-device-popover>select option{color:#17202e}.map-device-popover footer{border-top-color:#ffffff17}.map-device-popover footer button{color:#fff;background:#ffffff17}@keyframes device-control-expand{0%{opacity:0;clip-path:inset(0 74% 0 0 round 42px);transform:translateY(-50%)scale(.92)}to{opacity:1;clip-path:inset(0 round 42px);transform:translateY(-50%)scale(1)}}@media (width<=600px){.map-device-control.is-open{width:56px;height:56px}.map-device-popover{width:218px;min-height:74px;padding:10px 11px 10px 70px;top:50%;left:-8px}.iot-house,.iot-house>div:first-child{height:620px;min-height:620px}}.iot-device-group>header{display:none}@media (width<=600px){.iot-device-groups{gap:17px;margin-top:12px;display:grid}.iot-device-group>header{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.iot-device-group h3{color:#62716a;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:11px}.iot-device-group header span{color:#78857f;background:#eef1ef;border-radius:11px;place-items:center;min-width:21px;height:21px;padding:0 6px;font-size:10px;font-weight:700;display:grid}.iot-device-group .iot-device-item{margin:7px 0}.iot-device-group .iot-device-item:first-of-type{margin-top:8px}}.iot-house{align-self:start;height:540px;min-height:500px}.iot-house>div:first-child{height:540px;min-height:500px}@media (width<=1050px){.iot-house,.iot-house>div:first-child{height:480px;min-height:480px}}@media (width<=600px){.iot-house,.iot-house>div:first-child{height:clamp(280px,82vw,370px);min-height:0}.iot-house{border-radius:18px}}.iot-prepared-import{color:#3b6352;background:#fff;border:1px solid #dce5df;border-radius:16px;margin-bottom:18px;padding:15px 18px;font-size:12px}.iot-prepared-import summary{cursor:pointer;font-weight:600}.iot-prepared-import p{color:#708178;line-height:1.6}.iot-prepared-import button{color:#28654e;min-height:44px;font:inherit;cursor:pointer;background:#e4f1e9;border:0;border-radius:999px;padding:11px 15px;font-weight:600}.iot-prepared-import button:disabled{opacity:.5}.map-device-popover{color:#294b3e;transform-origin:35px;background:#fffffff7;border:1px solid #d5e1db;border-radius:12px;width:248px;min-height:216px;padding:15px;animation:.2s ease-out device-panel-in;top:50%;left:-10px;box-shadow:0 12px 32px #263e3826}.map-device-popover header{min-height:42px;margin-bottom:12px;padding-left:55px}.map-device-popover header strong{color:#294b3e;font-size:12px}.map-device-popover header small,.map-device-reading small,.map-device-read-label{color:#7c8d84}.map-device-popover header>button{color:#557164;background:#edf3ef;border-radius:7px}.map-device-reading{color:#335e4b}.map-device-power-row{color:#355e4b;background:#eaf4ee;border-radius:8px}.map-device-popover .map-device-slider>span{color:#597767}.map-device-popover .map-device-slider input{accent-color:#438c68}.map-device-popover>select{color:#355e4b;background:#edf3ef;border-radius:7px}.map-device-popover footer{border-color:#e3ebe6}.map-device-popover footer button{color:#4b705e;background:#eaf2ed;border-radius:7px}.map-device-control.is-open .map-device-glyph{align-self:flex-start}.map-device-popover .camera-preview{margin-top:8px}@keyframes device-panel-in{0%{opacity:0;transform:translateY(-50%)scale(.97)}to{opacity:1;transform:translateY(-50%)scale(1)}}@media (width<=600px){.map-device-popover{border-radius:12px;width:236px;min-height:206px;padding:13px}.map-device-popover header{padding-left:49px}}@media (prefers-reduced-motion:reduce){.map-device-popover{animation:none}}.map-device-control.is-open{opacity:1}.map-device-control.is-open>.map-device-glyph{opacity:0;pointer-events:none}.map-device-popover .map-header-product{object-fit:contain;width:39px;height:40px;position:absolute;top:16px;left:15px}.map-device-popover header{position:relative}.map-device-popover header .map-header-product{top:0;left:0}.iot-home .map-device-popover{border-radius:10px;max-width:calc(100% + 190px);height:auto;min-height:0;padding:12px}.iot-home .map-device-popover header{min-height:42px;margin-bottom:0;padding-left:48px}.iot-home .map-device-popover header .map-header-product{width:34px;height:36px}.iot-home .map-device-popover header strong{white-space:normal;overflow-wrap:anywhere}.iot-home .map-device-popover>header+button,.iot-home .map-device-popover>header+output,.iot-home .map-device-popover>header+label{margin-top:9px}.iot-home .map-device-control,.iot-home .map-device-control.is-open,.room-edit-marker{width:60px;min-width:60px;height:60px;padding:0}.iot-home .map-device-glyph,.room-edit-marker img{object-fit:contain;width:60px;height:60px;padding:0;transform:none!important}.iot-home .map-device-glyph .device-product-asset{width:60px;height:60px;transform:none}.room-edit-marker{visibility:hidden;pointer-events:auto;touch-action:none;cursor:grab;background:0 0;border:1px dashed #71a38d;border-radius:10px;position:absolute}.room-edit-marker:active{cursor:grabbing;border-color:#286b4f}.room-edit-toolbar{color:#597867;background:#f5faf7;border:1px solid #d7e5dc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 15px;font-size:12px;display:flex}.room-edit-toolbar button{color:#315f49;min-height:40px;font:inherit;background:#e5f0e9;border:0;border-radius:8px;padding:10px 14px;font-weight:600}.room-edit-toolbar .room-edit-save{color:#fff;background:#2d6a4f}.room-edit-toolbar>div{gap:8px;display:flex}.room-edit-toolbar button:disabled{opacity:.5}.room-edit-toolbar .room-edit-hint{margin:0;line-height:1.5}@media (width<=600px){.room-edit-toolbar{flex-wrap:wrap}.room-edit-toolbar>div{justify-content:flex-end;width:100%}}.room-edit-marker:focus-visible{outline-offset:2px;outline:3px solid #519c78}.room-edit-marker img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.room-pills button:disabled{opacity:.6;cursor:default}.map-layout-tools{z-index:9;align-items:center;gap:5px;display:flex;position:absolute;top:11px;right:11px}.map-layout-tools button{color:#426c55;cursor:pointer;background:#fffffff2;border:1px solid #d7e3dd;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:7px 10px;font:600 10px system-ui;display:inline-flex;box-shadow:0 3px 10px #2948380b}.map-layout-tools button svg{width:14px;height:14px}.map-layout-tools .map-layout-save{background:#edf6f0;border-color:#bfdac9}.map-layout-tools button:disabled{opacity:.5}.map-layout-tools button:focus-visible{outline-offset:2px;outline:3px solid #77b697}.map-breaker-warning{pointer-events:none;z-index:3;position:absolute;top:0;right:0}.map-breaker-warning svg{color:#aa8323;fill:#ffe8a0;filter:drop-shadow(0 1px 2px #fff);width:17px;height:17px}.map-direct-pending,.map-direct-error{white-space:nowrap;color:#658473;pointer-events:none;background:#f5faf7;border:1px solid #d8e8df;border-radius:6px;padding:5px 7px;font-size:9px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.map-direct-error{color:#a36857;white-space:normal;background:#fff0eb;max-width:180px}.map-device-popover .compact-device-content{margin-top:9px}.map-device-popover .compact-toggle{background:#d5dfd8;border:0;border-radius:20px;width:37px;height:23px;padding:2px;position:relative}.map-device-popover .compact-toggle.is-on{background:#428c64}.map-device-popover .compact-camera-link{color:#557763;font:inherit;background:#f7faf8;border:1px solid #d9e5de;border-radius:6px;align-items:center;gap:6px;padding:7px 8px;font-size:10px;display:flex}.map-device-popover .compact-camera-link svg{width:15px;height:15px}.map-direct-pending{max-width:60px;padding:2px 5px;font-size:8px;top:auto;bottom:0;left:50%}.map-direct-error{color:#fff;background:#bd7f6c;border:0;border-radius:50%;place-items:center;width:15px;height:15px;padding:0;font-size:10px;font-weight:700;display:grid;top:0;left:4px;transform:none}.device-telemetry-note{color:#7b8a82;align-items:center;gap:5px;margin-top:7px;font-size:9px;font-weight:400;line-height:1.4;display:flex}.device-telemetry-note i{background:#a6b0aa;border-radius:50%;flex:0 0 5px;width:5px;height:5px}.device-telemetry-note.current i{background:#569977}.device-telemetry-note.stale,.device-telemetry-note.retained{color:#9c8050}.device-telemetry-note.stale i,.device-telemetry-note.retained i{background:#c6a55f}.map-telemetry-dot{pointer-events:none;background:#a5aea8;border:1.5px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;bottom:4px;left:4px}.map-telemetry-dot.current{background:#4caa7d}.map-telemetry-dot.stale,.map-telemetry-dot.retained{background:#c5a15e}.map-device-control.telemetry-offline>.map-device-glyph,.map-device-control.telemetry-stale>.map-device-glyph,.map-device-control.telemetry-retained>.map-device-glyph{opacity:.66}.device-list-header-actions{align-items:center;gap:8px;display:flex}.device-list-layout-tools{position:static}.iot-house>.map-layout-tools{display:none}.compact-position-slider{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.compact-position-slider input{accent-color:#438866;width:100%;min-width:0}.compact-position-slider output{white-space:nowrap;text-align:right;min-width:38px;font-size:11px}.compact-blind-control{flex-wrap:wrap}.compact-blind-control>.compact-position-slider{flex-basis:100%}@media (width<=1050px){.device-list-layout-tools{display:none}.iot-house>.map-layout-tools{display:flex;inset:auto auto 11px 11px}}.iot-home .iot-house>.map-layout-tools{pointer-events:none;height:auto;min-height:0}.iot-home .map-layout-tools button{pointer-events:auto}.iot-home .iot-house>.map-layout-tools{display:flex;inset:12px 12px auto auto}.iot-home .map-layout-tools>button:only-child{background:#fffffff2;border-color:#dce5e0;border-radius:11px;width:40px;height:40px;padding:9px;transition:background .18s,box-shadow .18s,transform .18s;box-shadow:0 4px 14px #28443812}.iot-home .map-layout-tools>button:only-child svg{width:20px;height:20px}.iot-home .map-layout-tools>button:only-child:hover{background:#edf6f0;transform:translateY(-1px);box-shadow:0 5px 16px #28443820}@media (width>=1051px){.iot-home .iot-map-layout{align-items:stretch;height:740px}.iot-home .iot-house{height:100%;min-height:0}.iot-home .iot-house>.clay-house-stage{height:100%!important;min-height:0!important}.iot-home .iot-room-devices{height:100%;max-height:none}}@media (width<=1050px){.iot-home .iot-house>.map-layout-tools{inset:auto auto 12px 12px}}@media (prefers-reduced-motion:reduce){.iot-home .map-layout-tools>button:only-child{transition:none}}@media (width<=800px){.iot-home .room-pills{flex-wrap:wrap;gap:6px;width:100%;max-width:100%;margin:0 0 14px;padding:4px 0 8px;display:flex;overflow:visible}.iot-home .room-pills button{white-space:normal;text-align:center;flex:0 auto;min-width:0;max-width:100%;min-height:38px;padding:8px 12px;font-size:11px;line-height:1.25}}.iot-home .compact-explicit-state{align-items:center;gap:4px;display:flex}.iot-home .compact-explicit-state button{color:#527160;white-space:nowrap;background:#f5faf7;border:1px solid #d9e5dd;border-radius:6px;min-height:30px;padding:5px 7px;font-size:9px}.iot-home .compact-explicit-state button:disabled{opacity:.5;cursor:default}.iot-home .room-pills .room-all-icon{justify-content:center;align-items:center;display:inline-flex}.iot-home .room-pills .room-all-icon svg{width:16px;height:16px}.critical-backdrop{z-index:120;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#17242285;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.critical-confirmation{color:#202728;background:#fff;border:1px solid #ffffff61;border-radius:26px;width:min(470px,100%);padding:28px;box-shadow:0 24px 90px #10201d66}.critical-confirmation-icon{color:#a75918;background:#fff0da;border-radius:50%;place-items:center;width:35px;height:35px;margin-bottom:13px;font-size:21px;font-weight:800;display:grid}.critical-confirmation-eyebrow{color:#a75918;letter-spacing:.09em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:800}.critical-confirmation h2{letter-spacing:-.04em;margin:0;font-size:23px}.critical-confirmation>p{color:#596563;margin:10px 0 0;font-size:13px;line-height:1.52}.critical-confirmation-hint{background:#f3f6f4;border-radius:12px;padding:10px 12px}.critical-action-summary{grid-template-columns:1fr 1fr;gap:8px;margin:17px 0 0;display:grid}.critical-action-summary div{background:#f4f7f5;border-radius:12px;padding:10px 11px}.critical-action-summary dt{color:#72807b;font-size:10px}.critical-action-summary dd{margin:3px 0 0;font-size:12px;font-weight:700}.critical-command-state{background:#f3f6f4;border-radius:12px;align-items:flex-start;gap:8px;padding:11px 12px;display:flex}.critical-command-state i{border:2px solid #7c9a8b;border-right-color:#0000;border-radius:50%;flex:none;width:13px;height:13px;margin-top:3px;animation:.8s linear infinite critical-spin}.critical-command-state.confirmed{color:#246440;background:#e5f4e9}.critical-command-state.simulated{color:#815614;background:#fff4dd}.critical-command-state.error{color:#9b3b34;background:#fae8e5}.critical-confirmation footer{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.critical-primary,.critical-secondary{border:0;border-radius:999px;min-height:40px;padding:0 15px;font-size:12px;font-weight:700}.critical-primary{color:#fff;background:#2d6a4f}.critical-secondary{color:#355c4b;background:#edf1ef}.critical-primary:disabled,.critical-secondary:disabled{opacity:.55}.critical-primary:focus-visible,.critical-secondary:focus-visible{outline-offset:2px;outline:3px solid #84c9a5}.iot-command-feedback.pending{color:#815614;background:#fff4dd}.iot-command-feedback.confirmed{color:#246440;background:#e2efe9}.iot-command-feedback.simulated{color:#815614;background:#fff4dd}@keyframes critical-spin{to{transform:rotate(1turn)}}@media (width<=500px){.critical-backdrop{padding:12px}.critical-confirmation{border-radius:23px;padding:23px}.critical-action-summary{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.critical-command-state i{animation:none}}.rule-pipeline{gap:20px;display:grid}.pipeline-map{color:#315f4b;background:#edf4ef;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:14px;font-size:11px;font-weight:650;display:flex}.pipeline-map i{color:#8ea59a;font-style:normal}.pipeline-map b{background:#d4e9dc;border-radius:50%;place-items:center;min-width:19px;height:19px;margin-left:3px;display:inline-grid}.pipeline-node{background:#fff;border:1px solid #dfe8e2;border-radius:19px;min-width:0;padding:20px;position:relative}.pipeline-node+.pipeline-node:before{content:"↓";color:#85a494;font-size:19px;position:absolute;top:-22px;left:33px}.pipeline-node>header{align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.pipeline-number{color:#326d55;background:#e5f3eb;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;font-size:11px;display:grid}.pipeline-node h3{margin:0 0 5px;font-size:15px}.pipeline-node header p,.pipeline-note{color:#7c8881;margin:0;font-size:11px;line-height:1.6}.pipeline-modes{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.pipeline-modes button,.pipeline-add{color:#587164;cursor:pointer;background:#f0f3f1;border:0;border-radius:10px;padding:10px 13px;font-size:11px}.pipeline-modes button.active{color:#fff;background:#326d55}.pipeline-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pipeline-fields input,.pipeline-fields select{width:100%;min-width:0;min-height:42px;font:inherit;box-sizing:border-box;background:#fbfcfb;border:1px solid #dce4df;border-radius:10px;padding:8px 10px;font-size:12px}.pipeline-fields label{color:#6f7f75;gap:5px;font-size:11px;display:grid}.pipeline-days{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.pipeline-days label{align-items:center;gap:4px;display:flex}.pipeline-days input{accent-color:#326d55;width:15px;min-height:15px}.pipeline-actions{gap:12px;display:grid}.pipeline-action{background:#f6f8f6;border-radius:14px;padding:14px}.pipeline-action-head{color:#526d5d;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:11px;display:flex}.pipeline-action-head span{gap:4px;display:flex}.pipeline-action-head button{color:#476551;cursor:pointer;background:#fff;border:0;border-radius:8px;width:28px;height:28px}.pipeline-action-head button:disabled{opacity:.25}.pipeline-add{color:#326d55;background:#e8f3eb;margin-top:12px}.pipeline-timeline{gap:10px;margin:20px 0 0;padding:0;font-size:11px;list-style:none;display:grid}.pipeline-timeline li{color:#708075;align-items:center;gap:12px;display:flex}.pipeline-timeline b{color:#4e6757;white-space:nowrap;background:#e9eeeb;border-radius:7px;padding:5px 8px}.pipeline-manual{color:#326d55;background:#f2f6f3;border-radius:10px;padding:12px;font-size:12px}.pipeline-group{background:#f6f9f7;border-left:3px solid #b7d3c2;border-radius:12px;padding:12px}.rule-run-list{gap:8px;margin:15px 0;display:grid}.rule-run-list article{background:#fff;border:1px solid #e1e8e3;border-radius:13px;padding:13px;font-size:12px}.rule-run-list small{color:#77877b;margin-top:4px;display:block}@media (width<=650px){.pipeline-fields{grid-template-columns:1fr}.pipeline-node{padding:14px}.pipeline-map{gap:6px;font-size:10px}.pipeline-node+.pipeline-node:before{left:27px}.readiness-builder{min-width:0}.pipeline-timeline li{align-items:flex-start}}.published-actions{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.published-actions button{color:#326d55;cursor:pointer;background:#eaf2ed;border:0;border-radius:9px;padding:8px 11px;font-size:11px}.published-actions button:disabled{opacity:.4}.published-rules{margin-bottom:24px}.published-rules header h3{margin:0 0 5px}.readiness-rules{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr)}.readiness-rules>.readiness-builder{grid-area:1/1}.readiness-rules>.readiness-drafts{grid-area:2/1}.readiness-rules>.published-rules{grid-area:1/2/span 2}@media (width<=900px){.readiness-rules{grid-template-columns:1fr}.readiness-rules>.readiness-builder{grid-area:1/1}.readiness-rules>.readiness-drafts{grid-area:2/1}.readiness-rules>.published-rules{grid-area:3/1}}.readiness-center{--rc-ink:#17221d;--rc-muted:#68746d;--rc-green:#1e6b4b;--rc-line:#dce5df;color:var(--rc-ink);background:#f4f7f4;border:1px solid #d8e2db;border-radius:24px;overflow:hidden;box-shadow:0 18px 50px #24483312}.readiness-center button,.readiness-center input,.readiness-center select{font:inherit}.readiness-hero{background:radial-gradient(circle at 90% 0,#cde8d6 0,#0000 35%),linear-gradient(135deg,#fff,#eef5ef);justify-content:space-between;align-items:flex-start;gap:24px;padding:30px 32px 24px;display:flex}.readiness-hero h2,.readiness-builder h3,.readiness-drafts h3{letter-spacing:-.03em;margin:4px 0 8px;font-size:clamp(1.4rem,2vw,2rem)}.readiness-hero p{max-width:760px;color:var(--rc-muted);margin:0;line-height:1.55}.readiness-kicker{letter-spacing:.15em;color:var(--rc-green);font-size:.7rem;font-weight:800}.readiness-mode{white-space:nowrap;border:1px solid var(--rc-line);background:#fff;border-radius:999px;padding:8px 12px;font-size:.75rem;font-weight:800}.readiness-mode.live{color:#11683e;background:#e8f8ee}.readiness-mode.preview{color:#896019;background:#fff6dc}.readiness-tabs{border-bottom:1px solid var(--rc-line);background:#fff;gap:6px;padding:0 32px;display:flex}.readiness-tabs button{color:#667069;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-right:24px;padding:16px 4px 13px;font-weight:750}.readiness-tabs button.active{color:var(--rc-ink);border-color:var(--rc-green)}.readiness-tabs i{background:#eef3ef;border-radius:10px;margin-left:7px;padding:2px 7px;font-style:normal}.readiness-message{color:#244b37;background:#e7f1eb;border-radius:12px;justify-content:space-between;align-items:center;margin:18px 32px 0;padding:12px 16px;display:flex}.readiness-message button{cursor:pointer;background:0 0;border:0;font-size:20px}.readiness-alerts{grid-template-columns:minmax(220px,.7fr) minmax(0,1.6fr);gap:22px;padding:24px 32px 32px;display:grid}.readiness-preferences,.readiness-alert-list,.readiness-builder,.readiness-drafts{border:1px solid var(--rc-line);background:#fff;border-radius:18px;padding:22px}.readiness-preferences h3,.readiness-alert-list h3{margin:0 0 18px}.readiness-preferences label{gap:11px;font-size:.9rem;display:grid}.readiness-preferences input{width:100%;accent-color:var(--rc-green)}.readiness-preferences p{color:var(--rc-muted);border-top:1px solid var(--rc-line);margin:24px 0 0;padding-top:18px;font-size:.78rem;line-height:1.5}.readiness-alert-list>header,.readiness-drafts>header,.readiness-builder-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.readiness-alert-list>header span{color:var(--rc-muted);font-size:.75rem}.readiness-alert-list article{border-top:1px solid #e9eeea;grid-template-columns:38px 1fr auto;align-items:center;gap:14px;padding:15px 0;display:grid}.readiness-alert-list article.critical .readiness-alert-icon{color:#ab2f25;background:#ffebe8}.readiness-alert-list article.simulated{opacity:.78}.readiness-alert-icon{color:#8a5e00;background:#fff1cf;border-radius:11px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.readiness-alert-list article p{color:var(--rc-muted);margin:3px 0;font-size:.86rem}.readiness-alert-list article small{color:#95630b;letter-spacing:.06em;font-size:.63rem;font-weight:800}.readiness-alert-list article button,.readiness-draft-title+button{border:1px solid var(--rc-line);cursor:pointer;background:#fff;border-radius:9px;padding:7px 10px}.readiness-empty{text-align:center;color:var(--rc-muted);padding:34px 20px}.readiness-empty b{color:var(--rc-ink)}.readiness-empty p{margin:7px 0 0}.readiness-alert-list details{border-top:1px solid var(--rc-line);color:var(--rc-muted);padding-top:15px;font-size:.82rem}.readiness-alert-list summary{cursor:pointer;font-weight:700}.readiness-rules{grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:22px;padding:24px 32px 32px;display:grid}.readiness-kind{background:#edf2ee;border-radius:10px;padding:3px;display:flex}.readiness-kind button{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:7px 11px}.readiness-kind button.active{background:#fff;box-shadow:0 2px 8px #173b2514}.readiness-builder>label{gap:7px;margin:20px 0;font-size:.82rem;font-weight:700;display:grid}.readiness-builder input,.readiness-builder select{min-width:0;color:var(--rc-ink);background:#fff;border:1px solid #d7e0da;border-radius:10px;padding:10px 11px}.readiness-builder fieldset{border:0;border-top:1px solid var(--rc-line);margin:12px 0;padding:18px 0 5px}.readiness-builder legend{padding:0 10px 0 0;font-weight:800}.readiness-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.readiness-grid>:last-child:nth-child(odd){grid-column:1/-1}.readiness-action{margin-bottom:12px;position:relative}.readiness-action>.text-danger{margin-top:6px}.readiness-add{color:var(--rc-green);cursor:pointer;background:#f6faf7;border:1px dashed #9cb1a3;border-radius:10px;padding:9px 12px}.readiness-builder>footer{justify-content:space-between;align-items:center;gap:14px;margin-top:18px;display:flex}.readiness-builder>footer small{color:var(--rc-muted)}.readiness-primary{background:var(--rc-green);color:#fff;cursor:pointer;border:0;border-radius:11px;padding:11px 15px;font-weight:800}.readiness-drafts>header>span{background:#edf4ef;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.readiness-drafts article{border-top:1px solid var(--rc-line);padding:17px 0}.readiness-drafts article:first-of-type{margin-top:14px}.readiness-draft-title{gap:3px;display:grid}.readiness-draft-title>span{letter-spacing:.12em;color:var(--rc-green);font-size:.62rem;font-weight:900}.readiness-draft-title small,.readiness-drafts article p{color:var(--rc-muted);font-size:.78rem}.readiness-drafts ul{color:#46534b;padding-left:19px;font-size:.82rem}.readiness-drafts article footer{flex-wrap:wrap;gap:7px;display:flex}.readiness-drafts article footer button{border:1px solid var(--rc-line);cursor:pointer;background:#fff;border-radius:9px;padding:8px 10px;font-size:.76rem}.readiness-drafts button:disabled{opacity:.45;cursor:not-allowed}.readiness-center .text-danger{color:#a13c35;cursor:pointer;background:0 0;border:0}@media (width<=850px){.readiness-alerts,.readiness-rules{grid-template-columns:1fr}.readiness-hero{flex-direction:column}.readiness-alert-list>header{display:block}.readiness-alert-list>header span{margin-bottom:10px;display:block}}@media (width<=520px){.readiness-hero,.readiness-alerts,.readiness-rules{padding-left:18px;padding-right:18px}.readiness-tabs{padding:0 18px}.readiness-grid{grid-template-columns:1fr}.readiness-alert-list article{grid-template-columns:34px 1fr}.readiness-alert-list article button{grid-column:2}.readiness-builder>footer{flex-direction:column;align-items:stretch}.readiness-primary{width:100%}}.rule-conditions{border:1px solid var(--rc-line);background:#f8faf8;border-radius:14px;margin:18px 0;padding:16px}.rule-conditions>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.rule-conditions>header div{gap:3px;display:grid}.rule-conditions>header small,.rule-schedule small{color:var(--rc-muted);font-size:.68rem}.rule-condition{background:#fff;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;margin-top:12px;padding:12px;display:grid}.rule-condition input,.rule-condition select,.rule-conditions>header select,.rule-schedule input,.rule-schedule select{background:#fff;border:1px solid #d5dfd8;border-radius:8px;min-width:0;padding:9px}.rule-condition .rule-days{grid-column:span 2}.rule-days{flex-wrap:wrap;gap:5px;display:flex}.rule-days label{border:1px solid var(--rc-line);border-radius:7px;align-items:center;padding:5px 6px;gap:3px!important;margin:0!important;font-size:.68rem!important;display:flex!important}.rule-days input{width:auto!important}.rule-add{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.rule-add button{color:var(--rc-green);cursor:pointer;background:#fff;border:1px dashed #aabbb0;border-radius:8px;padding:7px 9px}.rule-schedule-enabled{align-items:center;gap:8px!important;margin:16px 0 8px!important;display:flex!important}.rule-schedule-enabled input{width:auto}.rule-schedule{background:#eef4f0;border-radius:10px;grid-template-columns:1fr 1fr;gap:9px;padding:12px;display:grid}.rule-schedule .rule-days,.rule-schedule>small{grid-column:1/-1}.rule-delay{grid-template-columns:1fr auto;align-items:center;gap:5px;font-size:.7rem;display:grid}.rule-delay input{width:90px}.rule-delay small{grid-column:2}@media (width<=600px){.rule-condition,.rule-schedule{grid-template-columns:1fr}.rule-condition .rule-days,.rule-schedule .rule-days,.rule-schedule>small{grid-column:1}.rule-conditions>header{flex-direction:column}}.readiness-alert-enabled{align-items:center;margin-bottom:22px;gap:10px!important;display:flex!important}.readiness-alert-enabled input{width:auto}.readiness-command-audit{padding:26px 32px}.readiness-command-audit header p{color:#74857a;font-size:12px}.readiness-command-audit article{border-top:1px solid #dce5df;grid-template-columns:175px 1fr auto;align-items:center;gap:20px;padding:16px 0;display:grid}.readiness-command-audit article p{color:#74857a;margin:5px 0 0;font-size:12px}.readiness-command-audit time{color:#7b8a82;font-size:11px}.command-audit-state{color:#6e7c75;background:#eef1ef;border-radius:9px;padding:8px 10px;font-size:11px}.command-audit-state.confirmed{color:#277049;background:#e4f4e9}.command-audit-state.simulated{color:#937429;background:#f8efd8}.command-audit-state.pending{color:#4b6e90;background:#e5edf5}.command-audit-state.timeout,.command-audit-state.error{color:#a15049;background:#fae7e5}.readiness-tabs{flex-wrap:wrap}.readiness-tabs button{min-height:44px}@media (width<=520px){.readiness-command-audit{padding:20px 18px}.readiness-command-audit article{grid-template-columns:1fr;gap:8px}.command-audit-state{justify-self:start}.readiness-tabs button{margin-right:10px;font-size:12px}}.custom-alerts{border:1px solid var(--rc-line);background:#fff;border-radius:18px;margin:0 32px 32px;padding:22px}.custom-alerts>header{justify-content:space-between;align-items:flex-start;display:flex}.custom-alerts h3{margin:4px 0 0;font-size:1.35rem}.custom-alerts>header>span{color:var(--rc-green);background:#eef4f0;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:800}.custom-alerts-intro{max-width:780px;color:var(--rc-muted);margin:10px 0 20px;font-size:.82rem;line-height:1.5}.custom-alert-layout{grid-template-columns:minmax(280px,.85fr) minmax(320px,1.15fr);gap:22px;display:grid}.custom-alert-form{background:#f7faf8;border-radius:14px;padding:18px}.custom-alert-form label{color:#445249;gap:6px;margin-bottom:12px;font-size:.76rem;font-weight:750;display:grid}.custom-alert-form input,.custom-alert-form select,.custom-test input,.custom-test select{background:#fff;border:1px solid #d5dfd8;border-radius:9px;width:100%;min-width:0;padding:10px}.custom-alert-row,.custom-alert-condition{grid-template-columns:1fr 1fr;gap:10px;display:grid}.custom-alert-condition{border-top:1px solid var(--rc-line);grid-template-columns:1fr 1fr .8fr;padding-top:12px}.custom-alert-condition label small{color:var(--rc-muted);font-size:.65rem}.custom-alert-form footer,.custom-alert-list article footer{flex-wrap:wrap;gap:8px;display:flex}.custom-alert-form footer button:not(.readiness-primary),.custom-alert-list article footer button,.custom-test button{border:1px solid var(--rc-line);cursor:pointer;background:#fff;border-radius:9px;padding:8px 10px}.custom-alert-list article{border-top:1px solid var(--rc-line);padding:16px 0}.custom-alert-list article:first-child{border-top:0}.custom-alert-list article.disabled{opacity:.58}.custom-alert-list article>header{justify-content:space-between;gap:12px;display:flex}.custom-alert-list article>header>div{gap:4px;display:grid}.custom-alert-list article p{color:#526057;margin:8px 0 4px;font-size:.82rem}.custom-alert-list article>small{color:var(--rc-muted);margin-bottom:12px;font-size:.72rem;display:block}.custom-severity{color:#856000;letter-spacing:.06em;text-transform:uppercase;background:#fff1cf;border-radius:6px;width:max-content;padding:3px 7px;font-size:.6rem;font-weight:900}.custom-severity.critical{color:#a7332b;background:#ffebe8}.custom-severity.info{color:#326a91;background:#e8f1f7}.custom-switch{color:var(--rc-muted);align-items:center;gap:6px;font-size:.7rem;display:flex}.custom-switch input{accent-color:var(--rc-green)}.custom-test{background:#f4f7f5;border-radius:10px;grid-template-columns:1fr auto;gap:8px;margin-top:12px;padding:12px;display:grid}.custom-test small{color:var(--rc-muted);grid-column:1/-1;font-size:.67rem}@media (width<=900px){.custom-alert-layout{grid-template-columns:1fr}.custom-alert-condition{grid-template-columns:1fr 1fr}}@media (width<=520px){.custom-alerts{margin:0 18px 22px;padding:17px}.custom-alert-row,.custom-alert-condition,.custom-test{grid-template-columns:1fr}.custom-alerts>header{display:block}.custom-alerts>header>span{margin-top:8px;display:inline-block}}.auth-page{background:radial-gradient(at 20% 5%,#d8e9df,#0000 55%),#eff1f1;place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{box-sizing:border-box;background:#ffffffed;border-radius:28px;width:min(430px,100%);padding:38px;box-shadow:0 16px 70px #223c3012}.auth-brand{letter-spacing:.2em;color:#326d55;font-size:12px;font-weight:800}.auth-card h1{letter-spacing:-.05em;margin:28px 0 8px;font-size:32px}.auth-card p{color:#68746e;font-size:13px;line-height:1.6}.auth-card form{gap:18px;margin-top:26px;display:grid}.auth-card label{gap:7px;font-size:12px;font-weight:600;display:grid}.auth-card input:not([type=checkbox]){box-sizing:border-box;width:100%;height:48px;font:inherit;background:#fafcfb;border:1px solid #d9e0dc;border-radius:12px;padding:0 12px}.auth-card .auth-remember{align-items:center;gap:8px;font-weight:400;display:flex}.auth-remember input{accent-color:#326d55}.auth-submit{color:#fff;width:100%;font:inherit;cursor:pointer;background:#326d55;border:0;border-radius:12px;padding:15px;font-size:13px;font-weight:700}.auth-submit:disabled{opacity:.5}.auth-card>small{color:#89928d;margin-top:26px;font-size:11px;display:block}.auth-card .auth-error{color:#9c3c37;margin:0}.auth-account{z-index:60;background:#fff;border-radius:14px;align-items:center;gap:10px;padding:7px 11px;font-size:11px;display:flex;position:fixed;bottom:12px;left:110px;box-shadow:0 3px 20px #0001}.auth-account button{color:#326d55;background:#edf3ef;border:0;border-radius:8px;padding:6px 10px}.auth-account [role=alert]{color:#9c3c37;max-width:180px}@media (width<=700px){.auth-account{inset:12px 12px auto auto}.auth-account>span:first-child{display:none}.auth-card{padding:28px}}.auth-logout{color:#326d55;font:inherit;cursor:pointer;background:#e5eee8;border:0;border-radius:12px;padding:8px 12px;font-size:11px}.auth-logout:disabled{opacity:.5}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-400.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-500.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-600.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-700.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-800.ttf)format("truetype");font-weight:800;font-display:swap}:root{color:#202728;--g:#2d6a4f;--p:#d4f5e7;--m:#7d8586;--l:#e3e6e7;background:#dfe2e5;font-family:DM Sans,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0;font-size:14px}button,input,select{font:inherit}button{cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #78bb9c}svg{flex-shrink:0;display:block}button{transition:background .18s,transform .18s,box-shadow .18s}button:active:not(:disabled){transform:translateY(1px)}.app-shell{background:#f0f1f3;grid-template-columns:86px minmax(0,1fr);max-width:1800px;min-height:100vh;margin:auto;display:grid}.desktop-sidebar{background:#f7f8f8;border-right:1px solid #e6e8e9;flex-direction:column;align-items:center;width:86px;height:100vh;padding:28px 12px 22px;display:flex;position:sticky;top:0}.brand{letter-spacing:.1em;justify-items:center;gap:8px;font-size:10px;font-weight:800;display:grid}.brand svg{color:#fff;background:var(--g);border-radius:13px;width:38px;height:38px;padding:9px}.side-nav{gap:12px;width:100%;margin-top:68px;display:grid}.side-nav button{color:var(--m);background:0 0;border:0;border-radius:18px;justify-items:center;gap:6px;padding:12px 0;font-size:10px;font-weight:600;display:grid}.side-nav button.active{color:var(--g);background:#e0efe7}.side-nav button:hover{background:#e9edeb}.side-nav svg{width:20px;height:20px}.desktop-sidebar>small{color:var(--m);margin-top:auto;font-size:10px}.app-column{grid-column:2;min-width:0}.app-header{justify-content:space-between;align-items:center;height:87px;padding:0 32px;display:flex}.app-header-actions{align-items:center;gap:9px;display:flex}.app-header>div{gap:2px;display:grid}.app-header small{color:var(--m);font-size:11px}.app-header strong{font-size:17px;font-weight:600}.demo-badge{color:#708079;letter-spacing:.08em;background:#ffffff91;border:1px solid #e0e4e4;border-radius:999px;align-self:center;padding:7px 12px;font-size:10px;font-weight:700}.page-content{max-width:1620px;margin:auto;padding:5px 30px 40px}.page-intro{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.page-intro>.demo-badge{display:none}.page-intro span,.summary-eyebrow{color:var(--m);font-size:11px}.page-intro h1{letter-spacing:-.055em;margin:4px 0;font-size:clamp(28px,2.6vw,38px);font-weight:600;line-height:1.05}.page-intro p,.dialog-note{color:var(--m);margin:8px 0 0;font-size:13px;line-height:1.6}.home-composition{grid-template-columns:185px minmax(0,1fr) 245px;align-items:start;gap:24px;display:grid}.house-workspace{min-width:0}.camera-rail{min-width:0;padding-top:12px}.rail-heading{justify-content:space-between;align-items:center;gap:8px;margin:4px 0 17px;display:flex}.rail-heading h2,.rail-heading h3{margin:0;font-size:13px;font-weight:600}.rail-heading h2 span,.rail-heading>span{color:var(--m);margin-left:5px;font-size:11px;font-weight:400}.rail-heading>svg{color:#8b9293;width:15px;height:15px}.camera-stack{gap:14px;padding:7px 0 39px;display:grid}.rail-camera{text-align:left;background:#ffffffd9;border:0;border-radius:20px;align-items:center;gap:9px;width:100%;padding:10px 8px;display:flex;position:relative;box-shadow:0 9px 25px #333b4010}.rail-camera.north{z-index:1;transform:rotate(4deg)}.rail-camera.south{transform:rotate(-3deg)}.rail-camera:hover{transform:rotate(0);box-shadow:0 10px 20px #333b401b}.mini-house-photo{background:#dfe2e4;border-radius:15px;flex-shrink:0;width:48px;height:51px;overflow:hidden}.mini-house-photo img{object-fit:cover;filter:grayscale();opacity:.8;width:130px;height:100%;transform:translate(-40px)}.rail-camera>span:last-child{gap:4px;display:grid}.rail-camera strong{font-size:11px;font-weight:600}.rail-camera small{color:var(--m);font-size:9px}.rail-camera em{color:#929698;font-size:9px;font-style:normal}.favorite-card{text-align:left;background:#e1e3e5;border:0;border-radius:21px;width:100%;margin-bottom:12px;padding:15px}.favorite-card.warm{background:linear-gradient(135deg,#e9e9e5,#e0e1dd)}.favorite-card.lavender{background:linear-gradient(135deg,#e7e5ee,#dcdae9)}.favorite-top,.favorite-bottom{justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.favorite-top{color:#727975}.favorite-top svg{width:17px;height:17px}.favorite-card>strong{letter-spacing:-.04em;margin:17px 0 19px;font-size:26px;font-weight:600;display:block}.favorite-bottom svg{width:13px;height:13px}.favorite-bottom small{background:#ffffff7a;border-radius:999px;padding:4px 7px}.rail-caption{color:#969c9d;margin-top:20px;font-size:10px;display:block}.home-summary{background:#fff;border-radius:24px;min-width:0;padding:27px 21px;box-shadow:0 9px 28px #41464b04}.home-summary h2{letter-spacing:-.035em;margin:10px 0 23px;font-size:23px;font-weight:400;line-height:1.25}.home-summary h2 strong{font-weight:700}.summary-status{color:var(--m);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:32px;font-size:10px;display:flex}.summary-status i{background:#abb5af;border-radius:50%;width:6px;height:6px}.summary-status b{color:#a08260;margin-left:auto;font-weight:500}.round-link{background:#f1f3f3;border:0;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.round-link svg{width:12px;height:12px}.summary-battery{width:139px;height:139px;margin:15px auto 22px;position:relative}.summary-battery svg{width:100%;height:100%;transform:rotate(-90deg)}.summary-battery circle{fill:none;stroke:#edf1ef;stroke-width:8px}.summary-battery .battery-arc{stroke:#afdbc5;stroke-dasharray:302 308;stroke-linecap:round}.summary-battery>span{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.summary-battery strong{letter-spacing:-.06em;font-size:34px;font-weight:600}.summary-battery strong small{margin-left:4px;font-size:15px}.summary-battery em{color:var(--m);font-size:11px;font-style:normal}.summary-values{grid-template-columns:1fr 1fr;gap:10px;display:grid}.summary-values>div{gap:7px;display:grid}.summary-values svg{color:#a6b7a9;width:16px;height:16px}.summary-values small{color:var(--m);font-size:10px}.summary-values strong{letter-spacing:-.04em;font-size:19px;font-weight:600}.summary-values strong span{font-size:11px;font-weight:400}.activity-title{margin-top:34px}.activity-event{align-items:center;gap:8px;margin:10px 0;display:flex}.activity-event>i{background:#aaa0c4;border-radius:50%;width:5px;height:5px}.activity-event>div{background:repeating-linear-gradient(130deg,#ede8f6,#ede8f6 3px,#e8e2f1 3px 4px);border-radius:13px;flex:1;gap:5px;padding:14px 10px;display:grid}.activity-event strong{font-size:10px;font-weight:600}.activity-event small{color:#77757f;font-size:9px}.activity-event.muted>div{background:#f0f1f1}.summary-energy-link{width:100%;color:var(--g);background:0 0;border:0;justify-content:space-between;align-items:center;margin-top:20px;padding:5px 0;font-size:11px;display:flex}.summary-energy-link svg{width:13px;height:13px}.energy-mini{display:none}.house-card{overflow:hidden}.house-card header{justify-content:space-between;align-items:center;gap:8px;min-height:65px;padding:0 0 8px;display:flex}.house-card header span{color:var(--m);font-size:10px}.house-card h2{letter-spacing:-.04em;margin:4px 0;font-size:24px;font-weight:500;line-height:1.15}.house-card header>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.model-wrap{background:#f0f1f3;height:clamp(360px,36vw,580px);position:relative}.clay-house-stage{touch-action:pan-y;background:#f0f1f3;height:100%;min-height:100%;position:relative;overflow:hidden}.clay-canvas{position:absolute;inset:0}.clay-canvas canvas{width:100%;height:100%;display:block}.x3d-loading{color:var(--m);background:#f0f1f3;place-content:center;justify-items:center;gap:7px;font-size:12px;display:grid;position:absolute;inset:0}.x3d-loading span{border:3px solid #d6e7db;border-top-color:var(--g);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.model-help,.room-hover-badge,.focused-room-badge{z-index:7;pointer-events:none;background:#ffffffd4;border-radius:14px;padding:8px 11px;font-size:10px;position:absolute}.model-help{white-space:nowrap;align-items:center;gap:6px;display:flex;bottom:7px;left:50%;transform:translate(-50%)}.model-help strong{font-weight:500}.model-help small{display:none}.room-hover-badge{background:#c5f1e1dd;gap:8px;display:flex;top:8px;left:50%;transform:translate(-50%)}.room-hover-badge span{color:#587f70}.focused-room-badge{display:none}.room-pills{scrollbar-width:thin;scrollbar-color:#d2d8d6 transparent;gap:6px;padding:12px 0 20px;display:flex;overflow-x:auto}.room-pills button,.quiet-button{white-space:nowrap;background:#fff;border:0;border-radius:999px;min-height:35px;padding:0 13px;font-size:11px}.room-pills button.active,.quiet-button.active{color:#235d47;background:#c9f1df}.room-pills button:hover{background:#e0eee7}.primary-button{color:#fff;background:var(--g);border:0;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 16px;font-weight:600;display:inline-flex}.primary-button.compact{min-height:35px;padding:0 12px;font-size:11px}.primary-button svg{width:15px;height:15px}.text-button{color:var(--g);background:0 0;border:0;padding:5px 0;font-size:12px}.detail-card{background:#ffffffb0;border-radius:22px;padding:20px}.detail-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.detail-title span{color:var(--m);font-size:11px}.detail-title h2{letter-spacing:-.03em;margin:3px 0;font-size:19px;font-weight:600}.device-list{grid-template-columns:1fr;gap:9px;display:grid}.device-row{background:#fff;border:1px solid #e9eceb;border-radius:17px;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:73px;padding:11px;display:grid}.device-row.offline{background:#f5f6f6}.device-row.offline .device-icon{filter:grayscale()}.device-icon{width:37px;height:37px;color:var(--g);background:#e7f1eb;border-radius:13px;place-items:center;display:grid}.device-icon svg{width:18px;height:18px}.device-row>span:nth-child(2),.settings-card article>span:nth-child(2){gap:5px;min-width:0;display:grid}.device-row strong{overflow-wrap:anywhere;font-size:13px;font-weight:500}.device-row small,.settings-card small{color:var(--m);font-size:11px;line-height:1.4}.device-row em,.settings-card em{color:var(--m);font-size:10px;font-style:normal}.toggle{background:#d9dedb;border:0;border-radius:999px;width:42px;height:26px;padding:3px}.toggle i{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;display:block;box-shadow:0 1px 4px #0001}.toggle.on{background:var(--g)}.toggle.on i{transform:translate(16px)}.empty-state{color:var(--m);margin:0;font-size:12px;line-height:1.6}.energy-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:22px;display:grid}.energy-grid article{background:#fff;border-radius:22px;gap:10px;padding:23px;display:grid}.energy-grid svg{color:#82a08e;width:22px;height:22px}.energy-grid small{color:var(--m)}.energy-grid strong{letter-spacing:-.04em;font-size:28px;font-weight:600}.chart-card,.flow-card,.inverters-card,.settings-card{background:#fff;border-radius:24px;margin-bottom:20px;padding:25px}.chart-card header,.flow-card header,.inverters-card header{justify-content:space-between;align-items:center;gap:16px;display:flex}.chart-card h2,.flow-card h2,.inverters-card h2{letter-spacing:-.04em;margin:4px 0;font-size:21px;font-weight:600}.chart-card header span,.chart-card header small,.flow-card header span{color:var(--m);font-size:11px}.sample-chart{border-bottom:1px solid var(--l);align-items:flex-end;gap:15px;height:220px;padding:25px 10px 0;display:flex}.sample-chart i{background:linear-gradient(#bcebd4,#66a487);border-radius:8px 8px 0 0;flex:1}.chart-times{color:var(--m);justify-content:space-between;padding-top:14px;font-size:11px;display:flex}.camera-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.camera-card{text-align:left;background:#fff;border:0;border-radius:24px;padding:0;overflow:hidden}.camera-placeholder{color:#92999b;background:linear-gradient(145deg,#d4d9dd,#e8ebed);place-content:center;justify-items:center;gap:10px;height:230px;display:grid}.camera-placeholder svg{width:37px;height:37px}.camera-placeholder small{font-size:11px}.camera-card>span:last-child{gap:6px;padding:18px 22px;display:grid}.camera-card>span:last-child strong{font-weight:500}.camera-card>span:last-child small{color:var(--m);font-size:12px}.settings-card{max-width:850px}.settings-card article{border-bottom:1px solid #eef0f0;grid-template-columns:37px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:94px;padding:18px 0;display:grid}.settings-card article:last-child{border:0}.settings-card strong{font-size:14px;font-weight:500}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#26312f66;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:27px;width:min(480px,100%);max-height:calc(100dvh - 40px);padding:30px;position:relative;overflow:auto;box-shadow:0 20px 80px #1e2b2d22}.dialog h2{letter-spacing:-.04em;margin:0 36px 12px 0;font-size:23px;font-weight:600}.dialog-close{background:#f0f2f2;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:18px;right:17px}.dialog-close svg{width:17px;height:17px}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.add-form{gap:17px;margin-top:20px;display:grid}.add-form label{gap:7px;font-size:12px;font-weight:600;display:grid}.add-form input,.add-form select{background:#fbfcfb;border:1px solid #dce2df;border-radius:12px;width:100%;min-height:46px;padding:0 13px;font-size:16px}.plan-image{object-fit:contain;width:100%;height:100%}.mobile-nav{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border:1px solid #fff;border-radius:23px;grid-template-columns:repeat(3,minmax(0,1fr));width:280px;padding:5px;display:grid;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 10px 32px #38433d1b}.mobile-nav button{color:#8d9692;background:0 0;border:0;border-radius:17px;align-content:center;place-items:center;gap:3px;min-height:45px;font-size:10px;display:grid}.mobile-nav svg{width:18px;height:18px}.mobile-nav button.active{color:#fff;background:var(--g)}.mobile-nav .mobile-add-button{color:#8d9692;width:45px;height:45px;min-height:45px;box-shadow:none;background:#f1f3f2;border:1px solid #d8ddda;border-radius:50%;place-self:center;padding:0}.mobile-nav .mobile-add-button svg{width:20px;height:20px}.mobile-nav .mobile-add-button span{display:none}.mobile-nav .mobile-add-button:hover{color:#4e5b55;background:#e7eae8}.mobile-header-menu{display:none}@keyframes mobile-menu-appear{0%{opacity:0;transform:translateY(-5px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.mobile-more-menu{animation:none!important}.mobile-more-button{transition:none!important}}@media (width>=1500px){.home-composition{grid-template-columns:215px minmax(0,1fr) 270px;gap:30px}.device-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1190px) and (width>=801px){.home-composition{grid-template-columns:155px minmax(0,1fr);gap:19px}.home-summary{grid-column:1/-1;display:none}.energy-mini{display:grid}.page-content{padding-inline:22px}.rail-camera{gap:6px;padding:8px 5px}.mini-house-photo{width:37px}.model-wrap{height:430px}}@media (width<=800px){:root{background:#f0f1f3}.app-shell{display:block}.desktop-sidebar{display:none}.app-header{height:64px;padding:0 20px}.app-header>div{flex-direction:column-reverse;gap:0;display:flex}.app-header .app-header-actions{flex-direction:row;align-items:center;gap:9px}.page-content{padding:9px 18px calc(105px + env(safe-area-inset-bottom))}.page-intro{margin-bottom:18px}.page-intro h1{font-size:30px;font-weight:600}.page-intro p{max-width:340px;font-size:12px}.page-intro>div>span{display:none}.home-composition{display:block}.camera-rail,.home-summary{display:none}.energy-mini{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 21px;display:grid}.energy-mini button{text-align:left;background:#fff;border:0;border-radius:19px;align-items:center;gap:8px;min-height:65px;padding:11px 9px;display:flex}.energy-mini svg{color:#91a99b;width:17px;height:17px}.energy-mini span{gap:4px;display:grid}.energy-mini small{color:var(--m);font-size:10px}.energy-mini strong{white-space:nowrap;font-size:14px;font-weight:600}.house-card header{gap:5px;min-height:54px}.house-card h2{font-size:21px}.house-card header>div:last-child{gap:4px}.house-card header .quiet-button,.house-card header .primary-button.compact{min-height:33px;padding:0 9px;font-size:10px}.model-wrap{height:clamp(255px,74vw,440px);margin:0 -12px}.room-pills{scrollbar-width:none;margin:0 -18px;padding:16px 18px 22px}.room-pills button{min-height:40px;font-size:12px}.detail-card{padding:18px}.device-list{grid-template-columns:1fr}.energy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.energy-grid article{padding:18px}.energy-grid strong{font-size:25px}.camera-grid{grid-template-columns:1fr;gap:16px}.settings-card{padding:18px}.settings-card article{gap:10px}.settings-card em{overflow-wrap:anywhere;max-width:70px;font-size:10px}.mobile-nav{bottom:calc(10px + env(safe-area-inset-bottom));width:min(350px,100% - 48px)}.mobile-nav button{gap:4px;min-height:49px}.mobile-nav .mobile-add-button{width:49px;height:49px;min-height:49px}.mobile-header-menu{display:block;position:relative}.mobile-more-button{color:#4c6658;background:#fff;border:1px solid #dfe5e1;border-radius:12px;place-items:center;width:42px;min-width:42px;height:42px;min-height:42px;padding:0;transition:background .18s,border-color .18s;display:grid;box-shadow:0 3px 10px #30473806}.mobile-more-button span{display:none}.mobile-more-button svg{width:21px;height:21px}.mobile-more-button:hover,.mobile-more-button[aria-expanded=true]{background:#e9f3ed;border-color:#c8dccf}.mobile-more-button:focus-visible,.mobile-more-menu button:focus-visible{outline-offset:2px;outline:3px solid #80b99c}.mobile-more-button.active{color:var(--g);background:#e2f0e8}.mobile-more-menu{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform-origin:100% 0;background:#fffffff8;border:1px solid #dfe8e2;border-radius:14px;gap:4px;width:min(240px,100vw - 40px);padding:7px;animation:.16s ease-out mobile-menu-appear;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 13px 30px #34423c22}.mobile-more-menu button{color:#415049;text-align:left;background:0 0;border:0;border-radius:9px;justify-content:flex-start;align-items:center;gap:10px;width:100%;min-height:44px;padding:9px 11px;font-size:12px;display:flex}.mobile-more-menu button:hover{background:#ecf4ef}.mobile-more-menu svg{width:17px;height:17px;color:var(--g)}.dialog{padding:25px}}@media (width<=365px){.energy-mini button{gap:4px;padding-inline:7px}.energy-mini svg{display:none}.house-card header{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.house-card{position:relative}.floor-plan-image{object-fit:contain;width:100%;height:100%}.room-back{color:var(--g);background:0 0;border:0;padding:4px 0 8px;font-size:12px;display:block}.center-model{background:#ffffffb0;border:0;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:absolute;bottom:8px;right:8px}.center-model svg{color:#7f8984;width:13px;height:13px}.storage-notice{color:#846b42;font-size:12px;line-height:1.5}.energy-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.energy-flow-card{color:#20312a;background:radial-gradient(circle at 50% 42%,#f8fffb 0,#f2f7f4 46%,#ebf1ed 100%);border-radius:24px;min-width:0;margin-bottom:20px;padding:25px;overflow:hidden}.energy-flow-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.energy-flow-heading h2{letter-spacing:-.04em;margin:4px 0;font-size:21px;font-weight:600}.energy-flow-heading span{color:var(--m);font-size:11px}.energy-flow-heading p{color:#78877f;white-space:nowrap;align-items:center;gap:6px;margin:0;font-size:10px;display:flex}.energy-flow-heading p i{background:#d4a94b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #ecdba94d}.energy-diagram{min-height:350px;margin:8px auto 0;position:relative}.energy-lines{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.energy-line{fill:none;stroke:#cee0d6;stroke-width:2px;stroke-linecap:round}.energy-pulse{fill:none;stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:.025 .975}.solar-pulse{stroke:#e0b34f;animation:2.1s linear infinite pulse-down}.load-pulse{stroke:#4c9b72;animation:1.8s linear .3s infinite pulse-down}.battery-pulse{stroke:#629ab9;animation:2.4s linear .45s infinite pulse-left}.grid-pulse{stroke:#aa9bca;animation:2.7s linear .1s infinite pulse-right}@keyframes pulse-down{to{stroke-dashoffset:-1px}}@keyframes pulse-left{to{stroke-dashoffset:1px}}@keyframes pulse-right{to{stroke-dashoffset:-1px}}.energy-node{z-index:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffcf;border:1px solid #fff;border-radius:17px;align-items:center;gap:10px;min-width:145px;padding:10px 12px;display:flex;position:absolute;box-shadow:0 10px 26px #4351490d}.energy-node-icon{color:#56836d;background:#e6f3eb;border-radius:11px;flex:none;place-items:center;width:32px;height:32px;display:grid}.energy-node-icon svg{width:17px;height:17px}.energy-node-copy{gap:1px;min-width:0;display:grid}.energy-node small,.energy-node em{color:#78867f;white-space:nowrap;font-size:9px;font-style:normal}.energy-node strong{letter-spacing:-.03em;white-space:nowrap;font-size:14px;font-weight:700}.node-solar{top:9px;left:50%;transform:translate(-50%)}.node-solar .energy-node-icon{color:#a98529;background:#fcf2d4}.node-house{top:137px;left:50%;transform:translate(-50%)}.node-battery{top:137px;left:1%}.node-battery .energy-node-icon{color:#4c88a8;background:#e0eff5}.node-grid{top:137px;right:1%}.node-grid .energy-node-icon{color:#8474a5;background:#ece8f4}.node-load{bottom:7px;left:50%;transform:translate(-50%)}.node-load .energy-node-icon{color:#3e8663;background:#dff2e6}.energy-disclaimer{color:#819088;text-align:center;max-width:530px;margin:2px auto 0;font-size:10px;line-height:1.5}.energy-flow{justify-items:center;padding:25px 0 6px;display:grid}.flow-node{background:#f3f6f4;border-radius:20px;justify-items:center;gap:8px;min-width:145px;padding:17px 24px;display:grid}.flow-node svg{color:#739e86;width:23px;height:23px}.flow-node small{color:var(--m);font-size:11px}.flow-node strong{font-size:20px;font-weight:500}.flow-node.solar{background:#f7f4e9}.flow-node.solar svg{color:#b7a465}.flow-node.house{background:#e7f2eb}.flow-connection{color:#9bb9a7;font-size:27px;line-height:1.3}.flow-branches{grid-template-columns:1fr 1fr;gap:24px;width:100%;margin-top:15px;padding-top:31px;display:grid;position:relative}.flow-branches:before{content:"";border:1px solid #d5e5dc;border-bottom:0;border-radius:12px 12px 0 0;height:24px;position:absolute;top:2px;left:24%;right:24%}.inverter-card{border-bottom:1px solid #eef0ef;grid-template-columns:28px minmax(0,1fr);gap:14px;margin:25px 0;padding-bottom:23px;display:grid}.inverter-card>b{color:#a6b9ae;letter-spacing:-.06em;font-size:24px;font-weight:400}.inverter-card>div{gap:6px;display:grid}.inverter-card strong{font-size:15px;font-weight:500}.inverter-card small{color:var(--m);font-size:11px}.inverter-card>span{grid-column:2;font-size:23px;font-weight:500}.settings-card>h2{letter-spacing:-.04em;margin:0 0 12px;font-size:20px;font-weight:600}@media (width<=800px){.energy-layout{grid-template-columns:1fr;gap:0}.flow-card,.inverters-card,.chart-card{padding:20px}.flow-node{min-width:0;padding:15px}.flow-branches{gap:12px}.chart-card header{align-items:flex-start}.chart-card header>small{max-width:100px}.sample-chart{gap:8px;padding-inline:0}.energy-flow-card{padding:20px 15px}.energy-flow-heading{align-items:flex-start;padding:0 5px}.energy-flow-heading p{white-space:normal;text-align:right;max-width:105px;line-height:1.3}.energy-diagram{min-height:376px}.energy-node{gap:7px;width:132px;min-width:0;padding:9px}.energy-node-icon{border-radius:10px;width:29px;height:29px}.energy-node small,.energy-node em{font-size:8px}.energy-node strong{font-size:12px}.node-house{width:150px}.node-battery,.node-grid{text-align:center;grid-template-columns:1fr;justify-items:center;gap:4px;width:82px;padding:7px 4px;display:grid}.node-battery .energy-node-icon,.node-grid .energy-node-icon{border-radius:8px;width:25px;height:25px}.node-battery .energy-node-icon svg,.node-grid .energy-node-icon svg{width:14px;height:14px}.node-battery .energy-node-copy,.node-grid .energy-node-copy{justify-items:center;width:100%}.node-battery small,.node-grid small,.node-battery em,.node-grid em{white-space:normal;max-width:74px;line-height:1.15}.node-battery strong,.node-grid strong{font-size:11px}.node-solar{top:12px}.node-house{top:154px}.node-battery{top:154px;left:0}.node-grid{top:154px;right:0}.node-load{bottom:10px}.energy-lines{width:calc(100% - 8px);left:4px}}.settings-center-button{color:#28654e;white-space:nowrap;cursor:pointer;background:#eaf4ee;border:1px solid #cde0d7;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:0 18px;font:600 12px inherit;transition:background .18s,border-color .18s,transform .18s;display:inline-flex;box-shadow:0 3px 8px #2c695908}.settings-center-button svg{flex-shrink:0;width:16px;height:16px}.settings-center-button:hover{background:#d9eee2;border-color:#9cbfaf;transform:translateY(-1px)}.settings-center-button:focus-visible{outline-offset:3px;outline:3px solid #6fb89b}.settings-center-button:active{transform:translateY(0)}@media (width<=600px){.settings-card article:has(.settings-center-button){flex-wrap:wrap}.settings-card .settings-center-button{margin-top:10px;margin-left:48px;padding:0 16px}.settings-card article:has(.settings-center-button)>span:nth-child(2){flex:1;min-width:0}}@media (prefers-reduced-motion:reduce){.settings-center-button{transition:none}}.settings-center-button{font-family:inherit;font-size:12px;font-weight:600}@media (width<=600px){.settings-card article:has(.settings-center-button){grid-template-columns:37px minmax(0,1fr)}.settings-card .settings-center-button{grid-column:2;justify-self:start;margin:0}}.iot-room-devices .device-list{flex-direction:column;gap:18px;display:flex}.iot-room-devices .device-list-group,.iot-room-devices .device-list-items{width:100%;min-width:0}.iot-room-devices .device-list-items{flex-direction:column;gap:8px;display:flex}.iot-room-devices .device-list-row{grid-template-columns:minmax(0,1fr) 40px}.iot-room-devices .device-list-select{width:100%}.iot-room-devices .device-list-copy{flex:1;min-width:0}.iot-room-devices .device-list-copy strong{font-size:13px}.iot-room-devices .device-list-actions{justify-content:flex-end;display:flex}.iot-room-devices .device-list-actions button{flex-direction:row;flex:0 auto;min-height:38px;padding:8px 12px}select:not([multiple]):not([size]),select[size="1"]:not([multiple]){appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m3 4.5 3 3 3-3' fill='none' stroke='%23687870' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 12px;padding-right:36px}.iot-field-label{color:#5e6d65;font-size:11px;font-weight:600}.iot-field-label b{color:#54876c;font-weight:600}.iot-field-hint{color:#839087;font-size:10px;font-weight:400;line-height:1.55}@media (forced-colors:active){select:not([multiple]):not([size]),select[size="1"]:not([multiple]){appearance:auto;background-image:none}}
