:root{color:#f4f7fc;font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#061321;--canvas-deep:#030c16;--text:#f7f8fc;--muted:#a6c4ea;--muted-quiet:#7594bd;--border:#74a6dc40;--coral:#ff8a79;--blue:#8fc1ff;--display:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;background:#061321;font-family:Avenir Next,Avenir,Segoe UI,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:20rem;min-height:100%}body{min-width:20rem;min-height:100%;margin:0}button,a{font:inherit}button{border:0}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #8fc1ffcc}.app-shell{isolation:isolate;background:radial-gradient(circle at 50% 34%, #4477b12e, transparent 29rem), radial-gradient(circle at 10% 5%, #3866971f, transparent 24rem), linear-gradient(180deg, #071727 0%, var(--canvas) 62%, var(--canvas-deep) 100%);min-height:100svh;position:relative;overflow:hidden}.app-header{z-index:10;align-items:center;min-height:5.5rem;padding-inline:clamp(1.5rem,4.5vw,4.75rem);display:grid}.app-header--floating{grid-template-columns:1fr;position:absolute;inset:0 0 auto}.app-header--app{border-bottom:1px solid var(--border);background:#05111e52;grid-template-columns:1fr auto 1fr;position:relative}.brand{color:var(--text);letter-spacing:-.02em;justify-self:start;align-items:center;gap:.9rem;font-size:clamp(1.15rem,1.8vw,1.7rem);font-weight:450;text-decoration:none;display:inline-flex}.brand__mark{filter:drop-shadow(0 0 .8rem #ff8a7947);object-fit:contain;width:clamp(2.6rem,3.8vw,3.5rem);height:auto}.sign-in{z-index:2;text-align:center;padding-inline:1.5rem;place-items:start center;min-height:100svh;padding-top:clamp(9.5rem,19vh,13rem);display:grid;position:relative}.sign-in__content{width:min(62rem,100%)}.sign-in h1{color:var(--text);font-family:var(--display);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.8rem,5.25vw,5rem);font-weight:400;line-height:1.04}.sign-in__content>p:first-of-type{color:var(--muted);margin:1.35rem auto 0;font-size:clamp(1.05rem,1.8vw,1.45rem);line-height:1.55}.google-button{color:#0c1b31;cursor:pointer;background:#fff;border:1px solid #ffffffd1;border-radius:.9rem;grid-template-columns:2rem 1fr 1.5rem;align-items:center;gap:1rem;width:min(27rem,100%);min-height:4.25rem;margin-top:2.4rem;padding:.8rem 1.25rem;font-size:1.06rem;font-weight:650;transition:transform .18s,box-shadow .18s,opacity .18s;display:inline-grid;box-shadow:0 1rem 2.8rem #2764a63d,0 0 1.4rem #8fc1ff24}.google-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 1.25rem 3.25rem #2764a652,0 0 1.8rem #8fc1ff33}.google-button:active:not(:disabled){transform:translateY(0)}.google-button:disabled{cursor:wait;opacity:.68}.google-icon{width:1.9rem;height:1.9rem}.button-arrow{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.4rem}.auth-message{color:#ffb2a7;min-height:1.5rem;margin:1rem 0 0;font-size:.94rem}.connected-home-art{pointer-events:none;-webkit-user-select:none;user-select:none}.connected-home-art--backdrop{z-index:1;object-fit:cover;object-position:center;width:100%;height:clamp(15rem,35vh,21rem);position:absolute;inset:auto 0 clamp(.5rem,3.5vh,2.5rem)}.primary-nav{align-self:stretch}.primary-nav__link{min-width:6rem;height:100%;color:var(--muted);place-items:center;font-size:1rem;text-decoration:none;display:grid;position:relative}.primary-nav__link--active:after{background:var(--coral);content:"";height:2px;position:absolute;bottom:0;left:.65rem;right:.65rem;box-shadow:0 0 .75rem #ff8a7973}.user-menu{justify-self:end;position:relative}.user-menu__trigger{color:var(--text);cursor:pointer;background:0 0;align-items:center;gap:.75rem;padding:.4rem 0;font-size:1rem;display:flex}.user-menu__trigger img,.user-menu__initial{object-fit:cover;background:#335f91;border:1px solid #8fc1ff40;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;display:grid}.user-menu__chevron{fill:none;width:1.05rem;stroke:var(--muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;transition:transform .16s}.user-menu__trigger[aria-expanded=true] .user-menu__chevron{transform:rotate(180deg)}.user-menu__popover{background:#051221f7;border:1px solid #699dd661;border-radius:.8rem;width:13rem;padding:.55rem;position:absolute;top:calc(100% + .8rem);right:0;box-shadow:0 1.4rem 3rem #00000059}.user-menu__popover button{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border-radius:.55rem;align-items:center;gap:.75rem;padding:.85rem .9rem;display:flex}.user-menu__popover button:hover{background:#689dd61f}.user-menu__popover svg{fill:none;width:1.25rem;stroke:var(--muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px}.app-shell--signed-in{overflow:hidden auto}.app-header--app{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0}.home{z-index:2;min-height:calc(100svh - 5.5rem);padding:clamp(3.25rem,6vw,5.5rem) clamp(1.5rem,4.5vw,4.75rem) 4rem;position:relative}.home__content{width:min(91rem,100%);margin-inline:auto}.home h1,.household-create h1{color:var(--text);font-family:var(--display);letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(3.25rem,5.2vw,5rem);font-weight:400;line-height:1.04}.home__message{color:#ffb2a7;margin:1.25rem 0 0;font-size:.94rem}.home__message--centered{text-align:center}.home-loading{color:var(--muted);align-items:center;gap:.8rem;margin-top:2rem;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:.8rem;justify-content:center;align-items:center;min-height:3.65rem;padding:.75rem 1.45rem;font-size:1rem;font-weight:650;line-height:1.2;transition:border-color .17s,box-shadow .17s,opacity .17s,transform .17s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.58}.button--primary{color:#142033;background:var(--coral);box-shadow:0 0 1.2rem #ff8a7952,0 .9rem 2.5rem #ff705e24}.button--primary:hover:not(:disabled){box-shadow:0 0 1.5rem #ff8a796b,0 1rem 2.7rem #ff705e2e}.button--secondary{color:var(--text);background:#0718299e;border-color:#6fb4f5b3}.button--secondary:hover:not(:disabled){border-color:var(--blue);box-shadow:0 0 1.2rem #499ef424}.button--compact{gap:.65rem;min-width:9rem;min-height:3.2rem;padding-inline:1.25rem}.button--compact svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:1.25rem}.button--small{min-height:2.5rem;padding:.5rem .8rem;font-size:.88rem}.button--quiet{color:#cce4ff;background:0 0;border-color:#6fb4f561}.button--danger{color:#ffd1ca;background:#96362b33;border-color:#ff8a799e}.invitation-list{gap:.8rem;margin-top:2rem;display:grid}.invitation{background:#071b30a6;border:1px solid #5da4e36b;border-radius:1rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.35rem;padding:1.35rem 1.55rem;display:grid;box-shadow:inset 0 0 2.8rem #3b84cc0a}.invitation__icon{color:#ff9d8f;background:#ff6f5e1a;border:1px solid #ff8a7985;border-radius:50%;place-items:center;width:3.5rem;height:3.5rem;display:grid;box-shadow:0 0 1.25rem #ff6f5e29}.invitation__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:1.55rem}.invitation__copy h2,.household-rail h2,.household-detail h2,.first-household h2,.unavailable-state h2{color:var(--text);font-family:var(--display);margin:0;font-weight:400}.invitation__copy h2{font-size:1.65rem}.invitation__copy p{color:var(--muted);margin:.25rem 0 0;line-height:1.45}.invitation__actions{gap:.8rem;display:flex}.household-workspace{grid-template-columns:minmax(16rem,25rem) minmax(0,1fr);gap:clamp(2rem,4vw,4.5rem);min-height:32rem;margin-top:3rem;display:grid}.household-rail{border-right:1px solid var(--border);padding-right:clamp(1.75rem,3.5vw,3.5rem)}.household-rail h2{font-size:2rem}.household-list{gap:.75rem;margin-top:1.25rem;display:grid}.household-option{width:100%;color:var(--text);cursor:pointer;text-align:left;background:#071a2e75;border:1px solid #6fb4f53d;border-radius:.85rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.95rem;padding:1rem 1.05rem;transition:border-color .17s,background .17s,box-shadow .17s;display:grid}.household-option:hover,.household-option--selected{background:#143b608a;border-color:#47abffdb}.household-option--selected{box-shadow:inset 0 0 2rem #3e96e814,0 0 1rem #3e96e814}.household-option__icon{color:#d8eaff}.household-option__icon svg,.add-household svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;width:1.7rem}.household-option__copy{min-width:0;color:var(--muted);gap:.3rem;font-size:.94rem;display:grid}.household-option__heading{align-items:center;gap:.65rem;min-width:0;display:flex}.household-option__heading strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;font-weight:650;overflow:hidden}.household-option__heading small,.household-detail__role{color:#cce4ff;background:#3f84cb4d;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:650}.household-option__chevron{fill:none;width:1.15rem;stroke:var(--blue);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}.add-household{color:#cce4ff;cursor:pointer;text-align:left;background:0 0;border:1px dashed #6fb4f5b8;border-radius:.85rem;align-items:center;gap:.8rem;width:100%;margin-top:.85rem;padding:1rem 1.05rem;font-size:1rem;font-weight:600;display:flex}.add-household:hover{border-color:var(--blue);background:#1f548724}.household-detail{min-width:0;padding-top:.1rem}.household-detail__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.household-detail h2{font-size:clamp(2rem,3vw,2.8rem)}.household-detail__header p{color:var(--muted);margin:.3rem 0 0;font-size:1.1rem}.household-detail__role{margin-top:.35rem}.household-gateways{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:2rem;padding:1.5rem 0}.household-gateways__header,.household-gateways__actions{align-items:center;gap:1rem;display:flex}.household-gateways__header{justify-content:space-between}.household-gateways__actions .button{white-space:nowrap}.household-gateways__header h3{color:var(--text);font-family:var(--display);margin:0;font-size:1.7rem;font-weight:400}.household-gateways__header p{color:var(--muted);margin:.25rem 0 0;line-height:1.45}.household-gateways__policy-note{color:var(--muted-quiet);margin:.85rem 0 0;font-size:.9rem;line-height:1.45}.gateway-claim-form{background:#0a233c85;border:1px solid #539cdd57;border-radius:.85rem;grid-template-columns:minmax(14rem,1fr) auto;align-items:end;gap:1rem;margin-top:1.5rem;padding:1.25rem;display:grid}.gateway-claim-form__submit{white-space:nowrap;min-height:3.9rem}.household-gateways__feedback:empty{display:none}.sensor-activity,.household-activity{border:1px solid var(--border);background:#0a233c57;border-radius:1rem;gap:1rem;margin-top:2rem;padding:1.25rem;display:grid}.sensor-activity__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.sensor-activity__header h3{margin:0}.sensor-activity__header p{color:var(--muted);margin:.25rem 0 0}.activity-window-picker{background:#05182a9e;border:1px solid #74a6dc3d;border-radius:.65rem;flex:none;grid-template-columns:repeat(5,auto);padding:.2rem;display:inline-grid}.activity-window-picker button{min-width:2.75rem;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.48rem;padding:.45rem .6rem;font-size:.82rem;font-weight:650}.activity-window-picker button:hover,.activity-window-picker button:focus-visible{color:var(--text)}.activity-window-picker button:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.activity-window-picker .activity-window-picker__active{color:#eaf6ff;background:#378ed857;box-shadow:inset 0 0 0 1px #6fb4f53d}.sensor-activity__loading{min-height:4rem;color:var(--muted);align-items:center;gap:.65rem;font-size:.9rem;display:flex}.sensor-activity__empty{color:var(--muted);margin:0;padding:1rem 0}.sensor-activity__group{gap:.9rem;padding-top:.4rem;display:grid}.sensor-activity__group+.sensor-activity__group{border-top:1px solid #74a6dc29;margin-top:.35rem;padding-top:1.25rem}.sensor-activity__group-heading h4,.sensor-activity__group-heading p{margin:0}.sensor-activity__group-heading h4{color:var(--text);font-size:1rem}.sensor-activity__group-heading p{color:var(--muted);margin-top:.2rem;font-size:.86rem}.state-timeline{gap:.9rem;min-width:0;display:grid}.state-timeline__axis,.state-timeline__row{grid-template-columns:minmax(8rem,11rem) minmax(0,1fr);gap:1rem;display:grid}.state-timeline__axis>div{color:var(--muted-quiet);justify-content:space-between;font-size:.72rem;display:flex}.state-timeline__row{align-items:center}.state-timeline__sensor{gap:.15rem;min-width:0;display:grid}.state-timeline__sensor strong,.state-timeline__sensor span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.state-timeline__sensor strong{font-size:.9rem}.state-timeline__sensor span{color:var(--muted);font-size:.76rem}.state-timeline__sensor .state-timeline__current-state{color:#7eddb5}.state-timeline__track{background:linear-gradient(90deg,#0000 24.8%,#74a6dc1f 25%,#0000 25.2% 49.8%,#74a6dc1f 50%,#0000 50.2% 74.8%,#74a6dc1f 75%,#0000 75.2%),#041423b8;border:1px solid #74a6dc29;border-radius:999px;height:1.25rem;position:relative;overflow:hidden}.state-timeline__interval{top:.16rem;bottom:.16rem;left:var(--interval-left);width:max(var(--interval-width), 2px);background:linear-gradient(90deg,#3ea7ef,#75d4ff);border-radius:999px;position:absolute;box-shadow:0 0 .75rem #50b5f647}.state-timeline__interval--contact{background:linear-gradient(90deg,#4fc29a,#85e5bd);box-shadow:0 0 .75rem #4fc29a40}.climate-charts{gap:1rem;display:grid}.climate-chart-card{background:#04142373;border:1px solid #74a6dc29;border-radius:.8rem;gap:1rem;min-width:0;padding:1rem;display:grid}.climate-chart-card>header{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.climate-chart-card>header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.climate-chart-card>header span{color:var(--muted);flex:none;font-size:.78rem}.measurement-chart{min-width:0}.measurement-chart+.measurement-chart{border-top:1px solid #74a6dc1f;padding-top:.85rem}.measurement-chart__heading{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.25rem;display:flex}.measurement-chart__heading strong{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:650}.measurement-chart__heading span{color:var(--text);font-variant-numeric:tabular-nums;font-weight:650}.measurement-chart__plot{width:100%;height:auto;min-height:9rem;display:block;overflow:visible}.measurement-chart__grid{stroke:#74a6dc24;stroke-width:1px;vector-effect:non-scaling-stroke}.measurement-chart__line{fill:none;stroke:#f1a65b;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;vector-effect:non-scaling-stroke}.measurement-chart__point{fill:#f1a65b;stroke:#041423e6;stroke-width:1.5px;vector-effect:non-scaling-stroke}.measurement-chart--humidity .measurement-chart__line{stroke:#58d4cc}.measurement-chart--humidity .measurement-chart__point{fill:#58d4cc}.measurement-chart__x-label,.measurement-chart__y-label{fill:var(--muted-quiet);font-family:var(--body);font-size:10px}.measurement-chart__y-label{text-anchor:end}.household-activity__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.household-activity__header h3{margin:0}.household-activity__header p{color:var(--muted);margin:.25rem 0 0}.activity-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.activity-list li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.activity-list__icon,.activity-list__empty>svg{width:2rem;height:2rem;color:var(--blue)}.activity-list__icon svg,.activity-list__empty>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:100%;height:100%}.activity-list__copy,.activity-list__empty{gap:.15rem;display:grid}.activity-list__copy span,.activity-list time,.activity-list__empty span{color:var(--muted);font-size:.875rem}.household-gateways__feedback .form-message,.household-gateways__feedback .status-message{margin:1rem 0 0}.gateway-list{gap:0;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.gateway-list li{border-top:1px solid #74a6dc29;grid-template-columns:auto minmax(9rem,1fr) minmax(11rem,1fr) auto;align-items:center;gap:1rem;min-height:5rem;padding-block:.9rem;display:grid}.gateway-list__icon,.gateway-list__empty>svg{color:#cce4ff;background:#23578b33;border:1px solid #6fb4f559;border-radius:.75rem;place-items:center;width:2.75rem;height:2.75rem;display:grid}.gateway-list__icon svg,.household-gateways__actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:1.35rem}.gateway-list__identity,.gateway-list__state{gap:.25rem;min-width:0;display:grid}.gateway-list__identity strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gateway-list__identity span,.gateway-list__state small,.gateway-list__empty span{color:var(--muted);font-size:.88rem}.gateway-state,.activation-state{border-radius:999px;width:fit-content;padding:.25rem .6rem;font-size:.78rem;font-weight:650}.gateway-state:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem;margin-right:.4rem;display:inline-block}.gateway-state--connected{color:#9ce4c2;background:#2d97652e}.gateway-state--disconnected{color:#ffb2a7;background:#b546382e}.gateway-state--unknown{color:#bdd0e7;background:#66819f33}.activation-state{color:#cce4ff;text-align:center;background:#3f84cb3d}.activation-state--claim_pending{color:#ffcf9b;background:#b4702c33}.activation-state--revoked,.activation-state--provisioning_failed{color:#ffb2a7;background:#b546382e}.gateway-list__empty{color:var(--muted);text-align:center;justify-items:center;gap:.45rem;margin:1.25rem 0 0;padding:1.5rem;display:grid}.gateway-list__empty strong{color:var(--text);font-weight:650}.household-access{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:2rem;padding:1.5rem 0}.household-access__header{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.household-access__header h3{color:var(--text);font-family:var(--display);margin:0;font-size:1.7rem;font-weight:400}.household-access__header p{color:var(--muted);margin:.25rem 0 0;line-height:1.45}.invitation-form{background:#0a233c85;border:1px solid #539cdd57;border-radius:.85rem;grid-template-columns:minmax(14rem,1fr) auto;align-items:end;gap:1rem;margin-top:1.5rem;padding:1.25rem;display:grid}.invitation-form__submit{white-space:nowrap;min-height:3.9rem}.invitation-form__hint{color:var(--muted-quiet);grid-column:1/-1;margin:-.25rem 0 0;font-size:.88rem;line-height:1.45}.household-access__feedback:empty{display:none}.household-access__feedback .form-message,.household-access__feedback .status-message{margin:1rem 0 0}.status-message{color:#a9d5ff;font-size:.92rem}.managed-invitations{margin-top:1.4rem}.managed-invitations h4{color:var(--text);margin:0;font-size:.95rem;font-weight:650}.managed-invitations ul{gap:0;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.managed-invitations li{border-top:1px solid #74a6dc29;justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;padding-block:.8rem;display:flex}.managed-invitation__copy{gap:.25rem;min-width:0;display:grid}.managed-invitation__copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;overflow:hidden}.managed-invitation__copy span,.managed-invitations__empty{color:var(--muted);font-size:.9rem}.managed-invitations__empty{margin:.75rem 0 0}.managed-invitation__actions{flex:none;gap:.6rem;display:flex}.household-detail__empty{text-align:center;justify-items:center;margin-top:clamp(3rem,6vw,5rem);display:grid}.connected-home-art--empty-state{object-fit:contain;width:min(62rem,100%);height:auto;display:block}.household-detail__empty h3{color:var(--text);font-family:var(--display);margin:-.3rem 0 0;font-size:clamp(1.7rem,2.4vw,2.35rem);font-weight:400}.household-detail__empty p,.first-household p,.unavailable-state p{color:var(--muted);margin:.65rem 0 0;font-size:1.05rem;line-height:1.55}.first-household,.unavailable-state{text-align:center;justify-items:center;max-width:56rem;margin:3rem auto 0;display:grid}.first-household .connected-home-art--empty-state{width:min(48rem,100%)}.first-household h2,.unavailable-state h2{font-size:clamp(2rem,3vw,2.8rem)}.first-household .button{margin-top:1.5rem}.household-create{text-align:center;width:min(52rem,100%);margin-inline:auto}.household-create__header p{color:var(--muted);margin:1rem 0 0;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.5}.household-form{text-align:left;background:#07192ca8;border:1px solid #539cdd6b;border-radius:1rem;gap:1.45rem;margin-top:2rem;padding:clamp(1.5rem,4vw,3rem);display:grid;box-shadow:inset 0 0 3rem #2d76b90a}.field{gap:.55rem;display:grid}.field label{color:var(--text);font-size:1.02rem;font-weight:650}.field label span{color:var(--muted);font-weight:450}.field input,.field textarea{width:100%;min-height:3.9rem;color:var(--text);font:inherit;resize:vertical;background:#0c284494;border:1px solid #6fb4f5b3;border-radius:.7rem;outline:0;padding:.85rem 1rem;font-size:1.05rem;transition:border-color .17s,box-shadow .17s;box-shadow:inset 0 0 1.6rem #3279bc0d}.field input::placeholder,.field textarea::placeholder{color:#7495bd}.field input:focus,.field textarea:focus{border-color:#5cb9ff;box-shadow:0 0 0 3px #5cb9ff21,0 0 1.3rem #439ce51f}.field p{color:var(--muted-quiet);margin:0;font-size:.9rem}.form-message{color:#ffb2a7;min-height:1.35rem;margin:-.35rem 0 0;font-size:.92rem}.household-form__actions{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.household-create>.connected-home-art--empty-state{width:min(34rem,80%);margin:1.5rem auto -1rem}.app-shell--loading{display:grid}.loading-state{color:var(--muted);justify-content:center;align-items:center;gap:.9rem;display:flex}.loading-state__ring{border:2px solid #8fc1ff40;border-top-color:var(--blue);border-radius:50%;width:1.3rem;height:1.3rem;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.household-workspace{grid-template-columns:1fr;gap:2.5rem;margin-top:2.5rem}.household-rail{border-right:0;border-bottom:1px solid var(--border);padding-bottom:2.5rem;padding-right:0}.household-gateways__header,.household-gateways__actions{flex-direction:column;align-items:stretch}.gateway-claim-form{grid-template-columns:1fr}.gateway-list li{grid-template-columns:auto minmax(0,1fr)}.gateway-list__state,.activation-state{grid-column:2}}@media (width<=720px){.app-header{min-height:4.75rem}.app-header--app{grid-template-columns:1fr auto}.primary-nav{display:none}.brand{gap:.7rem}.brand__mark{width:2.45rem}.sign-in{padding-top:9rem}.sign-in h1{font-size:clamp(2.65rem,13vw,4.25rem)}.sign-in__content>p:first-of-type{max-width:22rem}.connected-home-art--backdrop{width:168%;left:-34%;right:-34%}.user-menu__name{display:none}.home{min-height:calc(100svh - 4.75rem);padding:2.75rem 1.25rem 3rem}.home h1,.household-create h1{font-size:clamp(2.8rem,13vw,4rem)}.invitation{grid-template-columns:auto minmax(0,1fr);gap:1rem;padding:1.2rem}.invitation__actions{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.button--compact{min-width:0}.household-detail__empty{margin-top:2rem}.household-access__header{flex-direction:column;align-items:stretch}.household-access__header .button{width:100%}.invitation-form{grid-template-columns:1fr}.invitation-form__hint{grid-column:auto}.managed-invitations li{flex-direction:column;align-items:stretch}.managed-invitation__actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.managed-invitation__actions .button:only-child{grid-column:2}.sensor-activity__header{flex-direction:column;align-items:stretch}.activity-window-picker{grid-template-columns:repeat(5,minmax(0,1fr))}.state-timeline__axis,.state-timeline__row{grid-template-columns:1fr;gap:.4rem}.state-timeline__axis>span{display:none}.household-form{padding:1.35rem}.household-form__actions{grid-template-columns:1fr}.household-form__actions .button--primary{grid-row:1}}@media (height<=700px) and (width>=721px){.sign-in{padding-top:7.5rem}.sign-in h1{font-size:3.6rem}.connected-home-art--backdrop{bottom:0}.home{padding-top:2.75rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
