.identity-page{align-content:center;gap:24px;width:min(100%,680px);max-width:640px;min-height:100dvh;margin:0 auto;padding:clamp(16px,4vw,36px);display:grid}.identity-page>header{justify-content:space-between;align-items:center;gap:24px;display:flex}.identity-page>header>.field{max-width:180px}.identity-entry-brand{gap:var(--s1);min-width:0;display:grid}.identity-entry-brand>strong{color:var(--glass-ink);letter-spacing:-.05em;text-shadow:0 10px 34px #00000073;font-size:clamp(1.35rem,4vw,2rem)}.identity-entry-brand>.button{justify-content:flex-start;padding-inline:0}@media (height<=480px) and (width>=640px){.identity-page--entry{grid-template-columns:160px minmax(0,1fr);align-items:start;gap:16px;max-width:none;padding:12px}.identity-page--entry>header{flex-direction:column;align-items:stretch;gap:12px}.identity-page--entry .identity-panel{gap:8px;min-width:0;padding:12px}.identity-page--entry .identity-intro{display:none}}.identity-panel{border:var(--border) solid var(--glass-line);border-radius:var(--radius-card);background:var(--glass-strong);min-width:0;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.18);gap:16px;padding:24px;display:grid}.identity-panel h1{margin:0;font-size:1.5rem}.identity-panel h2{margin:0;font-size:1.25rem}.identity-panel p{color:var(--muted);margin:0;font-size:.875rem}.identity-panel form{gap:14px;display:grid}.identity-tabs,.identity-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.identity-tabs .button{flex:1;padding:10px;font-size:.8rem}.identity-codes{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-soft);border-radius:var(--radius-control);margin:0;padding:14px;font-size:clamp(9px,2.5vw,13px);line-height:2.2}.identity-panel .identity-hint{font-size:.75rem}.identity-page--entry{gap:var(--s4);max-width:540px}.identity-page--entry .identity-panel,.identity-page--entry .field label,.identity-page--entry .identity-panel p,.identity-page--entry .button--quiet{color:var(--glass-ink)}.identity-tabs .button[aria-pressed=true]{color:var(--on-primary);background:var(--primary);border-color:var(--primary)}.identity-entry-form .identity-actions .button{min-width:0;padding-inline:var(--s2);font-size:var(--text-sm);overflow-wrap:normal}.identity-page--entry .identity-step{font-size:var(--text-xs)}@media (height<=640px){.identity-page--entry .identity-intro{display:none}}.identity-page--short.identity-page--entry{padding:var(--s2);gap:var(--s2);align-content:start}.identity-page--short.identity-page--entry>header{gap:var(--s2)}.identity-page--short.identity-page--entry>header>.field{max-width:140px}.identity-page--short.identity-page--entry>header>.field label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.identity-page--short.identity-page--entry .identity-panel,.identity-page--short.identity-page--entry .identity-entry-form{gap:var(--s2)}.identity-page--short.identity-page--entry .identity-panel{padding:var(--s3)}.identity-page--short.identity-page--entry .identity-intro,.identity-page--short.identity-page--entry .identity-panel>h1{display:none}.identity-page--short.identity-page--entry .identity-entry-brand{align-items:center;gap:var(--s2);display:flex}.identity-page--short.identity-page--entry .identity-entry-brand>strong{font-size:var(--text-base)}.identity-page--short.identity-page--entry .identity-entry-brand>.button{font-size:var(--text-xs)}.identity-page--short.identity-page--entry .field{gap:var(--s1)}.identity-page--short.identity-page--entry .field input,.identity-page--short.identity-page--entry .field select{min-height:var(--touch);padding-block:var(--s2)}@media (width>=640px){.identity-page--short.identity-page--entry{grid-template-columns:160px minmax(0,1fr);align-items:start;max-width:860px}.identity-page--short.identity-page--entry>header,.identity-page--short.identity-page--entry .identity-entry-brand{flex-direction:column;align-items:stretch}}.shared-shopping-row{border-bottom:var(--border) solid var(--line);padding-bottom:8px}.shared-shopping-row>.button{overflow-wrap:anywhere;white-space:normal;text-align:left;max-width:100%}.account-shopping{flex-direction:column;gap:8px;min-height:0;display:flex}.account-shopping form,.shopping-toolbar{gap:8px;display:grid}@media (height<=480px) and (width>=700px){.shopping-toolbar{grid-template-columns:1fr 1.4fr;gap:8px}.shopping-toolbar .button{padding-inline:6px;font-size:.85rem}}.account-shopping .shared-shopping-row{align-items:center;gap:8px;min-width:0;display:flex}.account-shopping .shared-shopping-row>.button{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.account-shopping small{color:var(--muted);font-size:.75rem}.account-shopping .shared-shopping-row .identity-actions{flex-shrink:0}.account-shopping .button{padding:8px 10px}@media (height<=480px){.account-shopping{gap:4px}.account-shopping .shared-shopping-row{padding-bottom:0}}.identity-actions .button{flex:1}.identity-actions>span{white-space:nowrap;font-size:.8rem}@media (width<=480px){.identity-page{gap:16px;padding:16px}.identity-panel{gap:12px;padding:18px}.identity-panel form{gap:10px}.identity-tabs{grid-template-columns:.85fr 1fr 1.3fr;gap:2px;display:grid}.identity-tabs .button{min-width:0;padding:8px 4px;font-size:.75rem}}.devices-layout.device-gallery{gap:var(--s3);min-height:min-content;padding-bottom:var(--s4);flex-direction:column;display:flex}.device-gallery-toolbar{align-items:center;gap:var(--s2);display:flex}.device-gallery-toolbar .device-refresh{padding-inline:var(--s2);margin-left:auto}.device-room-filters{gap:var(--s2);flex-wrap:wrap;display:flex}.device-room-filters .button{min-height:var(--touch);padding:var(--s2) var(--s3);overflow-wrap:anywhere;max-width:100%}.device-gallery .device-grid{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.devices-layout.device-gallery .device-card{align-items:stretch;gap:var(--s1);min-width:0;padding:var(--s3);border:var(--border) solid var(--home-card-border,var(--theme-line));border-radius:var(--radius-card);background:var(--home-card-background,var(--glass));box-shadow:var(--home-card-shadow,var(--glass-shadow));flex-direction:column;display:flex}.device-gallery .device-card h3{font-size:var(--text-base);overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.3}.device-gallery .device-card p{font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere;margin:0}.device-tile-top{min-height:var(--touch);justify-content:space-between;align-items:center;gap:var(--s1);display:flex}.device-tile-top>.icon,.room-summary-card>.icon{color:var(--home-cyan);width:24px;height:24px}.device-card[data-on=true] .device-tile-top>.icon{color:var(--home-amber)}.device-gallery .device-card .device-key-state{color:var(--ink);font-size:var(--text-base);margin-top:var(--s1)}.device-gallery .device-card .device-temperature{color:var(--ink);font-size:var(--text-xl);margin-top:var(--s1);font-weight:600}.device-gallery .device-toggle{min-height:var(--touch);min-width:var(--touch);width:var(--touch);flex-shrink:0;padding:0}.device-toggle-track{border-radius:var(--radius-pill);background:var(--glass-faint);align-items:center;width:38px;height:24px;padding:3px;display:flex}.device-toggle-track>span{background:var(--ink);width:18px;height:18px;transition:transform var(--motion);border-radius:50%}.device-toggle[aria-checked=true] .device-toggle-track{background:var(--home-amber)}.device-toggle[aria-checked=true] .device-toggle-track>span{transform:translate(14px)}.device-gallery .device-open-details,.room-summary-card>.button{min-height:var(--touch);padding:var(--s2) 0;font-size:var(--text-sm);justify-content:flex-start;margin-top:auto}.device-gallery .device-feedback:empty{display:none}.device-feedback{min-width:0;font-size:var(--text-xs);overflow-wrap:anywhere}.device-feedback p{margin:0}.device-feedback [role=alert],.device-feedback[role=alert]{color:var(--error)}.device-detail-body{gap:var(--s3);grid-template-columns:minmax(0,1fr);display:grid}.device-detail-body .field{min-width:0}.device-detail-body .device-brightness,.device-detail-body .device-colour{gap:var(--s1);min-width:0;font-size:var(--text-sm);display:grid}.device-detail-body input[type=range],.device-detail-body input[type=color]{width:100%;min-width:0;min-height:var(--touch);margin:0}.device-detail-body .device-rename{gap:var(--s2);grid-template-columns:minmax(0,1fr);display:grid}.device-detail-body .device-temperature{margin:0}.fixture-editor{gap:var(--s3);display:grid}.fixture-editor>p{font-size:var(--text-sm);margin:0}.fixture-member-list{height:clamp(120px,28dvh,220px);min-height:120px}.fixture-member-list .paged-list{height:100%}.fixture-member-list .row-measure{height:66px}.fixture-member-list .page-item .button{width:100%;padding:var(--s2);overflow-wrap:anywhere}.fixture-member-list .button[aria-pressed=true]{border-color:var(--home-cyan);color:var(--home-cyan)}@media (width>=900px){.device-gallery .device-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=380px){.device-gallery .device-grid{gap:var(--s2)}.device-gallery .device-card{padding:var(--s2)}.device-gallery .device-card h3{font-size:var(--text-sm)}}@media (height<=600px){.device-detail-body{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr))}.device-detail-body>.device-brightness,.device-detail-body>.device-colour,.device-detail-body>.device-rename,.device-detail-body>.device-feedback{grid-column:1/-1}.device-detail-body .field input,.device-detail-body .field select{padding:var(--s2)}.device-detail-body>.button[role=switch]{grid-column:1/-1}.device-detail-body>p{margin:0}.fixture-editor{gap:var(--s2)}}@media (prefers-reduced-motion:reduce){.device-toggle-track>span{transition:none}}.invitations{width:100%;min-width:0}.invitations form{gap:1rem;display:grid}.invitations__preview{padding:var(--s4);border:var(--border) solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft)}.invitations__preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.invitations__list{gap:1rem;padding:0;list-style:none;display:grid}.invitations__list li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.invitations__list strong{overflow-wrap:anywhere}.equipment-editor select{border:1px solid var(--premium-border);background:var(--premium-control);width:100%;min-height:44px;color:var(--glass-ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font:inherit;border-radius:12px;padding:10px 12px}.equipment-editor select option{background:var(--glass-strong,#112439);color:var(--glass-ink)}.equipment-editor select:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.equipment-manager{gap:14px;min-width:0;display:grid}.equipment-tabs{gap:8px;display:flex}.equipment-tabs button{border:1px solid var(--premium-border);background:var(--premium-control);min-height:40px;color:var(--glass-ink);font:inherit;cursor:pointer;border-radius:10px;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex}.equipment-tabs button[aria-pressed=true]{border-color:var(--primary)}.equipment-tabs span{color:var(--premium-muted);font-size:11px}.equipment-tabs button:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.equipment-collection{gap:12px;min-width:0;display:grid}.equipment-collection>.button{justify-self:end;width:auto;min-height:36px;padding:8px 12px;font-size:12px}.equipment-list{gap:8px;display:grid}.equipment-row{box-sizing:border-box;background:var(--premium-control);border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-height:64px;padding:10px 12px;display:grid}.equipment-row .item-copy{gap:5px;min-width:0;display:grid}.equipment-row .item-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.equipment-row .item-quantity{color:var(--premium-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.equipment-row .button{min-height:32px;padding:6px 8px;font-size:11px}.collection-pages{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.collection-pages .button{min-height:32px;padding:6px 10px;font-size:12px}@media (height<=800px){.equipment-row{min-height:58px;padding:8px 10px}}.transit-widget{min-width:0}.transit-widget__sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.transit-widget__heading{align-items:center;gap:12px;display:flex}.transit-widget__heading h2,.transit-widget__heading p{margin:0}.transit-widget__heading h2{letter-spacing:0;font-size:1rem;line-height:1.35}.transit-widget__heading p{color:var(--muted);margin-top:4px;font-size:.78rem}.transit-widget__heading>div{flex:1;min-width:0}.transit-widget__symbol{color:var(--home-cyan);background:var(--home-blue-soft);border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.transit-widget__symbol svg{width:26px;height:26px}.transit-widget__stations{gap:18px;display:grid}.transit-widget__station h3{flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:18px 0 8px;font-size:.85rem;display:flex}.transit-widget__station h3 span{opacity:.7;font-size:.7rem;font-weight:400}.transit-widget ul{margin:0;padding:0;list-style:none}.transit-widget__departure{border-top:1px solid var(--glass-line);align-items:center;gap:10px;min-width:0;padding:12px 0;display:flex}.transit-widget__line{background:var(--rail-underground);border:1px solid var(--home-card-border);box-shadow:0 3px 14px var(--home-blue-soft);text-align:center;min-width:40px;color:var(--ink);border-radius:9px;padding:6px 7px;font-size:.85rem;font-weight:700}.transit-widget__line.is-sbahn{background:var(--rail-suburban);border-color:var(--home-card-border)}.transit-widget__line.is-bus{background:var(--home-amber);color:var(--on-primary);border-color:var(--home-amber)}.transit-widget__actions:empty{display:none}.transit-widget__destination{flex:1;min-width:0}.transit-widget__destination strong{overflow-wrap:anywhere;font-size:.83rem;display:block}.transit-widget__destination small{opacity:.65;margin-top:4px;font-size:.7rem;display:block}.transit-widget__time{text-align:right;flex-shrink:0;font-size:.9rem}.transit-widget__time small{color:var(--home-amber);margin-top:4px;font-size:.7rem;display:block}.transit-widget__destination details{margin-top:5px;font-size:.75rem}.transit-widget summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.transit-widget__destination summary{min-height:44px}.transit-widget__actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.transit-widget__actions .button{gap:8px;min-height:44px}.transit-widget__search{margin-top:6px;font-size:.82rem}.transit-widget__search form>div{gap:8px;margin-top:8px;display:flex}.transit-widget__search input{border:1px solid var(--input-line);background:var(--surface);width:100%;min-width:0;min-height:44px;color:inherit;border-radius:12px;padding:10px}.transit-widget__search label{display:block}.transit-widget__search .field{flex:1;min-width:0}.transit-widget__search li .button{text-align:left;white-space:normal;justify-content:flex-start;width:100%;min-height:44px}.transit-widget footer{opacity:.6;margin-top:10px;font-size:.65rem;line-height:1.5}.transit-widget .is-cancelled .transit-widget__time{color:var(--error)}.transit-widget p{font-size:.85rem;line-height:1.5}.transit-widget button svg{width:18px;height:18px}.transit-widget--compact{border:1px solid var(--home-dashboard-border);background:var(--home-dashboard-panel);color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:clamp(16px,1.45vw,25px);flex-direction:column;padding:clamp(12px,1.2vw,19px);display:flex;overflow:hidden}.transit-widget--compact:hover{border-color:#97cdff85}.transit-widget--compact .transit-widget__heading{gap:8px}.transit-widget--compact .transit-widget__heading p{color:#e1f1ffc7;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:650;overflow:hidden}.transit-widget--compact .transit-widget__symbol{border-radius:9px;width:28px;height:28px}.transit-widget--compact .transit-widget__symbol svg{width:17px;height:17px}.transit-widget--compact:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:2px}.transit-widget__compact-board{gap:5px;min-height:0;margin-top:8px;display:grid;overflow:auto}.transit-widget__compact-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:30px;display:grid}.transit-widget__compact-row .transit-widget__line{min-width:34px;padding:4px 6px;font-size:.72rem}.transit-widget__compact-row>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.transit-widget__compact-row time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.68rem}.transit-widget--compact footer{margin-top:auto}.transit-widget--compact{cursor:default}.transit-widget--compact .transit-widget__heading{flex-shrink:0;justify-content:space-between}.transit-widget--compact .transit-widget__heading p{font-size:.9rem;font-weight:500}.transit-widget__compact-board{scrollbar-width:thin;flex:1;grid-auto-rows:max-content;align-content:start;gap:0;margin-top:0}.transit-widget__compact-row{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #cfe1f71f;align-items:center;gap:12px;padding:13px 2px}.transit-widget__compact-row:last-child{border-bottom:0}.transit-widget__compact-row:hover{background:#cfe1f70a}.transit-widget__compact-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px;border-radius:8px}.transit-widget__compact-row .transit-widget__line{border-radius:8px;min-width:38px;padding:6px;font-size:.9rem}.transit-widget__route{gap:3px;min-width:0;display:grid}.transit-widget__route strong{white-space:normal;overflow-wrap:anywhere;font-size:.9rem;font-weight:500}.transit-widget__route small{color:var(--premium-muted);font-size:.73rem}.transit-widget__compact-row time{white-space:nowrap;color:var(--ink);font-size:.9rem}.transit-widget--compact footer{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding-top:8px;font-size:.65rem;display:flex}.transit-widget__open{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;display:inline-flex}.transit-widget__open .icon{width:15px;height:15px}.transit-widget__delay{color:var(--home-amber);text-align:right;font-size:.65rem;display:block}.transit-widget__provenance{opacity:.72;font-size:.68rem;font-weight:400;display:block}.transit-widget--compact .transit-widget__compact-row{border-bottom-color:#e6f0ff17;grid-template-columns:42px minmax(0,1fr);gap:12px;min-height:66px;padding:12px 2px}.transit-widget--compact .transit-widget__line{border-radius:7px;place-items:center;min-width:0;min-height:32px;padding:5px 4px;font-size:1rem;font-weight:600;display:grid;box-shadow:inset 0 1px #ffffff3d,0 3px 10px #0000001f}.transit-widget--compact .transit-widget__route{gap:4px}.transit-widget__departure-heading{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.transit-widget--compact .transit-widget__departure-heading time{letter-spacing:-.02em;font-size:1.08rem;font-weight:500;line-height:1.2}.transit-widget--compact .transit-widget__provenance{color:var(--premium-muted);font-size:.62rem}.transit-widget--compact .transit-widget__destination{color:var(--premium-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;line-height:1.35;overflow:hidden}.transit-widget--compact .transit-widget__destination>[aria-hidden]{opacity:.65}.homeos-dashboard__transit-slot>.transit-widget--compact{-webkit-backdrop-filter:blur(24px)saturate(125%);background:linear-gradient(145deg,#707b9261,#14213399);box-shadow:inset 0 1px #ffffff26,0 10px 30px #0000001f}.homeos-journeys{text-align:left;gap:12px;min-width:0;display:grid}.homeos-journey{background:#ffffff08;border:1px solid #ffffff26;border-radius:16px;padding:12px}.homeos-journey header{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.homeos-journey p{overflow-wrap:anywhere;margin:6px 0;font-size:13px}.homeos-journey ol{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.homeos-journey li{grid-template-columns:45px 1fr;gap:8px;display:grid}.homeos-journey li>span,.homeos-journey header>span{opacity:.8;font-size:12px}.weather-scene{aspect-ratio:2.3;pointer-events:none;width:100%;min-width:0;display:block;position:relative;overflow:hidden}.weather-scene:not(.is-compact){isolation:isolate;background:linear-gradient(165deg,#3275a5,#779aaf 65%,#becacb);container-type:size}.weather-scene.is-night:not(.is-compact){background:linear-gradient(155deg,#0a142d,#233553 62%,#53617a)}.weather-scene--rain:not(.is-compact){background:linear-gradient(160deg,#283d52,#5d7787 64%,#82959e)}.weather-scene--snow:not(.is-compact){background:linear-gradient(160deg,#48677e,#9dafbd)}.weather-scene--fog:not(.is-compact){background:linear-gradient(165deg,#657d8f,#b1bec6)}.weather-scene--storm:not(.is-compact){background:linear-gradient(155deg,#141e34,#334458 70%,#607580)}.weather-scene.is-night.weather-scene--snow:not(.is-compact){background:linear-gradient(165deg,#182d47,#536d87)}.weather-scene.is-night.weather-scene--rain:not(.is-compact){background:linear-gradient(165deg,#132139,#354b62)}.weather-scene__light,.weather-scene__haze,.weather-scene__precipitation,.weather-scene__clouds,.weather-scene__sheet-lightning{position:absolute;inset:0}.weather-scene__light{background:radial-gradient(circle at 55% 11%,#fffceee8 0 3%,#fff1c599 5%,#ffecb142 14%,#fbecc51a 30%,#0000 55%);animation:16s ease-in-out infinite alternate weather-sun-breathe}.weather-scene__light:after{content:"";filter:blur(6px);opacity:.7;background:conic-gradient(from 155deg at 70% 30%,#0000,#ffeec81c 9deg,#0000 19deg,#ffeec813 28deg,#0000 42deg);position:absolute;inset:-20%}.weather-scene__light:before{content:"";aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fffef3,#ffe6a1);border-radius:50%;width:clamp(24px,9cqh,38px);position:absolute;top:11%;left:55%;transform:translate(-50%,-50%);box-shadow:0 0 22px #fff0b888}.weather-scene.is-night .weather-scene__light:before{background:radial-gradient(at 30% 35%,#8291a066 0 10%,#0000 16%),radial-gradient(at 63% 57%,#7b8d9b77 0 14%,#0000 22%),radial-gradient(circle at 58% 25%,#788b9966 0 7%,#0000 12%),radial-gradient(circle at 35% 30%,#f1f5ff,#bccde1);box-shadow:0 0 18px #d8e7ff55}.weather-scene.is-night .weather-scene__light{background:radial-gradient(circle at 55% 11%,#edf4ffa6 0 2%,#d6e9ff3b 4%,#ccddfc18 14%,#0000 42%)}.weather-scene.is-night .weather-scene__light:after{filter:none;opacity:.65;background:radial-gradient(circle at 23% 18%,#dce9ff 0 .6px,#0000 1.1px),radial-gradient(circle at 48% 37%,#dce9ff 0 .7px,#0000 1.2px),radial-gradient(circle at 14% 55%,#dce9ff 0 .6px,#0000 1.1px),radial-gradient(circle at 66% 10%,#dce9ff 0 .5px,#0000 1px);inset:0}.weather-scene__clouds{overflow:hidden}.weather-scene__cloud-bank{opacity:.94;background:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2NDAiIGhlaWdodD0iNDAwIiB2aWV3Qm94PSIwIDAgNjQwIDQwMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPCEtLSBPcmlnaW5hbCBwcm9jZWR1cmFsIGNsb3VkIHRleHR1cmUuIFN0YXRpYyB0dXJidWxlbmNlIGlzIHJhc3Rlcml6ZWQgb25jZTsKICAgICAgIHRoZSBVSSBtb3ZlcyB0aGUgcmVzdWx0aW5nIGxheWVycywgbm90IHRoZSBmaWx0ZXIncyBub2lzZSBwYXJhbWV0ZXJzLiAtLT4KICA8ZGVmcz4KICAgIDxmaWx0ZXIgaWQ9InZhcG91ciIgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPSJzUkdCIj4KICAgICAgPGZlVHVyYnVsZW5jZSB0eXBlPSJmcmFjdGFsTm9pc2UiIGJhc2VGcmVxdWVuY3k9Ii4wMDkgLjAxOSIgbnVtT2N0YXZlcz0iNSIgc2VlZD0iMTciIHN0aXRjaFRpbGVzPSJzdGl0Y2giLz4KICAgICAgPGZlQ29sb3JNYXRyaXggdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgLjg4ICAwIDAgMCAwIC45MyAgMCAwIDAgMCAxICAxLjM1IDEuMzUgMS4zNSAwIC0xLjYiLz4KICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iLjciLz4KICAgIDwvZmlsdGVyPgogICAgPHJhZGlhbEdyYWRpZW50IGlkPSJmYWRlIiBjeD0iNDglIiBjeT0iNDglIiByPSI1OCUiIGdyYWRpZW50VHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAtLjE1KSBzY2FsZSgxIDEuMykiPgogICAgICA8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IndoaXRlIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iLjU1IiBzdG9wLWNvbG9yPSJ3aGl0ZSIgc3RvcC1vcGFjaXR5PSIuOTUiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJ3aGl0ZSIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogICAgPG1hc2sgaWQ9ImJhbmsiPjxyZWN0IHdpZHRoPSI2NDAiIGhlaWdodD0iNDAwIiBmaWxsPSJ1cmwoI2ZhZGUpIi8+PC9tYXNrPgogIDwvZGVmcz4KICA8cmVjdCB3aWR0aD0iNjQwIiBoZWlnaHQ9IjQwMCIgZmlsdGVyPSJ1cmwoI3ZhcG91cikiIG1hc2s9InVybCgjYmFuaykiLz4KPC9zdmc+Cg==) 50%/100% 100% no-repeat;width:220%;height:140%;animation:48s ease-in-out infinite alternate weather-cloud-drift;position:absolute;top:-35%;left:-60%;-webkit-mask-image:radial-gradient(#000 35%,#0000 72%);mask-image:radial-gradient(#000 35%,#0000 72%)}.weather-scene__cloud-bank.is-near{opacity:.72;filter:brightness(.72);width:220%;height:140%;animation-duration:65s;animation-direction:alternate-reverse;animation-delay:-22s;top:0;left:-55%}.weather-scene.has-breaks .weather-scene__cloud-bank{opacity:.6;height:65%;top:16%}.weather-scene.has-breaks .weather-scene__cloud-bank.is-near{opacity:.35;top:58%}.weather-scene.is-night .weather-scene__cloud-bank{filter:brightness(.55)saturate(.7)}.weather-scene--rain .weather-scene__cloud-bank,.weather-scene--storm .weather-scene__cloud-bank{filter:brightness(.55);opacity:1}.weather-scene--storm .weather-scene__cloud-bank.is-near{filter:brightness(.32);animation-duration:34s}.weather-scene__haze{filter:blur(10px);background:radial-gradient(at 65% 80%,#cfe5f31f,#0000 60%);animation:32s ease-in-out infinite alternate weather-haze;inset:-20%}.weather-scene--fog .weather-scene__haze{filter:blur(12px);background:repeating-linear-gradient(174deg,#0000 0 20px,#e2ebed50 43px,#0000 78px)}.weather-scene__precipitation{overflow:hidden}.weather-scene__drop{top:-35px;left:var(--weather-x);width:1px;height:24px;opacity:var(--weather-opacity);animation:weather-rain var(--weather-speed) linear infinite;animation-delay:var(--weather-delay);background:linear-gradient(#0000,#d8edfdbb);position:absolute}.weather-scene__drop:nth-child(3n){filter:blur(.4px);width:.65px;height:14px}.weather-scene--storm .weather-scene__drop{height:32px}.weather-scene--snow .weather-scene__drop{width:var(--weather-size);height:var(--weather-size);background:#f1f7ff;border-radius:50%;animation-name:weather-snow;box-shadow:0 0 3px #e7f3ff44}.weather-scene--snow .weather-scene__drop:nth-child(3n){filter:blur(.7px)}.weather-scene__sheet-lightning{opacity:0;background:radial-gradient(at 68% 12%,#d5e6ff88,#0000 70%);animation:19s ease-in-out infinite weather-distant-lightning}@keyframes weather-distant-lightning{0%,76%,91%,to{opacity:0}83%{opacity:.38}}@keyframes weather-cloud-drift{0%{transform:translate(-5%)}to{transform:translate(5%,-3%)}}@keyframes weather-sun-breathe{to{opacity:.8;transform:scale(1.08)}}@keyframes weather-haze{to{transform:translate(10%,3%)}}@keyframes weather-rain{0%{transform:translate(12px,-20px)rotate(12deg)}to{transform:translate(-42px,calc(100cqh + 75px))rotate(12deg)}}@keyframes weather-snow{0%{transform:translateY(-10px)}50%{transform:translate3d(var(--weather-sway), 50cqh, 0)}to{transform:translateY(calc(100cqh + 45px))}}.weather-scene.is-compact{aspect-ratio:1;color:#dcebf7;flex:none;width:28px;height:28px;overflow:visible;-webkit-mask-image:none;mask-image:none}.weather-scene__symbol{fill:none;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;display:block}.weather-scene--clear.is-day.is-compact{color:#ffdf59}.weather-scene--clear.is-day.is-compact circle{fill:#ffda43}.weather-scene--cloud.is-compact .weather-scene__symbol>path,.weather-scene--rain.is-compact .weather-scene__symbol>path:first-child,.weather-scene--snow.is-compact .weather-scene__symbol>path:first-child,.weather-scene--storm.is-compact .weather-scene__symbol>path:first-child{fill:#bed6ec30}.weather-scene--rain.is-compact .weather-scene__symbol>path:last-child{stroke:#8dd7ff}@media (prefers-reduced-motion:reduce){.weather-scene *,.weather-scene :before,.weather-scene :after{animation:none!important}.weather-scene__drop{top:var(--weather-y)}.weather-scene__sheet-lightning{display:none}}.app-shell--calendar.app-shell--connected{width:100%;max-width:none}.app-shell--calendar.app-shell--connected>.main-content{overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:30px;display:block;overflow:hidden auto}.calendar-tile{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.calendar-tile header{justify-content:space-between;align-items:center;gap:10px;display:flex}.calendar-tile button{font:inherit;color:inherit;cursor:pointer}.calendar-tile__month,.calendar-tile__add,.calendar-tile footer button{background:0 0;border:0;padding:5px 0}.calendar-tile__month{text-align:left;text-transform:capitalize;font-weight:600!important}.calendar-tile__add{white-space:nowrap;align-items:center;gap:5px;display:flex;font-size:.78rem!important}.calendar-tile__add .icon{width:16px;height:16px}.calendar-tile__body{flex:1;grid-template-columns:1.1fr 1fr;gap:18px;min-height:0;display:grid}.calendar-tile__month-grid{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(22px,1fr);gap:2px;min-height:0;display:grid}.calendar-tile__weekday{text-align:center;color:#e4edff90;align-self:center;font-size:.7em}.calendar-tile__month-grid button{background:0 0;border:1px solid #0000;border-radius:9px;min-width:0;padding:4px 0 8px;font-size:.85em;position:relative}.calendar-tile__month-grid button:disabled{opacity:.28;cursor:default}.calendar-tile__month-grid button.is-today{color:#122a46;background:#a5d4ff;font-weight:700}.calendar-tile__month-grid button.is-selected{border-color:#bddcff99}.calendar-tile__dots{justify-content:center;gap:3px;display:flex;position:absolute;bottom:3px;left:0;right:0}.calendar-tile__dots b{border-radius:50%;width:4px;height:4px}.calendar-tile__agenda{border-left:1px solid #ffffff18;min-width:0;padding-left:14px;padding-right:4px;overflow:auto}.calendar-tile__agenda h3{margin:2px 0 12px;font-size:.85em;font-weight:500}.calendar-tile__agenda p{color:#e4edff99;font-size:.8em;line-height:1.65}.calendar-tile__agenda .calendar-event{gap:5px;margin-bottom:10px;padding:8px 10px;font-size:.8em}.calendar-tile__agenda .calendar-event strong{white-space:normal;overflow-wrap:anywhere}.calendar-tile footer button{color:#e4edffb0;justify-content:space-between;width:100%;font-size:.73em;display:flex}.calendar-tile button:focus-visible{outline-offset:2px;outline:2px solid #a5d4ff}.calendar-workspace,.calendar-editor{--cal-line:#ffffff24;--cal-muted:#eef4ffa8;color:#f5f7fc;width:100%;min-width:0}.calendar-page-header,.calendar-page-actions,.calendar-period-controls,.calendar-editor__heading,.calendar-form-section-title{align-items:center;gap:16px;display:flex}.calendar-page-header{justify-content:space-between;padding:12px 8px 25px}.calendar-page-header h2,.calendar-editor__heading h2{letter-spacing:-.035em;margin:0;font-size:clamp(26px,2.5vw,40px);font-weight:500}.calendar-page-header p{color:var(--cal-muted);text-transform:capitalize;margin:5px 0 0}.calendar-search{align-items:center;gap:10px;max-width:320px;display:flex}.calendar-search input{width:100%}.calendar-surface,.calendar-editor{border:1px solid var(--cal-line);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);background:linear-gradient(135deg,#28384ec7,#21202fc2);border-radius:28px;box-shadow:0 20px 60px #0003,inset 0 1px #ffffff12}.calendar-surface{overflow:hidden}.calendar-controls{border-bottom:1px solid var(--cal-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;display:flex}.calendar-period-controls{gap:8px}.calendar-period-controls input{max-width:160px}.calendar-segments{border:1px solid var(--cal-line);background:#0b182a35;border-radius:14px;gap:4px;padding:4px;display:inline-flex}.calendar-segments button,.calendar-person-filters button{color:var(--cal-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:10px;padding:10px 16px}.calendar-segments button[aria-pressed=true]{color:#fff;background:#ffffff20;box-shadow:0 2px 8px #0002}.calendar-person-filters{flex-wrap:wrap;gap:5px;width:100%;display:flex}.calendar-person-filters button{align-items:center;gap:8px;padding:7px 12px;display:flex}.calendar-person-filters button[aria-pressed=true]{color:#fff;background:#ffffff16}.calendar-person-filters i{border-radius:50%;width:8px;height:8px}.calendar-large-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekday{text-align:right;color:var(--cal-muted);padding:16px;font-size:.83rem}.calendar-day-cell{border-top:1px solid var(--cal-line);border-right:1px solid var(--cal-line);min-width:0;min-height:130px;padding:10px}.calendar-day-cell:nth-child(7n){border-right:0}.calendar-day-cell.is-outside{background:#00000017}.calendar-day-cell.is-outside .calendar-day-number{opacity:.4}.calendar-day-number{width:34px;height:34px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;margin-left:auto;display:block}.calendar-day-number.is-today{color:#0c2742;background:#a5d4ff;font-weight:700}.calendar-cell-events{gap:5px;margin-top:8px;display:grid}.calendar-event{text-align:left;border:0;border-left:3px solid var(--event-colour,#b6a1ed);background:color-mix(in srgb, var(--event-colour,#b6a1ed) 10%, transparent);width:100%;min-width:0;color:inherit;font:inherit;border-radius:4px 9px 9px 4px;gap:5px;padding:14px 16px;display:grid}button.calendar-event{cursor:pointer}.calendar-event strong{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.calendar-event span,.calendar-event small{color:var(--cal-muted);font-size:.8em}.calendar-event.is-compact{align-items:center;gap:7px;padding:7px;font-size:.81rem;display:flex}.calendar-event.is-compact span{flex:none}.calendar-event.is-complete{opacity:.55}.calendar-more{color:var(--cal-muted);text-align:left;cursor:pointer;background:0 0;border:0;padding:6px}.calendar-large-grid.is-week .calendar-day-cell{min-height:430px}.calendar-agenda-page{align-content:start;gap:28px;min-height:440px;padding:26px;display:grid}.calendar-agenda-page section{gap:12px;display:grid}.calendar-agenda-page h3{text-transform:capitalize;margin:0 0 4px;font-weight:500}.calendar-editor{max-width:1180px;margin:12px auto 30px;padding:clamp(24px,4vw,56px)}.calendar-editor__heading{justify-content:space-between;margin-bottom:40px}.calendar-form-fields{border:0;gap:30px;min-width:0;margin:0;padding:0;display:grid}.calendar-form-fields label{gap:10px;font-size:.92rem;display:grid}.calendar-form-fields input:not([type=checkbox]),.calendar-form-fields textarea,.calendar-form-fields select,.calendar-search input,.calendar-period-controls input{border:1px solid var(--cal-line);color:inherit;min-height:48px;font:inherit;box-sizing:border-box;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#101c3045;border-radius:12px;width:100%;padding:12px 14px}.calendar-form-fields input:focus,.calendar-form-fields textarea:focus,.calendar-form-fields select:focus{outline-offset:3px;outline:2px solid #95cafa}.calendar-form-fields h3{margin:0 0 16px;font-size:1rem;font-weight:500}.calendar-form-section-title{justify-content:space-between}.calendar-form-two{grid-template-columns:1fr 1fr;gap:32px;display:grid}.calendar-date-time{grid-template-columns:minmax(0,1fr) minmax(95px,.6fr);gap:12px;display:grid}.calendar-form-fields .calendar-check{align-items:center;gap:8px;display:flex}.calendar-person-picker{flex-wrap:wrap;gap:9px;display:flex}.calendar-person-picker label{border:1px solid;border-radius:12px;align-items:center;gap:8px;padding:12px;display:flex}.calendar-helper{color:var(--cal-muted);font-size:.84rem;line-height:1.6}.calendar-options{border-top:1px solid var(--cal-line);padding-top:24px}.calendar-options summary{cursor:pointer;padding:0 0 20px}.calendar-editor__actions{border-top:1px solid var(--cal-line);justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;display:flex}.calendar-details-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.calendar-detail-title{overflow-wrap:anywhere;margin:0 0 36px;font-size:clamp(28px,3vw,42px);font-weight:400}.calendar-details h4{color:var(--cal-muted);font-weight:500}.calendar-note{white-space:pre-wrap;overflow-wrap:anywhere}.calendar-workspace button:focus-visible,.calendar-editor button:focus-visible{outline-offset:3px;outline:2px solid #a5d4ff}@media (width>=1600px){.calendar-day-cell{min-height:155px}}@media (width>=901px){.calendar-workspace{flex-direction:column;height:100%;display:flex}.calendar-page-header{flex:none;padding:8px 8px 18px}.calendar-surface{flex-direction:column;flex:1;min-height:440px;display:flex}.calendar-controls{flex:none;gap:10px;padding:14px 20px}.calendar-large-grid{grid-template-rows:36px repeat(var(--calendar-rows), minmax(0, 1fr));flex:1;min-height:0}.calendar-weekday{padding:10px 16px}.calendar-day-cell{scrollbar-width:thin;min-height:0;padding:5px 8px;overflow:auto}.calendar-day-number{border-radius:9px;width:27px;height:27px;font-size:.85rem}.calendar-cell-events{gap:3px;margin-top:4px}.calendar-event.is-compact{padding:4px 6px;font-size:.75rem}.calendar-more{padding:2px 4px;font-size:.7rem}.calendar-large-grid.is-week .calendar-day-cell{min-height:0}.calendar-agenda-page{min-height:0;overflow:auto}}@media (width<=900px){.calendar-page-header{align-items:flex-start}.calendar-page-actions{flex-direction:column-reverse;align-items:flex-end}.calendar-weekday{padding:12px 4px;font-size:.7rem;overflow:hidden}.calendar-day-cell{min-height:110px;padding:5px}.calendar-event.is-compact{gap:3px;font-size:.7rem;display:grid}.calendar-controls{padding:16px}}@media (width<=600px){.calendar-form-two,.calendar-details-grid{grid-template-columns:1fr;gap:24px}.calendar-editor__heading{flex-direction:column;align-items:flex-start;gap:24px}.calendar-page-header{flex-wrap:wrap;gap:16px}.calendar-page-actions{flex-direction:row;width:100%}.calendar-search{min-width:0}.calendar-page-actions .button{white-space:nowrap}.calendar-large-grid.is-month{min-width:560px}.calendar-large-grid.is-week{min-width:680px}.calendar-surface{overflow-x:auto}.calendar-day-cell{min-height:100px}}.homeos-dashboard{--dashboard-blue:var(--home-dashboard-accent);--dashboard-line:var(--home-dashboard-border);--dashboard-panel:var(--home-dashboard-panel);isolation:isolate;block-size:100%;min-block-size:0;inline-size:100%;color:var(--ink);background:radial-gradient(circle at 72% 12%,#639ce033,#0000 38%),linear-gradient(155deg,#07101f,#0b1d34 56%,#071422);position:relative;overflow:hidden}.homeos-dashboard__city-backdrop{z-index:-1;opacity:.72;filter:saturate(.92)contrast(1.04);pointer-events:none;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.01)}.homeos-dashboard__city-backdrop:after{content:"";background:linear-gradient(#040c192e,#030a168f),radial-gradient(circle at 52% 30%,#0000 0 22%,#030b1833 72%);position:absolute;inset:0}.homeos-dashboard__matrix{grid-template-rows:minmax(0,1.05fr) minmax(0,.95fr) minmax(0,.78fr);grid-template-columns:repeat(60,minmax(0,1fr));gap:clamp(8px,1vw,15px);block-size:100%;min-block-size:0;padding:clamp(10px,1.25vw,20px);display:grid}.homeos-dashboard__tile,.homeos-dashboard__transit-slot{min-width:0;min-height:0}.homeos-dashboard__tile{text-align:left;color:inherit;border:1px solid var(--dashboard-line);background:var(--dashboard-panel);-webkit-backdrop-filter:blur(16px)saturate(1.08);backdrop-filter:blur(16px)saturate(1.08);font:inherit;border-radius:clamp(16px,1.45vw,25px);flex-direction:column;padding:clamp(12px,1.2vw,19px);display:flex;position:relative;overflow:hidden;box-shadow:0 16px 40px #00050f38,inset 0 1px #d1e7ff1c}.homeos-dashboard__tile:before{content:"";aspect-ratio:1;background:var(--tile-motif,#569ce62b);filter:blur(18px);pointer-events:none;border-radius:50%;width:70%;position:absolute;inset:-35% auto auto -20%}.homeos-dashboard__tile:after{content:"";pointer-events:none;background:linear-gradient(112deg,#0000 20%,#ffffff0e 45%,#0000 68%);animation:9s ease-in-out infinite home-tile-sweep;position:absolute;inset:0;transform:translate(-115%)}.homeos-dashboard__tile-heading{z-index:1;align-items:center;gap:8px;min-height:27px;display:flex;position:relative}.homeos-dashboard__sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.homeos-dashboard__tile-action{z-index:3;color:#deefffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#05112147;border:1px solid #beddff2e;border-radius:10px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:10px;right:10px}.homeos-dashboard__tile-action svg{width:16px;height:16px}.homeos-dashboard__tile-heading h2{letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:clamp(.75rem,.88vw,.96rem);line-height:1.2;overflow:hidden}.homeos-dashboard__tile-icon{color:#9dceff;background:#5ca4f024;border-radius:9px;flex:none;place-items:center;width:28px;height:28px;display:grid}.homeos-dashboard__tile-icon svg{width:17px;height:17px}.homeos-dashboard__tile-body{z-index:1;scrollbar-width:thin;scrollbar-color:#99c7f540 transparent;flex:1;min-height:0;margin-top:0;position:relative;overflow:auto}.homeos-dashboard__tile.has-heading .homeos-dashboard__tile-body{margin-top:clamp(8px,.8vw,12px)}.homeos-dashboard__tile.is-interactive{cursor:pointer;transition:border-color var(--motion), transform var(--motion), background var(--motion)}.homeos-dashboard__tile.is-interactive:hover{border-color:#97cdff85;transform:translateY(-1px)}.homeos-dashboard__tile.is-interactive:focus-visible,.homeos-dashboard__tile button:focus-visible,.homeos-dashboard__tile input:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:2px}.homeos-dashboard__tile--weather{--tile-motif:#67aaef3d;grid-column:span 20;padding:clamp(10px,1vw,16px)}.homeos-dashboard__tile--calendar{--tile-motif:#8a82ef29;grid-column:span 20}.homeos-dashboard__tile--notices{--tile-motif:#e8ad5d21;grid-column:span 20}.homeos-dashboard__tile--shopping,.homeos-dashboard__transit-slot,.homeos-dashboard__tile--music,.homeos-dashboard__tile--luuk{grid-column:span 15}.homeos-dashboard__tile--living,.homeos-dashboard__tile--kitchen,.homeos-dashboard__tile--bath,.homeos-dashboard__tile--hall,.homeos-dashboard__tile--private-room{grid-column:span 12}.homeos-dashboard__weather-layout{grid-template-columns:minmax(0,.92fr) minmax(118px,1.08fr);align-items:center;gap:clamp(8px,.9vw,14px);display:grid}.homeos-dashboard__weather-copy{min-width:0}.homeos-dashboard__weather-place{color:#e8f4ffc7;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:clamp(.64rem,.72vw,.76rem);font-weight:650;display:block}.homeos-dashboard__weather-now>div{gap:1px;min-width:0;display:grid}.homeos-dashboard__weather-now strong{letter-spacing:-.07em;font-size:clamp(2.1rem,3.1vw,4rem);line-height:.95}.homeos-dashboard__weather-now span{color:var(--muted);font-size:clamp(.72rem,.9vw,.95rem)}.homeos-dashboard__weather-now time{letter-spacing:-.055em;font-variant-numeric:tabular-nums;font-size:clamp(1rem,1.45vw,1.85rem);font-weight:300;line-height:1}.homeos-dashboard__high-low{color:var(--muted);margin:clamp(6px,.7vw,10px) 0 0;font-size:clamp(.67rem,.75vw,.8rem)}.homeos-dashboard__high-low b{color:var(--ink);margin-left:6px}.homeos-dashboard__forecast{gap:clamp(6px,.7vw,10px);margin-top:clamp(7px,.7vw,10px);display:flex;overflow-x:auto}.homeos-dashboard__forecast>span{background:#ffffff0e;border-radius:11px;grid-template-columns:auto auto auto;align-items:center;gap:5px;min-width:102px;padding:4px 7px 4px 4px;display:grid}.homeos-dashboard__forecast time,.homeos-dashboard__forecast small{color:var(--muted);font-size:.65rem}.homeos-dashboard__weather-warning{color:#ffe2a7;background:#58300c47;border:1px solid #ffc46157;border-radius:9px;margin-top:6px;font-size:.65rem}.homeos-dashboard__weather-warning.is-severe{color:#ffd0c8;background:#621b1857;border-color:#ff84708c}.homeos-dashboard__weather-warning summary{cursor:pointer;min-height:28px;padding:5px 8px}.homeos-dashboard__weather-warning summary span{text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:calc(100% - 18px);font-weight:700;display:inline-block;overflow:hidden}.homeos-dashboard__weather-warning p{color:#fff0dad1;margin:0;padding:1px 8px 7px;line-height:1.35}.homeos-dashboard__weather-push{align-items:center;min-height:30px;margin-top:6px;display:flex}.homeos-dashboard__calendar-wrap{grid-template-rows:auto minmax(0,1fr);gap:4px;height:100%;display:grid}.homeos-dashboard__calendar-month{color:#eef7ffe0;font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 4px;font-size:clamp(.68rem,.78vw,.82rem);font-weight:650}.homeos-dashboard__forecast b{font-size:.82rem}.homeos-dashboard__forecast small{white-space:nowrap;text-overflow:ellipsis;grid-column:1/-1;overflow:hidden}.homeos-dashboard__calendar{grid-template-rows:repeat(7,minmax(0,1fr));grid-template-columns:repeat(7,1fr);gap:1px;height:100%;display:grid}.homeos-dashboard__calendar>span{color:#ffffffd1;border-radius:7px;place-items:center;min-height:0;font-size:clamp(.58rem,.7vw,.73rem);display:grid;position:relative}.homeos-dashboard__calendar .homeos-dashboard__weekday{color:var(--muted);text-transform:uppercase;font-size:.56rem}.homeos-dashboard__calendar .is-outside{opacity:.26}.homeos-dashboard__calendar .is-today{background:var(--dashboard-blue);color:#07182a}.homeos-dashboard__calendar i{background:#b8ddff;border-radius:50%;width:3px;height:3px;position:absolute;bottom:2px}.homeos-dashboard__notice-list,.homeos-dashboard__shopping-list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.homeos-dashboard__notice-list li{background:#ffffff0b;border-radius:10px;gap:2px;padding:7px 9px;display:grid}.homeos-dashboard__notice-list strong,.homeos-dashboard__shopping-list span{font-size:clamp(.7rem,.8vw,.84rem)}.homeos-dashboard__notice-list span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;overflow:hidden}.homeos-dashboard__shopping-list label{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;display:grid}.homeos-dashboard__shopping-list input{appearance:none;background:#00000029;border:1px solid #abd2f97a;border-radius:6px;width:18px;height:18px;margin:0}.homeos-dashboard__shopping-list small{color:var(--muted);font-size:.62rem}.homeos-dashboard__transit-slot>.transit-widget,.homeos-dashboard__transit-slot>.homeos-dashboard__tile{width:100%;height:100%}.homeos-dashboard__transit-slot .transit-widget__stations{min-height:0;overflow:auto}.homeos-dashboard__transit-slot .transit-widget__line.is-sbahn{background:#376da8}.homeos-dashboard__transit-slot .transit-widget__line.is-bus{color:#fff;background:#a9672e}.homeos-dashboard__track{grid-template-columns:clamp(42px,4vw,62px) minmax(0,1fr);align-items:center;gap:10px;display:grid}.homeos-dashboard__track img,.homeos-dashboard__cover{aspect-ratio:1;object-fit:cover;background:#ffffff12;border-radius:12px;place-items:center;width:100%;display:grid}.homeos-dashboard__cover svg{width:24px}.homeos-dashboard__track>div{gap:2px;min-width:0;display:grid}.homeos-dashboard__track strong,.homeos-dashboard__track span,.homeos-dashboard__track small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.homeos-dashboard__track strong{font-size:.82rem}.homeos-dashboard__track span{color:var(--muted);font-size:.7rem}.homeos-dashboard__track small{color:var(--glass-faint);font-size:.62rem}.homeos-dashboard__tile--music progress{accent-color:#8bc5ff;width:100%;height:3px;margin-top:9px}.homeos-dashboard__media-controls{justify-content:center;align-items:center;gap:7px;margin-top:7px;display:flex}.homeos-dashboard__media-controls .button{border-radius:10px;min-width:34px;min-height:30px;padding:4px 8px}.homeos-dashboard__tile--luuk{background:linear-gradient(0deg, #040d19eb, #07122233), var(--luuk-poster,linear-gradient(145deg, #25476e, #0b1d35));background-position:50%;background-size:cover;padding:0}.homeos-dashboard__tile--luuk>button{z-index:1;width:100%;height:100%;color:inherit;font:inherit;text-align:left;background:linear-gradient(#0000 30%,#030a13db);border:0;flex-direction:column;padding:clamp(12px,1.2vw,19px);display:flex;position:relative}.homeos-dashboard__tile--luuk>button:disabled{opacity:1}.homeos-dashboard__luuk-video{object-fit:cover;opacity:.62;width:100%;height:100%;position:absolute;inset:0}.homeos-dashboard__luuk-mark{border:1px solid #bedaf773;border-radius:9px;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.homeos-dashboard__luuk-copy{text-shadow:0 2px 12px #000;gap:3px;margin-top:auto;display:grid}.homeos-dashboard__luuk-copy strong{font-size:clamp(.85rem,1vw,1.1rem)}.homeos-dashboard__luuk-copy span{color:#ffffffc2;font-size:.68rem}.homeos-dashboard__luuk-dialog{max-width:min(76vw,960px)}.homeos-dashboard__tile--luuk:has(.homeos-dashboard__movie-strip)>button{height:calc(100% - 82px)}.homeos-dashboard__movie-strip{z-index:1;gap:8px;height:82px;padding:0 18px 12px;display:flex;position:relative}.homeos-dashboard__movie-strip button{cursor:pointer;background:#08111b;border:1px solid #0000;border-radius:8px;flex:1;min-width:0;padding:0;overflow:hidden}.homeos-dashboard__movie-strip button[aria-pressed=true]{border-color:#a3cfff}.homeos-dashboard__movie-strip img{object-fit:cover;width:100%;height:100%;display:block}.homeos-dashboard__luuk-copy progress{accent-color:#d5e7ff;width:100%;height:3px}.homeos-dashboard__luuk-dialog video{background:#000;border-radius:14px;width:100%;max-height:72vh;display:block}.homeos-dashboard__room-reading{align-items:baseline;gap:7px;display:flex}.homeos-dashboard__room-reading strong{letter-spacing:-.05em;font-size:clamp(1.45rem,2.2vw,2.7rem);line-height:1.1}.homeos-dashboard__room-reading span,.homeos-dashboard__heating{color:var(--muted);font-size:.62rem}@media (width>=901px) and (height<=800px){.homeos-dashboard__tile--living .homeos-dashboard__tile-body,.homeos-dashboard__tile--kitchen .homeos-dashboard__tile-body,.homeos-dashboard__tile--bath .homeos-dashboard__tile-body,.homeos-dashboard__tile--hall .homeos-dashboard__tile-body,.homeos-dashboard__tile--private-room .homeos-dashboard__tile-body{margin-top:6px}.homeos-dashboard__room-controls{margin-top:5px}.homeos-dashboard__heating{margin-top:4px}}.homeos-dashboard__room-controls{gap:5px;margin-top:7px;display:grid}.homeos-dashboard__room-controls .button{white-space:nowrap;border-radius:9px;justify-content:flex-start;gap:6px;min-height:28px;padding:4px 7px;display:flex;overflow:hidden}.homeos-dashboard__room-controls .button span{text-overflow:ellipsis;font-size:.66rem;overflow:hidden}.homeos-dashboard__room-controls svg{flex:none;width:14px;height:14px}.homeos-dashboard__heating{margin-top:6px;display:block}.homeos-dashboard__locked{text-align:center;height:100%;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.homeos-dashboard__locked svg{opacity:.6;width:24px;height:24px}.homeos-dashboard__locked span{font-size:.67rem}.homeos-dashboard__state{text-align:center;height:100%;min-height:44px;color:var(--muted);align-content:center;place-items:center;gap:7px;display:grid}.homeos-dashboard__state>span{filter:blur(.5px);background:radial-gradient(circle at 35% 30%,#a0cdf973,#4170a51f);border-radius:50%;width:34px;height:34px}.homeos-dashboard__state p{margin:0;font-size:.7rem}.homeos-dashboard__state--loading>span{background:linear-gradient(100deg,#4679b12e,#a0cdf97a,#4679b12e) 0 0/200% 100%;animation:1.5s linear infinite home-state-loading}.homeos-dashboard__state--error>span,.homeos-dashboard__state--offline>span{background:radial-gradient(circle at 35% 30%,#e88f8f6b,#64314129)}.homeos-dashboard__retry{z-index:2;border-radius:9px;min-width:30px;min-height:30px;padding:5px;position:absolute;top:9px;right:9px}.homeos-dashboard__retry svg{width:15px}.homeos-dashboard__state-mark{max-width:100%;color:var(--home-amber);background:var(--canvas);border-radius:5px;flex:none;align-self:flex-end;margin-top:3px;padding:2px 5px;font-size:.6rem;line-height:1.2}@keyframes home-tile-sweep{0%,72%{transform:translate(-115%)}88%,to{transform:translate(115%)}}@keyframes home-state-loading{to{background-position:-200% 0}}@media (width>=901px){.homeos-dashboard__tile--weather,.homeos-dashboard__tile--calendar,.homeos-dashboard__tile--notices{grid-row:1}.homeos-dashboard__tile--shopping,.homeos-dashboard__transit-slot,.homeos-dashboard__tile--music,.homeos-dashboard__tile--luuk{grid-row:2}.homeos-dashboard__tile--living,.homeos-dashboard__tile--kitchen,.homeos-dashboard__tile--bath,.homeos-dashboard__tile--hall,.homeos-dashboard__tile--private-room{grid-row:3}}@media (width<=900px){.homeos-dashboard{block-size:auto;min-block-size:100%;overflow:visible}.homeos-dashboard__matrix{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(145px,auto);gap:9px;height:auto;padding:10px}.homeos-dashboard__tile--weather,.homeos-dashboard__tile--calendar,.homeos-dashboard__tile--notices{grid-column:1/-1}.homeos-dashboard__tile--shopping,.homeos-dashboard__transit-slot,.homeos-dashboard__tile--music,.homeos-dashboard__tile--luuk,.homeos-dashboard__tile--living,.homeos-dashboard__tile--kitchen,.homeos-dashboard__tile--bath,.homeos-dashboard__tile--hall,.homeos-dashboard__tile--private-room{grid-column:span 1}.homeos-dashboard__tile--weather{min-height:220px}.homeos-dashboard__tile--calendar{min-height:265px}.homeos-dashboard__weather-now strong{font-size:3.1rem}.homeos-dashboard__weather-now time{font-size:2.35rem}.homeos-dashboard__weather-layout{grid-template-columns:minmax(125px,.8fr) minmax(180px,1.2fr)}.homeos-dashboard__tile-body{overflow:visible}}@media (width<=460px){.homeos-dashboard__matrix{grid-auto-rows:minmax(132px,auto)}.homeos-dashboard__tile{border-radius:16px;padding:11px}.homeos-dashboard__tile--shopping,.homeos-dashboard__transit-slot,.homeos-dashboard__tile--music,.homeos-dashboard__tile--luuk{grid-column:1/-1}.homeos-dashboard__weather-now{align-items:end}.homeos-dashboard__weather-now>div{gap:0;display:grid}.homeos-dashboard__weather-now time{font-size:1.35rem}.homeos-dashboard__weather-layout{grid-template-columns:minmax(108px,.8fr) minmax(142px,1.2fr)}.homeos-dashboard__forecast>span{min-width:69px;padding:5px 7px}.homeos-dashboard__room-controls .button{min-height:38px}}.homeos-dashboard__weather-layout{isolation:isolate;grid-template-columns:1fr;position:relative}.homeos-dashboard__weather-layout>.weather-scene:not(.is-compact){aspect-ratio:auto;z-index:-1;height:100%;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.homeos-dashboard__tile:after,.homeos-dashboard__state--loading>span{animation:none}.homeos-dashboard__tile.is-interactive{transition:none}.homeos-dashboard__luuk-video{display:none}}.music-provider-player{padding:0;position:relative;overflow:hidden}.music-provider-player.music-provider-player--compact{padding:0;display:block}.music-stage{isolation:isolate;border-radius:inherit;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.music-stage__background,.music-stage__reveal,.music-stage__lyrics{position:absolute;inset:0}.music-stage__background{z-index:-2;background:var(--premium-surface)}.music-stage__background :is(img,video){object-fit:cover;width:100%;height:100%}.music-stage[data-mode=lyrics] .music-stage__background img{filter:blur(24px)brightness(.3);transform:scale(1.15)}.music-stage__reveal{z-index:0;border:0;width:100%;height:100%;padding:0;background:0 0!important}.music-stage__reveal:focus-visible{outline-offset:-4px!important}.music-stage__overlay{z-index:1;box-sizing:border-box;opacity:0;visibility:hidden;background:linear-gradient(90deg,#10223555 0%,#0b1b30b8 43%,#071728e8 100%);flex-direction:column;gap:12px;height:100%;padding:18px;transition:opacity .2s,visibility .2s;display:flex;position:relative}.music-stage--revealed .music-stage__overlay{opacity:1;visibility:visible}.music-stage__top{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;display:flex}.music-stage__source{color:var(--premium-muted);font-size:11px;text-decoration:none}.music-stage__top .music-provider-player__account{flex:1;min-width:0}.music-stage__hide{background:0 0;border:0;width:32px;height:32px;padding:0;font-size:24px!important}.music-stage__columns{flex:1;grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:18px;min-height:0;display:grid}.music-stage__player{flex-direction:column;gap:12px;min-width:0;min-height:0;display:flex;overflow-y:auto}.music-provider-player .music-stage__player .music-provider-player__track{text-align:center;flex-direction:column;align-items:center;gap:10px}.music-provider-player .music-stage__player .music-provider-player__artwork{aspect-ratio:1;width:clamp(60px,18cqw,180px);height:auto}.music-stage[data-mode=video] .music-provider-player__artwork,.music-stage[data-mode=lyrics] .music-provider-player__artwork{display:none}.music-stage[data-mode=video] .music-provider-player__track,.music-stage[data-mode=lyrics] .music-provider-player__track{margin-top:auto}.music-stage__modes{gap:4px;display:flex}.music-stage__modes button{border:1px solid var(--premium-border);background:var(--premium-control);border-radius:8px;padding:6px 12px;font-size:12px}.music-stage__modes button[aria-pressed=true]{color:var(--primary)}.music-stage__lyrics{text-align:center;color:var(--premium-muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.music-stage__lyrics p{margin:0;font-size:clamp(16px,3.2cqw,30px);line-height:1.4}.music-stage__lyrics .is-current{color:var(--glass-ink);font-weight:600}.music-shared-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;margin-left:6px;display:inline-block}.music-library{border-left:1px solid color-mix(in srgb, var(--premium-border) 55%, transparent);flex-direction:column;gap:12px;min-width:0;min-height:0;padding-left:18px;display:flex}.music-library input{border:1px solid var(--premium-border);background:var(--premium-control);width:100%;min-width:0;min-height:36px;color:inherit;font:inherit;border-radius:10px;padding:8px 10px;font-size:12px}.music-library input::placeholder{color:var(--premium-muted)}.music-library__scroll{flex:1;min-height:0;overflow-y:auto}.music-library__playlists{scrollbar-width:thin;scroll-snap-type:x mandatory;grid-auto-columns:calc(50% - 5px);grid-auto-flow:column;gap:8px;margin-bottom:12px;display:grid;overflow-x:auto}.music-library button{border:1px solid var(--premium-border);background:var(--premium-control);text-align:left;border-radius:10px;min-width:0;padding:6px;font-size:12px}.music-library__playlists button{flex-direction:column;gap:6px;display:flex;overflow:hidden}.music-library__playlists img{aspect-ratio:1.6;object-fit:cover;border-radius:5px;width:100%}.music-library__playlists span{text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden}.music-library__heading{margin-block:8px;font-size:13px;display:block}.music-library .music-library__song{background:0 0;border-color:#0000;align-items:center;gap:8px;width:100%;margin-bottom:4px;display:flex}.music-library__song img{object-fit:cover;border-radius:6px;flex-shrink:0;width:36px;height:36px}.music-library__song>span{flex:1;min-width:0}.music-library__song :is(strong,small){text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.music-library__song small{color:var(--premium-muted);font-size:10px}.music-library .music-library__song[aria-pressed=true]{background:var(--premium-control);color:var(--primary);border-color:var(--premium-border)}.homeos-dashboard__tile--music .homeos-dashboard__tile-body{padding:0}.homeos-dashboard__tile--music:has(.music-stage){padding:0}.homeos-dashboard__tile--music:has(.music-stage)>.homeos-dashboard__tile-heading{display:none}.homeos-dashboard__tile--music progress{margin-top:0}.music-stage__overlay{gap:12px;padding:clamp(12px,2.8cqw,24px)}.music-stage__top{border-bottom:1px solid var(--premium-border);padding-bottom:10px}.music-stage__columns{gap:clamp(12px,2.8cqw,24px)}.music-stage__player{scrollbar-width:thin;gap:12px}.music-provider-player .music-stage__player .music-provider-player__track{flex:1;justify-content:center;gap:12px}.music-provider-player .music-stage__player .music-provider-player__artwork{aspect-ratio:1;border-radius:14px;width:clamp(64px,30cqh,180px);max-width:78%;height:auto}.music-provider-player .music-stage__player .music-provider-player__artwork .icon{width:42%;height:42%}.music-provider-player .music-stage__player .music-provider-player__metadata strong{-webkit-line-clamp:1;font-size:clamp(16px,3cqw,24px);font-weight:600}.music-provider-player .music-stage__player .music-provider-player__metadata span{-webkit-line-clamp:2;font-size:clamp(12px,2cqw,15px)}.music-provider-player .music-stage__player .music-provider-player__timeline{flex-shrink:0}.music-provider-player .music-stage__player .music-provider-player__controls{flex-shrink:0;gap:clamp(12px,3cqw,28px)}.music-provider-player .music-stage__player .music-provider-player__controls .music-provider-player__play{border-color:var(--primary);width:56px;height:56px}.music-provider-player .music-stage__player .music-provider-player__device{min-height:40px;margin-top:4px}.music-provider-player .music-stage__player .music-provider-player__device button{min-height:38px;font-size:12px}.music-provider-player--compact .music-provider-player__account-name{display:none}.music-stage .music-provider-player__timeline progress{margin:0}.music-stage[data-state=idle] .music-provider-player__timeline{display:none}.music-stage__modes{border:1px solid var(--premium-border);border-radius:10px;flex-shrink:0;align-self:flex-start;gap:0;overflow:hidden}.music-stage__modes button{background:0 0;border:0;border-radius:0;padding:8px 18px}.music-stage__modes button[aria-pressed=true]{background:var(--premium-control)}.music-stage[data-mode=cover] .music-stage__background img{filter:blur(30px)brightness(.35);transform:scale(1.15)}.music-provider-player .music-stage[data-mode=video] .music-stage__player .music-provider-player__track,.music-provider-player .music-stage[data-mode=lyrics] .music-stage__player .music-provider-player__track{text-align:left;justify-content:flex-end;align-items:flex-start}.music-library{gap:12px;padding-left:clamp(12px,2.8cqw,24px)}.music-library input{flex-shrink:0;min-height:42px;padding:10px 14px;font-size:13px}.music-library__scroll{scrollbar-width:thin}.music-library__playlists{gap:10px;margin-bottom:16px}.music-library__playlists button{scroll-snap-align:start;background:#112b4255;gap:0;padding:0}.music-library__playlist-art{aspect-ratio:1.8;background:linear-gradient(135deg, var(--premium-control), #49648444);place-items:center;width:100%;display:grid;overflow:hidden}.music-library__playlist-art img{aspect-ratio:auto;border-radius:0;width:100%;height:100%}.music-library__playlist-art .icon{width:30px;height:30px;color:var(--premium-muted)}.music-library__playlists span{padding:9px 10px;font-size:12px}.music-library__playlists button[aria-pressed=true]{border-color:var(--primary)}.music-library__heading{justify-content:space-between;align-items:baseline;gap:8px;margin-block:12px 8px;font-size:16px;display:flex}.music-library__heading small{color:var(--premium-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;overflow:hidden}.music-library .music-library__song{border-radius:10px;gap:10px;min-height:54px;padding:7px}.music-library__song img{width:40px;height:40px}.music-library__song strong{font-size:13px;font-weight:600}.music-library__song small{margin-top:3px;font-size:11px}.music-library .music-library__song:disabled{opacity:1}.music-library__access{color:var(--premium-muted);margin:0;font-size:12px;line-height:1.5}@container (height<=360px){.music-stage__overlay{gap:8px;padding:12px}.music-stage__top{padding-bottom:6px}.music-stage__player{gap:7px}.music-provider-player .music-stage__player .music-provider-player__artwork{width:clamp(48px,26cqh,100px)}.music-provider-player .music-stage__player .music-provider-player__track{gap:7px}.music-provider-player .music-stage__player .music-provider-player__metadata strong{font-size:16px}.music-provider-player .music-stage__player .music-provider-player__metadata span{font-size:11px}.music-provider-player .music-stage__player .music-provider-player__controls .music-provider-player__play{width:44px;height:44px}.music-provider-player .music-stage__player .music-provider-player__device{min-height:32px}.music-provider-player .music-stage__player .music-provider-player__device button{min-height:30px;font-size:11px}.music-library{gap:8px}.music-library input{min-height:34px;padding:7px 10px;font-size:12px}.music-library__playlists{margin-bottom:8px}.music-library__heading{margin-block:8px 4px;font-size:14px}}@container (height<=260px){.music-provider-player .music-stage__player .music-provider-player__track{text-align:left;flex-direction:row;justify-content:flex-start}.music-provider-player .music-stage__player .music-provider-player__artwork{width:44px}.music-provider-player .music-stage__player .music-provider-player__controls button{width:28px;height:28px;padding:5px}.music-provider-player .music-stage__player .music-provider-player__controls .music-provider-player__play{width:36px;height:36px}.music-provider-player .music-stage__player .music-provider-player__notice{font-size:10px}.music-library__playlists{scrollbar-width:none;margin-bottom:6px}.music-library__playlists button{flex-direction:row;align-items:center;min-height:36px}.music-library__playlist-art{aspect-ratio:1;border-radius:5px;flex-shrink:0;width:28px;height:28px;margin-left:3px}.music-library__playlist-art .icon{width:18px;height:18px}.music-library__playlists span{padding:5px 7px}.music-library__heading{margin-block:5px}.music-library .music-library__song{gap:6px;min-height:38px;padding:4px}.music-library__song img{width:28px;height:28px}.music-library__song strong{font-size:11px}.music-library__song small{margin-top:1px;font-size:9px}}@container (width<=300px){.music-stage__columns{grid-template-columns:minmax(0,1fr);overflow-y:auto}.music-stage__player{min-height:210px;overflow:visible}.music-library{border-left:0;border-top:1px solid var(--premium-border);min-height:240px;padding:12px 0 0}}@media (prefers-reduced-motion:reduce){.music-stage__overlay{transition:none}}@media (width<=600px){.homeos-dashboard__tile--music:has(.music-stage){block-size:var(--music-mobile-tile-height);grid-column:1/-1}.music-stage__columns{grid-template-rows:minmax(0,1.35fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.music-stage__player{gap:6px;min-height:0;overflow:hidden}.music-provider-player .music-stage__player .music-provider-player__track{text-align:left;flex-direction:row;justify-content:flex-start}.music-provider-player .music-stage__player .music-provider-player__artwork{flex-shrink:0;width:64px}.music-provider-player .music-stage__player .music-provider-player__controls .music-provider-player__play{width:44px;height:44px}.music-library{border-left:0;border-top:1px solid var(--premium-border);min-height:0;padding:12px 0 0}}.music-library{--list-row-height:var(--music-library-row-height);gap:var(--s2)}.music-library__tabs{flex:none;align-self:flex-start}.music-library__tabs>button{padding:var(--s2) var(--s3)}.music-library>.field{flex:none;gap:0;margin:0}.music-library>.field>label{display:none}.music-library .homeos-select__trigger{min-height:var(--music-library-control-height);height:var(--music-library-control-height);font-size:var(--text-sm)}.music-library__results{flex-direction:column;flex:1;min-height:0;display:flex}.app-shell--connected .music-library .item-list{height:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;list-style:none;display:block}.music-library .page-item{height:var(--list-row-height)}.music-library .pagination{justify-content:flex-end;gap:var(--s2);min-height:var(--music-library-control-height)}.music-library .pagination>.button{padding:var(--s1);min-width:var(--music-library-control-height);min-height:var(--music-library-control-height);border-radius:var(--s2)}.music-library .pagination>span{font-size:var(--text-xs)}.music-library__playlist-row{border-bottom:var(--border) solid var(--collection-divider);align-items:center;height:100%;display:flex}.music-library .music-library__playlist-open{align-items:center;gap:var(--s2);min-width:0;height:100%;padding:var(--s1);background:0 0;border:0;flex:1;display:flex}.music-library__playlist-open>span:last-child{flex:1;min-width:0}.music-library__playlist-open :is(strong,small){white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.music-library__playlist-open strong{font-size:var(--text-sm)}.music-library__playlist-open small{font-size:var(--text-xs);color:var(--premium-muted);margin-top:var(--s1)}.music-library__playlist-open .music-library__playlist-art{aspect-ratio:1;border-radius:var(--s2);flex:none;width:40px;height:40px}.music-library .music-library__playlist-play,.music-library__selection>button{width:var(--music-library-control-height);height:var(--music-library-control-height);padding:var(--s2);background:0 0;border:0;flex:none;place-items:center;display:grid}.music-library__playlist-play .icon,.music-library__selection .icon{width:18px;height:18px}.music-library__selection{flex:none;justify-content:space-between;align-items:center;min-width:0;display:flex}.music-library__selection strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);overflow:hidden}.music-library .music-library__song{height:100%;min-height:0;margin:0}.music-library__more{min-height:var(--music-library-control-height);flex:none;text-align:center!important}.music-library__empty{font-size:var(--text-sm);color:var(--premium-muted)}.music-stage__source{font-size:var(--text-xs);flex:none;align-self:flex-start}@container (width<=500px){.music-library__playlist-open .music-library__playlist-art{width:28px;height:28px}.music-library .music-library__playlist-open{gap:var(--s1);padding:0}.music-library__playlist-open strong{font-size:var(--text-xs)}.music-library__playlist-open small{font-size:10px}.music-library__tabs>button{padding-inline:var(--s2)}}.music-library__search{gap:var(--s1);flex:none;min-width:0;display:flex}.music-library__search>input{min-width:0;min-height:var(--music-library-control-height);height:var(--music-library-control-height);padding:var(--s2);flex:1}.music-library__search>.field{flex:none;gap:0;width:105px;margin:0}.music-library__search>.field>label{display:none}.music-library__search .homeos-select__trigger{padding:var(--s1) var(--s2);gap:var(--s1);font-size:var(--text-xs)}.music-library__search .homeos-select__trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@container (width<=500px){.music-library__search>.field{width:78px}}@container (height<=260px){.music-library{--music-library-row-height:36px;--music-library-control-height:28px;gap:var(--s1)}.music-library__tabs>button{padding:var(--s1) var(--s2);font-size:11px}.music-library__playlist-open .music-library__playlist-art{width:24px;height:24px}.music-library__playlist-open strong{font-size:11px}.music-library__playlist-open small{display:none}.music-library .music-library__song{padding:var(--s1)}.music-library__search>input{padding:var(--s1);font-size:11px}}.music-provider-player{width:100%;min-width:0;height:100%;min-height:0;color:var(--glass-ink,#edf5ff);background:var(--premium-surface);border:1px solid var(--premium-border);border-radius:var(--premium-radius,24px);box-shadow:var(--premium-elevation);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);box-sizing:border-box;flex-direction:column;gap:16px;padding:24px;display:flex;container-type:inline-size}.music-provider-player--compact{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;gap:9px;padding:0;container-type:size}.music-provider-player--compact .music-provider-player__artwork{width:clamp(64px,25cqh,100px);height:clamp(64px,25cqh,100px)}.music-provider-player--compact .music-provider-player__account{min-height:24px}.music-provider-player--compact .music-provider-player__controls .music-provider-player__play{width:48px;height:48px}.music-provider-player--compact .music-provider-player__device{min-height:36px}.music-provider-player--compact .music-provider-player__empty{min-height:0}.homeos-dashboard__tile--music .homeos-dashboard__tile-body{container-type:size}@container (height<=250px){.music-provider-player--compact{grid-template-rows:auto minmax(40px,1fr) auto auto;grid-template-columns:minmax(0,1fr) auto;gap:5px;display:grid}.music-provider-player--compact .music-provider-player__account{grid-column:1/-1;min-height:20px}.music-provider-player--compact .music-provider-player__track{grid-area:2/1;gap:10px}.music-provider-player--compact .music-provider-player__artwork{width:44px;height:44px}.music-provider-player--compact .music-provider-player__metadata{gap:2px}.music-provider-player--compact .music-provider-player__metadata strong{-webkit-line-clamp:1;font-size:14px}.music-provider-player--compact .music-provider-player__metadata span{-webkit-line-clamp:1;font-size:11px}.music-provider-player--compact .music-provider-player__timeline{grid-area:3/1/auto/-1;gap:3px}.music-provider-player--compact .music-provider-player__timeline>div{font-size:10px}.music-provider-player--compact .music-provider-player__controls{grid-area:2/2;gap:5px}.music-provider-player--compact .music-provider-player__controls button{width:28px;height:28px;padding:5px}.music-provider-player--compact .music-provider-player__controls .music-provider-player__play{width:36px;height:36px}.music-provider-player--compact .music-provider-player__controls svg{width:18px;height:18px}.music-provider-player--compact .music-provider-player__device{grid-area:4/1/auto/-1;min-height:28px}.music-provider-player--compact .music-provider-player__device select,.music-provider-player--compact .music-provider-player__device button{min-height:26px;padding-block:3px;font-size:11px}.music-provider-player--compact .music-provider-player__notice{grid-column:1/-1;font-size:10px}.music-provider-player--compact .music-provider-player__empty{grid-area:2/1/-1/-1;gap:8px}}.music-provider-player__account{align-items:center;gap:10px;min-height:28px;display:flex}.music-provider-player__connections{flex-shrink:0;gap:4px;display:flex}.music-provider-player button{color:inherit;font:inherit;cursor:pointer}.music-provider-player__connections button{color:var(--premium-muted);background:0 0;border:0;border-radius:7px;padding:5px 9px;font-size:.75rem}.music-provider-player__connections button[aria-pressed=true]{background:var(--premium-control);color:var(--primary)}.music-provider-player__account-name{color:var(--premium-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:.75rem;overflow:hidden}.music-provider-player__settings{background:0 0;border:0;flex-shrink:0;place-items:center;width:32px;height:32px;margin-left:auto;display:grid}.music-provider-player__settings .icon{width:18px;height:18px}.music-provider-player__track{align-items:center;gap:18px;min-width:0;display:flex}.music-provider-player__artwork{background:var(--premium-control);border-radius:10px;flex-shrink:0;place-items:center;width:100px;height:100px;display:grid;overflow:hidden;box-shadow:0 4px 16px #030e2029}.music-provider-player__artwork img{object-fit:cover;width:100%;height:100%}.music-provider-player__artwork .icon{width:38px;height:38px;color:var(--premium-muted)}.music-provider-player__metadata{gap:7px;min-width:0;display:grid}.music-provider-player__metadata strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(1.05rem,2.8cqw,1.35rem);font-weight:500;line-height:1.25;display:-webkit-box;overflow:hidden}.music-provider-player__metadata span{color:var(--premium-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.4;display:-webkit-box;overflow:hidden}.music-provider-player__timeline{gap:6px;display:grid}.music-provider-player__timeline progress{appearance:none;width:100%;height:4px;color:var(--primary);background:#adc9e238;border:0;border-radius:4px;display:block;overflow:hidden}.music-provider-player__timeline progress::-webkit-progress-bar{background:#adc9e238}.music-provider-player__timeline progress::-webkit-progress-value{background:var(--primary);border-radius:4px}.music-provider-player__timeline progress::-moz-progress-bar{background:var(--primary);border-radius:4px}.music-provider-player__timeline>div{color:var(--premium-muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.75rem;display:flex}.music-provider-player__controls{justify-content:center;align-items:center;gap:22px;display:flex}.music-provider-player__controls button{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:10px;display:grid}.music-provider-player__controls svg{width:24px;height:24px}.music-provider-player__controls .music-provider-player__play{background:var(--premium-control);border:1.5px solid #e9f4ff;width:56px;height:56px;box-shadow:inset 0 0 0 3px #ffffff07}.music-provider-player__controls .music-provider-player__play svg{width:26px;height:26px}.music-provider-player__device{background:var(--premium-control);border:1px solid var(--premium-border);border-radius:9px;flex-shrink:0;align-items:center;gap:10px;min-width:0;min-height:40px;margin-top:auto;padding:0 12px;display:flex}.music-provider-player__device>svg{flex-shrink:0;width:22px;height:22px}.music-provider-player__device select{width:0;min-width:0;min-height:38px;font:inherit;color:inherit;text-overflow:ellipsis;background:0 0;border:0;flex:1;padding:6px 4px;font-size:.82rem}.music-provider-player__device option{background:var(--glass-strong,#112439)}.music-provider-player__device .music-provider-player__device-trigger{min-width:0;color:inherit;text-align:left;border:0;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.music-provider-player__device-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.music-provider-player__device-trigger svg{flex-shrink:0;width:18px;height:18px}.music-device-menu{box-sizing:border-box;border:1px solid var(--premium-border,#adc9e23b);color:var(--glass-ink,#edf5ff);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);background:linear-gradient(135deg,#26394aee,#152332f5);border-radius:16px;margin:0;padding:8px;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 16px 48px #02091366,inset 0 1px #ffffff12}.music-device-menu button{width:100%;min-height:48px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.music-device-menu button>svg{flex-shrink:0;width:22px;height:22px}.music-device-menu button>span:first-of-type{overflow-wrap:anywhere;flex:1}.music-device-menu small{opacity:.65;margin-top:4px;display:block}.music-device-menu button[aria-checked=true]{color:#b7ddff;background:#8dcaff19}.music-device-menu button:focus-visible{outline-offset:-2px;outline:2px solid #97ccff}.music-device-menu button:disabled{opacity:.4;cursor:default}.music-provider-player__device button{border:0;border-left:1px solid var(--glass-line);min-height:38px;color:var(--primary);background:0 0;flex-shrink:0;padding:7px 0 7px 10px;font-size:.78rem}.music-provider-player__notice{color:var(--premium-muted);margin:0;font-size:.75rem;line-height:1.35}.music-provider-player__empty{text-align:center;color:var(--premium-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;min-height:200px;display:flex}.music-provider-player__empty>.icon{width:40px;height:40px}.music-provider-player__empty p{max-width:32ch;margin:0;line-height:1.5}.music-provider-player__action{border:1px solid var(--premium-border);background:var(--premium-control);border-radius:9px;min-height:44px;padding:10px 16px}.music-provider-player button:disabled,.music-provider-player select:disabled{opacity:.45;cursor:default}.music-provider-player button:not(:disabled):hover{background:#acd7ff22}.music-provider-player :is(button,select):focus-visible{outline:2px solid var(--primary);outline-offset:3px}.music-provider-player__sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@container (width<=300px){.music-provider-player__track{gap:12px}.music-provider-player__artwork{width:96px;height:96px}.music-provider-player__account{gap:4px}.music-provider-player__connections button{padding-inline:6px}.music-provider-player__account-name{display:none}.music-provider-player__device{gap:6px;padding-inline:8px}.music-provider-player__device>svg{width:18px}}@media (width<=600px){.music-provider-player{padding:16px}}.music-device-menu{padding:var(--dropdown-list-padding);border-color:var(--dropdown-border);border-radius:var(--dropdown-radius);background:var(--dropdown-menu-surface);color:var(--dropdown-ink);box-shadow:var(--dropdown-shadow)}.music-device-menu button{gap:var(--dropdown-gap);min-height:var(--dropdown-option-height);padding:var(--dropdown-option-padding);border-radius:var(--dropdown-option-radius);font-size:var(--text-sm)}.music-device-menu button[aria-checked=true]{background:var(--dropdown-selected);color:var(--dropdown-selected-ink)}.music-device-menu button:hover:not(:disabled){background:var(--dropdown-hover)}.music-device-menu button:focus-visible{outline-color:var(--dropdown-focus)}.home-location-settings{gap:var(--s2);min-width:0;display:grid}.home-location-settings label{font-size:var(--text-sm);font-weight:600}.home-location-settings select{width:100%;min-width:0}.home-location-settings__message{color:var(--muted);font-size:var(--text-xs);margin:0;line-height:1.4}.home-location-settings__message[role=alert]{color:var(--error)}.home-location-settings__actions{align-items:center;gap:var(--s2);display:flex}.device-context-panel{border:1px solid color-mix(in srgb, currentColor 12%, transparent);background:color-mix(in srgb, var(--surface,#fff) 78%, transparent);-webkit-backdrop-filter:blur(20px)saturate(130%);backdrop-filter:blur(20px)saturate(130%);border-radius:1.25rem;width:min(100%,42rem);padding:clamp(1rem,2.5vw,1.5rem);box-shadow:0 1rem 3rem #141c2d1a}.device-context-panel__header,.device-context-actions{justify-content:space-between;align-items:center;gap:1rem;display:flex}.device-context-panel h2,.device-context-panel p,.device-context-meta{margin:0}.device-context-panel__header p,.device-context-meta,.device-context-panel__notice{color:var(--muted,#aeb8c8);font-size:.875rem}.device-context-badge{border-radius:999px;flex:none;padding:.3rem .65rem;font-size:.75rem;font-weight:700}.device-context-badge--private{color:var(--glass-ink);background:var(--home-blue-soft)}.device-context-badge--public{color:#cbe4ff;background:#4a9cff33}.device-context-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-block:1rem;display:grid}.device-context-meta div{background:var(--glass-soft,#ffffff14);border-radius:.8rem;min-width:0;padding:.7rem}.device-context-meta dt{text-transform:uppercase;font-size:.72rem;font-weight:700}.device-context-meta dd{color:var(--ink,#f7f8fb);text-overflow:ellipsis;white-space:nowrap;margin:.2rem 0 0;overflow:hidden}.device-context-form{grid-template-columns:1.5fr 1fr 1fr;gap:.75rem;display:grid}.device-context-form label{gap:.3rem;min-width:0;font-size:.8rem;font-weight:650;display:grid}.device-context-form input,.device-context-form select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border:1px solid color-mix(in srgb, currentColor 18%, transparent);background:var(--surface-soft,#ffffff14);min-width:0;min-height:2.5rem;color:inherit;font:inherit;border-radius:.7rem;padding-inline:.7rem}.device-context-actions{grid-column:1/-1}.device-context-actions button{background:var(--primary,#4a9cff);min-height:2.5rem;color:var(--on-primary,#07111f);font:inherit;cursor:pointer;border:0;border-radius:.75rem;padding-inline:1rem;font-weight:700}.device-context-registry{border-top:1px solid color-mix(in srgb, currentColor 12%, transparent);margin-top:1rem;padding-top:1rem}.device-context-registry h3{margin:0 0 .75rem;font-size:1rem}.device-context-registry ul{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.device-context-registry li,.device-context-registry__actions{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.device-context-registry li{background:var(--glass-soft,#ffffff14);border-radius:.8rem;padding:.7rem}.device-context-registry li>div:first-child{gap:.2rem;display:grid}.device-context-registry small{color:var(--muted,#aeb8c8)}.device-context-registry__actions button{border:1px solid color-mix(in srgb, currentColor 18%, transparent);background:var(--surface-soft,#ffffff14);min-height:2.2rem;color:inherit;cursor:pointer;border-radius:.65rem}.device-context-registry__actions label{align-items:center;gap:.4rem;font-size:.75rem;display:flex}@media (width<=38rem){.device-context-form{grid-template-columns:1fr 1fr}.device-context-form label:first-child{grid-column:1/-1}}@media (height<=640px){.device-context-panel{padding:12px}.device-context-panel__header p,.device-context-meta{display:none}.device-context-panel__header{margin-bottom:10px}.device-context-panel h2{font-size:1rem}}@media (height<=460px){.device-context-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.device-context-form label:first-child{grid-column:auto}.device-context-form label{font-size:.72rem}.device-context-form input,.device-context-form select{padding-inline:4px}}.workspace-settings:has(.device-settings-layout){gap:18px;width:min(100%,1240px);margin-inline:auto}.device-settings-layout{grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:start;gap:24px;min-width:0;display:grid}.device-settings-layout>:is(.device-context-panel,.device-context-registry){box-sizing:border-box;border:1px solid var(--premium-border);background:var(--premium-surface);width:100%;min-width:0;color:var(--glass-ink);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);border-radius:22px;margin:0;padding:24px}.device-settings-layout .device-context-panel__header{color:var(--premium-muted);gap:12px;font-size:14px}.device-settings-layout .device-context-meta{margin-block:20px;font-size:12px;display:block}.device-settings-layout .device-context-meta>div{background:0 0;padding:0}.device-settings-layout .device-context-meta>div:first-child{display:none}.device-settings-layout .device-context-meta dt{text-transform:none;font-size:11px;font-weight:400}.device-settings-layout .device-context-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.device-settings-layout .device-context-form>label:first-child{grid-column:1/-1}.device-settings-layout .device-context-form label{gap:8px;font-size:12px}.device-settings-layout .device-context-form :is(input,select){border-color:var(--premium-border);background:var(--premium-control);width:100%;min-height:44px;color:var(--glass-ink);box-sizing:border-box}.device-settings-layout .device-context-form select option{background:var(--glass-strong,#112439);color:var(--glass-ink)}.device-settings-layout .device-context-actions{margin-top:8px;font-size:12px}.device-registry-header{justify-content:space-between;align-items:center;margin-bottom:18px;font-size:14px;display:flex}.device-registry-header>span{color:var(--premium-muted);font-size:12px}.device-context-registry .device-registry-list{gap:8px}.device-context-registry .device-registry-list li{background:0 0;padding:0;display:block}.device-registry-list button{background:var(--premium-control);width:100%;min-height:68px;color:inherit;font:inherit;text-align:left;cursor:pointer;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.device-registry-list button[aria-pressed=true]{border-color:var(--primary);background:color-mix(in srgb, var(--premium-control), var(--primary) 8%)}.device-registry-list svg{width:24px;height:24px;color:var(--premium-muted);flex-shrink:0}.device-registry-list button>span:first-of-type{flex:1;gap:5px;min-width:0;display:grid}.device-registry-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.device-registry-list small{color:var(--premium-muted);font-size:11px}.device-registry-status{color:var(--premium-muted);flex-shrink:0;font-size:11px}.device-registry-status--pending{color:var(--primary)}.device-registry-detail{border-top:1px solid var(--premium-border);margin-top:18px;padding-top:16px}.device-registry-detail dl{gap:24px;margin:0 0 14px;font-size:12px;display:flex}.device-registry-detail dt{color:var(--premium-muted);margin-bottom:4px;font-size:11px}.device-registry-detail dd{margin:0}.device-context-registry .device-context-registry__actions{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.device-context-registry__actions label{justify-content:space-between;width:100%;min-height:32px;font-size:13px}.device-context-registry__actions input{width:18px;height:18px;accent-color:var(--primary)}.device-context-registry__actions button{min-height:36px;font:inherit;padding:8px 12px;font-size:12px}.device-context-registry__actions .device-registry-revoke{justify-self:end}.device-registry-pages{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:12px;display:flex}.device-registry-pages button{border:1px solid var(--premium-border);min-height:32px;color:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:6px 12px}.device-settings-layout button:disabled{opacity:.45;cursor:default}.device-settings-layout :is(button,input,select):focus-visible{outline:2px solid var(--primary);outline-offset:3px}.device-settings-mobile-switch{display:none}.device-settings-layout:not(:has(.device-context-registry)){width:min(100%,480px);margin-inline:auto;display:block}.device-settings-layout .device-context-registry__actions label{justify-content:space-between;width:100%;display:flex}.device-settings-layout .device-context-registry__actions .device-registry-revoke{justify-self:end}@media (height<=800px){.device-settings-layout{gap:16px}.device-settings-layout>:is(.device-context-panel,.device-context-registry){padding:18px}.device-registry-list button{min-height:58px;padding:8px 10px}.device-registry-header{margin-bottom:12px}.device-registry-detail{margin-top:12px;padding-top:12px}.device-registry-detail dl{margin-bottom:8px}}@media (width<=700px){.workspace-settings:has(.device-settings-layout){gap:12px}.device-settings-layout{grid-template-columns:minmax(0,1fr);gap:12px}.device-settings-mobile-switch{border:1px solid var(--premium-border);background:var(--premium-control);min-height:36px;color:var(--glass-ink);font:inherit;cursor:pointer;border-radius:9px;justify-self:end;padding:6px 12px;font-size:12px;display:block}.device-settings-layout>.device-context-registry,.device-settings-layout--registry>.device-context-panel{display:none}.device-settings-layout--registry>.device-context-registry{display:block}.device-registry-status{max-width:90px;font-size:10px}}.home-settings{min-width:0;min-height:min-content;padding:var(--s4);border:1px solid var(--home-card-border);border-radius:var(--radius-card);background:var(--home-card-background);align-content:start;gap:var(--s3);display:grid}.home-settings__steps .button{flex:1}.home-settings__form,.home-settings__content{gap:var(--s2);min-width:0;display:grid}.home-settings__hint,.home-settings__message{font-size:var(--text-xs);color:var(--muted);margin:0;line-height:1.45}.home-settings__message[role=alert]{color:var(--error)}.home-settings__actions,.home-settings__station-actions{align-items:center;gap:var(--s2);display:flex}.home-settings__actions .button,.home-settings__station-actions .button{min-width:0;padding-inline:var(--s2);font-size:var(--text-sm);flex:1}.home-settings-search{min-width:0;min-height:0}.home-settings-search form{gap:var(--s3);display:grid}.home-settings-search--results{height:min(320px, calc(var(--app-height,100dvh) - 156px));gap:var(--s2);flex-direction:column;min-height:150px;display:flex}.home-settings-search .row-measure{height:64px}.home-settings-search__result{text-align:left;width:100%;min-height:56px;padding:var(--s2);font-size:var(--text-sm);white-space:normal;justify-content:flex-start}.home-settings-search .page-item{min-height:64px}.home-settings-search .pagination .button{min-height:var(--touch)}.workspace-settings:has(.home-settings)>.segmented>.button{min-width:0;padding-inline:var(--s2);font-size:var(--text-sm);flex:1}@media (width<=400px){.home-settings{padding:var(--s3);gap:var(--s2)}.home-settings__steps .button,.home-settings__actions .button,.home-settings__station-actions .button{font-size:.78rem}.workspace-settings:has(.home-settings)>.segmented>.button{font-size:.78rem}}@media (height<=450px) and (width>=650px){.home-settings{padding:var(--s2) var(--s3);gap:var(--s3);grid-template-columns:minmax(120px,.3fr) minmax(0,1fr)}.home-settings__steps{flex-direction:column;align-self:start}.home-settings__form{align-items:start;column-gap:var(--s3);grid-template-columns:minmax(0,1fr) minmax(150px,.45fr)}.home-settings__content{grid-area:1/1/span 3}.home-settings__actions{flex-direction:column;grid-column:2}.home-settings__actions .button{width:100%}.home-settings__form>.home-settings__message,.home-settings__form>.home-settings__hint{grid-column:2}.home-settings__station-actions .button{min-height:44px}.home-settings__hint{font-size:.68rem}}@media (height<=650px) and (width<=649px){.workspace-settings:has(.home-settings){gap:var(--s2)}.home-settings{padding:var(--s2);gap:var(--s1)}.home-settings__form,.home-settings__content,.home-settings .field{gap:var(--s1)}.home-settings .field label{font-size:.78rem}.home-settings .field input{min-height:44px;padding-block:var(--s2)}.home-settings .button{min-height:44px;padding-block:var(--s1)}.workspace-settings:has(.home-settings)>.segmented>.button{min-height:44px;padding-block:var(--s1)}.home-settings__message,.home-settings__hint{line-height:1.35}}.workspace-settings:has(>.home-location-settings){grid-auto-rows:max-content;align-content:start}@media (width>=900px){.workspace-settings:has(>.home-location-settings){grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:min(100%,1240px);margin-inline:auto}:is(.workspace-settings:has(>.home-location-settings)>.segmented,.workspace-settings:has(>.home-location-settings)>.dashboard-attribution){grid-column:1/-1}.workspace-settings:has(>.home-location-settings)>.home-settings:not(.media-settings){grid-area:2/1}.workspace-settings:has(>.home-location-settings)>.home-location-settings{grid-area:3/1}.workspace-settings:has(>.home-location-settings)>.media-settings{grid-area:2/2/span 2}}.home-location-settings{align-content:start;align-self:start}.media-settings>p{font-size:var(--text-sm);margin:0;line-height:1.45}.remote-contracts-layout .remote-contract-actions>.button{flex:0 0 var(--touch);width:var(--touch);overflow-wrap:normal}.remote-contracts-layout .remote-contract-actions>.button:first-child>span{display:none}.remote-contracts-layout .remote-contract-actions>.remote-contract-primary,:root[data-short=true] .remote-contracts-layout .remote-contract-actions>.remote-contract-primary{white-space:nowrap;flex:1 0 auto;width:auto}:root[data-short=true] .remote-contracts-layout .remote-contract-actions>.remote-contract-primary>span{display:inline}.documents-toolbar{gap:var(--s3);flex-wrap:wrap;flex:none;align-items:center;display:flex}.notifications-layout .documents-toolbar>.segmented{flex-shrink:0;width:auto;display:flex}.notifications-layout .documents-toolbar>.segmented>.button{white-space:nowrap;min-width:max-content}.documents-toolbar>.field{min-width:150px;margin:0}.documents-toolbar>.field>label{display:none}.documents-toolbar>input{min-width:140px;height:var(--control-height);padding:var(--s3) var(--s4);color:var(--ink);font:inherit;background:var(--glass-strong);border:var(--border) solid var(--input-line);border-radius:var(--radius-control);flex:1}.document-row .item-copy{min-width:0}.document-row .item-quantity{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.documents-status{font-size:var(--text-sm);color:var(--muted);margin:0}@media (height<=560px){.document-form{gap:var(--s2) var(--s3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.document-form>.field{gap:var(--s1);min-width:0}.document-form input{width:100%;min-width:0}.document-form>.muted{font-size:var(--text-sm);align-self:center;margin:0}.document-form>.dialog-actions,.document-form>.error-notice{grid-column:1/-1;margin:0}}@media (width<=600px){.documents-layout,.notifications-layout{padding:var(--s3)}.documents-toolbar{gap:var(--s2)}.documents-toolbar>.field{flex:1}.documents-toolbar>input{flex-basis:100%;order:3}.documents-toolbar>.button:not(.button-icon){font-size:var(--text-sm)}.document-row{gap:var(--s2)}.document-row>.section-icon{display:none}}.documents-layout,.notifications-layout{padding:var(--s4);background:var(--premium-surface);border:var(--border) solid var(--premium-border);border-radius:var(--premium-radius);min-height:0;box-shadow:var(--premium-elevation);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.app-shell--connected :is(.documents-layout,.notifications-layout) :is(.item-list,.empty-state){box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0}.documents-layout,.notifications-layout{--list-row-height:var(--collection-row-height);--collection-overhead:220px;width:min(100%, var(--collection-width));padding:var(--s6);align-self:center;gap:var(--s4)}.documents-toolbar{padding-bottom:var(--s4);border-bottom:var(--border) solid var(--collection-divider);gap:var(--s2)}.documents-toolbar>input{height:var(--collection-control-height);border-radius:var(--dropdown-radius);background:var(--dropdown-surface);max-width:420px}.documents-toolbar>.field{min-width:170px}.documents-toolbar>.button,.documents-toolbar .segmented>.button{min-height:var(--collection-control-height);border-radius:var(--dropdown-radius);font-size:var(--text-sm)}.documents-toolbar>.button--primary{margin-left:auto}:is(.documents-layout,.notifications-layout) .item-list{height:auto;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;list-style:none;display:block}:is(.documents-layout,.notifications-layout) .page-item{height:var(--collection-row-height)}:is(.documents-layout,.notifications-layout) .shopping-row{height:var(--collection-row-height);gap:var(--s3);padding:var(--s2);border-bottom:var(--border) solid var(--collection-divider);border-radius:0}:is(.documents-layout,.notifications-layout) .shopping-row:hover{background:var(--collection-icon-surface)}:is(.documents-layout,.notifications-layout) .section-icon{width:var(--collection-control-height);height:var(--collection-control-height);background:var(--collection-icon-surface);border-radius:var(--dropdown-radius);color:var(--primary);flex:none;place-items:center;display:grid}:is(.documents-layout,.notifications-layout) .item-name{font-size:1rem}:is(.documents-layout,.notifications-layout) .item-quantity{margin-top:var(--s1)}:is(.documents-layout,.notifications-layout) .shopping-row>.button{width:var(--collection-control-height);min-width:var(--collection-control-height);min-height:var(--collection-control-height);padding:var(--s2);box-shadow:none;color:var(--muted);border:0}:is(.documents-layout,.notifications-layout) .shopping-row>.button:hover{color:var(--ink)}.document-access{font-size:var(--text-xs);padding:var(--s1) var(--s2);border:var(--border) solid var(--collection-divider);border-radius:var(--s2);color:var(--premium-muted)}:is(.documents-layout,.notifications-layout) .empty-state{box-shadow:none;background:0 0;border:0}:is(.documents-layout,.notifications-layout) .pagination{min-height:var(--collection-control-height);justify-content:flex-end}@media (width<=700px){.documents-layout,.notifications-layout{--collection-overhead:280px;padding:var(--s3);gap:var(--s2)}.documents-toolbar>input{max-width:none}.documents-toolbar>.field{min-width:120px}.documents-toolbar>.button--primary{padding-inline:var(--s2)}.document-access{display:none}.document-access-inline{display:inline}.document-filename{display:none}:is(.documents-layout,.notifications-layout) .shopping-row{gap:var(--s1);padding-inline:0}.document-row>.section-icon{display:none}:is(.documents-layout,.notifications-layout) .item-name{font-size:var(--text-sm)}}@media (height<=560px){.documents-layout,.notifications-layout{--collection-row-height:64px;padding:var(--s3);gap:var(--s2)}.documents-toolbar{padding-bottom:var(--s2)}}.document-access-inline{display:none}.document-actions{flex:none;position:relative}.document-actions>summary{cursor:pointer;width:var(--collection-control-height);height:var(--collection-control-height);border-radius:var(--dropdown-radius);color:var(--muted);place-items:center;list-style:none;display:grid}.document-actions>summary::-webkit-details-marker{display:none}.document-actions>summary:hover{background:var(--collection-icon-surface);color:var(--ink)}.document-actions>summary:focus-visible{outline:2px solid var(--focus)}.document-actions-menu{z-index:var(--z-nav);min-width:180px;padding:var(--s2);background:var(--dropdown-menu-surface);border:var(--border) solid var(--dropdown-border);border-radius:var(--dropdown-radius);box-shadow:var(--dropdown-shadow);display:grid;position:absolute;top:100%;right:0}.document-actions-menu>.button{color:var(--ink);min-height:44px;padding:var(--s2);box-shadow:none;background:0 0;justify-content:flex-start}.document-actions-menu>.button:hover{background:var(--dropdown-hover)}@media (width<=700px){.document-access-inline{display:inline}}.app-shell--connected .document-actions-menu>.button{border-radius:var(--dropdown-option-radius);box-shadow:none;background:0 0;border:0}.app-shell--connected .document-actions-menu>.button:hover{background:var(--dropdown-hover)}.music-target-settings{border-top:1px solid var(--glass-line);gap:16px;min-width:0;padding-top:24px;display:grid}.music-equipment-add{border:1px solid var(--premium-border);background:var(--premium-surface);color:var(--glass-ink);border-radius:16px;margin-block:12px;padding:16px}.music-equipment-add summary{cursor:pointer;min-height:24px;font-weight:600}.music-equipment-add>section{padding-top:16px}.music-equipment-add select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.music-target-settings h2{margin:0;font-size:1.2rem}.music-target-hint{color:var(--glass-muted);margin:0;font-size:.88rem;line-height:1.6}.music-target-row{border:1px solid var(--glass-line);background:var(--glass-soft);border-radius:18px;gap:14px;min-width:0;padding:18px;display:grid}.music-target-name{overflow-wrap:anywhere;color:var(--glass-ink);font-weight:600}.music-target-field{min-width:0;color:var(--glass-muted);gap:7px;font-size:.82rem;display:grid}.music-target-field select{border:1px solid var(--glass-line);background:var(--glass-strong);width:100%;min-width:0;min-height:44px;color:var(--glass-ink);font:inherit;text-overflow:ellipsis;border-radius:12px;padding:10px 12px;font-size:.92rem}.music-target-field select option{background:var(--surface,#242832);color:var(--glass-ink)}.music-target-field select:focus-visible{outline:2px solid var(--theme-accent);outline-offset:3px}.music-target-field select:disabled{opacity:.6}.music-target-access{color:var(--glass-muted);font-size:.82rem}.music-target-row>.button{justify-self:end}.music-target-footer{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.music-target-footer p{color:var(--glass-muted);flex:180px;margin:0;font-size:.85rem;line-height:1.5}.music-connections{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:24px;height:100%;min-height:0;display:grid}.music-connection-panel,.music-detail-player{border:1px solid var(--glass-line);background:var(--glass);min-width:0;min-height:0;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-radius:24px;padding:clamp(20px,3vw,40px);overflow:auto}.music-connection-panel{flex-direction:column;align-items:stretch;gap:24px;display:flex}.music-account-choice{background:var(--glass-soft);border:1px solid var(--glass-line);border-radius:14px;gap:4px;padding:4px;display:flex}.music-account-choice button{color:var(--glass-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;padding:12px}.music-account-choice button[aria-pressed=true]{background:var(--glass-strong);color:var(--glass-ink)}.music-account-choice button:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}.music-connection-hint,.music-provider-setup p{color:var(--glass-muted);margin:0;line-height:1.6}.music-provider-name{align-items:center;gap:16px;font-size:clamp(24px,2vw,34px);display:flex}.music-provider-name>span{background:var(--glass-strong);border-radius:16px;place-items:center;width:56px;height:56px;display:grid}.music-provider-setup{gap:20px;display:grid}.music-connection-state{font-size:1.15rem}.music-detail-player>.music-provider-player{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}@media (width<=800px){.music-connections{grid-template-columns:1fr;height:auto;overflow:auto}.music-detail-player{min-height:340px}}.music-screen{min-width:0;height:100%;min-height:0;color:var(--glass-ink);grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(8px,1.6vh,16px);display:grid}.music-section-heading,.music-footer,.music-actions,.music-pagination{justify-content:space-between;align-items:center;gap:10px;display:flex}.music-content h2{color:var(--glass-ink);margin:0}.music-kicker,.music-progress,.music-section-heading span,.music-device small,.music-footer span{color:var(--glass-muted);margin:0;font-size:.78rem}.music-kicker{letter-spacing:.08em;text-transform:uppercase}.music-tabs{border:1px solid var(--glass-line);background:var(--glass-soft);border-radius:12px;gap:6px;padding:4px;display:flex}.music-tab{min-height:34px;color:var(--glass-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1}.music-tab[aria-selected=true]{background:var(--glass-strong);color:var(--glass-ink);box-shadow:inset 0 0 0 1px var(--glass-line)}.music-tab:focus-visible,.music-device:focus-visible{outline:2px solid var(--theme-accent);outline-offset:2px}.music-frame{border:1px solid var(--glass-line);background:var(--glass);min-height:0;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.15);border-radius:16px;overflow:hidden}.music-content,.music-loading,.music-message{margin:0;padding:clamp(12px,2.2vh,22px)}.music-content{box-sizing:border-box;gap:clamp(9px,1.6vh,16px);height:100%;display:grid;overflow:hidden}.music-content p{margin:0}.music-setup,.music-connection,.music-player{align-content:start;gap:clamp(8px,1.5vh,14px);min-width:0;display:grid}.music-setup-heading,.music-setup-copy,.music-setup-controls{gap:7px;min-width:0;display:grid}.music-name{overflow-wrap:anywhere;font-size:1.05rem}.music-actions{flex-wrap:wrap;justify-content:flex-end}.music-section-heading{align-items:end}.music-section-heading span{white-space:nowrap}.music-device-list{gap:8px;display:grid}.music-device{border:1px solid var(--glass-line);background:var(--glass-soft);width:100%;min-height:58px;color:var(--glass-ink);text-align:left;font:inherit;cursor:pointer;border-radius:12px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.music-device:hover:not(:disabled),.music-device.is-selected{background:var(--glass-hover)}.music-device.is-selected{border-color:var(--theme-accent)}.music-device:disabled{cursor:not-allowed;opacity:.58}.music-radio{border:1px solid var(--glass-muted);border-radius:50%;width:14px;height:14px}.music-device.is-selected .music-radio{border:4px solid var(--theme-accent);box-sizing:border-box}.music-device-main,.music-device-flags{gap:2px;min-width:0;display:grid}.music-device-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.music-device-flags{justify-items:end}.music-device-flags em{color:var(--glass-muted);white-space:nowrap;font-size:.72rem;font-style:normal}.music-device-flags em:first-child{color:var(--theme-accent)}.music-pagination{justify-content:center}.music-pagination span{min-width:72px;color:var(--glass-muted);text-align:center;font-size:.82rem}.music-warning,.music-transfer-progress{color:var(--glass-muted);font-size:.82rem}.music-transfer-progress{color:var(--glass-ink)}.music-message{color:var(--glass-ink);background:var(--glass-soft)}.music-footer{min-height:34px}.music-footer span{min-height:1em}@media (width<=500px){.music-screen{gap:7px}.music-heading{min-height:30px}.music-frame{border-radius:13px}.music-content,.music-loading,.music-message{padding:12px}.music-device{min-height:50px;padding-block:7px}.music-device-list{gap:6px}.music-warning{display:none}}@media (height<=700px){.music-screen{gap:6px}.music-content,.music-loading,.music-message{padding:10px 12px}.music-content{gap:8px}.music-setup,.music-connection,.music-player{gap:7px}.music-setup-copy{font-size:.86rem;line-height:1.3}.music-setup .field{gap:3px}.music-setup .field input{height:44px;min-height:44px;padding-block:6px}.music-device{min-height:44px;padding:6px 10px}.music-warning{display:none}}@media (height<=450px) and (orientation:landscape){.music-screen{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) auto;column-gap:12px}.music-tabs{grid-column:1}.music-footer{grid-area:1/2;align-self:center}.music-frame{grid-column:1/-1}.music-content{padding:9px 12px}.music-setup{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-areas:"setup-heading setup-copy""setup-controls setup-controls";align-items:start}.music-setup-heading{grid-area:setup-heading}.music-setup-copy{grid-area:setup-copy}.music-setup-controls{grid-area:setup-controls;grid-template-columns:minmax(0,1fr) auto;align-items:end}.music-player{grid-template-columns:minmax(0,1fr) minmax(210px,.55fr);grid-template-areas:"heading pagination""devices transfer";align-items:center}.music-section-heading{grid-area:heading}.music-device-list{grid-area:devices;grid-template-columns:repeat(2,minmax(0,1fr))}.music-pagination{grid-area:pagination}.music-player>.button{grid-area:transfer}.music-warning,.music-transfer-progress{display:none}}.music-sharing-setting{color:var(--glass-ink);align-items:flex-start;gap:12px;display:flex}.music-sharing-setting small{color:var(--premium-muted);margin-top:6px;line-height:1.5;display:block}html,body,#root{width:100%;height:100%;overflow:clip}.app-shell{top:var(--app-top,0px);width:100%;max-width:var(--content-max);height:var(--app-height,100dvh);grid-template-columns:var(--sidebar) minmax(0, 1fr);grid-template-rows:var(--workspace-header) minmax(0, 1fr);padding-inline:max(var(--s6), env(safe-area-inset-left)) max(var(--s6), env(safe-area-inset-right));padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);display:grid;position:fixed;left:50%;transform:translate(-50%)}.app-header{align-items:center;gap:var(--s5);border-bottom:var(--border) solid var(--line);grid-column:1/-1;min-width:0;display:flex}.brand{align-items:center;gap:var(--s3);font-size:var(--text-xl);letter-spacing:-.04em;min-height:var(--touch);font-weight:650;text-decoration:none;display:inline-flex}.brand-mark{width:var(--avatar-size);height:var(--avatar-size);border-radius:var(--radius-control);background:var(--primary);color:var(--on-primary);place-items:center;display:grid}.header-household{align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--text-sm);margin-left:auto;display:flex}.household-dot{width:var(--s2);height:var(--s2);background:var(--primary);border-radius:var(--radius-pill)}.app-header>.button{margin-left:auto}.main-nav{gap:var(--s2);min-height:0;padding:var(--s6) var(--s5) var(--s4) 0;flex-direction:column;display:flex}.main-nav a,.main-nav__menu{align-items:center;gap:var(--s3);min-height:var(--control-height);padding:var(--s3) var(--s4);border-radius:var(--radius-control);color:var(--muted);font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;font-family:inherit;font-weight:600;text-decoration:none;display:flex}.main-nav a[aria-current=page],.main-nav__menu[aria-current=page]{background:var(--sage);color:var(--primary)}.nav-count{font-size:var(--text-xs);margin-left:auto}.nav-foot{gap:var(--s2);color:var(--muted);font-size:var(--text-xs);padding:var(--s4);align-items:center;margin-top:auto;display:flex}.main-content{gap:var(--s3);min-width:0;min-height:0;padding:var(--s6) 0 var(--s3) var(--s8);flex-direction:column;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:var(--s4);flex:none;display:flex}.page-heading h1{font-size:var(--workspace-title)}.page-heading .eyebrow{margin-bottom:var(--s1)}.page-subtitle{display:none}.home-layout{gap:var(--s5);flex:1;grid-template-rows:minmax(0,.65fr) minmax(0,1fr);grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);min-height:0;display:grid}.home-summary{gap:var(--s3);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));min-height:0;display:grid}.overview-card.button{min-width:0;min-height:var(--touch);justify-content:center;align-items:flex-start;gap:var(--s2);border-radius:var(--radius-card);padding:var(--s4);background:var(--sage);color:var(--ink);text-align:left;white-space:normal;flex-direction:column;display:flex}.overview-card--accent.button{background:var(--peach);color:var(--on-peach)}.overview-card-title{align-items:center;gap:var(--s2);min-width:0;font-size:var(--text-base);display:flex}.overview-card-title strong{overflow-wrap:anywhere}.overview-card-summary{font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.3}@media (width<=1020px){.home-summary{gap:var(--s2);grid-template-columns:repeat(2,minmax(0,1fr))}.overview-card.button{padding:var(--s2) var(--s3);gap:var(--s1)}.overview-card-title .icon{display:none}}.home-preview{gap:var(--s2);flex-direction:column;grid-column:1/-1;min-height:0;display:flex}.home-preview .segmented{flex:1;min-width:0}.home-preview .segmented>.button{padding-inline:var(--s2);font-size:var(--text-xs)}.section-heading{justify-content:space-between;align-items:center;gap:var(--s3);min-height:var(--touch);display:flex}.section-heading h2{font-size:var(--text-lg)}.section-heading .button{font-size:var(--text-sm)}.shopping-layout{gap:var(--s3);flex-direction:column;flex:1;min-height:0;display:flex}.shopping-toolbar{justify-content:space-between;align-items:stretch;gap:var(--s3);flex:none;display:flex}.segmented{gap:var(--s1);background:var(--surface-soft);border-radius:var(--radius-control);padding:var(--s1);display:flex}.segmented>.button{min-width:0;padding:var(--s2) var(--s3);color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;flex:1}.segmented>.button[aria-pressed=true]{background:var(--surface);color:var(--primary)}.segmented .count{min-width:var(--s4);background:0 0;padding:0}.shopping-toolbar>.button{flex-shrink:0}.item-list{background:var(--surface);border-radius:var(--radius-card);height:100%;padding-inline:var(--s3);box-shadow:var(--shadow)}.page-item{height:var(--list-row-height)}.shopping-row{align-items:center;gap:var(--s2);height:100%;min-height:var(--touch);border-bottom:var(--border) solid var(--line);display:flex}.page-item:last-child .shopping-row{border-bottom:none}.item-copy{min-width:0;padding-inline:var(--s1);flex:1}.item-name{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-weight:550;line-height:1.25;display:-webkit-box;overflow:hidden}.item-quantity{color:var(--muted);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;margin-top:var(--s1);line-height:1.25;display:block;overflow:hidden}.is-completed .item-name{color:var(--muted);text-decoration:line-through}.empty-state{justify-content:center;align-items:center;gap:var(--s2);background:var(--surface);border-radius:var(--radius-card);height:100%;padding:var(--s3);text-align:center;flex-direction:column;min-height:0;display:flex}.empty-state h3{font-size:var(--text-lg)}.empty-state p{color:var(--muted);font-size:var(--text-sm)}.empty-icon{background:var(--sage);width:var(--touch);height:var(--touch);border-radius:var(--radius-control);color:var(--primary);flex-shrink:0;place-items:center;display:inline-grid}.live-notice{flex:none;min-height:1.3em;margin:0;line-height:1.3}.page-footer{color:var(--muted);font-size:var(--text-xs);flex:none}.demo-badge{display:inline-block}.main-content>.error-notice{padding:var(--s2) var(--s3);font-size:var(--text-sm);flex:none;margin:0}@media (width<=1020px){.app-shell{--sidebar:148px}.home-layout{grid-template-columns:minmax(0,1fr)}.household-card{display:none}}@media (width<=650px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--workspace-header) minmax(0, 1fr) auto;padding-inline:max(var(--s4), env(safe-area-inset-left)) max(var(--s4), env(safe-area-inset-right))}.app-header{gap:var(--s2);border:0}.header-household{display:none}.main-content{padding:var(--s2) 0;gap:var(--s2);grid-row:2}.page-heading .avatar,.page-heading .eyebrow{display:none}.main-nav{padding:var(--s1) 0;gap:var(--s2);border-top:var(--border) solid var(--line);flex-direction:row;grid-row:3}.main-nav a,.main-nav__menu{min-height:var(--touch);font-size:var(--text-sm);padding:var(--s2);justify-content:center;gap:var(--s2);flex:1}.nav-foot,.nav-count,.page-footer{display:none}.shopping-toolbar{gap:var(--s2);flex-wrap:wrap}.shopping-toolbar .segmented{flex:100%}.shopping-toolbar>.button{width:100%;padding:var(--s2) var(--s3)}.shopping-hero{padding:var(--s4)}.hero-copy .eyebrow{display:none}.home-layout{gap:var(--s3)}.home-preview .section-heading h2{font-size:var(--text-base)}}@media (width<=420px){.main-nav{gap:var(--s1)}.main-nav a,.main-nav__menu{min-width:0;padding-inline:var(--s1);font-size:var(--text-xs);overflow-wrap:anywhere}.main-nav a .icon,.main-nav__menu .icon{display:none}}.expense-step .field label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.calendar-toolbar{gap:var(--s2);flex:1;align-items:center;min-width:0;display:flex}.calendar-toolbar>.field{flex:1;min-width:0}.calendar-toolbar>.field select{width:100%;min-width:0;padding-left:var(--s2)}.calendar-toolbar>.field label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.calendar-toolbar>.button{padding-inline:var(--s2);flex-shrink:0}.participant-picker{height:calc(var(--list-row-height) + var(--touch) + var(--s2));display:flex}:root[data-short=true] .participant-picker{--list-row-height:48px}:root[data-short=true] .app-shell{--workspace-header:48px}:root[data-short=true] .main-content{padding-top:var(--s1);padding-bottom:var(--s1);gap:var(--s1)}:root[data-short=true] .page-heading,:root[data-short=true] .page-footer{display:none}:root[data-short=true] .home-layout{grid-template-rows:minmax(0,1fr)}:root[data-short=true] .home-preview,:root[data-short=true] .household-card{display:none}:root[data-short=true] .home-layout{grid-template-columns:minmax(0,1fr)}:root[data-short=true] .main-nav{padding-top:var(--s1);padding-bottom:var(--s1);gap:var(--s1)}:root[data-short=true] .main-nav a,:root[data-short=true] .main-nav__menu{min-height:var(--touch);padding-block:var(--s2)}:root[data-short=true] .nav-foot{display:none}:root[data-short=true] .shopping-toolbar{flex-wrap:nowrap}:root[data-short=true] .shopping-toolbar .segmented{flex:1}:root[data-short=true] .shopping-toolbar>.button{width:auto}:root[data-short=true] .shopping-toolbar>.button .icon,:root[data-short=true] .empty-state p,:root[data-short=true] .empty-icon{display:none}.empty-state[role=alert] p{display:block}@media (height<=360px){.dialog{padding:var(--s2)}.dialog .dialog-heading{margin-bottom:var(--s1)}.live-notice{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.shopping-layout,.paged-list{gap:var(--s1)}.dialog .small{font-size:var(--text-xs)}}.list-actions{gap:var(--s2);min-width:0;display:flex}.list-actions>.button{min-width:var(--touch);padding-inline:var(--s2);font-size:var(--text-sm);overflow-wrap:anywhere}@media (width<=650px){.list-actions{flex:100%}.list-actions>.button{flex:1}}:root[data-short=true] .list-actions{flex:none}:root[data-short=true] .list-actions>.button{flex:0 0 var(--touch);width:var(--touch);font-size:var(--text-xs);padding:var(--s1)}:root[data-short=true] .list-actions .icon{display:block}:root[data-short=true] .list-actions>.button>span{display:none}.devices-layout{gap:var(--s2);flex-direction:column;min-height:0;display:flex}.smarthome-toolbar,.device-actions,.settings-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.device-grid{gap:var(--s3);flex-shrink:0;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;display:grid}.device-card{min-width:0;padding:var(--s3);border-radius:var(--radius-card);background:var(--surface-soft)}.device-card h3,.device-card p{margin-block:0 var(--s2)}.device-card-heading,.device-tabs,.device-power{align-items:center;gap:var(--s2);display:flex}.device-card-heading{justify-content:space-between}.device-card-heading h3{overflow-wrap:anywhere}.device-card-heading .button{flex-shrink:0}.device-controls,.device-rename,.device-light-panel,.device-colour-panel{gap:var(--s2);display:grid}.device-tabs .button,.device-power .button{flex:1}.device-feedback{min-height:1.3em;margin-top:var(--s1);font-size:var(--text-sm)}.device-colour{align-items:center;gap:var(--s2);display:flex}.device-colour input{min-width:var(--touch);height:var(--touch);cursor:pointer;flex:1}.device-tabs .button{min-height:var(--touch)}.device-brightness{gap:var(--s1);min-width:9rem;color:var(--text-muted);font-size:var(--text-sm);display:grid}.device-brightness input{width:100%;min-height:var(--touch)}.device-state--offline,.device-state--stale{color:var(--danger)}@media (width<=650px),(height<=760px){.devices-layout,.device-controls,.device-rename,.device-light-panel,.device-colour-panel{gap:var(--s1)}.device-grid{gap:var(--s1);grid-template-columns:minmax(0,1fr)}.device-card{padding:var(--s2);font-size:var(--text-sm)}.device-card h3,.device-card p{margin-bottom:var(--s1)}.device-feedback{font-size:var(--text-xs);margin-top:0}.device-actions{gap:var(--s1)}.device-actions .button{min-width:var(--touch);padding-inline:var(--s2)}}@media (height<=480px) and (width>=651px){.device-card .device-state{margin-bottom:0}.device-card .device-feedback{margin-top:0}.device-rename{grid-template-columns:minmax(0,1fr) auto;align-items:end}.device-rename h3{grid-column:1/-1}.device-light-panel,.device-colour-panel{grid-template-columns:1fr 1fr;align-items:center}.device-card{position:relative}.device-card-heading{padding-right:40%}.device-tabs{top:var(--s2);right:var(--s2);width:36%;position:absolute}}.segmented .list-select-filter{flex:0 0 var(--touch);padding:var(--s1)}.segmented .list-select-filter[aria-pressed=true]{color:var(--on-primary);background:var(--primary)}@media (width>=651px){.shopping-toolbar>.segmented>.button:not(.list-select-filter){white-space:nowrap;flex:1 0 auto}}.header-actions{gap:var(--s1);flex:none;margin-left:auto;display:flex}.header-actions .button{position:relative}.notice-badge:empty{display:none}.notice-badge{min-width:var(--s4);padding-inline:var(--s1);border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);font-size:var(--text-xs);position:absolute;top:0;right:0}.contracts-layout .item-name{-webkit-line-clamp:1}.receipts-layout .shopping-toolbar .field label{display:none}.receipts-layout .shopping-toolbar .field{min-width:0}.receipts-layout .shopping-toolbar .segmented{align-items:center;min-width:0}.receipts-layout .item-name{-webkit-line-clamp:1}:root[data-short=true] .expenses-layout .shopping-toolbar{gap:var(--s1)}:root[data-short=true] .expenses-layout .segmented>.button{padding-inline:var(--s1)}.receipt-images{gap:var(--s2);flex-direction:column;flex:1;min-height:0;display:flex}.receipt-image-area{background:var(--surface);border-radius:var(--radius-card);flex:1;justify-content:center;min-height:0;display:flex}.receipt-image-frame{width:100%;height:100%;min-height:0}.receipt-image-frame img,.receipt-image-frame svg{object-fit:contain;width:100%;height:100%;display:block}.receipt-images .pagination{gap:var(--s1)}.receipt-images .pagination>.button{flex-shrink:0}.receipt-images .pagination>span{min-width:0}.privacy-workbench .shopping-toolbar .field label{display:none}.privacy-workbench .shopping-toolbar .field{min-width:0}.privacy-workbench .segmented{align-items:center;min-width:0}.privacy-workbench .receipt-image-area{background:var(--surface-soft)}.privacy-draw svg{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block}.privacy-workbench .item-name{-webkit-line-clamp:1}.dialog.dialog-fullscreen{background:var(--camera-canvas);border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden;transform:none}.receipt-camera{width:100%;height:100%;position:relative}.camera-view{position:absolute;inset:0}.camera-view video,.camera-view img{object-fit:contain;width:100%;height:100%;display:block}.camera-view video[hidden]{display:none}.camera-toolbar{z-index:1;inset:max(var(--s3), env(safe-area-inset-top)) var(--s3) auto;justify-content:space-between;align-items:start;gap:var(--s2);display:flex;position:absolute}.camera-toolbar .segmented,.camera-toolbar .select{min-width:0}.camera-toolbar .button{flex-shrink:0}.camera-status{bottom:calc(max(var(--s3), env(safe-area-inset-bottom)) + var(--touch) + var(--s2));left:var(--s3);right:var(--s3);width:fit-content;max-width:calc(100% - var(--s6));background:var(--camera-overlay);color:var(--camera-ink);padding:var(--s2) var(--s3);border-radius:var(--radius-control);font-size:var(--text-sm);text-align:center;margin-inline:auto;position:absolute}.camera-footer{bottom:max(var(--s3), env(safe-area-inset-bottom));left:var(--s3);right:var(--s3);text-align:center;font-size:var(--text-sm);color:var(--camera-ink);position:absolute}.camera-footer span{background:var(--camera-overlay);padding:var(--s1) var(--s2);border-radius:var(--radius-control)}@media (width<=600px){.camera-toolbar{flex-wrap:wrap}.camera-toolbar>.button{margin-left:auto}.app-header:has(.scan-launcher) .brand>span:last-child{display:none}.scan-launcher{padding-inline:var(--s2);white-space:nowrap}}:root[data-short=true] .main-nav--account{gap:0;padding-block:0}.app-shell--connected{--sidebar:168px;--workspace-header:76px;max-width:none;padding:max(16px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));color:var(--ink);isolation:isolate}.app-shell--connected>.app-header,.app-shell--connected>.main-nav,.app-shell--connected>.main-content{z-index:1;background:var(--glass);border-color:var(--glass-line);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.18);position:relative}.app-shell--connected .identity-panel,.app-shell--connected .item-list,.app-shell--connected .empty-state,.app-shell--connected .device-card,.app-shell--connected .segmented,.app-shell--connected .receipt-image-area{border:var(--border) solid var(--glass-line);background:var(--glass-soft);-webkit-backdrop-filter:blur(calc(var(--glass-blur) * .68)) saturate(1.12);box-shadow:inset 0 1px #ffffff0a}.app-shell--connected>.app-header{padding-inline:var(--s4);border:var(--border) solid var(--glass-line);border-bottom:0;border-radius:22px 22px 0 0}.app-shell--connected>.main-nav{padding:var(--s4) var(--s3);border:var(--border) solid var(--glass-line);border-top:0;border-radius:0 0 0 22px}.app-shell--connected>.main-content{padding:var(--s5);border-right:var(--border) solid var(--glass-line);border-bottom:var(--border) solid var(--glass-line);border-radius:0 0 22px;overflow:hidden}.app-shell--connected .brand-mark{color:#fff;background:linear-gradient(145deg,#6bb4ff,#2878dc);box-shadow:0 9px 24px #2878dc47}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{color:var(--glass-muted);transition:color var(--motion) ease, background var(--motion) ease, transform var(--motion) ease}.app-shell--connected .main-nav a:hover,.app-shell--connected .main-nav__menu:hover{color:var(--glass-ink);background:var(--glass-soft)}.app-shell--connected .main-nav a[aria-current=page],.app-shell--connected .main-nav__menu[aria-current=page]{color:#dcecff;background:linear-gradient(90deg,#4a9cff47,#4a9cff14);box-shadow:inset 0 0 0 1px #6fb5ff4d}.workspace-menu-backdrop{z-index:calc(var(--z-nav) + 20);-webkit-backdrop-filter:blur(14px);background:#04091294;justify-content:flex-end;align-items:center;padding:clamp(12px,3vw,36px);display:flex;position:fixed;inset:0}.workspace-menu{gap:var(--s4);width:min(760px,100%);max-height:100%;color:var(--glass-ink);border:var(--border) solid #ffffff29;background:linear-gradient(145deg,#192232f5,#0c121df0);border-radius:26px;flex-direction:column;padding:clamp(18px,3vw,30px);display:flex;overflow-y:auto;box-shadow:0 30px 90px #00000080}.workspace-menu__header{justify-content:space-between;align-items:center;gap:var(--s4);display:flex}.workspace-menu__header h2,.workspace-menu__header p,.workspace-menu__group h3{margin:0}.workspace-menu__header h2{letter-spacing:-.035em;font-size:clamp(1.45rem,3vw,2rem)}.workspace-menu__groups{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace-menu__group{min-width:0;padding:var(--s3);border:var(--border) solid var(--glass-line);background:#ffffff0b;border-radius:18px}.workspace-menu__group h3{padding:0 var(--s2) var(--s2);color:var(--glass-muted);font-size:var(--text-xs);letter-spacing:.07em;text-transform:uppercase;font-weight:700}.workspace-menu__links{gap:4px;display:grid}.workspace-menu__links a,.workspace-menu__account{align-items:center;gap:var(--s2);min-width:0;min-height:48px;padding:var(--s2);color:var(--glass-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:13px;grid-template-columns:34px minmax(0,1fr) 20px;font-weight:620;text-decoration:none;display:grid}.workspace-menu__links a:hover,.workspace-menu__links a[aria-current=page],.workspace-menu__account:hover{background:#58a4ff29}.workspace-menu__links a[aria-current=page]{color:#dcecff;box-shadow:inset 0 0 0 1px #6fb5ff47}.workspace-menu__icon{color:#9bc9ff;background:#58a4ff1f;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.workspace-menu__links a>.icon:last-child,.workspace-menu__account>.icon:last-child{width:16px;color:var(--glass-muted)}.workspace-menu__account{width:100%;padding-inline:var(--s3);border:var(--border) solid var(--glass-line);background:#ffffff0e}.app-shell--connected .page-heading{min-height:68px}.app-shell--connected.app-shell--home .page-heading,.app-shell--connected.app-shell--home .page-footer{display:none}.app-shell--connected .page-heading h1{letter-spacing:-.035em;font-weight:620}.app-shell--connected .eyebrow,.app-shell--connected .page-footer{color:var(--glass-muted)}.app-shell--connected .avatar--large{color:#fff;background:linear-gradient(145deg,#4a9cffe0,#a98bffb3);border-color:#ffffff38;box-shadow:0 10px 28px #0000003d}.app-shell--connected .button,.app-shell--connected .field input,.app-shell--connected .field select,.app-shell--connected .item-list,.app-shell--connected .empty-state,.app-shell--connected .device-card{border-color:var(--glass-line)}@media (width<=1199px){.app-shell--connected{--sidebar:152px;padding:var(--s3)}}@media (width<=767px){.app-shell--connected{grid-template-rows:64px minmax(0, 1fr) calc(66px + env(safe-area-inset-bottom));padding:max(var(--s2), env(safe-area-inset-top)) var(--s2) 0}.app-shell--connected>.app-header{border-radius:20px 20px 0 0}.app-shell--connected>.main-content{padding:var(--s2);border-left:var(--border) solid var(--glass-line);border-radius:0}.app-shell--connected>.main-nav{z-index:var(--z-nav);padding:var(--s1) var(--s1) max(var(--s1), env(safe-area-inset-bottom));border:var(--border) solid var(--glass-line);border-radius:0;position:relative;box-shadow:0 -14px 34px #0003}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{flex-direction:column;gap:2px;min-height:56px;padding:5px 2px;font-size:.66rem}.app-shell--connected .main-nav a .icon,.app-shell--connected .main-nav__menu .icon{display:block}.app-shell--connected .main-nav__desktop-only{display:none}.app-shell--connected .main-nav__menu[data-contains-current=true]{color:#dcecff;background:linear-gradient(90deg,#4a9cff47,#4a9cff14);box-shadow:inset 0 0 0 1px #6fb5ff4d}.app-shell--connected .page-heading{min-height:56px}.workspace-menu-backdrop{align-items:flex-end;padding:0}.workspace-menu{width:100%;max-height:calc(100% - max(12px, env(safe-area-inset-top)));padding:var(--s4) var(--s3) max(var(--s4), env(safe-area-inset-bottom));border-radius:24px 24px 0 0}}@media (width<=430px){.workspace-menu__groups{gap:var(--s2)}.workspace-menu__group{padding:var(--s2)}.workspace-menu__links a{font-size:var(--text-sm);grid-template-columns:30px minmax(0,1fr)}.workspace-menu__links a>.icon:last-child{display:none}.workspace-menu__icon{width:30px;height:30px}}@media (prefers-reduced-motion:reduce){.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{transition:none}}.workspace-settings{align-content:start;gap:12px;min-height:0;display:grid}.workspace-menu{width:min(560px,100% - 24px);max-height:calc(var(--app-height,100dvh) - 24px);gap:14px;margin:auto;padding:20px;overflow:clip}.workspace-menu:not([open]){display:none}.workspace-menu[open]{border-radius:22px;display:flex}.workspace-menu::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040912b8}.workspace-menu__categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.workspace-menu__categories button{border:1px solid var(--glass-line);background:var(--glass-soft);min-height:44px;color:var(--glass-ink);font:inherit;cursor:pointer;border-radius:12px;padding:8px}.workspace-menu__categories button[aria-pressed=true]{background:var(--home-blue-soft);border-color:var(--home-blue)}.workspace-menu__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workspace-menu__links a{background:var(--glass-soft);border:1px solid var(--glass-line);overflow-wrap:normal;grid-template-columns:32px minmax(0,1fr);min-height:64px;padding:10px;font-size:.9rem}.workspace-menu__links a>.icon:last-child{display:none}.workspace-menu__header h2{font-size:1.3rem}.workspace-menu__account{min-height:44px}.app-shell--connected .main-nav__menu{flex-shrink:0}@media (width<=767px),(height<=620px){.app-shell--connected{grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0, 1fr) calc(62px + env(safe-area-inset-bottom));padding:max(4px, env(safe-area-inset-top)) 8px 0}.app-shell--connected>.app-header{border-radius:18px 18px 0 0;grid-area:1/1;gap:8px;padding:0 10px}.app-shell--connected .brand{gap:8px;font-size:1.2rem}.app-shell--connected .brand-mark{width:36px;height:36px}.app-shell--connected .header-household{display:none}.app-shell--connected>.main-content{border-left:1px solid var(--glass-line);border-radius:0;grid-area:2/1;gap:8px;padding:10px}.app-shell--connected>.main-nav{padding:3px 0 max(3px, env(safe-area-inset-bottom));border:1px solid var(--glass-line);border-radius:0;grid-area:3/1;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;display:grid}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{overflow-wrap:normal;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:52px;padding:4px 1px;font-size:.7rem;line-height:1.1;display:flex}.app-shell--connected .main-nav a .icon,.app-shell--connected .main-nav__menu .icon{width:20px;height:20px;display:block}.app-shell--connected .main-nav__desktop-only,.app-shell--connected .nav-foot,.app-shell--connected .page-footer{display:none!important}.app-shell--connected .main-nav__menu[data-contains-current=true]{background:var(--home-blue-soft);color:var(--glass-ink)}.app-shell--connected .page-heading{min-height:38px}.app-shell--connected .page-heading .eyebrow,.app-shell--connected .page-heading .avatar{display:none}.app-shell--connected .page-heading h1{font-size:1.35rem}}@media (height<=460px){.app-shell--connected{grid-template-rows:48px minmax(0,1fr) 54px}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{min-height:44px}.workspace-menu{gap:8px;padding:12px}.workspace-menu__categories{grid-template-columns:repeat(4,minmax(0,1fr))}.workspace-menu__categories button{min-height:40px;padding:4px;font-size:.78rem}.workspace-menu__links a{min-height:46px;padding:4px 8px}.workspace-menu__header .button{height:40px;min-height:40px}}@media (width>=768px) and (height<=620px){.app-shell--connected{grid-template-rows:48px minmax(0,1fr);grid-template-columns:128px minmax(0,1fr);padding-bottom:4px}.app-shell--connected>.app-header{grid-column:1/-1}.app-shell--connected>.main-content{grid-area:2/2}.app-shell--connected>.main-nav{flex-direction:column;grid-area:2/1;gap:2px;padding:4px;display:flex}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{flex-direction:row;flex:0 0 44px;justify-content:flex-start;gap:8px;min-height:44px;padding:6px;font-size:.8rem}}.app-shell.app-shell--connected{max-width:1480px;padding:max(16px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));grid-template-rows:76px minmax(0,1fr) 84px;grid-template-columns:minmax(0,1fr)}.app-shell--connected>.app-header{border:1px solid var(--home-card-border);background:var(--home-card-background);box-shadow:var(--home-card-shadow);border-radius:22px;grid-area:1/1;padding-inline:22px}.app-shell--connected>.main-content{-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;grid-area:2/1;padding:22px 8px 12px}.app-shell--connected:is(.app-shell--home,.app-shell--rooms,.app-shell--devices)>.main-content{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--home-card-border) transparent;scroll-padding:20px;display:block;overflow:hidden auto}.app-shell--connected>.main-nav{border:1px solid var(--home-card-border);background:var(--home-card-background);width:min(680px,100%);height:72px;box-shadow:var(--home-card-shadow);z-index:var(--z-nav);border-radius:24px;grid-area:3/1;grid-template-columns:repeat(5,minmax(0,1fr));place-self:end center;align-items:stretch;gap:5px;padding:5px;display:grid}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:48px;padding:5px 8px;font-size:.8rem;display:flex}.app-shell--connected .main-nav a .icon,.app-shell--connected .main-nav__menu .icon{width:23px;height:23px;display:block}.app-shell--connected .main-nav .nav-foot{display:none}.app-shell--connected .main-nav a[aria-current=page]{color:#fff;background:linear-gradient(120deg,#0091ff70,#5491ff2e);box-shadow:inset 0 1px #bae0ff59,0 0 24px #1684ff2b}@media (width<=767px){.app-shell.app-shell--connected{padding:max(6px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(4px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));grid-template-rows:62px minmax(0,1fr) 72px}.app-shell--connected>.app-header{border-radius:18px;padding-inline:10px}.app-shell--connected>.main-content{padding:16px 4px 14px}.app-shell--connected>.main-nav{border-radius:20px;gap:2px;height:66px;padding:4px}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{padding:4px 1px;font-size:.7rem}}@media (height<=450px){.app-shell.app-shell--connected{grid-template-rows:48px minmax(0,1fr) 58px;padding-block:4px}.app-shell--connected>.main-nav{height:54px}.app-shell--connected .main-nav a,.app-shell--connected .main-nav__menu{flex-direction:row;gap:6px;min-height:44px}.app-shell--connected>.main-content{padding-top:12px}}.app-shell.app-shell--home{background:var(--canvas);width:100%;max-width:none;height:100dvh;min-height:0;padding:max(14px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));grid-template-rows:minmax(0,1fr) 78px;grid-template-columns:minmax(0,1fr);gap:0;display:grid;overflow:hidden}.app-shell--home>.app-header,.app-shell--home>.main-content>.page-heading,.app-shell--home>.main-content>.page-footer{display:none}.app-shell.app-shell--home>.main-content{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;flex-direction:column;grid-area:1/1;min-width:0;min-height:0;padding:0 0 10px;display:flex;overflow:hidden}.app-shell.app-shell--home>.home-dock{border:1px solid var(--home-card-border);background:var(--home-card-background);width:min(780px,100%);height:70px;box-shadow:var(--home-card-shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);z-index:var(--z-nav);border-radius:24px;grid-area:2/1;grid-template-columns:repeat(7,minmax(0,1fr));place-self:end center;gap:4px;margin:0;padding:5px;display:grid}.app-shell--home>.home-dock a{border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:44px;padding:4px 2px;font-size:clamp(.65rem,1vw,.82rem);display:flex}.home-dock a>span{text-overflow:ellipsis;max-width:100%;overflow:hidden}@media (width<=900px){.app-shell.app-shell--home{padding:max(8px, env(safe-area-inset-top)) 6px max(4px, env(safe-area-inset-bottom));grid-template-rows:minmax(0,1fr) 68px}.app-shell.app-shell--home>.main-content{padding-bottom:8px;overflow-y:auto}.app-shell.app-shell--home>.home-dock{gap:0;height:62px;padding:3px}.app-shell--home>.home-dock a{font-size:.58rem}}.dashboard-attribution{font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}.app-shell.app-shell--connected>.home-dock{left:50%;right:auto;bottom:max(8px, env(safe-area-inset-bottom));border:1px solid var(--home-card-border);background:var(--home-card-background);width:min(780px,100% - 36px);height:70px;box-shadow:var(--home-card-shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);z-index:var(--z-nav);border-radius:24px;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0;padding:5px;display:grid;position:fixed;transform:translate(-50%)}.app-shell.app-shell--connected>.home-dock.has-menu{grid-template-columns:repeat(8,minmax(0,1fr))}.app-shell.app-shell--connected>.home-dock>:is(a,button){border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:44px;padding:4px 2px;font-size:clamp(.65rem,1vw,.82rem);display:flex}.app-shell.app-shell--connected>.home-dock .icon{width:24px;height:24px}@media (width<=900px){.app-shell.app-shell--connected>.home-dock{width:calc(100% - 12px);height:62px;bottom:max(4px, env(safe-area-inset-bottom));gap:0;padding:3px}.app-shell.app-shell--connected>.home-dock>:is(a,button){font-size:.58rem}}.app-shell.app-shell--connected{--premium-panel:linear-gradient(145deg, #747d937a, #35303f94);--premium-edge:#eee8f86e;--premium-shadow:inset 0 1px 1px #ffffff2e, 0 12px 34px #0c0e1930;background:linear-gradient(#14172a14,#080b181f),url(/assets/homeos-berlin-evening-B_RdvbjZ.png) 50%/cover fixed;max-width:none;left:0;transform:none}.app-shell.app-shell--home{grid-template-rows:minmax(0,1fr);padding:clamp(42px,8vh,90px) clamp(24px,2vw,48px) 100px}.app-shell.app-shell--home>.main-content{padding:0}.homeos-dashboard{color:#fffaf6;--muted:#dedee7;--ink:#fffaf6;--dashboard-panel:var(--premium-panel);--dashboard-line:var(--premium-edge);background:0 0}.homeos-dashboard__city-backdrop{display:none}.homeos-dashboard__matrix{grid-template-rows:minmax(0,1.06fr) minmax(0,1.05fr) minmax(0,.72fr);gap:clamp(10px,1vw,18px);max-width:none;margin:auto;padding:0}.homeos-dashboard__tile,.homeos-dashboard__transit-slot>.transit-widget{border:1px solid var(--premium-edge);box-shadow:var(--premium-shadow);-webkit-backdrop-filter:blur(25px)saturate(.9);backdrop-filter:blur(25px)saturate(.9);color:#fffaf6;border-radius:20px}:where(.homeos-dashboard__tile:not(.homeos-dashboard__tile--weather):not(.homeos-dashboard__tile--luuk)),.homeos-dashboard__transit-slot>.transit-widget{background:var(--premium-panel);padding:clamp(12px,1.3vw,24px)}.homeos-dashboard__tile:before,.homeos-dashboard__tile:after{display:none}.homeos-dashboard__tile--weather{background:linear-gradient(145deg,#59778fa3,#203748b3)}.homeos-dashboard__tile--calendar{background:linear-gradient(135deg,#8790ab73,#6e65786e)}.homeos-dashboard__tile--shopping{background:linear-gradient(155deg,#ac83816e,#433d486e)}.homeos-dashboard__tile-action{color:#fffaf6;background:#ffffff12;border-color:#ffffff29}.homeos-dashboard__tile-heading{min-height:24px}.homeos-dashboard__tile-icon{color:#f2e6d5;background:0 0;width:20px;height:20px}.homeos-dashboard__tile-heading h2{font-weight:500}.homeos-dashboard__weather-copy{z-index:1;position:relative}.homeos-dashboard__clock{letter-spacing:-.045em;margin:4px 0 8px;font-size:clamp(32px,2.8vw,48px);font-weight:250;line-height:1.1;display:block}.homeos-dashboard__weather-now{align-items:center;gap:12px;display:flex}.homeos-dashboard__weather-now>div:first-child{flex:none}.homeos-dashboard__weather-now strong{font-size:clamp(38px,3vw,52px);font-weight:250}.homeos-dashboard__weather-now span{font-size:11px}.homeos-dashboard__weather-now .homeos-dashboard__forecast{border-left:1px solid #fff3;flex:1;justify-content:space-around;gap:4px;min-width:0;margin:0;padding-left:8px;display:flex;overflow:auto}.homeos-dashboard__forecast>span{background:0 0;flex-direction:column;gap:4px;min-width:35px;padding:0;display:flex}.homeos-dashboard__forecast .weather-scene{width:28px;height:28px}.homeos-dashboard__forecast time{letter-spacing:0;font-size:10px;font-weight:400}.homeos-dashboard__forecast b{font-size:12px;font-weight:500}.homeos-dashboard__weather-updated{color:#dedee7;margin:8px 0 0;font-size:10px}.homeos-dashboard__weather-push{font-size:10px}.homeos-dashboard__weather-push .button{min-height:28px;padding:4px 8px;font-size:10px}.homeos-dashboard__calendar-split{grid-template-columns:1.15fr 1fr;gap:16px;height:100%;min-height:0;padding-top:4px;display:grid}.homeos-dashboard__calendar-month{padding:0 0 10px;font-size:14px;font-weight:500}.homeos-dashboard__calendar .is-today{color:#fffaf6;background:#dee0ee59;box-shadow:inset 0 0 0 1px #fff3}.homeos-dashboard__calendar .has-event:not(.is-today){background:#c6a5f51a}.homeos-dashboard__calendar i{background:#c6a5f5}.homeos-dashboard__agenda{scrollbar-width:thin;min-height:0;padding-top:35px;overflow:auto}.homeos-dashboard__agenda h3{margin:0 0 10px;font-size:11px;font-weight:500}.homeos-dashboard__agenda button{color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-left:3px solid #c6a5f5;flex-direction:column;gap:5px;margin:10px 0;padding:4px 0 4px 9px;font-size:11px;display:flex}.homeos-dashboard__agenda time,.homeos-dashboard__agenda p{color:#dedee7;font-size:10px}.homeos-dashboard__notice-list{gap:0}.homeos-dashboard__notice-list li{background:0 0;border-bottom:1px solid #fff2;border-left:3px solid #b8b5d7;border-radius:0;padding:12px 4px 12px 12px;position:relative}.homeos-dashboard__notice-list li:nth-child(3n+1){border-left-color:#f2ab9b}.homeos-dashboard__notice-list li:nth-child(3n+2){border-left-color:#e9cf87}.homeos-dashboard__notice-list span{white-space:normal}.homeos-dashboard__shopping-list{padding-top:25px}.homeos-dashboard__shopping-list label{min-height:34px}.homeos-dashboard__shopping-list input{border-color:#e3dcdf9e;border-radius:50%}.homeos-dashboard__shopping-list input:checked{background:#add2b4;box-shadow:inset 0 0 0 4px #add2b4}.homeos-dashboard__track{grid-template-columns:minmax(55px,28%) minmax(0,1fr);padding-top:10px}.homeos-dashboard__tile--music progress{accent-color:#f9f3ec;margin-top:24px}.homeos-dashboard__media-controls{gap:24px;margin-top:18px}.homeos-dashboard__media-controls .button{border-radius:50%;min-width:40px;min-height:40px}.homeos-dashboard__tile:is(.homeos-dashboard__tile--living,.homeos-dashboard__tile--kitchen,.homeos-dashboard__tile--bath,.homeos-dashboard__tile--hall,.homeos-dashboard__tile--private-room){background:linear-gradient(#211f2429,#211f24b3 48%,#211f24ed 97%),url(/assets/homeos-evening-room-mwK3jS7W.png) 50%/cover;padding:12px}.homeos-dashboard__room-reading strong{letter-spacing:0;font-size:16px;font-weight:500}.homeos-dashboard__room-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.homeos-dashboard__room-controls .button{background:#c3b5a70c;border:1px solid #eddfca4a;min-width:0}.homeos-dashboard__room-controls .button.is-on{color:#ffedb4;background:#dcb46426}.homeos-dashboard__state>span{filter:none;background:#ffffff09;border:1px solid #fff4;border-radius:7px;width:28px;height:24px}.homeos-dashboard__state--error>span,.homeos-dashboard__state--offline>span{background:#f2ab9b19;border-color:#f2ab9b}.app-shell.app-shell--connected>.home-dock{width:min(660px,100% - 36px);height:66px;bottom:max(24px, env(safe-area-inset-bottom));box-shadow:var(--premium-shadow);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);background:linear-gradient(120deg,#88756dbd,#443d49bd);border:1px solid #e9d8ca57;grid-area:auto;place-self:auto}.app-shell.app-shell--connected>.home-dock>:is(a,button){border-radius:16px;font-size:10px}.app-shell.app-shell--connected>.home-dock a[aria-current=page]{background:#f3e8dc2b;box-shadow:inset 0 1px 1px #fff3}@media (width>=901px){.homeos-dashboard__tile--weather{grid-column:1/span 22}.homeos-dashboard__tile--calendar{grid-column:23/span 21}.homeos-dashboard__tile--notices{grid-column:44/span 17}.homeos-dashboard__tile--shopping{grid-column:1/span 11}.homeos-dashboard__transit-slot{grid-column:12/span 11}.homeos-dashboard__tile--music{grid-column:23/span 21}.homeos-dashboard__tile--luuk{grid-column:44/span 17}}@media (width>=901px) and (width<=1200px){.app-shell.app-shell--home{padding-inline:24px}.homeos-dashboard__calendar-split{gap:8px}.homeos-dashboard__forecast>span{min-width:29px}}@media (width>=901px) and (height<=800px){.app-shell.app-shell--home{padding-top:40px;padding-bottom:90px}.app-shell.app-shell--connected>.home-dock{height:62px;bottom:16px}.homeos-dashboard__clock{margin-bottom:8px;font-size:32px}.homeos-dashboard__weather-now strong{font-size:38px}}@media (width<=900px){.app-shell.app-shell--home{padding:max(12px, env(safe-area-inset-top)) 12px 80px}.homeos-dashboard__matrix{grid-template-rows:none;height:auto;padding:0}.homeos-dashboard__tile-body{overflow:auto}.homeos-dashboard__tile--weather{min-height:290px}.homeos-dashboard__tile--calendar{min-height:270px}.homeos-dashboard__calendar-split{min-height:235px}.homeos-dashboard__clock{font-size:44px}.homeos-dashboard__weather-now strong{font-size:46px}.app-shell.app-shell--connected>.home-dock{bottom:max(8px, env(safe-area-inset-bottom));width:calc(100% - 16px);height:62px}.app-shell.app-shell--connected>.home-dock>:is(a,button){font-size:9px}.homeos-dashboard__room-controls{grid-template-columns:1fr}}.weather-push-indicator{place-items:center;width:28px;height:28px;display:grid}.weather-push-indicator .icon{width:20px;height:20px}.weather-push-settings>.weather-push__options{width:100%;max-height:none;margin-bottom:16px;position:static}.homeos-dashboard__tile--weather{padding:0}.homeos-dashboard__tile--weather>.homeos-dashboard__tile-body{overflow:auto;container-type:size}.weather-panel{isolation:isolate;color:#fffaf6;text-shadow:0 1px 6px #0008;flex-direction:column;gap:5px;height:100%;min-height:190px;padding:clamp(12px,2cqw,18px);display:flex;position:relative}.weather-panel__atmosphere{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.weather-panel__atmosphere>.weather-scene{aspect-ratio:auto;width:100%;height:100%;-webkit-mask-image:none;mask-image:none}.weather-panel__atmosphere:after{content:"";background:linear-gradient(90deg,#07142265,#09182d30),linear-gradient(#0000 25%,#08122570);position:absolute;inset:0}.weather-panel__top{flex:1;grid-template-columns:minmax(0,.31fr) minmax(0,.3fr) minmax(0,.39fr);align-items:center;gap:clamp(8px,2cqw,14px);min-height:0;display:grid}.weather-panel__present{min-width:0}.weather-panel__present header{flex-direction:column;display:flex}.weather-panel__city{font-size:clamp(16px,min(3.8cqw,7cqh),28px);line-height:1.2}.weather-panel__clock{letter-spacing:-.04em;font-size:clamp(38px,min(10.4cqw,18cqh),78px);font-weight:250;line-height:1.06}.weather-panel__current{flex-direction:row;align-items:center;gap:8px;margin-top:5px;display:flex}.weather-panel__current>strong{letter-spacing:-.06em;font-size:clamp(36px,min(9.7cqw,17cqh),72px);font-weight:250;line-height:1}.weather-panel__current>div{flex-direction:column;gap:4px;min-width:0;display:flex}.weather-panel__description{overflow-wrap:anywhere;font-size:clamp(12px,min(2.8cqw,4.8cqh),20px);line-height:1.2}.weather-panel__current small{color:#bed9f1;font-size:clamp(11px,2.1cqw,15px);line-height:1.2}.weather-panel__days{min-width:0;padding-top:20px}.weather-panel__range{color:#bed9f1;margin-top:3px;font-size:clamp(11px,2.1cqw,15px);display:block}.weather-panel__metrics{border-inline:1px solid #ffffff24;flex-direction:column;justify-content:center;gap:clamp(8px,2.1cqw,16px);min-width:0;margin:0;padding:0 clamp(5px,1.3cqw,12px);font-size:clamp(11px,2.1cqw,15px);line-height:1.2;display:flex}.weather-panel__metrics>div{align-items:center;gap:clamp(4px,1cqw,10px);min-width:0;display:flex}.weather-panel__metrics>div>div{min-width:0}.weather-panel__metrics .icon{flex:none;width:clamp(24px,5cqw,36px);height:clamp(24px,5cqw,36px)}.weather-panel__metrics dt,.weather-panel__metrics small{color:#c4d5e8;font-size:.9em}.weather-panel__metrics dd{overflow-wrap:anywhere;margin:2px 0 0}.weather-panel__metrics small{margin-top:2px;display:block}.weather-panel__summary{flex:none;align-items:center;gap:8px;margin:0;font-size:clamp(11px,1.8cqw,13px);line-height:1.3;display:flex}.weather-panel__summary .weather-scene{flex:none;width:clamp(20px,3.5cqw,24px);height:clamp(20px,3.5cqw,24px)}.weather-panel__items{grid-template-columns:repeat(var(--weather-columns), minmax(0, 1fr));align-items:center;gap:3px;min-width:0;display:grid}.weather-panel__period{flex-direction:column;justify-content:center;align-items:center;gap:7px;min-width:0;font-size:clamp(11px,2cqw,14px);line-height:1.2;display:flex}.weather-panel__period time{white-space:nowrap}.weather-panel__period .weather-scene{width:clamp(30px,6cqw,44px);height:clamp(30px,6cqw,44px)}.weather-panel__period b{font-size:clamp(14px,2.7cqw,19px);font-weight:500}.weather-panel__period em{color:#d5dfeb;font-size:clamp(12px,2.5cqw,17px);font-style:normal}.weather-panel__temperatures{white-space:nowrap;flex-direction:column;align-items:center;gap:5px;display:flex}.weather-panel__period small{color:#c2e3fc;white-space:nowrap;justify-content:center;align-items:center;gap:3px;font-size:clamp(11px,1.8cqw,13px);display:flex}.weather-panel__period small svg{fill:none;stroke:currentColor;stroke-width:1.3px;width:9px;height:12px}.weather-panel__hours{border-top:1px solid #edf3ff36;flex:none;padding-top:8px}.weather-panel__hours .weather-panel__period{border-right:1px solid #ffffff16;gap:2px}.weather-panel__hours .weather-panel__period b{font-size:clamp(12px,2cqw,15px)}.weather-panel__hours .weather-panel__period:last-child{border:0}.weather-panel__hours .weather-scene{width:clamp(24px,4cqw,28px);height:clamp(24px,4cqw,28px)}.weather-panel__footer{flex:none;justify-content:space-between;align-items:center;gap:6px;min-height:13px;display:flex}.weather-panel__updated{color:#dde5ef;font-size:9px;line-height:1.2}.weather-panel__details-link{color:#e6eef9;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:10px;line-height:1.2;text-decoration:underline}.weather-panel__missing{grid-column:1/-1;font-size:11px}.weather-panel__detail-hours{grid-template-columns:repeat(auto-fit,minmax(74px,1fr));gap:18px 8px;max-height:65dvh;padding:12px;display:grid;overflow:auto}.weather-panel__detail-hours .weather-panel__period{color:var(--ink);text-shadow:none}.weather-panel__bell{flex-shrink:0;position:static}.weather-panel__warning-dot{pointer-events:none;background:#fa8067;border-radius:50%;width:7px;height:7px;position:absolute;top:4px;right:4px}.weather-push{position:static}.weather-push>summary{cursor:pointer;background:#dce6fa1f;border:1px solid #f5f4fc4a;border-radius:12px;place-items:center;width:34px;height:34px;list-style:none;display:grid}.weather-push>summary::-webkit-details-marker{display:none}.weather-push>summary .icon{width:21px;height:21px}.weather-push.is-enabled>summary{color:#fff1bf;background:#f1e5c03d}.weather-push.is-enabled>summary svg{fill:#fff1bf33}.weather-push__options{z-index:8;background:#242b3af5;border:1px solid #ffffff4d;border-radius:12px;width:min(290px,65vw);padding:14px;position:absolute;top:41px;right:0;box-shadow:0 10px 30px #0006}.weather-push__options p{margin:6px 0 10px;font-size:12px;line-height:1.4}.weather-push__options .button{min-height:32px;font-size:12px}.weather-push__options [role=status]{margin-top:8px;font-size:11px;display:block}.weather-panel__warning{z-index:3;color:#fff3da;background:#9a5c305c;border:1px solid #ecb27999;border-radius:9px;font-size:11px;position:relative}.weather-panel__warning summary{cursor:pointer;align-items:center;gap:8px;padding:4px 8px;list-style:none;display:flex}.weather-panel__warning summary span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.weather-panel__warning.is-severe{background:#922e405e;border-color:#ef8c84}.weather-panel__warning>div{max-height:170px;padding:10px;overflow:auto}.weather-panel__warning p{margin:4px 0 10px}.weather-panel__bell>.weather-push>summary{background:0 0;border:0;width:28px;height:28px}.weather-panel__bell>.weather-push>summary .icon{width:20px;height:20px}.weather-panel__warning{flex:none}.weather-panel__warning[open]>div{background:#242b3af5;border:1px solid #ecb27999;border-radius:10px;position:absolute;bottom:100%;left:0;right:0;box-shadow:0 5px 25px #0008}.weather-push__options{max-height:calc(100% - 44px);overflow:auto}.weather-push:not([open])>.weather-push__options{display:none}.weather-panel__bell{position:absolute;top:8px;right:clamp(12px,1.3vw,24px)}.weather-panel__warning-dot{top:0;right:0}.weather-push__options{width:min(290px,100cqw - 48px);max-height:170px;text-shadow:none;position:absolute;top:30px;right:0}.weather-panel__warning{text-shadow:none;font-size:10px}.weather-panel__warning summary{padding:2px 7px;line-height:1.4}.weather-panel__warning[open]>div{max-height:150px}@container (width<=420px){.weather-panel__top{gap:7px}.weather-panel__current{gap:5px}.weather-panel__current>strong{font-size:36px}.weather-panel__description{font-size:12px}.weather-panel__metrics{gap:8px;padding-inline:4px}.weather-panel__metrics .icon{width:22px;height:22px}.weather-panel__temperatures{flex-direction:column;align-items:center;gap:1px}}@media (prefers-reduced-motion:reduce){.weather-panel *,.weather-panel :before,.weather-panel :after{scroll-behavior:auto!important;animation:none!important}}@container (width>=600px){.weather-panel__current{flex-direction:row;align-items:center}}:root{--premium-surface:linear-gradient(135deg, #182f48cc, #0c1d30c7);--premium-border:#b9dbf67a;--premium-muted:#b9cee2;--premium-radius:24px;--premium-control:#5b7d9d26;--premium-elevation:inset 0 1px 0 #ffffff12, 0 18px 48px #030e2033;--glass-strong:#112439e0;--glass:#182f48c7;--glass-line:#b9dbf652;--primary:#acd7ff;--primary-hover:#c4e4ff}body{background-image:url(/assets/homeos-berlin-evening-B_RdvbjZ.png)}body:after{background:linear-gradient(#09192a24,#09192a45)}.identity-page.identity-page--entry{grid-template-columns:minmax(0,1fr);align-content:center;width:min(100%,620px);max-width:620px;padding:32px;display:grid}.identity-panel{background:var(--premium-surface);border-color:var(--premium-border);border-radius:var(--premium-radius);box-shadow:var(--premium-elevation);gap:18px;padding:clamp(24px,3vw,44px)}.identity-panel h1{letter-spacing:-.035em;font-size:clamp(26px,2.6vw,38px);font-weight:300;line-height:1.2}.identity-panel .identity-intro{color:var(--premium-muted);font-size:1rem;display:block}.identity-entry-form{gap:22px;margin-top:10px;display:grid}.identity-input{position:relative}.identity-input .field{gap:8px}.identity-input input{border:1px solid var(--premium-border);background:var(--premium-control);border-radius:10px;width:100%;min-height:52px;padding:12px 48px 12px 14px}.identity-password-toggle{cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;display:grid;position:absolute;bottom:4px;right:4px}.identity-recover{color:var(--primary);cursor:pointer;background:0 0;border:0;justify-self:end;min-height:32px;padding:0}.identity-entry-form .identity-actions{display:flex}.identity-entry-form .identity-actions .button{border-radius:10px;min-height:50px}.identity-footer{border-top:1px solid var(--glass-line);color:var(--premium-muted);justify-content:space-between;align-items:center;gap:16px;margin-top:8px;padding-top:18px;font-size:.8rem;display:flex}.identity-footer .field{width:auto;min-width:105px}.identity-footer .field>label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.identity-footer select{background:0 0;border:0;min-height:40px;padding:8px}.app-shell.app-shell--connected{--premium-panel:var(--premium-surface);--premium-edge:var(--premium-border);--premium-shadow:var(--premium-elevation);grid-template-rows:minmax(0,1fr);padding:32px clamp(24px,2vw,48px) 100px}.app-shell.app-shell--connected>.app-header,.app-shell.app-shell--connected>.main-content>.page-heading,.app-shell.app-shell--connected>.main-content>.page-footer{display:none}.app-shell.app-shell--connected>.main-content{grid-row:1}.homeos-dashboard__tile--calendar,.homeos-dashboard__tile--shopping{background:var(--premium-surface)}.app-shell.app-shell--connected>.home-dock{background:var(--premium-surface);border-color:var(--premium-border)}.calendar-workspace,.calendar-editor{--cal-line:var(--glass-line);--cal-muted:var(--premium-muted);background:var(--premium-surface);border:1px solid var(--premium-border);border-radius:var(--premium-radius);box-shadow:var(--premium-elevation);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);max-width:none;margin:0;padding:24px}.calendar-workspace>.calendar-page-header{padding:0 0 20px}.calendar-workspace .calendar-page-header h2,.calendar-editor .calendar-editor__heading h2{font-weight:300}.calendar-workspace .button,.calendar-editor .button{border-radius:10px;font-weight:500}.calendar-editor__heading .button--quiet{box-shadow:none;border:0;min-height:32px}.calendar-editor .calendar-helper{margin:4px 0}.calendar-editor .calendar-form-fields h3{margin-bottom:8px;font-weight:400}.calendar-editor .calendar-form-fields{gap:14px}.calendar-editor .calendar-options{padding-top:12px}.calendar-editor .calendar-options summary{padding-bottom:10px}.calendar-editor .calendar-editor__actions{padding-top:16px;background:#142b43;border-radius:10px;margin-top:16px;padding-inline:12px;position:sticky;bottom:0}.calendar-surface{min-height:0;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0}.calendar-workspace .calendar-surface{min-height:0}.calendar-overview{flex:1;grid-template-columns:minmax(0,2.6fr) minmax(240px,1fr);min-height:0;display:grid}.calendar-overview>.calendar-large-grid{min-width:0}.calendar-day-agenda{border-left:1px solid var(--cal-line);min-width:0;margin-left:24px;padding:20px 0 20px 24px;overflow:auto}.calendar-day-agenda h3{margin:0 0 24px;font-size:1.2rem;font-weight:400}.calendar-day-agenda .calendar-event{border-bottom:1px solid var(--cal-line);background:0 0;border-radius:0;margin-bottom:18px;padding-block:16px}.calendar-editor-layout{grid-template-columns:minmax(0,2.3fr) minmax(250px,1fr);display:grid}.calendar-editor__heading{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:24px}.calendar-editor__heading .button{padding-left:0}.calendar-form-fields{gap:20px}.calendar-form-fields .calendar-title-field input{min-height:48px;font-size:1rem}.calendar-form-fields textarea{min-height:72px}.calendar-form-two{gap:20px}.calendar-form-fields input:not([type=checkbox]),.calendar-form-fields textarea,.calendar-form-fields select,.calendar-search input{background:var(--premium-control);border-color:var(--premium-border);border-radius:10px}.calendar-event--draft{border-left-color:#69dfa0}.calendar-controls{padding-inline:0}.calendar-tile__body{min-height:156px}.calendar-tile>header,.calendar-tile>footer{flex-shrink:0}@media (width>=901px){.homeos-dashboard__matrix:has(.homeos-dashboard__tile--luuk)>.homeos-dashboard__tile--shopping{grid-column:1/span 12}.homeos-dashboard__matrix:has(.homeos-dashboard__tile--luuk)>.homeos-dashboard__transit-slot{grid-column:13/span 12}.homeos-dashboard__matrix:has(.homeos-dashboard__tile--luuk)>.homeos-dashboard__tile--music{grid-column:25/span 18}.homeos-dashboard__matrix:has(.homeos-dashboard__tile--luuk)>.homeos-dashboard__tile--luuk{grid-column:43/span 18}.homeos-dashboard__matrix:not(:has(.homeos-dashboard__tile--luuk))>.homeos-dashboard__tile--music{grid-column:31/span 30}.homeos-dashboard__matrix:not(:has(.homeos-dashboard__tile--luuk))>.homeos-dashboard__tile--shopping{grid-column:1/span 15}.homeos-dashboard__matrix:not(:has(.homeos-dashboard__tile--luuk))>.homeos-dashboard__transit-slot{grid-column:16/span 15}}@media (width>=901px) and (height<=800px){.app-shell.app-shell--home>.main-content{overflow-y:auto}.homeos-dashboard{flex-shrink:0;min-block-size:680px}.homeos-dashboard__matrix{grid-template-rows:minmax(280px,1.2fr) minmax(180px,1fr) minmax(150px,.7fr)}}.calendar-day-cell.is-selected{background:#81bfff26}.calendar-segments button[aria-pressed=true]{background:#acd7ff30}@media (width<=1000px){.calendar-overview,.calendar-editor-layout{grid-template-columns:minmax(0,1fr)}.calendar-day-agenda{border-left:0;border-top:1px solid var(--cal-line);margin:24px 0 0;padding:20px 0 0}.calendar-overview>.calendar-large-grid{min-height:440px}}@media (width<=600px){.identity-page.identity-page--entry{padding:16px}.app-shell.app-shell--connected{padding:16px 12px 100px}.calendar-workspace,.calendar-editor{padding:16px}.calendar-form-two{grid-template-columns:minmax(0,1fr)}}.workspace-context-actions{justify-content:flex-end;gap:8px;margin-bottom:12px;display:flex}.workspace-context-actions .button{width:auto;min-height:44px}.app-shell.app-shell--connected:has(>.home-dock--full-width){--home-dock-height:76px;padding-bottom:calc(var(--home-dock-height) + env(safe-area-inset-bottom) + 16px);grid-template-rows:minmax(0,1fr)}.app-shell.app-shell--connected>.home-dock.home-dock--full-width{width:100%;max-width:none;height:calc(var(--home-dock-height) + env(safe-area-inset-bottom));padding:6px max(12px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));border:0;border-top:1px solid var(--premium-border);background:var(--premium-surface);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);border-radius:0;grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;margin:0;display:grid;position:fixed;inset:auto 0 0;overflow:visible;transform:none;box-shadow:0 -8px 32px #060d1b30}.app-shell.app-shell--connected>.home-dock.home-dock--full-width>a{border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:44px;padding:4px 2px;font-size:.8rem;display:flex}.app-shell.app-shell--connected>.home-dock.home-dock--full-width>a>span{white-space:nowrap;text-overflow:clip;overflow:visible}.app-shell.app-shell--connected>.home-dock.home-dock--full-width>a:focus-visible{outline-offset:-2px;outline:2px solid #c7e2ff}@media (width<=600px){.app-shell.app-shell--connected:has(>.home-dock--full-width){--home-dock-height:64px}.app-shell.app-shell--connected>.home-dock.home-dock--full-width{padding-inline:max(3px, env(safe-area-inset-left)) max(3px, env(safe-area-inset-right));gap:0}.app-shell.app-shell--connected>.home-dock.home-dock--full-width>a>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}:root{--room-divider:var(--premium-border);--room-row:var(--surface-soft);--room-selected:var(--home-blue-soft);--room-gap:clamp(20px, 2.6vw, 48px)}.app-shell.app-shell--rooms.app-shell--connected:has(.room-workspace){padding:0 0 calc(var(--home-dock-height) + env(safe-area-inset-bottom))}.app-shell--rooms.app-shell--connected:has(.room-workspace)>.main-content{align-self:stretch;width:100%;max-width:none;min-height:0;margin:0;padding:0;overflow:auto}.room-workspace{color:var(--ink);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(110deg,#142438ce,#152537a6 56%,#102335ce);min-height:100%;padding:0 clamp(20px,3.6vw,64px)}.room-toolbar{border-bottom:1px solid var(--room-divider);align-items:center;gap:16px;min-height:88px;display:flex}.room-toolbar>strong,.room-toolbar-context{font-size:1.25rem;font-weight:600}.room-toolbar-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.room-toolbar .button{width:auto}.room-privacy{color:var(--muted);align-items:center;gap:7px;font-size:.8rem;display:inline-flex}.room-privacy svg{width:16px}.room-message{padding:32px 0}.room-overview{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:24px;padding:32px 0;display:grid}.room-tile{text-align:left;background:var(--room-row);border:1px solid var(--room-divider);border-radius:var(--radius-control);min-height:168px;color:var(--ink);cursor:pointer;grid-template-rows:auto auto auto;grid-template-columns:48px 1fr 20px;gap:9px 16px;padding:24px;display:grid;position:relative}.room-tile:hover{background:var(--glass-hover);border-color:var(--focus)}.room-tile-icon{color:var(--focus);grid-row:1/4;align-self:center}.room-tile-icon svg{width:36px;height:36px}.room-tile-name{font-size:1.1rem;font-weight:600}.room-tile-status{color:var(--muted);grid-column:2;font-size:.85rem}.room-tile-access{color:var(--muted);grid-column:2;align-items:center;gap:7px;font-size:.75rem;display:flex}.room-tile-access svg{width:14px;height:14px}.room-tile>svg{width:16px;position:absolute;top:25px;right:20px}.room-detail{min-height:calc(100dvh - 88px - var(--home-dock-height));grid-template-columns:minmax(210px,.85fr) minmax(360px,1.9fr) minmax(205px,.8fr);display:grid}.room-light-list{padding:28px var(--room-gap) 28px 0;border-right:1px solid var(--room-divider);min-width:0}.room-section-label{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.room-section-label>strong{font-size:.95rem;font-weight:600}.room-section-label>span{color:var(--muted);align-items:center;display:flex}.room-section-label .button{width:auto;min-height:40px;padding:6px 9px;font-size:.8rem}.room-select-all{color:var(--muted);align-items:center;gap:12px;min-height:44px;margin:16px 0 12px;font-size:.85rem;display:flex}.room-workspace input[type=checkbox]{accent-color:var(--focus);flex-shrink:0;width:18px;height:18px}.room-light-rows{flex-direction:column;gap:8px;display:flex}.room-light-row{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:12px;min-width:0;padding:16px 12px;display:flex}.room-light-row[data-selected=true]{background:var(--room-selected);border-color:var(--room-divider)}.room-light-row>svg{width:20px;color:var(--muted);flex-shrink:0}.room-light-row>span{flex:1;min-width:0}.room-light-row strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:550;display:block}.room-light-row small{color:var(--muted);margin-top:5px;font-size:.75rem;display:block}.room-colour-dot{border-radius:50%;flex-shrink:0;width:13px;height:13px;box-shadow:0 0 14px}.room-light-controls{min-width:0;padding:28px var(--room-gap)}.room-selection-bar{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.room-selection-bar strong{font-size:.9rem}.room-power{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;min-height:44px;display:flex}.room-power i{background:var(--surface-soft);border:1px solid var(--line);border-radius:30px;width:46px;height:26px;padding:3px;display:block}.room-power i:before{content:"";background:var(--ink);width:18px;height:18px;transition:transform var(--motion);border-radius:50%;display:block}.room-power[aria-checked=true] i{background:var(--focus)}.room-power[aria-checked=true] i:before{background:var(--on-primary);transform:translate(19px)}.room-power:disabled{opacity:.45;cursor:default}.room-colour-controls{flex-direction:column;align-items:center;gap:20px;padding:12px 0 18px;display:flex}.room-wheel{aspect-ratio:1;flex-shrink:0;width:clamp(190px,24vh,280px);position:relative}.room-wheel-ring{touch-action:none;cursor:crosshair;background:conic-gradient(#ff6969,#ffde79,#9bea78,#78eed8,#74b1ff,#ba81ff,#ff78cf,#ff6969);border-radius:50%;position:absolute;inset:0;box-shadow:0 0 30px #18213d40}.room-wheel-ring:before{content:"";background:#1a2b3d;border-radius:50%;position:absolute;inset:20px;box-shadow:inset 0 0 14px #0004}.room-wheel-marker{width:20px;height:100%;transform:rotate(var(--wheel-angle));pointer-events:none;position:absolute;top:0;left:calc(50% - 10px)}.room-wheel-marker:before{content:"";border:3px solid #fff;border-radius:50%;width:20px;height:20px;position:absolute;top:0;left:0;box-shadow:0 0 4px #000a}.room-wheel-sv{background:linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, transparent), var(--wheel-hue);touch-action:none;cursor:crosshair;border-radius:8px;position:absolute;inset:25%}.room-wheel-sv>span{pointer-events:none;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 4px #0009}.room-wheel[data-disabled=true]{opacity:.3}.room-wheel[data-disabled=true] *{cursor:default}.room-sliders{gap:22px;width:100%;max-width:520px;display:grid}.room-slider{gap:12px;font-size:.85rem;display:grid}.room-slider>span{justify-content:space-between;gap:12px;display:flex}.room-slider output{color:var(--muted);font-variant-numeric:tabular-nums}.room-slider input[type=range]{appearance:none;background:linear-gradient(90deg, #50637b, var(--focus));width:100%;height:8px;accent-color:var(--focus);cursor:pointer;border-radius:20px;margin:6px 0}.room-slider input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--ink);border:3px solid #accce8;border-radius:50%;width:22px;height:22px;box-shadow:0 2px 6px #0005}.room-slider-temperature input[type=range]{background:linear-gradient(90deg,#c6e2ff,#fff0d1,#ffa958)}.room-slider input:disabled{opacity:.3;cursor:default}.room-favourites,.room-scenes{border-top:1px solid var(--room-divider);padding:14px 0}.room-swatches{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.room-swatch{background:var(--swatch);cursor:pointer;border:4px solid #ffffff16;border-radius:50%;width:42px;height:42px;box-shadow:inset 0 0 0 1px #fff3}.room-swatch:disabled{opacity:.4;cursor:default}.room-swatch:hover:not(:disabled){box-shadow:0 0 0 2px var(--focus)}.room-saved-colour,.room-scene{position:relative}.room-scene-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:8px;display:grid}.room-scene-list>.room-muted{grid-column:1/-1}.room-scene>button:first-child{border:1px solid var(--room-divider);border-radius:var(--radius-sm);background:var(--room-row);color:var(--ink);cursor:pointer;overflow-wrap:anywhere;flex-direction:column;align-items:center;gap:10px;width:100%;min-height:88px;padding:14px 8px;font-size:.82rem;display:flex}.room-scene>button:first-child:hover{background:var(--glass-hover)}.room-scene-colours{display:flex}.room-scene-colours i{border:1px solid #fff4;border-radius:50%;width:22px;height:22px;margin-left:-4px}.room-delete{background:var(--surface);width:28px;height:28px;color:var(--ink);border:1px solid var(--line);cursor:pointer;border-radius:50%;position:absolute;top:-5px;right:-5px}.room-access{border-left:1px solid var(--room-divider);min-width:0;padding:28px 0 28px var(--room-gap)}.room-access>.room-section-label>svg{width:17px;color:var(--muted)}.room-person{align-items:center;gap:12px;min-height:72px;font-size:.9rem;display:flex}.room-person-avatar{border:1px solid var(--line);background:var(--surface-soft);width:36px;height:36px;color:var(--focus);border-radius:50%;place-items:center;display:grid}.room-person>strong{overflow-wrap:anywhere;flex:1;font-weight:500}.room-person>svg{width:16px;color:var(--muted)}.room-access .field{margin:16px 0}.room-access .homeos-select__trigger{min-height:44px}.room-add-person{width:100%;margin-top:12px;font-size:.85rem}.room-muted{color:var(--muted);font-size:.8rem;line-height:1.5}.room-error{color:var(--error);font-size:.85rem}.room-no-lights{min-height:300px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.room-no-lights>svg{width:40px;height:40px}.room-other-devices{gap:16px;margin-top:24px;display:grid}.room-other-devices .device-card{box-shadow:none;border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;padding:14px 0}.room-mobile-tabs{display:none}.room-workspace .room-swatch{width:44px;height:44px}@media (width<=600px) and (height>=740px){.room-workspace .room-toolbar{min-height:60px}.room-workspace .room-mobile-tabs{margin-top:8px}.room-workspace .room-mobile-tabs .button{min-height:40px;padding-block:8px}.room-workspace .room-select-all{min-height:36px}.room-workspace .room-light-row{padding:7px 9px}.room-workspace .room-light-controls{padding-top:10px}.room-workspace .room-colour-controls{padding:10px 0 14px}.room-workspace .room-favourites,.room-workspace .room-scenes{padding-block:8px}.room-workspace .room-scene>button:first-child{min-height:72px;padding:9px}}@media (width>=1200px){.room-colour-controls{flex-direction:row;gap:24px;min-height:260px}.room-wheel{width:220px}.room-sliders{flex:1}}@media (width>=1600px){.room-colour-controls{gap:36px;min-height:340px}.room-wheel{width:280px}}@media (height<=820px) and (width>=1001px){.room-toolbar{min-height:70px}.room-detail{min-height:calc(100dvh - 70px - var(--home-dock-height))}.room-light-controls,.room-light-list,.room-access{padding-top:18px;padding-bottom:18px}.room-colour-controls{gap:12px;padding:6px 0 12px}.room-sliders{gap:14px}.room-wheel{width:180px}.room-favourites,.room-scenes{padding:8px 0}.room-scene>button:first-child{min-height:72px;padding:10px}}@media (width<=1000px){.room-workspace{padding:0 24px}.room-detail{grid-template-columns:220px minmax(0,1fr)}.room-access{border-left:0;border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:20px;padding:20px 0;display:flex}.room-access>.room-section-label{width:100%}.room-access .field{min-width:200px}.room-add-person{width:auto}.room-light-controls{padding-right:0}}@media (width<=600px){.room-workspace{padding:0 16px}.room-toolbar{gap:8px;min-height:70px}.room-toolbar>strong{font-size:1rem}.room-toolbar .room-privacy{gap:0;font-size:0}.room-toolbar-actions{gap:0}.room-toolbar-actions .button{padding:8px}.room-toolbar-context{font-size:1rem}.room-overview{grid-template-columns:1fr;gap:14px;padding:20px 0}.room-tile{min-height:135px;padding:20px}.room-mobile-tabs{gap:4px;margin-top:12px;display:flex}.room-mobile-tabs .button{flex:1}.room-mobile-tabs [aria-pressed=true]{background:var(--room-selected)}.room-detail{flex-direction:column;min-height:0;display:flex}.room-light-list{border:0;padding:12px 0 0}.room-light-list>.room-section-label{display:none}.room-select-all{margin:0}.room-light-rows{flex-flow:wrap;gap:6px}.room-light-row{flex:145px;gap:8px;padding:9px}.room-light-row>svg{display:none}.room-light-row strong{font-size:.8rem}.room-light-row small{font-size:.7rem}.room-light-controls{padding:20px 0}.room-colour-controls{flex-direction:row;gap:20px;padding:16px 0 20px}.room-wheel{width:150px}.room-wheel-ring:before{inset:16px}.room-wheel-marker:before{width:17px;height:17px}.room-sliders{gap:25px}.room-slider{font-size:.75rem}.room-slider>span{flex-wrap:wrap;gap:4px}.room-slider input[type=range]{height:7px}.room-swatches{gap:10px}.room-swatch{width:38px;height:38px}.room-scene-list{gap:8px}.room-access{border:0;padding:20px 0;display:block}.room-detail[data-panel=lights] .room-access,.room-detail[data-panel=lights] .room-other-devices,.room-detail[data-panel=access]>:not(.room-access),.room-detail[data-panel=devices] .room-light-controls,.room-detail[data-panel=devices] .room-access,.room-detail[data-panel=devices] .room-light-list>:not(.room-other-devices){display:none}.room-detail[data-panel=devices] .room-other-devices{margin:0}.room-add-person{width:100%}}.admin-workspace{background:var(--premium-surface);width:100%;max-width:none;min-height:100%;box-shadow:var(--premium-elevation);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px);color:var(--glass-ink);border:0;border-radius:0;grid-template-columns:minmax(170px,210px) minmax(0,1fr);gap:0;display:grid;overflow:visible}.app-shell.app-shell--settings.app-shell--connected:has(.admin-workspace){padding:0 0 calc(var(--home-dock-height) + env(safe-area-inset-bottom))}.app-shell.app-shell--settings.app-shell--connected:has(.admin-workspace)>.main-content{width:100%;max-width:none;margin:0;padding:0;overflow:auto}.admin-workspace__navigation{padding-top:32px}.device-workspace-selector{display:none}.admin-members-workspace{grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr);gap:32px;display:grid}.admin-members-list{margin:0;padding:0;list-style:none}.admin-members-list li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 0;display:flex}.admin-members-list strong{font-weight:500}.admin-members-workspace>.invitations{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}@media (width<=700px){.admin-members-workspace{grid-template-columns:1fr;gap:24px}}.admin-workspace .device-settings-layout--workspace:has(.device-context-registry) .device-context-meta{display:none}.admin-workspace .device-settings-layout--workspace .device-context-panel__header{margin-bottom:24px}@media (width>=1101px){.admin-workspace .device-settings-layout--workspace:has(.device-context-registry){grid-template-rows:auto auto auto auto;grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);gap:16px clamp(32px,4vw,72px)}.admin-workspace .device-settings-layout--workspace>.device-context-panel{grid-area:1/2/4}.admin-workspace .device-settings-layout--workspace>.device-context-registry{display:contents}.admin-workspace .device-settings-layout--workspace .device-registry-header{grid-area:1/1;margin:0}.admin-workspace .device-settings-layout--workspace .device-registry-list{grid-area:2/1;margin:0}.admin-workspace .device-settings-layout--workspace .device-registry-pages{grid-area:3/1}.admin-workspace .device-settings-layout--workspace .device-registry-detail{grid-area:4/2;margin:0}.admin-workspace .device-settings-layout--other>.device-context-panel{display:none}.admin-workspace .device-settings-layout--other .device-registry-detail{grid-row:1/4}}.admin-workspace__navigation{border-right:1px solid var(--premium-border);flex-direction:column;gap:6px;padding:16px;display:flex}.admin-workspace__navigation>.button{text-align:left;white-space:normal;width:100%;min-height:46px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:flex-start;gap:10px;padding:10px;font-size:.85rem;font-weight:500}.admin-workspace__navigation>.button[aria-current=page]{border-color:var(--premium-border);background:var(--premium-control);color:var(--glass-ink)}.admin-workspace__navigation .icon{flex:none;width:20px;height:20px}.admin-workspace__mobile-navigation{display:none}.admin-workspace__content{min-width:0;padding:clamp(18px,2vw,32px)}.admin-workspace__content>:is(.home-settings,.home-location-settings,.equipment-manager,.invitations,.settings-actions,.account-settings-toolbar),.admin-workspace .device-settings-layout>:is(.device-context-panel,.device-context-registry){width:100%;max-width:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.admin-workspace .device-settings-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px;width:100%;display:grid}.admin-workspace .device-settings-layout:not(:has(.device-context-registry)){grid-template-columns:minmax(0,1fr)}.admin-workspace .device-settings-layout>.device-context-registry{border-left:1px solid var(--premium-border);padding-left:32px}.admin-workspace .device-context-panel__header>span:first-child{display:none}.admin-workspace .device-context-panel__header{justify-content:flex-end}.admin-workspace .device-context-meta{margin-block:16px 24px}.admin-workspace .device-context-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.admin-workspace .device-context-form label{min-width:0}.admin-workspace .device-context-actions{flex-wrap:wrap;justify-content:flex-start}.admin-workspace .device-registry-list button{background:0 0;border-radius:8px}.admin-workspace .device-registry-list button[aria-pressed=true]{background:var(--premium-control)}.admin-workspace .device-registry-detail dl{flex-wrap:wrap}.admin-workspace .invitations>h2,.admin-workspace .home-location-settings>h2{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.admin-workspace .invitations form{gap:16px;display:grid}.admin-workspace .invitations form>.button{justify-self:start}.admin-workspace .invitations__list{margin-top:24px}.admin-workspace .invitations__list li{border-bottom:1px solid var(--premium-border);background:0 0;border-radius:0}.admin-workspace .settings-actions{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.admin-workspace .settings-actions>.button{width:auto}.admin-workspace .dashboard-attribution{flex-basis:100%}@media (width<=1100px){.admin-workspace .device-workspace-selector{gap:8px;font-size:.8rem;display:grid}.admin-workspace .device-settings-layout--workspace .device-registry-header,.admin-workspace .device-settings-layout--workspace .device-registry-list,.admin-workspace .device-settings-layout--workspace .device-registry-pages,.admin-workspace .device-settings-layout--workspace .device-context-panel__header,.admin-workspace .device-settings-layout--other>.device-context-panel{display:none}.admin-workspace .device-settings-layout--workspace .device-registry-detail{border-top:0;margin:0;padding:0}.admin-workspace .device-settings-layout{grid-template-columns:minmax(0,1fr);gap:24px}.admin-workspace .device-settings-layout>.device-context-registry{border-left:0;border-top:1px solid var(--premium-border);padding:24px 0 0}}@media (width<=700px){.admin-workspace{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.admin-workspace__navigation{display:none}.admin-workspace__mobile-navigation{border-bottom:1px solid var(--premium-border);padding:16px;display:block}.admin-workspace__content{padding:16px}.admin-workspace .device-context-form{grid-template-columns:minmax(0,1fr)}.admin-workspace .device-settings-mobile-switch{display:none}.admin-workspace .device-settings-layout>:is(.device-context-panel,.device-context-registry){display:block}.admin-workspace .device-registry-list button{flex-wrap:wrap}.admin-workspace .device-registry-status{margin-left:36px}.admin-workspace .invitations__list li{flex-wrap:wrap}}
