.touch-display-nav{display:flex;gap:4px;align-items:center}.touch-display-return{min-height:44px;display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:10px;color:var(--accent-strong);font-weight:700;white-space:nowrap}.touch-display-return:hover{background:var(--panel-2)}.touch-display-return:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}.energy-display .touch-display-nav button{font-size:20px;font-weight:650;border-color:transparent;background:transparent;padding:8px 10px;color:var(--muted)}.energy-display .touch-display-nav button[aria-current=page]{color:var(--accent-strong);background:var(--panel-2);border-color:var(--border)}.energy-display-battery-summary{min-width:0}.energy-display-battery-summary .energy-display-value strong{font-size:32px}.energy-display-battery-summary>small{font-size:13px}.energy-display-time-to-go{display:grid;gap:1px;margin-top:6px;border-top:1px solid var(--border);padding-top:5px}.energy-display-time-to-go small{font-size:12px}.energy-display-time-to-go strong{font-size:23px;line-height:1.15;color:var(--accent-strong);white-space:nowrap}.energy-display-time-to-go .energy-display-full{font-size:18px;line-height:1.3;white-space:normal}.energy-display .gain{color:var(--positive)}.energy-display .loss{color:var(--danger)}@keyframes touch-trader-research-scroll{to{transform:translate(-50%)}}.energy-display .touch-display-nav button:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}.dashboard-browser-page{min-width:0;height:100%;overflow:auto;background:var(--bg)}.smart-home-workspace{height:100%;min-width:0;overflow:auto;padding:24px;background:var(--bg)}.home-workspace-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.home-workspace-header h1{margin:4px 0;font-size:28px}.home-workspace-header p{margin:0;color:var(--muted)}.home-workspace-header .button-link{flex-shrink:0}.home-workspace-tabs,.home-management-tabs{display:grid;width:100%;gap:4px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.home-workspace-tabs{grid-template-columns:repeat(var(--home-section-count, 7),minmax(0,1fr))}.home-management-tabs{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.home-workspace-tabs{position:sticky;top:0;z-index:8;margin-bottom:16px}.home-workspace-tabs button,.home-management-tabs button{min-width:0;min-height:44px;padding:8px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:650}.home-management-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.home-workspace-tabs button:hover,.home-management-tabs button:hover{background:var(--panel-2);color:var(--text)}.home-workspace-tabs button[aria-current],.home-management-tabs button[aria-current]{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.home-workspace-tabs button:focus-visible,.home-management-tabs button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-2px}.home-management-bar{margin-bottom:16px}.home-workspace-context{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--muted)}.home-workspace-context>svg{flex-shrink:0}.home-workspace-context>span{flex:1}.home-workspace-context>button{flex-shrink:0}.home-workspace-content{min-width:0}.home-workspace-content>.automations-view{height:auto;overflow:visible;padding:0 0 24px}.home-workspace-content>.automations-view>.automation-header{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.home-workspace-content>.dashboard-browser-page{height:max(620px,calc(100dvh - 240px));border:1px solid var(--border);border-radius:16px}.home-workspace-content .energy-display-header .energy-display-brand,.home-workspace-content .energy-display-header h1{display:none}.home-screen-mode{height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.home-screen-mode>.dashboard-browser-page{flex:1;min-height:0}.hikvision-live-view{display:grid;gap:16px;max-width:1600px;margin:0 auto;padding-bottom:24px}.hikvision-live-header,.hikvision-camera-picker{border:1px solid var(--border);border-radius:16px;background:var(--panel)}.hikvision-live-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}.hikvision-live-header h2{margin:5px 0 3px;font-size:21px}.hikvision-live-header p{margin:0;color:var(--muted);font-size:13px}.hikvision-live-header .live-pill.paused{color:var(--warning)}.hikvision-live-header .live-pill.paused i{background:var(--warning);box-shadow:none;animation:none}.hikvision-live-actions{display:flex;align-items:flex-end;flex-wrap:wrap;justify-content:flex-end;gap:8px}.hikvision-live-actions label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:700}.hikvision-live-actions select{min-width:92px;min-height:36px;padding:7px 30px 7px 10px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--panel-2)}.hikvision-live-actions button{min-height:36px;white-space:nowrap}.hikvision-camera-picker{padding:14px}.hikvision-camera-picker>header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:10px}.hikvision-camera-picker>header>div{display:grid;gap:2px}.hikvision-camera-picker small{color:var(--muted);font-size:10px}.hikvision-camera-picker>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.hikvision-camera-picker button{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;min-height:56px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--panel-2);text-align:left}.hikvision-camera-picker button>span{grid-row:1 / 3;align-self:center;display:grid;place-items:center;width:28px;height:28px;border-radius:8px;color:var(--muted);background:var(--panel)}.hikvision-camera-picker button strong,.hikvision-camera-picker button small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hikvision-camera-picker button.selected{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.hikvision-camera-picker button.selected>span{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 13%,var(--panel))}.hikvision-camera-picker button:disabled{opacity:.48;cursor:not-allowed}.hikvision-live-grid{display:grid;grid-template-columns:repeat(var(--camera-columns, 2),minmax(0,1fr));gap:12px}.hikvision-live-tile{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:var(--shadow)}.hikvision-live-tile>header{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:51px;padding:8px 12px;border-bottom:1px solid var(--border)}.hikvision-live-tile>header>span{display:flex;align-items:center;gap:9px;min-width:0}.hikvision-live-tile>header>span>span{display:grid;min-width:0}.hikvision-live-tile>header strong,.hikvision-live-tile>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hikvision-live-tile>header small{color:var(--muted);font-size:9px}.hikvision-live-tile>header em{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--positive);font-size:9px;font-style:normal;font-weight:700}.hikvision-live-tile>header em i{width:7px;height:7px;border-radius:50%;background:currentColor}.hikvision-live-tile.unavailable>header em{color:var(--danger)}.hikvision-live-image{position:relative;display:grid;place-items:center;aspect-ratio:16 / 9;overflow:hidden;background:var(--panel-2)}.hikvision-live-image img{display:block;width:100%;height:100%;object-fit:contain}.hikvision-live-image>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:16px;color:var(--danger);background:color-mix(in srgb,var(--panel) 88%,transparent);font-size:12px;font-weight:700}.hikvision-live-image>span.paused{color:var(--muted)}.hikvision-live-empty{display:grid;place-items:center;gap:6px;min-height:240px;padding:32px;border:1px dashed var(--border);border-radius:16px;color:var(--muted);background:var(--panel);text-align:center}.hikvision-live-empty.compact{min-height:150px}.hikvision-live-empty h2,.hikvision-live-empty p{margin:0}@media(max-width:1100px){.home-workspace-tabs{display:flex;overflow-x:auto;scrollbar-width:thin}.home-workspace-tabs button{flex:1 0 108px}.hikvision-live-grid{grid-template-columns:repeat(min(var(--camera-columns, 2),2),minmax(0,1fr))}.hikvision-camera-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.smart-home-workspace{padding:12px}.home-workspace-header{align-items:flex-start;flex-direction:column}.home-management-bar,.home-workspace-context{flex-wrap:wrap}.home-management-bar>button,.home-workspace-context>button{width:100%}.hikvision-live-header{align-items:stretch;flex-direction:column}.hikvision-live-actions{justify-content:stretch}.hikvision-live-actions label,.hikvision-live-actions button{flex:1}.hikvision-camera-picker>header{align-items:flex-start;flex-direction:column}.hikvision-camera-picker>div,.hikvision-live-grid{grid-template-columns:1fr}}.dashboard-browser-page>.energy-display{height:100%;min-height:560px}.energy-display{height:100dvh;width:100%;padding:12px 20px;display:grid;grid-template-rows:52px minmax(0,1fr);gap:12px;background:var(--bg);color:var(--text);font-variant-numeric:tabular-nums}.energy-display-header,.energy-display-header-right{display:flex;align-items:center;justify-content:space-between;gap:16px}.energy-display-header>div:first-child{display:flex;align-items:baseline;gap:16px}.energy-display-brand{color:var(--accent-strong);font-size:18px;font-weight:800;letter-spacing:.12em}.energy-display h1{margin:0;font-size:28px;letter-spacing:-.03em}.energy-display-header time{font-size:30px;font-weight:650}.energy-display button{min-height:44px;padding:8px 14px;border-radius:10px;background:var(--panel-2);border:1px solid var(--border);font-size:16px}.energy-display button:hover{background:var(--hover)}.energy-display-header button b{margin-left:8px;color:var(--accent-strong)}.energy-display-board{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;min-height:0}.energy-display-column{display:flex;flex-direction:column;gap:16px;min-height:0;min-width:0}.energy-display-card{position:relative;z-index:1;min-width:0;min-height:0;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--panel);display:flex;flex-direction:column;justify-content:space-between;gap:4px}.energy-display-card.grid,.energy-display-card.inverter{flex:0 0 180px}.energy-display-card.solar{flex:1}.energy-display-card.generator{flex:0 0 128px}.energy-display-card.generator .energy-display-value strong{font-size:40px}.energy-display-column.center{gap:0}.energy-display-spacer{flex:0 0 32px}.energy-display-card.battery{flex:1;background:color-mix(in srgb,var(--chart-4) 5%,var(--panel))}.energy-display-card.loads{flex:0 0 180px}.energy-display-card.loads h2{padding-right:24px}.energy-display-card.ev,.energy-display-board.without-ev .energy-display-card.loads{flex:1}.energy-display-solar-summary:has(>div:only-child){grid-template-columns:1fr}.energy-victron-flow.without-ev .victron-flow-column.right>.victron-flow-card.loads{flex:1;max-height:none}.energy-display h2{display:flex;align-items:center;gap:8px;margin:0;font-size:20px;font-weight:600;white-space:nowrap}.energy-display h2 svg{width:22px;height:22px;color:var(--accent-strong);flex:none}.energy-display .solar h2 svg{color:var(--warning)}.energy-display .generator h2{font-size:17px}.energy-display-value{display:flex;align-items:baseline;gap:6px;white-space:nowrap}.energy-display-value strong{font-size:46px;letter-spacing:-.04em;font-weight:650;line-height:1.1}.energy-display-card.grid .energy-display-value strong{font-size:clamp(30px,5.5vw,56px)}.energy-display-signed-amount{font-variant-numeric:tabular-nums}.energy-display-sign{display:inline-block;width:.5em}.energy-display-value>span{font-size:20px;color:var(--muted)}.energy-display p{margin:0;color:var(--muted);font-size:16px;line-height:1.3}.energy-display small{color:var(--muted);font-size:15px}.energy-display-headline{display:flex;align-items:center;justify-content:space-between;gap:8px}.energy-display-headline>small{text-align:right;max-width:105px}.energy-display-state{font-size:28px;color:var(--accent-strong)}.energy-display-metrics{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px}.energy-display-metrics>span{display:grid;gap:2px;min-width:0}.energy-display-metrics strong{font-size:18px;font-weight:600;white-space:nowrap}.energy-display-battery-body{display:flex;align-items:center;gap:16px}.energy-display-battery-body .energy-display-value strong{font-size:36px}.energy-display-soc-ring{flex:none;width:94px;height:94px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--accent-strong) var(--screen-soc),var(--border) 0)}.energy-display-soc-ring>span{width:78px;height:78px;background:var(--panel);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.energy-display-soc-ring strong{display:inline-flex;align-items:baseline;justify-content:center;gap:2px;font-size:28px;line-height:1.15;white-space:nowrap}.energy-display-soc-unit{font-size:.6em}.energy-display-card.battery .energy-display-metrics{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}.energy-display-loads{display:grid;gap:5px}.energy-display-loads>div{display:flex;justify-content:space-between;gap:8px;font-size:16px}.energy-display-loads span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.energy-display-loads strong{flex:none;font-weight:600}.energy-display-water{position:relative;z-index:1;flex:0 0 64px;display:flex;align-items:center;gap:8px;padding-inline:14px;border-radius:12px;background:var(--panel-2);color:var(--accent-strong)}.energy-display-water>small{margin-left:auto}.energy-display-water>div{display:grid;gap:4px}.energy-display-water>div>small{font-size:13px}.energy-display-water strong{font-size:22px}.energy-display-wires{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--border);stroke-width:2;overflow:visible}.energy-display-wires circle{fill:var(--accent-strong);stroke:var(--panel)}.energy-display-wires .flowing{stroke:var(--accent-strong);stroke-width:3;stroke-dasharray:6 10;animation:energy-display-flow 1.6s linear infinite}.energy-display-wires .reversed{animation-direction:reverse}@keyframes energy-display-flow{to{stroke-dashoffset:-32}}.energy-display-status{align-self:center;display:inline-flex}.energy-display-status i{width:10px;height:10px;border-radius:50%;background:currentColor}.energy-display .healthy{color:var(--positive)}.energy-display .uncertain{color:var(--warning)}.home-display .home-reading-delayed,.home-display .home-reading-delayed>strong,.home-display .home-reading-delayed>small,.home-display .home-reading-delayed>span{color:var(--warning)}.energy-display .energy-display-solar-trigger{position:absolute;inset:0;z-index:2;width:100%;height:100%;display:flex;align-items:flex-start;justify-content:flex-end;padding:14px;background:transparent;border:0;border-radius:inherit;color:var(--muted);cursor:pointer}.energy-display-solar-trigger svg{width:18px;height:18px}.energy-display .energy-display-solar-trigger:hover{background:color-mix(in srgb,var(--accent-strong) 5%,transparent);color:var(--accent-strong)}.energy-display-solar-trigger:focus-visible{outline:3px solid var(--accent-strong);outline-offset:3px}.energy-display .solar h2{padding-right:24px}.energy-display-solar-dialog{width:min(880px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid var(--border);border-radius:22px;color:var(--text);background:var(--panel);box-shadow:var(--shadow);overflow:auto}.energy-display-solar-dialog[open]{animation:energy-display-dialog-in .2s ease-out}.energy-display-solar-dialog::backdrop{background:color-mix(in srgb,var(--bg) 72%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:energy-display-backdrop-in .2s ease-out}.energy-display-solar-content{padding:16px 24px;display:grid;gap:10px}.energy-display-solar-content>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.energy-display-solar-content>header h2{font-size:26px;margin-bottom:4px}.energy-display-solar-content>header h2 svg{color:var(--warning)}.energy-display-solar-content>header button{display:flex;align-items:center;gap:8px}.energy-display-solar-summary{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:10px 18px;border-radius:14px;background:var(--panel-2)}.energy-display-solar-summary>div{display:grid;align-content:start;gap:4px}.energy-display-solar-summary .energy-display-value strong{font-size:36px}.energy-display-solar-dialog small{font-size:13px}.energy-display-solar-summary>div>strong{font-size:32px;line-height:1.3}.energy-display-solar-meters{display:grid}.energy-display-solar-meters>article{display:grid;grid-template-columns:minmax(0,1fr) 120px 150px;align-items:center;gap:16px;padding:6px 0;border-bottom:1px solid var(--border)}.energy-display-solar-meters>article>div{display:grid;gap:3px}.energy-display-solar-meters>article>div:not(:first-child){text-align:right}.energy-display-solar-meters h3{font-size:18px;font-weight:600;margin:0;overflow-wrap:anywhere}.energy-display-solar-meters strong{font-size:22px}.energy-display-consumer-meters>article{grid-template-columns:minmax(0,1fr) 140px}.energy-display-solar-meters>article>div{min-width:0}.energy-display .energy-display-solar-note{font-size:13px}@keyframes energy-display-dialog-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes energy-display-backdrop-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.energy-display-wires .flowing{animation:none;stroke-dasharray:none}.energy-display-solar-dialog[open],.energy-display-solar-dialog::backdrop{animation:none}}@media(max-width:800px){.energy-display{padding:8px;gap:8px;overflow-y:auto}.energy-display-board{gap:20px;min-height:428px}.energy-display-brand{display:none}.energy-display-card{padding:10px}.energy-display h2{font-size:16px}.energy-display-value strong{font-size:30px}.energy-display-header-right,.energy-display-battery-body{gap:8px}.energy-display-soc-ring{width:64px;height:64px}.energy-display-soc-ring>span{width:52px;height:52px}.energy-display-soc-ring strong{font-size:20px}}.energy-display.heating-display{--heating-tile-height: 58px;--heating-tile-gap: 8px;gap:8px;padding:8px 16px}.heating-board{display:grid;grid-template-rows:minmax(0,1fr);min-height:0}.heating-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0}.heating-cards.has-one-card{grid-template-columns:minmax(0,1fr)}.heating-cards.has-many-cards{overflow-y:auto;grid-auto-rows:minmax(440px,1fr)}.heating-card{container-type:inline-size;display:grid;grid-template-rows:60px auto auto calc(3 * var(--heating-tile-height) + 2 * var(--heating-tile-gap) + 9px) minmax(60px,1fr);gap:8px;min-width:0;min-height:0;padding:12px 14px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.heating-card.is-active{border-color:color-mix(in srgb,var(--accent-strong) 48%,var(--border));background:color-mix(in srgb,var(--accent) 4%,var(--panel))}.heating-card.is-ems{grid-template-rows:60px auto auto calc(var(--heating-technical-rows) * var(--heating-tile-height) + (var(--heating-technical-rows) - 1) * var(--heating-tile-gap) + 9px) minmax(60px,1fr)}.heating-card.is-ems .heating-technical-grid{grid-template-rows:repeat(var(--heating-technical-rows),var(--heating-tile-height))}.heating-card.is-unavailable{opacity:.72}.heating-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0}.heating-title{display:flex;align-items:center;gap:10px;min-width:0}.heating-source-icon{display:grid;flex:none;width:38px;height:38px;place-items:center;border-radius:10px;background:var(--panel-2);color:var(--accent-strong)}.heating-source-icon svg{width:21px;height:21px}.heating-title>div:last-child{display:grid;min-width:0;gap:1px}.energy-display .heating-title h2{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.energy-display .heating-title small{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.heating-status{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:11px;font-weight:600}.heating-status i{width:7px;height:7px;border-radius:50%;background:currentColor}.heating-card.is-active .heating-status{color:var(--positive)}.heating-card.is-degraded .heating-status{color:var(--warning)}.heating-card.has-fault .heating-status{color:var(--danger)}.heating-fan{position:relative;display:grid;width:58px;height:58px;place-items:center;border-radius:50%;background:var(--panel-2);color:var(--muted)}.heating-fan:after{position:absolute;inset:2px;border:2px solid currentColor;border-radius:50%;opacity:.5;content:""}.heating-fan>span{position:relative;z-index:1;display:grid;width:50px;height:50px;place-items:center}.heating-fan svg{width:100%;height:100%}.heating-card.is-active .heating-fan{color:var(--positive)}.heating-card.is-active .heating-fan svg{animation:heating-fan-turn 4.5s linear infinite}@keyframes heating-fan-turn{to{transform:rotate(360deg)}}.heating-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:var(--heating-tile-height);gap:var(--heating-tile-gap)}.heating-metric,.heating-technical-sensor{position:relative;display:grid;align-content:center;gap:2px;min-width:0;min-height:var(--heating-tile-height);padding:7px 9px;border-radius:10px;background:var(--panel-2)}.heating-metric>svg{position:absolute;top:7px;right:7px;width:13px;height:13px;color:var(--accent-strong)}.heating-metric>span,.heating-technical-sensor>span{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.heating-metric strong,.heating-technical-sensor strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 4px;font-size:clamp(20px,4.8cqi,24px);font-weight:650;letter-spacing:-.02em;line-height:1.2;font-variant-numeric:tabular-nums}.heating-number{white-space:nowrap}.energy-display .heating-metric strong small,.energy-display .heating-technical-sensor strong small{color:inherit;font-size:13px;font-weight:550;white-space:nowrap}.heating-performance{padding-top:8px;border-top:1px solid var(--border)}.heating-technical-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,var(--heating-tile-height));gap:var(--heating-tile-gap);min-width:0;min-height:0;padding-top:8px;border-top:1px solid var(--border)}.heating-sensor-warning{position:relative;cursor:help}.heating-sensor-info{cursor:help}.heating-sensor-info:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.heating-sensor-warning>strong{color:var(--warning)}.heating-sensor-warning:focus-visible{outline:2px solid var(--warning);outline-offset:2px}.heating-sensor-tooltip{position:absolute;z-index:10;top:calc(100% + 4px);left:0;width:220px;max-width:80vw;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);box-shadow:var(--shadow);font-size:12px;line-height:1.4;white-space:normal;font-weight:500}.heating-sensor-warning:nth-child(4n) .heating-sensor-tooltip,.heating-sensor-warning:nth-child(4n-1) .heating-sensor-tooltip{left:auto;right:0}.heating-sensor-info:nth-child(4n) .heating-sensor-tooltip,.heating-sensor-info:nth-child(4n-1) .heating-sensor-tooltip{left:auto;right:0}.heating-sensor-info .heating-sensor-tooltip{top:auto;bottom:calc(100% + 4px)}.heating-metric.heating-sensor-info .heating-sensor-tooltip{top:calc(100% + 4px);bottom:auto}.heating-technical-grid.is-placeholder{grid-template-columns:1fr;grid-template-rows:1fr}.heating-technical-grid.is-placeholder>div{display:grid;align-content:center;justify-items:center;gap:3px;border-radius:9px;background:color-mix(in srgb,var(--panel-2) 72%,transparent);text-align:center}.heating-technical-grid.is-placeholder span{color:var(--muted);font-size:11px}.heating-technical-grid.is-placeholder strong{color:var(--muted);font-size:13px;font-weight:550}.heating-chart{display:grid;grid-template-rows:auto auto minmax(36px,1fr) auto;gap:2px;min-height:0}.heating-chart-head,.heating-chart-axis{display:flex;align-items:center;justify-content:space-between;gap:8px}.heating-chart-head span,.heating-chart-axis span{color:var(--muted);font-size:10px}.heating-chart-head strong{font-size:13px;font-weight:650}.heating-chart svg{display:block;width:100%;height:100%;min-height:36px;border-bottom:1px solid var(--border)}.heating-chart path{fill:none;stroke:var(--accent-strong);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.heating-chart .heating-chart-power-area{fill:color-mix(in srgb,var(--accent) 13%,transparent);stroke:none}.heating-chart .heating-chart-power{stroke-width:1;opacity:.72}.heating-chart .heating-chart-temperature{stroke-width:1.5}.heating-chart .series-1{color:var(--chart-2);stroke:var(--chart-2)}.heating-chart .series-2{color:var(--chart-3);stroke:var(--chart-3)}.heating-chart .series-3{color:var(--chart-4);stroke:var(--chart-4)}.heating-chart .heating-chart-temperature.series-2{stroke-dasharray:6 3}.heating-chart .heating-chart-temperature.series-3{stroke-dasharray:1 3}.heating-chart-latest{fill:var(--accent-strong)}.heating-chart-legend{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;min-width:0;color:var(--muted);font-size:9px;line-height:1.25}.heating-chart-legend span{display:inline-flex;align-items:center;gap:4px;min-width:0;white-space:nowrap}.heating-chart-legend i{width:9px;height:2px;flex:none;border-radius:2px;background:currentColor}.heating-chart-legend .series-2 i{background:repeating-linear-gradient(90deg,currentColor 0 5px,transparent 5px 7px)}.heating-chart-legend .series-3 i{background:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 4px)}.heating-chart-legend .power{color:var(--accent-strong)}.heating-chart-interactive{position:relative;z-index:4;min-height:36px;min-width:0;touch-action:pan-y;outline-offset:2px}.heating-chart-interactive:focus-visible{outline:2px solid var(--accent-strong)}.heating-chart-cursor{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.heating-chart-temperature-axis{position:absolute;inset:2px 2px 4px auto;display:flex;flex-direction:column;justify-content:space-between;color:var(--muted);font-size:8px;line-height:1;pointer-events:none}.heating-chart-tooltip{position:absolute;bottom:calc(100% + 4px);transform:translate(-50%);width:192px;max-width:calc(100% - 8px);padding:8px;box-sizing:border-box;z-index:3;pointer-events:none;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);display:grid;gap:4px;font-size:12px;font-variant-numeric:tabular-nums;box-shadow:var(--shadow)}.heating-chart-tooltip>span{display:flex;justify-content:space-between;gap:8px}.heating-chart-tooltip .power{color:var(--accent-strong)}.heating-chart-empty{display:grid;min-height:36px;place-items:center;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px}.heating-empty{grid-column:1/-1;display:grid;place-items:center;border:1px solid var(--border);border-radius:16px;background:var(--panel);color:var(--muted)}@media(prefers-reduced-motion:reduce){.heating-card.is-active .heating-fan svg{animation:none}}@media(max-width:900px){.heating-display .touch-display-nav button{padding-inline:6px;font-size:15px}.heating-card{padding:10px}.heating-fan{width:52px;height:52px}.heating-fan>span{width:44px;height:44px}.heating-metric,.heating-technical-sensor{padding-inline:7px}}@media(max-width:700px){.energy-display.heating-display{height:auto;min-height:100dvh}.heating-board{grid-template-rows:auto}.heating-cards{grid-template-columns:1fr}.heating-card{min-height:440px}}@media(min-width:701px)and (max-width:900px){.energy-display.heating-display{min-height:600px}.energy-display.heating-display:has(.has-one-card>.is-ems){min-height:100dvh;--heating-tile-height: 48px;--heating-tile-gap: 6px}.heating-metric,.heating-technical-sensor{padding-inline:4px}.heating-metric strong,.heating-technical-sensor strong{font-size:18px}.energy-display .heating-metric strong small,.energy-display .heating-technical-sensor strong small{font-size:11px}}:root{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color-scheme:light;--bg: #ffffff;--sidebar: #f7f7f5;--panel: #ffffff;--panel-2: #f4f4f2;--input: #f4f4f2;--text: #202123;--muted: #6f7075;--faint: #6c6d72;--border: #e2e2df;--hover: #ececea;--selected: #e7e7e4;--accent: #10a37f;--accent-strong: #087f63;--primary-fill: #087f63;--positive: #087f63;--danger: #c13939;--danger-fill: #c13939;--warning: #985f0f;--tuya-brand: #ff4800;--netatmo-brand: #ff6c1a;--network-pin-text: #172033;--chart-2: #4f72e8;--chart-3: #d88726;--chart-4: #8b63c7;--chart-5: #168da1;--chart-6: #099bb8;--shadow: 0 14px 38px rgba(0,0,0,.12);--sidebar-width: 320px}:root[data-theme=dark]{color-scheme:dark;--bg: #171717;--sidebar: #202020;--panel: #242424;--panel-2: #2f2f2f;--input: #303030;--text: #ececec;--muted: #b4b4b4;--faint: #858585;--border: #383838;--hover: #2b2b2b;--selected: #303030;--accent: #19c596;--accent-strong: #38d7aa;--primary-fill: #087f63;--positive: #38d7aa;--danger: #ff6b6b;--danger-fill: #c13939;--warning: #f5b94c;--network-pin-text: #172033;--chart-2: #7f9cff;--chart-3: #f2a84f;--chart-4: #b893ec;--chart-5: #55bfd0;--chart-6: #39c6df;--shadow: 0 18px 50px rgba(0,0,0,.4)}.research-intro>div{min-width:0}.research-history select{width:100%;min-width:0}.research-intro,.research-boundary{display:flex;align-items:center;gap:16px}.research-intro svg,.research-boundary svg{flex:none;color:var(--accent-strong)}.research-intro h2,.research-intro p,.research-card h3,.research-card h4{margin:0}.research-intro p{margin-top:8px;color:var(--muted)}.research-boundary{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2);line-height:1.55}.research-controls{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.research-controls button,.research-controls select,.research-history select{min-height:2.55rem;border:1px solid var(--border);border-radius:8px;padding:8px 12px;background:var(--input);color:var(--text)}.research-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.research-controls button.primary{background:var(--primary-fill);color:var(--bg)}:root[data-theme=dark] .research-controls button.primary{color:var(--text)}.research-controls button:hover:not(:disabled){border-color:var(--accent-strong)}.research-controls button:not(.primary):hover:not(:disabled){background:var(--hover)}.research-controls :disabled{opacity:.65;cursor:not-allowed}.research-controls label{display:flex;align-items:center;gap:8px}.research-controls input[type=checkbox]{accent-color:var(--accent-strong);width:18px;height:18px}.research-history{display:grid;gap:8px;max-width:640px}.research-run-status{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;padding-block:16px;border-block:1px solid var(--border)}.research-run-status small{overflow-wrap:anywhere;color:var(--muted)}.research-report{display:grid;gap:24px;min-width:0}.research-report-heading p,.research-card small{color:var(--muted)}.research-report h2{margin-block:8px;font-size:1.5rem;line-height:1.3}.research-summary{font-size:1.05rem;line-height:1.75;white-space:pre-line;margin:0;max-width:95ch}.research-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.research-grid:has(>.research-fold){align-items:start}.research-fold>summary{cursor:pointer;min-height:2.55rem;align-content:center}.research-fold-heading{display:inline-flex;align-items:center;justify-content:space-between;vertical-align:middle;gap:8px;width:calc(100% - 24px)}.research-fold-heading>span{color:var(--muted);font-size:.85rem;font-weight:400}.research-fold-heading>.status-good{color:var(--positive)}.research-fold-heading>.status-warn{color:var(--warning)}.research-fold>summary:hover{color:var(--accent-strong)}.research-context{padding:16px;background:var(--panel-2);border-radius:8px;line-height:1.6}.research-card{border:1px solid var(--border);border-radius:12px;background:var(--panel);padding:24px;min-width:0;line-height:1.65;overflow-wrap:anywhere}.research-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.research-card header>span{font-size:.8rem;color:var(--muted)}.research-card header>.status-good{color:var(--positive)}.research-card header>.status-warn{color:var(--warning)}.research-card small{display:block;font-size:.85rem;line-height:1.5}.research-claim{margin-top:24px}.research-claim p{margin-block:8px}.research-gaps{border-top:1px solid var(--border);padding-top:16px;margin-top:24px;color:var(--muted)}.research-section{border-top:1px solid var(--border);padding-top:24px;line-height:1.7}.research-section h3{margin-top:0}.research-section summary,.research-card summary{cursor:pointer;font-weight:600}.research-section>summary{margin-bottom:16px}.research-section summary:focus-visible,.research-card summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.research-references{display:inline-flex;flex-wrap:wrap;gap:8px}.research-references a{display:inline-flex;gap:4px;align-items:center;font-size:.85rem}.research-empty{padding:40px 24px;border:1px dashed var(--border);border-radius:12px;text-align:center;color:var(--muted)}.research-section .table-wrap{overflow-x:auto}.research-section td,.research-section th{padding:8px 16px;text-align:left;font-variant-numeric:tabular-nums}@media(max-width:900px){.research-grid{grid-template-columns:minmax(0,1fr)}.research-card{padding:16px}}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text)}button,input,textarea,select{font:inherit;color:inherit}button{border:0;cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 72%,transparent);outline-offset:2px}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0;height:100%;overflow:hidden;background:var(--bg)}.sidebar{position:relative;display:flex;flex-direction:column;min-width:0;padding:10px 9px;background:var(--sidebar);border-right:1px solid var(--border);transition:width .2s ease}.sidebar.collapsed{width:68px;--sidebar-width: 68px}.app-shell:has(.sidebar.collapsed){grid-template-columns:68px minmax(0,1fr)}.sidebar-top{display:flex;align-items:center;justify-content:space-between;height:46px;padding:0 5px}.brand{display:flex;align-items:center;gap:10px;padding:4px;background:transparent;font-size:18px;font-weight:650}.brand-mark{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:#fff;background:#e23d37;font-weight:750;box-shadow:inset 0 0 0 1px #00000014}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:9px;background:transparent;color:var(--muted)}.icon-button:hover{background:var(--hover);color:var(--text)}.primary-nav{display:grid;gap:2px;margin-top:10px}.assistant-nav{margin-top:14px;padding-top:10px;border-top:1px solid var(--border)}.primary-nav button,.sidebar-footer>button{display:flex;align-items:center;width:100%;gap:11px;min-height:39px;padding:8px 10px;border-radius:9px;background:transparent;text-align:left}.primary-nav button:hover,.primary-nav button.active,.sidebar-footer>button:hover{background:var(--hover)}.primary-nav svg,.sidebar-footer svg{width:19px;height:19px;flex:none}.sidebar-search{display:flex;align-items:center;gap:8px;margin:15px 5px 5px;padding:7px 8px;color:var(--muted);border-bottom:1px solid var(--border)}.sidebar-search input{width:100%;border:0;outline:0;background:transparent}.archive-toggle{display:flex;align-items:center;gap:8px;width:calc(100% - 10px);min-height:34px;margin:3px 5px 0;padding:6px 8px;border-radius:8px;color:var(--muted);background:transparent;font-size:12px;text-align:left}.archive-toggle:hover,.archive-toggle.active{color:var(--text);background:var(--hover)}.chat-list{flex:1;overflow:auto;padding:0 3px}.chat-list section{margin-top:16px}.chat-list h3{margin:0 8px 5px;color:var(--faint);font-size:12px;font-weight:600}.chat-row{position:relative;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:35px;padding:7px 5px 7px 9px;border-radius:8px;background:transparent;text-align:left;cursor:pointer}.chat-row span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-row>button:not(.chat-select){display:grid;place-items:center;width:27px;height:27px;flex:none;border-radius:7px;color:var(--muted);background:transparent}.chat-select{display:flex;align-items:center;justify-content:flex-start;flex:1 1 auto;min-width:0;width:auto;height:27px;padding:0;overflow:hidden;color:var(--text);background:transparent;text-align:left}.chat-select span{width:100%}.chat-row>button:not(.chat-select) svg{opacity:0}.chat-row:hover,.chat-row.active{background:var(--selected)}.chat-row:hover>button:not(.chat-select) svg,.chat-row:has(.chat-menu)>button:not(.chat-select) svg{opacity:1}.chat-menu{position:absolute;z-index:40;top:31px;right:32px;display:grid;width:155px;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--panel);box-shadow:var(--shadow)}.chat-menu button{min-height:34px;padding:6px 9px;border-radius:7px;background:transparent;text-align:left}.chat-menu button:hover{background:var(--hover)}.chat-menu>div{height:1px;margin:4px;background:var(--border)}.header-menu-anchor{position:relative}.header-menu-anchor .chat-menu{top:38px;right:0}.sidebar-footer{display:grid;gap:5px;padding-top:8px;border-top:1px solid var(--border)}.account-menu-anchor{position:relative;min-width:0}.account{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:7px;border-radius:10px;background:transparent;text-align:left}.account:hover,.account[aria-expanded=true]{background:var(--hover)}.account>span{display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;color:#fff;background:#188f77;font-size:12px}.account div{display:grid;min-width:0}.account strong,.account small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.account strong{font-size:13px;font-weight:600}.account small{color:var(--muted);font-size:11px}.account>svg{flex:none;margin-left:auto;color:var(--muted);transition:transform .16s ease}.account[aria-expanded=true]>svg{transform:rotate(180deg)}.account-menu{position:absolute;z-index:60;bottom:calc(100% + 8px);left:0;display:grid;width:min(260px,calc(100vw - 24px));padding:7px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:var(--shadow)}.account-menu-profile{display:flex;align-items:center;gap:9px;min-width:0;margin-bottom:5px;padding:8px;border-bottom:1px solid var(--border)}.account-menu-profile>span{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;color:#fff;background:#188f77;font-size:11px}.account-menu-profile>div,.account-menu button>span{display:grid;min-width:0}.account-menu-profile strong,.account-menu-profile small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.account-menu-profile strong{font-size:12px}.account-menu-profile small,.account-menu button small{color:var(--muted);font-size:9.5px}.account-menu button{display:flex;align-items:center;gap:10px;min-height:47px;padding:7px 8px;border-radius:9px;background:transparent;text-align:left}.account-menu button:hover{background:var(--hover)}.account-menu button>svg{flex:none;color:var(--muted)}.account-menu button strong{font-size:11.5px}.sidebar.collapsed .brand>span:last-child,.sidebar.collapsed .primary-nav span,.sidebar.collapsed .sidebar-footer>button span,.sidebar.collapsed .account div{display:none}.sidebar.collapsed .sidebar-search,.sidebar.collapsed .archive-toggle,.sidebar.collapsed .chat-list{display:none}.sidebar.collapsed .sidebar-top{flex-direction:column;height:88px}.sidebar.collapsed .primary-nav button,.sidebar.collapsed .sidebar-footer>button{justify-content:center;padding:8px}.sidebar.collapsed .account{justify-content:center;padding-inline:0}.sidebar.collapsed .account>svg{display:none}.sidebar-resize-handle{position:absolute;z-index:12;top:0;right:-5px;width:10px;height:100%;cursor:col-resize;touch-action:none}.sidebar-resize-handle:after{position:absolute;top:calc(50% - 24px);right:4px;width:2px;height:48px;border-radius:3px;background:var(--border);content:"";opacity:.5;transition:background .15s ease,opacity .15s ease,transform .15s ease}.sidebar-resize-handle:hover:after,.sidebar-resize-handle:focus-visible:after,body.resizing-sidebar .sidebar-resize-handle:after{background:var(--accent);opacity:1;transform:scaleX(1.5)}.sidebar-resize-handle:focus-visible{outline:none}.sidebar.collapsed .sidebar-resize-handle{display:none}body.resizing-sidebar{cursor:col-resize;-webkit-user-select:none;user-select:none}.mobile-sidebar-scrim{display:none}.assistant-view{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;height:100%;overflow:hidden;background:var(--bg)}.content-header{z-index:2;display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:8px 22px;border-bottom:1px solid transparent;background:color-mix(in srgb,var(--bg) 94%,transparent)}.content-header h1{max-width:62vw;margin:0;overflow:hidden;font-size:15px;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.content-header small{color:var(--muted);font-size:11px}.message-scroll{min-height:0;overflow-y:auto;scroll-behavior:smooth}.message-column{width:min(820px,calc(100% - 40px));min-height:100%;margin:0 auto;padding:34px 0 32px}.load-older{display:block;margin:-18px auto 28px;padding:7px 11px;border:1px solid var(--border);border-radius:9px;color:var(--muted);background:var(--panel);font-size:11px}.load-older:hover{color:var(--text);background:var(--hover)}.message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:14px;margin:0 0 34px}.avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--text);background:var(--panel-2)}.message.assistant .avatar{color:#fff;background:#e35c30}.message-body{min-width:0;overflow-wrap:anywhere;line-height:1.68;font-size:15px}.message-body{position:relative}.message-actions{display:flex;align-items:center;flex-wrap:wrap;gap:2px;margin-top:4px;opacity:0;transition:opacity .15s ease}.message-copy-feedback{font-size:12px;color:var(--muted);padding:0 6px}.message-copy-feedback.failed{color:var(--danger)}.message-actions:has(.message-copy-feedback){opacity:1}.message:hover .message-actions,.message-actions:focus-within{opacity:1}.message-actions button{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:var(--muted);background:transparent}.message-actions button:hover{color:var(--text);background:var(--hover)}.message-actions button.selected{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.message-actions button:last-child:hover{color:var(--danger)}.message-body>:first-child{margin-top:2px}.message-body>:last-child{margin-bottom:0}.message-body p{margin:0 0 15px}.message-body h1,.message-body h2,.message-body h3{margin:25px 0 10px;line-height:1.3}.message-body h1{font-size:22px}.message-body h2{font-size:19px}.message-body h3{font-size:17px}.message-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.message-body th,.message-body td{padding:9px 12px;border:1px solid var(--border);text-align:left}.message-body th{background:var(--panel-2)}.message-body table img{display:block;width:112px;height:84px;max-width:none;object-fit:cover;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.message-body table a:hover img,.message-body table a:focus-visible img{border-color:var(--accent-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.pet-movement-timeline{display:grid;gap:12px}.pet-movement-timeline>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.pet-movement-timeline>header>div{display:flex;align-items:center;gap:10px;min-width:0}.pet-movement-timeline>header>div>span:last-child{display:grid;gap:2px;min-width:0}.pet-movement-timeline>header strong{font-size:14px}.pet-movement-timeline>header small,.pet-movement-timeline>footer{color:var(--muted);font-size:10px}.pet-movement-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 13%,var(--panel))}.pet-movement-order{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--panel);font-size:10px}.pet-movement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pet-movement-card{display:grid;grid-template-columns:132px minmax(0,1fr);min-height:102px;overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--panel);transition:border-color .15s ease,background .15s ease}.pet-movement-card:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 3%,var(--panel))}.pet-movement-media{position:relative;display:flex;min-height:102px;overflow:hidden;align-items:center;justify-content:center;color:var(--muted);background:var(--panel-2)}.pet-movement-media img{width:100%;height:100%;min-height:102px;object-fit:cover;transition:transform .2s ease}.pet-movement-media:hover img{transform:scale(1.025)}.pet-movement-media>span{position:absolute;right:6px;bottom:6px;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid color-mix(in srgb,var(--text) 16%,transparent);border-radius:999px;color:var(--text);background:color-mix(in srgb,var(--panel) 88%,transparent);font-size:9px;line-height:1.2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.pet-movement-media.missing{display:grid;place-content:center;gap:6px;padding:10px;text-align:center}.pet-movement-media.missing span{position:static;display:block;padding:0;border:0;border-radius:0;color:var(--muted);background:transparent;font-size:9px;-webkit-backdrop-filter:none;backdrop-filter:none}.pet-movement-detail{display:grid;align-content:center;gap:4px;min-width:0;padding:10px 11px}.pet-movement-detail time{color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums}.pet-movement-detail>strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.pet-direction{width:fit-content;padding:2px 6px;border-radius:999px;color:var(--muted);background:var(--panel-2);font-size:9px}.pet-direction.incoming{color:var(--positive);background:color-mix(in srgb,var(--positive) 10%,var(--panel))}.pet-direction.outgoing{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.pet-movement-detail small{display:flex;align-items:center;gap:4px;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.pet-movement-timeline>footer{padding:0 2px}@media(max-width:720px){.pet-movement-grid{grid-template-columns:1fr}.pet-movement-timeline>header{align-items:flex-start}.pet-movement-order{display:none}}@media(max-width:430px){.pet-movement-card{grid-template-columns:108px minmax(0,1fr)}.pet-movement-media,.pet-movement-media img{min-height:96px}}.ring-event-timeline{display:grid;gap:12px}.ring-event-timeline>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.ring-event-timeline>header>div{display:flex;align-items:center;gap:10px;min-width:0}.ring-event-timeline>header>div>span:last-child{display:grid;gap:2px;min-width:0}.ring-event-timeline>header strong{font-size:14px}.ring-event-timeline>header small,.ring-event-timeline>footer{color:var(--muted);font-size:10px}.ring-event-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 13%,var(--panel))}.ring-event-order{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--panel);font-size:10px}.ring-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ring-event-card{display:grid;grid-template-columns:148px minmax(0,1fr);min-height:112px;overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--panel);transition:border-color .15s ease,background .15s ease}.ring-event-card:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 3%,var(--panel))}.ring-event-media{position:relative;display:flex;min-height:112px;overflow:hidden;align-items:center;justify-content:center;color:var(--muted);background:var(--panel-2)}.ring-event-media img{width:100%;height:100%;min-height:112px;object-fit:cover;transition:transform .2s ease}.ring-event-media:hover img{transform:scale(1.025)}.ring-event-media>span{position:absolute;right:6px;bottom:6px;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid color-mix(in srgb,var(--text) 16%,transparent);border-radius:999px;color:var(--text);background:color-mix(in srgb,var(--panel) 88%,transparent);font-size:9px;line-height:1.2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.ring-event-media.missing{display:grid;place-content:center;gap:6px;padding:10px;text-align:center}.ring-event-media.missing span{position:static;display:block;padding:0;border:0;border-radius:0;color:var(--muted);background:transparent;font-size:9px;-webkit-backdrop-filter:none;backdrop-filter:none}.ring-event-detail{display:grid;align-content:center;gap:5px;min-width:0;padding:10px 11px}.ring-event-detail time{color:var(--muted);font-size:9px;font-variant-numeric:tabular-nums}.ring-event-detail>strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.ring-event-kind{display:inline-flex;width:fit-content;align-items:center;gap:5px;padding:3px 7px;border-radius:999px;color:var(--muted);background:var(--panel-2);font-size:10px}.ring-event-kind.ding{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.ring-event-detail small{display:flex;align-items:center;gap:4px;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.ring-event-timeline>footer{padding:0 2px}.ring-event-empty{display:grid;justify-items:center;gap:5px;padding:24px;border:1px dashed var(--border);border-radius:11px;color:var(--muted);text-align:center;background:var(--panel)}.ring-event-empty strong{color:var(--text);font-size:13px}.ring-event-empty span{font-size:10px}.ring-event-more{display:inline-flex;width:fit-content;min-height:34px;align-items:center;justify-self:center;gap:6px;padding:7px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:var(--panel);font-size:10px}.ring-event-more:hover,.ring-event-more:focus-visible{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 5%,var(--panel))}@media(max-width:720px){.ring-event-grid{grid-template-columns:1fr}.ring-event-timeline>header{align-items:flex-start}.ring-event-order{display:none}}@media(max-width:430px){.ring-event-card{grid-template-columns:116px minmax(0,1fr)}.ring-event-media,.ring-event-media img{min-height:104px}}.message-body pre{overflow:auto;padding:14px;border-radius:10px;background:var(--panel-2)}.message.user{width:fit-content;max-width:75%;margin-left:auto;grid-template-columns:minmax(0,1fr)}.message.user .avatar{display:none}.message.user .message-body{padding:10px 15px;border-radius:18px;background:var(--panel-2)}.message.user .message-actions{justify-content:flex-end}.message-editor{display:grid;gap:9px;min-width:min(620px,60vw)}.message-editor textarea{width:100%;min-height:68px;max-height:260px;padding:10px 12px;resize:vertical;border:1px solid var(--border);border-radius:12px;outline:0;color:var(--text);background:var(--input);line-height:1.5}.message-editor textarea:focus{border-color:color-mix(in srgb,var(--accent) 62%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 11%,transparent)}.message-editor>div{display:flex;justify-content:flex-end;gap:7px}.message-editor button{min-height:32px;padding:6px 11px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.message-editor button.primary-small{color:#fff;border-color:var(--primary-fill);background:var(--primary-fill)}.message-editor small[role=alert]{color:var(--danger)}.message-status{display:flex;align-items:flex-start;gap:7px;margin-top:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border));border-radius:10px;color:var(--danger);background:color-mix(in srgb,var(--danger) 6%,var(--panel));font-size:12px;line-height:1.45}.message-status svg{flex:none;margin-top:1px}.smart-action-card{display:grid;gap:14px;margin:2px 0 10px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:0 4px 14px color-mix(in srgb,var(--text) 5%,transparent)}.smart-action-heading{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px}.smart-action-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 11%,var(--panel))}.smart-action-heading>span:nth-child(2){display:grid;min-width:0;gap:2px}.smart-action-heading strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px}.smart-action-heading small{overflow:hidden;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px}.smart-action-heading>b{padding:4px 8px;border-radius:99px;color:var(--positive);background:color-mix(in srgb,var(--positive) 10%,var(--panel));font-size:10px;font-weight:600;white-space:nowrap}.smart-action-card.attention .smart-action-heading>b{color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--panel))}.smart-action-card.failed .smart-action-heading>b{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--panel))}.smart-action-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px}.smart-action-settings>div{position:relative;display:grid;align-content:center;min-height:58px;padding:9px 10px;border-radius:9px;background:var(--panel-2)}.smart-action-settings small{color:var(--muted);font-size:9.5px}.smart-action-settings strong{margin-top:2px;font-size:12px;font-weight:600}.smart-action-settings .setting-failed{color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--panel))}.smart-action-settings .setting-failed svg{position:absolute;top:8px;right:8px}.smart-action-progress{height:4px;overflow:hidden;border-radius:5px;background:var(--panel-2)}.smart-action-progress span{display:block;height:100%;background:var(--positive)}.smart-action-card.failed .smart-action-progress span{background:var(--danger)}.smart-action-card>p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.5}.smart-action-card details{color:var(--faint);font-size:10px}.smart-action-card summary{width:fit-content;color:var(--muted);cursor:pointer}.smart-action-card details div{margin-top:5px}.message-analysis{display:grid;gap:12px;margin:20px 0 16px;padding:16px;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.message-analysis-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.message-analysis-heading>div{display:grid;min-width:0}.message-analysis-heading>div:first-child strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.message-analysis-heading small,.message-analysis-heading span{color:var(--muted);font-size:11px}.message-analysis-heading>div:last-child{flex:none;text-align:right;font-variant-numeric:tabular-nums}.message-analysis-heading>div:last-child.positive strong{color:var(--positive)}.message-analysis-heading>div:last-child.negative strong{color:var(--danger)}.message-analysis .recharts-surface{overflow:visible}.message-evidence{display:grid;gap:7px;margin-top:14px}.message-evidence details{overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--panel)}.message-evidence summary{padding:10px 12px;color:var(--muted);font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.source-list{display:grid;gap:7px;padding:0 9px 9px}.source-list article{padding:10px;border-radius:8px;background:var(--panel-2)}.source-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.source-list article strong{min-width:0;overflow:hidden;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.source-actions{display:flex;align-items:center;gap:5px;flex:none}.source-list article .source-action{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:27px;padding:4px 8px;border:1px solid var(--border);border-radius:8px;color:var(--accent-strong);background:var(--panel);font-size:10.5px;font-weight:650;text-decoration:none}.source-list article .source-action:hover{border-color:color-mix(in srgb,var(--accent) 38%,var(--border));background:var(--hover)}.source-list article small{display:block;margin-top:3px;overflow-wrap:anywhere;color:var(--muted);font-size:10.5px}.source-list article p{display:-webkit-box;margin:8px 0 0;overflow:hidden;color:var(--muted);font-size:11px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:4}.source-list article .source-unavailable{margin-top:8px;color:var(--faint);font-style:italic}@media(max-width:620px){.source-title-row{align-items:flex-start;flex-direction:column}.source-actions{width:100%}.source-list article .source-action{flex:1}}.message-warning{display:flex;align-items:flex-start;gap:7px;padding:9px 11px;border-radius:9px;color:var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--panel));font-size:11px;line-height:1.45}.message-warning svg{flex:none}.message-audit{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--faint);font-size:10px}.empty-chat{display:grid;justify-items:center;place-content:center;min-height:54vh;text-align:center}.empty-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;color:#fff;background:#e35c30}.empty-chat h2{margin:18px 0 7px;font-size:26px}.empty-chat p{max-width:470px;margin:0;color:var(--muted);line-height:1.5}.generation-progress{margin:4px 0 30px 48px;padding:13px 15px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.progress-heading,.progress-meta{display:flex;align-items:center;gap:8px}.progress-heading strong{flex:1;font-size:13px}.progress-heading>span:last-child{color:var(--muted);font-variant-numeric:tabular-nums}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 13%,transparent);animation:pulse 1.4s infinite}@keyframes pulse{50%{opacity:.45;transform:scale(.82)}}.progress-track{height:4px;margin:11px 0 9px;overflow:hidden;border-radius:9px;background:var(--panel-2)}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .45s ease}.progress-meta{justify-content:space-between;flex-wrap:wrap;color:var(--muted);font-size:11px}.progress-meta span{display:inline-flex;align-items:center;gap:5px}.progress-meta button{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:7px;color:var(--danger);background:transparent}.generation-current-step{display:grid;gap:7px;margin-top:11px;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--accent) 5%,var(--panel-2))}.current-step-heading{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.current-step-heading strong{color:var(--text);font-size:11.5px}.current-step-heading>span{margin-left:auto;color:var(--accent-strong);font-size:9.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em}.generation-current-step p{margin:0;color:var(--text);font-size:11.5px;line-height:1.45}.generation-current-step small{color:var(--faint);font-size:9.5px;line-height:1.4}.generation-failed{border-color:color-mix(in srgb,var(--danger) 38%,var(--border))}.generation-failed .progress-heading{color:var(--danger)}.generation-failed p{margin:9px 0 12px;color:var(--muted);font-size:12px;line-height:1.45}.composer-wrap{position:relative;z-index:5;width:min(850px,calc(100% - 32px));margin:0 auto;padding:0 0 12px;background:linear-gradient(transparent,var(--bg) 25%)}.composer-error{display:flex;align-items:center;gap:7px;margin:0 9px 7px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:10px;color:var(--danger);background:var(--panel);font-size:11px}.composer{position:relative;display:flex;align-items:flex-end;gap:5px;min-height:58px;padding:8px 9px 8px 11px;border:1px solid var(--border);border-radius:28px;background:var(--input);box-shadow:0 0 0 1px #00000003,0 8px 30px #0000000f}.composer-tool,.send-button{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:transparent}.composer-tool:hover{background:var(--hover)}.composer textarea{align-self:center;width:100%;min-height:45px;max-height:130px;padding:3px 5px;resize:none;border:0;outline:0;background:transparent;line-height:1.45}.send-button{color:var(--bg);background:var(--text)}.send-button:disabled{cursor:default;opacity:.28}.composer-note{display:block;margin-top:7px;color:var(--faint);font-size:10.5px;text-align:center}.assistant-status-wrap{margin:5px 8px 0}.assistant-status-bar{display:flex;align-items:center;gap:8px;min-height:30px;color:var(--muted);font-size:10.5px}.assistant-status-bar strong{color:var(--text);font-size:11px;font-weight:600}.assistant-status-bar>small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.assistant-status-bar>button{display:inline-flex;align-items:center;gap:3px;margin-left:auto;padding:4px 5px;color:var(--muted);background:transparent;font-size:10.5px}.assistant-status-bar>button:hover{color:var(--text)}.assistant-status-bar .expanded{transform:rotate(180deg)}.status-ready-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--positive);box-shadow:0 0 0 4px color-mix(in srgb,var(--positive) 10%,transparent)}.assistant-status-details{margin:2px 0 8px}.assistant-status-details .generation-progress{margin:0}.assistant-idle-detail{display:flex;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--border);border-radius:10px;color:var(--muted);background:var(--panel)}.assistant-idle-detail>span{display:grid;gap:2px}.assistant-idle-detail strong{color:var(--text);font-size:11px}.assistant-idle-detail small{font-size:10px}.file-chips{display:flex;gap:7px;padding:30px 12px 7px;overflow-x:auto}.file-chips>span{display:inline-flex;align-items:center;gap:6px;max-width:220px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--panel);font-size:12px;white-space:nowrap}.file-chips button{display:grid;place-items:center;padding:0;background:transparent;color:var(--muted)}.model-anchor{position:relative;flex:none}.model-trigger{display:flex;align-items:center;justify-content:center;gap:10px;min-width:154px;height:38px;padding:5px 10px 5px 14px;border-radius:19px;color:var(--text);background:var(--panel-2)}.model-trigger:hover,.model-trigger[aria-expanded=true]{background:var(--hover)}.model-trigger span{max-width:135px;overflow:hidden;font-size:12px;font-weight:500;white-space:nowrap;text-overflow:ellipsis}.model-trigger small{color:var(--muted);font-size:inherit;font-weight:400}.model-trigger svg{flex:none;color:var(--muted)}.model-popover{position:absolute;z-index:20;right:-4px;bottom:48px;width:278px}.model-popover[hidden]{display:none}.model-selection-notice{display:flex;align-items:flex-start;gap:8px;padding:12px 10px;margin-bottom:4px;border-bottom:1px solid var(--border);color:var(--text)}.model-selection-notice>svg{flex:none;margin-top:2px;color:var(--muted)}.model-selection-notice>div{display:grid;gap:4px;min-width:0}.model-selection-notice strong{font-size:13px;font-weight:600}.model-selection-notice span{font-size:12px;overflow-wrap:anywhere}.model-selection-notice small{color:var(--muted);font-size:11px;line-height:1.45}.model-selection-notice.success>svg{color:var(--accent)}.model-selection-notice.error>svg,.model-selection-notice.error strong{color:var(--danger)}.model-selection-notice button{justify-self:start;margin-top:4px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);font-size:12px}.model-selection-notice button:hover{background:var(--hover)}.model-selection-spinner{flex:none;animation:model-selection-spin 1s linear infinite}@keyframes model-selection-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.model-selection-spinner{animation:none}}.model-menu-main,.model-submenu{padding:8px;border:1px solid var(--border);border-radius:17px;background:var(--panel);box-shadow:var(--shadow)}.model-submenu{position:absolute;top:auto;bottom:0;right:calc(100% + 8px);width:335px}.model-menu-row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:7px 11px;border-radius:9px;background:transparent;font-size:14px;text-align:left}.model-menu-row:hover,.model-menu-row.active,.advanced-toggle:hover,.advanced-toggle.active{background:var(--hover)}.model-menu-value{display:inline-flex;align-items:center;gap:9px;min-width:0;max-width:158px;color:var(--muted);white-space:nowrap}.model-menu-value>span{overflow:hidden;text-overflow:ellipsis}.model-menu-value svg{flex:none}.model-menu-divider{height:1px;margin:5px;background:var(--border)}.advanced-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:7px 11px;border-radius:9px;color:var(--muted);background:transparent;font-size:14px;text-align:left}.advanced-toggle svg{transition:transform .16s ease}.advanced-toggle svg.expanded{transform:rotate(180deg)}.route-choices{display:grid;gap:3px}.route-choices>button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:51px;padding:7px 11px;border-radius:9px;background:transparent;text-align:left}.route-choices>button:hover,.route-choices>button.selected{background:var(--hover)}.route-choices>button:disabled{cursor:not-allowed;opacity:.5}.route-choices button>span,.model-list span{display:grid;gap:2px}.route-choices strong{font-size:12px}.route-choices small{color:var(--muted);font-size:10px}.route-choices svg,.model-list svg{flex:none;color:var(--accent)}.model-list{max-height:310px;margin:0;overflow-y:auto}.model-list>button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:46px;padding:8px 12px;border-radius:10px;background:transparent;text-align:left}.model-list>button:hover,.model-list>button.selected{background:var(--hover)}.model-list strong{font-size:14px;font-weight:500}.model-list small{max-width:218px;color:var(--muted);font-size:10.5px;line-height:1.35}.option-list>button{min-height:46px}select,input[type=number],.setting-row input{min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.eyebrow{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.panel-heading p{margin:0;color:var(--muted)}.refresh-spin{animation:refresh-spin .85s linear infinite}@keyframes refresh-spin{to{transform:rotate(360deg)}}.status-strip{display:flex;align-items:center;gap:22px;max-width:1450px;margin:0 auto 14px;padding:10px 14px;border:1px solid var(--border);border-radius:11px;color:var(--muted);background:var(--panel);font-size:12px}.status-strip>span{display:inline-flex;align-items:center;gap:7px}.refresh-confirmation{color:var(--accent-strong)}.status-good>span,.status-warn>span{width:8px;height:8px;border-radius:50%;background:var(--accent)}.status-warn>span{background:var(--warning)}.readonly{margin-left:auto}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1450px;margin:0 auto 12px}.metric-card{display:flex;align-items:flex-start;gap:12px;min-height:125px;padding:19px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.metric-icon{display:grid;place-items:center;width:37px;height:37px;flex:none;border-radius:10px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.metric-icon svg{width:18px}.metric-card>div:last-child{display:grid;gap:5px}.metric-card span,.metric-card small{color:var(--muted);font-size:11px}.metric-card strong{margin-top:2px;font-size:23px;letter-spacing:-.025em}.metric-card.warn strong{color:var(--danger)}.metric-card.good strong{color:var(--accent-strong)}.scope-tag{width:fit-content;padding:3px 7px;border-radius:99px;color:var(--muted);background:var(--panel-2);font-size:9px;font-style:normal;font-weight:650;letter-spacing:.02em}.panel{min-width:0;padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.panel-heading h2{margin:0 0 3px;font-size:15px}.panel-heading p,.panel-heading span{font-size:11px}.panel-heading>strong{font-size:17px;font-variant-numeric:tabular-nums}.chart-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:-4px 0 12px}.chart-summary>div{display:grid;gap:3px;min-width:0;padding:10px 12px;border-radius:10px;background:var(--panel-2)}.chart-summary span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.045em}.chart-summary strong{overflow:hidden;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.chart-summary small{overflow:hidden;color:var(--faint);font-size:9px;white-space:nowrap;text-overflow:ellipsis}.wallet-value-panel .chart-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.wallet-value-panel .chart-summary>div:last-child{grid-column:1 / -1}.chart-note{display:block;margin-top:7px;color:var(--muted);font-size:10.5px;line-height:1.5}.visual-legend{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px;margin:-5px 4px 5px;color:var(--muted);font-size:10px}.visual-legend span{display:inline-flex;align-items:center;gap:6px}.visual-legend i{width:9px;height:9px;border-radius:3px}.legend-connected{background:var(--accent)}.legend-orders{background:var(--chart-2)}.legend-funding{background:var(--chart-3)}.legend-pending{background:var(--warning)}.legend-fills{background:var(--accent)}.wallet-health-panel{align-self:stretch}.health-list{display:grid}.health-list>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:55px;border-bottom:1px solid var(--border)}.health-list>div:last-child{border-bottom:0}.health-list>div>div{display:grid;gap:3px;min-width:0}.health-list span:not(.health-dot){font-size:12px}.health-list small{overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.health-list strong{font-size:11px;font-variant-numeric:tabular-nums}.health-dot{width:8px;height:8px;border-radius:50%}.health-dot.ok{background:var(--positive);box-shadow:0 0 0 4px color-mix(in srgb,var(--positive) 12%,transparent)}.health-dot.warn{background:var(--warning);box-shadow:0 0 0 4px color-mix(in srgb,var(--warning) 12%,transparent)}.allocation-panel .recharts-surface,.chart-panel .recharts-surface{overflow:visible}.recharts-cartesian-axis-tick-value{fill:var(--muted);font-size:10px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 2px 11px}.section-heading h2{margin:0 0 4px;font-size:17px}.section-heading p{margin:0;color:var(--muted);font-size:11px}.command-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:12px;max-width:1450px;margin:0 auto 12px}.command-chart-grid>.panel{width:100%;height:100%;margin:0}.compact-chart,.performance-chart{min-width:0}.status-pill{padding:5px 8px;border-radius:99px;font-size:10px;font-weight:650;white-space:nowrap}.status-pill.good{color:var(--positive);background:color-mix(in srgb,var(--positive) 10%,var(--panel))}.status-pill.warn{color:var(--warning);background:color-mix(in srgb,var(--warning) 11%,var(--panel))}.gate-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gate-hero>div{display:grid;gap:4px;min-width:0;padding:12px;border-radius:10px;background:var(--panel-2)}.gate-hero span,.gate-metrics span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.035em}.gate-hero strong{font-size:17px}.gate-hero small{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:10.5px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}.gate-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:9px}.gate-metrics>div{display:grid;gap:3px;min-width:0}.gate-metrics strong{overflow:hidden;font-size:12px;text-overflow:ellipsis}.external-context-panel{max-width:1450px;margin:0 auto 12px}.context-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.context-hero>div{display:grid;gap:4px;min-width:0;padding:13px;border-radius:10px;background:var(--panel-2)}.context-hero span,.context-metrics span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.context-hero strong{font-size:16px}.context-hero small{color:var(--muted);font-size:10.5px;line-height:1.5}.context-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:9px}.context-metrics>div{display:grid;gap:3px;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:9px}.context-metrics strong{overflow:hidden;font-size:14px;white-space:nowrap;text-overflow:ellipsis}.context-metrics small{overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.evidence-bars{display:grid;gap:7px;margin-top:13px}.evidence-bars>div{display:grid;grid-template-columns:80px minmax(0,1fr) 32px;align-items:center;gap:7px;color:var(--muted);font-size:9.5px}.evidence-bars>div>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-transform:capitalize}.evidence-bars>div>div{height:4px;overflow:hidden;border-radius:5px;background:var(--panel-2)}.evidence-bars i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.evidence-bars strong{color:var(--text);font-size:9.5px;text-align:right}.compact-metrics{margin-bottom:12px}.trading-lines-title,.dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;max-width:1450px;margin:21px auto 12px;padding:0 2px}.trading-lines-title h2,.dashboard-intro h2{margin:4px 0 3px;font-size:21px;letter-spacing:-.02em}.trading-lines-title p,.dashboard-intro p{margin:0;color:var(--muted);font-size:11px}.trading-lines-title>div:last-child,.dashboard-intro>div:last-child{display:grid;gap:2px;text-align:right}.trading-lines-title>div:last-child span,.dashboard-intro>div:last-child span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.trading-lines-title>div:last-child strong,.dashboard-intro>div:last-child strong{font-size:21px;font-variant-numeric:tabular-nums}.dashboard-intro>div:last-child small{color:var(--muted);font-size:10px}.trading-line-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1450px;margin:0 auto 12px}.trading-line-card{display:grid;gap:18px}.trading-line-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.trading-line-identity{display:flex;align-items:center;gap:11px;min-width:0}.trading-line-icon{display:grid;place-items:center;width:39px;height:39px;flex:none;border-radius:11px;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.trading-line-icon svg{width:19px}.trading-line-identity h2{margin:0 0 3px;font-size:16px}.trading-line-identity p{margin:0;color:var(--muted);font-size:10.5px}.trading-line-value{display:grid;gap:3px}.trading-line-value span,.trading-line-metrics span,.trading-line-allocation span,.trading-line-summary-list span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.045em}.trading-line-value strong{font-size:clamp(26px,2.5vw,34px);letter-spacing:-.035em;font-variant-numeric:tabular-nums}.trading-line-value small{color:var(--muted);font-size:10.5px}.trading-line-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.trading-line-metrics>div{display:grid;align-content:start;gap:5px;min-width:0;min-height:72px;padding:11px;border-radius:10px;background:var(--panel-2)}.trading-line-metrics strong{overflow:hidden;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.trading-line-allocation{display:grid;gap:8px}.trading-line-allocation>div:first-child{display:flex;justify-content:space-between;gap:10px}.trading-line-allocation small{color:var(--muted);font-size:10px}.allocation-track{display:flex;width:100%;height:7px;overflow:hidden;border-radius:99px;background:var(--panel-2)}.allocation-track span{display:block;height:100%}.allocation-invested{background:var(--accent)}.allocation-cash{background:var(--chart-2)}.trading-line-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--border);color:var(--muted)}.trading-line-card footer span,.trading-line-card footer small{overflow:hidden;font-size:10px;white-space:nowrap;text-overflow:ellipsis}.trading-line-analysis-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:12px;max-width:1450px;margin:0 auto 12px}.chart-legend{display:flex;justify-content:flex-end;gap:14px;margin:-5px 4px 3px;color:var(--muted);font-size:10px}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:8px;height:8px;border-radius:2px}.legend-invested{background:var(--accent)}.legend-cash{background:var(--chart-2)}.trading-line-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.trading-line-summary-list>div{display:grid;align-content:start;gap:4px;min-width:0;min-height:91px;padding:12px;border-radius:10px;background:var(--panel-2)}.trading-line-summary-list strong{overflow:hidden;font-size:17px;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis}.trading-line-summary-list small{color:var(--muted);font-size:10px;line-height:1.4}.snapshot-details{max-width:1450px;margin:0 auto 12px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.snapshot-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:13px 18px;border-radius:14px;cursor:pointer;list-style:none}.snapshot-details>summary::-webkit-details-marker{display:none}.snapshot-details>summary:hover{background:var(--hover)}.snapshot-details>summary>span{display:grid;gap:3px}.snapshot-details>summary strong{font-size:13px}.snapshot-details>summary small{color:var(--muted);font-size:10.5px}.snapshot-details>summary svg{flex:none;color:var(--muted);transition:transform .16s ease}.snapshot-details[open]>summary{border-bottom:1px solid var(--border);border-radius:14px 14px 0 0}.snapshot-details[open]>summary svg{transform:rotate(180deg)}.trading-line-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px}.trading-line-details-grid>.panel{border-radius:10px;background:var(--panel-2)}.details-panel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;padding:12px}.details-panel-grid>.panel{border-radius:10px;background:var(--panel-2)}.details-panel-grid>.operations-report-grid{grid-column:1 / -1;width:100%}.details-panel-grid>:is(.trading-lines-title,.trading-line-grid,.trading-line-analysis-grid,.snapshot-details){grid-column:1 / -1;width:100%;min-width:0}.single-panel-grid{max-width:1450px;margin:0 auto 12px}.trading-lines-table-heading{max-width:1450px;margin:24px auto 10px;padding:0 2px}.trading-lines-table-heading h2{margin:0 0 4px;font-size:17px}.trading-lines-table-heading p{margin:0;color:var(--muted);font-size:11px}.table-control-row{display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:1450px;margin:18px auto 8px;padding:0 2px}.table-control-row>div{display:grid;gap:3px}.table-control-row strong{font-size:15px}.table-control-row small{color:var(--muted);font-size:11px}.table-control-row select{min-width:130px}.operations-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1450px;margin:0 auto 12px}.operations-report{max-height:520px;overflow-y:auto;scrollbar-gutter:stable;line-height:1.55;font-size:12px}.operations-report h3{margin:18px 0 7px;font-size:14px}.operations-report p,.operations-report li{color:var(--muted)}.operations-report strong{color:var(--text)}.detail-list{display:grid;gap:0;margin:0}.detail-list>div{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.detail-list>div:last-child{border:0}.detail-list dt{color:var(--muted);font-size:12px}.detail-list dd{margin:0;font-size:12px;text-align:right}.table-panel{max-width:1450px;margin:0 auto 12px}.audit-disclosure>summary .audit-summary-meta{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:10px;font-weight:500}.audit-table-body{padding:12px}.audit-table-body>.table-panel{margin-bottom:8px;border-radius:10px;background:var(--panel-2)}.pagination-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:3px 2px 1px;color:var(--muted);font-size:10.5px}.pagination-row button{min-height:30px;padding:5px 9px}.table-scroll{overflow-x:auto}.research-health table{width:100%;border-collapse:collapse}.research-health th,.research-health td{padding:12px;border-bottom:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.research-health th{color:var(--muted);background:var(--panel-2)}.research-health th:first-child,.research-health td:first-child{text-align:left}.review-help{color:var(--muted);font-size:13px;line-height:1.5}.review-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.review-status-grid>div{padding:16px;background:var(--panel-2);border-radius:12px}.review-status-grid span,.review-status-grid strong{display:block}.review-status-grid span{color:var(--muted);margin-bottom:8px}@media(max-width:700px){.review-status-grid{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse;font-size:12px}th{padding:9px 12px;color:var(--muted);font-weight:600;text-align:left;border-bottom:1px solid var(--border)}td{padding:11px 12px;border-bottom:1px solid var(--border);white-space:nowrap}td{max-width:440px;overflow:hidden;text-overflow:ellipsis}tbody tr:hover{background:color-mix(in srgb,var(--hover) 65%,transparent)}.table-note{display:block;padding:12px;color:var(--muted);text-align:right}.object-list{max-height:460px;padding-inline-end:14px;overflow-y:auto;scrollbar-gutter:stable}.object-list dd{max-width:62%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.side{padding:3px 7px;border-radius:99px;background:var(--panel-2);font-size:10px;text-transform:uppercase}.side.buy{color:var(--accent-strong)}.side.sell{color:var(--danger)}.positive{color:var(--accent-strong)}.negative{color:var(--danger)}.energy-workspace,.energy-history{display:grid;gap:16px;min-width:0}.energy-display-live{display:flex;flex-direction:column;gap:8px;min-height:0}.energy-display-live>.energy-display-board{flex:1}.energy-display-history{min-height:0;overflow:auto;padding-bottom:16px}.energy-history-display-page{grid-template-rows:52px minmax(0,1fr)}.energy-history header{display:flex;align-items:center;justify-content:space-between;gap:16px}.energy-history h2,.energy-history h3,.energy-history p{margin:0}.energy-history header p,.energy-history-period,.energy-history small{color:var(--muted)}.energy-history header p{margin-top:8px}.energy-history-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px}.energy-history-tabs button{min-height:44px;border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:12px;padding:8px 16px}.energy-history-tabs button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--accent-strong);border-color:var(--accent-strong)}.energy-history-controls{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:16px}.energy-history-date{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:center}.energy-history-date button,.energy-history-date input{height:44px;width:100%;min-width:0;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:12px}.energy-history-date button{display:grid;place-items:center}.energy-history button:disabled{opacity:.45;cursor:default}.energy-history button:focus-visible,.energy-history-tabs button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.energy-history-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.energy-history-tiles article,.energy-history-charts article,.energy-history-notes{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:20px;min-width:0}.energy-history-tiles article{display:grid;grid-template-rows:auto auto auto auto auto;align-content:start;gap:8px}.energy-history-tiles article>strong{font-size:clamp(22px,2.5vw,36px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.energy-history-tiles em{font-size:.5em;color:var(--muted);font-style:normal}.energy-history-source{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.energy-history-source img{width:18px;height:18px;object-fit:contain}.energy-history-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.energy-history-charts h3{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px}.energy-history-charts h3 small{font-size:12px;font-weight:400}.energy-history-tooltip{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:12px;width:min(340px,calc(100vw - 40px));font-size:13px;line-height:1.4}.energy-history-tooltip>strong{display:block;font-size:14px;overflow-wrap:anywhere}.energy-history-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px;padding-top:8px;font-size:12px}.energy-history-legend span{display:inline-flex;align-items:center;gap:6px}.energy-history-legend i{width:10px;height:10px;border-radius:2px}.energy-history-tooltip-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding-top:10px;font-variant-numeric:tabular-nums}.energy-history-tooltip-row>span{display:flex;align-items:center;gap:6px;min-width:0}.energy-history-tooltip-row i{flex:0 0 9px;height:9px;border-radius:2px}.energy-history-tooltip-row b{white-space:nowrap;text-align:right}.energy-history-tooltip-row small{grid-column:1/-1;color:var(--muted);font-size:11px}.energy-history-notes{display:grid;gap:12px}.energy-distribution-layout{grid-template-columns:minmax(0,1fr)}.energy-distribution{container-type:inline-size}.energy-distribution-inspector{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.energy-distribution-plot,.energy-distribution-details{min-width:0}.energy-distribution-details .energy-history-tooltip{width:100%;box-sizing:border-box;background:var(--panel-2)}.energy-price-marker{background:var(--text)}@container (max-width:800px){.energy-distribution-inspector{grid-template-columns:minmax(0,1fr)}}.energy-history-financial{display:grid;gap:16px;min-width:0}.energy-distribution-comparison{margin-top:16px}.energy-distribution-comparison summary{cursor:pointer;color:var(--muted);padding:8px 0}.energy-distribution-comparison summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.energy-distribution p{color:var(--muted);font-size:13px;line-height:1.5;margin:12px 0}.energy-distribution-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:16px 0}.energy-distribution-totals>div{display:grid;align-content:start;gap:8px;padding:16px;border-radius:12px;background:var(--panel-2)}.energy-distribution-totals strong{font-size:clamp(18px,2vw,28px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.energy-distribution-totals small,.energy-flow-tooltip>small{color:var(--muted);font-size:11px}.energy-flow-tooltip>small{display:block;margin-top:8px}.recharts-tooltip-wrapper .energy-flow-tooltip,.energy-history .recharts-tooltip-wrapper .energy-history-tooltip{width:100%;box-sizing:border-box}.energy-flow-tooltip hr{border:0;border-top:1px solid var(--border);margin:12px 0 0}.energy-distribution-legend button{display:inline-flex;align-items:center;gap:6px;color:var(--text);background:transparent;border:0;padding:8px;font-size:12px}.energy-distribution-legend button[aria-pressed=false]{opacity:.55;text-decoration:line-through}.energy-flow-selector{display:grid;gap:8px;font-size:13px}.energy-flow-selector select{width:100%;max-width:480px}.energy-flow-selected{display:flex;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-top:16px}.energy-flow-selected .energy-history-tooltip{max-width:100%}@media(max-width:640px){.energy-distribution-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.energy-distribution-totals>div{padding:12px}}.energy-history-notes p{color:var(--muted);font-size:13px;line-height:1.5}.energy-history-imports{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.energy-history-imports>div{display:grid;align-content:start;gap:8px;padding:16px;border-radius:12px;background:var(--panel-2)}.energy-contract-edit{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.energy-contract-edit input{min-width:0;flex:1 1 140px}.energy-contract-edit input,.energy-contract-edit button{height:2.55rem}@media(max-width:900px){.energy-history-charts,.energy-history-controls{grid-template-columns:1fr}}@media(max-width:520px){.energy-history-tiles{grid-template-columns:1fr;gap:8px}.energy-history-imports{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.energy-history-tiles article{padding:12px}.energy-history-tabs button{padding:8px}}.alert,.loading-panel,.empty-panel{max-width:1450px;margin:15px auto;padding:25px;border:1px solid var(--border);border-radius:14px;color:var(--muted);background:var(--panel);text-align:center}.alert{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:25px;background:#0000007a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.action-backdrop{z-index:130}.action-dialog{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;width:min(480px,calc(100vw - 32px));padding:21px;border:1px solid var(--border);border-radius:17px;background:var(--panel);box-shadow:var(--shadow)}.action-dialog-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.action-dialog-icon.danger{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--panel))}.action-dialog h2{margin:1px 0 7px;font-size:17px}.action-dialog p{margin:0 0 15px;color:var(--muted);font-size:12px;line-height:1.55}.action-dialog label{display:grid;gap:6px;margin-bottom:15px;color:var(--muted);font-size:11px}.action-dialog input{width:100%;min-height:38px;padding:7px 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.action-dialog-buttons{display:flex;justify-content:flex-end;gap:8px}.danger-button{min-height:34px;padding:7px 11px;border-radius:8px;color:#fff;background:var(--danger-fill)}.settings-dialog{display:grid;grid-template-columns:220px minmax(0,1fr);width:min(1080px,calc(100vw - 50px));height:min(780px,92vh);overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}.settings-dialog>aside{min-height:0;padding:16px 10px;overflow-y:auto;border-right:1px solid var(--border);background:var(--sidebar)}.settings-title{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:7px 10px}.settings-title svg{width:19px}.settings-dialog>aside button{display:block;width:100%;margin:2px 0;padding:9px 11px;border-radius:8px;background:transparent;text-align:left}.settings-dialog>aside button:hover,.settings-dialog>aside button.active{background:var(--hover)}.settings-dialog>section{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;overflow:hidden}.settings-dialog header{display:flex;justify-content:space-between;padding:20px 23px 15px;border-bottom:1px solid var(--border)}.settings-dialog h2{margin:0 0 4px;font-size:20px}.settings-dialog header p{margin:0;color:var(--muted);font-size:12px}.settings-content{padding:7px 23px 30px;overflow-y:auto}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:14px 0;border-bottom:1px solid var(--border)}.setting-row>span:first-child{display:grid;gap:4px}.setting-row strong{font-size:13px}.setting-row small{max-width:390px;color:var(--muted);font-size:11px}.setting-row input:not([type=number]){width:min(300px,46%)}.setting-row>select{width:min(300px,46%)}.toggle{position:relative;width:42px;height:24px;flex:none;border-radius:20px;background:#a7a7a7;transition:background .15s}.toggle span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:0 1px 3px #00000038}.toggle.on{background:var(--accent)}.toggle.on span{transform:translate(18px)}.settings-dialog footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:61px;padding:13px 22px;border-top:1px solid var(--border);background:var(--panel)}.settings-dialog footer button{padding:8px 13px;border-radius:9px}.settings-dialog .secondary{border:1px solid var(--border);background:var(--panel)}.settings-dialog .primary{color:#fff;background:var(--primary-fill)}.settings-dialog button:disabled{opacity:.5;cursor:default}.storage-card{display:grid;gap:5px;margin:15px 0;padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.storage-card span{font-size:23px;font-weight:650}.storage-card small,.folder-card small{color:var(--muted)}.mail-hero{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:11px;margin:15px 0 4px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.mail-hero>div{display:grid;gap:3px}.mail-hero small{color:var(--muted)}.mail-hero>svg{color:var(--accent-strong)}.certificate-hero{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:11px;margin:15px 0 10px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.certificate-hero>div{display:grid;gap:3px}.certificate-hero small{color:var(--muted)}.certificate-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.certificate-stat-grid>span{display:grid;gap:4px;min-width:0;padding:11px;border:1px solid var(--border);border-radius:9px;color:var(--muted);background:var(--panel);font-size:10px}.certificate-stat-grid strong{overflow:hidden;color:var(--text);font-size:12px;font-weight:600;text-overflow:ellipsis}.network-settings{display:grid;gap:12px;padding-top:8px}.network-hero{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:11px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.network-hero>div{display:grid;gap:3px;min-width:0}.network-hero small,.network-service-card small{color:var(--muted)}.network-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.network-stat-grid>span{display:grid;gap:4px;min-width:0;padding:11px;border:1px solid var(--border);border-radius:9px;color:var(--muted);background:var(--panel);font-size:10px}.network-stat-grid strong{overflow:hidden;color:var(--text);font-size:12px;font-weight:600;text-overflow:ellipsis}.network-route-editors{display:grid;gap:8px}.network-route-editor{display:grid;gap:11px;padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.network-route-editor>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.network-route-editor>header>span:first-child{display:flex;align-items:center;gap:7px;min-width:0}.network-route-editor>header svg{flex:none;color:var(--accent-strong)}.network-route-editor>header strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.network-route-editor>header em{flex:none;padding:3px 6px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel));font-size:9px;font-style:normal}.network-route-fields{display:grid;grid-template-columns:1.4fr 1fr 1fr 110px;gap:8px}.network-route-fields label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:10px;font-weight:600}.network-route-fields input{width:100%;min-width:0}.network-route-fields input:disabled{color:var(--muted);background:var(--panel)}.network-route-tls{display:flex;align-items:flex-start;gap:8px;color:var(--text);font-size:11px}.network-route-tls input{margin-top:2px;accent-color:var(--accent-strong)}.network-route-tls span{display:grid;gap:2px}.network-route-tls small{color:var(--muted);font-weight:400}.network-remove-route{justify-self:end}.network-add-route{margin:0}.network-message{margin-top:0;color:var(--positive)}.network-service-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.network-service-card>div:first-child{display:grid;gap:3px;min-width:0}.network-service-flags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.network-service-flags span{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:99px;font-size:9px;font-weight:650}.network-service-flags .ok{color:var(--positive);background:color-mix(in srgb,var(--positive) 9%,var(--panel))}.network-service-flags .failed{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--panel))}.network-settings .subheading>.run-status{flex:none;overflow:visible}.mqtt-settings{display:grid;gap:12px;padding-top:8px}.mqtt-message{margin-top:0;color:var(--positive)}.mqtt-secret-once{display:grid;grid-template-columns:28px minmax(0,1fr) auto 32px;align-items:start;gap:10px;padding:13px;border:1px solid color-mix(in srgb,var(--warning) 48%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--warning) 8%,var(--panel))}.mqtt-secret-once>svg{color:var(--warning)}.mqtt-secret-once>div{display:grid;gap:5px;min-width:0}.mqtt-secret-once small{color:var(--muted)}.mqtt-secret-once code{overflow:auto;padding:5px 7px;border-radius:7px;color:var(--text);background:var(--panel);font-size:10px;white-space:nowrap}.mqtt-account-grid{display:grid;gap:8px}.mqtt-account-card{display:grid;gap:11px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.mqtt-account-card.disabled{opacity:.72}.mqtt-account-card>header{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:8px}.mqtt-account-card>header>div{display:grid;gap:2px;min-width:0}.mqtt-account-card>header small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.mqtt-topic-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.mqtt-topic-columns>span{display:grid;gap:4px;min-width:0;padding:9px;border-radius:8px;color:var(--muted);background:var(--panel);font-size:9px}.mqtt-topic-columns strong{overflow-wrap:anywhere;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;font-weight:550}.mqtt-account-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.mqtt-account-editor{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.mqtt-account-editor>small{color:var(--muted)}.mqtt-account-editor code{color:var(--text)}.mqtt-account-editor .automation-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mqtt-account-editor .automation-form-grid label:nth-child(4),.mqtt-account-editor .automation-form-grid label:nth-child(5){grid-column:span 1}.mail-progress{display:grid;gap:9px;margin-top:18px;padding:15px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.mail-progress>div:first-child{display:grid;grid-template-columns:10px auto minmax(0,1fr) auto;align-items:center;gap:8px}.mail-progress>div:first-child small{overflow:hidden;color:var(--muted);white-space:nowrap;text-overflow:ellipsis}.mail-progress>div:first-child b{color:var(--muted);font-size:11px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.status-dot.running{background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 12%,transparent);animation:pulse 1.4s infinite}.status-dot.completed{background:var(--positive)}.status-dot.error{background:var(--danger)}.status-dot.paused{background:var(--warning)}.mail-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.mail-stat-grid>span{display:grid;gap:3px;padding:8px;border-radius:8px;color:var(--muted);background:var(--panel-2);font-size:9px}.mail-stat-grid strong{color:var(--text);font-size:11px;font-weight:600}.mail-progress>small{color:var(--muted);font-size:10px}.folder-card{display:flex;align-items:flex-start;gap:11px;padding:13px 2px;border-bottom:1px solid var(--border)}.folder-card>div{display:grid;gap:4px;min-width:0}.folder-card strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.folder-card svg{flex:none;color:var(--muted)}.index-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:7px 0}.index-detail-grid>span{display:grid;gap:2px;min-width:0;padding:7px 8px;border-radius:8px;color:var(--muted);background:var(--panel-2);font-size:9px}.index-detail-grid strong{color:var(--text);font-size:10px;font-weight:550}.index-statuses{display:flex;flex-wrap:wrap;gap:5px;margin:4px 0 8px}.index-statuses>span{padding:4px 7px;border:1px solid var(--border);border-radius:99px;color:var(--muted);font-size:9px;text-transform:capitalize}.index-statuses strong{color:var(--text)}.folder-warning{display:flex;align-items:flex-start;gap:6px;margin:6px 0;padding:7px 8px;border-radius:8px;color:var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--panel));font-size:10px;line-height:1.4}.semantic-status{display:grid;gap:3px;margin:10px 0;padding:10px;border:1px solid var(--border);border-radius:9px}.semantic-status>div:first-child{display:grid;grid-template-columns:19px minmax(0,1fr) auto;align-items:center;gap:6px}.semantic-status span{display:grid;gap:2px}.semantic-status strong{font-size:11px}.semantic-status small{color:var(--muted);font-size:9.5px}.semantic-status b{color:var(--muted);font-size:10px;font-weight:550}.mini-progress.semantic span{background:var(--chart-2)}.info-card{margin-top:18px;padding:15px;border-radius:11px;color:var(--muted);background:var(--panel-2);font-size:12px;line-height:1.55}.info-card svg{margin-right:7px;vertical-align:middle}.warning-card{border:1px solid color-mix(in srgb,var(--warning) 38%,var(--border))}.alert.compact{margin:8px 0;padding:12px}.textarea-setting{display:grid;gap:6px;padding:17px 0}.textarea-setting small{color:var(--muted);font-size:11px}.textarea-setting textarea,.inline-editor textarea{width:100%;padding:10px;resize:vertical;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.subheading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:24px;padding-bottom:9px;border-bottom:1px solid var(--border)}.subheading>div{display:grid;gap:3px}.subheading small{color:var(--muted)}.secondary,.primary,.button-link,.folder-actions button,.settings-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:7px 11px;border-radius:8px}.secondary{border:1px solid var(--border);background:var(--panel)}.primary{color:#fff;background:var(--primary-fill)}.workspace-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 0;border-bottom:1px solid var(--border)}.workspace-row>div:first-child{display:grid;gap:3px;min-width:0}.workspace-row strong{display:flex;align-items:center;gap:7px}.workspace-row small{max-width:600px;overflow:hidden;color:var(--muted);white-space:nowrap;text-overflow:ellipsis}.workspace-row>div:last-child{display:flex;gap:4px}.workspace-row button{padding:6px 8px;border-radius:7px;background:transparent}.workspace-row button:hover{background:var(--hover)}.danger-link{color:var(--danger)!important}.inline-editor{display:grid;gap:10px;margin:8px 0 12px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2);scroll-margin-block:16px}.inline-editor>label{display:grid;gap:6px;color:var(--muted);font-size:10.5px;font-weight:600}.inline-editor>div{display:flex;justify-content:flex-end;gap:7px}.pending-badge{padding:2px 6px;border-radius:99px;color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--panel));font-size:9px;font-weight:650}.inline-editor .editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.editor-grid label{display:grid;justify-items:stretch;gap:5px;color:var(--muted);font-size:10px}.editor-grid input,.editor-grid select{width:100%}.editor-grid .editor-toggle{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;min-height:42px}.folder-add{display:grid;grid-template-columns:150px 1fr auto;gap:7px;margin:14px 0}.folder-add input{min-width:0}.folder-card.expanded>div{width:100%}.mini-progress{height:4px;margin:5px 0;overflow:hidden;border-radius:5px;background:var(--panel-2)}.mini-progress span{display:block;height:100%;background:var(--accent)}.inline-toggle{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.folder-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.folder-actions button{border:1px solid var(--border);background:var(--panel);font-size:11px}.credential-row{display:grid;grid-template-columns:28px minmax(0,1fr) 38px;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--border)}.credential-row>div{display:grid;gap:4px}.credential-row code{color:var(--muted);font-size:11px}.credential-ok,.credential-missing{display:grid;place-items:center;width:26px;height:26px;border-radius:50%}.credential-ok{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 12%,var(--panel))}.credential-missing{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--panel))}.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.button-link{color:var(--text);border:1px solid var(--border);background:var(--panel-2);text-decoration:none;cursor:pointer}.model-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}.model-catalog>div{display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.model-catalog>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.model-catalog strong{font-size:12px}.model-catalog span{padding:3px 6px;border-radius:99px;color:var(--muted);background:var(--panel);font-size:9px}.model-catalog .installed span{color:var(--positive);background:color-mix(in srgb,var(--positive) 9%,var(--panel))}.model-catalog p{margin:0;color:var(--muted);font-size:10.5px;line-height:1.45}.model-catalog small{color:var(--faint);font-size:9.5px}.profile-settings-hero{display:flex;align-items:center;gap:11px;margin:8px 0 4px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.profile-settings-hero>span{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;color:#fff;background:#188f77;font-size:12px;font-weight:650}.profile-settings-hero>div{display:grid;gap:3px;min-width:0}.profile-settings-hero strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.profile-settings-hero small{color:var(--muted);font-size:10.5px}.operator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.operator-field{display:grid;align-content:start;gap:7px;min-width:0;padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.operator-field small{min-height:30px;color:var(--muted)}.operator-title,.operator-meta,.operator-toolbar,.operator-toolbar>div,.operator-toolbar label{display:flex;align-items:center;gap:7px}.operator-title{justify-content:space-between}.operator-title>span,.authority-badge{padding:3px 6px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel));font-size:9px;white-space:nowrap}.operator-meta{justify-content:space-between;min-width:0;color:var(--faint);font-size:9px}.operator-field code{overflow:hidden;color:inherit;font-size:inherit;text-overflow:ellipsis}.operator-meta span{flex:none}.operator-toolbar{justify-content:space-between;gap:15px;margin:14px 0 2px}.operator-toolbar>div{min-width:0}.operator-toolbar>div>strong{overflow:hidden;font-size:13px;white-space:nowrap;text-overflow:ellipsis}.operator-toolbar label{min-width:220px;padding:0 9px;border:1px solid var(--border);border-radius:9px;color:var(--muted);background:var(--panel-2)}.operator-toolbar input{width:100%;min-height:34px;padding:5px 0;border:0;outline:0;background:transparent}.settings-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.boot-screen{display:grid;place-items:center;place-content:center;gap:14px;width:100%;height:100%;background:var(--bg)}.boot-screen p{margin:0;color:var(--muted)}.login-screen{display:grid;place-items:center;min-width:0;min-height:100%;padding:24px;background:var(--bg)}.login-card{display:grid;justify-items:center;gap:18px;width:min(440px,100%);padding:32px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.login-card>.brand-mark{width:46px;height:46px;font-size:19px}.login-heading{display:grid;gap:6px;text-align:center}.login-heading h1{margin:0;font-size:24px;letter-spacing:-.02em}.login-heading p{margin:0;color:var(--muted)}.login-identity{display:flex;align-items:center;gap:11px;width:100%;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.login-identity>svg{color:var(--accent-strong)}.login-identity span,.login-field{display:grid;gap:4px;min-width:0}.login-identity small,.login-field{color:var(--muted)}.login-field{width:100%;font-size:11px;font-weight:600}.login-field input{width:100%;min-height:41px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:var(--input)}.login-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px}.diagnostic-login{width:100%;padding-top:4px;border-top:1px solid var(--border);color:var(--muted)}.diagnostic-login summary{padding:8px 0;cursor:pointer;font-size:11px;font-weight:600;text-align:center}.diagnostic-login[open]{display:grid;gap:9px}.diagnostic-login .secondary{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px}.login-footnote{display:flex;align-items:center;gap:6px;color:var(--muted)}.login-card>.warning-card{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:9px;width:100%}.login-card>.warning-card span{display:grid;gap:3px}.login-card>.warning-card .button-link{grid-column:1 / -1;justify-content:center}.users-panel{display:grid;gap:12px}.diagnostic-access-card{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.diagnostic-access-card .subheading{margin-top:0}.diagnostic-access-card .subheading>svg{color:var(--accent-strong)}.issued-diagnostic-key{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--accent) 7%,var(--panel))}.issued-diagnostic-key>span{display:grid;gap:3px}.issued-diagnostic-key small{color:var(--muted)}.issued-diagnostic-key code{grid-column:1 / -1;overflow-wrap:anywhere;padding:8px;border-radius:7px;color:var(--text);background:var(--input);-webkit-user-select:all;user-select:all}.issued-diagnostic-key .secondary{grid-column:2;display:inline-flex;align-items:center;gap:6px}.siri-setup-guide{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.siri-setup-guide ol{display:grid;gap:6px;margin:0;padding-left:20px;color:var(--muted);font-size:11px;line-height:1.45}.siri-setup-guide code{overflow-wrap:anywhere;color:var(--text)}.siri-setup-guide small{color:var(--accent-strong);font-weight:600}.diagnostic-session-banner{position:fixed;z-index:90;top:10px;left:50%;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;transform:translate(-50%);border:1px solid color-mix(in srgb,var(--accent) 42%,var(--border));border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 9%,var(--panel));box-shadow:var(--shadow);font-size:10px;font-weight:650;pointer-events:none}.users-panel>.info-card:first-child{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px}.users-panel>.info-card:first-child>svg{color:var(--accent-strong)}.users-panel>.info-card:first-child>span{display:grid;gap:3px}.users-panel>.info-card:first-child small{color:var(--muted)}.users-panel>.info-card:first-child .secondary{display:inline-flex;align-items:center;gap:6px}.user-list{display:grid;gap:10px}.user-card{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.user-card-heading{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px}.user-card-heading>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 12%,var(--panel));font-size:11px;font-weight:700}.user-card-heading>div{display:grid;gap:3px;min-width:0}.user-card-heading small{overflow:hidden;color:var(--muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.user-card-heading em{padding:4px 7px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel));font-size:9px;font-style:normal}.user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.user-form-grid label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:600}.user-form-grid input,.user-form-grid select{width:100%;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--input)}.passkey-list{display:grid;gap:6px}.passkey-list>div{display:grid;grid-template-columns:22px minmax(0,1fr) 34px;align-items:center;gap:8px;padding:8px 9px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.passkey-list>div>svg{color:var(--accent-strong)}.passkey-list span{display:grid;gap:2px}.passkey-list small{color:var(--muted);font-size:9px}.user-card-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.compact-check{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:var(--muted);font-size:10px}.compact-check input{accent-color:var(--accent)}.user-card-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.add-user{width:100%;min-height:42px}.automations-view{min-width:0;height:100%;padding:35px clamp(24px,4vw,60px) 70px;overflow-y:auto;background:var(--bg)}.automation-header,.automation-section,.automation-compose,.automation-alert{max-width:1450px;margin-inline:auto}.automation-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.automation-header h1{margin:6px 0 4px;font-size:31px;letter-spacing:-.025em}.automation-header p,.automation-section-heading p,.automation-compose p{margin:0;color:var(--muted)}.automation-health{display:grid;grid-template-columns:10px auto;align-items:center;gap:2px 8px;min-width:190px;padding:13px 15px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.automation-health small{grid-column:2;color:var(--muted);font-size:10.5px}.automation-alert{display:flex;align-items:center;gap:8px;margin-bottom:14px;padding:13px 15px;text-align:left}.smart-home-menu{position:sticky;z-index:8;top:12px;display:flex;width:fit-content;max-width:1450px;gap:4px;margin:0 auto 18px;padding:4px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--shadow) 75%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.smart-home-menu button{min-width:128px;min-height:38px;padding:8px 16px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-weight:700}.smart-home-menu button:hover{color:var(--text);background:var(--panel-2)}.smart-home-menu button.active{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 12%,var(--panel));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,var(--border))}.smart-home-section-stack{max-width:1450px;margin-inline:auto}.automation-compose{display:grid;grid-template-columns:46px minmax(0,1fr);gap:15px;margin-bottom:18px;padding:20px;border:1px solid var(--border);border-radius:15px;background:var(--panel)}.automation-compose-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 11%,var(--panel))}.automation-compose h2,.automation-section h2{margin:0 0 4px;font-size:16px}.automation-compose p,.automation-section-heading p{font-size:11px}.automation-prompt{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin-top:13px}.automation-prompt textarea{width:100%;min-height:58px;padding:10px 12px;resize:vertical;border:1px solid var(--border);border-radius:10px;background:var(--input);line-height:1.45}.automation-prompt .primary{min-height:41px}.automation-section{margin-bottom:18px;padding:20px;border:1px solid var(--border);border-radius:15px;background:var(--panel)}.automation-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.automation-section-heading>span{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:99px;color:var(--muted);background:var(--panel-2);font-size:11px;font-variant-numeric:tabular-nums}.automation-disclosure{padding:0;overflow:hidden}.automation-disclosure>summary{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px;padding:16px 20px;cursor:pointer;list-style:none}.automation-disclosure>summary::-webkit-details-marker{display:none}.automation-disclosure>summary:hover{background:var(--hover)}.automation-disclosure>summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-3px}.automation-disclosure>summary>span:first-child{display:grid;gap:3px;min-width:0}.automation-disclosure>summary h2{margin:0}.automation-disclosure>summary p{overflow:hidden;margin:0;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.automation-disclosure[open]>summary{border-bottom:1px solid var(--border)}.automation-disclosure-body{padding:16px 20px 20px}.automation-disclosure-body>.automation-section{max-width:none;margin:0;padding:0;border:0;border-radius:0;background:transparent}.automation-disclosure-body>.automation-section>.automation-section-heading{display:none}.automation-disclosure-meta{display:inline-flex;align-items:center;gap:8px;flex:none;color:var(--muted)}.automation-disclosure-meta b{display:grid;place-items:center;min-width:30px;height:30px;padding-inline:8px;border-radius:99px;background:var(--panel-2);font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}.automation-disclosure-meta svg{transition:transform .16s ease}.automation-disclosure[open]>summary .automation-disclosure-meta svg{transform:rotate(180deg)}.automation-hue-disclosure .smart-home-section-stack{max-width:none}.hue-integration-block{display:grid;gap:11px}.hue-integration-block+.hue-integration-block{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.hue-integration-heading{display:flex;align-items:center;gap:9px}.hue-integration-heading>.provider-logo{width:28px;height:18px;object-fit:contain}.hue-integration-heading>div{display:grid;min-width:0;gap:2px}.hue-integration-heading small{color:var(--muted);font-size:9.5px}.hue-integration-heading .status-dot{margin-left:auto}.hue-scene-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:stretch;gap:9px}.hue-scene-card{display:grid;grid-template-rows:auto auto minmax(18px,1fr) auto;min-width:0;min-height:202px;gap:11px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.hue-scene-heading{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px}.hue-scene-heading>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:color-mix(in srgb,var(--accent) 9%,var(--panel))}.hue-scene-heading .provider-logo{width:25px;height:15px;object-fit:contain}.hue-scene-heading>div{display:grid;min-width:0;gap:2px}.hue-scene-heading strong,.hue-scene-heading small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hue-scene-heading small,.hue-smart-scene-detail{color:var(--muted);font-size:9px}.hue-scene-heading .status-badge{display:inline-flex;align-items:center;gap:4px}.hue-scene-card>label{display:grid;gap:5px;color:var(--muted);font-size:9.5px;font-weight:700}.hue-scene-card select,.hue-rule-editor input{width:100%;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--input)}.hue-smart-scene-detail{align-self:start;line-height:1.4}.hue-scene-card>.primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:39px}.hue-execution-policy{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-2))}.hue-execution-policy>svg{color:var(--accent-strong)}.hue-execution-policy>span{display:grid;min-width:0;gap:2px}.hue-execution-policy small{color:var(--muted);font-size:9.5px;line-height:1.4}.hue-execution-policy em{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:99px;color:var(--warning);background:color-mix(in srgb,var(--warning) 9%,var(--panel));font-size:9px;font-style:normal;font-weight:750;white-space:nowrap}.hue-rule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));align-items:stretch;gap:9px}.hue-rule-card{display:grid;grid-template-rows:auto auto auto minmax(40px,1fr) auto auto;min-width:0;min-height:286px;gap:10px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.hue-rule-card.paused{opacity:.78}.hue-rule-card.has-issues{border-color:color-mix(in srgb,var(--warning) 36%,var(--border))}.hue-rule-card>header{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px}.hue-rule-card>header>div{display:grid;min-width:0;gap:2px}.hue-rule-card>header strong,.hue-rule-card>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hue-rule-card>header small{color:var(--muted);font-size:9px}.hue-rule-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.hue-rule-engine{display:flex;align-items:center;gap:7px;padding:7px 8px;border-radius:8px;background:var(--panel)}.hue-rule-engine .provider-logo{width:24px;height:15px;object-fit:contain}.hue-rule-engine>span{display:grid;gap:1px}.hue-rule-engine small{color:var(--muted);font-size:8px}.hue-rule-engine strong{font-size:9.5px}.hue-rule-targets{display:flex;flex-wrap:wrap;gap:5px}.hue-rule-targets>span{padding:4px 7px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 9%,var(--panel));font-size:8.5px;font-weight:700}.hue-rule-details{display:grid;align-content:start;gap:5px;margin:0;padding-left:16px;color:var(--muted);font-size:9.5px;line-height:1.4}.hue-rule-issues{display:grid;gap:5px}.hue-rule-issues>span{display:flex;align-items:flex-start;gap:5px;padding:6px 7px;border-radius:7px;color:var(--muted);background:var(--panel);font-size:8.5px;line-height:1.35}.hue-rule-issues>span.warning{color:var(--warning);background:color-mix(in srgb,var(--warning) 8%,var(--panel))}.hue-rule-issues>span.error{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--panel))}.hue-rule-issues svg{flex:none;margin-top:1px}.hue-rule-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;padding-top:9px;border-top:1px solid var(--border)}.hue-rule-actions button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:35px}.hue-rule-editor{display:grid;gap:9px;padding-top:9px;border-top:1px solid var(--border)}.hue-rule-editor label{display:grid;gap:5px;color:var(--muted);font-size:9.5px;font-weight:700}.hue-rule-editor>div{display:flex;justify-content:flex-end;gap:6px}.hue-rule-editor button{min-height:35px}.credential-access-banner{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;border:1px solid var(--border);background:var(--panel-2)}.credential-access-banner.active{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 7%,var(--panel-2))}.credential-access-banner.warning-card{border-color:color-mix(in srgb,var(--warning) 38%,var(--border));background:color-mix(in srgb,var(--warning) 6%,var(--panel-2))}.credential-access-banner>svg{margin:0;color:var(--accent-strong)}.credential-access-banner.warning-card>svg{color:var(--warning)}.credential-access-banner>span{display:grid;gap:3px;min-width:0}.credential-access-banner small{color:var(--muted)}.credential-access-banner em{color:var(--danger);font-size:10px;font-style:normal}.credential-access-banner button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:41px;white-space:nowrap}.credential-access-banner button svg{margin:0}.integration-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-items:stretch;gap:10px}.integration-card{display:flex;flex-direction:column;gap:11px;min-width:0;min-height:316px;height:100%;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.integration-card:has(.homewizard-fleet-panel){grid-column:1 / -1}.integration-title{display:flex;align-items:flex-start;gap:10px;min-height:82px;height:82px;overflow:hidden}.integration-title>span{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:9px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.integration-title .provider-logo{display:block;width:21px;height:21px;object-fit:contain}.integration-title .provider-logo.hue{width:27px;height:16px}.integration-title .provider-logo.tuya{border-radius:4px}.integration-title .provider-logo.remeha,.integration-title .provider-logo.remeha_mqtt{width:27px;height:14px}.integration-title .provider-logo.homewizard{width:23px;height:23px}.integration-title .provider-logo.nest_protect,.integration-title .provider-logo.ring{width:24px;height:24px}.integration-title .provider-logo.zonneplan{width:23px;height:23px}.integration-title .provider-logo.victron{width:27px;height:20px}.integration-title .provider-logo.tap_electric{width:23px;height:23px}.integration-api-badge{display:inline-flex;align-items:center;align-self:flex-end;min-height:18px;padding:2px 6px;border:1px solid var(--border);border-radius:99px;color:var(--muted);background:var(--panel);font-size:8.5px;font-weight:750;line-height:1;white-space:nowrap}.integration-api-badge.local{color:var(--accent-strong);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 9%,var(--panel))}.integration-api-badge.cloud{color:var(--text);background:var(--panel)}.integration-title>div,.linked-integration>div:first-child{display:grid;gap:3px;min-width:0}.integration-title small,.linked-integration small{color:var(--muted);font-size:10px;line-height:1.35}.integration-title small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.linked-integration-stack{display:flex;flex-direction:column;gap:9px}.linked-integration{display:grid;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:10px;min-height:144px;height:144px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.linked-integration:has(em){height:auto}.linked-integration>div:first-child{grid-template-columns:10px minmax(0,1fr)}.linked-integration strong,.linked-integration small,.linked-integration em{grid-column:2;overflow:hidden;text-overflow:ellipsis}.linked-integration strong{white-space:nowrap}.linked-integration .integration-last-sync{color:var(--faint);font-variant-numeric:tabular-nums}.linked-integration em{color:var(--danger);font-size:9px;font-style:normal;line-height:1.35}.linked-integration .status-dot.connected{background:var(--positive);box-shadow:0 0 0 3px color-mix(in srgb,var(--positive) 13%,transparent),0 0 7px color-mix(in srgb,var(--positive) 38%,transparent)}.linked-integration .status-dot.error,.linked-integration .status-dot.degraded{background:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 13%,transparent),0 0 7px color-mix(in srgb,var(--danger) 38%,transparent)}.linked-integration>div:last-child,.automation-inline-actions,.task-actions{display:flex;align-items:center;gap:6px}.linked-integration>div:last-child{justify-content:flex-end}.linked-integration .secondary{min-height:34px;font-size:10.5px}.integration-add{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:42px;height:42px;margin-top:auto;border:1px dashed var(--border);border-radius:9px;color:var(--muted);background:transparent}.integration-add:hover{color:var(--text);background:var(--hover)}.integration-form{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.automation-form-grid{display:grid;gap:8px}.automation-form-grid label,.device-editor label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:600}.automation-form-grid input,.automation-form-grid textarea,.automation-form-grid select,.device-editor input,.device-editor select{width:100%;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--input)}.automation-form-grid textarea{min-height:92px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;line-height:1.4}.automation-form-grid textarea.secret-textarea:not(:placeholder-shown){-webkit-text-security:disc}.credential-instruction{display:grid;grid-template-columns:20px minmax(0,1fr) 36px;align-items:center;gap:7px;padding:9px;border-radius:9px;background:var(--panel)}.credential-instruction>span{display:grid;min-width:0;gap:2px}.credential-instruction strong{font-size:10px}.credential-instruction small{color:var(--muted);font-size:9px;line-height:1.35}.credential-instruction code{overflow:hidden;color:var(--muted);font-size:9px;white-space:nowrap;text-overflow:ellipsis}.credential-replace{padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.muted-line{color:var(--muted)}.hue-bridge-list{display:grid;gap:7px}.hue-bridge-list>div{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.hue-bridge-list span{display:grid;min-width:0;gap:2px}.hue-bridge-list small{color:var(--muted);font-size:9px}.hue-bridge-list .primary{min-height:34px;white-space:nowrap}.homewizard-device-summary{display:grid;gap:2px}.homewizard-device-summary small{color:var(--muted);font-size:9px}.homewizard-device-list{max-height:290px;overflow-y:auto;padding-right:2px}.homewizard-device-list .status-dot.connected{flex:none;background:var(--positive);box-shadow:0 0 0 3px color-mix(in srgb,var(--positive) 13%,transparent)}.homewizard-device-list .status-dot.error{flex:none;background:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 13%,transparent)}.integration-card:has(.homewizard-pairing),.integration-card:has(.zonneplan-pairing),.integration-card:has(.tesla-pairing),.integration-card:has(.integration-provider-notice){grid-column:span 2}.integration-card:has(.ebusd-integration-form){grid-column:1 / -1}.ebusd-integration-form{gap:16px}.ebusd-layer-status{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ebusd-layer-status>span{display:grid;gap:4px;min-height:64px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.ebusd-layer-status small{color:var(--muted);font-size:10px}.ebusd-layer-status strong{font-size:12px}.ebusd-layer-status .ok strong{color:var(--positive)}.ebusd-layer-status .failed strong{color:var(--danger)}.ebusd-form-section{display:grid;gap:8px}.ebusd-form-section h4{margin:0;font-size:12px}.ebusd-form-section>small,.ebusd-advanced>small{color:var(--muted);line-height:1.45}.ebusd-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ebusd-advanced{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.ebusd-advanced summary{cursor:pointer;color:var(--text);font-size:11px;font-weight:700}.ebusd-advanced[open] summary{margin-bottom:10px}.ebusd-adapter-confirm{margin:0}.integration-provider-notice{grid-template-columns:18px minmax(0,1fr);align-items:start}.integration-provider-notice>span{display:grid;gap:3px;min-width:0}.integration-provider-notice small{color:var(--muted);line-height:1.4}.integration-provider-notice a{display:inline-flex;align-items:center;gap:4px;width:fit-content;color:var(--accent-strong);font-size:9.5px;font-weight:700}.tesla-pairing .credential-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.tesla-pairing .info-card{display:grid;gap:3px}.tesla-pairing .info-card small{overflow-wrap:anywhere}.tesla-pairing button:disabled{cursor:not-allowed;opacity:.45}.energy-dashboard{display:grid;max-width:1450px;margin-inline:auto;gap:14px}.energy-dashboard-loading{display:flex;align-items:center;justify-content:center;gap:9px;min-height:320px;color:var(--muted)}.energy-live-hero{border:1px solid var(--border);background:var(--panel)}.energy-live-hero{overflow:hidden;padding:24px;border-radius:16px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent) 7%,var(--panel)) 0,var(--panel) 52%)}.energy-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.energy-section-heading h2{margin:4px 0 3px}.energy-section-heading p{margin:0;color:var(--muted);font-size:10px}.energy-section-heading>small{color:var(--faint);font-size:9px;font-variant-numeric:tabular-nums}.live-pill{display:inline-flex;align-items:center;gap:6px;color:var(--accent-strong);font-size:9px;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.live-pill i{width:7px;height:7px;border-radius:50%;background:var(--positive);box-shadow:0 0 0 5px color-mix(in srgb,var(--positive) 12%,transparent);animation:energy-live-pulse 1.8s ease-in-out infinite}.energy-flow-network{display:grid;grid-template-columns:minmax(460px,1.15fr) minmax(310px,.85fr);align-items:stretch;gap:18px;margin-top:8px}.energy-flow-map{position:relative;width:100%;height:390px;margin:0}.energy-flow-map>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.flow-path{fill:none;stroke:color-mix(in srgb,var(--chart-3) 72%,var(--border));stroke-width:2.5;stroke-linecap:round;opacity:.28;transition:opacity .45s ease,stroke-width .45s ease}.flow-path.active{stroke-width:3;opacity:1}.flow-path.grid{stroke:color-mix(in srgb,var(--chart-2) 76%,var(--border))}.flow-path.battery{stroke:color-mix(in srgb,var(--chart-4) 78%,var(--border))}.flow-path.ev{stroke:color-mix(in srgb,var(--chart-5) 78%,var(--border))}.flow-path.reverse{animation-direction:reverse}.energy-flow-node{position:absolute;z-index:1;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;width:144px;min-width:144px;min-height:68px;padding:10px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--panel-2) 96%,transparent);box-shadow:0 8px 28px color-mix(in srgb,var(--shadow) 58%,transparent);transform:translate(-50%,-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.energy-flow-node>span{grid-row:1 / 4;display:grid;place-items:center;width:29px;height:29px;border-radius:9px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 11%,var(--panel))}.energy-flow-node small{color:var(--muted);font-size:8.5px;font-weight:700;text-transform:uppercase}.energy-flow-node strong{font-size:15px;font-variant-numeric:tabular-nums}.energy-flow-node em{color:var(--faint);font-size:8.5px;font-style:normal}.energy-flow-node.solar{top:14.1%;left:50%}.energy-flow-node.grid{top:50%;left:16%}.energy-flow-node.home{top:50%;left:50%;border-color:color-mix(in srgb,var(--accent) 32%,var(--border));box-shadow:0 0 32px color-mix(in srgb,var(--accent) 10%,transparent)}.energy-flow-node.battery{top:50%;left:84%}.energy-flow-node.ev{top:85.9%;left:50%}.energy-flow-loads{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;max-height:390px;padding:13px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--panel-2) 82%,transparent)}.energy-load-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:9px}.energy-load-heading>div{display:grid;gap:2px}.energy-load-heading strong{font-size:10px}.energy-load-heading small,.energy-load-heading>span{color:var(--faint);font-size:8px}.energy-flow-load-list{min-height:0;overflow-y:auto;padding-right:3px;scrollbar-width:thin}.energy-flow-load-list article{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(80px,1fr) 58px;align-items:center;gap:8px;min-height:37px;padding:6px 4px;border-top:1px solid var(--border)}.energy-flow-load-list article>span{display:grid;min-width:0}.energy-flow-load-list article strong{overflow:hidden;font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.energy-flow-load-list article small{overflow:hidden;color:var(--faint);font-size:7.5px;text-overflow:ellipsis;white-space:nowrap}.energy-flow-load-list article>i{height:7px;overflow:hidden;border-radius:5px;background:var(--border)}.energy-flow-load-list article b{display:block;height:100%;border-radius:inherit;background:var(--accent)}.energy-flow-load-list article.major b{background:var(--warning)}.energy-flow-load-list article>em{color:var(--muted);font-size:8.5px;font-style:normal;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.energy-victron-flow{position:relative;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.1fr) minmax(0,1fr);align-items:stretch;gap:clamp(48px,5%,72px);min-height:650px;margin-top:22px}.energy-victron-flow>svg{position:absolute;z-index:0;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.victron-flow-column{position:relative;z-index:1;display:flex;flex-direction:column;gap:20px;min-width:0}.victron-flow-column.left .generator{margin-top:auto}.victron-flow-column.center{gap:0}.energy-victron-flow .flow-path{stroke:var(--accent);stroke-width:2;opacity:.24;transition:opacity .35s ease,stroke-width .35s ease}.energy-victron-flow .flow-path.active{stroke-width:3;opacity:1}.energy-victron-flow .flow-port,.energy-victron-flow .flow-junction{fill:var(--accent);stroke:var(--panel);stroke-width:3;opacity:.36;transition:opacity .35s ease}.energy-victron-flow .flow-port{opacity:.78}.energy-victron-flow .flow-junction.active{opacity:1}.energy-victron-flow .flow-particle{fill:var(--accent);opacity:0;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--accent) 36%,transparent));transition:opacity .35s ease}.energy-victron-flow .flow-particle.active{opacity:1}.victron-flow-gap{flex:1 1 44px;min-height:32px}.victron-flow-card{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.victron-flow-card.grid{min-height:176px}.victron-flow-card.inverter{min-height:176px;justify-content:center}.victron-flow-card.battery{background:linear-gradient(145deg,var(--panel-2),color-mix(in srgb,var(--chart-4) 8%,var(--panel)))}.victron-flow-card.evcs{min-height:200px}.victron-flow-title{display:flex;align-items:flex-start;gap:8px;min-width:0}.victron-flow-title>svg{flex:none;color:var(--accent-strong)}.victron-flow-title>strong{flex:1 1 auto;min-width:0;overflow:visible;font-size:14px;line-height:1.2;text-overflow:clip;white-space:normal}.victron-flow-card.generator .victron-flow-title{align-items:flex-start}.victron-flow-card.generator .victron-flow-title>strong{line-height:1.2;white-space:normal}.victron-flow-value{margin-top:10px;font-size:36px;line-height:1;font-weight:680;font-variant-numeric:tabular-nums}.victron-flow-value.state{font-size:31px}.victron-flow-card>small{margin-top:auto;color:var(--muted);font-size:9.5px;line-height:1.35}.victron-detail-list{display:grid;gap:0;max-height:132px;overflow-y:auto;margin-top:8px;border-top:1px solid var(--border);scrollbar-width:thin}.victron-detail-list span{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:43px;border-bottom:1px solid var(--border)}.victron-detail-list small{display:grid;overflow:hidden;color:var(--text);font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.victron-detail-list small em{color:var(--faint);font-size:8px;font-style:normal}.victron-detail-list strong{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-solar-today{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.victron-solar-today>span{display:grid;min-width:0;gap:4px}.victron-solar-today>span>small{color:var(--muted);font-size:9px}.victron-solar-today .energy-provider-badge{justify-self:start;margin-left:0}.victron-solar-today>strong{font-size:19px;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-solar-today>strong em{color:var(--muted);font-size:10px;font-style:normal}.victron-flow-card.solar .victron-detail-list{max-height:none;overflow:visible;margin-top:0;border-top:0}.victron-flow-card.solar .victron-detail-list span{min-height:43px}.victron-flow-card.solar .victron-detail-list span.stale{border-bottom-style:dashed}.victron-flow-card.solar .victron-detail-list small{font-size:11px;line-height:1.25;text-overflow:clip;white-space:normal}.victron-flow-card.solar .victron-detail-list small em{margin-top:3px;font-size:9px}.victron-solar-values{display:grid;flex:none;gap:2px;text-align:right}.victron-solar-values>strong{font-size:10.5px}.victron-solar-values>em{color:var(--muted);font-size:8px;font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-grid-today{margin-top:10px;padding:10px 0;border-top:1px solid var(--border)}.victron-grid-today>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.victron-grid-today>section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:9px}.victron-grid-today>section>span{display:grid;min-width:0;gap:4px;padding:0 10px}.victron-grid-today>section>span:first-child{padding-left:0}.victron-grid-today>section>span:last-child{padding-right:0;border-left:1px solid var(--border)}.victron-grid-today small{color:var(--muted);font-size:9px}.victron-grid-today .energy-provider-badge{flex:none;margin-left:0}.victron-grid-today strong{font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-grid-today strong em{color:var(--muted);font-size:9px;font-style:normal}.victron-grid-settlement{padding:10px 0;border-top:1px solid var(--border)}.victron-grid-settlement>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.victron-grid-settlement>div small{color:var(--muted);font-size:9px;white-space:nowrap}.victron-grid-settlement>div .energy-provider-badge{flex:none;margin-left:0}.victron-grid-settlement>section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:9px}.victron-grid-settlement>section>span{display:grid;min-width:0;gap:4px;padding:0 10px}.victron-grid-settlement>section>span:first-child{padding-left:0}.victron-grid-settlement>section>span:nth-child(2){padding-right:0;border-left:1px solid var(--border)}.victron-grid-settlement>section>span:last-child{grid-column:1 / -1;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;margin-top:9px;padding:9px 0 0;border-top:1px solid var(--border)}.victron-grid-settlement section small{color:var(--muted);font-size:9px}.victron-grid-settlement section strong{overflow:hidden;font-size:13px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.victron-grid-settlement>em{display:block;margin-top:6px;color:var(--faint);font-size:8.5px;line-height:1.25;font-style:normal}.victron-grid-settlement section .positive strong{color:var(--positive)}.victron-grid-settlement.mismatch>em{color:var(--warning)}.victron-grid-phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:8px;border-top:1px solid var(--border)}.victron-grid-phases>span{display:grid;grid-template-rows:14px 23px 25px;align-items:center;min-width:0;padding:9px 8px 0}.victron-grid-phases>span:first-child{padding-left:0}.victron-grid-phases>span:last-child{padding-right:0}.victron-grid-phases>span+span{border-left:1px solid var(--border)}.victron-grid-phases small{color:var(--muted);font-size:10.5px;font-weight:650;line-height:1}.victron-grid-phases strong{align-self:center;font-size:15px;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-grid-phases em{align-self:end;display:grid;gap:3px;color:var(--muted);font-size:9.5px;line-height:1;font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.victron-inline-metrics{display:grid;gap:0;margin-top:9px;border-top:1px solid var(--border);font-variant-numeric:tabular-nums}.victron-inline-metrics>span{display:grid;overflow:hidden;min-width:0;gap:4px;padding:9px 8px 0}.victron-inline-metrics>span:first-child{padding-left:0}.victron-inline-metrics>span:last-child{padding-right:0}.victron-inline-metrics>span+span{border-left:1px solid var(--border)}.victron-inline-metrics small{color:var(--muted);font-size:8.5px}.victron-inline-metrics strong{overflow:hidden;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.victron-flow-card.inverter .victron-inline-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.victron-flow-card.generator .victron-inline-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.victron-inverter-temperatures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:9px;border-top:1px solid var(--border)}.victron-inverter-temperatures span{display:grid;min-width:0;gap:4px;padding:9px 8px 0}.victron-inverter-temperatures span:first-child{padding-left:0}.victron-inverter-temperatures span:last-child{padding-right:0}.victron-inverter-temperatures span+span{border-left:1px solid var(--border)}.victron-inverter-temperatures small{color:var(--muted);font-size:9px}.victron-inverter-temperatures strong{overflow:hidden;font-size:11px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.victron-flow-card.loads .victron-flow-title>strong{font-size:14px}.victron-flow-card.loads>small{font-size:10px;line-height:1.35}.victron-flow-card.loads .energy-flow-load-list{margin-top:10px;border-bottom:1px solid var(--border)}.victron-flow-card.loads .energy-flow-load-list article{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 8px;gap:7px 12px;min-height:62px;padding-block:9px}.victron-flow-card.loads .energy-flow-load-list article:first-child{border-top:1px solid var(--border)}.victron-flow-card.loads .energy-flow-load-list article>span{grid-column:1;grid-row:1}.victron-flow-card.loads .energy-flow-load-list article>i{grid-column:1 / -1;grid-row:2}.victron-flow-card.loads .energy-flow-load-list article>em{grid-column:2;grid-row:1;align-self:center;font-size:11px}.victron-flow-card.loads .energy-flow-load-list article strong{overflow:visible;font-size:11px;line-height:1.25;text-overflow:clip;white-space:normal}.victron-flow-card.loads .energy-flow-load-list article small{margin-top:3px;font-size:9px}.victron-battery-overview{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:16px;margin-top:14px}.victron-soc-ring{display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:conic-gradient(var(--chart-4) var(--battery-soc),color-mix(in srgb,var(--chart-4) 12%,var(--border)) 0);box-shadow:0 0 24px color-mix(in srgb,var(--chart-4) 12%,transparent)}.victron-soc-ring:before{grid-area:1 / 1;width:88px;height:88px;border-radius:50%;background:var(--panel-2);content:""}.victron-soc-ring>span{z-index:1;grid-area:1 / 1;display:grid;text-align:center}.victron-soc-ring strong{font-size:28px;line-height:1;font-variant-numeric:tabular-nums}.victron-soc-ring small,.victron-battery-summary small{margin-top:4px;color:var(--muted);font-size:9px}.victron-battery-summary{display:grid;min-width:0}.victron-battery-summary>strong{font-size:15px}.victron-battery-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:9px;border-top:1px solid var(--border)}.victron-battery-metrics span{display:grid;min-width:0;min-height:46px;gap:4px;padding:9px 8px}.victron-battery-metrics span:nth-child(3n+1){padding-left:0}.victron-battery-metrics span:nth-child(3n){padding-right:0}.victron-battery-metrics span:not(:nth-child(3n+1)){border-left:1px solid var(--border)}.victron-battery-metrics span:nth-child(n+4){border-top:1px solid var(--border)}.victron-battery-metrics small{color:var(--muted);font-size:9px}.victron-battery-metrics strong{overflow:hidden;font-size:12px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.victron-battery-modules{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px;margin-top:9px;padding-top:9px;border-top:1px solid var(--border)}.victron-battery-modules>span{grid-column:1 / -1;display:flex;gap:5px}.victron-battery-modules i{flex:1;min-width:0;height:8px;border-radius:3px;background:var(--border)}.victron-battery-modules i.online{background:var(--positive);box-shadow:0 0 7px color-mix(in srgb,var(--positive) 28%,transparent)}.victron-battery-modules small{color:var(--muted);font-size:8.5px}.victron-battery-modules strong{color:var(--positive);font-size:8.5px}.victron-time-to-go{display:grid;gap:3px;margin-top:10px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--panel) 68%,transparent)}.victron-time-to-go small,.victron-time-to-go em{color:var(--muted);font-size:9px;font-style:normal}.victron-time-to-go strong{font-size:20px;font-variant-numeric:tabular-nums}.victron-live-dot{display:inline-flex;align-items:center;gap:4px;margin-left:auto;color:var(--positive);font-size:7.5px;font-weight:750;text-transform:uppercase}.victron-live-dot:before{width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,var(--positive) 12%,transparent);content:"";animation:energy-live-pulse 1.8s ease-in-out infinite}.energy-provider-badge{display:inline-flex;align-items:center;gap:4px;min-width:0;margin-left:auto;padding:3px 6px;border:1px solid var(--border);border-radius:6px;color:var(--muted);background:color-mix(in srgb,var(--panel) 76%,transparent);font-size:8px;font-weight:750;line-height:1;text-transform:uppercase;white-space:nowrap}.energy-provider-badge .provider-logo{flex:none;width:14px;height:14px;object-fit:contain}.energy-provider-badge.victron .provider-logo{width:17px}.energy-provider-badge.alfen .provider-logo{width:16px;height:16px}.energy-provider-badge>i{flex:none;width:4px;height:4px;border-radius:50%;background:var(--positive);box-shadow:0 0 0 2px color-mix(in srgb,var(--positive) 12%,transparent);animation:energy-live-pulse 1.8s ease-in-out infinite}.victron-flow-column.left .victron-flow-title .energy-provider-badge>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.victron-flow-column.left .victron-flow-title .energy-provider-badge{padding-inline:4px}.victron-ev-headline{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:9px}.victron-ev-headline .victron-flow-value{margin-top:0}.victron-ev-headline>span{display:grid;min-width:0;gap:3px;text-align:right}.victron-ev-headline>span strong{overflow:hidden;font-size:10.5px;text-overflow:ellipsis;white-space:nowrap}.victron-ev-headline>span small{color:var(--muted);font-size:9px}.victron-ev-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:9px;border-top:1px solid var(--border)}.victron-ev-metrics span{display:grid;min-width:0;min-height:44px;gap:3px;padding:9px 8px}.victron-ev-metrics span:nth-child(odd){padding-left:0}.victron-ev-metrics span:nth-child(2n){padding-right:0;border-left:1px solid var(--border)}.victron-ev-metrics span:nth-child(n+3){border-top:1px solid var(--border)}.victron-ev-metrics small{color:var(--muted);font-size:8.5px}.victron-ev-metrics strong{overflow:hidden;font-size:11px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.victron-ev-credit{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;margin-top:9px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--positive) 34%,var(--border));border-radius:9px;background:color-mix(in srgb,var(--positive) 7%,var(--panel))}.victron-ev-credit>div{display:grid;min-width:0;gap:3px}.victron-ev-credit>div small,.victron-ev-credit>div em,.victron-ev-credit>span small{color:var(--muted);font-size:8.5px;font-style:normal}.victron-ev-credit>div strong{color:var(--positive);font-size:15px;font-variant-numeric:tabular-nums}.victron-ev-credit>div em{line-height:1.35;white-space:normal}.victron-ev-credit>span{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;min-width:0;text-align:left}.victron-ev-credit>span .energy-provider-badge{margin-left:0}.victron-ev-credit>span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.victron-ev-credit.unavailable{border-style:dashed;background:color-mix(in srgb,var(--panel) 74%,transparent)}.victron-ev-credit.unavailable>div strong{color:var(--muted)}.victron-ev-sources{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:9px;border-top:1px solid var(--border)}.victron-ev-sources>span{display:grid;min-width:0;gap:4px;padding:9px 6px}.victron-ev-sources>span:first-child{padding-left:0}.victron-ev-sources>span:last-child{padding-right:0}.victron-ev-sources>span+span{border-left:1px solid var(--border)}.victron-ev-sources small{color:var(--faint);font-size:8px;text-transform:uppercase}.victron-ev-sources .energy-provider-badge{justify-self:start;max-width:100%;margin-left:0;padding:0;border:0;background:transparent}.victron-ev-sources .energy-provider-badge>span{overflow:hidden;text-overflow:ellipsis}.victron-ev-sources .energy-provider-badge .provider-logo{width:13px;height:13px}.victron-utility-row{position:relative;z-index:1;display:grid;grid-template-columns:1fr;gap:14px;min-width:0}.energy-water-node{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;width:100%;min-height:80px;padding:13px 14px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2);text-align:left}.energy-water-node.stale{border-style:dashed}.energy-water-node>svg{grid-row:1 / 3;color:var(--chart-6)}.energy-water-node strong{font-size:15px;font-variant-numeric:tabular-nums}.energy-water-node small{margin-top:4px;color:var(--muted);font-size:9px}.energy-water-node .energy-provider-badge{position:absolute;top:10px;right:10px;margin-left:0}.status-badge{padding:4px 7px;border:1px solid var(--border);border-radius:99px;font-size:8.5px;font-weight:700}.status-badge.good{color:var(--positive);border-color:color-mix(in srgb,var(--positive) 25%,var(--border));background:color-mix(in srgb,var(--positive) 7%,var(--panel))}.status-badge.warning{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 25%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--panel))}.soc-gauge{position:relative;display:grid;place-items:center;width:150px;height:150px;margin:5px auto 14px;border-radius:50%;background:conic-gradient(var(--accent) var(--soc),var(--panel-2) 0);box-shadow:inset 0 0 0 1px var(--border),0 0 28px color-mix(in srgb,var(--accent) 10%,transparent)}.soc-gauge:before{position:absolute;width:120px;height:120px;border-radius:50%;background:var(--panel);content:""}.soc-gauge>div{position:relative;z-index:1;display:grid;text-align:center}.soc-gauge strong{font-size:28px;font-variant-numeric:tabular-nums}.soc-gauge small{color:var(--muted);font-size:8.5px}.battery-metrics,.ev-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.battery-metrics span,.ev-session-grid span{display:grid;gap:2px;padding:8px;border-radius:9px;background:var(--panel-2)}.battery-metrics small,.ev-session-grid small{color:var(--muted);font-size:8px}.battery-metrics strong,.ev-session-grid strong{font-size:10px;font-variant-numeric:tabular-nums}.battery-modules{display:grid;gap:6px;margin-top:11px;text-align:center}.battery-modules>span{display:flex;justify-content:center;gap:5px}.battery-modules i{width:20px;height:7px;border-radius:3px;background:var(--border)}.battery-modules i.online{background:var(--positive);box-shadow:0 0 8px color-mix(in srgb,var(--positive) 30%,transparent)}.battery-modules small{color:var(--muted);font-size:8px}.ev-status{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-height:110px;padding:12px;border-radius:11px;background:var(--panel-2)}.ev-status>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;color:var(--chart-5);background:color-mix(in srgb,var(--chart-5) 11%,var(--panel))}.ev-status>div{display:grid;gap:3px}.ev-status small,.ev-status p{margin:0;color:var(--muted);font-size:8.5px}.ev-status strong{font-size:12px}.ev-session-grid{margin-top:9px}@keyframes energy-flow-forward{to{stroke-dashoffset:-26}}@keyframes energy-live-pulse{0%,to{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}.credential-vault{display:grid;gap:10px}.credential-vault>.info-card:first-child{display:flex;align-items:flex-start;gap:10px}.credential-vault>.info-card:first-child span{display:grid;gap:3px}.credential-vault>.info-card:first-child small{color:var(--muted)}.vault-card{display:grid;gap:10px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.vault-card-heading{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:9px}.vault-card-heading>div{display:grid;gap:3px}.vault-card-heading small{color:var(--muted)}.vault-editor{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.vault-editor textarea{width:100%;padding:8px 9px;border:1px solid var(--border);border-radius:9px;background:var(--input);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;resize:vertical}.automation-inline-actions{justify-content:flex-end}.zonneplan-pairing .automation-inline-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:stretch;gap:8px}.zonneplan-pairing .automation-inline-actions button{width:100%;min-height:41px;height:auto;white-space:normal}.room-heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.room-heading-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:41px}.room-type-legend{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:7px}.room-type-legend span{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:9px}.room-type-legend svg{color:var(--accent-strong)}.room-create{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:12px;padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.room-create label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:600}.room-create input{width:100%;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--input)}.room-create>div{display:flex;align-items:center;gap:7px}.room-selection-bar{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.room-selection-bar>span{display:inline-flex;align-items:center;gap:6px;margin-right:auto;color:var(--accent-strong);font-size:10.5px;font-weight:700}.room-selection-rename,.room-selection-move{display:flex;align-items:center;gap:8px}.room-selection-rename input,.room-selection-bar select{min-width:180px;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--input)}.room-connection-layer{display:grid;gap:16px;margin-bottom:16px}.connected-room-cluster{position:relative}.connected-room-cluster:before{position:absolute;z-index:0;top:50%;right:25%;left:25%;height:1px;background:color-mix(in srgb,var(--accent) 50%,var(--border));content:""}.connected-room-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:190px}.connected-room-cards .room-card{position:relative;z-index:1}.connected-room-cluster .room-controller-tile{position:absolute;z-index:2;top:50%;left:50%;display:block;width:min(174px,calc(100% - 24px));height:auto;padding:9px;box-shadow:0 0 0 4px color-mix(in srgb,var(--panel) 88%,transparent);transform:translate(-50%,-50%)}.room-controller-tile .room-device-list{display:flex;grid-column:auto}.room-controller-device{display:inline-flex;align-items:center;min-width:0;max-width:100%;gap:5px;padding:4px 7px;border-radius:99px;color:var(--muted);background:var(--panel);font-size:9.5px}.room-controller-device .room-device-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.room-controller-tile.low-battery{border-color:color-mix(in srgb,var(--warning) 58%,var(--border))}.room-controller-tile.low-battery .room-device-type:last-child{color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,var(--panel))}.room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:9px}.room-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.room-grid>.room-card,.connected-room-cards>.room-card{width:100%;height:224px;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.room-grid>.room-card.editing,.connected-room-cards>.room-card.editing{grid-template-rows:auto minmax(0,1fr) auto}.room-card.unassigned{border-style:dashed;background:color-mix(in srgb,var(--panel-2) 82%,var(--bg))}.room-card>div:first-child{display:grid;gap:3px}.room-card small{color:var(--muted);font-size:10px}.room-active-scene{min-width:0;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:4px;margin-top:3px;color:var(--muted);font-size:10px}.room-active-scene svg{color:var(--accent)}.room-active-scene strong{overflow:hidden;color:var(--text);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.room-card-actions{display:flex;align-items:flex-start;gap:4px}.room-device-list{display:flex;grid-column:1 / -1;flex-wrap:wrap;gap:5px}.room-card:not(.room-controller-tile)>.room-device-list{min-height:0;align-content:flex-start;overflow-y:auto;overscroll-behavior:contain;padding-right:3px;scrollbar-gutter:stable}.room-device-list label{display:inline-flex;align-items:center;max-width:100%;gap:5px;padding:4px 7px;border:1px solid transparent;border-radius:99px;color:var(--muted);background:var(--panel);font-size:9.5px;cursor:grab}.room-device-list label:active{cursor:grabbing}.room-device-list label.selected{border-color:var(--accent);color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.room-device-list label input{width:12px;height:12px;margin:0;accent-color:var(--accent)}.room-entity-chip{display:inline-grid;min-width:0;max-width:100%;gap:3px;padding:3px;border:1px solid transparent;border-radius:10px;background:var(--panel)}.room-entity-chip.linked{width:100%;border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--panel))}.room-entity-chip>label{width:100%;min-width:0;padding:1px 4px;background:transparent;cursor:grab}.room-link-count{display:inline-flex;align-items:center;gap:2px;padding:2px 5px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2));font-size:9px;font-weight:700}.room-resource-strip{display:flex;min-width:0;flex-wrap:wrap;gap:3px;padding:0 3px 2px}.room-resource-source{display:inline-flex;align-items:flex-start;min-width:0;max-width:100%;gap:3px;color:var(--muted);font-size:8.5px}.room-resource-source small{min-width:0;max-width:100%;overflow-wrap:anywhere;line-height:1.25;white-space:normal}.room-resource-source .room-device-provider{width:19px;height:14px}.room-unlink{display:inline-grid;width:17px;height:17px;min-height:0;place-items:center;padding:0;border:0;border-radius:99px;color:var(--muted);background:transparent}.room-unlink:hover,.room-unlink:focus-visible{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,transparent)}.room-device-list .room-device-name{min-width:0;overflow-wrap:anywhere;line-height:1.2;white-space:normal}.room-device-provider{display:inline-grid;place-items:center;width:23px;height:17px;flex:0 0 auto;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 9%,var(--panel-2));font-size:9px;font-weight:800;line-height:1}.room-device-provider img{display:block;object-fit:contain}.room-device-provider.hue img{width:18px;height:10px}.room-device-provider.tuya{background:color-mix(in srgb,var(--tuya-brand) 8%,var(--panel-2))}.room-device-provider.tuya img{width:13px;height:13px;border-radius:3px}.room-device-provider.smartthings{background:color-mix(in srgb,#1428a0 9%,var(--panel-2))}.room-device-provider.smartthings img,.room-device-provider.home_connect img{width:13px;height:13px}.room-device-provider.home_connect{background:color-mix(in srgb,#007f7b 9%,var(--panel-2))}.room-device-provider.netatmo{background:color-mix(in srgb,var(--netatmo-brand) 9%,var(--panel-2))}.room-device-provider.netatmo img{width:13px;height:13px}.room-device-provider.ariston{background:color-mix(in srgb,#d30c2f 8%,var(--panel-2))}.room-device-provider.ariston img{width:13px;height:13px}.room-device-provider.remeha,.room-device-provider.remeha_mqtt{background:color-mix(in srgb,#f4d000 10%,var(--panel-2))}.room-device-provider.remeha img,.room-device-provider.remeha_mqtt img{width:17px;height:8px}.room-device-provider.frigate{background:color-mix(in srgb,var(--muted) 9%,var(--panel-2))}.room-device-provider.frigate img{width:13px;height:13px}.room-device-provider.ring{background:color-mix(in srgb,var(--accent) 10%,var(--panel-2))}.room-device-provider.ring img{width:13px;height:13px}.room-device-provider.homewizard{background:color-mix(in srgb,var(--accent) 10%,var(--panel-2))}.room-device-provider.homewizard img{width:13px;height:13px}.room-device-provider.victron{background:color-mix(in srgb,#0066b3 10%,var(--panel-2))}.room-device-provider.victron img{width:16px;height:11px}.room-device-types{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto}.room-device-type{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 9%,var(--panel-2))}.climate-mode-glyph{display:inline-flex;align-items:center;justify-content:center;gap:1px}.climate-mode-glyph svg{width:9px;height:9px}.climate-mode-glyph.cooling{color:var(--chart-2)}.climate-mode-glyph.heating{color:var(--chart-4)}.room-device-list .room-empty{padding:4px 7px;color:var(--muted);font-size:9.5px;font-style:italic}.room-editor{display:grid;grid-column:1 / -1;gap:7px;padding-top:9px;border-top:1px solid var(--border)}.room-editor input{min-height:39px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--input)}.room-editor>div{display:flex;justify-content:flex-end;gap:6px}.smart-home-section-stack{container-type:inline-size}.device-browser-toolbar{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(190px,.8fr) minmax(150px,.55fr) auto auto;align-items:end;gap:10px;max-width:1450px;margin:0 auto 18px;padding:14px;border:1px solid var(--border);border-radius:15px;background:var(--panel)}.device-browser-toolbar>label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:10px;font-weight:650}.device-browser-toolbar input,.device-browser-toolbar select{width:100%;min-height:2.55rem;padding:8px 10px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--input)}.device-search-field{position:relative;align-self:end}.device-search-field>svg{position:absolute;z-index:1;bottom:13px;left:11px;color:var(--muted);pointer-events:none}.device-search-field input{padding-left:35px;padding-right:38px}.device-search-field .icon-button{position:absolute;right:5px;bottom:5px;min-height:31px;height:31px}.device-filter-result{display:grid;align-content:center;min-width:82px;min-height:2.55rem;padding:5px 10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.device-filter-result strong{font-size:13px;font-variant-numeric:tabular-nums}.device-filter-result small{color:var(--muted);font-size:9px}.device-filter-clear{min-height:2.55rem;white-space:nowrap}.device-filter-empty{max-width:1450px;margin:0 auto 18px;border:1px solid var(--border);border-radius:15px;background:var(--panel)}.device-category-disclosure{padding:0;overflow:hidden}.device-category-disclosure>summary,.device-integration-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none}.device-category-disclosure>summary::-webkit-details-marker,.device-integration-disclosure>summary::-webkit-details-marker{display:none}.device-category-disclosure>summary{min-height:72px;padding:16px 20px}.device-category-disclosure>summary:hover,.device-integration-disclosure>summary:hover{background:var(--hover)}.device-category-disclosure>summary:focus-visible,.device-integration-disclosure>summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-3px}.device-category-disclosure>summary>span:first-child{display:grid;gap:3px;min-width:0}.device-category-disclosure>summary p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-category-disclosure[open]>summary{border-bottom:1px solid var(--border)}.device-category-body{padding:16px 20px 20px}.device-disclosure-meta{display:inline-flex;align-items:center;gap:8px;flex:none;color:var(--muted)}.device-disclosure-meta b{display:grid;place-items:center;min-width:30px;height:30px;padding-inline:8px;border-radius:99px;background:var(--panel-2);font-size:11px;font-weight:650;font-variant-numeric:tabular-nums}.device-disclosure-meta svg{transition:transform .16s ease}.device-category-disclosure[open]>summary .device-disclosure-meta svg,.device-integration-disclosure[open]>summary .device-disclosure-meta svg{transform:rotate(180deg)}.device-integration-stack{display:grid;gap:10px}.device-integration-disclosure{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.device-integration-disclosure>summary{min-height:58px;padding:10px 12px}.device-integration-disclosure[open]>summary{border-bottom:1px solid var(--border);background:var(--panel)}.device-integration-disclosure>.device-grid{padding:12px}.device-integration-identity{display:flex;align-items:center;gap:10px;min-width:0}.device-integration-identity>span:first-child{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:9px;background:var(--panel)}.device-integration-identity .provider-logo{display:block;width:22px;height:22px;object-fit:contain}.device-integration-identity>span:last-child{display:grid;gap:2px;min-width:0}.device-integration-identity strong,.device-integration-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-integration-identity small{color:var(--muted);font-size:9.5px}.device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sensor-category-stack{display:grid;gap:16px}.sensor-category{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--border)}.sensor-category:first-child{padding-top:0;border-top:0}.sensor-category>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.sensor-category>header>div{display:grid;gap:3px}.sensor-category h3{margin:0;font-size:13px}.sensor-category p{margin:0;color:var(--muted);font-size:10px}.sensor-category>header>span{display:grid;place-items:center;min-width:28px;height:28px;padding-inline:8px;border-radius:99px;color:var(--muted);background:var(--panel-2);font-size:10px;font-variant-numeric:tabular-nums}.device-card{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) 36px;align-items:center;gap:10px;min-height:148px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.device-card.unavailable{opacity:.67}.mikrotik-device-card{align-content:start}.mikrotik-device-card.health-healthy{border-color:color-mix(in srgb,var(--positive) 34%,var(--border))}.mikrotik-device-card.health-attention{border-color:color-mix(in srgb,var(--warning) 52%,var(--border))}.mikrotik-device-card.health-offline{border-color:color-mix(in srgb,var(--danger) 48%,var(--border))}.device-icon{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.device-icon .room-device-provider{position:absolute;right:-6px;bottom:-5px;width:20px;height:15px;border:1px solid var(--panel-2)}.device-icon .room-device-provider.hue img{width:15px;height:9px}.device-icon .room-device-provider.tuya img,.device-icon .room-device-provider.netatmo img,.device-icon .room-device-provider.ariston img{width:11px;height:11px}.device-icon .room-device-provider.remeha img,.device-icon .room-device-provider.remeha_mqtt img{width:15px;height:7px}.device-icon .room-device-provider.frigate img,.device-icon .room-device-provider.homewizard img,.device-icon .room-device-provider.zonneplan img{width:11px;height:11px}.device-icon.branded-device .provider-logo{display:block;width:23px;height:23px;object-fit:contain}.device-icon.branded-device.hue{background:color-mix(in srgb,var(--accent) 6%,var(--panel))}.device-icon.branded-device.hue .provider-logo{width:29px;height:17px}.device-icon.branded-device.tuya{background:color-mix(in srgb,var(--tuya-brand) 9%,var(--panel))}.device-icon.branded-device.smartthings{background:color-mix(in srgb,#1428a0 9%,var(--panel))}.device-icon.branded-device.home_connect{background:color-mix(in srgb,#007f7b 9%,var(--panel))}.oauth-callback-card{display:grid;gap:4px}.oauth-callback-card small{min-width:0;overflow-wrap:anywhere}.device-icon.branded-device.tuya .provider-logo{border-radius:4px}.device-icon.branded-device.netatmo{background:color-mix(in srgb,var(--netatmo-brand) 9%,var(--panel))}.device-icon.branded-device.ring{background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.device-icon.branded-device.ariston{background:color-mix(in srgb,#d30c2f 8%,var(--panel))}.device-icon.branded-device.remeha,.device-icon.branded-device.remeha_mqtt{background:color-mix(in srgb,#f4d000 10%,var(--panel))}.device-icon.branded-device.remeha .provider-logo,.device-icon.branded-device.remeha_mqtt .provider-logo{width:30px;height:15px}.device-icon.branded-device.homewizard{background:color-mix(in srgb,var(--accent) 9%,var(--panel))}.device-icon.branded-device.zonneplan{background:color-mix(in srgb,#23d37a 12%,var(--panel))}.device-icon.branded-device.victron{background:color-mix(in srgb,#0066b3 10%,var(--panel))}.device-icon.branded-device.victron .provider-logo{width:29px;height:20px}.device-icon.branded-device.alfen{background:color-mix(in srgb,#008bd2 10%,var(--panel))}.device-icon.branded-device.alfen .provider-logo{width:30px;height:30px}:root[data-theme=dark] .provider-logo.remeha,:root[data-theme=dark] .provider-logo.remeha_mqtt,:root[data-theme=dark] .room-device-provider.remeha img,:root[data-theme=dark] .room-device-provider.remeha_mqtt img{filter:invert(1)}.device-icon>.climate-mode-glyph{gap:2px}.device-icon>.climate-mode-glyph svg{width:14px;height:14px}.device-card-heading{display:grid;gap:3px;min-width:0}.device-card-heading strong{display:block;overflow:visible;line-height:1.2;overflow-wrap:anywhere;white-space:normal;text-overflow:clip}.device-card-heading small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.device-card-heading small{color:var(--muted);font-size:10px;text-transform:capitalize}.device-card-heading .provider-context{color:var(--faint);font-size:9px;text-transform:none}.device-card-heading .device-alias-summary{color:var(--accent-strong);font-size:9px;text-transform:none}.device-metrics{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.mikrotik-details{grid-column:1 / -1;overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.mikrotik-details>summary{display:flex;min-height:38px;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;cursor:pointer;list-style:none}.mikrotik-details>summary::-webkit-details-marker{display:none}.mikrotik-details>summary>span{display:grid;grid-template-columns:16px auto minmax(0,1fr);align-items:center;gap:6px;min-width:0}.mikrotik-details>summary strong{font-size:10px}.mikrotik-details>summary small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.mikrotik-details>summary>svg{flex:none;color:var(--muted);transition:transform .15s ease}.mikrotik-details[open]>summary>svg{transform:rotate(180deg)}.mikrotik-details-body{display:grid;gap:8px;padding:0 9px 9px;border-top:1px solid var(--border)}.mikrotik-device-meta{margin:8px 0 0;color:var(--muted);font-size:9px;line-height:1.4;overflow-wrap:anywhere}.mikrotik-health-reasons{display:grid;grid-template-columns:16px minmax(0,1fr);gap:7px;padding:8px;border:1px solid color-mix(in srgb,var(--warning) 32%,var(--border));border-radius:8px;color:var(--warning);background:color-mix(in srgb,var(--warning) 7%,var(--panel))}.mikrotik-health-reasons>span{display:grid;gap:3px}.mikrotik-health-reasons small{font-size:9px;line-height:1.35}.mikrotik-port-list{display:grid;gap:7px}.mikrotik-port{display:grid;gap:7px;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.mikrotik-port.attention,.mikrotik-port.offline{border-color:color-mix(in srgb,var(--warning) 35%,var(--border))}.mikrotik-port>header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.mikrotik-port>header strong{overflow:hidden;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.mikrotik-port>header span{display:inline-flex;flex:none;align-items:center;gap:5px;color:var(--muted);font-size:8.5px;font-weight:700}.mikrotik-port>header i{width:6px;height:6px;border-radius:99px;background:var(--positive)}.mikrotik-port.offline>header i{background:var(--warning)}.mikrotik-port dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0}.mikrotik-port dl>div{display:grid;min-width:0;gap:2px}.mikrotik-port dt{color:var(--faint);font-size:7.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.mikrotik-port dd{display:grid;gap:1px;min-width:0;margin:0;color:var(--text);font-size:8.5px;line-height:1.35;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.mikrotik-port dd small{color:var(--muted);font-size:7.5px}.mikrotik-empty-ports{margin:0;color:var(--muted);font-size:9px}.ring-camera-media{display:grid;grid-column:1 / -1;gap:8px}.ring-camera-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.ring-camera-actions>*{flex:1 1 130px}.ring-camera-preview{position:relative;display:grid;min-height:150px;place-items:center;gap:8px;overflow:hidden;padding:8px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.ring-camera-preview img{display:block;width:100%;max-height:320px;border-radius:7px;object-fit:contain}.ring-camera-preview>span{position:absolute;display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:99px;color:var(--text);background:color-mix(in srgb,var(--panel) 88%,transparent);font-size:9.5px}.ring-camera-preview>small{color:var(--danger);font-size:9.5px}.ring-camera-preview>button{justify-self:end}.tap-device-card{grid-column:1 / -1}.tap-controls{display:grid;grid-column:1 / -1;gap:10px}.tap-controls>button{justify-self:start}.tap-control-panel{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.tap-control-panel>small[role=alert]{color:var(--danger)}.tap-control-panel h4{margin:4px 0 0;font-size:12px}.tap-control-panel label{display:grid;gap:5px;color:var(--muted);font-size:11px}.tap-control-panel input,.tap-control-panel select,.tap-control-panel textarea{width:100%;min-height:2.55rem;padding:7px 9px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--panel-2)}.tap-control-panel textarea{min-height:90px;resize:vertical;font-family:ui-monospace,monospace}.homewizard-firmware-panel{gap:10px}.homewizard-firmware-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.homewizard-firmware-summary>span{display:grid;gap:3px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.homewizard-firmware-summary small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.homewizard-firmware-summary strong{overflow:hidden;color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.homewizard-firmware-panel .firmware-message{color:var(--positive)}.homewizard-fleet-controls{display:grid;gap:8px}.homewizard-fleet-controls>button{justify-self:start}.homewizard-fleet-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.homewizard-fleet-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.homewizard-fleet-heading>span{display:grid;gap:2px;min-width:0}.homewizard-fleet-heading small{color:var(--muted);font-size:10px}.homewizard-fleet-device{display:grid;grid-template-columns:minmax(150px,.9fr) minmax(280px,2fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--panel-2)}.homewizard-fleet-device>header{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0}.homewizard-fleet-device>header i{width:7px;height:7px;border-radius:99px;background:var(--positive)}.homewizard-fleet-device.unavailable>header i{background:var(--warning)}.homewizard-fleet-device>header>span{display:grid;min-width:0;gap:2px}.homewizard-fleet-device>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homewizard-fleet-device>header small,.homewizard-fleet-device>header b{color:var(--muted);font-size:9px;font-weight:600}.homewizard-fleet-device dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.homewizard-fleet-device dl>div{min-width:0}.homewizard-fleet-device dt{color:var(--faint);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.homewizard-fleet-device dd{overflow:hidden;margin:2px 0 0;color:var(--text);font-size:10px;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.homewizard-fleet-device.paused>header i{background:var(--muted)}.homewizard-device-controls{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:220px}.homewizard-device-controls>span{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.homewizard-device-controls>span>span{display:grid;gap:1px;min-width:0;text-align:right}.homewizard-device-controls small{max-width:190px;color:var(--muted);font-size:9px;line-height:1.25}.homewizard-device-controls button{flex:none}.homewizard-fleet-error{grid-column:1 / -1;color:var(--danger);font-size:9px;overflow-wrap:anywhere}.homewizard-fleet-panel>.firmware-message{color:var(--positive);font-size:10px}@media(max-width:1200px){.homewizard-fleet-device{grid-template-columns:1fr}.homewizard-device-controls{justify-content:space-between;min-width:0}.homewizard-device-controls>span{justify-content:space-between;flex:1}.homewizard-device-controls>span>span{text-align:left}}@media(max-width:900px){.homewizard-fleet-device dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.zeromouse-setting-grid{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:9px;align-items:end}.zeromouse-setting-grid>label:not(.zeromouse-switch){min-width:0}.zeromouse-switch{display:flex!important;min-height:2.55rem;flex-direction:row!important;align-items:center;gap:8px!important;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text)!important}.zeromouse-switch input{width:auto!important;min-height:0!important;margin:0;accent-color:var(--accent)}.zeromouse-cat-list{display:grid;gap:8px}.zeromouse-cat-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(120px,auto) auto;gap:8px;align-items:center}.zeromouse-cat-row>input,.zeromouse-add-cat>input{min-height:2.55rem;padding:7px 9px;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--panel-2)}.zeromouse-add-cat{display:flex;gap:8px}.zeromouse-add-cat>input{flex:1;min-width:0}.zeromouse-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.zeromouse-filters>label{display:flex;flex-direction:row;align-items:center;gap:5px;min-height:2.4rem;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text)}.zeromouse-filters>label input[type=checkbox]{width:auto;min-height:0;margin:0;accent-color:var(--accent)}.zeromouse-filters>label input[type=date]{min-height:1.8rem;padding:2px 5px}.zeromouse-event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.zeromouse-event{overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.zeromouse-event>img,.zeromouse-no-image{display:flex;width:100%;aspect-ratio:4 / 3;object-fit:cover;align-items:center;justify-content:center;gap:7px;color:var(--muted);background:var(--panel)}.zeromouse-event>div{display:grid;gap:3px;padding:9px}.zeromouse-event small{color:var(--muted)}.zeromouse-event-assignment{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding-top:5px}.zeromouse-event-assignment select{min-width:0;min-height:2.55rem}.zeromouse-event-assignment button{min-height:2.55rem;white-space:nowrap}@media(max-width:620px){.zeromouse-setting-grid,.zeromouse-cat-row,.zeromouse-event-assignment{grid-template-columns:1fr}.zeromouse-add-cat{flex-direction:column}}.tap-control-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tap-actions{display:flex;justify-content:flex-end;gap:8px}.tesla-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tesla-status-grid>span{display:grid;gap:3px;min-width:0;padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.tesla-status-grid small{color:var(--muted);font-size:9px}.tesla-status-grid strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.tesla-cost-card{display:grid;gap:9px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.tesla-cost-card>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tesla-cost-card span{display:grid;gap:2px}.tesla-cost-card small{color:var(--muted)}.tesla-command-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tesla-command-grid>button{width:100%;min-height:2.55rem}.tesla-command-grid .danger{color:#fff;background:var(--danger-fill)}.tesla-controls .tap-control-row{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.tesla-controls .info-card a{display:inline-flex;align-items:center;gap:3px;color:var(--accent-strong)}.alfen-controls .tap-control-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.alfen-register-group{display:grid;min-width:0;gap:8px}.alfen-register-group .automation-table-wrap{max-height:420px;overflow:auto}.alfen-register-group th{position:sticky;z-index:1;top:0;background:var(--panel-2)}.alfen-register-group td:last-child{font-variant-numeric:tabular-nums}@media(max-width:720px){.tap-control-row,.tesla-controls .tap-control-row,.tesla-status-grid,.tesla-command-grid,.tesla-cost-card>div,.homewizard-firmware-summary,.homewizard-fleet-device dl{grid-template-columns:1fr}}.device-metric{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;min-height:42px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:8px;color:var(--muted);background:var(--panel)}.device-metric>span{display:grid;gap:1px;min-width:0}.device-metric small{overflow:hidden;color:var(--muted);font-size:8.5px;line-height:1;white-space:nowrap;text-overflow:ellipsis}.device-metric strong{overflow:hidden;color:var(--text);font-size:13px;line-height:1.15;white-space:nowrap;text-overflow:ellipsis}.device-metric.active{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 7%,var(--panel))}.device-metric.active strong{color:var(--accent-strong)}.device-metric:last-child:nth-child(odd){grid-column:1 / -1}.device-editor{position:relative;z-index:2;display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px;border-top:1px solid var(--border)}.device-editor>div{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:6px}.device-editor .field-help{color:var(--muted);font-size:9px;font-weight:400;line-height:1.35}.device-editor small[role=alert]{grid-column:1 / -1;color:var(--danger)}.device-alias-editor{display:grid!important;grid-column:1 / -1;justify-content:stretch!important;gap:7px!important}.device-alias-editor>span{color:var(--muted);font-size:10px;font-weight:600}.device-alias-list,.device-alias-suggestions{display:flex!important;grid-column:auto!important;flex-wrap:wrap;justify-content:flex-start!important;gap:6px!important}.device-alias-list>small{align-self:center;color:var(--faint);font-size:9px}.device-alias-chip{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 8px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 8%,var(--panel));font-size:9.5px}.device-alias-chip:hover{border-color:color-mix(in srgb,var(--danger) 38%,var(--border));color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--panel))}.device-alias-add{display:grid!important;grid-column:auto!important;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch!important;gap:6px!important}.device-alias-add .secondary{min-height:41px;white-space:nowrap}.device-alias-suggestions{align-items:center}.device-alias-suggestions>small{margin-right:2px;color:var(--muted);font-size:9px}.device-alias-suggestions .secondary{min-height:30px;padding:5px 8px;font-size:9px}.task-list{display:grid;gap:8px}.automation-task{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:13px;border:1px solid var(--border);border-radius:11px;background:var(--panel-2)}.automation-task.paused{opacity:.7}.automation-task.editing{opacity:1}.automation-task.running{opacity:1;border-color:color-mix(in srgb,var(--accent) 42%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--panel-2))}.task-status{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.automation-task>div:nth-child(2){display:grid;gap:3px;min-width:0}.automation-task small,.automation-task p{overflow:hidden;margin:0;color:var(--muted);font-size:10.5px;white-space:nowrap;text-overflow:ellipsis}.automation-task p{display:-webkit-box;line-height:1.35;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.automation-executor{display:inline-flex;align-items:center;width:fit-content;gap:5px;padding:3px 6px;border-radius:99px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 9%,var(--panel));font-size:8.5px;font-weight:750}.energy-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:min(540px,100%);margin:3px 0}.energy-plan{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:2px 8px;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--panel);font-variant-numeric:tabular-nums}.energy-plan b{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.energy-plan strong{overflow:hidden;font-size:11px;white-space:nowrap;text-overflow:ellipsis}.energy-plan small{grid-column:1 / -1}.energy-plan.pending strong{color:var(--muted);font-weight:550}.task-actions .secondary{min-height:36px;white-space:nowrap}.task-editor{display:grid;grid-column:1 / -1;gap:12px;padding-top:13px;border-top:1px solid var(--border)}.task-editor-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,.7fr) minmax(180px,1fr);gap:8px}.task-editor-grid.interval{grid-template-columns:minmax(0,2fr) minmax(160px,1fr)}.task-editor-grid.ai{grid-template-columns:repeat(3,minmax(0,1fr))}.task-editor label,.task-day-picker{color:var(--muted);font-size:10px;font-weight:600}.task-editor label{display:grid;gap:5px}.task-editor input:not([type=checkbox]),.task-editor select,.task-editor textarea{width:100%;min-height:41px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;color:var(--text);background:var(--input)}.task-editor textarea{min-height:132px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;line-height:1.45}.task-day-picker{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:0;padding:0;border:0}.task-day-picker legend{margin-bottom:6px}.task-day-picker label{display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px;border:1px solid var(--border);border-radius:8px;background:var(--panel);cursor:pointer}.task-day-picker input{width:14px;height:14px;margin:0 6px 0 0;accent-color:var(--accent-strong)}.task-prompt-field{min-width:0}.task-editor .info-card.compact{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px}.task-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px}.task-editor-actions button{min-height:41px}.run-status{width:fit-content;max-width:100%;overflow:hidden;padding:3px 7px;border-radius:99px;color:var(--muted);background:var(--panel);font-size:9.5px;white-space:nowrap;text-overflow:ellipsis}.run-status.completed{color:var(--positive);background:color-mix(in srgb,var(--positive) 9%,var(--panel))}.run-status.failed,.run-status.error{color:var(--danger);background:color-mix(in srgb,var(--danger) 9%,var(--panel))}.run-status.missed{color:var(--warning);background:color-mix(in srgb,var(--warning) 9%,var(--panel))}.run-status.running{display:inline-flex;align-items:center;gap:5px;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.automation-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:11px}.automation-table-wrap table{width:100%;border-collapse:collapse;font-size:11px}.automation-table-wrap th,.automation-table-wrap td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.automation-table-wrap th{color:var(--muted);background:var(--panel-2);font-weight:600}.automation-table-wrap tbody tr:last-child td{border-bottom:0}.automation-table-wrap td:nth-child(3){font-variant-numeric:tabular-nums;white-space:nowrap}@container (max-width: 1120px){.device-browser-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.device-search-field{grid-column:1 / -1}.device-filter-result,.device-filter-clear{width:100%}.device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (max-width: 620px){.device-browser-toolbar{grid-template-columns:1fr}.device-search-field{grid-column:auto}.device-category-disclosure>summary{align-items:flex-start}.device-category-disclosure>summary p{white-space:normal}.smart-home-section-stack .device-grid{grid-template-columns:1fr}}@media(max-width:980px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.command-chart-grid,.operations-report-grid,.trading-line-analysis-grid{grid-template-columns:1fr}.context-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.model-trigger small{display:none}.model-trigger{min-width:105px}.integration-grid,.device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.modal-backdrop{padding:10px}.settings-dialog{width:100%;max-width:100%;height:calc(100vh - 20px)}.app-shell{grid-template-columns:60px minmax(0,1fr)}.app-shell:has(.sidebar.collapsed){grid-template-columns:60px minmax(0,1fr)}.sidebar{width:60px;padding-inline:6px}.sidebar-resize-handle{display:none}.sidebar .brand>span:last-child,.sidebar .primary-nav span,.sidebar .sidebar-footer>button span,.sidebar .account div,.sidebar .account>svg,.sidebar-search,.chat-list,.sidebar .archive-toggle{display:none}.sidebar-top{flex-direction:column;height:88px}.primary-nav button,.sidebar-footer>button{justify-content:center;padding-inline:7px}.sidebar.collapsed{position:fixed;z-index:70;inset:0 auto 0 0;width:min(290px,calc(100vw - 38px));padding:10px 9px;border-right:1px solid var(--border);box-shadow:18px 0 45px #00000047}.mobile-sidebar-scrim{position:fixed;z-index:65;inset:0;display:block;width:100%;height:100%;padding:0;background:#00000057}.sidebar.collapsed .sidebar-top{flex-direction:row;height:42px}.sidebar.collapsed .brand>span:last-child,.sidebar.collapsed .primary-nav span,.sidebar.collapsed .sidebar-footer>button span{display:block}.sidebar.collapsed .account div{display:grid}.sidebar.collapsed .account{justify-content:flex-start;padding:7px}.sidebar.collapsed .account>svg{display:block}.sidebar.collapsed .sidebar-search{display:flex}.sidebar.collapsed .chat-list{display:block}.sidebar.collapsed .archive-toggle{display:flex}.sidebar.collapsed .primary-nav button,.sidebar.collapsed .sidebar-footer>button{justify-content:flex-start;padding:8px 10px}.message-column{width:calc(100% - 24px);padding-top:20px}.message{gap:9px}.message.user{max-width:90%}.message-actions{opacity:1}.message-analysis{padding:12px}.message-analysis-heading{align-items:flex-start;flex-direction:column;gap:8px}.message-analysis-heading>div:last-child{text-align:left}.smart-action-card{padding:12px}.smart-action-heading{grid-template-columns:34px minmax(0,1fr)}.smart-action-icon{width:34px;height:34px}.smart-action-heading>b{grid-column:2;width:fit-content}.smart-action-settings{grid-template-columns:repeat(2,minmax(0,1fr))}.composer-wrap{width:calc(100% - 16px)}.chart-summary,.gate-hero,.gate-metrics,.context-hero,.context-metrics{grid-template-columns:1fr}.model-trigger{min-width:82px;width:82px;padding:0 7px 0 10px;justify-content:space-between}.model-trigger span{display:block;max-width:56px}.model-trigger small{display:none}.model-popover{position:fixed;right:10px;bottom:82px;left:70px;width:auto;display:flex;flex-direction:column;gap:8px;max-height:calc(100dvh - 100px);overflow-y:auto}.model-menu-main{flex:none}.model-submenu{position:static;width:100%;flex:none}.metric-grid{grid-template-columns:1fr}.trading-lines-title,.dashboard-intro{align-items:flex-start;flex-direction:column;gap:10px}.trading-lines-title>div:last-child,.dashboard-intro>div:last-child{text-align:left}.trading-line-grid,.trading-line-details-grid,.details-panel-grid{grid-template-columns:1fr}.trading-line-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.trading-line-card footer{align-items:flex-start;flex-direction:column;gap:4px}.status-strip{align-items:flex-start;flex-direction:column;gap:8px}.readonly{margin:0}.settings-dialog{grid-template-columns:1fr}.settings-dialog>aside{display:flex;gap:4px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--border)}.settings-title{display:none}.settings-dialog>aside button{width:auto;white-space:nowrap}.setting-row{align-items:flex-start;flex-direction:column;gap:10px}.setting-row input:not([type=number]),.setting-row>select{width:100%}.folder-add,.operator-grid,.download-grid,.model-catalog{grid-template-columns:1fr}.index-detail-grid,.mail-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-editor .editor-grid{grid-template-columns:1fr}.operator-toolbar{align-items:stretch;flex-direction:column}.operator-toolbar label{min-width:0}.login-screen{padding:12px}.login-card{padding:24px 18px}.users-panel>.info-card:first-child{grid-template-columns:22px minmax(0,1fr)}.users-panel>.info-card:first-child .secondary{grid-column:1 / -1;justify-content:center}.user-form-grid{grid-template-columns:1fr}.automations-view{padding:22px 14px 40px}.automation-header{align-items:stretch;flex-direction:column}.automation-health{width:100%}.credential-access-banner{grid-template-columns:22px minmax(0,1fr);align-items:start}.credential-access-banner button{grid-column:1 / -1;width:100%}.automation-compose{grid-template-columns:1fr}.automation-compose-icon{display:none}.smart-home-menu{width:100%;top:8px}.smart-home-menu button{min-width:0;flex:1;padding-inline:8px}.automation-prompt,.integration-grid,.device-grid{grid-template-columns:1fr}.integration-card:has(.homewizard-pairing),.integration-card:has(.zonneplan-pairing),.integration-card:has(.tesla-pairing),.integration-card:has(.integration-provider-notice){grid-column:auto}.integration-card:has(.ebusd-integration-form){grid-column:auto}.ebusd-form-grid,.ebusd-layer-status{grid-template-columns:1fr}.integration-card,.integration-title,.linked-integration{min-height:0}.tesla-pairing .credential-fields{grid-template-columns:1fr}.integration-title{height:auto;overflow:visible}.integration-title small{display:block;overflow:visible;-webkit-line-clamp:unset}.energy-flow-network{grid-template-columns:1fr}.energy-flow-map{height:auto;padding:8px 0}.energy-flow-map>svg{display:none}.energy-flow-node{position:static;width:100%;min-width:0;margin-bottom:7px;transform:none!important}.energy-flow-loads{max-height:360px}.energy-victron-flow{grid-template-columns:1fr;gap:8px;min-height:0}.energy-victron-flow>svg,.victron-flow-gap{display:none}.victron-flow-column{gap:8px}.victron-flow-column.center{order:-1}.victron-flow-card{min-height:150px}.victron-flow-card.loads{max-height:390px}.victron-flow-card.battery{min-height:0}.victron-utility-row{grid-template-columns:1fr;gap:8px;min-height:0}.energy-section-heading{align-items:flex-start;flex-direction:column}.linked-integration{height:auto}.automation-section-heading{align-items:flex-start;flex-direction:column}.automation-disclosure>summary{align-items:flex-start}.automation-disclosure>summary p{white-space:normal}.automation-disclosure-body{padding:14px}.hue-scene-grid,.hue-rule-grid{grid-template-columns:1fr}.hue-execution-policy{grid-template-columns:28px minmax(0,1fr)}.hue-execution-policy em{grid-column:2;justify-self:start}.room-heading-actions{width:100%}.room-heading-actions button{flex:1}.room-create{grid-template-columns:1fr}.room-create>div{justify-content:flex-end}.room-selection-bar{align-items:stretch;flex-direction:column}.room-selection-bar>span{margin-right:0}.room-selection-rename,.room-selection-move{width:100%}.room-selection-rename input,.room-selection-bar select{width:100%;min-width:0}.room-selection-rename input,.room-selection-move select{flex:1}.room-selection-bar>.secondary{width:100%}.connected-room-cards{grid-template-columns:1fr;gap:78px}.connected-room-cluster:before{top:25%;bottom:25%;left:50%;width:1px;height:auto}.connected-room-cluster .room-controller-tile{width:min(174px,calc(100% - 24px))}.automation-prompt .primary{width:100%}.automation-task{grid-template-columns:38px minmax(0,1fr)}.energy-plan-grid{grid-template-columns:1fr}.task-actions{grid-column:1 / -1;flex-wrap:wrap}.task-actions .secondary{flex:1}.task-editor-grid,.task-editor-grid.ai,.task-editor-grid.interval{grid-template-columns:1fr}.task-day-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.certificate-stat-grid,.network-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mqtt-secret-once{grid-template-columns:28px minmax(0,1fr) 32px}.mqtt-secret-once>.secondary{grid-column:2;justify-self:start}.network-route-fields{grid-template-columns:1fr 1fr}.network-service-card{align-items:flex-start;flex-direction:column}.network-service-flags{justify-content:flex-start}.device-editor{grid-template-columns:1fr}}@media(max-width:520px){.mqtt-topic-columns,.mqtt-account-editor .automation-form-grid{grid-template-columns:1fr}.mqtt-account-actions .secondary{flex:1}.network-route-fields{grid-template-columns:1fr}.smart-home-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.smart-home-menu button{width:100%}.hue-scene-heading,.hue-rule-card>header{grid-template-columns:34px minmax(0,1fr)}.hue-scene-heading .status-badge,.hue-rule-card>header .status-badge{grid-column:2;justify-self:start}.hue-rule-actions{align-items:center;flex-direction:row}.hue-rule-actions button{width:36px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.energy-flow-connections .flow-particle{display:none}}.database-settings td>strong,.database-settings td>small{display:block}.database-settings td>small{color:var(--muted);margin-top:4px}.database-settings td:nth-child(3),.database-settings td:nth-child(4),.database-settings td:nth-child(5){text-align:right;font-variant-numeric:tabular-nums}.network-map{min-width:0}.network-map .smart-home-menu{flex-wrap:wrap}.network-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0}.network-map-toolbar p,.network-map-caption{color:var(--muted);line-height:1.5}.network-map-toolbar>div{display:flex;gap:8px;flex-shrink:0}.network-map-toolbar button{min-width:42px}.network-map-viewport{overflow:auto;max-height:72vh;border:1px solid var(--border);border-radius:12px;background:var(--panel-2);overscroll-behavior:contain}.network-map-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.network-drawing{min-width:0;color:var(--text)}.network-drawing>svg{display:block;width:100%;height:auto;font-family:Arial,Helvetica,sans-serif}.network-map-caption{font-size:.85rem;margin:12px 0 16px}.network-link-details>summary{cursor:pointer;font-weight:600;padding:16px 0}.network-link-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px}.network-link-table{width:100%;min-width:800px;border-collapse:collapse;font-size:.85rem}.network-link-table caption{text-align:left;padding:16px;color:var(--muted)}.network-link-table th,.network-link-table td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}.network-link-table th{background:var(--panel-2)}.network-link-table td>span{display:block;color:var(--muted);margin-top:4px}.network-link-table td strong{white-space:nowrap}.network-link-table td:last-child{min-width:180px;max-width:340px}.network-link-table tr:last-child td{border-bottom:0}.network-link-table summary{cursor:pointer;margin-top:8px}.network-link-table p{overflow-wrap:anywhere;line-height:1.5}@media(max-width:650px){.network-map-toolbar{flex-wrap:wrap;gap:8px}}#krenos-network-map .image-map{position:relative;width:100%;line-height:0}#krenos-network-map .image-map>img{width:100%;height:auto;display:block}#krenos-network-map .coverage-zone{position:absolute;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}#krenos-network-map .coverage-zone.be3{background:color-mix(in srgb,var(--chart-4) 16%,transparent)}#krenos-network-map .coverage-zone.lite{background:color-mix(in srgb,var(--chart-5) 15%,transparent)}#krenos-network-map .coverage-zone.above{background:color-mix(in srgb,var(--chart-4) 9%,transparent)}#krenos-network-map .image-pin{position:absolute;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:.35rem;z-index:2;line-height:1.15}#krenos-network-map .image-infra{position:absolute;transform:translate(-50%,-50%);display:grid;gap:.15rem;z-index:3;line-height:1.15;padding:.35rem .5rem;border:1px solid var(--border);border-radius:.4rem;background:color-mix(in srgb,var(--panel) 91%,transparent);color:var(--text);box-shadow:0 1px 3px color-mix(in srgb,var(--text) 16%,transparent);white-space:nowrap}#krenos-network-map .image-infra strong{font-size:.72rem;font-weight:600}#krenos-network-map .image-infra small{font-size:.65rem;color:var(--muted)}#krenos-network-map .image-pin span{display:inline-flex;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;border-radius:50%;color:var(--text);flex:0 0 auto}#krenos-network-map .image-pin.above span{background:var(--chart-4)}#krenos-network-map .image-pin b{font-weight:500;color:var(--text);background:color-mix(in srgb,var(--bg) 87%,transparent);padding:.15rem .3rem;border-radius:.25rem;white-space:nowrap}#krenos-network-map .floor-below{--floor-color: #00bfe8}#krenos-network-map .floor-above{--floor-color: #ad64f2}#krenos-network-map .image-map{--plan-width-m: 37.24}#krenos-network-map .coverage-zone{width:calc(var(--zone-radius-m) * 2 / var(--plan-width-m) * 100%);height:auto;aspect-ratio:1 / 1;border:2px solid var(--floor-color);box-sizing:border-box;background:radial-gradient(circle,color-mix(in srgb,var(--floor-color) 20%,transparent),color-mix(in srgb,var(--floor-color) 4%,transparent))}#krenos-network-map .coverage-zone.floor-above{border-style:dashed}#krenos-network-map .coverage-zone.projected{border-style:dashed;background:radial-gradient(circle,color-mix(in srgb,var(--floor-color) 9%,transparent),transparent)}#krenos-network-map .image-pin{transform:translate(-.725rem,-50%);padding:0;border:0;background:transparent}#krenos-network-map .image-pin span{background:var(--floor-color);color:var(--network-pin-text)}.network-distance-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.network-overview-distances line{stroke:var(--accent-strong);stroke-width:3;stroke-dasharray:12 9}.interface-language-button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:2.55rem;font-variant-numeric:tabular-nums}.sidebar-footer .interface-language-button{width:100%}.network-overview-distances path{fill:none;stroke:var(--accent-strong);stroke-width:2;stroke-dasharray:4 5}.network-overview-distances rect{fill:var(--panel);stroke:var(--accent-strong);stroke-width:2}.network-overview-distances text{fill:var(--text);font-size:27px;font-weight:700;font-variant-numeric:tabular-nums}.network-overview-distances .distance-source{fill:var(--muted);font-size:21px;font-weight:400}.network-overview-distances .distance-legend{fill:var(--muted);font-size:24px;font-weight:400}.network-distance-overlay line{stroke:var(--accent-strong);stroke-width:3;stroke-dasharray:10 8}.network-distance-overlay rect{fill:var(--panel);stroke:var(--border);stroke-width:2}.network-distance-overlay text{fill:var(--text);font-size:30px;font-weight:700;font-variant-numeric:tabular-nums}.network-distance-section{margin:24px 0}.network-distance-section p{color:var(--muted);line-height:1.5}.network-distance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}.network-distance-cards+.network-distance-cards{margin-top:16px}.network-distance-cards article{padding:16px;background:var(--panel-2);border:1px solid var(--border);border-radius:12px}.network-distance-cards h4{margin:0 0 12px}.network-distance-cards table{width:100%;border-collapse:collapse}.network-distance-cards th,.network-distance-cards td{text-align:left;padding:8px 0;border-bottom:1px solid var(--border)}.network-distance-cards th:last-child,.network-distance-cards td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.network-distance-cards small{display:block;margin-top:12px;color:var(--muted)}.network-coverage-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;margin-bottom:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.network-coverage-notice strong{color:var(--text)}.network-coverage-notice p{margin:4px 0 0;color:var(--muted);line-height:1.5}.network-coverage-notice label{display:flex;gap:8px;align-items:center;min-height:42px;flex-shrink:0;cursor:pointer}.network-coverage-notice input{width:18px;height:18px;accent-color:var(--accent-strong)}.network-coverage-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.network-coverage-cards article{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.network-coverage-cards h3{margin:0 0 8px;font-size:1rem}.network-coverage-cards strong{color:var(--text);font-size:.875rem}.network-coverage-cards p{margin:8px 0;color:var(--muted);line-height:1.5}.network-coverage-cards article>span{display:inline-block;font-size:.875rem;color:var(--muted);border-top:1px dashed var(--border);padding-top:8px}.network-coverage-contributions>details{margin:16px 0;color:var(--muted);line-height:1.5}.network-coverage-contributions summary{color:var(--text);cursor:pointer}.network-coverage-contributions a{color:var(--accent-strong);text-decoration:underline}#krenos-network-map .coverage-zone{border-width:1px;border-style:dashed}#krenos-network-map.network-zones-hidden .coverage-zone,#krenos-network-map.network-zones-hidden [data-coverage-circle]{display:none}@media(max-width:760px){.network-coverage-notice{align-items:flex-start;flex-direction:column;gap:8px}.network-coverage-cards{grid-template-columns:1fr}}.codex-research-report{line-height:1.65}.codex-research-report a{overflow-wrap:anywhere}.purchase-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto}.purchase-dialog .purchase-confirm{display:flex;align-items:flex-start;gap:8px;margin-top:16px}.purchase-dialog .purchase-confirm input{width:18px;min-height:18px;margin:0;flex:0 0 auto}.purchase-dialog .action-dialog-buttons{margin-top:16px;flex-wrap:wrap}.energy-display.home-display{gap:8px;padding:8px 16px;grid-template-columns:minmax(0,1fr)}.home-board{display:grid;grid-template-rows:56px 44px minmax(0,1fr) 56px 18px;gap:8px;min-height:0;min-width:0}.home-summary{display:grid;grid-template-columns:1fr 1.25fr 1fr 1.2fr;gap:8px;padding:4px 12px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.home-summary>div,.home-summary>button{display:flex;align-items:center;gap:10px;min-width:0}.home-summary>div>svg,.home-summary>button>svg{width:22px;flex:none;color:var(--accent-strong)}.home-summary span{display:grid;min-width:0;gap:1px}.home-summary strong{font-size:22px;line-height:1.1}.home-display .home-summary small{font-size:11px;white-space:nowrap}.home-display .home-summary button{padding:0 8px;border:0;background:transparent;text-align:left}.home-display .home-summary .home-access{font-size:14px;border-left:1px solid var(--border);border-radius:0}.home-display .home-alert-summary.has-alerts>svg,.home-display .home-attention,.home-feedback.failed{color:var(--warning)}.home-toolbar,.home-toolbar>div,.home-toolbar nav{display:flex;align-items:center;gap:4px;min-width:0}.home-toolbar{justify-content:space-between;gap:8px}.home-toolbar nav{flex:1}.home-display .home-room-filter{min-width:100px;width:clamp(120px,20vw,260px);max-width:100%;height:40px;padding:6px 8px;font:inherit;font-size:13px;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:10px;text-overflow:ellipsis}.home-display .home-room-filter:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.home-room-origin{max-width:200px;color:var(--muted)}@media(max-height:620px){.home-display .home-room-filter{height:36px}}.home-display .home-toolbar button{min-height:40px;padding:6px 8px;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap}.home-display .home-toolbar nav button{background:transparent;border-color:transparent;color:var(--muted)}.home-display .home-toolbar button[aria-pressed=true]{color:var(--accent-strong);background:var(--panel-2);border-color:var(--border)}.home-rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;min-height:0}.home-room{min-height:0;min-width:0;display:grid;grid-template-rows:34px minmax(44px,1fr) minmax(16px,.5fr) 36px;gap:4px;padding:8px 12px;background:var(--panel);border:1px solid var(--border);border-radius:14px}.home-room-title{display:flex;justify-content:space-between;align-items:center;min-width:0;gap:4px}.home-display .home-room-title>button,.home-display .home-room-reading,.home-display .home-sparkline-button{border:0;background:transparent;border-radius:6px;min-height:0;padding:0;text-align:left}.home-display .home-room-title>button:first-child{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.home-room-title-copy{display:grid;min-width:0}.home-display .home-room h2{display:block;font-size:17px;line-height:24px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-room-title-copy small{color:var(--muted);font-size:10px;line-height:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-display .home-room-title .home-favorite{display:grid;place-items:center;width:28px;height:28px;color:var(--muted);flex:none}.home-favorite[aria-pressed=true] svg{color:var(--accent-strong);fill:color-mix(in srgb,var(--accent-strong) 15%,transparent)}.home-display .home-room-reading{display:flex;align-items:center;justify-content:space-between;min-width:0;gap:8px}.home-room-reading>div:first-child{display:grid}.home-room-reading strong{font-size:clamp(30px,3.5vw,42px);line-height:1;font-weight:650;letter-spacing:-.03em;white-space:nowrap}.home-display .home-room-reading strong small{font-size:17px;margin-left:4px}.home-room-reading>div>span{font-size:10px;color:var(--muted);white-space:nowrap}.home-display .home-room-status-button{position:relative;grid-row:span 2;display:flex;align-items:stretch;border:0;background:transparent;text-align:left;padding:4px 0;min-width:0;min-height:0}.home-display .home-room-status-button:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.home-room-status{display:grid;grid-template-rows:minmax(44px,1fr) minmax(16px,.5fr);width:100%;min-width:0;gap:4px}.home-primary-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-self:center}.home-primary-support{align-self:center}.home-primary-icon{grid-column:2;grid-row:1/3;align-self:center;color:var(--muted)}.home-room-status strong{grid-column:1;font-size:clamp(22px,2.5vw,30px);font-weight:650;line-height:1.15;overflow-wrap:anywhere}.home-room-status strong.is-number{font-size:clamp(30px,3.5vw,42px);font-variant-numeric:tabular-nums}.home-primary-label{grid-column:1;font-size:13px;color:var(--muted);overflow-wrap:anywhere}.home-primary-note{grid-column:1/-1;font-size:11px;color:var(--muted)}.home-light-meter{grid-column:1/-1;display:flex;gap:3px;height:6px;margin:6px 0}.home-light-meter i{flex:1;border-radius:3px;background:var(--border)}.home-light-meter i.is-on{background:var(--accent-strong)}.home-light-meter i.is-unknown{background:repeating-linear-gradient(135deg,var(--border) 0 3px,var(--panel) 3px 6px)}.home-room-status.has-warning .home-primary-icon{color:var(--warning)}.home-primary-attention{position:absolute;top:0;right:0;display:flex;align-items:center;gap:4px}.home-status-detail{display:grid;gap:16px;padding-bottom:16px}.home-status-detail .home-room-status{max-width:420px;grid-template-rows:auto auto;gap:12px}.home-room-air{display:flex;flex-direction:column;gap:3px;align-items:flex-end}.home-room-air>span{display:flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.home-display .home-room-air small{font-size:10px}.home-display .home-sparkline-button{display:block;position:relative;min-height:0;overflow:hidden}.home-sparkline-button svg{width:100%;height:100%;display:block}.home-sparkline-button path,.home-detail-chart path{stroke:var(--accent-strong);stroke-width:1.6;fill:none;vector-effect:non-scaling-stroke;stroke-linejoin:round}.home-sparkline-button>span{position:absolute;left:0;bottom:0;font-size:9px;color:var(--muted);background:var(--panel);padding-right:4px}.home-room-lights{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:4px;gap:8px;min-width:0}.home-temperature-chart{position:relative;display:grid;grid-template-rows:minmax(0,1fr) 12px;min-width:0;min-height:0}.home-temperature-plot{position:relative;min-width:0;min-height:0;touch-action:pan-y;border-radius:4px}.home-temperature-plot:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.home-temperature-plot svg{width:100%;height:100%;display:block;overflow:visible}.home-temperature-plot path{fill:none;stroke:var(--accent-strong);stroke-width:1.6;vector-effect:non-scaling-stroke;stroke-linejoin:round}.home-temperature-plot circle{fill:var(--accent-strong)}.home-temperature-plot line{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.home-temperature-tooltip{position:absolute;bottom:calc(100% + 4px);transform:translate(-50%);width:160px;max-width:calc(100% - 8px);box-sizing:border-box;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);pointer-events:none;z-index:5;display:grid;grid-template-columns:1fr auto;gap:4px 8px;font-size:12px;font-variant-numeric:tabular-nums}.home-temperature-tooltip strong{grid-column:1/-1;font-size:12px}.home-temperature-tooltip b{font-size:16px}.home-display .home-temperature-tooltip small{grid-column:1/-1;color:var(--muted);font-size:10px}.home-temperature-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:9px}.home-temperature-chart.is-detail{grid-template-rows:120px auto auto;min-height:min-content;gap:8px;padding:12px;border-radius:12px;background:var(--panel-2)}.home-temperature-chart.is-detail .home-temperature-tooltip{bottom:auto;top:4px}.home-temperature-note{margin:0;color:var(--muted);font-size:12px}.home-room-lights>span{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);white-space:nowrap}.home-display .home-room-lights button{min-height:32px;padding:4px 10px;font-size:12px}.home-display .home-power{display:inline-flex;align-items:center;justify-content:center;gap:6px}.home-display .home-power.is-on{color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 8%,var(--panel-2))}.home-display button:disabled{opacity:.5;cursor:not-allowed}.home-display button:focus-visible,.home-display input:focus-visible,.home-display select:focus-visible{outline:3px solid var(--accent-strong);outline-offset:2px}.home-display .home-icon-button{display:grid;place-items:center}.home-bottom{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;min-width:0}.home-bottom.home-bottom-ticker{grid-template-columns:minmax(0,1fr) auto}.home-ticker{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:12px;padding:2px 6px;background:var(--panel)}.home-ticker-label{flex:none;padding:6px;font-size:12px;font-weight:700;letter-spacing:.05em;color:var(--accent-strong);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2));border-radius:6px}.home-ticker.stale .home-ticker-label{color:var(--warning)}.home-ticker-window{flex:1;min-width:0;overflow:hidden}.home-ticker-track{display:flex;width:max-content;animation:home-ticker-scroll var(--home-ticker-duration,60s) linear infinite}.home-ticker-group{display:flex;flex:none;align-items:center}.home-display .home-ticker-group>button,.home-ticker-copy>span{display:inline-flex;flex:none;align-items:center;gap:10px;padding:0 36px 0 0;min-height:38px;border:0;background:transparent;white-space:nowrap;font-size:clamp(17px,1.9vw,23px);font-weight:600;color:var(--text);cursor:pointer}.home-ticker-group time{color:var(--muted);font-size:.75em;font-weight:500}.home-display .home-ticker-group>.alarm{color:var(--danger)}.home-display .home-ticker-group>.warning{color:var(--warning)}.home-display .home-ticker-toggle,.home-display .home-ticker-list{flex:none;min-height:38px;width:34px;padding:4px;display:grid;place-items:center;border-color:transparent}.home-ticker-empty{color:var(--muted);font-size:14px;white-space:nowrap}.home-ticker.paused .home-ticker-track,.home-ticker:has(.home-ticker-group>button:focus-visible) .home-ticker-track{animation-play-state:paused}@media(hover:hover){.home-ticker-window:hover .home-ticker-track{animation-play-state:paused}}.home-event-list strong{font-size:16px}.home-event-list>div>span{min-width:0}@keyframes home-ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.home-ticker-track{animation:none}.home-ticker-window{overflow-x:auto}.home-ticker-copy{display:none}}@media(max-width:1050px){.home-utility-button>span{display:none}.home-display .home-utility-button{min-width:34px}}.home-display .home-household,.home-display .home-pets{display:flex;align-items:center;gap:10px;padding:4px 12px;text-align:left;background:var(--panel);min-width:0}.home-bottom>button>svg{width:23px;flex:none;color:var(--accent-strong)}.home-bottom>button>span{display:grid;gap:3px;min-width:0;flex:1}.home-bottom strong{font-size:14px}.home-display .home-bottom small{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-pages{display:flex;align-items:center;justify-content:center;gap:6px}.home-pages span{font-size:13px;min-width:36px;text-align:center;white-space:nowrap}.home-display .home-pages button{display:grid;place-items:center;padding:5px;width:38px;min-height:44px}.home-feedback{font-size:11px;color:var(--muted);align-self:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.home-empty{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:var(--muted);text-align:center;min-height:0}.home-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--border);border-radius:18px;background:var(--panel);color:var(--text);box-shadow:none}.home-dialog::backdrop{background:color-mix(in srgb,var(--bg) 72%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.home-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;gap:12px;border-bottom:1px solid var(--border)}.home-display .home-dialog h2{font-size:24px;white-space:normal}.home-display .home-dialog header small{font-size:10px;letter-spacing:.13em;color:var(--accent-strong)}.home-dialog>header button{display:grid;place-items:center;min-width:44px;padding:4px}.home-dialog-body{display:grid;grid-auto-rows:max-content;align-content:start;gap:16px;padding:16px 20px 20px;max-height:calc(100dvh - 130px);overflow-y:auto}.home-detail-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.home-detail-top>div{display:grid;gap:4px;min-width:0}.home-detail-top strong{font-size:36px;line-height:1.1}.home-display .home-detail-top small{font-size:12px}.home-detail-top label,.home-login label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.home-dialog select,.home-dialog input:not([type=range]){min-height:44px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);border-radius:8px;padding:8px;font:inherit}.home-detail-chart{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:12px;background:var(--panel-2);border-radius:12px}.home-detail-chart svg{grid-column:1/-1;width:100%;height:120px}.home-detail-chart p{grid-column:1/-1;color:var(--muted);font-size:13px}.home-display .home-detail-chart small{font-size:11px}.home-detail-chart>small:last-child{text-align:right}.home-detail-section{display:grid;gap:12px}.home-detail-section h3{margin:0;display:flex;align-items:center;gap:8px;font-size:17px}.home-detail-section h3>button{margin-left:auto}.home-display .home-control-hint{display:flex;align-items:center;gap:8px;padding:12px;background:var(--panel-2);border-radius:10px;font-size:13px}.home-control-hint>svg{flex:none}.home-control-hint>button{margin-left:auto}.home-device{border:1px solid var(--border);border-radius:12px;padding:12px;display:grid;gap:8px}.home-device-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-device-title>span{display:grid;gap:3px}.home-display .home-device-title small{font-size:12px}.home-adjust{display:flex;align-items:center;gap:16px}.home-adjust label{display:grid;flex:1;gap:6px;font-size:12px}.home-adjust label>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-adjust input{width:100%;min-height:26px;margin:0;accent-color:var(--accent-strong);cursor:pointer}.home-display .home-adjust button{font-size:13px}.home-list{display:grid;gap:8px}.home-list>div{display:flex;align-items:center;gap:12px;padding:12px;background:var(--panel-2);border-radius:10px}.home-list>div>svg{width:22px;flex:none;color:var(--accent-strong)}.home-list>div>span{display:grid;gap:4px;flex:1}.home-display .home-list small{font-size:12px}.home-list>.home-alarm,.home-list>.home-alarm>svg{color:var(--danger)}.home-login{display:grid;gap:16px}.home-login>svg{color:var(--accent-strong)}.home-login>button{display:flex;align-items:center;justify-content:center;gap:8px}@media(min-width:1500px){.home-room{padding:16px 20px;gap:8px;grid-template-rows:36px minmax(60px,1fr) minmax(40px,.6fr) 48px}.home-display .home-room h2{font-size:24px}.home-display .home-room-reading strong{font-size:58px}.home-room-reading>div>span,.home-room-lights>span{font-size:15px}.home-display .home-room-lights button{min-height:44px;font-size:16px}}@media(max-width:1050px){.energy-display .touch-display-nav button{font-size:18px;padding:8px}.energy-display-header,.energy-display-header>div:first-child,.energy-display-header-right{gap:8px}.energy-display-header-right>button{font-size:14px;padding:6px 10px}.energy-display-header time{font-size:24px}}@media(max-width:900px){.energy-display-brand{display:none}.home-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.home-display .home-summary small{font-size:10px}.home-summary{padding:4px 8px;grid-template-columns:.9fr 1.2fr .85fr 1.2fr}.home-summary>div,.home-summary>button{gap:6px}.home-toolbar{gap:4px}.home-display .home-toolbar button{font-size:11px;padding:6px}}@media(max-height:620px){.home-board{grid-template-rows:48px 40px minmax(0,1fr) 48px 16px;gap:6px}.home-display .home-toolbar button{min-height:36px}.home-display .home-summary>button{min-height:38px}}@media(max-height:540px){.home-rooms{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.home-board{grid-template-rows:48px 40px minmax(0,1fr) 48px 16px;gap:6px}.energy-display.home-display{padding:6px 12px;grid-template-rows:44px minmax(0,1fr);gap:6px}.home-display .home-toolbar button{min-height:36px}}@media(max-width:650px){.home-display .energy-display-header>div:first-child{width:100%}.home-display .touch-display-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.home-display .home-toolbar nav{flex-basis:100%}.home-display .home-toolbar>div{margin-left:auto}}@media(max-width:650px){.energy-display.home-display{height:auto;min-height:100dvh;grid-template-rows:auto minmax(0,1fr)}.home-display .energy-display-header{flex-wrap:wrap;justify-content:center}.home-board{grid-template-rows:auto auto minmax(360px,1fr) auto 20px}.home-summary{grid-template-columns:1fr 1fr;row-gap:8px}.home-toolbar{flex-wrap:wrap}.home-toolbar nav{flex-wrap:wrap}.home-room{padding:8px}.home-room-reading strong{font-size:28px}.home-room-air{display:none}.home-display .home-room h2{font-size:14px}.home-bottom{grid-template-columns:1fr auto}.home-pets{grid-column:1}.home-pages{grid-column:2;grid-row:1/3}.home-detail-top{align-items:flex-start;flex-direction:column}.home-display .home-control-hint{flex-wrap:wrap}}.ebus-diagnostics{min-width:0}.ebus-diagnostics>summary{display:flex;align-items:center;gap:16px;cursor:pointer}.ebus-diagnostics>summary h2{margin:0}.ebus-diagnostics>summary span,.ebus-diagnostics small{color:var(--muted)}.ebus-diagnostics-body{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;padding-top:16px}.ebus-diagnostics-body h3,.ebus-diagnostics-body p{margin:0 0 8px}.ebus-diagnostics-body summary{cursor:pointer;padding:8px 0}.ebus-diagnostics summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}.ebus-diagnostics summary:hover{color:var(--accent-strong)}.ebus-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ebus-summary-grid>section{border:1px solid var(--border);border-radius:8px;padding:16px;background:var(--panel-2)}.ebus-summary-grid strong,.ebus-summary-grid small{display:block;margin-bottom:8px}.ebus-diagnostics table{width:100%;min-width:880px;font-variant-numeric:tabular-nums}.ebus-diagnostics td{vertical-align:top}.ebus-diagnostics a{color:var(--accent-strong)}.ebus-diagnostics code{font-size:.85em}.ebus-raw{display:block;min-width:160px;max-width:260px;overflow-wrap:anywhere}.ebus-warning{color:var(--warning)}.ebus-experimental{border:1px solid var(--border);border-radius:8px;padding:8px 16px}.ebus-provenance{grid-column:1 / -1;color:var(--muted);overflow-wrap:anywhere}@media(max-width:700px){.ebus-summary-grid{grid-template-columns:1fr}.ebus-diagnostics>summary{align-items:flex-start;flex-direction:column;gap:8px}}.ebus-diagnostics-body>*,.ebus-summary-grid>section{min-width:0}.ebus-diagnostics-body p,.ebus-diagnostics-body small{overflow-wrap:anywhere}.ebus-reading-note{grid-column:1 / -1;color:var(--muted);overflow-wrap:anywhere}.ebus-connection-summary .device-metrics{margin-top:16px}.ebus-connection-summary .device-metric strong{overflow-wrap:anywhere}.ebus-metric strong{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.ebus-received{grid-column:1 / -1}.energy-source-settings{display:grid;gap:16px}.energy-source-card{padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--panel);display:grid;gap:16px;min-width:0}.energy-source-fields,.energy-source-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.energy-source-card label{display:grid;gap:8px;min-width:0;color:var(--text)}.energy-source-card input,.energy-source-card select{width:100%;min-width:0;height:2.55rem;padding:8px 12px;font:inherit;border:1px solid var(--border);border-radius:10px;color:var(--text);background:var(--panel-2)}.energy-source-settings .info-card h3{font-size:1.1rem;margin:0 0 8px}.energy-source-card input:focus-visible,.energy-source-card select:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.energy-source-card select[multiple]{height:auto;min-height:96px}.energy-source-metric{display:grid;gap:12px;align-content:start}.energy-source-metric h4{margin:0}.energy-source-entry{display:grid;gap:12px;padding:12px;border-radius:12px;background:var(--panel-2);border:1px solid var(--border)}.energy-source-entry>span{color:var(--accent-strong);font-weight:650}.energy-source-toolbar{display:flex;flex-wrap:wrap;gap:8px}.energy-source-toolbar>button{flex:1;min-width:120px}.energy-source-status{border:1px solid var(--border);border-radius:12px;padding:8px 16px;color:var(--text);background:var(--panel)}.energy-source-status>summary{cursor:pointer;padding:4px 0}.energy-source-status>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;padding-top:8px}.energy-source-status article{display:grid;gap:4px;padding:8px;background:var(--panel-2);border-radius:8px;overflow-wrap:anywhere}.energy-source-status span{color:var(--muted);font-size:.85rem}.energy-source-status b{display:block;color:var(--warning)}.energy-display>.energy-source-status{position:relative;z-index:3;flex:none;max-height:35vh;overflow:auto}.energy-display:has(>.energy-source-status){grid-template-rows:52px auto minmax(0,1fr)}@media(max-width:700px){.energy-source-fields,.energy-source-metrics{grid-template-columns:1fr}}.login-form{display:grid;gap:16px;width:100%;text-align:left}.login-form>small{color:var(--muted)}.login-form .login-action{width:100%}.ollama-progress{margin-bottom:16px;min-width:0}.ollama-thinking{border:1px solid var(--border);border-radius:8px;background:var(--panel)}.ollama-thinking summary{cursor:pointer;padding:12px 16px;min-height:44px;color:var(--text)}.ollama-thinking summary:hover{background:var(--panel-2)}.ollama-thinking summary:focus-visible{outline:2px solid var(--accent-strong);outline-offset:2px}.ollama-thinking summary span{margin-left:8px;color:var(--muted);font-size:.85em}.ollama-thinking>small,.ollama-thinking>pre{display:block;margin:8px 16px 16px}.ollama-progress small{color:var(--muted)}.ollama-progress pre{font:inherit;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;overflow-y:auto;color:var(--text)}.ollama-draft{margin:16px;padding-top:16px;border-top:1px solid var(--border)}.ollama-thinking-actions.message-actions{margin:8px 16px}.ollama-thinking .message-actions button{min-width:44px;min-height:44px}.ollama-thinking .message-actions{opacity:1}.ollama-thinking .message-actions button:hover{color:var(--text)}.local-gpu-memory{margin:8px 10px;font-size:12px;color:var(--muted)}.local-gpu-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;font-variant-numeric:tabular-nums}.local-gpu-row+.local-gpu-row{margin-top:8px}.local-gpu-row strong{color:var(--text);font-size:inherit;overflow-wrap:anywhere}.local-gpu-row span{white-space:nowrap}.local-gpu-notes{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin-top:8px;font-size:11px;line-height:1.45}.ai-dashboard-card{padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.ai-dashboard-card>header,.ai-dashboard-card>footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.ai-card-title{display:flex;align-items:center;gap:12px}.ai-card-title h2{margin:0;font-size:18px}.ai-dashboard-card small,.ai-dashboard-card footer,.ai-card-details{color:var(--muted);font-size:12px}.ai-card-model{display:grid;gap:4px;margin:16px 0}.ai-card-model>strong{font-size:18px;overflow-wrap:anywhere}.ai-card-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.ai-card-metrics>div{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;background:var(--panel-2)}.ai-card-metrics strong{font-size:17px;font-variant-numeric:tabular-nums}.ai-card-metrics progress{width:100%;height:5px;accent-color:var(--accent)}.ai-card-memory-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.ai-card-memory-split>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;border-radius:12px;background:var(--panel-2)}.ai-card-memory-split strong{font-variant-numeric:tabular-nums;white-space:nowrap}.ai-telemetry-chart{display:grid;grid-template-rows:auto auto minmax(112px,1fr) auto;gap:6px;min-height:170px;margin:16px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.ai-telemetry-chart>header,.ai-telemetry-chart>footer{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--muted);font-size:10px}.ai-telemetry-chart>header span{color:var(--text);font-size:13px;font-weight:650}.ai-telemetry-chart>header strong{font-weight:500}.ai-chart-legend{display:flex;align-items:center;gap:16px;color:var(--muted);font-size:10px}.ai-chart-legend span{display:inline-flex;align-items:center;gap:5px}.ai-chart-legend i{width:13px;height:2px;border-radius:2px;background:currentColor}.ai-chart-legend .temperature,.ai-chart-tooltip .temperature{color:var(--chart-2)}.ai-chart-legend .gpu,.ai-chart-tooltip .gpu{color:var(--chart-3)}.ai-chart-legend .cpu,.ai-chart-tooltip .cpu{color:var(--accent-strong)}.ai-chart-legend .gpu i{background:repeating-linear-gradient(90deg,currentColor 0 5px,transparent 5px 8px)}.ai-chart-legend .cpu i{background:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 5px)}.ai-chart-interactive{position:relative;min-width:0;min-height:112px;outline-offset:2px;touch-action:pan-y}.ai-chart-interactive:focus-visible{outline:2px solid var(--accent-strong)}.ai-chart-interactive svg{display:block;width:100%;height:100%;min-height:112px;overflow:visible}.ai-chart-interactive svg .grid{stroke:var(--border);stroke-width:1;vector-effect:non-scaling-stroke}.ai-chart-interactive svg path{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.ai-chart-interactive svg path.temperature{stroke:var(--chart-2)}.ai-chart-interactive svg path.gpu{stroke:var(--chart-3);stroke-dasharray:5 3}.ai-chart-interactive svg path.cpu{stroke:var(--accent-strong);stroke-dasharray:2 3}.ai-chart-interactive svg circle.temperature{fill:var(--chart-2)}.ai-chart-interactive svg circle.gpu{fill:var(--chart-3)}.ai-chart-interactive svg circle.cpu{fill:var(--accent-strong)}.ai-chart-interactive svg .cursor{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2;vector-effect:non-scaling-stroke}.ai-chart-axis{position:absolute;display:flex;height:34%;flex-direction:column;justify-content:space-between;pointer-events:none;font-size:8px;font-variant-numeric:tabular-nums}.ai-chart-axis.temperature{top:5px;left:0;color:var(--chart-2)}.ai-chart-axis.load{right:0;bottom:5px;color:var(--muted);text-align:right}.ai-chart-building,.ai-chart-empty{display:grid;place-items:center;color:var(--muted);font-size:11px}.ai-chart-building{position:absolute;inset:0;pointer-events:none}.ai-chart-tooltip{position:absolute;bottom:calc(100% + 4px);transform:translate(-50%);z-index:5;display:grid;gap:5px;width:200px;max-width:calc(100% - 8px);padding:8px;box-sizing:border-box;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);box-shadow:var(--shadow);font-size:11px;font-variant-numeric:tabular-nums}.ai-chart-tooltip>span{display:flex;justify-content:space-between;gap:8px}.ai-chart-tooltip b{color:inherit}.ai-chart-empty{min-height:112px;border-block:1px solid var(--border)}.ai-card-details{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.ai-card-details h3,.ai-card-details h4{margin:0 0 8px;color:var(--text);font-size:13px}.ai-card-details h4{margin-top:16px;font-size:12px}.ai-card-details dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.ai-card-details dl>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ai-card-details dd{margin:0;color:var(--text);overflow-wrap:anywhere}.ai-card-details ul{margin:8px 0;padding-left:20px;line-height:1.8}.ai-card-model-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px}.ai-card-providers{display:flex;flex-wrap:wrap;gap:8px 16px}.ai-dashboard-card>footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);font-size:11px}@media(max-width:900px){.ai-card-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-card-details dl{grid-template-columns:1fr}}@media(max-width:600px){.ai-card-model-list{grid-template-columns:1fr}.ai-chart-legend{gap:10px}}.ai-touch-content{min-height:0;overflow-y:auto}.ai-display-page .ai-dashboard-card{padding:16px}.ai-display-page .ai-card-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-display-page .ai-card-metrics>div{padding:12px}.ai-display-page .ai-card-metrics strong{font-size:18px}.ai-display-page .ai-card-model{margin:12px 0}.ai-display-page .ai-dashboard-card summary{min-height:44px;display:list-item;padding:12px 0;font-size:14px}@media(max-width:850px){.energy-display .touch-display-nav button{min-width:44px;font-size:16px;padding-inline:6px}}@media(max-width:820px){.energy-display{grid-template-rows:auto minmax(0,1fr)}.energy-display-header{flex-wrap:wrap}.energy-display-header>div:first-child{width:100%;align-items:center}.energy-display-header-right{margin-left:auto}}@media(max-width:600px){.ai-display-page .ai-card-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
