:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#15201c;background:#f5f7f6;font-synthesis:none;text-rendering:optimizeLegibility;--forest-950: #052b20;--forest-900: #073b2a;--forest-800: #164f3b;--green-700: #24743b;--green-100: #e9f5ec;--ink: #15201c;--muted: #5f6c66;--line: #d7ded9;--surface: #ffffff;--app-bg: #f5f7f6;--alarm: #b42318;--alarm-bg: #fff0ee;--warning: #a96300;--warning-bg: #fff8e7;--shadow: 0 8px 28px rgba(10, 45, 33, .06)}*{box-sizing:border-box}html{min-width:320px;background:var(--app-bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--app-bg)}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(36,116,59,.24);outline-offset:2px}svg{flex:0 0 auto}h1,h2,h3,p{margin-top:0}.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 16px;border-radius:7px;border:1px solid var(--forest-900);font-size:14px;font-weight:700;background:#fff;transition:background .15s ease,border-color .15s ease,transform .15s ease}.button svg{width:18px;height:18px;stroke-width:2}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.62}.button--primary{background:var(--forest-900);color:#fff}.button--primary:hover:not(:disabled){background:var(--forest-800)}.button--secondary:hover:not(:disabled){background:#eff5f1}.text-button{border:0;background:transparent;color:var(--forest-800);font-weight:700;padding:5px 0}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;display:flex;flex-direction:column;color:#fff;background:linear-gradient(180deg,var(--forest-950),var(--forest-900) 48%,#052f23);z-index:20}.brand{height:100px;padding:0 24px;display:flex;align-items:center;gap:13px;font-size:26px;font-weight:800;letter-spacing:-.6px}.brand__mark{display:inline-flex;align-items:center;position:relative;width:40px;height:40px}.brand__mark svg:first-child{width:31px;height:31px}.brand__mark svg:last-child{position:absolute;right:-1px;bottom:1px;width:20px;height:20px;fill:var(--forest-950)}.brand--compact{height:auto;padding:0;font-size:21px}.brand--compact .brand__mark{width:30px;height:30px}.brand--compact .brand__mark svg:first-child{width:24px;height:24px}.brand--compact .brand__mark svg:last-child{width:16px;height:16px}.sidebar__nav{display:grid;gap:6px;padding:10px 0}.nav-item{min-height:56px;padding:0 26px;border:0;border-left:6px solid transparent;background:transparent;color:#ffffffdb;display:flex;align-items:center;gap:17px;font-weight:650;font-size:16px;text-align:left;transition:background .15s ease,color .15s ease,border-color .15s ease}.nav-item svg{width:22px;height:22px;stroke-width:1.9}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.is-active{border-left-color:#86d394;background:#ffffff21;color:#fff}.sidebar__logout{margin:auto 18px 22px;min-height:46px;border:1px solid rgba(255,255,255,.2);border-radius:7px;color:#ffffffd1;background:#ffffff08;display:flex;align-items:center;justify-content:center;gap:10px}.sidebar__logout svg{width:18px}.sidebar__logout:hover{background:#ffffff17;color:#fff}.app-main{grid-column:2;min-width:0}.topbar{min-height:96px;padding:22px 38px;background:#fff;border-bottom:1px solid #e8ece9;display:flex;align-items:center;gap:24px;position:sticky;top:0;z-index:12}.topbar h1{margin:0;font-size:clamp(24px,2vw,31px);letter-spacing:-.7px;line-height:1.12}.topbar__updated{margin:7px 0 0;color:var(--muted);font-size:12px}.topbar__refresh{margin-left:auto}.topbar__mobile-brand{display:none}.content{padding:26px 32px 48px;max-width:1500px;margin:0 auto}.bottom-nav{display:none}.status-band{min-height:84px;display:flex;align-items:center;gap:22px;padding:18px 27px;border:1px solid #9ccca7;border-radius:7px;color:#1f6a35;background:linear-gradient(90deg,#f0f9f2,#fbfdfb)}.status-band svg{width:42px;height:42px;stroke-width:2}.status-band strong{font-size:clamp(20px,2vw,27px)}.status-band--alarm{color:var(--alarm);border-color:#eab0aa;background:var(--alarm-bg)}.status-band--warning,.status-band--waiting{color:var(--warning);border-color:#ead7a8;background:var(--warning-bg)}.status-band--paused{color:#526159;border-color:#cbd3ce;background:#f1f4f2}.device-list{margin-top:14px;display:grid;gap:10px}.device-row{min-height:118px;display:grid;grid-template-columns:minmax(210px,1.2fr) minmax(130px,.75fr) minmax(120px,.58fr) minmax(235px,1fr) minmax(250px,1.35fr);align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden;box-shadow:0 1px 2px #0a2d2105}.device-row>*{padding:17px 20px;min-width:0;display:flex;align-items:center}.device-row>*+*{border-left:1px solid #e3e8e5}.device-row__identity{gap:16px}.device-row__identity h2{margin:0;font-size:17px;line-height:1.25}.device-row__icon{width:42px;height:58px;color:var(--forest-900);display:grid;place-items:center}.device-row__icon svg{width:39px;height:53px;stroke-width:1.5}.device-row__temperature{font-size:clamp(36px,3.4vw,50px);font-weight:760;letter-spacing:-2px;color:#1753a5;white-space:nowrap}.device-row:first-child .device-row__temperature{color:var(--green-700)}.status-text{gap:8px;flex-direction:column;justify-content:center;font-weight:800;color:var(--green-700)}.status-text svg{width:25px;height:25px}.status-text--alarm,.status-text--offline,.status-text--sensor{color:var(--alarm)}.status-text--warning,.status-text--waiting{color:var(--warning)}.status-text--paused{color:#68756e}.device-row--paused{background:#f7f8f7}.device-row__meta{margin:0;gap:20px;justify-content:space-around}.device-row__meta div{min-width:0}.device-row__meta dt{font-size:11px;color:var(--muted);margin-bottom:7px}.device-row__meta dd{margin:0;font-size:13px;font-weight:700;line-height:1.4}.device-row__chart{flex-direction:column;align-items:stretch;justify-content:center;gap:5px}.device-row__chart>span{font-size:11px;color:var(--muted)}.sparkline{width:100%;height:66px;overflow:visible}.sparkline__grid{stroke:#9da7a1;stroke-width:.8;stroke-dasharray:5 4;opacity:.72}.sparkline__grid--soft{opacity:.28}.sparkline text{font-size:12px;fill:var(--muted)}.sparkline--large{height:340px;width:100%;margin:16px 0 10px}.overview-bottom{margin-top:14px;display:grid;grid-template-columns:1.25fr 1fr;gap:14px}.section-panel{background:#fff;border:1px solid var(--line);border-radius:7px;padding:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:13px}.section-heading h2{font-size:17px;margin:0}.event-list{list-style:none;margin:0;padding:0}.event-list li{min-height:42px;display:grid;grid-template-columns:24px 125px minmax(120px,.8fr) minmax(190px,1.5fr);align-items:center;gap:10px;border-top:1px solid #edf0ee;font-size:12px}.event-list li:first-child{border-top:0}.event-list__icon{color:var(--green-700);display:flex}.event-list__icon svg{width:16px;height:16px}.event-list li.is-alarm,.event-list li.is-alarm .event-list__icon{color:var(--alarm)}.event-list strong{font-weight:650}.connection-row{min-height:72px;border:1px solid #e1e6e3;border-radius:6px;padding:11px 13px;display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;margin-top:9px}.connection-row__icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--green-700);background:var(--green-100)}.connection-row__icon svg{width:20px}.connection-row div{display:grid;gap:3px}.connection-row strong{font-size:14px}.connection-row span:not(.connection-row__icon):not(.connection-state){font-size:11px;color:var(--muted)}.connection-state{border-radius:100px;padding:6px 10px;font-size:11px;font-weight:800}.connection-state.is-ok{color:#1f6a35;background:var(--green-100)}.connection-state.is-warning{color:var(--warning);background:var(--warning-bg)}.connection-state.is-alarm{color:var(--alarm);background:var(--alarm-bg)}.connection-action{width:100%;min-height:46px;margin-top:9px;border:1px solid #e1e6e3;border-radius:6px;background:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;gap:9px}.connection-action svg{width:18px}.connection-action:hover{background:#f4f7f5}.page-controls{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:15px}.page-controls label,.alarms-heading label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}select,input,textarea{color:var(--ink);background:#fff;border:1px solid #bfc9c3;border-radius:6px}select,input{min-height:44px;padding:0 12px}.page-controls select{min-width:230px}.chart-panel{background:#fff;border:1px solid var(--line);border-radius:7px;padding:24px 27px}.chart-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.chart-panel__heading h2{margin:0 0 5px;font-size:23px}.chart-panel__heading p{margin:0;color:var(--muted);font-size:13px}.chart-panel__heading>strong{color:var(--green-700);font-size:40px;letter-spacing:-1.5px}.chart-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.chart-stats>div{min-height:78px;display:grid;grid-template-columns:30px 1fr;grid-template-rows:1fr 1fr;column-gap:8px;align-items:end;padding:14px 20px}.chart-stats>div+div{border-left:1px solid var(--line)}.chart-stats svg{grid-row:1 / 3;width:22px;color:var(--green-700)}.chart-stats span{color:var(--muted);font-size:11px}.chart-stats strong{align-self:start;font-size:17px}.active-alarm-summary{min-height:95px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--green-700);border-radius:7px;display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:15px}.active-alarm-summary>svg{color:var(--green-700);width:32px;height:32px}.active-alarm-summary div{display:grid;gap:5px}.active-alarm-summary div strong{font-size:18px}.active-alarm-summary div span{color:var(--muted);font-size:13px}.active-alarm-summary.has-alarm{border-left-color:var(--alarm);background:var(--alarm-bg)}.active-alarm-summary.has-alarm>svg{color:var(--alarm)}.inline-message{padding:12px 14px;border-radius:6px;background:#eef4f0;color:var(--forest-800);font-weight:650;font-size:13px;display:flex;align-items:center;gap:8px;margin:14px 0}.inline-message svg{width:18px}.inline-message.is-success{background:var(--green-100);color:var(--green-700)}.alarms-heading{margin-top:22px;align-items:end}.alarms-heading select{min-width:190px}.alarm-table{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:#fff}.alarm-table li{min-height:70px;padding:12px 18px;display:grid;grid-template-columns:40px minmax(220px,1fr) 110px 150px;align-items:center;gap:12px;border-top:1px solid #e7ebe8}.alarm-table li:first-child{border-top:0}.alarm-table__state{color:var(--green-700);display:flex}.alarm-table__state.is-active{color:var(--alarm)}.alarm-table__state svg{width:22px}.alarm-table li>div{display:grid;gap:4px}.alarm-table li>div span{font-size:12px;color:var(--muted)}.alarm-table li>time{color:var(--muted);font-size:12px;text-align:right}.settings-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}.settings-intro h2{margin:0 0 6px;font-size:21px}.settings-intro p{color:var(--muted);margin:0;font-size:13px}.settings-devices{display:grid;gap:12px}.settings-device{border:1px solid var(--line);border-radius:7px;background:#fff;padding:19px 21px}.settings-device.is-paused{border-color:#b9c3bd;background:#f7f8f7}.settings-device__heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.settings-device__heading h3{margin:0 0 3px;font-size:17px}.settings-device__heading span{color:var(--muted);font-size:11px}.settings-device__actions{display:flex;align-items:center;gap:9px}.monitoring-toggle{min-height:42px;padding:0 13px;border:1px solid #9fc7a8;border-radius:6px;background:var(--green-100);color:var(--green-700);display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:800}.monitoring-toggle input{position:absolute;opacity:0;pointer-events:none}.monitoring-toggle svg{width:18px}.monitoring-toggle span{color:inherit;font-size:12px}.monitoring-toggle.is-paused{border-color:#bbc5bf;background:#ecefed;color:#4f5e56}.monitoring-toggle:focus-within{outline:3px solid rgba(36,116,59,.2);outline-offset:2px}.monitoring-note{margin:12px 0 0;padding:10px 12px;border-radius:6px;background:#ecefed;color:#4f5e56;font-size:12px;line-height:1.5}.settings-details-toggle{min-height:40px;margin-top:12px;padding:0 12px;border:1px solid var(--line);border-radius:6px;background:#f8faf9;color:var(--forest-800);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:750}.settings-details-toggle svg{width:17px;transition:transform .18s ease}.settings-details-toggle svg.is-open{transform:rotate(180deg)}.icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:6px;background:#fff}.icon-button:hover{background:#f3f6f4}.icon-button svg{width:18px}.settings-grid{display:grid;grid-template-columns:repeat(4,minmax(135px,1fr));gap:12px;margin-top:15px}.settings-grid label{position:relative;display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:700}.settings-grid label span{position:absolute;right:11px;bottom:13px;color:var(--muted);font-weight:600}.settings-grid input{padding-right:44px}.endpoint-row{margin-top:14px;min-height:48px;display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:8px;background:#f6f8f7;border:1px solid #e2e7e4;border-radius:6px;padding:6px 8px 6px 12px}.endpoint-row>svg{width:17px;color:var(--forest-800)}.endpoint-row code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#35413b}.endpoint-row button{min-height:34px;border:1px solid var(--line);background:#fff;border-radius:5px;display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700}.endpoint-row button svg{width:14px}.script-box{margin-top:12px;padding:14px;background:#f7f9f8;border:1px solid var(--line);border-radius:6px}.script-box>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.script-box textarea{width:100%;resize:vertical;padding:12px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.notification-settings{margin-top:15px;padding:18px 20px;display:grid;grid-template-columns:45px 1fr auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:7px;background:#fff}.notification-settings__icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--green-100);color:var(--green-700)}.notification-settings__icon svg{width:20px}.notification-settings h2{margin:0 0 5px;font-size:17px}.notification-settings p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.notification-settings .install-manual{margin-top:10px;padding:10px 12px;border-radius:6px;background:#f2f5f3;color:#435249;display:flex;align-items:flex-start;gap:8px}.notification-settings .install-manual svg{width:18px;min-width:18px;color:var(--green-700)}.notification-settings .install-manual--warning{background:var(--warning-bg);color:#714400}.notification-settings .install-manual--warning svg{color:var(--warning)}.notification-settings .inline-message,.notification-settings .form-error{margin-top:10px}.notification-settings__actions{display:grid;gap:9px;justify-items:end;min-width:190px}.notification-settings__actions .button{width:100%;justify-content:center}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,620px) 1fr;background:#fff}.auth-panel{padding:clamp(32px,6vw,78px);display:flex;flex-direction:column;justify-content:center;max-width:620px;width:100%;margin:0 auto}.auth-panel .brand{height:auto;padding:0;margin-bottom:54px;color:var(--forest-900)}.auth-panel__intro{display:flex;gap:16px;align-items:flex-start}.auth-panel__intro>svg{width:38px;height:38px;color:var(--green-700);margin-top:3px}.auth-panel__intro h1{margin:0 0 8px;font-size:30px;letter-spacing:-.7px}.auth-panel__intro p{color:var(--muted);line-height:1.55}.auth-form{display:grid;gap:16px;margin-top:24px}.auth-form label{display:grid;gap:7px;font-size:12px;font-weight:750}.auth-form input{width:100%;min-height:48px}.auth-form .button{margin-top:5px;min-height:48px}.auth-panel__note{margin:16px 0 0;color:var(--muted);font-size:11px;text-align:center}.auth-aside{min-height:100vh;padding:70px;color:#fff;background:linear-gradient(145deg,var(--forest-950),#0b4a34 65%,var(--forest-900));display:flex;align-items:flex-end}.auth-aside div{max-width:520px}.auth-aside h2{font-size:clamp(32px,4vw,54px);line-height:1.05;letter-spacing:-2px;margin-bottom:20px}.auth-aside p{max-width:500px;font-size:17px;line-height:1.6;color:#ffffffc7}.invite-success{display:grid;gap:18px}.invite-success>svg{width:48px;height:48px;color:var(--green-700)}.invite-success h1{margin:0 0 8px;font-size:30px;letter-spacing:-.7px}.invite-success p{margin:0;color:var(--muted);line-height:1.55}.install-hint{display:grid;grid-template-columns:40px 1fr;gap:13px;align-items:start;padding:15px;border:1px solid var(--line);border-radius:7px;background:#f7faf8}.install-hint>svg{width:32px;height:32px;color:var(--green-700)}.people-settings{margin-top:15px;padding:20px;border:1px solid var(--line);border-radius:7px;background:#fff}.people-settings__heading{display:grid;grid-template-columns:45px 1fr;gap:14px;align-items:center}.people-settings__heading>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:var(--green-700);background:var(--green-100)}.people-settings__heading svg{width:20px}.people-settings__heading h2{margin:0 0 5px;font-size:17px}.people-settings__heading p{margin:0;color:var(--muted);font-size:12px}.user-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.user-chips>span{display:grid;gap:2px;padding:8px 11px;border:1px solid #dbe4de;border-radius:7px;background:#f7faf8}.user-chips strong{font-size:13px}.user-chips small{color:var(--muted);font-size:10px}.invite-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.invite-form label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:750}.invite-form .button{min-height:44px}.people-settings>.inline-message,.people-settings>.form-error{margin:12px 0 0}.invite-result{margin-top:13px;padding:13px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid #abd3b4;border-radius:7px;background:#f1f9f3}.invite-result>svg{width:22px;color:var(--green-700)}.invite-result>div{display:grid;gap:6px;min-width:0}.invite-result strong{font-size:12px}.invite-result input{min-width:0;width:100%;font:11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.form-error,.global-error{color:var(--alarm);background:var(--alarm-bg);border:1px solid #efc1bc;border-radius:6px;padding:11px 13px;font-size:13px}.global-error{margin-bottom:14px;display:flex;align-items:center;gap:10px}.global-error svg{width:18px}.global-error button{margin-left:auto;color:var(--alarm);border:0;background:transparent;font-weight:800}.loading-state,.empty-state{padding:30px;text-align:center;color:var(--muted);background:#fff;border:1px dashed #cbd4cf;border-radius:7px}.boot-screen{min-height:100vh;display:grid;place-content:center;gap:12px;text-align:center;color:var(--forest-900)}.boot-screen__mark{width:58px;height:58px;margin:auto;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--forest-900);font-weight:850}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1180px){.device-row{grid-template-columns:minmax(190px,1fr) minmax(120px,.6fr) minmax(100px,.45fr) minmax(190px,.9fr)}.device-row__chart{grid-column:1 / -1;border-left:0!important;border-top:1px solid #e3e8e5;padding-top:8px;padding-bottom:8px}.device-row__chart .sparkline{height:54px}.settings-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.app-shell{display:block;padding-bottom:calc(75px + env(safe-area-inset-bottom))}.sidebar{display:none}.app-main{min-width:0}.topbar{min-height:72px;padding:11px 18px;gap:12px}.topbar{color:#fff;background:var(--forest-950);border-bottom-color:var(--forest-950)}.topbar__refresh{color:#fff;border-color:#ffffffb8;background:transparent}.topbar__refresh:hover:not(:disabled){background:#ffffff14}.topbar__mobile-brand{display:block}.topbar h1{font-size:20px}.topbar__updated{display:none}.topbar__refresh{width:44px;min-width:44px;padding:0}.topbar__refresh span{display:none}.content{padding:16px 16px 28px}.bottom-nav{position:fixed;inset:auto 0 0;z-index:30;height:calc(68px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);color:#fffc;background:var(--forest-950);box-shadow:0 -8px 28px #052b202e}.bottom-nav .nav-item{min-height:68px;padding:7px 2px 6px;border:0;border-top:3px solid transparent;flex-direction:column;justify-content:center;gap:3px;font-size:10px}.bottom-nav .nav-item.is-active{border-top-color:#82d38f;background:#ffffff12}.bottom-nav .nav-item svg{width:22px;height:22px}.status-band{min-height:68px;padding:14px 16px;gap:13px}.status-band svg{width:30px;height:30px}.status-band strong{font-size:18px}.device-row{grid-template-columns:minmax(150px,1fr) minmax(100px,.55fr) minmax(100px,.45fr)}.device-row__meta{grid-column:1 / -1;border-left:0!important;border-top:1px solid #e3e8e5;padding:10px 16px;justify-content:flex-start}.overview-bottom,.auth-page{grid-template-columns:1fr}.auth-aside{display:none}.auth-panel{min-height:100vh}}@media(max-width:620px){.topbar__mobile-brand .brand>span:last-child{display:none}.topbar{padding-inline:14px}.topbar h1{font-size:18px}.content{padding:12px 10px 24px}.status-band{border-radius:6px}.status-band{color:#fff;background:linear-gradient(90deg,#1d6c34,#185c2d);border-color:#1d6c34}.status-band--alarm{background:var(--alarm);border-color:var(--alarm)}.status-band--warning,.status-band--waiting{background:var(--warning);border-color:var(--warning)}.status-band--paused{background:#59675f;border-color:#59675f}.status-band strong{font-size:16px}.device-list{gap:9px}.device-row{grid-template-columns:1fr auto;min-height:0}.device-row>*{padding:13px 14px}.device-row__identity{border-bottom:1px solid #e3e8e5}.device-row__identity h2{font-size:15px}.device-row__icon{width:31px;height:40px}.device-row__icon svg{width:28px;height:38px}.device-row__temperature{border-left:1px solid #e3e8e5;border-bottom:1px solid #e3e8e5;font-size:34px;padding-left:12px;white-space:nowrap}.device-row__status{grid-column:1;border-left:0!important;flex-direction:row;justify-content:flex-start;padding-block:9px;font-size:12px}.device-row__status svg{width:18px;height:18px}.device-row__meta{grid-column:2;grid-row:2;border-top:0;border-left:1px solid #e3e8e5!important;display:block;padding-block:8px}.device-row__meta div+div{margin-top:7px}.device-row__meta dt{margin-bottom:2px;font-size:9px}.device-row__meta dd{font-size:10px}.device-row__chart{grid-column:1 / -1;padding:8px 13px 5px}.device-row__chart>span{font-size:9px}.device-row__chart .sparkline{height:52px}.overview-bottom{margin-top:10px;gap:10px}.section-panel{padding:15px 13px}.event-list li{grid-template-columns:20px 1fr;padding:8px 0;gap:4px 9px}.event-list li time{grid-column:2;font-size:10px;color:var(--muted)}.event-list li span:not(.event-list__icon),.event-list li strong{grid-column:2}.connection-row{grid-template-columns:34px 1fr}.connection-row__icon{width:32px;height:32px}.connection-state{grid-column:2;justify-self:start}.page-controls{display:grid;grid-template-columns:1fr 1fr}.page-controls select{min-width:0;width:100%}.chart-panel{padding:17px 12px}.chart-panel__heading h2{font-size:18px}.chart-panel__heading>strong{font-size:28px}.sparkline--large{height:230px}.chart-stats{grid-template-columns:1fr}.chart-stats>div+div{border-left:0;border-top:1px solid var(--line)}.active-alarm-summary{grid-template-columns:30px 1fr;padding:14px}.active-alarm-summary .button{grid-column:1 / -1}.alarms-heading{align-items:stretch;flex-direction:column}.alarms-heading select{width:100%}.alarm-table li{grid-template-columns:28px 1fr auto;padding:11px}.alarm-table li>time{grid-column:2 / 4;text-align:left}.settings-intro{align-items:stretch;flex-direction:column}.settings-intro .button{width:100%;justify-content:center}.notification-settings{grid-template-columns:1fr;padding:16px 14px;gap:12px}.notification-settings__icon{width:38px;height:38px}.notification-settings__actions{grid-column:1;width:100%;min-width:0;justify-items:stretch}.notification-settings__actions .button{width:100%;min-height:52px;justify-content:center;font-size:14px}.notification-settings__actions .connection-state{justify-self:stretch;text-align:center}.notification-settings .install-manual{display:grid;grid-template-columns:20px 1fr}.settings-devices{margin-top:12px}.settings-device{min-width:0;padding:14px 13px}.settings-device__heading{align-items:flex-start;flex-direction:column}.settings-device__actions{width:100%;justify-content:space-between}.monitoring-toggle{min-height:46px;flex:1;justify-content:center}.settings-details-toggle{width:100%;min-height:46px;justify-content:center}.settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px}.settings-grid label,.settings-grid input{min-width:0;width:100%}.endpoint-row{min-width:0;grid-template-columns:22px minmax(0,1fr)}.endpoint-row code{min-width:0}.endpoint-row button{grid-row:2;justify-content:center}.endpoint-row button:nth-of-type(1){grid-column:1}.endpoint-row button:nth-of-type(2){grid-column:2}.notification-settings{grid-template-columns:1fr}.notification-settings .connection-state{grid-column:1;justify-self:stretch;text-align:center}.notification-settings__actions{grid-column:1;justify-items:stretch;width:100%;min-width:0}.notification-settings__actions .button{width:100%}.invite-form{grid-template-columns:1fr}.invite-form .button{grid-column:1;width:100%;justify-content:center}.invite-result{grid-template-columns:24px 1fr}.invite-result .button{grid-column:2;justify-self:start}.auth-panel{padding:28px 22px}.auth-panel .brand{margin-bottom:36px}}@media(max-width:380px){.topbar h1{font-size:16px}.topbar__refresh{width:40px;min-width:40px}.settings-grid,.page-controls,.invite-form{grid-template-columns:1fr}.invite-form .button{grid-column:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
