:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Tahoma,sans-serif;color-scheme:light;--bg:#f7f8fa;--surface:#fff;--surface-2:#f2f4f7;--surface-3:#e9edf3;--text:#151a21;--muted:#727d8b;--line:#e1e5eb;--brand:#123c78;--brand-2:#1677ff;--brand-soft:#e9f2ff;--good:#21a65b;--bad:#df4050;--warn:#df9d13;--shadow:0 14px 40px rgba(25,36,53,.08);--shadow-soft:0 5px 18px rgba(25,36,53,.06)}:root[data-theme=dark]{color-scheme:dark;--bg:#0a111d;--surface:#101a29;--surface-2:#142136;--surface-3:#1a2940;--text:#f4f7fb;--muted:#98a7bb;--line:#23344d;--brand:#4c97ff;--brand-2:#4c97ff;--brand-soft:#152d50;--good:#3bcf78;--bad:#ff6070;--warn:#f7c04a;--shadow:0 14px 46px rgba(0,0,0,.28);--shadow-soft:0 5px 18px rgba(0,0,0,.18) }*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:var(--bg);min-height:100%;scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text);overscroll-behavior-y:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{color:inherit}a{text-decoration:none;color:inherit}h1,h2,h3,p{margin-top:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-2) 28%,transparent);outline-offset:2px}.app-shell{min-height:100vh}.app-header{position:sticky;top:0;z-index:60;padding-top:env(safe-area-inset-top);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.header-inner{height:66px;width:min(100%,980px);margin:auto;padding:0 16px;display:flex;align-items:center;gap:14px}.brand-button{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:0;min-width:0;cursor:pointer}.brand-button img{width:42px;height:42px;border-radius:13px;box-shadow:var(--shadow-soft)}.brand-button span{display:flex;flex-direction:column;min-width:0;text-align:right}.brand-button b{font-size:.94rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-button small{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-glance{margin-inline-start:auto;display:flex;align-items:center;gap:12px}.header-time{font-variant-numeric:tabular-nums;font-weight:900;font-size:.95rem}.tiny-status{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;color:var(--muted);white-space:nowrap}.tiny-status i{width:7px;height:7px;border-radius:50%;background:currentColor}.tiny-status.online{color:var(--good)}.tiny-status.offline{color:var(--bad)}.header-nav{display:none}.app-main{width:min(100%,900px);margin:0 auto;padding:16px 14px calc(96px + env(safe-area-inset-bottom))}.page-stack{display:grid;gap:12px}.content-card,.glance-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-soft)}.content-card{padding:15px}.glance-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px}.glance-card>div:first-child{display:grid;gap:3px;min-width:0}.glance-card span{font-size:.7rem;color:var(--muted)}.glance-card strong{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.glance-metrics{display:flex;align-items:center;gap:8px}.glance-metrics>span{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:12px;background:var(--surface-2);color:var(--muted)}.glance-metrics b{font-size:.85rem;color:var(--text)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.section-head h2{font-size:1.05rem;margin:0 0 3px}.section-head p{font-size:.72rem;color:var(--muted);margin:0}.device-list,.settings-list{display:grid;gap:7px}.device-row,.settings-row{width:100%;min-height:68px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2);display:flex;align-items:center;gap:11px;padding:10px 11px;transition:border-color .18s ease,background .18s ease,transform .16s ease}.device-row:active,.settings-row:active{transform:scale(.995)}.device-row.is-on{border-color:color-mix(in srgb,var(--good) 35%,var(--line));background:color-mix(in srgb,var(--good) 6%,var(--surface))}.device-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:var(--surface);color:var(--brand-2);box-shadow:var(--shadow-soft)}.device-copy,.settings-copy{min-width:0;display:flex;flex-direction:column;gap:3px;flex:1;text-align:right}.device-copy h3,.settings-copy b{font-size:.88rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-copy p,.settings-copy small{font-size:.68rem;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-actions{display:flex;align-items:center;gap:7px;margin-inline-start:auto}.small-icon-button,.back-button,.delete-mini{border:0;background:var(--surface);cursor:pointer;display:grid;place-items:center}.small-icon-button{width:36px;height:36px;border-radius:12px;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.small-icon-button:hover{color:var(--brand-2)}.switch-control{width:48px;height:29px;border:0;border-radius:999px;padding:3px;background:#b9c2ce;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;transition:background .18s ease}.switch-control.checked{background:var(--good)}.switch-control:disabled{opacity:.5}.switch-thumb{width:23px;height:23px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #0003;transition:transform .2s ease}[dir=rtl] .switch-control.checked .switch-thumb{transform:translate(-19px)}.pulse-button{border:0;border-radius:11px;background:var(--brand-2);color:#fff;font-size:.76rem;font-weight:850;padding:9px 12px;cursor:pointer}.pulse-button:disabled{opacity:.5}.chevron{font-size:1.5rem;color:var(--muted)}.settings-row{cursor:pointer;text-align:right}.notice-row{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border-radius:14px;background:color-mix(in srgb,var(--warn) 12%,var(--surface));color:color-mix(in srgb,var(--warn) 85%,var(--text));font-size:.74rem;line-height:1.7;margin-bottom:10px}.primary-button,.soft-button,.danger-button{border:0;border-radius:13px;padding:11px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:850;cursor:pointer}.primary-button{background:var(--brand-2);color:#fff}.soft-button{background:var(--surface-3);color:var(--text)}.danger-button{background:color-mix(in srgb,var(--bad) 12%,var(--surface));color:var(--bad)}.full-button{width:100%}.action-stack{display:grid;gap:9px}.empty-state{text-align:center;padding:30px 15px;color:var(--muted)}.empty-state.compact{padding:24px 12px}.empty-state h3{font-size:.95rem;color:var(--text);margin:8px 0 4px}.empty-state p{font-size:.75rem;margin:0;line-height:1.7}.bottom-nav{position:fixed;z-index:70;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));height:64px;padding:6px;display:flex;gap:4px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:21px;background:color-mix(in srgb,var(--surface) 89%,transparent);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);box-shadow:var(--shadow)}.bottom-nav button{flex:1;border:0;border-radius:15px;background:transparent;color:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.64rem;font-weight:800}.bottom-nav button.active{background:var(--brand-soft);color:var(--brand-2)}.subpage-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:12px}.subpage-head h2{margin:0;text-align:center;font-size:1.02rem}.back-button{width:36px;height:36px;border-radius:12px;color:var(--brand-2);font-size:1.7rem;box-shadow:inset 0 0 0 1px var(--line)}.automation-master{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:15px;background:var(--surface-2);margin-bottom:9px}.automation-master>div{display:grid;gap:3px}.automation-master b{font-size:.84rem}.automation-master span{font-size:.68rem;color:var(--muted);line-height:1.6}.scheduler-health{display:flex;align-items:center;justify-content:space-between;padding:6px 3px 12px;font-size:.68rem;color:var(--muted)}.schedule-form{display:grid;gap:13px;margin:10px 0;padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2)}.form-title-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.form-title-row h3{font-size:.92rem;margin:0 0 3px}.form-title-row p{font-size:.67rem;color:var(--muted);margin:0;line-height:1.6}.simple-field{display:grid;gap:6px}.simple-field>span,.field-label{font-size:.72rem;font-weight:800}.simple-field small{color:var(--muted);font-weight:500}.simple-field input,.simple-field select,.panel-form input,.panel-form select,.panel-form textarea,.edit-grid input,.password-row input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:11px 12px;outline:none}.days-section{display:grid;gap:8px}.day-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.day-chips button,.quick-days button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:11px;padding:8px 5px;font-size:.67rem;font-weight:750;cursor:pointer}.day-chips button.active{background:var(--brand-soft);border-color:color-mix(in srgb,var(--brand-2) 34%,var(--line));color:var(--brand-2)}.quick-days{display:flex;gap:5px;flex-wrap:wrap}.quick-days button{padding:6px 8px;font-size:.63rem}.time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.duration-input{position:relative}.duration-input input{padding-left:54px}.duration-input em{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-style:normal;font-size:.68rem;color:var(--muted)}.form-actions{display:grid;grid-template-columns:1fr 2fr;gap:8px}.schedule-list{display:grid;gap:7px;margin-top:10px}.schedule-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.schedule-row.disabled{opacity:.55}.schedule-number{width:30px;height:30px;border-radius:10px;background:var(--brand-soft);color:var(--brand-2);display:grid;place-items:center;font-weight:900;font-size:.75rem}.schedule-copy{min-width:0}.schedule-copy h3{font-size:.82rem;margin:0 0 3px}.schedule-copy p{font-size:.66rem;color:var(--muted);margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-time{display:flex;align-items:center;gap:7px}.schedule-time b{font-size:.86rem;font-variant-numeric:tabular-nums}.schedule-time span{font-size:.64rem;color:var(--muted)}.schedule-actions{display:flex;gap:5px}.delete-mini{width:32px;height:32px;border-radius:11px;color:var(--bad);font-size:1.2rem;box-shadow:inset 0 0 0 1px var(--line)}.admin-grid,.user-list,.audit-list{display:grid;gap:8px}.profile-card{text-align:center}.profile-avatar{width:70px;height:70px;border-radius:23px;margin:2px auto 10px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),var(--brand-2));color:#fff;font-size:1.6rem;font-weight:900}.profile-card h2{margin:0 0 3px}.profile-card p{color:var(--muted);margin:0 0 8px;font-size:.75rem}.role-badge{display:inline-block;padding:6px 9px;border-radius:999px;background:var(--brand-soft);color:var(--brand-2);font-size:.7rem;font-weight:800}.theme-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;border-radius:14px;background:var(--surface-2)}.theme-selector button{border:0;border-radius:10px;padding:9px 6px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:5px;font-size:.7rem;font-weight:800}.theme-selector button.active{background:var(--surface);color:var(--brand-2);box-shadow:var(--shadow-soft)}.auth-page,.splash-screen{min-height:100dvh;padding:calc(22px + env(safe-area-inset-top)) 16px calc(22px + env(safe-area-inset-bottom));display:grid;place-items:center}.auth-card{width:min(100%,390px);padding:24px 20px;border-radius:28px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center}.auth-logo{width:78px;height:78px;border-radius:23px;box-shadow:var(--shadow-soft)}.auth-title{margin:12px 0 18px}.auth-title h1{font-size:1.15rem;margin:0 0 5px}.auth-title p{font-size:.75rem;color:var(--muted);margin:0}.auth-form{display:grid;gap:10px;text-align:right}.auth-form label,.panel-form label,.edit-grid label{display:grid;gap:6px;font-size:.72rem;font-weight:750}.auth-form input{width:100%;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text);padding:12px;outline:none}.auth-card .theme-selector{margin-top:14px}.form-error{padding:9px 10px;border-radius:11px;background:color-mix(in srgb,var(--bad) 11%,var(--surface));color:var(--bad);font-size:.72rem}.panel-form{display:grid;gap:12px;margin-top:10px;padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.form-grid,.edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.form-grid .wide{grid-column:1/-1}.user-card{border:1px solid var(--line);border-radius:16px;padding:12px;background:var(--surface-2)}.user-card-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px}.avatar{width:40px;height:40px;border-radius:13px;background:var(--brand-soft);color:var(--brand-2);display:grid;place-items:center;font-weight:900}.user-meta h3{font-size:.84rem;margin:0 0 2px}.user-meta p{font-size:.66rem;color:var(--muted);margin:0}.user-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.user-actions .soft-button{padding:8px 9px;font-size:.68rem}.user-card details{border-top:1px solid var(--line);margin-top:10px;padding-top:8px}.user-card summary{font-size:.68rem;color:var(--muted);cursor:pointer}.edit-grid{margin-top:8px}.password-row{display:grid;grid-template-columns:1fr auto;gap:6px;margin-top:8px}.sheet-backdrop{position:fixed;z-index:100;inset:0;background:#02081280;backdrop-filter:blur(5px);display:flex;align-items:flex-end;justify-content:center}.bottom-sheet{width:min(100%,620px);max-height:88dvh;background:var(--surface);border-radius:25px 25px 0 0;padding:8px 15px calc(16px + env(safe-area-inset-bottom));display:flex;flex-direction:column}.sheet-handle{width:42px;height:4px;border-radius:99px;background:var(--line);margin:0 auto 10px}.sheet-head{display:flex;justify-content:space-between;align-items:center}.sheet-head h2{margin:0;font-size:1rem}.permission-scroll{overflow:auto;margin:10px 0}.permission-group{border-top:1px solid var(--line);padding:9px 0}.permission-group h3{font-size:.75rem}.permission-row{display:flex;align-items:center;gap:8px;padding:7px 2px;font-size:.72rem}.permission-row input{width:18px;height:18px;accent-color:var(--brand-2)}.audit-row{display:grid;grid-template-columns:auto 1fr;gap:9px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.audit-row h3{font-size:.75rem;margin:0 0 3px}.audit-row p,.audit-row time{font-size:.64rem;color:var(--muted);margin:0}.loading-rows{display:grid;gap:8px}.loading-row{height:64px;border-radius:14px;background:linear-gradient(100deg,var(--surface-2) 30%,var(--surface-3) 45%,var(--surface-2) 60%);background-size:220% 100%;animation:shimmer 1.2s infinite}.toast{position:fixed;z-index:120;left:50%;transform:translate(-50%);bottom:calc(82px + env(safe-area-inset-bottom));max-width:calc(100% - 28px);padding:10px 13px;border-radius:13px;background:var(--text);color:var(--bg);box-shadow:var(--shadow);font-size:.72rem;font-weight:800}.toast-success{background:var(--good);color:#fff}.toast-error{background:var(--bad);color:#fff}.spinner{width:28px;height:28px;border:3px solid var(--line);border-top-color:var(--brand-2);border-radius:50%;animation:spin .8s linear infinite}.splash-logo{width:92px;height:92px;border-radius:27px;margin-bottom:15px}.splash-screen{align-content:center}.splash-screen .spinner{margin:auto}.fa-icon{display:inline-block;width:1.2em;height:1.2em;background:currentColor;vertical-align:-.14em;mask-position:center;mask-repeat:no-repeat;mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain}.fa-xs{width:.82em;height:.82em}.fa-sm{width:1em;height:1em}.fa-lg{width:1.45em;height:1.45em}.fa-house{-webkit-mask-image:url(/fa/house.svg);mask-image:url(/fa/house.svg)}.fa-lightbulb{-webkit-mask-image:url(/fa/lightbulb.svg);mask-image:url(/fa/lightbulb.svg)}.fa-power-off{-webkit-mask-image:url(/fa/power-off.svg);mask-image:url(/fa/power-off.svg)}.fa-door-open{-webkit-mask-image:url(/fa/door-open.svg);mask-image:url(/fa/door-open.svg)}.fa-water{-webkit-mask-image:url(/fa/water.svg);mask-image:url(/fa/water.svg)}.fa-sprinkler{-webkit-mask-image:url(/fa/sprinkler.svg);mask-image:url(/fa/sprinkler.svg)}.fa-user-shield{-webkit-mask-image:url(/fa/user-shield.svg);mask-image:url(/fa/user-shield.svg)}.fa-users{-webkit-mask-image:url(/fa/users.svg);mask-image:url(/fa/users.svg)}.fa-gear{-webkit-mask-image:url(/fa/gear.svg);mask-image:url(/fa/gear.svg)}.fa-moon{-webkit-mask-image:url(/fa/moon.svg);mask-image:url(/fa/moon.svg)}.fa-sun{-webkit-mask-image:url(/fa/sun.svg);mask-image:url(/fa/sun.svg)}.fa-mobile-screen-button{-webkit-mask-image:url(/fa/mobile-screen-button.svg);mask-image:url(/fa/mobile-screen-button.svg)}.fa-bell{-webkit-mask-image:url(/fa/bell.svg);mask-image:url(/fa/bell.svg)}.fa-projector{-webkit-mask-image:url(/fa/projector.svg);mask-image:url(/fa/projector.svg)}.fa-volume-high{-webkit-mask-image:url(/fa/volume-high.svg);mask-image:url(/fa/volume-high.svg)}.fa-server{-webkit-mask-image:url(/fa/server.svg);mask-image:url(/fa/server.svg)}.fa-clock{-webkit-mask-image:url(/fa/clock.svg);mask-image:url(/fa/clock.svg)}.fa-message-lines{-webkit-mask-image:url(/fa/message-lines.svg);mask-image:url(/fa/message-lines.svg)}.fa-phone-volume{-webkit-mask-image:url(/fa/phone-volume.svg);mask-image:url(/fa/phone-volume.svg)}.fa-gears{-webkit-mask-image:url(/fa/gears.svg);mask-image:url(/fa/gears.svg)}.fa-gauge-high{-webkit-mask-image:url(/fa/gauge-high.svg);mask-image:url(/fa/gauge-high.svg)}.fa-signal-bars{-webkit-mask-image:url(/fa/signal-bars.svg);mask-image:url(/fa/signal-bars.svg)}.fa-wifi{-webkit-mask-image:url(/fa/wifi.svg);mask-image:url(/fa/wifi.svg)}.fa-arrow-right-from-bracket{-webkit-mask-image:url(/fa/arrow-right-from-bracket.svg);mask-image:url(/fa/arrow-right-from-bracket.svg)}.fa-palette{-webkit-mask-image:url(/fa/palette.svg);mask-image:url(/fa/palette.svg)}.fa-circle-half-stroke{-webkit-mask-image:url(/fa/circle-half-stroke.svg);mask-image:url(/fa/circle-half-stroke.svg)}.fa-shield-check{-webkit-mask-image:url(/fa/shield-check.svg);mask-image:url(/fa/shield-check.svg)}.fa-key{-webkit-mask-image:url(/fa/key.svg);mask-image:url(/fa/key.svg)}.fa-list-ul{-webkit-mask-image:url(/fa/list-ul.svg);mask-image:url(/fa/list-ul.svg)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-220% 0}}@media(min-width:720px){.app-main{padding:20px 20px 50px}.bottom-nav{display:none}.header-inner{height:72px}.header-nav{display:flex;align-items:center;gap:4px;margin-inline-start:12px}.header-nav button{border:0;border-radius:12px;background:transparent;color:var(--muted);padding:9px 10px;display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:800;cursor:pointer}.header-nav button.active{background:var(--brand-soft);color:var(--brand-2)}.device-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.glance-card{padding:14px 17px}.content-card{padding:18px}.day-chips{grid-template-columns:repeat(7,1fr)}.schedule-list{gap:8px}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.toast{bottom:22px}.auth-card{padding:28px 24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:460px){.header-inner{padding:0 11px;height:60px}.brand-button img{width:38px;height:38px;border-radius:12px}.brand-button b{font-size:.84rem}.brand-button small{font-size:.62rem}.header-time{font-size:.84rem}.tiny-status{font-size:0}.tiny-status i{width:8px;height:8px}.app-main{padding:11px 9px calc(90px + env(safe-area-inset-bottom))}.page-stack{gap:9px}.content-card{padding:11px;border-radius:18px}.glance-card{padding:10px 11px;border-radius:17px}.glance-card strong{font-size:.78rem}.glance-metrics>span{padding:6px 7px}.device-row{min-height:62px;padding:8px 9px;border-radius:15px}.device-icon{width:37px;height:37px;flex-basis:37px}.device-copy h3{font-size:.8rem}.small-icon-button{width:33px;height:33px}.switch-control{width:46px;height:28px}.day-chips{grid-template-columns:repeat(4,1fr)}.time-grid{grid-template-columns:1fr 1fr}.bottom-nav{left:7px;right:7px;height:61px;border-radius:19px}.bottom-nav button{font-size:.6rem}.schedule-row{padding:9px}.schedule-copy p{max-width:190px}}.alarm-grid{display:grid;gap:10px}.alarm-setting-card{display:grid;gap:10px;padding:13px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2)}.alarm-setting-card .automation-master{margin:0;background:var(--surface)}.alarm-live{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px 11px;border-radius:13px;background:var(--surface)}.alarm-live span{font-size:.68rem;color:var(--muted)}.alarm-live b{font-size:1rem}.alarm-live em{font-style:normal;font-size:.63rem;font-weight:800;color:var(--muted);padding:5px 7px;border-radius:999px;background:var(--surface-3)}.alarm-live em.active{color:var(--bad);background:color-mix(in srgb,var(--bad) 12%,var(--surface))}.alarm-actions{display:grid;grid-template-columns:1fr 2fr;gap:8px}.alarm-actions button{min-height:38px}.node-alert{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--bad) 34%,var(--line));border-radius:17px;background:color-mix(in srgb,var(--bad) 10%,var(--surface));color:var(--bad);box-shadow:var(--shadow-soft)}.node-alert>.fa-icon{flex:0 0 auto}.node-alert div{display:grid;gap:3px}.node-alert b{font-size:.82rem}.node-alert span{font-size:.7rem;line-height:1.7}.node-monitor-list{display:grid;gap:8px;margin-bottom:10px}.node-monitor-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.node-monitor-row.alert{border-color:color-mix(in srgb,var(--bad) 40%,var(--line));background:color-mix(in srgb,var(--bad) 7%,var(--surface))}.node-monitor-copy{min-width:0}.node-monitor-copy h3{margin:0 0 3px;font-size:.83rem}.node-monitor-copy p,.node-monitor-copy small{display:block;margin:0;color:var(--muted);font-size:.64rem;line-height:1.65;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fa-check{-webkit-mask-image:url(/fa/check.svg);mask-image:url(/fa/check.svg)}.home-page .home-control-card{padding:11px 12px}.home-page .compact-head{margin-bottom:6px}.home-page .compact-head h2{font-size:.9rem}.home-page .device-list{gap:5px}.home-page .device-row{min-height:56px;padding:7px 9px;border-radius:14px;gap:9px}.home-page .device-icon{width:34px;height:34px;flex-basis:34px;border-radius:11px}.home-page .device-copy{gap:1px}.home-page .device-copy h3{font-size:.79rem}.home-page .device-copy p{font-size:.61rem}.home-page .small-icon-button{width:31px;height:31px;border-radius:10px}.home-page .switch-control{width:44px;height:27px}.home-page .switch-thumb{width:21px;height:21px}.compact-glance{padding:9px 11px;border-radius:17px}.compact-glance>div:first-child{gap:0}.compact-glance strong{font-size:.76rem}.compact-glance .glance-metrics{gap:5px}.compact-glance .glance-metrics>span{padding:5px 7px;border-radius:10px}.compact-glance .glance-metrics b{font-size:.72rem}.pir-metric i{width:7px;height:7px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--muted) 10%,transparent)}.pir-metric.active i{background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 14%,transparent)}.pir-metric.active b{color:var(--good)}.day-chips button{display:flex;align-items:center;justify-content:center;gap:4px;min-height:36px}.day-chips button .fa-icon{flex:0 0 auto}.quick-days .clear-days{background:var(--bad);border-color:var(--bad);color:#fff}.delete-mini{background:var(--bad);color:#fff;box-shadow:none}.time-grid .simple-field{align-content:start}.time-grid .simple-field input,.time-grid .duration-input input{height:44px;min-height:44px}.duration-input{height:44px}.output-settings-list{display:grid;gap:8px}.output-setting-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.output-setting-fields{display:grid;grid-template-columns:1.3fr 1fr;gap:7px;min-width:0}.output-setting-fields label{display:grid;gap:4px;font-size:.65rem;font-weight:800}.output-setting-fields input,.output-setting-fields select{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:9px 10px;outline:none}.output-setting-fields small{grid-column:1/-1;color:var(--muted);font-size:.58rem;direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.output-save-button{padding:9px 11px;white-space:nowrap}.rtc-panel{display:grid;gap:11px}.rtc-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rtc-status-grid>div{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.rtc-status-grid span,.rtc-status-grid small{font-size:.64rem;color:var(--muted)}.rtc-status-grid b{font-size:.82rem;font-variant-numeric:tabular-nums}.rtc-help{margin:0;color:var(--muted);font-size:.68rem;line-height:1.8}.rtc-manual-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.rtc-manual-row .primary-button{height:44px;min-width:78px}@media(max-width:560px){.compact-glance{align-items:flex-start;gap:7px}.compact-glance .glance-metrics{flex-wrap:wrap;justify-content:flex-end}.output-setting-row{grid-template-columns:auto 1fr}.output-setting-fields{grid-template-columns:1fr}.output-setting-fields small{grid-column:1}.output-save-button{grid-column:1/-1}.rtc-status-grid,.rtc-manual-row{grid-template-columns:1fr}.rtc-manual-row .primary-button{width:100%}}.homebridge-settings-list{display:grid;gap:8px}.homebridge-setting-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.homebridge-setting-main{display:grid;gap:7px;min-width:0}.homebridge-setting-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.homebridge-setting-title>b{font-size:.8rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homebridge-setting-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}.homebridge-setting-fields label{display:grid;gap:4px;font-size:.63rem;font-weight:800}.homebridge-setting-fields select,.homebridge-setting-fields input,.homebridge-label-input{width:100%;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);padding:8px 9px;outline:none}.homebridge-label-input{font-size:.78rem;font-weight:800}.homebridge-setting-main>small{font-size:.57rem;color:var(--muted);direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.homebridge-save{padding:9px 11px;white-space:nowrap}.homebridge-sensor-head{margin-top:18px}@media(max-width:560px){.homebridge-setting-row{grid-template-columns:auto minmax(0,1fr)}.homebridge-setting-fields{grid-template-columns:1fr}.homebridge-save{grid-column:1/-1}.homebridge-setting-title{align-items:flex-start}.homebridge-setting-title .switch-control{flex:0 0 auto}}.home-page .device-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.home-page .home-device-tile{min-height:46px;padding:4px 6px;border:1px solid transparent;border-radius:11px;display:grid;grid-template-columns:22px minmax(0,1fr) 20px;grid-template-rows:1fr;align-items:center;gap:5px;cursor:pointer;overflow:hidden;position:relative;isolation:isolate;box-shadow:0 2px 6px #1822310b;transition:transform .13s ease,box-shadow .16s ease,filter .16s ease,background .16s ease,border-color .16s ease;color:#fff;user-select:none;-webkit-user-select:none}.home-page .home-device-tile:active{transform:scale(.974)}.home-page .home-device-tile.is-off{background:color-mix(in srgb,var(--bad) 6%,var(--surface));border-color:color-mix(in srgb,var(--bad) 11%,var(--line));color:var(--text);box-shadow:0 1px 5px #18223109}.home-page .home-device-tile.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--good) 86%,#087337),var(--good));border-color:color-mix(in srgb,var(--good) 42%,transparent);box-shadow:0 3px 9px color-mix(in srgb,var(--good) 14%,transparent)}.home-page .home-device-tile.is-unknown{background:var(--surface-2);color:var(--text);border-color:var(--line);box-shadow:none}.home-page .home-device-tile.is-disabled{cursor:default;filter:saturate(.45);opacity:.72}.home-page .home-device-tile.is-pending:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.12) 45%,transparent 65%);transform:translate(-115%);animation:homeTileSync 1.05s linear infinite;pointer-events:none;z-index:-1}.home-page .device-tile-top{display:contents}.home-page .home-device-tile .device-icon{grid-column:1;width:22px;height:22px;flex:0 0 22px;border-radius:7px;background:#ffffff29;color:#fff;box-shadow:none}.home-page .home-device-tile.is-off .device-icon{background:color-mix(in srgb,var(--bad) 8%,var(--surface));color:color-mix(in srgb,var(--bad) 62%,var(--text))}.home-page .home-device-tile.is-unknown .device-icon{background:var(--surface);color:var(--muted);box-shadow:none}.home-page .home-device-tile .device-copy{grid-column:2;grid-row:1;min-width:0;display:grid;gap:0;align-content:center;text-align:right}.home-page .home-device-tile .device-copy h3{font-size:.68rem;color:#fff;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}.home-page .home-device-tile .device-copy p{font-size:.47rem;line-height:1.05;color:#ffffffb8;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 0}.home-page .home-device-tile.is-off .device-copy h3{color:color-mix(in srgb,var(--bad) 38%,var(--text))}.home-page .home-device-tile.is-off .device-copy p{color:color-mix(in srgb,var(--bad) 28%,var(--muted))}.home-page .home-device-tile.is-unknown .device-copy h3{color:var(--text)}.home-page .home-device-tile.is-unknown .device-copy p{color:var(--muted)}.home-page .home-device-tile .tile-schedule-button{grid-column:3;grid-row:1;width:20px;height:20px;border-radius:6px;background:#ffffff21;color:#ffffffe0;box-shadow:inset 0 0 0 1px #ffffff1c;position:relative;z-index:2;padding:0}.home-page .home-device-tile .tile-schedule-button:hover{color:#fff;background:#ffffff30}.home-page .home-device-tile.is-off .tile-schedule-button{background:color-mix(in srgb,var(--bad) 5%,var(--surface));color:color-mix(in srgb,var(--bad) 45%,var(--muted));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bad) 9%,var(--line))}.home-page .home-device-tile.is-unknown .tile-schedule-button{background:var(--surface);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}.home-page .home-control-card{background:transparent;border:0;box-shadow:none;padding:0}.home-page .home-control-card .compact-head{padding:0 2px 1px}@keyframes homeTileSync{to{transform:translate(115%)}}@media(min-width:720px){.home-page .device-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.home-page .home-device-tile{min-height:48px;padding:4px 7px}}@media(min-width:980px){.home-page .device-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:460px){.home-page .device-list{gap:3px}.home-page .home-device-tile{min-height:44px;padding:3px 5px;border-radius:10px;grid-template-columns:21px minmax(0,1fr) 19px;gap:4px}.home-page .home-device-tile .device-icon{width:21px;height:21px;flex-basis:21px;border-radius:6px}.home-page .home-device-tile .device-copy h3{font-size:.65rem}.home-page .home-device-tile .device-copy p{font-size:.45rem}.home-page .home-device-tile .tile-schedule-button{width:19px;height:19px;border-radius:6px}}.home-head-actions{display:flex;align-items:center;gap:5px}.layout-text-button{border:1px solid var(--line);background:var(--surface);color:var(--muted);height:26px;padding:0 8px;border-radius:8px;font-size:.58rem;font-weight:850;cursor:pointer}.layout-text-button.primary{background:var(--brand-2);border-color:var(--brand-2);color:#fff}.home-device-tile.is-layout-editing{cursor:default;outline:1px dashed color-mix(in srgb,var(--brand-2) 35%,var(--line));outline-offset:-2px}.tile-order-controls{grid-column:3;grid-row:1;display:flex;gap:2px;position:relative;z-index:3}.tile-order-controls button{width:19px;height:19px;padding:0;border:1px solid color-mix(in srgb,var(--brand-2) 18%,var(--line));border-radius:6px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface));color:var(--brand-2);font-size:.62rem;font-weight:900;line-height:1;display:grid;place-items:center}.tile-order-controls button:disabled{opacity:.25}.audit-retention-note{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 9px;margin-bottom:9px;border-radius:13px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface));color:var(--muted);font-size:.65rem;line-height:1.6}.audit-retention-note>.small-icon-button{width:29px;height:29px;border-radius:9px}.audit-row .audit-details{color:var(--text);font-weight:750;margin-bottom:3px}@media(max-width:719px){.app-main{padding-bottom:calc(70px + env(safe-area-inset-bottom))}.home-page{display:flex;flex-direction:column;gap:9px;min-height:calc(100dvh - 142px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.home-page .home-control-card{margin-top:auto}.bottom-nav{left:7px;right:7px;bottom:0;height:calc(61px + env(safe-area-inset-bottom));padding:6px 6px max(6px,env(safe-area-inset-bottom));border-radius:19px 19px 0 0;border-bottom:0}.toast{bottom:calc(68px + env(safe-area-inset-bottom))}}@media(max-width:460px){.layout-text-button{height:23px;padding:0 6px;border-radius:7px;font-size:.54rem}.tile-order-controls{gap:1px}.tile-order-controls button{width:18px;height:18px;border-radius:5px;font-size:.58rem}}html,body,#root,.app-shell{overscroll-behavior-y:none}.header-clock{display:grid;justify-items:end;gap:1px;line-height:1}.header-date{font-size:.54rem;color:var(--muted);font-weight:750;white-space:nowrap}.environment-glass-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.environment-glass-card{min-width:0;min-height:48px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:14px;background:color-mix(in srgb,var(--surface) 70%,transparent);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);box-shadow:inset 0 1px #ffffff0b,0 4px 16px #00000009;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:5px;row-gap:1px;color:var(--muted)}.environment-glass-card>.fa-icon{grid-row:1/3;align-self:center;color:color-mix(in srgb,var(--brand-2) 62%,var(--muted))}.environment-glass-card>span{font-size:.53rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.environment-glass-card>b{font-size:.72rem;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.environment-glass-card.motion.active{border-color:color-mix(in srgb,var(--good) 24%,var(--line));background:color-mix(in srgb,var(--good) 8%,var(--surface))}.environment-glass-card.motion.active>.fa-icon,.environment-glass-card.motion.active>b{color:color-mix(in srgb,var(--good) 64%,var(--text))}.home-page .home-device-tile{-webkit-touch-callout:none;touch-action:manipulation}.home-page .home-device-tile.is-on{background:color-mix(in srgb,var(--good) 21%,var(--surface));border-color:color-mix(in srgb,var(--good) 27%,var(--line));color:color-mix(in srgb,var(--good) 35%,var(--text));box-shadow:0 2px 8px color-mix(in srgb,var(--good) 6%,transparent)}.home-page .home-device-tile.is-on .device-icon{background:color-mix(in srgb,var(--good) 13%,var(--surface));color:color-mix(in srgb,var(--good) 68%,var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--good) 16%,transparent)}.home-page .home-device-tile.is-on .device-copy h3{color:color-mix(in srgb,var(--good) 54%,var(--text))}.home-page .home-device-tile.is-on .device-copy p{color:color-mix(in srgb,var(--good) 38%,var(--muted))}.home-page .home-device-tile.is-on .tile-schedule-button{background:color-mix(in srgb,var(--good) 8%,var(--surface));color:color-mix(in srgb,var(--good) 58%,var(--muted));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--good) 14%,var(--line))}.order-help{font-size:.68rem;line-height:1.8;color:var(--muted);margin:0 0 10px}.number-order-list{display:grid;gap:6px;margin-bottom:12px}.number-order-row{display:grid;grid-template-columns:32px minmax(0,1fr) 58px;gap:8px;align-items:center;padding:7px 8px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.number-order-row>.device-icon{width:32px;height:32px;flex-basis:32px;border-radius:10px}.number-order-copy{display:grid;gap:2px;min-width:0}.number-order-copy>b{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.number-order-copy>small{font-size:.52rem;color:var(--muted);direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.number-order-row>input{width:58px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-align:center;font-weight:900;outline:none;font-variant-numeric:tabular-nums}@media(max-width:719px){.environment-glass-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.environment-glass-card{min-height:44px;padding:5px 6px;border-radius:12px;column-gap:4px}.environment-glass-card>span{font-size:.49rem}.environment-glass-card>b{font-size:.66rem}.header-glance{gap:8px}.header-date{font-size:.49rem;max-width:100px;overflow:hidden;text-overflow:ellipsis}.home-page .home-control-card{margin-top:auto}}@media(max-width:380px){.environment-glass-card{padding:5px 4px}.environment-glass-card>span{font-size:.45rem}.environment-glass-card>b{font-size:.61rem}.header-date{font-size:.46rem;max-width:88px}}.environment-zone-card{position:relative;overflow:hidden;padding:9px;border:1px solid color-mix(in srgb,var(--line) 62%,transparent);border-radius:19px;background:radial-gradient(circle at 82% -20%,color-mix(in srgb,var(--brand-2) 15%,transparent),transparent 44%),color-mix(in srgb,var(--surface) 56%,transparent);backdrop-filter:blur(26px) saturate(165%);-webkit-backdrop-filter:blur(26px) saturate(165%);box-shadow:inset 0 1px #ffffff12,0 8px 26px #0000000e}.environment-zone-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.035),transparent 32%,transparent 70%,rgba(255,255,255,.025))}.environment-zone-head{position:relative;z-index:1;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:7px;align-items:center;padding:0 2px 7px}.environment-zone-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;color:color-mix(in srgb,var(--brand-2) 68%,var(--text));background:color-mix(in srgb,var(--brand-2) 9%,var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-2) 13%,transparent)}.environment-zone-head>div{display:grid;gap:1px;min-width:0}.environment-zone-head b{font-size:.68rem;line-height:1.1}.environment-zone-head small{font-size:.46rem;color:var(--muted);font-weight:750}.environment-zone-live{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--good) 7%,var(--surface));color:color-mix(in srgb,var(--good) 54%,var(--muted));font-size:.44rem;font-weight:850}.environment-zone-live i{width:5px;height:5px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 10%,transparent)}.environment-zone-card .environment-glass-grid{position:relative;z-index:1;gap:5px}.environment-zone-card .environment-glass-card{min-height:39px;padding:5px 6px;border-radius:11px;border-color:color-mix(in srgb,var(--line) 50%,transparent);background:linear-gradient(145deg,#ffffff0e,color-mix(in srgb,var(--surface) 42%,transparent));backdrop-filter:blur(20px) saturate(155%);-webkit-backdrop-filter:blur(20px) saturate(155%);box-shadow:inset 0 1px #ffffff0f}.environment-zone-card .environment-glass-card>span{font-size:.44rem}.environment-zone-card .environment-glass-card>b{font-size:.64rem}.home-page .home-control-card{margin:0!important;min-height:0}.home-page .home-device-tile{background:color-mix(in srgb,var(--surface) 54%,transparent);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);border-color:color-mix(in srgb,var(--line) 58%,transparent);box-shadow:inset 0 1px #ffffff09,0 2px 8px #00000009}.home-page .home-device-tile.is-off{background:linear-gradient(145deg,color-mix(in srgb,var(--bad) 3.8%,var(--surface)),color-mix(in srgb,var(--surface) 58%,transparent));border-color:color-mix(in srgb,var(--bad) 8%,var(--line))}.home-page .home-device-tile.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--good) 12%,var(--surface)),color-mix(in srgb,var(--good) 7%,var(--surface)));border-color:color-mix(in srgb,var(--good) 17%,var(--line));box-shadow:inset 0 1px #ffffff0b,0 3px 10px color-mix(in srgb,var(--good) 4%,transparent)}.home-page .home-device-tile.is-on .device-icon{background:color-mix(in srgb,var(--good) 9%,var(--surface));color:color-mix(in srgb,var(--good) 60%,var(--text))}.home-page .home-device-tile.is-on .device-copy h3{color:color-mix(in srgb,var(--good) 43%,var(--text))}.home-page .home-device-tile.is-on .device-copy p{color:color-mix(in srgb,var(--good) 28%,var(--muted))}@media(max-width:719px){body.home-locked{height:100dvh;overflow:hidden;overscroll-behavior:none}body.home-locked .app-shell{height:100dvh;min-height:100dvh;overflow:hidden}body.home-locked .app-header{position:relative;top:auto}body.home-locked .app-main{height:calc(100dvh - 66px - env(safe-area-inset-top));min-height:0;overflow:hidden;padding:7px 9px calc(64px + env(safe-area-inset-bottom))}body.home-locked .home-page{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);align-content:stretch;gap:6px;overflow:hidden}body.home-locked .home-page:has(.node-alert){grid-template-rows:auto auto minmax(0,1fr)}body.home-locked .home-control-card{min-height:0;height:100%;overflow:hidden;display:flex}body.home-locked .home-control-card>.device-list{flex:1;min-height:0;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-content:stretch;gap:3px}body.home-locked .home-device-tile{min-height:0!important;height:100%;max-height:none;padding:clamp(2px,.55dvh,4px) 5px;border-radius:10px;grid-template-columns:20px minmax(0,1fr) 18px;gap:4px}body.home-locked .home-device-tile .device-icon{width:20px;height:20px;flex-basis:20px;border-radius:6px}body.home-locked .home-device-tile .tile-schedule-button{width:18px;height:18px;border-radius:5px}body.home-locked .home-device-tile .device-copy h3{font-size:clamp(.57rem,1.45dvh,.65rem)}body.home-locked .home-device-tile .device-copy p{font-size:clamp(.4rem,1.05dvh,.46rem);margin-top:1px}body.home-locked .environment-zone-card{padding:7px;border-radius:16px}body.home-locked .environment-zone-head{grid-template-columns:25px minmax(0,1fr) auto;padding-bottom:5px}body.home-locked .environment-zone-icon{width:25px;height:25px;border-radius:8px}body.home-locked .environment-zone-head b{font-size:.63rem}body.home-locked .environment-zone-head small{font-size:.42rem}body.home-locked .environment-zone-card .environment-glass-card{min-height:35px;padding:4px 5px}body.home-locked .environment-zone-card .environment-glass-card>span{font-size:.41rem}body.home-locked .environment-zone-card .environment-glass-card>b{font-size:.59rem}}@media(max-width:380px){body.home-locked .app-main{padding-inline:7px}body.home-locked .home-page{gap:5px}body.home-locked .environment-zone-card{padding:6px}body.home-locked .environment-zone-card .environment-glass-grid{gap:4px}}.bottom-nav,.header-nav{display:none!important}.app-main{padding-bottom:18px}.header-menu-wrap{position:relative;flex:0 0 auto;z-index:90}.hamburger-button{width:38px;height:38px;border:1px solid color-mix(in srgb,var(--line) 68%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 58%,transparent);backdrop-filter:blur(18px) saturate(155%);-webkit-backdrop-filter:blur(18px) saturate(155%);box-shadow:inset 0 1px #ffffff0e,0 5px 16px #0000000b;display:grid;place-content:center;gap:4px;padding:0;cursor:pointer;color:var(--text)}.hamburger-button span{display:block;width:16px;height:1.5px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.hamburger-button.open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}.hamburger-button.open span:nth-child(2){opacity:0}.hamburger-button.open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}.header-menu-popover{position:absolute;z-index:120;top:calc(100% + 8px);right:0;width:178px;padding:6px;display:grid;gap:3px;border:1px solid color-mix(in srgb,var(--line) 68%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(28px) saturate(165%);-webkit-backdrop-filter:blur(28px) saturate(165%);box-shadow:0 18px 50px #00000029,inset 0 1px #ffffff0e}.header-menu-popover button{width:100%;height:38px;border:0;border-radius:11px;padding:0 10px;background:transparent;color:var(--muted);display:flex;align-items:center;gap:9px;font-size:.77rem;font-weight:850;text-align:right;cursor:pointer}.header-menu-popover button.active{background:color-mix(in srgb,var(--brand) 10%,var(--surface));color:var(--brand-2)}.header-menu-popover button:active{transform:scale(.985)}.home-page{font-size:18px}.environment-zone-card{padding:6px 7px;border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 52%,transparent),color-mix(in srgb,var(--surface-2) 42%,transparent));border-color:color-mix(in srgb,var(--line) 52%,transparent);backdrop-filter:blur(28px) saturate(170%);-webkit-backdrop-filter:blur(28px) saturate(170%)}.environment-zone-inline{min-height:34px;display:grid;grid-template-columns:24px max-content minmax(0,1fr);align-items:center;gap:7px}.environment-zone-icon{width:24px;height:24px;border-radius:8px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface));color:color-mix(in srgb,var(--brand-2) 63%,var(--text))}.environment-zone-title{font-size:calc(.68rem + 2px);white-space:nowrap;line-height:1}.environment-inline-values{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.environment-value-glass{min-width:0;height:27px;padding:0 7px;border:1px solid color-mix(in srgb,var(--line) 46%,transparent);border-radius:9px;display:flex;align-items:center;justify-content:center;gap:4px;background:linear-gradient(145deg,#ffffff0e,color-mix(in srgb,var(--surface) 35%,transparent));backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);box-shadow:inset 0 1px #ffffff0e}.environment-value-glass .fa-icon{color:var(--muted);flex:0 0 auto}.environment-value-glass b{font-size:calc(.59rem + 2px);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.environment-value-glass.motion.active{border-color:color-mix(in srgb,var(--good) 18%,var(--line));background:color-mix(in srgb,var(--good) 6%,var(--surface))}.environment-value-glass.motion.active .fa-icon,.environment-value-glass.motion.active b{color:color-mix(in srgb,var(--good) 56%,var(--text))}.home-page .home-device-tile{--tile-accent:var(--bad);position:relative;border-radius:13px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 58%,transparent),color-mix(in srgb,var(--surface-2) 36%,transparent));border:1px solid color-mix(in srgb,var(--line) 54%,transparent);box-shadow:inset 0 1px #ffffff0b,0 3px 12px #00000009;backdrop-filter:blur(20px) saturate(155%);-webkit-backdrop-filter:blur(20px) saturate(155%);overflow:hidden}.home-page .home-device-tile:before{content:"";position:absolute;right:0;top:24%;bottom:24%;width:2px;border-radius:999px;background:color-mix(in srgb,var(--tile-accent) 62%,transparent);box-shadow:0 0 9px color-mix(in srgb,var(--tile-accent) 18%,transparent)}.home-page .home-device-tile.is-on{--tile-accent:var(--good);background:linear-gradient(145deg,color-mix(in srgb,var(--good) 5%,var(--surface)),color-mix(in srgb,var(--surface) 58%,transparent));border-color:color-mix(in srgb,var(--good) 12%,var(--line));box-shadow:inset 0 1px #ffffff0d,0 3px 12px #00000009}.home-page .home-device-tile.is-off{--tile-accent:var(--bad);background:linear-gradient(145deg,color-mix(in srgb,var(--bad) 2.4%,var(--surface)),color-mix(in srgb,var(--surface) 58%,transparent));border-color:color-mix(in srgb,var(--bad) 7%,var(--line))}.home-page .home-device-tile.is-pulse{--tile-accent:var(--brand-2)}.home-page .home-device-tile .device-icon{border-radius:8px;background:color-mix(in srgb,var(--tile-accent) 7%,var(--surface));color:color-mix(in srgb,var(--tile-accent) 56%,var(--text));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tile-accent) 9%,transparent)}.home-page .home-device-tile .device-copy h3{font-size:calc(.65rem + 2px);font-weight:880;color:var(--text)}.home-page .home-device-tile .device-copy p{display:flex;align-items:center;gap:5px;font-size:calc(.45rem + 2px);font-weight:760;color:color-mix(in srgb,var(--tile-accent) 42%,var(--muted))}.home-page .home-device-tile .device-copy p:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--tile-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--tile-accent) 7%,transparent);flex:0 0 auto}.home-page .home-device-tile .tile-schedule-button{background:transparent;color:color-mix(in srgb,var(--text) 52%,var(--muted));box-shadow:none;border:0}.home-page .home-device-tile .tile-schedule-button:hover{background:color-mix(in srgb,var(--surface-2) 70%,transparent);color:var(--text)}@media(max-width:719px){.header-inner{gap:8px;padding-inline:10px}.hamburger-button{width:36px;height:36px;border-radius:11px}.brand-button,.header-glance{gap:7px}body.home-locked .app-main{height:calc(100dvh - 66px - env(safe-area-inset-top));padding:6px 8px calc(7px + env(safe-area-inset-bottom))}body.home-locked .home-page{gap:5px}body.home-locked .environment-zone-card{padding:5px 6px;border-radius:13px}body.home-locked .environment-zone-inline{min-height:31px;grid-template-columns:22px max-content minmax(0,1fr);gap:5px}body.home-locked .environment-zone-icon{width:22px;height:22px;border-radius:7px}body.home-locked .environment-zone-title{font-size:calc(.61rem + 2px)}body.home-locked .environment-inline-values{gap:3px}body.home-locked .environment-value-glass{height:24px;padding:0 5px;border-radius:8px;gap:3px}body.home-locked .environment-value-glass b{font-size:calc(.52rem + 2px)}body.home-locked .home-control-card>.device-list{gap:3px}body.home-locked .home-device-tile{border-radius:11px;padding-inline:6px;grid-template-columns:21px minmax(0,1fr) 18px}body.home-locked .home-device-tile .device-copy h3{font-size:calc(.6rem + 2px)}body.home-locked .home-device-tile .device-copy p{font-size:calc(.41rem + 2px)}}@media(max-width:380px){.brand-button small{display:none}.environment-value-glass{padding-inline:4px}.environment-value-glass .fa-icon{display:none}body.home-locked .environment-zone-title{font-size:calc(.56rem + 2px)}}.home-page .home-device-tile:before{display:none!important}.home-page .home-device-tile{grid-template-columns:28px minmax(0,1fr)!important;grid-template-rows:1fr!important;align-items:center!important}.home-page .home-device-tile .device-tile-top{display:flex!important;grid-column:1!important;grid-row:1!important;align-items:center!important;justify-content:flex-start!important;height:100%!important}.home-page .home-device-tile .device-icon{justify-self:start!important;align-self:center!important}.home-page .home-device-tile .device-copy{grid-column:2!important;grid-row:1!important;height:100%!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:0 5px!important}.home-page .home-device-tile .device-copy h3{width:100%!important;margin:0!important;line-height:1.15!important;text-align:center!important}.home-page .home-device-tile .device-copy p,.home-page .home-device-tile .tile-schedule-button{display:none!important}.home-page .home-device-tile.is-pulse{--tile-accent:var(--muted)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--muted) 3%,var(--surface)),color-mix(in srgb,var(--surface) 58%,transparent))!important;border-color:color-mix(in srgb,var(--muted) 10%,var(--line))!important}.home-page .home-device-tile.is-pulse .device-icon{background:color-mix(in srgb,var(--muted) 7%,var(--surface))!important;color:color-mix(in srgb,var(--muted) 60%,var(--text))!important}.home-page .home-device-tile.is-pulse .device-copy h3{color:var(--text)!important}.ounce-brand-logo{position:relative;display:inline-block;flex:0 0 auto;line-height:0}.ounce-brand-logo>img{display:block;width:100%;height:100%;object-fit:contain}.brand-tech-mark{position:absolute;right:7%;bottom:8%;display:flex;align-items:flex-end;gap:1px;color:#f5f0e4;filter:drop-shadow(0 1px 2px rgba(9,27,55,.38));line-height:1}.brand-tech-mark .fa-icon{width:.28em;height:.28em}.brand-robot-head{position:relative;width:.3em;height:.22em;border:.055em solid currentColor;border-radius:.07em;display:flex;align-items:center;justify-content:center;gap:.045em}.brand-robot-head:before{content:"";position:absolute;width:.055em;height:.09em;background:currentColor;top:-.12em;left:50%;transform:translate(-50%);border-radius:999px}.brand-robot-head:after{content:"";position:absolute;width:.07em;height:.07em;background:currentColor;top:-.17em;left:50%;transform:translate(-50%);border-radius:50%}.brand-robot-head i{display:block;width:.04em;height:.04em;border-radius:50%;background:currentColor}.header-brand-logo{width:42px;height:42px}.auth-logo{width:78px;height:78px}.splash-logo{width:92px;height:92px;margin-bottom:15px}.auth-logo,.splash-logo,.header-brand-logo{border-radius:0!important;box-shadow:none!important}.home-page .home-device-tile.is-pulse.is-on{--tile-accent:var(--warn)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--warn) 9%,var(--surface)),color-mix(in srgb,var(--warn) 4%,var(--surface)))!important;border-color:color-mix(in srgb,var(--warn) 18%,var(--line))!important;box-shadow:inset 0 1px #ffffff0d,0 5px 18px color-mix(in srgb,var(--warn) 7%,transparent)!important}.home-page .home-device-tile.is-pulse.is-on .device-icon{background:color-mix(in srgb,var(--warn) 10%,var(--surface))!important;color:color-mix(in srgb,var(--warn) 62%,var(--text))!important}.pulse-ms-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);overflow:hidden}.pulse-ms-input input{min-width:0;width:100%;border:0!important;background:transparent!important;border-radius:0!important}.pulse-ms-input em{padding:0 9px;color:var(--muted);font-size:.68rem;font-style:normal;font-weight:800;direction:ltr}:root:not([data-theme=dark]) .home-page .home-device-tile{background:linear-gradient(145deg,#eef1f5,#e9edf2)!important;border-color:#d9dee6!important;box-shadow:inset 0 1px #ffffffb8,0 3px 10px #1924350b!important;color:#151a21!important}:root:not([data-theme=dark]) .home-page .home-device-tile .device-copy h3{color:#151a21!important}:root:not([data-theme=dark]) .home-page .home-device-tile .device-icon{background:#e2e7ed!important;color:#465365!important;box-shadow:inset 0 0 0 1px #d5dbe4!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--good) 7%,#eef1f5),color-mix(in srgb,var(--good) 4%,#e9edf2))!important;border-color:color-mix(in srgb,var(--good) 18%,#d9dee6)!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-on .device-icon{background:color-mix(in srgb,var(--good) 9%,#e2e7ed)!important;color:color-mix(in srgb,var(--good) 60%,#263241)!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#edf0f4,#e8ebef)!important;border-color:#d8dde4!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--warn) 8%,#eef1f5),color-mix(in srgb,var(--warn) 4%,#e9edf2))!important}:root[data-theme=dark] .home-page .home-device-tile{background:linear-gradient(145deg,#17263a,#142236)!important;border-color:#2a3b54!important;box-shadow:inset 0 1px #ffffff0e,0 4px 13px #00000026!important;color:#fff!important}:root[data-theme=dark] .home-page .home-device-tile .device-copy h3{color:#fff!important}:root[data-theme=dark] .home-page .home-device-tile .device-icon{background:#1d2e45!important;color:#eef3f9!important;box-shadow:inset 0 0 0 1px #30435d!important}:root[data-theme=dark] .home-page .home-device-tile.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--good) 8%,#17263a),color-mix(in srgb,var(--good) 5%,#142236))!important;border-color:color-mix(in srgb,var(--good) 20%,#2a3b54)!important}:root[data-theme=dark] .home-page .home-device-tile.is-on .device-icon{background:color-mix(in srgb,var(--good) 10%,#1d2e45)!important;color:#fff!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#18273a,#152337)!important;border-color:#2b3c55!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse .device-copy h3{color:#fff!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,color-mix(in srgb,var(--warn) 8%,#17263a),color-mix(in srgb,var(--warn) 4%,#142236))!important;border-color:color-mix(in srgb,var(--warn) 18%,#2a3b54)!important}.home-page{position:relative;isolation:isolate}.home-page:before,.home-page:after{content:"";position:fixed;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(58px);opacity:.34}.home-page:before{width:210px;height:210px;right:-70px;top:20%;background:#4691ff38}.home-page:after{width:190px;height:190px;left:-65px;bottom:15%;background:#5ad7a529}.environment-zone-card,.header-menu-popover,.hamburger-button{backdrop-filter:blur(24px) saturate(165%)!important;-webkit-backdrop-filter:blur(24px) saturate(165%)!important}:root:not([data-theme=dark]) .home-page .home-device-tile{background:linear-gradient(145deg,#ffffff94,#f5f8fc57)!important;border:1px solid rgba(255,255,255,.74)!important;box-shadow:inset 0 1px #fffffff0,inset 0 -1px #78879b0d,0 8px 22px #22304411!important;backdrop-filter:blur(22px) saturate(165%)!important;-webkit-backdrop-filter:blur(22px) saturate(165%)!important;color:#17202b!important}:root:not([data-theme=dark]) .home-page .home-device-tile:after{content:"";position:absolute;inset:1px 1px auto;height:42%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.22),transparent);pointer-events:none}:root:not([data-theme=dark]) .home-page .home-device-tile .device-copy h3{color:#17202b!important;text-shadow:0 1px 0 rgba(255,255,255,.65)}:root:not([data-theme=dark]) .home-page .home-device-tile .device-icon{background:#ffffff70!important;border:1px solid rgba(255,255,255,.68)!important;color:#45556b!important;box-shadow:inset 0 1px #fffc,0 3px 10px #2534480d!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-off{background:linear-gradient(145deg,#fff8fa8a,#f7f2f54f)!important;border-color:#ffffffb3!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-off .device-icon{color:#b86f7d!important;background:#fff5f780!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-on{background:linear-gradient(145deg,#ebfff69c,#e2f8ee52)!important;border-color:#f2fff9db!important;box-shadow:inset 0 1px #fffffff0,0 8px 24px #27a86c13!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-on .device-icon{background:#e2fff18f!important;color:#2f9f69!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#f8fafd8f,#ebeff54f)!important;border-color:#ffffffb8!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse .device-icon{color:#748195!important;background:#f7f9fc80!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,#fff9dea8,#faeec257)!important;border-color:#fffce3e6!important;box-shadow:inset 0 1px #fffffff0,0 8px 24px #cfa32f17!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse.is-on .device-icon{background:#fff7d6a3!important;color:#b88c24!important}:root[data-theme=dark] .home-page .home-device-tile{background:linear-gradient(145deg,#25354a85,#111d2d5c)!important;border:1px solid rgba(183,211,245,.105)!important;box-shadow:inset 0 1px #ffffff13,inset 0 -1px #0000001a,0 8px 22px #0000002b!important;backdrop-filter:blur(22px) saturate(165%)!important;-webkit-backdrop-filter:blur(22px) saturate(165%)!important;color:#f8fbff!important}:root[data-theme=dark] .home-page .home-device-tile:after{content:"";position:absolute;inset:1px 1px auto;height:40%;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.045),transparent);pointer-events:none}:root[data-theme=dark] .home-page .home-device-tile .device-copy h3{color:#f8fbff!important;text-shadow:0 1px 2px rgba(0,0,0,.18)}:root[data-theme=dark] .home-page .home-device-tile .device-icon{background:#394c6570!important;border:1px solid rgba(191,216,244,.09)!important;color:#edf5ff!important;box-shadow:inset 0 1px #ffffff0e,0 3px 10px #00000017!important}:root[data-theme=dark] .home-page .home-device-tile.is-off{background:linear-gradient(145deg,#352d3b75,#1b1a2657)!important;border-color:#f0becd13!important}:root[data-theme=dark] .home-page .home-device-tile.is-off .device-icon{color:#e7c2cc!important;background:#5b3c485c!important}:root[data-theme=dark] .home-page .home-device-tile.is-on{background:linear-gradient(145deg,#2652427a,#14302857)!important;border-color:#a9f4d01a!important;box-shadow:inset 0 1px #ffffff12,0 8px 24px #19ac670e!important}:root[data-theme=dark] .home-page .home-device-tile.is-on .device-icon{background:#2f6e5566!important;color:#dffff0!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#2f3b4c7a,#181f2b57)!important;border-color:#c2d3ea16!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse .device-icon{background:#3e4b5e61!important;color:#d9e2ed!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,#58482380,#2f281857)!important;border-color:#ffe28b1f!important;box-shadow:inset 0 1px #ffffff12,0 8px 24px #d0a6310f!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse.is-on .device-icon{background:#755b2566!important;color:#fff1be!important}:root:not([data-theme=dark]) .environment-zone-card{background:linear-gradient(145deg,#ffffff8f,#f4f8fd52)!important;border:1px solid rgba(255,255,255,.76)!important;box-shadow:inset 0 1px #ffffffe6,0 9px 24px #2634480f!important}:root[data-theme=dark] .environment-zone-card{background:linear-gradient(145deg,#21314580,#101b2a57)!important;border:1px solid rgba(184,211,244,.1)!important;box-shadow:inset 0 1px #fff1,0 9px 24px #00000029!important}:root:not([data-theme=dark]) .environment-value-glass{background:#ffffff75!important;border-color:#ffffffad!important}:root[data-theme=dark] .environment-value-glass{background:#34465e5c!important;border-color:#bcd7f716!important}.app-header{background:color-mix(in srgb,var(--surface) 66%,transparent)!important;backdrop-filter:blur(26px) saturate(165%)!important;-webkit-backdrop-filter:blur(26px) saturate(165%)!important}.home-page:before,.home-page:after{display:none!important}.home-page .home-device-tile{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;transition:transform .09s ease,background-color .11s ease,border-color .11s ease,box-shadow .11s ease!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transform:translateZ(0);will-change:auto}.home-page .home-device-tile:after{display:none!important}.home-page .home-device-tile:active{transform:scale(.986)!important;transition-duration:45ms!important}.environment-zone-card{-webkit-backdrop-filter:blur(11px) saturate(135%)!important;backdrop-filter:blur(11px) saturate(135%)!important}.environment-value-glass{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.app-header{-webkit-backdrop-filter:blur(12px) saturate(135%)!important;backdrop-filter:blur(12px) saturate(135%)!important}.header-menu-popover{-webkit-backdrop-filter:blur(13px) saturate(140%)!important;backdrop-filter:blur(13px) saturate(140%)!important}.hamburger-button{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;touch-action:manipulation}:root[data-theme=dark] .home-page .home-device-tile{background:linear-gradient(145deg,#26364be0,#152131d1)!important;box-shadow:inset 0 1px #ffffff0e,0 3px 10px #0000001a!important}:root[data-theme=dark] .home-page .home-device-tile.is-off{background:linear-gradient(145deg,#362e3cdb,#1d1c27d1)!important}:root[data-theme=dark] .home-page .home-device-tile.is-on{background:linear-gradient(145deg,#285143e0,#183129d1)!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#303c4de0,#1b222ed1)!important}:root[data-theme=dark] .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,#574826e6,#302919d6)!important}:root:not([data-theme=dark]) .home-page .home-device-tile{background:linear-gradient(145deg,#ffffffe6,#f4f7fbd6)!important;box-shadow:inset 0 1px #fffffff2,0 3px 9px #2533460a!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-off{background:linear-gradient(145deg,#fff8fae6,#f7f3f6d6)!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-on{background:linear-gradient(145deg,#ecfff7eb,#e4f9efd9)!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse{background:linear-gradient(145deg,#f9fbfdeb,#edf0f5d9)!important}:root:not([data-theme=dark]) .home-page .home-device-tile.is-pulse.is-on{background:linear-gradient(145deg,#fff9e1f0,#faefc7db)!important}.node-manager-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.node-manager-toolbar .primary-button,.node-manager-toolbar .soft-button{width:auto;min-width:120px}.node-manager-list{display:grid;gap:8px}.node-manager-card{width:100%;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:10px;display:grid;grid-template-columns:38px minmax(0,1fr) auto 18px;align-items:center;gap:9px;text-align:right;color:var(--text);cursor:pointer}.node-manager-card.online{border-color:color-mix(in srgb,var(--good) 16%,var(--line));background:color-mix(in srgb,var(--good) 3%,var(--surface))}.node-manager-card.offline{border-color:color-mix(in srgb,var(--bad) 12%,var(--line))}.node-manager-card-copy{display:grid;gap:2px;min-width:0}.node-manager-card-copy b{font-size:.79rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-manager-card-copy small{font-size:.61rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-manager-card-copy em{font-size:.53rem;color:var(--muted);font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-live-badge{display:inline-flex;align-items:center;gap:4px;font-size:.53rem;font-weight:850;padding:4px 7px;border-radius:999px;background:var(--surface-2);color:var(--muted);white-space:nowrap}.node-live-badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.node-live-badge.online{color:color-mix(in srgb,var(--good) 66%,var(--text));background:color-mix(in srgb,var(--good) 7%,var(--surface))}.node-live-badge.offline{color:color-mix(in srgb,var(--bad) 65%,var(--text));background:color-mix(in srgb,var(--bad) 6%,var(--surface))}.node-manager-hero{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface-2);margin-bottom:10px}.node-manager-hero.online{border-color:color-mix(in srgb,var(--good) 15%,var(--line))}.node-manager-main-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--brand-2)}.node-manager-hero h3{margin:0;font-size:.9rem}.node-manager-hero p{margin:2px 0 0;color:var(--muted);font-size:.62rem}.node-manager-hero small{display:block;margin-top:3px;color:var(--muted);font-size:.52rem}.node-manager-hero code{font-size:.55rem}.node-facts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0 10px}.node-facts-grid>div{padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);display:grid;gap:2px}.node-facts-grid span{font-size:.5rem;color:var(--muted)}.node-facts-grid b{font-size:.61rem;overflow-wrap:anywhere}.node-section{display:grid;gap:8px;padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}.node-section>h3{margin:0;font-size:.76rem}.node-chip-list{display:flex;flex-wrap:wrap;gap:5px}.node-chip-list span{padding:4px 7px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.5rem;color:var(--muted);direction:ltr}.node-module-grid,.node-sensor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.node-module-grid article,.node-sensor-grid article,.node-channel-unmapped{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.node-module-grid b,.node-sensor-grid b,.node-channel-unmapped b{font-size:.62rem}.node-module-grid small,.node-sensor-grid small,.node-channel-unmapped small{display:block;margin-top:2px;color:var(--muted);font-size:.49rem;overflow-wrap:anywhere}.node-output-list{display:grid;gap:8px}.node-output-editor{padding:9px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2);display:grid;gap:8px}.node-channel-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px}.node-channel-head b{font-size:.66rem}.node-channel-head small{display:block;margin-top:2px;color:var(--muted);font-size:.5rem}.node-output-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.node-output-fields label{display:grid;gap:4px}.node-output-fields label>span{font-size:.51rem;color:var(--muted)}.node-output-fields input,.node-output-fields select{min-width:0}.node-output-toggle{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;padding:0 4px}.node-output-toggle input{width:18px;height:18px}.node-settings-form textarea{resize:vertical;min-height:58px}.provision-box{margin:10px 0;padding:10px;border:1px solid color-mix(in srgb,var(--warn) 18%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--warn) 5%,var(--surface));display:grid;gap:7px}.provision-box h3{margin:0;font-size:.72rem}.provision-box p{margin:0;color:var(--muted);font-size:.56rem}.provision-box code{direction:ltr;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;padding:8px;border-radius:9px;background:var(--surface-2);font-size:.53rem}.empty-inline{padding:9px;border-radius:12px;background:var(--surface-2);color:var(--muted);font-size:.58rem;text-align:center}@media(min-width:760px){.node-manager-list{grid-template-columns:repeat(2,minmax(0,1fr))}.node-facts-grid,.node-output-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.node-module-grid,.node-sensor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.node-manager-card{grid-template-columns:34px minmax(0,1fr) auto 14px;padding:8px}.node-manager-card .device-icon{width:34px;height:34px}.node-live-badge{font-size:.47rem;padding:3px 5px}.node-manager-hero{grid-template-columns:40px minmax(0,1fr);padding:9px}.node-manager-hero>.node-live-badge{grid-column:1/-1;justify-self:start}.node-manager-main-icon{width:40px;height:40px}.node-module-grid,.node-sensor-grid{grid-template-columns:1fr}.node-output-fields{grid-template-columns:1fr 1fr}}.node-section-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.node-section-title-row h3{margin:0}.node-section-title-row small{display:block;margin-top:3px;color:var(--muted);font-size:.62rem}.config-sync-badge{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;font-size:.58rem;font-weight:850;white-space:nowrap;background:color-mix(in srgb,var(--muted) 8%,var(--surface));color:var(--muted)}.config-sync-badge.applied{background:color-mix(in srgb,var(--good) 10%,var(--surface));color:color-mix(in srgb,var(--good) 62%,var(--text))}.config-sync-badge.pending,.config-sync-badge.published{background:color-mix(in srgb,var(--warn) 10%,var(--surface));color:color-mix(in srgb,var(--warn) 68%,var(--text))}.config-sync-badge.error{background:color-mix(in srgb,var(--bad) 10%,var(--surface));color:color-mix(in srgb,var(--bad) 65%,var(--text))}.inline-error{padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--bad) 7%,var(--surface));color:color-mix(in srgb,var(--bad) 70%,var(--text));font-size:.64rem;margin-bottom:9px}@media(max-width:719px){.node-section-title-row{align-items:flex-start}.config-sync-badge{font-size:.53rem}}.header-menu-separator{display:block;height:1px;margin:3px 6px;background:color-mix(in srgb,var(--line) 62%,transparent)}.header-menu-popover .menu-hard-reload{color:var(--text)}.reload-glyph{width:18px;display:inline-grid;place-items:center;font-size:1.15rem;line-height:1;font-weight:700}.hard-reload-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:#070f1b47;-webkit-backdrop-filter:blur(13px) saturate(125%);backdrop-filter:blur(13px) saturate(125%);animation:hardReloadFade .16s ease-out both;cursor:progress;touch-action:none}.hard-reload-panel{min-width:190px;padding:22px 26px;border:1px solid color-mix(in srgb,var(--line) 68%,transparent);border-radius:22px;display:grid;justify-items:center;gap:8px;color:var(--text);background:color-mix(in srgb,var(--surface) 72%,transparent);-webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%);box-shadow:inset 0 1px #ffffff14,0 18px 55px #0003}.hard-reload-panel b{font-size:.83rem;font-weight:900}.hard-reload-panel small{font-size:.56rem;color:var(--muted);font-weight:700}.hard-reload-spinner{width:34px;height:34px;border-radius:50%;border:3px solid color-mix(in srgb,var(--brand-2) 17%,transparent);border-top-color:var(--brand-2);animation:hardReloadSpin .72s linear infinite}@keyframes hardReloadSpin{to{transform:rotate(360deg)}}@keyframes hardReloadFade{0%{opacity:0}to{opacity:1}}:root:not([data-theme=dark]) .hard-reload-overlay{background:#eef4fa52}:root:not([data-theme=dark]) .hard-reload-panel{background:#ffffffb8;box-shadow:inset 0 1px #ffffffe6,0 18px 55px #21324824}.development-ledger-page .content-card{display:grid;gap:14px}.development-ledger-mandatory{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border:1px solid color-mix(in srgb,var(--brand-2) 26%,var(--line));border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--brand-2) 8%,var(--surface)),color-mix(in srgb,var(--surface-2) 72%,transparent))}.development-ledger-mandatory>.fa-icon{width:42px;height:42px;padding:10px;border-radius:12px;background:color-mix(in srgb,var(--brand-2) 10%,var(--surface));color:var(--brand-2)}.development-ledger-mandatory>div{display:grid;gap:5px}.development-ledger-mandatory b{font-size:.9rem}.development-ledger-mandatory p{margin:0;color:var(--muted);line-height:1.8;font-size:.7rem}.development-ledger-mandatory code{direction:ltr;text-align:left;display:block;width:max-content;max-width:100%;overflow:auto;padding:5px 8px;border-radius:8px;background:color-mix(in srgb,var(--surface-2) 80%,transparent);font-size:.64rem}.development-ledger-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.development-ledger-summary span{display:grid;place-items:center;gap:2px;min-height:64px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--surface-2) 62%,transparent)}.development-ledger-summary b{font-size:1rem}.development-ledger-summary small{font-size:.58rem;color:var(--muted)}.development-ledger-filters{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.development-ledger-filters button{border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);padding:6px 10px;font-size:.62rem;font-weight:850;cursor:pointer}.development-ledger-filters button.active{background:color-mix(in srgb,var(--brand-2) 12%,var(--surface));border-color:color-mix(in srgb,var(--brand-2) 28%,var(--line));color:var(--brand-2)}.development-ledger-filters .ledger-refresh{margin-inline-start:auto;display:inline-flex;align-items:center;gap:5px}.development-ledger-list{display:grid;gap:8px}.development-ledger-row{position:relative;display:grid;gap:7px;padding:12px 13px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--surface-2) 58%,transparent);overflow:hidden}.development-ledger-row:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:var(--muted);opacity:.6}.development-ledger-row.status-done:before{background:var(--good)}.development-ledger-row.status-active:before{background:var(--brand-2)}.development-ledger-row.status-planned:before{background:var(--warn)}.development-ledger-row-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.development-ledger-row-head>div{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.development-ledger-row-head code,.ledger-sequence,.ledger-kind,.ledger-status{font-size:.53rem;padding:3px 6px;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 68%,transparent);color:var(--muted)}.ledger-status.done{color:var(--good);border-color:color-mix(in srgb,var(--good) 24%,var(--line))}.ledger-status.active{color:var(--brand-2);border-color:color-mix(in srgb,var(--brand-2) 24%,var(--line))}.ledger-status.planned{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 24%,var(--line))}.development-ledger-row h3{margin:0;font-size:.78rem}.development-ledger-row>p{margin:0;color:var(--muted);font-size:.66rem;line-height:1.8}.ledger-note{display:grid;grid-template-columns:62px minmax(0,1fr);gap:7px;align-items:start;padding:7px 8px;border-radius:10px;background:color-mix(in srgb,var(--brand-2) 5%,var(--surface));font-size:.61rem;line-height:1.75}.ledger-note b{color:var(--brand-2)}.ledger-note.next{background:color-mix(in srgb,var(--warn) 5%,var(--surface))}.ledger-note.next b{color:var(--warn)}.ledger-key{direction:ltr;text-align:left;color:color-mix(in srgb,var(--muted) 72%,transparent);font-size:.5rem}@media(max-width:719px){.development-ledger-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.development-ledger-mandatory{grid-template-columns:34px minmax(0,1fr);padding:11px}.development-ledger-mandatory>.fa-icon{width:34px;height:34px;padding:8px}.development-ledger-filters .ledger-refresh{margin-inline-start:0}.ledger-note{grid-template-columns:1fr;gap:2px}}.universal-node-page .universal-hero{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 56%,transparent)}.universal-node-page .universal-hero h3{margin:0 0 3px;font-size:.86rem}.universal-node-page .universal-hero p{margin:0;color:var(--muted);font-size:.64rem}.universal-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.universal-profile-grid article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;padding:10px;border:1px solid color-mix(in srgb,var(--line) 60%,transparent);border-radius:13px;background:color-mix(in srgb,var(--surface) 58%,transparent)}.universal-profile-grid article>div{display:grid;gap:2px}.universal-profile-grid b{font-size:.72rem}.universal-profile-grid small,.universal-profile-grid em{font-style:normal;color:var(--muted);font-size:.55rem}.node-chip-list.muted span{opacity:.66}.muted-copy{color:var(--muted);font-size:.62rem}.universal-flow{display:grid;gap:6px;padding:11px;border-radius:13px;background:color-mix(in srgb,var(--brand-2) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--brand-2) 13%,var(--line))}.universal-flow b{font-size:.72rem}.universal-flow code{direction:ltr;text-align:left;white-space:normal;word-break:break-word;font-size:.58rem}@media(max-width:719px){.universal-profile-grid{grid-template-columns:1fr}.universal-node-page .universal-hero{grid-template-columns:36px minmax(0,1fr) auto}}.universal-profile-note{margin-top:2px;line-height:1.5;color:color-mix(in srgb,var(--warn) 58%,var(--muted))!important}.universal-node-list{display:grid;gap:8px}.universal-node-page .content-card{width:100%;max-width:1120px;margin-inline:auto}.universal-editor-status{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 14px;border:1px solid color-mix(in srgb,var(--line) 66%,transparent);border-radius:17px;background:color-mix(in srgb,var(--surface-2) 62%,transparent)}.universal-editor-status>div{min-width:0}.universal-editor-title-line{display:flex;align-items:center;gap:8px;min-width:0}.universal-editor-title-line>b{font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-editor-title-line .node-live-badge{font-size:.52rem;padding:4px 7px}.universal-editor-status>div>small{display:block;margin-top:3px;color:var(--muted);font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-editor-status code{font-size:.56rem}.universal-revision-card{min-width:94px;display:grid;justify-items:center;gap:1px;padding:7px 10px;border-radius:12px;background:color-mix(in srgb,var(--brand-2) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--brand-2) 12%,var(--line))}.universal-revision-card span{font-size:.5rem;color:var(--muted);font-weight:800}.universal-revision-card b{font-size:.76rem}.universal-revision-card small{font-size:.5rem;color:var(--muted)}.universal-revision-card.applied{background:color-mix(in srgb,var(--good) 7%,var(--surface));border-color:color-mix(in srgb,var(--good) 20%,var(--line))}.universal-revision-card.applied b,.universal-revision-card.applied small{color:color-mix(in srgb,var(--good) 68%,var(--text))}.universal-revision-card.error{background:color-mix(in srgb,var(--bad) 7%,var(--surface));border-color:color-mix(in srgb,var(--bad) 20%,var(--line))}.universal-revision-card.error b,.universal-revision-card.error small{color:color-mix(in srgb,var(--bad) 68%,var(--text))}.universal-runtime-card,.universal-section-shell{margin-top:10px;padding:13px;border:1px solid color-mix(in srgb,var(--line) 62%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface-2) 42%,transparent)}.universal-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.universal-section-header>div{min-width:0}.universal-section-header h3{margin:0;font-size:.76rem}.universal-section-header small{display:block;margin-top:2px;color:var(--muted);font-size:.55rem}.universal-safe-badge{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 9px;border-radius:999px;background:color-mix(in srgb,var(--good) 8%,var(--surface));color:color-mix(in srgb,var(--good) 66%,var(--text));font-size:.55rem;font-weight:850;white-space:nowrap}.universal-runtime-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.universal-runtime-grid label{display:grid;gap:5px;min-width:0}.universal-runtime-grid label>span{font-size:.54rem;color:var(--muted);font-weight:800}.universal-runtime-grid input,.universal-runtime-grid select{min-height:38px}.universal-profile-field{grid-column:span 1}.universal-profile-note{margin:9px 0 0;padding:8px 9px;border-radius:10px;background:color-mix(in srgb,var(--warn) 7%,var(--surface));color:color-mix(in srgb,var(--warn) 56%,var(--text));font-size:.58rem;line-height:1.7}.universal-config-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:12px;padding:0 2px}.universal-config-toolbar h3{margin:0;font-size:.78rem}.universal-config-toolbar>div>small{display:block;margin-top:2px;color:var(--muted);font-size:.55rem}.universal-add-menu{position:relative}.universal-add-menu>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--brand-2) 18%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface));color:var(--brand-2);font-size:.62rem;font-weight:850}.universal-add-menu>summary::-webkit-details-marker{display:none}.universal-add-grid{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:7px;max-width:620px}.universal-add-grid .soft-button{padding:7px 9px;font-size:.58rem}.universal-count-badge{min-width:27px;height:27px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:var(--surface-3);color:var(--muted);font-size:.58rem;font-weight:900}.universal-item-list{display:grid;gap:6px}.universal-item-card{overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 60%,transparent);border-radius:13px;background:color-mix(in srgb,var(--surface) 58%,transparent);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.universal-item-card[open]{border-color:color-mix(in srgb,var(--brand-2) 20%,var(--line));background:color-mix(in srgb,var(--surface-2) 48%,var(--surface));box-shadow:0 5px 18px #0000000b}.universal-item-card>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px minmax(0,1fr) auto 20px;align-items:center;gap:9px;min-height:58px;padding:8px 10px;user-select:none}.universal-item-card>summary::-webkit-details-marker{display:none}.universal-item-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface));color:var(--brand-2)}.universal-item-summary-copy{display:grid;gap:2px;min-width:0}.universal-item-summary-copy b{font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-item-summary-copy small{font-size:.54rem;color:var(--muted);direction:ltr;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-electrical-badge{min-height:23px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;font-size:.5rem;font-weight:850;white-space:nowrap}.universal-electrical-badge.low{background:color-mix(in srgb,var(--good) 7%,var(--surface));color:color-mix(in srgb,var(--good) 62%,var(--text))}.universal-electrical-badge.high{background:color-mix(in srgb,var(--warn) 7%,var(--surface));color:color-mix(in srgb,var(--warn) 66%,var(--text))}.universal-item-chevron{display:block;color:var(--muted);font-size:1rem;font-weight:900;transition:transform .16s ease}.universal-item-card[open] .universal-item-chevron{transform:rotate(-90deg)}.universal-item-editor{border-top:1px solid color-mix(in srgb,var(--line) 58%,transparent);padding:10px}.universal-item-technical-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.universal-item-technical-head code{direction:ltr;text-align:left;color:var(--muted);font-size:.5rem}.universal-item-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.universal-item-card label{min-width:0}.universal-item-card label>span{font-size:.54rem}.universal-item-card input,.universal-item-card select{min-height:38px}.universal-item-card .check-row{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 9px;border:1px solid var(--line);border-radius:10px}.universal-item-card .check-row input{min-height:auto;width:auto}.universal-advanced-field input{font-size:.62rem}.danger-link{border:0;background:transparent;color:var(--bad);font-size:.58rem;font-weight:850;cursor:pointer}.universal-save-bar{position:sticky;bottom:8px;z-index:20;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;margin-top:12px;padding:8px;border:1px solid color-mix(in srgb,var(--line) 68%,transparent);border-radius:14px;background:color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:0 8px 26px #00000012;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%)}.universal-save-copy{min-width:0;display:flex;align-items:center;gap:8px}.universal-save-copy small{color:var(--muted);font-size:.53rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-save-bar .primary-button,.universal-save-bar .soft-button{min-height:38px}@media(max-width:900px){.universal-runtime-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.universal-profile-field{grid-column:span 1}.universal-item-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:719px){.universal-editor-status{grid-template-columns:36px minmax(0,1fr) auto;padding:10px}.universal-revision-card{min-width:76px;padding:6px 7px}.universal-revision-card b{font-size:.66rem}.universal-editor-status>div>small{font-size:.52rem}.universal-runtime-card,.universal-section-shell{padding:10px;border-radius:14px}.universal-runtime-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.universal-profile-field{grid-column:1/-1}.universal-config-toolbar{align-items:center}.universal-add-grid{justify-content:flex-start}.universal-item-card>summary{grid-template-columns:32px minmax(0,1fr) auto 16px;gap:7px;min-height:54px;padding:7px 8px}.universal-item-icon{width:32px;height:32px}.universal-electrical-badge{font-size:.46rem;padding:0 6px}.universal-item-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.universal-save-bar{bottom:6px;grid-template-columns:1fr 1fr}.universal-save-copy{grid-column:1/-1}.universal-save-bar .primary-button,.universal-save-bar .soft-button{width:100%}}@media(max-width:430px){.universal-editor-status{grid-template-columns:34px minmax(0,1fr)}.universal-revision-card{grid-column:1/-1;grid-template-columns:auto auto 1fr;justify-items:start;align-items:center;gap:7px;min-width:0}.universal-revision-card small{justify-self:end}.universal-item-card>summary{grid-template-columns:30px minmax(0,1fr) 16px}.universal-electrical-badge{display:none}.universal-item-card .form-grid{grid-template-columns:1fr}.universal-config-toolbar{align-items:flex-start}.universal-config-toolbar>div{min-width:0}.universal-add-menu>summary{padding:0 8px}.universal-save-copy{display:grid;gap:4px}}@media(min-width:720px){.universal-save-bar{position:static;margin-top:14px}}.universal-runtime-grid .unit-input{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.universal-runtime-grid .unit-input input{border:0;border-radius:0;background:transparent;min-width:0}.universal-runtime-grid .unit-input em{height:100%;min-width:48px;display:grid;place-items:center;padding-inline:8px;border-inline-start:1px solid var(--line);color:var(--muted);font-size:.52rem;font-style:normal;white-space:nowrap}.universal-section-shell{scroll-margin-bottom:110px}@media(max-width:719px){.universal-node-page .content-card{padding-bottom:105px}.universal-save-bar{left:8px;right:8px}}.enrollment-panel{margin:10px 0 14px;padding:12px;border:1px solid color-mix(in srgb,var(--brand-2) 24%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--brand-2) 4%,var(--surface))}.enrollment-panel-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin-bottom:10px}.enrollment-panel-head h3{margin:0;font-size:.84rem}.enrollment-panel-head small{display:block;margin-top:3px;color:var(--muted);font-size:.58rem}.enrollment-timer{min-width:54px;text-align:center;padding:6px 9px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.enrollment-timer b{display:block;font-size:.9rem}.enrollment-timer span{display:block;color:var(--muted);font-size:.48rem}.enrollment-device-list{display:grid;gap:9px}.enrollment-device-card{padding:10px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.enrollment-device-card.claiming{border-color:color-mix(in srgb,var(--brand-2) 35%,var(--line))}.enrollment-device-card.claimed{border-color:color-mix(in srgb,var(--good) 35%,var(--line))}.enrollment-device-card.error{border-color:color-mix(in srgb,var(--bad) 35%,var(--line))}.enrollment-device-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center}.enrollment-device-head>div{display:grid;gap:2px;min-width:0}.enrollment-device-head b{font-size:.75rem}.enrollment-device-head small,.enrollment-device-head em{font-size:.52rem;color:var(--muted);font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enrollment-claim-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:7px;align-items:end;margin-top:10px}.enrollment-claim-form label{display:grid;gap:4px}.enrollment-claim-form label>span{font-size:.52rem;color:var(--muted)}.enrollment-claim-form input,.enrollment-claim-form select{width:100%;min-width:0;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--text);padding:0 8px;font-size:.62rem}.enrollment-claim-form .primary-button{height:36px;white-space:nowrap}.enrollment-waiting{min-height:110px;display:grid;place-items:center;align-content:center;gap:6px;text-align:center;color:var(--muted)}.enrollment-waiting b{font-size:.72rem;color:var(--text)}.enrollment-waiting small{font-size:.55rem}@media(max-width:800px){.enrollment-panel-head{grid-template-columns:minmax(0,1fr) auto}.enrollment-panel-head>.soft-button{grid-column:1/-1;width:100%}.enrollment-claim-form{grid-template-columns:1fr 1fr}.enrollment-claim-form .primary-button{grid-column:1/-1;width:100%}}@media(max-width:520px){.enrollment-panel{padding:9px}.enrollment-device-head{grid-template-columns:34px minmax(0,1fr)}.enrollment-device-head>.config-sync-badge{grid-column:1/-1;justify-self:start}.enrollment-claim-form{grid-template-columns:1fr}}.universal-ios-page{--ios-blue:#0a84ff;--ios-green:#30d158;--ios-orange:#ff9f0a;--ios-red:#ff453a;--ios-purple:#bf5af2}.universal-ios-page .universal-ios-screen{max-width:900px;padding:18px 18px 24px;background:transparent;border-color:transparent;box-shadow:none}.universal-ios-page .subpage-head{margin-bottom:8px}.universal-ios-titlebar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 4px 10px}.universal-ios-title-copy{min-width:0}.universal-ios-eyebrow{display:block;margin-bottom:3px;color:var(--muted);font-size:.58rem;font-weight:800}.universal-ios-title-copy h2{margin:0;font-size:1.42rem;line-height:1.25;letter-spacing:-.025em}.universal-ios-title-copy>small{display:block;margin-top:6px;color:var(--muted);font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-ios-title-copy code{font-size:.56rem}.universal-ios-title-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.universal-ios-online{display:inline-flex;align-items:center;gap:5px;min-height:29px;padding:0 10px;border-radius:999px;background:color-mix(in srgb,var(--surface-2) 72%,transparent);border:1px solid color-mix(in srgb,var(--line) 55%,transparent);font-size:.56rem;font-weight:850;backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.universal-ios-online i{width:6px;height:6px;border-radius:50%;background:var(--bad);box-shadow:0 0 0 3px color-mix(in srgb,var(--bad) 13%,transparent)}.universal-ios-online.online{color:var(--good)}.universal-ios-online.online i{background:var(--good);box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 13%,transparent)}.universal-ios-revision{min-width:78px;min-height:50px;display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:center;padding:7px 11px;border-radius:16px;background:color-mix(in srgb,var(--surface-2) 72%,transparent);border:1px solid color-mix(in srgb,var(--line) 55%,transparent);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.universal-ios-revision small{grid-column:1/-1;color:var(--muted);font-size:.48rem;font-weight:800}.universal-ios-revision b{font-size:.84rem}.universal-ios-revision.applied b{color:var(--good)}.universal-ios-revision.error b{color:var(--bad)}.universal-ios-callout{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin:8px 0 18px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--ios-blue) 18%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--ios-blue) 7%,var(--surface))}.universal-ios-callout-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--ios-blue);color:#fff}.universal-ios-callout>span:nth-child(2){display:grid;gap:2px;min-width:0}.universal-ios-callout b{font-size:.67rem}.universal-ios-callout small{color:var(--muted);font-size:.55rem;line-height:1.6}.universal-ios-section{margin-top:17px}.universal-ios-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 11px 7px}.universal-ios-section-title>div{display:grid;gap:2px}.universal-ios-section-title>div>span{font-size:.72rem;font-weight:900}.universal-ios-section-title small{color:var(--muted);font-size:.52rem}.universal-ios-safe{display:inline-flex;align-items:center;gap:5px;color:var(--good);font-size:.53rem;font-weight:850}.universal-ios-safe .fa-icon{opacity:.9}.universal-ios-list-shell,.universal-ios-settings-list{overflow:hidden;border:1px solid color-mix(in srgb,var(--line) 58%,transparent);border-radius:20px;background:color-mix(in srgb,var(--surface-2) 78%,transparent);box-shadow:0 8px 30px #00000009;backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}.universal-ios-settings-list{display:grid}.universal-ios-setting-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(124px,42%);align-items:center;gap:14px;min-height:58px;padding:9px 14px;background:transparent}.universal-ios-setting-row:not(:last-child):after{content:"";position:absolute;inset-inline:14px 0;bottom:0;height:1px;background:color-mix(in srgb,var(--line) 58%,transparent)}.universal-ios-setting-row>span:first-child{display:grid;gap:2px;min-width:0}.universal-ios-setting-row b{font-size:.67rem}.universal-ios-setting-row small{color:var(--muted);font-size:.51rem;line-height:1.45}.universal-ios-setting-row>input,.universal-ios-setting-row>select{justify-self:stretch;width:100%;min-width:0;min-height:36px;padding:0 10px;border:0;border-radius:10px;background:color-mix(in srgb,var(--surface-3) 72%,transparent);color:var(--text);font-size:.65rem;text-align:end;outline:none}.universal-ios-setting-row>input:focus,.universal-ios-setting-row>select:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ios-blue) 38%,transparent)}.universal-ios-setting-row select{cursor:pointer}.universal-ios-technical-row input{direction:ltr;text-align:left;font-size:.58rem}.universal-output-icon-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;justify-self:stretch}.universal-output-icon-picker button{min-width:0;min-height:48px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;padding:7px 8px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:11px;background:color-mix(in srgb,var(--surface-3) 66%,transparent);color:var(--muted);cursor:pointer;text-align:right;font:inherit}.universal-output-icon-picker button .fa-icon{color:currentColor}.universal-output-icon-picker button span{font-size:.48rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis}.universal-output-icon-picker button:hover{border-color:color-mix(in srgb,var(--ios-blue) 28%,var(--line));color:var(--ios-blue)}.universal-output-icon-picker button.selected{border-color:color-mix(in srgb,var(--ios-blue) 50%,var(--line));background:color-mix(in srgb,var(--ios-blue) 13%,var(--surface));color:var(--ios-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--ios-blue) 10%,transparent)}.universal-ios-number-with-unit{justify-self:end;display:flex!important;align-items:center!important;gap:6px!important;width:auto;min-width:116px}.universal-ios-number-with-unit input{width:78px;min-height:34px;padding:0 8px;border:0;border-radius:10px;background:color-mix(in srgb,var(--surface-3) 72%,transparent);color:var(--text);text-align:center;font-size:.67rem;outline:none}.universal-ios-number-with-unit input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ios-blue) 38%,transparent)}.universal-ios-number-with-unit em{color:var(--muted);font-size:.52rem;font-style:normal;white-space:nowrap}.universal-ios-footnote{margin:7px 11px 0;color:var(--muted);font-size:.52rem;line-height:1.7}.universal-ios-item-list{display:grid}.universal-ios-item{overflow:hidden;background:transparent}.universal-ios-item:not(:last-child){border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent)}.universal-ios-item-summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:34px minmax(0,1fr) auto 16px;align-items:center;gap:10px;min-height:64px;padding:8px 13px;user-select:none}.universal-ios-item-summary::-webkit-details-marker{display:none}.universal-ios-item[open]>.universal-ios-item-summary{background:color-mix(in srgb,var(--ios-blue) 3%,transparent)}.universal-ios-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--ios-blue);color:#fff;box-shadow:inset 0 1px #ffffff2e}.universal-ios-icon-pulse_relay{background:var(--ios-orange)}.universal-ios-icon-dht11,.universal-ios-icon-dht22{background:var(--ios-green)}.universal-ios-icon-pir,.universal-ios-icon-digital_input{background:var(--ios-purple)}.universal-ios-icon-tm1637{background:#5e5ce6}.universal-ios-item-copy{display:grid;gap:2px;min-width:0}.universal-ios-item-copy b{font-size:.69rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-ios-item-copy small{color:var(--muted);font-size:.53rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:ltr;text-align:right}.universal-ios-level{display:inline-flex;align-items:center;min-height:23px;padding:0 8px;border-radius:999px;background:color-mix(in srgb,var(--good) 8%,transparent);color:var(--good);font-size:.48rem;font-weight:800;white-space:nowrap}.universal-ios-level.high{background:color-mix(in srgb,var(--ios-orange) 10%,transparent);color:var(--ios-orange)}.universal-ios-chevron{color:color-mix(in srgb,var(--muted) 68%,transparent);transition:transform .2s cubic-bezier(.2,.8,.2,1)}.universal-ios-item[open] .universal-ios-chevron{transform:rotate(90deg)}.universal-ios-item-editor{padding:0 13px 13px;background:color-mix(in srgb,var(--surface) 34%,transparent)}.universal-ios-editor-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 2px}.universal-ios-editor-caption code{direction:ltr;text-align:left;color:var(--muted);font-size:.49rem}.universal-ios-delete{border:0;background:transparent;color:var(--ios-red);font-size:.56rem;font-weight:850;cursor:pointer}.universal-ios-item-editor .universal-ios-settings-list{border-radius:16px;background:color-mix(in srgb,var(--surface-3) 42%,transparent);box-shadow:none}.universal-ios-toggle-row{cursor:pointer}.universal-ios-switch{position:relative!important;justify-self:end;display:block!important;width:46px!important;height:28px!important}.universal-ios-switch input{position:absolute;opacity:0;pointer-events:none}.universal-ios-switch i{position:absolute;inset:0;border-radius:999px;background:color-mix(in srgb,var(--muted) 38%,var(--surface-3));transition:.2s ease}.universal-ios-switch i:after{content:"";position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000003d;transition:.2s ease}.universal-ios-switch input:checked+i{background:var(--ios-green)}.universal-ios-switch input:checked+i:after{transform:translate(-18px)}.universal-ios-warning-row{background:color-mix(in srgb,var(--ios-orange) 5%,transparent)}.universal-ios-add-menu{position:relative}.universal-ios-add-menu>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border-radius:999px;background:color-mix(in srgb,var(--ios-blue) 10%,transparent);color:var(--ios-blue);font-size:.55rem;font-weight:850}.universal-ios-add-menu>summary::-webkit-details-marker{display:none}.universal-ios-add-popover{position:absolute;z-index:25;top:36px;inset-inline-end:0;width:min(320px,76vw);display:grid;gap:2px;padding:7px;border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:17px;background:color-mix(in srgb,var(--surface) 93%,transparent);box-shadow:0 18px 55px #0003;backdrop-filter:blur(28px) saturate(155%);-webkit-backdrop-filter:blur(28px) saturate(155%)}.universal-ios-add-popover button{border:0;border-radius:11px;background:transparent;color:var(--text);padding:9px 10px;text-align:right;font-size:.6rem;cursor:pointer}.universal-ios-add-popover button:hover{background:color-mix(in srgb,var(--ios-blue) 8%,transparent);color:var(--ios-blue)}.universal-ios-empty{padding:22px;text-align:center;color:var(--muted);font-size:.58rem}.universal-ios-savebar{position:sticky;bottom:10px;z-index:30;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;margin-top:20px;padding:8px;border:1px solid color-mix(in srgb,var(--line) 62%,transparent);border-radius:22px;background:color-mix(in srgb,var(--surface) 76%,transparent);box-shadow:0 16px 48px #00000029;backdrop-filter:blur(30px) saturate(165%);-webkit-backdrop-filter:blur(30px) saturate(165%)}.universal-ios-save-state{display:flex;align-items:center;gap:8px;min-width:0;padding-inline:4px}.universal-ios-save-state small{color:var(--muted);font-size:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-ios-primary-action,.universal-ios-secondary-action{min-height:38px;border:0;border-radius:13px;padding:0 14px;font-size:.61rem;font-weight:900;cursor:pointer}.universal-ios-primary-action{background:var(--ios-blue);color:#fff;box-shadow:inset 0 1px #fff3}.universal-ios-secondary-action{background:color-mix(in srgb,var(--surface-3) 78%,transparent);color:var(--text)}.universal-ios-primary-action:disabled,.universal-ios-secondary-action:disabled{opacity:.55;cursor:default}@media(min-width:900px){.universal-ios-page .universal-ios-screen{padding-inline:28px}.universal-ios-section{margin-top:20px}.universal-ios-setting-row{min-height:62px}.universal-ios-savebar{bottom:14px}}@media(max-width:719px){.universal-ios-page .universal-ios-screen{padding:10px 8px 92px}.universal-ios-titlebar{align-items:flex-start;padding:14px 6px 7px}.universal-ios-title-copy h2{font-size:1.2rem}.universal-ios-title-actions{display:grid;justify-items:end}.universal-ios-revision{min-height:43px;min-width:68px;padding:5px 8px}.universal-ios-section-title{padding-inline:9px}.universal-ios-setting-row{grid-template-columns:minmax(0,1fr) minmax(104px,43%);gap:9px;padding:8px 11px}.universal-ios-setting-row:not(:last-child):after{inset-inline:11px 0}.universal-ios-item-summary{grid-template-columns:32px minmax(0,1fr) 15px;gap:8px;padding:7px 10px;min-height:60px}.universal-ios-icon{width:32px;height:32px}.universal-ios-level{display:none}.universal-ios-item-editor{padding:0 10px 10px}.universal-ios-item-editor .universal-ios-setting-row{grid-template-columns:minmax(0,1fr) minmax(108px,45%)}.universal-ios-callout{grid-template-columns:32px minmax(0,1fr);padding:10px}.universal-ios-callout>.soft-button{grid-column:1/-1;width:100%}.universal-ios-savebar{position:fixed;bottom:max(8px,env(safe-area-inset-bottom));left:8px;right:8px;grid-template-columns:1fr 1fr;border-radius:20px}.universal-ios-save-state{grid-column:1/-1}.universal-ios-primary-action,.universal-ios-secondary-action{width:100%}}@media(max-width:719px){.universal-ios-icon-row{grid-template-columns:1fr}.universal-output-icon-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.universal-output-icon-picker button{min-height:44px}}@media(max-width:430px){.universal-ios-titlebar{display:grid;gap:10px}.universal-ios-title-actions{display:flex;justify-content:space-between}.universal-ios-setting-row,.universal-ios-item-editor .universal-ios-setting-row{grid-template-columns:minmax(0,1fr) 110px}.universal-ios-setting-row small{display:none}.universal-ios-item-copy small{font-size:.49rem}.universal-ios-number-with-unit{min-width:100px}.universal-ios-number-with-unit input{width:66px}.universal-ios-save-state small{display:none}}.node-install-guide-screen{overflow:hidden}.node-guide-hero{display:flex;align-items:center;gap:16px;padding:22px 4px 26px}.node-guide-hero-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#0a84ff2e,#5e5ce61f);color:#0a84ff;box-shadow:inset 0 0 0 1px #0a84ff1f}.node-guide-hero h2{margin:3px 0 6px;font-size:clamp(1.45rem,3vw,2.05rem)}.node-guide-hero p,.node-guide-hero span{margin:0;color:var(--muted);font-size:.84rem}.node-guide-alert{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid rgba(255,159,10,.22);background:#ff9f0a14;border-radius:18px;margin-bottom:24px}.node-guide-alert>span{color:#ff9f0a;margin-top:2px}.node-guide-alert b{display:block;margin-bottom:3px}.node-guide-alert p{margin:0;color:var(--muted);line-height:1.8}.node-guide-section{margin:0 0 26px}.node-guide-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 4px 9px}.node-guide-section-title>span{font-size:1rem;font-weight:800}.node-guide-section-title small{color:var(--muted)}.node-guide-list,.node-guide-targets,.node-guide-after{display:grid;gap:12px}.node-guide-command,.node-guide-target,.node-guide-after article{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);border-radius:20px;box-shadow:0 8px 26px #14223a0d}.node-guide-command{padding:14px}.node-guide-command-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.node-guide-command-head button{border:0;border-radius:10px;padding:7px 11px;background:#0a84ff1a;color:#0a84ff;font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.node-guide-command pre{margin:0;direction:ltr;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;padding:13px 14px;border-radius:14px;background:#0c121cf0;color:#e7f1ff;font:500 .78rem/1.8 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.node-guide-command>small{display:block;margin-top:8px;color:var(--muted);line-height:1.7}.node-guide-steps{margin:0;padding:0 24px 0 0;border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}.node-guide-steps li{padding:13px 5px 13px 14px;line-height:1.8}.node-guide-steps li+li{border-top:1px solid var(--line)}.node-guide-target{padding:17px}.node-guide-target-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.node-guide-target-head h3,.node-guide-target-head p{margin:0}.node-guide-target-head p{color:var(--muted);font-size:.8rem;margin-top:3px}.node-guide-target>ul{margin:12px 0 0;padding:0 22px 0 0;color:var(--muted);line-height:1.9;font-size:.84rem}.node-guide-after{grid-template-columns:repeat(2,minmax(0,1fr))}.node-guide-after article{padding:15px}.node-guide-after b{display:block;margin-bottom:5px}.node-guide-after p{margin:0;color:var(--muted);line-height:1.8}.node-guide-success{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}.node-guide-success li{display:flex;align-items:flex-start;gap:9px;padding:12px 14px;line-height:1.75}.node-guide-success li+li{border-top:1px solid var(--line)}.node-guide-success .fa-icon{color:#30b45a;margin-top:4px;flex:0 0 auto}@media(max-width:720px){.node-guide-after{grid-template-columns:1fr}.node-guide-section-title{align-items:flex-start;flex-direction:column}.node-guide-hero{align-items:flex-start}.node-guide-command pre{font-size:.72rem}}.node-database-status{border-top-color:color-mix(in srgb,var(--brand-2) 20%,var(--line))}.node-db-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.node-db-summary>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.node-db-summary span{font-size:.5rem;color:var(--muted)}.node-db-summary b{font-size:.67rem;overflow-wrap:anywhere}.node-db-output-list{display:grid;gap:6px}.node-db-output-row{display:grid;grid-template-columns:minmax(170px,1.6fr) repeat(2,minmax(86px,.65fr)) auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2)}.node-db-output-row>div{display:grid;gap:2px;min-width:0}.node-db-output-row>div b{font-size:.62rem}.node-db-output-row>div small{font-size:.49rem;color:var(--muted);overflow-wrap:anywhere}.node-db-output-row>span{font-size:.54rem;color:var(--muted);white-space:nowrap}.node-db-output-row>span b{color:var(--text)}.node-db-output-row>span.pending,.node-db-output-row>span.ok{padding:4px 7px;border-radius:999px;font-weight:850}.node-db-output-row>span.pending{background:color-mix(in srgb,var(--warn) 11%,var(--surface));color:color-mix(in srgb,var(--warn) 70%,var(--text))}.node-db-output-row>span.ok{background:color-mix(in srgb,var(--good) 9%,var(--surface));color:color-mix(in srgb,var(--good) 68%,var(--text))}.output-control-switch{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center!important;gap:4px 10px}.output-control-switch small{grid-column:1/-1;color:var(--muted)}.home-page .home-device-tile.is-disabled{position:relative;cursor:default;filter:saturate(.38);opacity:.64}.home-page .home-device-tile.is-disabled:after{content:"قفل";position:absolute;inset-inline-start:8px;top:7px;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--line);color:var(--muted);font-size:.45rem;font-weight:900;pointer-events:none}.notification-admin-page{display:grid;gap:14px}.notification-admin-page>.subpage-head{margin-bottom:0}.notification-provider-form{border:1px solid var(--line);border-radius:18px;padding:13px;background:var(--surface-2)}.notification-provider-form h3{margin:0 0 9px;font-size:.78rem}.notification-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.notification-provider-grid>label,.notification-provider-grid>.notification-provider.sms{display:grid;gap:5px;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.notification-provider-grid label>span,.notification-provider.sms>span{font-size:.55rem;color:var(--muted)}.notification-provider-grid small{font-size:.5rem;color:var(--muted);line-height:1.6}.notification-provider{grid-template-columns:minmax(0,1fr) auto!important;align-items:center}.notification-provider small{grid-column:1/-1}.notification-provider input[type=checkbox]{width:18px;height:18px}.notification-provider.sms b{font-size:.66rem}.notification-user-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.notification-user-summary>div{padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);display:grid;gap:4px}.notification-user-summary b{font-size:.64rem}.notification-user-summary small{font-size:.49rem;color:var(--muted)}.notification-test-actions{display:flex;gap:5px;flex-wrap:wrap}.notification-test-actions .soft-button{padding:6px 8px;border-radius:9px;font-size:.5rem}.notification-output-list{display:grid;gap:8px}.notification-output-card{border:1px solid var(--line);border-radius:17px;background:var(--surface-2);overflow:hidden}.notification-output-card>summary{list-style:none;display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:10px;cursor:pointer}.notification-output-card>summary::-webkit-details-marker{display:none}.notification-output-card>summary .device-icon{width:36px;height:36px;flex-basis:36px}.notification-output-card>summary>span:nth-child(2){display:grid;gap:2px}.notification-output-card>summary b{font-size:.66rem}.notification-output-card>summary small{font-size:.5rem;color:var(--muted)}.notification-output-card[open]>summary{border-bottom:1px solid var(--line)}.notification-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:8px}.notification-rule{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.notification-rule-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.notification-rule-head>div{display:grid;gap:2px}.notification-rule-head b{font-size:.62rem}.notification-rule-head small{font-size:.48rem;color:var(--muted)}.notification-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.notification-check-grid label{display:flex;align-items:center;gap:5px;padding:6px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);font-size:.52rem;font-weight:750}.notification-check-grid input{margin:0}.notification-check-grid.events label{justify-content:center}.notification-delete-row{display:grid;grid-template-columns:minmax(0,1fr) 72px 78px;gap:6px;align-items:center}.notification-delete-row>label{display:flex;align-items:center;gap:5px;font-size:.51rem;color:var(--muted);line-height:1.5}.notification-delete-row input[type=number],.notification-delete-row select{min-width:0;width:100%;padding:7px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:.54rem}.notification-rule .full-button{padding:8px;font-size:.54rem}.notification-job-list{display:grid;gap:5px}.notification-job-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:8px 9px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}.notification-job-list b{font-size:.57rem}.notification-job-list span{font-size:.5rem;color:var(--brand-2);direction:ltr}.notification-job-list small{grid-column:1/-1;font-size:.47rem;color:var(--muted);overflow-wrap:anywhere}@media(max-width:760px){.node-db-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.node-db-output-row{grid-template-columns:minmax(0,1fr) auto}.node-db-output-row>span:not(:last-child){font-size:.5rem}.node-db-output-row>span:nth-of-type(1),.node-db-output-row>span:nth-of-type(2){grid-row:2}.notification-provider-grid,.notification-user-summary,.notification-rules{grid-template-columns:1fr}}@media(max-width:430px){.notification-delete-row{grid-template-columns:1fr 68px}.notification-delete-row select{grid-column:2}.notification-delete-row>label{grid-row:1;grid-column:1/-1}.node-db-output-row{gap:5px}.node-db-output-row>div small{font-size:.45rem}}.notification-sms-inline{border:1px solid var(--line);border-radius:18px;padding:13px;background:var(--surface-2);display:grid;gap:10px}.notification-sms-inline .automation-master{margin:0}.notification-sms-inline .muted-inline{margin:0;color:var(--muted);font-size:.52rem;line-height:1.8}.notification-sms-inline>form{display:grid;gap:10px}.notification-sms-test{border-top:1px solid var(--line);padding-top:9px}.notification-sms-test summary{cursor:pointer;font-size:.6rem;font-weight:800;color:var(--text);list-style:none}.notification-sms-test summary::-webkit-details-marker{display:none}.notification-sms-test form{display:grid;gap:10px;margin-top:10px}.notification-ios-page{display:grid;gap:18px;max-width:980px;margin-inline:auto}.notification-ios-page>.subpage-head{margin-bottom:0}.notification-ios-hero{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:17px 18px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-2) 88%,transparent),color-mix(in srgb,var(--surface) 72%,transparent));box-shadow:0 14px 38px #0000001f;backdrop-filter:blur(22px) saturate(1.18);-webkit-backdrop-filter:blur(22px) saturate(1.18)}.notification-ios-hero-icon{width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#ff4f86,#ff375f);color:#fff;box-shadow:0 8px 20px #ff375f3d}.notification-ios-hero-icon .fa-icon{width:24px;height:24px}.notification-ios-hero h2{font-size:1rem;margin:0 0 4px}.notification-ios-hero p{margin:0;color:var(--muted);font-size:.57rem;line-height:1.8}.notification-ios-hero-status{font-size:.54rem;font-weight:850;padding:8px 10px;border-radius:999px;background:color-mix(in srgb,var(--brand) 15%,transparent);color:var(--brand-2);white-space:nowrap}.notification-ios-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:16px;background:color-mix(in srgb,#f5a623 12%,var(--surface-2));border:1px solid color-mix(in srgb,#f5a623 25%,var(--line));color:color-mix(in srgb,var(--text) 86%,#f5a623);font-size:.53rem;line-height:1.8}.notification-ios-section{display:grid;gap:7px}.notification-ios-section-head{display:flex;align-items:flex-end;justify-content:space-between;padding:0 10px}.notification-ios-section-head h3{margin:0;font-size:.69rem}.notification-ios-section-head span{font-size:.48rem;color:var(--muted)}.notification-ios-group{border:1px solid color-mix(in srgb,var(--line) 84%,transparent);border-radius:23px;overflow:hidden;background:color-mix(in srgb,var(--surface-2) 88%,transparent);box-shadow:0 12px 32px #00000014;backdrop-filter:blur(20px) saturate(1.12);-webkit-backdrop-filter:blur(20px) saturate(1.12)}.notification-ios-disclosure,.notification-ios-user-row,.notification-ios-output{border-bottom:1px solid color-mix(in srgb,var(--line) 76%,transparent)}.notification-ios-disclosure:last-of-type,.notification-ios-user-row:last-child,.notification-ios-output:last-child{border-bottom:0}.notification-ios-disclosure>summary,.notification-ios-user-row>summary,.notification-ios-output>summary,.notification-ios-static-row{list-style:none;display:grid;grid-template-columns:44px minmax(0,1fr) auto auto 16px;align-items:center;gap:10px;padding:11px 13px;min-height:66px;cursor:pointer}.notification-ios-static-row{grid-template-columns:44px minmax(0,1fr) auto auto;cursor:default}.notification-ios-disclosure>summary::-webkit-details-marker,.notification-ios-user-row>summary::-webkit-details-marker,.notification-ios-output>summary::-webkit-details-marker{display:none}.notification-ios-service-icon,.notification-ios-output-icon,.notification-ios-avatar,.notification-ios-job-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;color:#fff}.notification-ios-service-icon.telegram{background:linear-gradient(145deg,#38bdf8,#0a84ff)}.notification-ios-service-icon.bale{background:linear-gradient(145deg,#34d399,#12b76a)}.notification-ios-service-icon.sms{background:linear-gradient(145deg,#a78bfa,#7c3aed)}.notification-ios-output-icon{background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 88%,#fff),var(--brand));color:#fff}.notification-ios-avatar{background:linear-gradient(145deg,#7287a7,#40516a)}.notification-ios-job-icon{width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--brand) 16%,var(--surface));color:var(--brand-2)}.notification-ios-row-main{display:grid;gap:3px;min-width:0}.notification-ios-row-main b{font-size:.65rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-ios-row-main small{font-size:.49rem;color:var(--muted);line-height:1.55;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-ios-state{font-size:.47rem;font-weight:850;color:var(--muted);padding:5px 8px;border-radius:999px;background:var(--surface)}.notification-ios-state.ok{color:#39d98a;background:#22c55e17}.notification-ios-chevron{font-size:1.2rem;color:var(--muted);transform:rotate(0);transition:transform .18s ease}.notification-ios-disclosure[open]>summary .notification-ios-chevron,.notification-ios-user-row[open]>summary .notification-ios-chevron,.notification-ios-output[open]>summary .notification-ios-chevron{transform:rotate(-90deg)}.notification-ios-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px 13px 14px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface) 38%,transparent)}.notification-ios-detail label{display:grid;gap:5px}.notification-ios-detail label>span{font-size:.49rem;color:var(--muted)}.notification-ios-detail input,.notification-ios-detail select,.notification-ios-detail textarea,.notification-ios-test input,.notification-ios-test select,.notification-ios-test textarea{width:100%;min-width:0;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:12px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text);padding:10px;font-size:.56rem;outline:none}.notification-ios-detail input:focus,.notification-ios-test input:focus,.notification-ios-test textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 11%,transparent)}.notification-ios-group-action{padding:11px 13px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.notification-ios-group-action .primary-button{width:100%}.notification-ios-sms-group{display:grid}.notification-ios-help{grid-column:1/-1;margin:0;color:var(--muted);font-size:.49rem;line-height:1.75}.notification-ios-sms-group .notification-ios-detail{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.notification-ios-sms-group .notification-ios-detail .primary-button{grid-column:1/-1}.notification-ios-test{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.notification-ios-test>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:11px 13px;font-size:.57rem;font-weight:800;cursor:pointer}.notification-ios-test>summary::-webkit-details-marker{display:none}.notification-ios-test form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 13px 13px}.notification-ios-test label{display:grid;gap:5px}.notification-ios-test label span{font-size:.49rem;color:var(--muted)}.notification-ios-test .wide,.notification-ios-test .full-button{grid-column:1/-1}.notification-ios-channel-dots{display:flex;gap:4px}.notification-ios-channel-dots i{font-style:normal;width:21px;height:21px;border-radius:7px;display:grid;place-items:center;font-size:.42rem;font-weight:900;background:var(--surface);color:var(--muted);border:1px solid var(--line)}.notification-ios-channel-dots i.on{background:#34d3991c;color:#34d399;border-color:#34d3993d}.notification-ios-user-actions{display:flex;gap:7px;flex-wrap:wrap;padding:11px 13px 13px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface) 35%,transparent)}.notification-ios-user-actions .soft-button{font-size:.49rem;padding:7px 9px}.notification-ios-user-actions>span{font-size:.47rem;color:var(--muted);padding:7px 4px}.notification-ios-output>summary{grid-template-columns:44px minmax(0,1fr) auto 16px}.notification-ios-rule-count{font-size:.47rem;color:var(--muted);white-space:nowrap}.notification-ios-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:10px 11px 12px;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);background:color-mix(in srgb,var(--surface) 30%,transparent)}.notification-ios-rule{display:grid;gap:9px;padding:12px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);border-radius:17px;background:color-mix(in srgb,var(--surface) 92%,transparent);opacity:.72;transition:.16s ease}.notification-ios-rule.enabled{opacity:1;box-shadow:0 8px 22px #0000000f}.notification-ios-rule header{display:flex;align-items:center;justify-content:space-between;gap:8px}.notification-ios-rule header>div{display:grid;gap:2px}.notification-ios-rule header b{font-size:.58rem}.notification-ios-rule header small{font-size:.45rem;color:var(--muted);direction:ltr;text-align:right}.notification-ios-rule-label{font-size:.45rem;color:var(--muted);font-weight:800}.notification-ios-chips{display:flex;gap:6px;flex-wrap:wrap}.notification-ios-chips label{position:relative;display:flex;align-items:center;justify-content:center;min-width:66px;padding:7px 9px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);font-size:.48rem;font-weight:800;cursor:pointer;color:var(--muted)}.notification-ios-chips label.selected{background:color-mix(in srgb,var(--brand) 14%,var(--surface));border-color:color-mix(in srgb,var(--brand) 35%,var(--line));color:var(--brand-2)}.notification-ios-chips input{position:absolute;opacity:0;pointer-events:none}.notification-ios-chips label:has(input:disabled){opacity:.35;cursor:not-allowed}.notification-ios-delete{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:center;padding-top:7px;border-top:1px solid var(--line)}.notification-ios-delete>div:first-child{display:grid;gap:2px}.notification-ios-delete b{font-size:.52rem}.notification-ios-delete small{font-size:.43rem;color:var(--muted)}.notification-ios-delete-time{grid-column:1/-1;display:grid;grid-template-columns:1fr 100px;gap:7px}.notification-ios-delete-time input,.notification-ios-delete-time select{width:100%;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--text);font-size:.5rem}.notification-ios-rule-save{width:100%;font-size:.52rem;padding:9px}.notification-ios-jobs{display:grid}.notification-ios-job{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 12px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.notification-ios-job:last-child{border-bottom:0}.notification-ios-job time{font-size:.43rem;color:var(--muted);direction:ltr}.notification-ios-job em{grid-column:2/-1;font-size:.43rem;color:#ff6b7d;font-style:normal;overflow-wrap:anywhere}.notification-ios-page .switch-control{flex:none}.notification-ios-page .primary-button{border-radius:13px;min-height:40px}@media(max-width:760px){.notification-ios-hero{grid-template-columns:48px minmax(0,1fr)}.notification-ios-hero-status{grid-column:2;justify-self:start}.notification-ios-rules,.notification-ios-detail,.notification-ios-test form{grid-template-columns:1fr}.notification-ios-sms-group .notification-ios-detail .primary-button,.notification-ios-test .wide,.notification-ios-test .full-button{grid-column:auto}.notification-ios-disclosure>summary{grid-template-columns:42px minmax(0,1fr) auto auto 14px}.notification-ios-output>summary{grid-template-columns:42px minmax(0,1fr) auto 14px}}@media(max-width:480px){.notification-ios-page{gap:14px}.notification-ios-hero{padding:14px;border-radius:21px}.notification-ios-group{border-radius:19px}.notification-ios-disclosure>summary,.notification-ios-user-row>summary,.notification-ios-output>summary,.notification-ios-static-row{padding:10px;gap:8px}.notification-ios-disclosure>summary{grid-template-columns:38px minmax(0,1fr) auto 14px}.notification-ios-disclosure>summary>.notification-ios-state{display:none}.notification-ios-service-icon,.notification-ios-output-icon,.notification-ios-avatar{width:38px;height:38px;border-radius:12px}.notification-ios-row-main b{font-size:.6rem}.notification-ios-row-main small{font-size:.45rem}.notification-ios-output>summary{grid-template-columns:38px minmax(0,1fr) 14px}.notification-ios-output>summary>.notification-ios-rule-count{display:none}.notification-ios-user-row>summary{grid-template-columns:38px minmax(0,1fr) auto 14px}.notification-ios-rules{grid-template-columns:1fr;padding:8px}.notification-ios-job{grid-template-columns:30px minmax(0,1fr)}.notification-ios-job time{grid-column:2}}.environment-zone-list{display:grid;gap:6px}.environment-zone-card.offline{opacity:.72}.environment-zone-card.offline .environment-zone-icon{color:var(--muted)}.environment-zone-card.offline .environment-value-glass{border-style:dashed}.universal-dashboard-toggle-row{background:color-mix(in srgb,var(--ios-blue) 3%,transparent)}.universal-dashboard-metrics-row{align-items:center}.universal-dashboard-metric-picker{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.universal-dashboard-metric-picker button{min-height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:10px;background:color-mix(in srgb,var(--surface-3) 66%,transparent);color:var(--muted);display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.58rem;font-weight:850;cursor:pointer}.universal-dashboard-metric-picker button.selected{border-color:color-mix(in srgb,var(--ios-blue) 50%,var(--line));background:color-mix(in srgb,var(--ios-blue) 13%,var(--surface));color:var(--ios-blue);box-shadow:0 0 0 2px color-mix(in srgb,var(--ios-blue) 10%,transparent)}.universal-sensor-icon-picker button{min-height:46px}@media(max-width:719px){.universal-dashboard-metrics-row{grid-template-columns:1fr}.universal-dashboard-metric-picker{justify-content:stretch}.universal-dashboard-metric-picker button{flex:1;justify-content:center}}.fa-lamp-ceiling{-webkit-mask-image:url(/fa/lamp-ceiling.svg);mask-image:url(/fa/lamp-ceiling.svg)}.fa-lamp-desk{-webkit-mask-image:url(/fa/lamp-desk.svg);mask-image:url(/fa/lamp-desk.svg)}.fa-lamp-floor{-webkit-mask-image:url(/fa/lamp-floor.svg);mask-image:url(/fa/lamp-floor.svg)}.fa-spotlight{-webkit-mask-image:url(/fa/spotlight.svg);mask-image:url(/fa/spotlight.svg)}.fa-street-light{-webkit-mask-image:url(/fa/street-light.svg);mask-image:url(/fa/street-light.svg)}.fa-toggle-switch{-webkit-mask-image:url(/fa/toggle-switch.svg);mask-image:url(/fa/toggle-switch.svg)}.fa-plug{-webkit-mask-image:url(/fa/plug.svg);mask-image:url(/fa/plug.svg)}.fa-outlet{-webkit-mask-image:url(/fa/outlet.svg);mask-image:url(/fa/outlet.svg)}.fa-bolt{-webkit-mask-image:url(/fa/bolt.svg);mask-image:url(/fa/bolt.svg)}.fa-clock-digital{-webkit-mask-image:url(/fa/clock-digital.svg);mask-image:url(/fa/clock-digital.svg)}.fa-timer{-webkit-mask-image:url(/fa/timer.svg);mask-image:url(/fa/timer.svg)}.fa-stopwatch{-webkit-mask-image:url(/fa/stopwatch.svg);mask-image:url(/fa/stopwatch.svg)}.fa-door-closed{-webkit-mask-image:url(/fa/door-closed.svg);mask-image:url(/fa/door-closed.svg)}.fa-garage{-webkit-mask-image:url(/fa/garage.svg);mask-image:url(/fa/garage.svg)}.fa-gate{-webkit-mask-image:url(/fa/gate.svg);mask-image:url(/fa/gate.svg)}.fa-lock{-webkit-mask-image:url(/fa/lock.svg);mask-image:url(/fa/lock.svg)}.fa-unlock{-webkit-mask-image:url(/fa/unlock.svg);mask-image:url(/fa/unlock.svg)}.fa-droplet{-webkit-mask-image:url(/fa/droplet.svg);mask-image:url(/fa/droplet.svg)}.fa-faucet{-webkit-mask-image:url(/fa/faucet.svg);mask-image:url(/fa/faucet.svg)}.fa-pump{-webkit-mask-image:url(/fa/pump.svg);mask-image:url(/fa/pump.svg)}.fa-shower{-webkit-mask-image:url(/fa/shower.svg);mask-image:url(/fa/shower.svg)}.fa-fan{-webkit-mask-image:url(/fa/fan.svg);mask-image:url(/fa/fan.svg)}.fa-snowflake{-webkit-mask-image:url(/fa/snowflake.svg);mask-image:url(/fa/snowflake.svg)}.fa-flame{-webkit-mask-image:url(/fa/flame.svg);mask-image:url(/fa/flame.svg)}.fa-thermometer{-webkit-mask-image:url(/fa/thermometer.svg);mask-image:url(/fa/thermometer.svg)}.fa-router{-webkit-mask-image:url(/fa/router.svg);mask-image:url(/fa/router.svg)}.fa-motor{-webkit-mask-image:url(/fa/motor.svg);mask-image:url(/fa/motor.svg)}.fa-speaker{-webkit-mask-image:url(/fa/speaker.svg);mask-image:url(/fa/speaker.svg)}.fa-siren{-webkit-mask-image:url(/fa/siren.svg);mask-image:url(/fa/siren.svg)}.fa-camera{-webkit-mask-image:url(/fa/camera.svg);mask-image:url(/fa/camera.svg)}.fa-building{-webkit-mask-image:url(/fa/building.svg);mask-image:url(/fa/building.svg)}.fa-warehouse{-webkit-mask-image:url(/fa/warehouse.svg);mask-image:url(/fa/warehouse.svg)}.fa-leaf{-webkit-mask-image:url(/fa/leaf.svg);mask-image:url(/fa/leaf.svg)}.fa-seedling{-webkit-mask-image:url(/fa/seedling.svg);mask-image:url(/fa/seedling.svg)}.universal-ios-page{--ios-glass:color-mix(in srgb,var(--surface) 76%,transparent);--ios-glass-strong:color-mix(in srgb,var(--surface-2) 88%,transparent);--ios-hairline:color-mix(in srgb,var(--line) 56%,transparent);position:relative;isolation:isolate}.universal-ios-page:before{content:"";position:fixed;z-index:-1;inset:58px 0 0;pointer-events:none;background:radial-gradient(52rem 34rem at 88% 4%,color-mix(in srgb,var(--ios-blue) 11%,transparent),transparent 68%),radial-gradient(42rem 30rem at 8% 34%,color-mix(in srgb,var(--ios-purple) 8%,transparent),transparent 70%)}.universal-ios-page .universal-ios-screen{max-width:940px;padding:14px 16px 30px}.universal-ios-titlebar{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;margin:8px 0 22px;padding:14px;border:1px solid var(--ios-hairline);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 83%,transparent),color-mix(in srgb,var(--surface-2) 64%,transparent));box-shadow:0 18px 50px #00000017,inset 0 1px #ffffff29;backdrop-filter:blur(28px) saturate(165%);-webkit-backdrop-filter:blur(28px) saturate(165%)}.universal-ios-title-node-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,#2f95ff,#5e5ce6);box-shadow:0 10px 24px #0a84ff38,inset 0 1px #ffffff47}.universal-ios-title-node-icon .fa-icon{width:24px;height:24px}.universal-ios-title-copy h2{font-size:1.34rem;letter-spacing:-.035em}.universal-ios-title-copy>small{margin-top:5px}.universal-ios-title-actions{gap:7px}.universal-ios-online,.universal-ios-revision{border-color:var(--ios-hairline);background:color-mix(in srgb,var(--surface) 68%,transparent);box-shadow:inset 0 1px #ffffff1f;backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}.universal-ios-section{margin-top:22px}.universal-ios-section-title{padding:0 12px 8px}.universal-ios-section-title>div>span{font-size:.74rem;letter-spacing:-.01em}.universal-ios-list-shell,.universal-ios-settings-list{border:1px solid var(--ios-hairline);border-radius:25px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 89%,transparent),color-mix(in srgb,var(--surface) 72%,transparent));box-shadow:0 14px 38px #0001,inset 0 1px #ffffff1f;backdrop-filter:blur(26px) saturate(155%);-webkit-backdrop-filter:blur(26px) saturate(155%)}.universal-ios-setting-row{min-height:64px;padding:10px 16px}.universal-ios-setting-row:not(:last-child):after{inset-inline:16px 0;background:color-mix(in srgb,var(--line) 48%,transparent)}.universal-ios-setting-row>input,.universal-ios-setting-row>select,.universal-ios-number-with-unit input{min-height:38px;border:1px solid color-mix(in srgb,var(--line) 42%,transparent);border-radius:13px;background:color-mix(in srgb,var(--surface-3) 62%,transparent);box-shadow:inset 0 1px #ffffff14}.universal-ios-item-summary{min-height:70px;padding:9px 15px}.universal-ios-item[open]>.universal-ios-item-summary{background:linear-gradient(90deg,color-mix(in srgb,var(--ios-blue) 5%,transparent),transparent)}.universal-ios-icon{width:38px;height:38px;border-radius:13px;box-shadow:0 7px 18px #0a84ff29,inset 0 1px #ffffff47}.universal-ios-item-editor{padding:0 12px 14px;background:color-mix(in srgb,var(--surface) 24%,transparent)}.universal-ios-item-editor .universal-ios-settings-list{border-radius:21px;background:color-mix(in srgb,var(--surface-2) 72%,transparent)}.universal-ios-add-menu>summary{min-height:34px;padding:0 12px;border:1px solid color-mix(in srgb,var(--ios-blue) 18%,transparent);background:color-mix(in srgb,var(--ios-blue) 9%,var(--surface));box-shadow:inset 0 1px #ffffff1f}.universal-ios-add-popover{width:min(340px,82vw);border-radius:21px;padding:8px;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:blur(34px) saturate(175%);-webkit-backdrop-filter:blur(34px) saturate(175%)}.universal-ios-add-popover button{min-height:39px;border-radius:13px}.universal-ios-savebar{border-radius:25px;padding:9px;background:color-mix(in srgb,var(--surface) 70%,transparent);box-shadow:0 20px 54px #0000002b,inset 0 1px #ffffff26;backdrop-filter:blur(34px) saturate(180%);-webkit-backdrop-filter:blur(34px) saturate(180%)}.universal-ios-primary-action,.universal-ios-secondary-action{min-height:40px;border-radius:14px}.universal-ios-primary-action{background:linear-gradient(145deg,#148cff,#006ee6);box-shadow:0 7px 20px #0a84ff3b,inset 0 1px #ffffff40}.universal-ios-icon-row{align-items:start}.universal-icon-disclosure{width:100%;min-width:0;justify-self:stretch}.universal-icon-disclosure>summary{list-style:none;display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;gap:9px;min-height:48px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--line) 50%,transparent);border-radius:15px;background:color-mix(in srgb,var(--surface-3) 58%,transparent);cursor:pointer;user-select:none;box-shadow:inset 0 1px #ffffff14}.universal-icon-disclosure>summary::-webkit-details-marker{display:none}.universal-icon-disclosure-current{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;color:var(--ios-blue);background:color-mix(in srgb,var(--ios-blue) 12%,var(--surface))}.universal-icon-disclosure-copy{display:grid!important;gap:1px!important;min-width:0}.universal-icon-disclosure-copy b{font-size:.59rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-icon-disclosure-copy small{font-size:.46rem!important;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.universal-icon-disclosure-chevron{color:var(--muted);transition:transform .18s ease}.universal-icon-disclosure[open] .universal-icon-disclosure-chevron{transform:rotate(90deg)}.universal-icon-disclosure-panel{max-height:390px;overflow:auto;margin-top:7px;padding:8px;border:1px solid color-mix(in srgb,var(--line) 52%,transparent);border-radius:18px;background:color-mix(in srgb,var(--surface) 88%,transparent);box-shadow:0 18px 45px #00000024,inset 0 1px #ffffff1a;backdrop-filter:blur(30px) saturate(170%);-webkit-backdrop-filter:blur(30px) saturate(170%);scrollbar-width:thin}.universal-icon-choice-group{display:grid;gap:5px}.universal-icon-choice-group+.universal-icon-choice-group{margin-top:10px;padding-top:9px;border-top:1px solid color-mix(in srgb,var(--line) 44%,transparent)}.universal-icon-choice-group h4{position:sticky;top:-8px;z-index:2;margin:0;padding:6px 6px 4px;color:var(--muted);background:color-mix(in srgb,var(--surface) 91%,transparent);font-size:.47rem;font-weight:900}.universal-icon-choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.universal-icon-choice-list button{min-width:0;min-height:43px;display:grid;grid-template-columns:31px minmax(0,1fr) 14px;align-items:center;gap:7px;padding:5px 7px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--text);cursor:pointer;text-align:right;font:inherit}.universal-icon-choice-list button:hover{background:color-mix(in srgb,var(--ios-blue) 7%,transparent)}.universal-icon-choice-list button.selected{border-color:color-mix(in srgb,var(--ios-blue) 26%,transparent);background:color-mix(in srgb,var(--ios-blue) 11%,var(--surface));color:var(--ios-blue)}.universal-icon-choice-mark{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;color:currentColor;background:color-mix(in srgb,currentColor 8%,var(--surface))}.universal-icon-choice-list button>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.5rem;font-weight:760}.universal-icon-choice-list button>.fa-check{justify-self:end}@media(max-width:719px){.universal-ios-page .universal-ios-screen{padding:8px 6px 98px}.universal-ios-titlebar{grid-template-columns:46px minmax(0,1fr);gap:10px;margin:6px 0 18px;padding:12px;border-radius:24px}.universal-ios-title-node-icon{width:46px;height:46px;border-radius:15px}.universal-ios-title-actions{grid-column:1/-1;display:flex;justify-content:space-between;width:100%;padding-top:2px}.universal-ios-section{margin-top:19px}.universal-ios-setting-row,.universal-ios-item-editor .universal-ios-setting-row{grid-template-columns:minmax(0,1fr) minmax(112px,44%);padding:9px 12px}.universal-ios-item-summary{padding:8px 11px;min-height:66px}.universal-ios-icon{width:35px;height:35px}.universal-icon-disclosure-panel{max-height:52vh}.universal-icon-choice-list{grid-template-columns:1fr}}@media(max-width:430px){.universal-ios-titlebar{display:grid}.universal-ios-title-actions{display:flex}.universal-ios-icon-row{grid-template-columns:1fr!important}.universal-icon-disclosure{margin-top:2px}}.node-guide-method-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px}.node-guide-method-overview article{display:flex;align-items:flex-start;gap:11px;padding:14px;border:1px solid var(--line);border-radius:19px;background:color-mix(in srgb,var(--surface) 92%,transparent)}.node-guide-method-overview article b{display:block;margin-bottom:4px}.node-guide-method-overview article p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.75}.node-guide-method-badge{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;flex:0 0 auto;color:#0a84ff;background:#0a84ff1c}.node-guide-method-badge.ino{color:#af52de;background:#af52de1a}.node-guide-target-v2{padding:0;overflow:hidden}.node-guide-target-v2>.node-guide-target-head{padding:16px 17px;margin:0}.node-guide-supported-pill{margin-inline-start:auto;padding:6px 9px;border-radius:999px;background:#30b45a1a;color:#30b45a;font-size:.62rem;font-weight:850;white-space:nowrap}.node-guide-method-details{border-top:1px solid var(--line)}.node-guide-method-details>summary{list-style:none;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;background:color-mix(in srgb,var(--surface-2) 70%,transparent)}.node-guide-method-details>summary::-webkit-details-marker{display:none}.node-guide-method-details>summary>div{display:grid;gap:2px}.node-guide-method-details>summary b{font-size:.83rem}.node-guide-method-details>summary small{color:var(--muted);font-size:.68rem}.node-guide-method-details>summary>.chevron{font-size:1.2rem;color:var(--muted);transition:transform .18s ease}.node-guide-method-details[open]>summary>.chevron{transform:rotate(-90deg)}.node-guide-method-summary-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#0a84ff;background:#0a84ff1a}.node-guide-method-summary-icon.ino{color:#af52de;background:#af52de1a}.node-guide-method-body{display:grid;gap:10px;padding:12px 14px 15px;background:color-mix(in srgb,var(--surface) 93%,transparent)}.node-guide-method-body .node-guide-command{box-shadow:none}.node-guide-target-notes{margin:0;padding:12px 37px 15px 17px;color:var(--muted);line-height:1.85;font-size:.78rem;border-top:1px solid var(--line)}.node-guide-ino-download{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid rgba(175,82,222,.18);border-radius:16px;background:#af52de0f}.node-guide-ino-file-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:#af52de;background:#af52de1a}.node-guide-ino-download>div{min-width:0;display:grid;gap:3px}.node-guide-ino-download b{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-guide-ino-download small{color:var(--muted);font-size:.66rem}.node-guide-ino-download a,.node-guide-bundle>a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:11px;background:#0a84ff;color:#fff;text-decoration:none;font-size:.72rem;font-weight:850}.node-guide-hash{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.node-guide-hash>span{color:var(--muted);font-size:.66rem}.node-guide-hash code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem}.node-guide-hash button{border:0;border-radius:9px;padding:6px 9px;background:#0a84ff1a;color:#0a84ff;font:inherit;font-size:.66rem;font-weight:800;cursor:pointer}.node-guide-ide-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.node-guide-ide-card>div{display:grid;gap:4px;padding:11px}.node-guide-ide-card>div+div{border-inline-start:1px solid var(--line)}.node-guide-ide-card span{color:var(--muted);font-size:.63rem}.node-guide-ide-card b,.node-guide-ide-card code{font-size:.72rem;overflow-wrap:anywhere}.node-guide-settings{padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.node-guide-settings>b{display:block;margin-bottom:7px}.node-guide-settings ul{margin:0;padding:0 20px 0 0;color:var(--muted);line-height:1.9;font-size:.76rem}.node-guide-bundle{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 15px;border:1px solid rgba(10,132,255,.18);border-radius:20px;background:linear-gradient(145deg,#0a84ff14,#af52de0d)}.node-guide-bundle-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(145deg,#0a84ff,#5e5ce6)}.node-guide-bundle>div{min-width:0}.node-guide-bundle b{display:block;margin-bottom:3px}.node-guide-bundle p{margin:0 0 5px;color:var(--muted);font-size:.75rem}.node-guide-bundle code{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;color:var(--muted)}@media(max-width:720px){.node-guide-method-overview{grid-template-columns:1fr}.node-guide-supported-pill{display:none}.node-guide-ide-card{grid-template-columns:1fr}.node-guide-ide-card>div+div{border-inline-start:0;border-top:1px solid var(--line)}.node-guide-bundle{grid-template-columns:44px minmax(0,1fr)}.node-guide-bundle-icon{width:42px;height:42px}.node-guide-bundle>a{grid-column:1/-1;width:100%}.node-guide-ino-download{grid-template-columns:38px minmax(0,1fr)}.node-guide-ino-download>a{grid-column:1/-1;width:100%}}.node-guide-verified{display:flex;align-items:flex-start;gap:11px;margin:0 0 18px;padding:13px 15px;border:1px solid rgba(48,180,90,.24);border-radius:18px;background:#30b45a14}.node-guide-verified>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#30b45a1f;color:#30b45a}.node-guide-verified b{display:block;margin-bottom:3px}.node-guide-verified p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.7}.node-guide-alert ul{margin:7px 0 0;padding:0 20px 0 0;color:var(--muted);line-height:1.9;font-size:.79rem}.node-guide-alert li+li{margin-top:3px}.node-guide-supported-pill.verified{background:#30b45a29;box-shadow:inset 0 0 0 1px #30b45a21}.node-guide-hardware-block{display:grid;gap:9px;padding:0 14px 14px}.node-guide-hardware-block .node-guide-settings{margin:0}.node-guide-steps.compact{border-radius:15px}.node-guide-steps.compact li{padding-top:10px;padding-bottom:10px;font-size:.76rem}.node-guide-snap-warning{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;border:1px solid rgba(255,159,10,.22);border-radius:14px;background:#ff9f0a12;color:var(--muted);font-size:.75rem;line-height:1.75}.node-guide-snap-warning>.fa-icon{color:#ff9f0a;flex:0 0 auto;margin-top:3px}.node-guide-method-details.verified-path>summary{background:#30b45a0e}.node-guide-method-summary-icon.verified{color:#30b45a;background:#30b45a1a}.node-guide-inline-note{margin:0;padding:11px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);font-size:.76rem;line-height:1.8}.node-guide-troubleshooting{display:grid;gap:10px}.node-guide-trouble{border:1px solid var(--line);border-radius:18px;background:var(--surface);overflow:hidden}.node-guide-trouble>summary{list-style:none;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:start;gap:10px;padding:13px 14px;cursor:pointer}.node-guide-trouble>summary::-webkit-details-marker{display:none}.node-guide-trouble>summary>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:#ff9f0a;background:#ff9f0a1a}.node-guide-trouble>summary>div{display:grid;gap:4px}.node-guide-trouble>summary b{font-size:.82rem}.node-guide-trouble>summary small{color:var(--muted);font-size:.72rem;line-height:1.7}.node-guide-trouble>summary>i{font-style:normal;color:var(--muted);font-size:1.2rem;transition:transform .18s ease}.node-guide-trouble[open]>summary>i{transform:rotate(-90deg)}.node-guide-trouble-body{display:grid;gap:9px;padding:0 12px 12px}.node-guide-trouble-body .node-guide-command{box-shadow:none}@media(max-width:720px){.node-guide-verified{align-items:flex-start}.node-guide-hardware-block{padding-inline:10px}.node-guide-alert ul{font-size:.75rem}.node-guide-trouble>summary{grid-template-columns:32px minmax(0,1fr) 16px}}.homekit-health{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 10px}.homekit-health>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:13px;background:var(--surface-2);text-align:center}.homekit-health span{font-size:.6rem;color:var(--muted)}.homekit-health b{font-size:.9rem}.homekit-health>div.warn{border-color:color-mix(in srgb,var(--warn) 40%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--surface))}.homekit-health>div.warn b{color:var(--warn)}.homekit-guide-button{margin:0 0 16px}.apple-home-guide-page{overflow:hidden}.apple-home-guide-hero{display:flex;align-items:center;gap:13px;padding:14px;border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--brand-2) 10%,var(--surface)),color-mix(in srgb,var(--surface-2) 90%,transparent));border:1px solid var(--line);margin-bottom:10px}.apple-home-guide-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:var(--surface);color:var(--brand-2);box-shadow:var(--shadow-soft)}.apple-home-guide-hero b{font-size:.94rem}.apple-home-guide-hero p{margin:4px 0 0;color:var(--muted);font-size:.72rem;line-height:1.8}.apple-home-guide-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.apple-home-guide-actions a{min-height:44px}.apple-home-guide-warning{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border-radius:14px;background:color-mix(in srgb,var(--warn) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--warn) 24%,var(--line));font-size:.7rem;line-height:1.8;margin-bottom:12px}.apple-home-guide-warning svg{flex:0 0 auto;margin-top:2px}.apple-home-guide-steps{display:grid;gap:8px}.apple-home-guide-steps article{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}.apple-home-guide-steps article>span{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:var(--brand-2);color:#fff;font-size:.72rem;font-weight:900}.apple-home-guide-steps b{font-size:.8rem}.apple-home-guide-steps p{font-size:.68rem;color:var(--muted);line-height:1.8;margin:4px 0 0}.apple-home-guide-trouble{margin-top:18px}.apple-home-guide-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px}.apple-home-guide-checks>div{padding:11px;border-radius:15px;background:var(--surface-2);border:1px solid var(--line)}.apple-home-guide-checks b{font-size:.76rem}.apple-home-guide-checks p{font-size:.66rem;line-height:1.8;color:var(--muted);margin:4px 0 0}.apple-home-guide-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.apple-home-guide-groups article{padding:11px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.apple-home-guide-groups b{font-size:.78rem;color:var(--brand-2)}.apple-home-guide-groups p{font-size:.64rem;line-height:1.7;color:var(--muted);margin:4px 0 0}@media(max-width:720px){.homekit-health{grid-template-columns:repeat(2,1fr)}.homekit-health>div:first-child{grid-column:1/-1}.apple-home-guide-actions,.apple-home-guide-checks,.apple-home-guide-groups{grid-template-columns:1fr}.apple-home-guide-hero{align-items:flex-start}}.home-sections-page{overflow:hidden}.home-section-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 12px}.home-section-stats>div{display:grid;gap:4px;padding:11px 12px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.home-section-stats span{font-size:.65rem;color:var(--muted)}.home-section-stats b{font-size:.9rem}.home-section-stats>div.ok b{color:var(--success)}.home-section-stats>div.warn b{color:var(--warn)}.apple-home-sync-error{display:flex;align-items:flex-start;gap:9px;margin:0 0 12px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--warn) 28%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--warn) 9%,var(--surface));color:var(--muted);font-size:.72rem;line-height:1.8}.apple-home-sync-error .fa-icon{flex:0 0 auto;margin-top:2px;color:var(--warn)}.home-section-create{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin:0 0 10px;padding:12px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2)}.home-section-create label,.home-section-name-edit label{display:grid;gap:6px}.home-section-create label>span,.home-section-name-edit label>span{font-size:.66rem;color:var(--muted)}.home-section-create input,.home-section-name-edit input,.home-section-entity select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;padding:0 11px;outline:none}.home-section-create input:focus,.home-section-name-edit input:focus,.home-section-entity select:focus{border-color:color-mix(in srgb,var(--brand-2) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-2) 10%,transparent)}.home-section-create .primary-button{min-height:40px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.home-section-list{display:grid;gap:9px}.home-section-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.home-section-card>summary{list-style:none;display:grid;grid-template-columns:40px minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:12px 13px;cursor:pointer}.home-section-card>summary::-webkit-details-marker{display:none}.home-section-summary-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;color:var(--brand-2);background:color-mix(in srgb,var(--brand-2) 10%,var(--surface-2))}.home-section-card>summary>span:nth-child(2){min-width:0;display:grid;gap:3px}.home-section-card>summary b{font-size:.84rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-section-card>summary small{font-size:.65rem;color:var(--muted)}.home-section-card>summary>i{font-style:normal;color:var(--muted);font-size:1.2rem;transition:transform .18s ease}.home-section-card[open]>summary>i{transform:rotate(-90deg)}.home-section-runtime{font-size:.6rem;font-style:normal;padding:4px 7px;border-radius:999px;border:1px solid var(--line);white-space:nowrap}.home-section-runtime.running{color:var(--success);background:color-mix(in srgb,var(--success) 8%,var(--surface-2))}.home-section-runtime.waiting{color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface-2))}.home-section-body{display:grid;gap:11px;padding:0 12px 13px;border-top:1px solid var(--line)}.home-section-name-edit{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;padding-top:12px}.home-section-name-edit .soft-button,.home-section-name-edit .danger-button{min-height:40px;white-space:nowrap}.home-section-code-hint{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border-radius:13px;background:color-mix(in srgb,var(--brand-2) 7%,var(--surface-2));border:1px solid color-mix(in srgb,var(--brand-2) 15%,var(--line));font-size:.68rem;line-height:1.75;color:var(--muted)}.home-section-code-hint .fa-icon{color:var(--brand-2);margin-top:2px;flex:0 0 auto}.home-section-subhead{display:flex;justify-content:space-between;align-items:end;margin-top:2px}.home-section-subhead h3{margin:0;font-size:.78rem}.home-section-subhead p{margin:4px 0 0;color:var(--muted);font-size:.65rem;line-height:1.7}.home-section-subhead.sensor{padding-top:4px;border-top:1px solid var(--line)}.home-section-entities{display:grid;gap:7px}.home-section-entity{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(105px,138px) 44px;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);transition:border-color .15s ease,background .15s ease}.home-section-entity.selected{border-color:color-mix(in srgb,var(--brand-2) 28%,var(--line));background:color-mix(in srgb,var(--brand-2) 5%,var(--surface-2))}.home-section-entity>.device-icon{width:36px;height:36px}.home-section-entity-main{min-width:0;display:grid;gap:3px}.home-section-entity-main b{font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-section-entity-main small{font-size:.62rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-section-entity select{min-height:35px;font-size:.68rem;padding-inline:8px}.home-section-entity>.switch-control:last-child{justify-self:end}.home-section-entity:has(>.switch-control:nth-child(3)){grid-template-columns:36px minmax(0,1fr) 44px}.home-section-empty{display:grid;place-items:center;text-align:center;gap:6px;padding:25px 14px;border:1px dashed var(--line);border-radius:17px;background:var(--surface-2);color:var(--muted)}.home-section-empty>.fa-icon{width:28px;height:28px;color:var(--brand-2)}.home-section-empty b{color:var(--text);font-size:.82rem}.home-section-empty p{margin:0;font-size:.69rem;line-height:1.75}.home-section-empty.compact{margin:10px 0 0;padding:18px 12px}.apple-home-guide-actions.single{grid-template-columns:1fr}.apple-home-guide-code-title{display:flex;align-items:end;justify-content:space-between;margin:18px 0 8px}.apple-home-guide-code-title h2{margin:0;font-size:.92rem}.apple-home-guide-code-title p{margin:4px 0 0;font-size:.66rem;color:var(--muted)}.apple-home-code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}.apple-home-code-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);border-radius:17px;background:var(--surface-2)}.apple-home-code-card>div{min-width:0;display:grid;gap:2px}.apple-home-code-card span{font-size:.61rem;color:var(--muted)}.apple-home-code-card b{font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apple-home-code-card small{font-size:.61rem;color:var(--muted)}.apple-home-code-card code{grid-column:1/-1;direction:ltr;text-align:center;letter-spacing:.14em;font-size:1.18rem;font-weight:900;padding:11px;border:1px solid color-mix(in srgb,var(--brand-2) 22%,var(--line));border-radius:13px;background:var(--surface);color:var(--text)}.apple-home-code-card .soft-button{grid-column:1/-1;min-height:37px;display:flex;align-items:center;justify-content:center;gap:7px}.apple-home-code-state{justify-self:end;font-size:.6rem;font-weight:800;padding:5px 8px;border-radius:999px;border:1px solid var(--line)}.apple-home-code-state.ok{color:var(--success);background:color-mix(in srgb,var(--success) 8%,var(--surface))}.apple-home-code-state.warn{color:var(--warn);background:color-mix(in srgb,var(--warn) 8%,var(--surface))}.apple-home-code-card.is-waiting code{opacity:.58}@media(max-width:720px){.home-section-stats{grid-template-columns:1fr 1fr}.home-section-stats>div:last-child{grid-column:1/-1}.home-section-runtime{display:none}.home-section-create{grid-template-columns:1fr}.home-section-create .primary-button{width:100%;justify-content:center}.home-section-name-edit{grid-template-columns:1fr 1fr}.home-section-name-edit label{grid-column:1/-1}.home-section-entity{grid-template-columns:34px minmax(0,1fr) 42px}.home-section-entity select{grid-column:2/4;grid-row:2}.home-section-entity>.switch-control:last-child{grid-column:3;grid-row:1}.home-section-entity:has(>.switch-control:nth-child(3)){grid-template-columns:34px minmax(0,1fr) 42px}.apple-home-code-grid{grid-template-columns:1fr}}.permission-simplify-note{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;margin:10px 0 2px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--brand-soft) 46%,var(--surface));color:var(--muted);font-size:.66rem;line-height:1.65}.permission-simplify-note .fa-icon{color:var(--brand-2)}.relay-access-panel{grid-column:1/-1;margin:8px 0 2px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 52%,transparent);overflow:hidden}.relay-access-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border-bottom:1px solid color-mix(in srgb,var(--line) 66%,transparent)}.relay-access-title>div{display:grid;gap:2px}.relay-access-title b{font-size:.68rem}.relay-access-title small{font-size:.52rem;color:var(--muted)}.relay-access-title .fa-icon{color:var(--brand-2)}.relay-access-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.relay-access-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:380px}.relay-access-table th,.relay-access-table td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent);text-align:center}.relay-access-table th{font-size:.55rem;color:var(--muted);font-weight:850;background:color-mix(in srgb,var(--surface-3) 40%,transparent)}.relay-access-table th:first-child,.relay-access-table td:first-child{text-align:right;width:58%}.relay-access-table tbody tr:last-child td{border-bottom:0}.relay-access-table tr.inactive{opacity:.58}.relay-access-user{display:grid;gap:2px;min-width:0}.relay-access-user b{font-size:.63rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relay-access-user small{font-size:.49rem;color:var(--muted);direction:ltr;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relay-access-switch{position:relative;display:inline-flex;width:38px;height:23px;border-radius:999px;background:var(--surface-3);border:1px solid var(--line);cursor:pointer;vertical-align:middle;transition:.18s ease}.relay-access-switch input{position:absolute;opacity:0;pointer-events:none}.relay-access-switch span{position:absolute;top:2px;right:2px;width:17px;height:17px;border-radius:50%;background:var(--muted);transition:.18s ease}.relay-access-switch.checked{background:color-mix(in srgb,var(--brand) 72%,var(--surface));border-color:color-mix(in srgb,var(--brand) 55%,var(--line))}.relay-access-switch.checked span{right:17px;background:#fff}.relay-access-switch.disabled{opacity:.4;cursor:not-allowed}.relay-access-empty,.relay-access-note{display:flex;align-items:center;gap:8px;padding:12px 13px;color:var(--muted);font-size:.61rem}.relay-access-footnote{margin:0;padding:9px 13px 11px;border-top:1px solid color-mix(in srgb,var(--line) 48%,transparent);color:var(--muted);font-size:.49rem;line-height:1.7}@media(max-width:430px){.relay-access-table{min-width:330px}.relay-access-table th,.relay-access-table td{padding:9px 8px}.relay-access-table th:first-child,.relay-access-table td:first-child{width:54%}.relay-access-panel{border-radius:14px}.permission-simplify-note{font-size:.61rem}}body.home-locked{--ounce-home-shell-max:900px;--ounce-home-shell-gutter:14px}body.home-locked .header-inner,body.home-locked .app-main{width:min(100%,var(--ounce-home-shell-max));margin-inline:auto}body.home-locked .header-inner,body.home-locked .app-main{padding-inline:var(--ounce-home-shell-gutter)}@media(min-width:720px){body.home-locked{--ounce-home-shell-gutter:20px}}@media(max-width:460px){body.home-locked{--ounce-home-shell-gutter:9px}}.node-manager-card.health-healthy{border-color:color-mix(in srgb,var(--good) 18%,var(--line));background:color-mix(in srgb,var(--good) 3%,var(--surface))}.node-manager-card.health-attention{border-color:color-mix(in srgb,var(--warn) 24%,var(--line));background:color-mix(in srgb,var(--warn) 4%,var(--surface))}.node-manager-card.health-offline{border-color:color-mix(in srgb,var(--bad) 20%,var(--line));background:color-mix(in srgb,var(--bad) 3%,var(--surface))}.node-manager-card-health{display:grid;gap:3px;justify-items:end;min-width:88px}.node-manager-card-health small{font-size:.46rem;color:var(--muted);white-space:nowrap}.node-health-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;font-size:.52rem;font-weight:900;white-space:nowrap;border:1px solid var(--line);background:var(--surface)}.node-health-badge i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 12%,transparent)}.node-health-badge.healthy{color:var(--good);border-color:color-mix(in srgb,var(--good) 24%,var(--line));background:color-mix(in srgb,var(--good) 7%,var(--surface))}.node-health-badge.attention{color:color-mix(in srgb,var(--warn) 76%,var(--text));border-color:color-mix(in srgb,var(--warn) 28%,var(--line));background:color-mix(in srgb,var(--warn) 8%,var(--surface))}.node-health-badge.offline{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 25%,var(--line));background:color-mix(in srgb,var(--bad) 7%,var(--surface))}.node-manager-hero.healthy{border-color:color-mix(in srgb,var(--good) 18%,var(--line))}.node-manager-hero.attention{border-color:color-mix(in srgb,var(--warn) 28%,var(--line))}.node-manager-hero.offline{border-color:color-mix(in srgb,var(--bad) 24%,var(--line))}.node-health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:8px 0 10px}.node-health-grid>div{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);min-width:0}.node-health-grid>div>span{display:flex;align-items:center;gap:5px;font-size:.5rem;color:var(--muted)}.node-health-grid>div>b{font-size:.72rem;overflow-wrap:anywhere}.node-health-grid>div>small{font-size:.47rem;color:var(--muted);overflow-wrap:anywhere}.node-health-grid>div.good{border-color:color-mix(in srgb,var(--good) 22%,var(--line));background:color-mix(in srgb,var(--good) 5%,var(--surface-2))}.node-health-grid>div.warn{border-color:color-mix(in srgb,var(--warn) 26%,var(--line));background:color-mix(in srgb,var(--warn) 6%,var(--surface-2))}.node-health-grid>div.bad{border-color:color-mix(in srgb,var(--bad) 24%,var(--line));background:color-mix(in srgb,var(--bad) 5%,var(--surface-2))}.node-health-alerts{margin:8px 0 10px;padding:10px;border:1px solid color-mix(in srgb,var(--warn) 25%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--warn) 4%,var(--surface))}.node-health-alert-list{display:grid;gap:6px;margin-top:8px}.node-health-alert{display:flex;align-items:flex-start;gap:7px;padding:8px 9px;border-radius:11px;background:var(--surface-2);font-size:.56rem;line-height:1.7}.node-health-alert.warning{color:color-mix(in srgb,var(--warn) 78%,var(--text))}.node-health-alert.critical{color:var(--bad)}.node-health-ok{display:flex;align-items:center;gap:8px;margin:8px 0 10px;padding:10px;border:1px solid color-mix(in srgb,var(--good) 22%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--good) 5%,var(--surface));color:var(--good)}.node-health-ok>div{display:grid;gap:2px}.node-health-ok b{font-size:.61rem}.node-health-ok small{font-size:.49rem;color:var(--muted)}.node-health-facts{margin-bottom:12px}.node-health-facts>div{min-height:54px}.node-command-count{min-width:26px;height:26px;border-radius:999px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line);font-size:.55rem;font-weight:900}.node-command-history{display:grid;gap:6px}.node-command-row{display:grid;grid-template-columns:minmax(150px,1.5fr) minmax(64px,.55fr) auto minmax(118px,.75fr);align-items:center;gap:7px;padding:8px 9px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.node-command-main{display:grid;gap:2px;min-width:0}.node-command-main b{font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-command-main small{font-size:.46rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-command-row>span{font-size:.51rem}.node-command-row>time{font-size:.46rem;color:var(--muted);direction:ltr;text-align:left}.node-command-status{display:inline-flex;justify-content:center;padding:4px 7px;border-radius:999px;font-weight:850;border:1px solid var(--line);white-space:nowrap}.node-command-status.done{color:var(--good);border-color:color-mix(in srgb,var(--good) 22%,var(--line));background:color-mix(in srgb,var(--good) 5%,var(--surface))}.node-command-status.failed,.node-command-status.expired{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 22%,var(--line));background:color-mix(in srgb,var(--bad) 5%,var(--surface))}.node-command-status.pending,.node-command-status.claimed{color:color-mix(in srgb,var(--warn) 78%,var(--text));border-color:color-mix(in srgb,var(--warn) 26%,var(--line));background:color-mix(in srgb,var(--warn) 5%,var(--surface))}.node-command-message{grid-column:1/-1;font-size:.47rem;color:var(--muted);border-top:1px dashed var(--line);padding-top:5px;overflow-wrap:anywhere}@media(min-width:760px){.node-health-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:620px){.node-manager-card-health{min-width:72px}.node-command-row{grid-template-columns:minmax(0,1fr) auto}.node-command-row>time{grid-column:1}.node-command-row>.node-command-status{grid-column:2;grid-row:1}.node-command-row>span:not(.node-command-status){grid-column:2;grid-row:2;text-align:left}.node-command-message{grid-column:1/-1}.node-health-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.node-health-grid{grid-template-columns:1fr}.node-manager-card{grid-template-columns:34px minmax(0,1fr) 14px}.node-manager-card-health{grid-column:2;justify-items:start;grid-row:2}.node-manager-card .chevron{grid-column:3;grid-row:1/3}.node-command-row{grid-template-columns:1fr auto}}:root{--ounce-pwa-shell-max:900px;--ounce-pwa-shell-gutter:14px}.header-inner,.app-main{width:min(100%,var(--ounce-pwa-shell-max));margin-inline:auto}.header-inner,.app-main{padding-inline:var(--ounce-pwa-shell-gutter)}.node-manager-card-health small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis}@media(min-width:720px){:root{--ounce-pwa-shell-gutter:20px}}@media(max-width:460px){:root{--ounce-pwa-shell-gutter:9px}.node-manager-card-health small{max-width:180px;white-space:normal;line-height:1.45}}.node-network-link{margin-top:10px}.node-network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.node-network-grid>div{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);min-width:0}.node-network-grid span{font-size:.5rem;color:var(--muted)}.node-network-grid b{font-size:.72rem;overflow-wrap:anywhere}.node-network-grid small{font-size:.47rem;color:var(--muted);overflow-wrap:anywhere}.node-network-grid>div.good{border-color:color-mix(in srgb,var(--good) 22%,var(--line));background:color-mix(in srgb,var(--good) 5%,var(--surface-2))}.node-network-grid>div.warn{border-color:color-mix(in srgb,var(--warn) 26%,var(--line));background:color-mix(in srgb,var(--warn) 6%,var(--surface-2))}.node-network-grid>div.bad{border-color:color-mix(in srgb,var(--bad) 24%,var(--line));background:color-mix(in srgb,var(--bad) 5%,var(--surface-2))}.node-network-legacy-note,.node-network-ap-note{display:flex;align-items:flex-start;gap:7px;margin-top:8px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--warn) 24%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--warn) 7%,var(--surface));color:var(--muted);font-size:.58rem;line-height:1.7}.node-network-ap-note{border-color:var(--line);background:var(--surface-2)}.wifi-ap-manager{margin-top:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);overflow:hidden}.wifi-ap-manager>summary{list-style:none;display:grid;grid-template-columns:32px minmax(0,1fr) 18px;gap:9px;align-items:center;padding:12px 13px;cursor:pointer}.wifi-ap-manager>summary::-webkit-details-marker{display:none}.wifi-ap-manager>summary>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--brand-2) 12%,var(--surface));color:var(--brand-2)}.wifi-ap-manager>summary>div{display:grid;gap:3px}.wifi-ap-manager>summary b{font-size:.72rem}.wifi-ap-manager>summary small{font-size:.54rem;color:var(--muted);line-height:1.7}.wifi-ap-manager>summary>i{font-style:normal;color:var(--muted);transition:transform .18s ease}.wifi-ap-manager[open]>summary>i{transform:rotate(-90deg)}.wifi-ap-manager-body{display:grid;gap:9px;padding:0 12px 12px}.wifi-ap-alias-list{display:grid;gap:7px}.wifi-ap-alias-list article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.wifi-ap-alias-list article>div:first-child{display:grid;gap:2px}.wifi-ap-alias-list b{font-size:.66rem}.wifi-ap-alias-list small{font-size:.52rem;color:var(--muted)}.wifi-ap-alias-list em{font-size:.5rem;color:var(--muted);font-style:normal}.wifi-ap-row-actions{display:flex;gap:6px}.wifi-ap-row-actions button{min-height:32px;padding:0 10px;font-size:.56rem}.wifi-ap-form{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.wifi-ap-form label{display:grid;gap:5px}.wifi-ap-form label>span{font-size:.56rem;color:var(--muted)}.wifi-ap-form input{min-height:38px}.wifi-ap-form .wide,.wifi-ap-form .primary-button{grid-column:1/-1}@media(min-width:760px){.node-network-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wifi-ap-alias-list{grid-template-columns:repeat(2,minmax(0,1fr))}.wifi-ap-form{grid-template-columns:repeat(3,minmax(0,1fr))}.wifi-ap-form .wide{grid-column:auto}.wifi-ap-form .primary-button{grid-column:1/-1}}@media(max-width:520px){.node-network-grid,.wifi-ap-form{grid-template-columns:1fr}.wifi-ap-form .wide,.wifi-ap-form .primary-button{grid-column:auto}.wifi-ap-alias-list article{align-items:flex-start;flex-direction:column}.wifi-ap-row-actions{width:100%}.wifi-ap-row-actions button{flex:1}}:root{--ounce-node-glass-blur:28px;--ounce-node-glass-radius:28px;--ounce-node-glass-border:color-mix(in srgb,var(--line) 64%,transparent);--ounce-node-glass-surface:color-mix(in srgb,var(--surface) 78%,transparent);--ounce-node-glass-surface-2:color-mix(in srgb,var(--surface-2) 72%,transparent);--ounce-node-glass-highlight:color-mix(in srgb,#fff 34%,transparent);--ounce-node-glass-shadow:0 24px 70px color-mix(in srgb,#000 14%,transparent),0 1px 0 color-mix(in srgb,#fff 14%,transparent) inset}:root[data-theme=dark]{--ounce-node-glass-border:color-mix(in srgb,var(--line) 70%,transparent);--ounce-node-glass-surface:color-mix(in srgb,var(--surface) 72%,transparent);--ounce-node-glass-surface-2:color-mix(in srgb,var(--surface-2) 66%,transparent);--ounce-node-glass-highlight:color-mix(in srgb,#fff 10%,transparent);--ounce-node-glass-shadow:0 26px 80px rgba(0,0,0,.34),0 1px 0 rgba(255,255,255,.06) inset}.node-manager-page{position:relative;isolation:isolate;--node-card-pad:16px}.node-manager-page:before{content:"";position:fixed;inset:72px 0 auto;height:min(62vh,640px);pointer-events:none;z-index:-1;background:radial-gradient(circle at 16% 10%,color-mix(in srgb,var(--brand-2) 13%,transparent),transparent 36%),radial-gradient(circle at 86% 24%,color-mix(in srgb,var(--good) 8%,transparent),transparent 30%);filter:saturate(120%)}.node-manager-page>.content-card{position:relative;overflow:visible;padding:20px;border:1px solid var(--ounce-node-glass-border);border-radius:32px;background:var(--ounce-node-glass-surface);-webkit-backdrop-filter:blur(var(--ounce-node-glass-blur)) saturate(165%);backdrop-filter:blur(var(--ounce-node-glass-blur)) saturate(165%);box-shadow:var(--ounce-node-glass-shadow)}.node-manager-page>.content-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,var(--ounce-node-glass-highlight),transparent 27%,transparent 72%,color-mix(in srgb,var(--brand-2) 6%,transparent));mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);mask-composite:exclude;-webkit-mask-composite:xor;padding:1px}.node-manager-page .subpage-head{min-height:48px;margin:0 0 18px;grid-template-columns:44px minmax(0,1fr) 44px}.node-manager-page .subpage-head h2{font-size:1.18rem;line-height:1.25;font-weight:900;letter-spacing:-.015em}.node-manager-page .back-button{width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--surface) 68%,transparent);border:1px solid var(--ounce-node-glass-border);box-shadow:0 8px 24px color-mix(in srgb,#000 8%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%)}.node-manager-page .node-manager-toolbar{display:flex;gap:9px;margin:0 0 18px;align-items:center}.node-manager-page .node-manager-toolbar .primary-button,.node-manager-page .node-manager-toolbar .soft-button{min-height:46px;min-width:0;padding:0 18px;border-radius:999px;font-size:.78rem;box-shadow:0 9px 26px color-mix(in srgb,#000 10%,transparent),0 1px color-mix(in srgb,#fff 18%,transparent) inset}.node-manager-page .node-manager-toolbar .primary-button{background:linear-gradient(180deg,color-mix(in srgb,var(--brand-2) 82%,#fff),var(--brand-2))}.node-manager-page .node-manager-toolbar .soft-button{background:color-mix(in srgb,var(--surface-2) 72%,transparent);border:1px solid var(--ounce-node-glass-border);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}.node-manager-page .node-manager-list{gap:10px}.node-manager-page .node-manager-card{position:relative;overflow:hidden;grid-template-columns:46px minmax(0,1fr) auto 20px;gap:12px;min-height:96px;padding:14px 15px;border:1px solid var(--ounce-node-glass-border);border-radius:24px;background:var(--ounce-node-glass-surface-2);box-shadow:0 12px 34px color-mix(in srgb,#000 8%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%);transition:transform .2s cubic-bezier(.2,.8,.2,1),border-color .2s ease,background .2s ease,box-shadow .2s ease}.node-manager-page .node-manager-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,color-mix(in srgb,#fff 7%,transparent),transparent 35%)}@media(hover:hover){.node-manager-page .node-manager-card:hover{transform:translateY(-2px) scale(1.004);box-shadow:0 18px 42px color-mix(in srgb,#000 11%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;border-color:color-mix(in srgb,var(--brand-2) 22%,var(--ounce-node-glass-border))}}.node-manager-page .node-manager-card:active{transform:scale(.992)}.node-manager-page .node-manager-card .device-icon,.node-manager-page .node-manager-main-icon{width:46px;height:46px;flex-basis:46px;border-radius:15px;background:color-mix(in srgb,var(--brand-2) 12%,var(--surface));color:var(--brand-2);box-shadow:0 8px 22px color-mix(in srgb,var(--brand-2) 13%,transparent),0 1px color-mix(in srgb,#fff 18%,transparent) inset}.node-manager-page .node-manager-card-copy{gap:4px}.node-manager-page .node-manager-card-copy b{font-size:.9rem;line-height:1.35}.node-manager-page .node-manager-card-copy small{font-size:.67rem}.node-manager-page .node-manager-card-copy em{font-size:.58rem;line-height:1.55}.node-manager-page .node-manager-card-health{gap:6px;min-width:104px}.node-manager-page .node-manager-card-health small{font-size:.55rem;line-height:1.45;max-width:180px}.node-manager-page .node-health-badge{min-height:27px;padding:5px 10px;gap:6px;font-size:.59rem;border-radius:999px;-webkit-backdrop-filter:blur(14px) saturate(145%);backdrop-filter:blur(14px) saturate(145%)}.node-manager-page .chevron{font-size:1.65rem;opacity:.65}.node-manager-page .node-manager-hero{position:relative;overflow:hidden;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;padding:17px 18px;margin-bottom:12px;border-radius:26px;border:1px solid var(--ounce-node-glass-border);background:linear-gradient(135deg,color-mix(in srgb,var(--brand-2) 8%,var(--ounce-node-glass-surface-2)),var(--ounce-node-glass-surface-2));box-shadow:0 14px 38px color-mix(in srgb,#000 9%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(24px) saturate(165%);backdrop-filter:blur(24px) saturate(165%)}.node-manager-page .node-manager-hero .node-manager-main-icon{width:54px;height:54px;border-radius:18px}.node-manager-page .node-manager-hero h3{font-size:1.02rem;line-height:1.35}.node-manager-page .node-manager-hero p{font-size:.68rem;line-height:1.6;margin-top:4px}.node-manager-page .node-manager-hero small{font-size:.58rem;line-height:1.55;margin-top:4px}.node-manager-page .node-manager-hero code{font-size:.6rem}.node-manager-page .node-health-grid{gap:9px;margin:10px 0 12px}.node-manager-page .node-health-grid>div,.node-manager-page .node-network-grid>div,.node-manager-page .node-facts-grid>div,.node-manager-page .node-db-summary>div{border:1px solid var(--ounce-node-glass-border);border-radius:19px;background:var(--ounce-node-glass-surface-2);box-shadow:0 8px 24px color-mix(in srgb,#000 6%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%)}.node-manager-page .node-health-grid>div{min-height:82px;padding:12px 13px;align-content:center;gap:5px}.node-manager-page .node-health-grid>div>span{font-size:.58rem}.node-manager-page .node-health-grid>div>b{font-size:.85rem;line-height:1.3}.node-manager-page .node-health-grid>div>small{font-size:.53rem;line-height:1.55}.node-manager-page .node-section{gap:11px;margin-top:12px;padding:16px;border:1px solid var(--ounce-node-glass-border);border-radius:24px;background:var(--ounce-node-glass-surface-2);box-shadow:0 10px 30px color-mix(in srgb,#000 6%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.node-manager-page .node-section-title-row{margin-bottom:2px;gap:14px}.node-manager-page .node-section-title-row h3,.node-manager-page .node-section>h3{font-size:.92rem;line-height:1.35;font-weight:900}.node-manager-page .node-section-title-row small{font-size:.59rem;line-height:1.65;margin-top:5px}.node-manager-page .node-network-grid{gap:9px}.node-manager-page .node-network-grid>div{padding:12px 13px;min-height:76px;align-content:center}.node-manager-page .node-network-grid span{font-size:.58rem}.node-manager-page .node-network-grid b{font-size:.82rem;line-height:1.35}.node-manager-page .node-network-grid small{font-size:.53rem;line-height:1.5}.node-manager-page .node-network-legacy-note,.node-manager-page .node-network-ap-note,.node-manager-page .notice-row{border-radius:18px;padding:11px 13px;font-size:.64rem;line-height:1.85;border-color:color-mix(in srgb,var(--warn) 22%,var(--ounce-node-glass-border));background:color-mix(in srgb,var(--warn) 8%,var(--ounce-node-glass-surface));-webkit-backdrop-filter:blur(16px) saturate(145%);backdrop-filter:blur(16px) saturate(145%)}.node-manager-page .node-health-ok,.node-manager-page .node-health-alerts{border-radius:22px;padding:14px 15px;margin:11px 0 12px;-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);box-shadow:0 8px 24px color-mix(in srgb,#000 5%,transparent)}.node-manager-page .node-health-ok b{font-size:.72rem}.node-manager-page .node-health-ok small{font-size:.57rem;line-height:1.6}.node-manager-page .node-health-alert{border-radius:15px;padding:10px 11px;font-size:.63rem}.node-manager-page .node-facts-grid{gap:8px;margin:10px 0 12px}.node-manager-page .node-facts-grid>div{padding:11px 12px;min-height:66px;align-content:center;gap:4px}.node-manager-page .node-facts-grid span{font-size:.55rem}.node-manager-page .node-facts-grid b{font-size:.68rem;line-height:1.45}.node-manager-page .node-db-summary{gap:8px}.node-manager-page .node-db-summary>div{padding:11px 12px;min-height:66px;align-content:center;gap:4px}.node-manager-page .node-db-summary span{font-size:.55rem}.node-manager-page .node-db-summary b{font-size:.73rem}.node-manager-page .node-db-output-list{gap:8px}.node-manager-page .node-db-output-row,.node-manager-page .node-command-row{border:1px solid var(--ounce-node-glass-border);border-radius:17px;background:color-mix(in srgb,var(--surface) 55%,transparent);box-shadow:0 6px 18px color-mix(in srgb,#000 4%,transparent),0 1px color-mix(in srgb,#fff 8%,transparent) inset}.node-manager-page .node-db-output-row{padding:11px 12px}.node-manager-page .node-db-output-row>div b{font-size:.68rem}.node-manager-page .node-db-output-row>div small{font-size:.53rem;line-height:1.55}.node-manager-page .node-db-output-row>span{font-size:.58rem}.node-manager-page .node-command-row{padding:10px 11px}.node-manager-page .node-command-main b{font-size:.65rem}.node-manager-page .node-command-main small,.node-manager-page .node-command-row>time{font-size:.51rem}.node-manager-page .node-command-row>span{font-size:.57rem}.node-manager-page>.content-card>.full-button{min-height:48px;margin-top:14px;border-radius:18px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:1px solid var(--ounce-node-glass-border);box-shadow:0 8px 22px color-mix(in srgb,#000 5%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%)}.node-manager-page .node-settings-form{margin-top:12px;padding:16px;border-radius:24px;border:1px solid var(--ounce-node-glass-border);background:var(--ounce-node-glass-surface-2);box-shadow:0 10px 28px color-mix(in srgb,#000 5%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.node-manager-page .node-settings-form input,.node-manager-page .node-settings-form textarea{min-height:43px;border-radius:14px;background:color-mix(in srgb,var(--surface) 70%,transparent);border-color:var(--ounce-node-glass-border)}.node-manager-page .node-settings-form .primary-button{min-height:46px;border-radius:15px;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-2) 82%,#fff),var(--brand-2));box-shadow:0 10px 26px color-mix(in srgb,var(--brand-2) 18%,transparent)}.node-manager-page .node-chip-list{gap:7px}.node-manager-page .node-chip-list span{padding:6px 9px;border-radius:999px;font-size:.55rem;border-color:var(--ounce-node-glass-border);background:color-mix(in srgb,var(--surface) 58%,transparent)}.node-manager-page .node-module-grid,.node-manager-page .node-sensor-grid{gap:8px}.node-manager-page .node-module-grid article,.node-manager-page .node-sensor-grid article,.node-manager-page .node-channel-unmapped{min-height:66px;padding:10px 11px;border-radius:17px;border-color:var(--ounce-node-glass-border);background:color-mix(in srgb,var(--surface) 56%,transparent)}.node-manager-page .wifi-ap-manager{margin-top:14px;border-radius:26px;border:1px solid var(--ounce-node-glass-border);background:var(--ounce-node-glass-surface-2);box-shadow:0 12px 34px color-mix(in srgb,#000 7%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%)}.node-manager-page .wifi-ap-manager>summary{min-height:76px;grid-template-columns:44px minmax(0,1fr) 22px;gap:12px;padding:14px 16px}.node-manager-page .wifi-ap-manager>summary>span{width:44px;height:44px;border-radius:15px;background:color-mix(in srgb,var(--brand-2) 13%,var(--surface));box-shadow:0 8px 20px color-mix(in srgb,var(--brand-2) 11%,transparent),0 1px color-mix(in srgb,#fff 16%,transparent) inset}.node-manager-page .wifi-ap-manager>summary b{font-size:.82rem}.node-manager-page .wifi-ap-manager>summary small{font-size:.6rem;line-height:1.7;margin-top:2px}.node-manager-page .wifi-ap-manager>summary>i{font-size:1.25rem}.node-manager-page .wifi-ap-manager-body{gap:11px;padding:0 14px 14px}.node-manager-page .wifi-ap-alias-list{gap:8px}.node-manager-page .wifi-ap-alias-list article{padding:11px 12px;border-radius:17px;border-color:var(--ounce-node-glass-border);background:color-mix(in srgb,var(--surface) 58%,transparent)}.node-manager-page .wifi-ap-alias-list b{font-size:.72rem}.node-manager-page .wifi-ap-alias-list small{font-size:.57rem}.node-manager-page .wifi-ap-alias-list em{font-size:.55rem}.node-manager-page .wifi-ap-form{gap:9px;padding:12px;border-radius:20px;border-color:var(--ounce-node-glass-border);background:color-mix(in srgb,var(--surface) 58%,transparent)}.node-manager-page .wifi-ap-form label>span{font-size:.6rem;font-weight:800}.node-manager-page .wifi-ap-form input{min-height:43px;border-radius:14px;background:color-mix(in srgb,var(--surface) 72%,transparent);border-color:var(--ounce-node-glass-border)}.node-manager-page .wifi-ap-form .primary-button{min-height:46px;border-radius:15px;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-2) 82%,#fff),var(--brand-2))}.node-manager-page .node-output-list{gap:10px}.node-manager-page .node-output-editor,.node-manager-page .node-output-card{border-radius:19px}@media(min-width:760px){.node-manager-page .node-manager-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.node-manager-page .node-health-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.node-manager-page .node-facts-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.node-manager-page .node-network-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}}@media(max-width:620px){.node-manager-page>.content-card{padding:13px;border-radius:25px}.node-manager-page .subpage-head{margin-bottom:13px}.node-manager-page .node-manager-toolbar{display:grid;grid-template-columns:1.35fr 1fr;gap:7px;margin-bottom:13px}.node-manager-page .node-manager-toolbar .primary-button,.node-manager-page .node-manager-toolbar .soft-button{width:100%;padding:0 11px;font-size:.7rem}.node-manager-page .node-manager-card{grid-template-columns:42px minmax(0,1fr) 18px;min-height:88px;padding:12px;gap:10px;border-radius:21px}.node-manager-page .node-manager-card .device-icon{width:42px;height:42px;flex-basis:42px;border-radius:14px}.node-manager-page .node-manager-card-health{grid-column:2;grid-row:2;justify-items:start;display:flex;align-items:center;gap:8px;min-width:0}.node-manager-page .node-manager-card-health small{max-width:210px;white-space:nowrap}.node-manager-page .node-manager-card .chevron{grid-column:3;grid-row:1/3}.node-manager-page .node-manager-hero{grid-template-columns:50px minmax(0,1fr);padding:14px;border-radius:22px}.node-manager-page .node-manager-hero .node-manager-main-icon{width:48px;height:48px;border-radius:16px}.node-manager-page .node-manager-hero>.node-health-badge{grid-column:1/-1;justify-self:start}.node-manager-page .node-section{padding:13px;border-radius:21px}.node-manager-page .node-health-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.node-manager-page .node-health-grid>div{min-height:75px;padding:10px 11px;border-radius:17px}.node-manager-page .node-network-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.node-manager-page .wifi-ap-manager{border-radius:22px}.node-manager-page .wifi-ap-manager>summary{grid-template-columns:40px minmax(0,1fr) 20px;padding:12px 13px}.node-manager-page .wifi-ap-manager>summary>span{width:40px;height:40px;border-radius:13px}}@media(max-width:430px){.node-manager-page .node-health-grid,.node-manager-page .node-network-grid{grid-template-columns:1fr 1fr}.node-manager-page .node-manager-card-copy em{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.node-manager-page .node-manager-card-health small{white-space:normal;line-height:1.35}.node-manager-page .node-facts-grid,.node-manager-page .node-db-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:350px){.node-manager-page .node-health-grid,.node-manager-page .node-network-grid,.node-manager-page .node-facts-grid{grid-template-columns:1fr}}.node-manager-page .node-manager-card-copy .node-card-name{white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;unicode-bidi:plaintext;text-align:start;line-height:1.35}.node-manager-page .node-manager-card-copy>small,.node-manager-page .node-manager-card-copy>em{unicode-bidi:plaintext;text-align:start}.node-manager-page .node-manager-hero-copy{min-width:0}.node-manager-page .node-manager-hero-copy h3,.node-manager-page .node-manager-hero-copy p,.node-manager-page .node-manager-hero-copy small{unicode-bidi:plaintext;text-align:start}.node-manager-page .wifi-ap-form{display:grid;grid-template-columns:1fr;gap:12px;padding:14px}.node-manager-page .wifi-ap-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.node-manager-page .wifi-ap-field{min-width:0;display:grid;grid-template-rows:auto 46px auto;gap:7px;padding:12px;border:1px solid color-mix(in srgb,var(--ounce-node-glass-border) 88%,transparent);border-radius:18px;background:color-mix(in srgb,var(--surface) 52%,transparent);box-shadow:0 1px color-mix(in srgb,#fff 7%,transparent) inset}.node-manager-page .wifi-ap-field>span{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:18px;color:var(--text);font-size:.62rem;font-weight:850}.node-manager-page .wifi-ap-field>span em{color:var(--muted);font-size:.49rem;font-weight:650;font-style:normal}.node-manager-page .wifi-ap-field input{width:100%;min-width:0;min-height:46px;padding:0 12px;border-radius:14px;line-height:46px;background:color-mix(in srgb,var(--surface-2) 78%,transparent);border:1px solid color-mix(in srgb,var(--ounce-node-glass-border) 92%,transparent);box-shadow:0 1px color-mix(in srgb,#fff 5%,transparent) inset}.node-manager-page .wifi-ap-field input::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent);opacity:1}.node-manager-page .wifi-ap-bssid input{direction:ltr;text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;letter-spacing:.03em}.node-manager-page .wifi-ap-field>small{min-height:15px;color:var(--muted);font-size:.5rem;line-height:1.5}.node-manager-page .wifi-ap-save-button{width:100%;min-height:48px!important;border-radius:16px!important;margin:0!important}.node-manager-page .node-detail-disclosure{margin-top:12px;overflow:hidden;border:1px solid var(--ounce-node-glass-border);border-radius:23px;background:var(--ounce-node-glass-surface-2);box-shadow:0 10px 28px color-mix(in srgb,#000 6%,transparent),0 1px 0 var(--ounce-node-glass-highlight) inset;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.node-manager-page .node-detail-disclosure>summary{list-style:none;display:flex;align-items:center;gap:11px;min-height:68px;padding:11px 14px;cursor:pointer;user-select:none}.node-manager-page .node-detail-disclosure>summary::-webkit-details-marker{display:none}.node-manager-page .node-detail-disclosure>summary .node-disclosure-icon{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;border-radius:14px;color:var(--brand-2);background:color-mix(in srgb,var(--brand-2) 12%,var(--surface));box-shadow:0 6px 18px color-mix(in srgb,var(--brand-2) 10%,transparent),0 1px color-mix(in srgb,#fff 13%,transparent) inset}.node-manager-page .node-detail-disclosure>summary>div{min-width:0;flex:1;display:grid;gap:3px}.node-manager-page .node-detail-disclosure>summary b{font-size:.78rem;line-height:1.35}.node-manager-page .node-detail-disclosure>summary small{color:var(--muted);font-size:.56rem;line-height:1.55}.node-manager-page .node-detail-disclosure>summary>i{flex:0 0 auto;color:var(--muted);font-style:normal;font-size:1.2rem;line-height:1;transition:transform .2s ease,color .2s ease}.node-manager-page .node-detail-disclosure[open]>summary>i{transform:rotate(-90deg);color:var(--brand-2)}.node-manager-page .node-detail-disclosure .node-command-count{flex:0 0 auto;min-width:28px;height:28px;display:grid;place-items:center;padding:0 8px;border-radius:999px;border:1px solid var(--ounce-node-glass-border);background:color-mix(in srgb,var(--surface) 58%,transparent);color:var(--muted);font-size:.55rem;font-weight:850}.node-manager-page .node-detail-disclosure-body{padding:0 13px 13px;border-top:1px solid color-mix(in srgb,var(--ounce-node-glass-border) 70%,transparent)}.node-manager-page .node-detail-disclosure-body>.node-facts-grid{margin:12px 0 0}.node-manager-page .node-detail-disclosure-body>.full-button{width:100%;min-height:45px;margin:12px 0 0;border-radius:15px}.node-manager-page .node-detail-disclosure-body>.node-settings-form{margin-top:10px}.node-manager-page .node-detail-disclosure-body>.node-command-history,.node-manager-page .node-detail-disclosure-body>.empty-inline{margin-top:12px}.node-manager-page .node-subsection{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--ounce-node-glass-border) 66%,transparent)}.node-manager-page .node-subsection h4{margin:0;font-size:.68rem;font-weight:900}.node-manager-page .node-output-section{margin-top:12px}@media(max-width:760px){.node-manager-page .wifi-ap-form-grid{grid-template-columns:1fr}.node-manager-page .wifi-ap-field{padding:11px;border-radius:16px}}@media(max-width:430px){.node-manager-page .node-detail-disclosure{border-radius:20px}.node-manager-page .node-detail-disclosure>summary{min-height:62px;padding:10px 11px;gap:9px}.node-manager-page .node-detail-disclosure>summary .node-disclosure-icon{width:36px;height:36px;flex-basis:36px;border-radius:12px}.node-manager-page .node-detail-disclosure>summary b{font-size:.72rem}.node-manager-page .node-detail-disclosure>summary small{font-size:.52rem}.node-manager-page .node-detail-disclosure-body{padding:0 10px 10px}}.node-failsafe-section{border-color:color-mix(in srgb,#34c759 28%,var(--line));background:linear-gradient(145deg,color-mix(in srgb,#34c759 7%,var(--panel)),var(--panel))}.node-failsafe-grid b[dir=ltr]{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;overflow-wrap:anywhere}.node-output-state{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:26px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.72rem;font-weight:800;white-space:nowrap}.node-manager-card.health-paused{border-color:color-mix(in srgb,var(--muted) 24%,var(--line));background:color-mix(in srgb,var(--muted) 4%,var(--surface))}.node-health-badge.paused{color:var(--muted);border-color:color-mix(in srgb,var(--muted) 28%,var(--line));background:color-mix(in srgb,var(--muted) 8%,var(--surface))}.node-manager-hero.paused{border-color:color-mix(in srgb,var(--muted) 28%,var(--line));background:color-mix(in srgb,var(--muted) 4%,var(--surface))}.node-monitoring-option{margin-top:14px;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer}.node-monitoring-option>span{display:flex;flex-direction:column;gap:4px;min-width:0}.node-monitoring-option b{font-size:.86rem}.node-monitoring-option small{font-size:.72rem;line-height:1.65;color:var(--muted)}.node-monitoring-option input{width:20px;height:20px;accent-color:currentColor;flex:0 0 auto}.node-health-paused{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px dashed color-mix(in srgb,var(--muted) 35%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--muted) 5%,var(--surface));color:var(--muted)}.node-health-paused>div{display:flex;flex-direction:column;gap:3px}.node-health-paused b{color:var(--text);font-size:.84rem}.node-health-paused small{font-size:.72rem;line-height:1.65}.dashboard-profile-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border:1px solid color-mix(in srgb,var(--line) 76%,transparent);border-radius:15px;background:var(--surface-2)}.dashboard-profile-summary>div{display:grid;gap:2px;min-width:0}.dashboard-profile-summary b{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-profile-summary small{font-size:.58rem;color:var(--muted);direction:ltr;text-align:right}.dashboard-profile-summary em{font-style:normal;font-size:.55rem;font-weight:850;color:var(--brand-2);white-space:nowrap}
