:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07090d;color:#edf7ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--panel: rgba(14, 20, 28, .88);--panel-strong: rgba(19, 28, 39, .96);--line: rgba(177, 140, 255, .2);--line-strong: rgba(177, 140, 255, .46);--text-muted: #8fa1ae;--cyan: #b18cff;--blue: #5caaff;--green: #5cf2a4;--amber: #ffca63;--red: #ff6b6b;--violet: #a990ff}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh;background:linear-gradient(rgba(177,140,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(177,140,255,.035) 1px,transparent 1px),#07090d;background-size:38px 38px,38px 38px,auto}button,input,select,textarea{font:inherit}button{color:inherit}button:disabled,input:disabled,textarea:disabled{cursor:not-allowed;opacity:.58}.app-shell{width:min(1680px,100%);min-height:100vh;min-height:100dvh;margin:0 auto;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:clip}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 12px;border:1px solid var(--line);background:linear-gradient(135deg,#b18cff1f,#ffca630f),#060a10e6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand-lockup,.topbar-controls,.primary-navigation,.top-command-actions,.utility-actions,.section-title,.rail-header,.device-card-header,.settings-card-header,.settings-status,.live-pool-header,.status-line,.status-line-label{display:flex;align-items:center}.brand-lockup{gap:12px;min-width:0}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line-strong);background:linear-gradient(180deg,#b18cff33,#5cf2a414),#101821;color:var(--cyan);font-weight:900}.brand-lockup h1,.device-card h2,.settings-card h2{margin:0;letter-spacing:0}.brand-lockup h1{font-size:1.25rem}.brand-lockup p,.device-card-header p,.settings-card-header p,.empty-line{margin:0;color:var(--text-muted)}.topbar-controls{gap:10px;min-width:0}.primary-navigation,.top-command-actions,.utility-actions{gap:8px;padding:5px;border:1px solid var(--line);background:#00000047}.primary-navigation button,.top-command-actions button,.utility-actions button,.icon-button,.send-button{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer}.primary-navigation button{display:inline-flex;width:auto;min-width:38px;padding:0 10px;gap:7px;color:var(--text-muted)}.primary-navigation button:hover,.primary-navigation button.active,.top-command-actions button:hover,.utility-actions button:hover,.icon-button:hover,.send-button:hover{border-color:var(--line-strong);background:#b18cff1f}.primary-navigation button.active{color:var(--text)}.navigation-label{font-size:.76rem;font-weight:750;white-space:nowrap}.top-command-actions .owl-mode-quick-button{position:relative;flex:0 0 38px;width:38px;min-width:38px;height:38px;min-height:38px;padding:0;overflow:hidden;border:0;border-radius:0;clip-path:polygon(5% 0,30% 13%,50% 7%,70% 13%,95% 0,88% 27%,100% 51%,89% 84%,63% 100%,50% 90%,37% 100%,11% 84%,0 51%,12% 27%);background:#6ad6df;color:#effcff;filter:drop-shadow(0 0 8px rgba(73,209,222,.28));isolation:isolate;transition:filter .16s ease,transform .16s ease}.top-command-actions .owl-mode-quick-button:before{position:absolute;z-index:-1;inset:2px;clip-path:inherit;background:#17252d;content:""}.top-command-actions .owl-mode-quick-button:hover:not(:disabled){background:#94edf0;color:#fff;filter:drop-shadow(0 0 11px rgba(73,209,222,.52));transform:translateY(-1px)}.top-command-actions .owl-mode-quick-button:focus-visible{outline:none;filter:drop-shadow(0 0 2px #ffffff) drop-shadow(0 0 9px #6ad6df)}.top-command-actions .owl-mode-quick-button.is-playing{background:#ffbd58;filter:drop-shadow(0 0 11px rgba(255,189,88,.58));animation:owl-mode-pulse 1.8s ease-in-out infinite}.top-command-actions .owl-mode-quick-button:disabled{cursor:not-allowed;filter:grayscale(.75);opacity:.48}.owl-mode-eyes{position:absolute;top:12px;left:7px;display:flex;gap:3px}.owl-mode-eyes>span{width:10px;height:10px;border:2px solid #a8f2f3;border-radius:50%;background:#050b0f;box-shadow:0 0 0 2px #a8f2f329}.owl-mode-quick-button.is-playing .owl-mode-eyes>span{border-color:#ffd78d;box-shadow:0 0 0 2px #ffd78d2e}.owl-mode-beak{position:absolute;top:26px;left:15px;width:0;height:0;border-top:8px solid #ffbd58;border-right:4px solid transparent;border-left:4px solid transparent}@keyframes owl-mode-pulse{0%,to{filter:drop-shadow(0 0 8px rgba(255,189,88,.42))}50%{filter:drop-shadow(0 0 14px rgba(255,189,88,.72))}}.session-role{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-left:1px solid var(--line);color:var(--text-muted);font-size:.7rem;font-weight:800}.session-role.role-owner{color:var(--cyan)}.session-role.role-guest{color:var(--amber)}.system-alert{margin-top:14px;padding:12px 14px;border:1px solid rgba(255,107,107,.45);background:#ff6b6b1f;color:#ffd4d4}.owner-action-center{margin-top:12px;border:1px solid var(--line-strong);background:linear-gradient(90deg,#b18cff17,#5cf2a409),#080d14f0}.owner-action-header,.owner-action-now-heading,.owner-action-controls,.owner-action-manual,.owner-action-clear,.owner-action-status,.owner-action-recovery{display:flex;align-items:center}.owner-action-header{justify-content:space-between;gap:12px;min-height:42px;padding:8px 12px}.owner-action-header>span{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;font-weight:800;text-transform:uppercase}.owner-action-header small,.owner-action-evidence{color:var(--text-muted);font-size:.7rem;font-weight:700;text-transform:uppercase}.owner-action-progress{height:2px;background:#ffffff12}.owner-action-progress span{display:block;height:100%;background:var(--green);transition:width .18s ease}.owner-action-now{display:grid;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--line)}.owner-action-now-heading{justify-content:space-between;gap:10px}.owner-action-now-label{color:var(--amber);font-size:.68rem;font-weight:900}.owner-action-now h2,.owner-action-now p{margin:0}.owner-action-now h2{font-size:1rem}.owner-action-now p{color:#cedce6;font-size:.84rem;line-height:1.45}.owner-action-status{justify-content:center;gap:5px;min-height:24px;padding:3px 7px;border:1px solid var(--line);color:var(--text-muted);font-size:.62rem;font-weight:900}.owner-action-status.status-ready{color:var(--cyan);border-color:var(--line-strong)}.owner-action-status.status-verifying{color:var(--amber);border-color:#ffca6373}.owner-action-status.status-complete{color:var(--green);border-color:#5cf2a466}.owner-action-status.status-blocked{color:var(--red);border-color:#ff6b6b6b}.owner-action-recovery{align-items:flex-start;gap:8px;padding:8px 10px;border-left:2px solid var(--amber);background:#ffca6312;color:#ffe1a2;font-size:.76rem;line-height:1.4}.owner-action-recovery svg{flex:0 0 auto;margin-top:1px}.owner-action-controls{flex-wrap:wrap;gap:7px}.owner-action-controls button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:5px;background:#ffffff09;cursor:pointer}.owner-action-controls button:hover,.owner-action-controls button.owner-action-primary{border-color:var(--line-strong);background:#b18cff21}.owner-action-manual{justify-content:center;gap:9px;min-height:38px;width:fit-content;padding:0 12px;border:1px solid var(--line-strong);border-radius:5px;background:#b18cff21;color:#e5eef5;font-size:.82rem;cursor:pointer}.owner-action-clear{gap:8px;padding:11px 12px;border-top:1px solid var(--line);color:var(--green);font-size:.82rem}.owner-action-error{padding:8px 12px;border-top:1px solid rgba(255,107,107,.35);color:#ffd4d4;font-size:.78rem}.owner-action-review{border-top:1px solid var(--line)}.owner-action-review>summary{min-height:38px;padding:10px 12px;color:var(--text-muted);font-size:.74rem;font-weight:700;cursor:pointer}.owner-action-list{display:grid;padding:0 12px 10px}.owner-action-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:48px;padding:6px 0;border-top:1px solid rgba(177,140,255,.12)}.owner-action-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.owner-action-row strong,.owner-action-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-action-row strong{font-size:.78rem}.owner-action-row small,.owner-action-row time{color:var(--text-muted);font-size:.68rem}.dashboard-layout{display:grid;grid-template-columns:minmax(360px,520px) minmax(560px,1fr);gap:14px;margin-top:12px;align-items:start}.guest-dashboard-layout{grid-template-columns:minmax(360px,520px) minmax(420px,1fr)}.access-shell{display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:24px}.access-panel{width:min(440px,100%);padding:24px;border:1px solid var(--line-strong);background:linear-gradient(145deg,#b18cff1a,#5cf2a409),#080d14f5;box-shadow:0 24px 80px #0006}.access-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.access-brand h1,.access-brand p{margin:0}.access-brand h1{font-size:1.35rem}.access-brand p{margin-top:3px;color:var(--text-muted)}.access-form,.access-form label,.guest-grant-form{display:grid;gap:10px}.access-form{gap:16px}.access-note{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.45}.access-form label span{color:var(--text-muted);font-size:.82rem}.access-form input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:4px;background:#00000052;color:#edf7ff;padding:0 12px}.access-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid var(--line-strong);border-radius:4px;background:#b18cff21;color:#eafaff;cursor:pointer}.access-error{margin:0;color:#faa;font-size:.84rem}.access-progress{display:flex;align-items:center;justify-content:center;gap:10px;min-height:120px;color:var(--cyan)}.access-recovery{border-top:1px solid var(--line);padding-top:8px}.access-recovery summary{display:flex;align-items:center;min-height:44px;color:var(--text-muted);cursor:pointer}.access-recovery[open]>.access-form{margin-top:10px}.guest-access-card{align-content:start}.guest-grant-form{gap:14px}.guest-scope-list{display:grid;gap:8px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.guest-scope-list>div,.guest-scope-list label{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:28px}.guest-scope-list svg{color:var(--green)}.guest-scope-list input{width:17px;height:17px;margin:0}.guest-generated-link{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px;align-items:center;margin-top:14px}.guest-generated-link code{min-width:0;overflow:hidden;padding:10px;border:1px solid var(--line);background:#00000052;color:#c8f2ff;text-overflow:ellipsis;white-space:nowrap}.guest-generated-link button,.guest-grant-row button{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer}.guest-grant-list{display:grid;gap:8px;margin-top:16px}.guest-grant-list>p{margin:0;color:var(--text-muted)}.guest-grant-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.guest-grant-row>div{display:grid;gap:3px;min-width:0}.guest-grant-row span{color:var(--text-muted);font-size:.76rem}.dashboard-layout>*,.command-deck,.right-stack{min-width:0}.history-rail,.chat-panel,.voice-panel,.device-card,.settings-card{border:1px solid var(--line);background:linear-gradient(180deg,#ffffff0a,#ffffff03),var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.history-rail{min-height:calc(100vh - 122px);padding:12px;overflow:hidden}.rail-header{justify-content:space-between;gap:10px;margin-bottom:12px;color:var(--text-muted);font-size:.86rem;text-transform:uppercase}.conversation-list{display:grid;gap:8px;max-height:calc(100vh - 190px);overflow:auto}.conversation-row{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:44px;padding:9px;border:1px solid transparent;border-radius:6px;background:#ffffff08;color:#dfefff;cursor:pointer;text-align:left}.conversation-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-row:hover,.conversation-row.active{border-color:var(--line-strong);background:#b18cff1a}.command-deck{display:grid;grid-template-rows:auto auto;gap:10px;min-height:0}.voice-panel{position:relative;display:grid;grid-template-columns:minmax(145px,180px) minmax(170px,1fr);gap:10px;align-items:center;min-height:218px;padding:12px;overflow:hidden}.voice-panel:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,202,99,.12);clip-path:polygon(0 0,68% 0,100% 32%,100% 100%,22% 100%,0 78%);pointer-events:none}.tars-status-panel{position:relative;z-index:1;display:grid;gap:9px;align-content:center;min-height:0}.tars-status-panel h2{margin:0 0 4px;color:#edf7ff;font-size:.92rem;letter-spacing:0}.status-list{display:grid;gap:6px}.status-line{justify-content:space-between;gap:14px;min-height:34px;padding:5px 7px;border:1px solid rgba(255,255,255,.08);background:#0000002e}.status-line-label{gap:8px;color:#dce8ef}.status-ok{color:var(--green)}.status-pending{color:var(--amber)}.command-center-page{display:grid;gap:12px;margin-top:12px}.connections-page{display:grid;gap:22px;margin-top:18px}.connections-header,.connections-kicker,.connection-phase-heading,.connection-identity,.connection-status,.connections-footer{display:flex;align-items:center}.connections-header{justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.connections-kicker{gap:7px;color:var(--cyan);font-size:.76rem;text-transform:uppercase}.connections-header h2{margin:5px 0 0;font-size:1.45rem}.connections-header p{max-width:760px;margin:5px 0 0;color:var(--text-muted);line-height:1.45}.connections-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.connection-summary-metric{display:grid;min-height:76px;align-content:center;gap:4px;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#ffffff06}.connection-summary-metric strong{font-size:1.45rem}.connection-summary-metric span{color:var(--text-muted);font-size:.78rem;text-transform:uppercase}.connection-summary-metric.summary-live strong{color:var(--green)}.connection-summary-metric.summary-action strong{color:#ffcb63}.connections-error,.connections-empty{padding:14px;border:1px solid rgba(255,107,107,.35);color:#ffd4d4;background:#ff6b6b0f}.connections-empty{border-color:var(--line);color:var(--text-muted);background:var(--panel)}.connection-phases,.connection-phase,.connection-list,.connection-readiness,.connection-details{display:grid}.connection-phases{gap:28px}.connection-phase{gap:10px}.connection-phase-heading{justify-content:space-between;gap:14px}.connection-phase-heading h3{margin:0;color:#dbe8ee;font-size:.86rem;text-transform:uppercase}.connection-phase-heading span{color:var(--text-muted);font-size:.78rem;text-align:right}.connection-list{border-top:1px solid var(--line)}.connection-row{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(280px,1fr) minmax(360px,1.2fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.connection-identity{align-self:start;gap:12px;min-width:0}.connection-device-icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border:1px solid var(--line-strong);border-radius:6px;color:var(--cyan);background:#b18cff12}.connection-identity>div{display:grid;gap:3px;min-width:0}.connection-identity strong,.connection-identity span,.connection-readiness p,.connection-details dd{overflow-wrap:anywhere}.connection-identity span{color:var(--text-muted);font-size:.8rem}.connection-readiness{align-content:start;gap:9px}.connection-readiness p{margin:0;color:#c4d3db;line-height:1.48}.connection-status{width:fit-content;max-width:100%;gap:6px;padding:5px 7px;border:1px solid var(--line);border-radius:4px;font-size:.72rem;font-weight:700;text-transform:uppercase;overflow-wrap:anywhere}.connection-status.status-live{border-color:#4ef1b873;color:var(--green);background:#4ef1b812}.connection-status.status-setup-required,.connection-status.status-details-needed{border-color:#ffcb6366;color:#ffcb63;background:#ffcb6312}.connection-status.status-discovery-required{border-color:#b18cff66;color:var(--cyan);background:#b18cff12}.connection-status.status-safety-review,.connection-status.status-disconnected{border-color:#ff6b6b6b;color:#ff9a9a;background:#ff6b6b12}.connection-status.status-planned{color:#b8c6ce;background:#ffffff08}.connection-details{align-content:start;grid-template-columns:1fr;gap:10px;margin:0}.connection-details>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px}.connection-details dt{color:var(--text-muted);font-size:.72rem;text-transform:uppercase}.connection-details dd{margin:0;color:#d4e0e6;font-size:.82rem;line-height:1.42}.connection-details .connection-safety dt{display:flex;align-items:center;gap:5px;color:#ffb0b0}.connections-footer{gap:8px;color:var(--text-muted);font-size:.78rem}.command-center-header,.command-center-summary,.command-status,.command-center-kicker,.command-control-group>header,.command-action-title,.command-action-meta{display:flex;align-items:center}.command-center-header{justify-content:space-between;gap:18px;padding-bottom:10px;border-bottom:1px solid var(--line)}.command-center-kicker{gap:7px;color:var(--cyan);font-size:.76rem;text-transform:uppercase}.command-center-header h2{margin:5px 0 0;font-size:1.3rem}.command-center-summary{flex-wrap:wrap;gap:8px}.command-center-summary span,.command-status,.command-mode{gap:6px;padding:5px 7px;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:var(--text-muted);font-size:.72rem}.command-center-error,.command-center-empty{padding:14px;border:1px solid rgba(255,107,107,.35);color:#ffd4d4;background:#ff6b6b0f}.command-center-empty{border-color:var(--line);color:var(--text-muted);background:var(--panel)}.command-control-groups,.command-control-group,.command-action-grid,.command-action{display:grid}.command-control-groups{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:10px}.command-control-group{grid-column:span 6;gap:9px;min-width:0;padding:10px;border:1px solid rgba(255,255,255,.09);border-radius:6px;background:#0a131994}.command-control-group>header{justify-content:space-between;gap:8px}.command-control-group h3{margin:0;color:#c7d7e0;font-size:.76rem;text-transform:uppercase}.command-control-group>header>span{display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line);border-radius:50%;color:var(--text-muted);font-size:.68rem}.command-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.command-action{align-content:start;gap:5px;min-width:0;min-height:68px;padding:7px;border:1px solid rgba(177,140,255,.16);border-radius:5px;color:#e5f2f7;background:#b18cff0b;text-align:left;cursor:pointer}.command-action:hover:not(:disabled),.command-action:focus-visible{border-color:var(--cyan);background:#b18cff1a;outline:none}.command-action:disabled{border-color:#ff6b6b38;color:var(--text-muted);background:#ff6b6b09;cursor:not-allowed;opacity:.78}.command-action-title{align-items:flex-start;gap:6px;min-width:0}.command-action-title svg{flex:0 0 auto;margin-top:1px;color:var(--cyan)}.command-action-title strong{min-width:0;font-size:.78rem;line-height:1.22;overflow-wrap:anywhere}.command-action-meta{flex-wrap:wrap;gap:4px}.command-action .command-status{display:grid;place-items:center;width:22px;height:22px;padding:0}.command-mode{flex:0 0 auto;padding:2px 4px;text-transform:uppercase}.command-mode.mode-read{color:var(--cyan)}.command-mode.mode-write{color:var(--amber)}.command-action code{color:#cbeaf6;font-size:.62rem;line-height:1.2;overflow-wrap:anywhere}.command-example{color:var(--text-muted);font-size:.68rem;line-height:1.3}.settings-advanced-section{grid-column:1 / -1;border:1px solid var(--line);background:#0003}.settings-advanced-section>summary{min-height:48px;padding:13px 14px;cursor:pointer;color:var(--text);font-weight:750}.settings-advanced-section>.ha-device-map{border:0;border-top:1px solid var(--line)}.status-verified{border-color:#5cf2a44d;color:var(--green)}.status-manual{border-color:#ffca634d;color:var(--amber)}.status-blocked{border-color:#ff6b6b52;color:var(--red)}.voice-command-center{position:relative;z-index:1;display:grid;grid-template-columns:minmax(108px,136px) minmax(0,1fr);grid-template-areas:"voice-core microphone" "voice-core readout" "voice-core wake";align-items:center;gap:6px 10px;width:100%;max-width:540px;min-width:0;margin-inline:auto}.voice-command-center>.voice-core{grid-area:voice-core}.voice-command-center>.microphone-input-toggle{grid-area:microphone;width:100%}.voice-command-center>.command-readout{grid-area:readout}.voice-command-center>.wake-status{grid-area:wake;width:100%;text-align:center}.microphone-input-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px;min-height:44px;padding:8px 12px;border:1px solid rgba(92,242,164,.38);border-radius:6px;background:#081216eb;color:var(--green);font-size:.78rem;font-weight:800}.microphone-input-toggle.is-disabled{border-color:#ffca636b;color:var(--amber)}.microphone-input-toggle.is-suspended{border-color:#70e39b57;color:#70e39b}.ptt-button:disabled{cursor:not-allowed;opacity:.58}.voice-core{position:relative;z-index:1;display:grid;place-items:center;gap:8px;width:100%;min-width:0}.ptt-button{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;place-items:stretch;gap:10px;width:min(136px,100%);max-height:164px;aspect-ratio:4 / 4.8;padding:10px;border:1px solid rgba(177,140,255,.58);border-radius:8px;background:#0d141c;box-shadow:inset 0 0 28px #b18cff1a,0 12px 36px #00000057;cursor:pointer;touch-action:none;user-select:none;-webkit-touch-callout:none;-webkit-user-select:none}.avatar-media-frame{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0;overflow:hidden;border-radius:5px;background:#080d12}.tars-avatar-button img{width:100%;height:100%;max-width:100%;max-height:100%;border-radius:5px;object-fit:contain;object-position:center;pointer-events:none}.avatar-energy-ring{position:absolute;z-index:-1;inset:-10px;border:2px solid rgba(177,140,255,.32);border-radius:8px;pointer-events:none}.avatar-fallback{color:var(--cyan)}.avatar-mic-badge{position:absolute;top:10px;left:10px;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#04080ce0;color:var(--cyan)}.voice-state-label{position:relative;width:100%;min-height:34px;padding:8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:4px;background:#04080ce0;color:#edf7ff;font-size:.78rem;font-weight:800;letter-spacing:0}.voice-state-listening,.voice-state-speaking{border-color:var(--green)}.voice-state-listening .avatar-energy-ring{border-color:var(--green);animation:avatar-pulse 1.15s ease-in-out infinite}.voice-state-transcribing,.voice-state-thinking{border-color:var(--amber)}.voice-state-transcribing .avatar-energy-ring,.voice-state-thinking .avatar-energy-ring{border-color:var(--amber);animation:avatar-scan 1.5s linear infinite}.voice-state-acting .avatar-energy-ring{border-color:var(--violet);animation:avatar-pulse .9s ease-in-out infinite}.voice-state-success,.voice-state-success .avatar-energy-ring{border-color:var(--green)}.voice-state-success .voice-state-label{color:var(--green)}.voice-state-verifying .avatar-energy-ring{border-color:var(--cyan);animation:avatar-scan .8s linear infinite}.voice-state-speaking .avatar-mic-badge{color:var(--green);animation:speaking-level .7s ease-in-out infinite alternate}.voice-state-error,.voice-state-error .avatar-energy-ring{border-color:var(--red)}.voice-state-error .avatar-mic-badge,.voice-state-error .voice-state-label{color:var(--red)}@keyframes avatar-pulse{50%{opacity:.42;transform:scale(1.025)}}@keyframes avatar-scan{50%{border-color:#fffc}}@keyframes speaking-level{to{transform:scale(1.1)}}.command-readout{display:grid;place-items:center;width:100%;min-width:0;min-height:44px;padding:8px 12px;border:1px solid var(--line);background:#0000003d;color:#dce8ef;text-align:center}.command-readout span{overflow-wrap:anywhere}.wake-status{min-height:28px;padding:6px 10px;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:var(--text-muted);background:#0000002e;font-size:.8rem;text-align:center}.wake-listening,.wake-heard{border-color:#5cf2a459;color:var(--green)}.wake-paused,.wake-permission,.wake-unsupported{border-color:#ffca6359;color:var(--amber)}.wake-error{border-color:#ff6b6b66;color:var(--red)}.phase-listening{border-color:#5cf2a46b;color:var(--green)}.phase-transcribing,.phase-thinking,.phase-acting,.phase-verifying{border-color:#ffca6361;color:var(--amber)}.phase-done{border-color:#b18cff6b;color:#edf7ff}.phase-error{border-color:#ff6b6b6b;color:var(--red)}.chat-panel{display:grid;grid-template-rows:auto auto auto auto minmax(0,auto);min-height:0;overflow:hidden}.quick-command-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:#060a10e0}.quick-command-header>div{display:grid;gap:2px}.quick-command-header strong{color:#edf7ff;font-size:.84rem}.quick-command-header>div>span{color:var(--text-muted);font-size:.7rem}.command-recovery{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:9px 12px;border-bottom:1px solid rgba(255,202,99,.24);background:#ffca6312;color:var(--amber)}.command-recovery-copy{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 7px;min-width:0}.command-recovery-copy>span{align-self:center;padding:2px 5px;border:1px solid currentColor;border-radius:3px;font-size:.58rem;font-weight:900}.command-recovery-copy strong{min-width:0;color:#fff0c8;font-size:.76rem;overflow-wrap:anywhere}.command-recovery-copy small{grid-column:1 / -1;color:#cabd9f;font-size:.68rem;line-height:1.3}.command-recovery>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 10px;border:1px solid rgba(255,202,99,.34);border-radius:5px;background:#ffca631a;color:#fff0c8;font-size:.7rem;font-weight:800;white-space:nowrap}.command-recovery.recovery-verification,.command-recovery.recovery-command{border-bottom-color:#ff6b6b42;background:#ff6b6b12;color:var(--red)}.command-recovery.recovery-verification .command-recovery-copy strong,.command-recovery.recovery-command .command-recovery-copy strong{color:#ffd6d6}.command-recovery.recovery-verification>button,.command-recovery.recovery-command>button{border-color:#ff6b6b57;background:#ff6b6b1a;color:#ffd6d6}.command-confirmation{display:grid;grid-template-columns:22px minmax(0,1fr) auto 44px;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(255,202,99,.28);background:#ffca6314;color:var(--amber)}.command-confirmation>div{display:grid;gap:2px}.command-confirmation strong{color:#fff0c8;font-size:.82rem}.command-confirmation span{color:#cabd9f;font-size:.72rem}.confirmation-approve,.confirmation-cancel{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid rgba(255,202,99,.34);border-radius:6px;background:#ffca631a;color:#fff0c8;cursor:pointer}.confirmation-approve{gap:6px;padding:0 12px;font-weight:800}.confirmation-cancel{width:44px}.chat-stream{display:grid;align-content:start;gap:8px;max-height:150px;padding:8px 10px;overflow:auto}.boot-message,.message{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:start}.boot-message{color:var(--text-muted)}.message-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:6px;background:#ffffff0a}.message p,.boot-message p{min-width:0;margin:0;padding:10px 12px;border:1px solid rgba(255,255,255,.06);background:#ffffff09;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.message.user p{border-color:#b18cff47;background:#b18cff14}.message.assistant p{border-color:#5cf2a438;background:#5cf2a40f}.chat-input{z-index:3;display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:10px;padding:12px;border-bottom:1px solid var(--line);background:#060a10f5}.chat-input textarea,.settings-field input,.settings-field select,.settings-switches select,.control-row select{width:100%;min-width:0;border:1px solid rgba(255,255,255,.11);border-radius:6px;background:#00000047;color:#edf7ff;outline:none}.voice-range-field input[type=range]{width:100%;accent-color:var(--cyan)}.chat-input textarea{min-height:44px;max-height:132px;padding:11px 13px;resize:none;line-height:1.35;overflow-y:auto}.chat-input textarea:focus,.settings-field input:focus,.settings-field select:focus,.settings-switches select:focus,.control-row select:focus{border-color:var(--cyan)}.send-button{width:44px;height:44px;background:#b18cff1f}.device-band{overflow:hidden}.right-stack{display:grid;align-content:start;gap:10px;min-height:0;overflow:visible}.history-page{width:min(760px,100%);margin:18px auto 0}.history-page .history-rail{min-height:calc(100dvh - 140px)}.live-pool-panel{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#5caaff13,#b18cff06 42%,#ffffff03),var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.live-pool-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.09)}.live-pool-title,.live-pool-actions,.pool-body-heading,.pool-lights-heading,.light-appearance-details summary{display:flex;align-items:center}.live-pool-title{min-width:0;gap:10px}.live-pool-mark{display:grid;flex:0 0 auto;place-items:center;width:34px;height:34px;border:1px solid rgba(92,170,255,.34);border-radius:6px;color:var(--blue);background:#5caaff14}.live-pool-title strong{display:block;margin-top:3px;color:#edf7ff;font-size:.98rem}.pool-kicker{color:var(--blue)}.live-pool-actions{flex:0 0 auto;gap:7px}.pool-mode{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 8px;border:1px solid currentColor;border-radius:4px;color:var(--amber);font-size:.68rem;font-weight:800;text-transform:uppercase}.pool-mode i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.pool-mode.mode-live{color:var(--green)}.pool-mode.mode-disconnected{color:var(--red)}.pool-mode.mode-simulation,.pool-mode.mode-waiting{color:var(--amber)}.live-pool-header button{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:6px;background:#b18cff1a;cursor:pointer}.pool-body-grid,.pool-equipment-grid,.pool-accessory-row{display:grid}.pool-body-grid,.pool-equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pool-body-summary{position:relative;min-width:0;padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.09)}.pool-body-summary+.pool-body-summary,.pool-equipment-stat+.pool-equipment-stat{border-left:1px solid rgba(255,255,255,.09)}.pool-body-heading{justify-content:space-between;gap:8px}.live-tile-label{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:.78rem}.pool-body-heading>strong{color:#edf7ff;font-size:.74rem;text-transform:uppercase}.pool-body-temperature{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2px 8px;margin-top:10px;border:0;box-shadow:none}.pool-body-temperature>span{grid-column:1 / -1;color:var(--text-muted);font-size:.68rem}.pool-body-temperature>strong{color:#edf7ff;font-size:1.4rem;line-height:1;overflow-wrap:anywhere}.pool-body-temperature .temperature-freshness{align-self:end;margin:0 0 1px;text-align:right}.pool-body-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:7px 0 0;padding-top:7px;border-top:1px solid rgba(255,255,255,.07)}.pool-body-details div{min-width:0}.pool-body-details dt,.pool-body-details dd,.pool-body-details small{margin:0}.pool-body-details dt{color:var(--text-muted);font-size:.65rem}.pool-body-details dd{margin-top:3px;color:#edf7ff;font-size:.82rem;font-weight:750;overflow-wrap:anywhere}.pool-body-details small{display:block;margin-top:2px;color:var(--text-muted);font-size:.65rem}.heat-tone-heating dd,.heat-tone-heating small{color:#ff8787}.heat-tone-on dd,.heat-tone-on small{color:var(--blue)}.pool-equipment-grid{border-bottom:1px solid rgba(255,255,255,.09)}.pool-equipment-stat{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:60px;padding:7px 10px}.pool-equipment-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.1);border-radius:5px;color:var(--text-muted)}.pool-equipment-stat>div{display:grid;min-width:0;gap:2px}.pool-equipment-stat span,.pool-equipment-stat small,.light-control-source,.light-control-note,.light-control-error,.light-capability-message{color:var(--text-muted);font-size:.68rem;line-height:1.4}.pool-equipment-stat strong{min-width:0;color:#edf7ff;font-size:.86rem;line-height:1.15;overflow-wrap:anywhere}.pool-equipment-stat small{overflow-wrap:anywhere}.tone-heating{border-color:#ff6b6b94;box-shadow:inset 3px 0 #ff6b6bd1}.tone-heating strong,.tone-heating .live-tile-label,.tone-heating .pool-equipment-icon,.tone-heating .temperature-freshness{color:#ff8787}.tone-on{border-color:#5caaff80;box-shadow:inset 3px 0 #5caaffc7}.tone-on strong,.tone-on .live-tile-label,.tone-on .pool-equipment-icon{color:var(--blue)}.tone-idle strong,.tone-idle .live-tile-label,.tone-idle .pool-equipment-icon{color:#edf7ff}.tone-unavailable strong,.tone-unavailable .live-tile-label,.tone-unavailable .pool-equipment-icon{color:#778895}.tone-error{border-color:#ff6b6b80}.tone-error strong,.tone-error .pool-equipment-icon{color:var(--red)}.temperature-freshness{display:block;min-height:16px;margin-top:5px;color:var(--text-muted);font-size:.7rem}.freshness-current{color:var(--green)}.freshness-stale{color:var(--red)}.freshness-unavailable{color:#778895}.pool-controls-zone{min-width:0}.pool-lights-card{min-width:0;padding:9px 10px 0}.pool-lights-heading{justify-content:space-between;gap:12px}.pool-lights-heading>div{min-width:0}.pool-lights-heading strong{display:block;margin-top:4px;color:#edf7ff;font-size:.84rem}.light-switch{position:relative;flex:0 0 auto;width:58px;height:44px;padding:7px;border:1px solid rgba(255,255,255,.2);border-radius:22px;background:#ffffff14;cursor:pointer}.light-switch span{display:block;width:28px;height:28px;border-radius:50%;background:#8a98a2;transition:transform .16s ease,background-color .16s ease}.light-switch[aria-checked=true]{border-color:#b18cff8f;background:#b18cff2e}.light-switch[aria-checked=true] span{background:var(--cyan);transform:translate(14px)}.light-state-on{color:var(--cyan)!important}.light-control-error{display:block;margin-top:6px;color:#ff9b9b}.light-control-note{display:block;margin-top:6px}.light-appearance-details{margin-top:9px;border-top:1px solid rgba(255,255,255,.08)}.light-appearance-details summary{justify-content:space-between;gap:10px;min-height:38px;color:var(--text-muted);cursor:pointer;font-size:.72rem;list-style:none}.light-appearance-details summary::-webkit-details-marker{display:none}.light-appearance-details summary>span{display:inline-flex;align-items:center;gap:7px}.light-appearance-details .details-chevron{transition:transform .16s ease}.light-appearance-details[open] .details-chevron{transform:rotate(180deg)}.light-appearance-content{padding:0 0 12px}.light-appearance-content.is-expanded{padding-bottom:8px}.light-appearance-section{display:grid;gap:7px;margin-top:8px}.light-appearance-section>span{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.light-option-grid,.light-show-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:6px}.light-option-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.light-advance-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.light-advance-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:5px 8px;border:1px solid rgba(177,140,255,.26);border-radius:5px;background:#b18cff14;color:#d9caff;font-size:.72rem;font-weight:700}.light-option{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:5px;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:#0000002e;color:#c9d7e0;cursor:pointer;font-size:.7rem}.light-show-details{margin-top:8px}.light-show-details .light-show-grid{padding-bottom:8px}.light-option.active{border-color:var(--cyan);box-shadow:inset 0 0 0 1px #b18cff38;color:#edf7ff}.light-swatch{width:14px;height:14px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#dfe7eb}.light-color-blue .light-swatch{background:#3b82f6}.light-color-green .light-swatch{background:#27c67a}.light-color-red .light-swatch{background:#ef5b5b}.light-color-magenta .light-swatch{background:#d95fcb}.light-capability-message{display:block;margin-top:8px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08);color:#a9b7c1}.light-control-source{display:block;margin-top:9px}.pool-accessory-row{grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.09)}.pool-accessory-status{min-width:0;min-height:56px;padding:9px 7px;border-right:1px solid rgba(255,255,255,.08)}.pool-accessory-status:last-child{border-right:0}.pool-accessory-status span{display:flex;align-items:center;gap:5px;min-width:0;color:var(--text-muted);font-size:.64rem;line-height:1.15}.pool-accessory-status svg{flex:0 0 auto}.pool-accessory-status strong{display:block;margin-top:6px;color:#edf7ff;font-size:.76rem}.status-tone-on strong{color:var(--blue)}.status-tone-unavailable strong{color:#778895}.spotify-panel{display:grid;align-content:start;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(180deg,#70e39b12,#ffffff03 42%),var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.spotify-panel-header,.spotify-header-actions,.spotify-time-row,.spotify-notice,.spotify-error{display:flex;align-items:center}.spotify-panel-header{justify-content:space-between;gap:12px}.spotify-panel-header strong{display:block;margin-top:3px;color:#b9f3cd}.spotify-account-line{display:block;max-width:260px;margin-top:3px;color:var(--text-muted);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-kicker{color:#70e39b;font-size:.7rem;font-weight:800;text-transform:uppercase}.spotify-header-actions{gap:6px}.spotify-connect-button,.spotify-transport button,.spotify-search button,.spotify-search-results button,.spotify-playlist-strip button,.spotify-queue-row button,.spotify-alias-row>button{border:1px solid rgba(112,227,155,.3);border-radius:6px;background:#70e39b17;color:#e9fff1;cursor:pointer}.spotify-connect-button{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 11px}.spotify-now-playing{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:3px 0}.spotify-now-playing>img,.spotify-art-placeholder{width:56px;height:56px;border:1px solid rgba(255,255,255,.12);border-radius:4px;object-fit:cover}.spotify-art-placeholder{display:grid;place-items:center;color:#70e39b;background:#101820}.spotify-track-copy{display:grid;gap:3px;min-width:0}.spotify-track-copy strong,.spotify-track-copy span,.spotify-track-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-track-copy span,.spotify-track-copy small,.spotify-time-row,.spotify-device-volume label>span{color:var(--text-muted)}.spotify-track-copy small,.spotify-time-row{font-size:.74rem}.spotify-progress{height:4px;overflow:hidden;border-radius:2px;background:#ffffff1a}.spotify-progress span{display:block;height:100%;border-radius:inherit;background:#70e39b}.spotify-time-row{justify-content:space-between;margin-top:-7px}.spotify-transport{display:grid;grid-template-columns:repeat(5,44px);justify-content:center;gap:6px}.spotify-transport button,.spotify-search button{display:grid;place-items:center;width:44px;height:44px;padding:0}.spotify-transport button:hover,.spotify-transport button.active,.spotify-search button:hover,.spotify-connect-button:hover{border-color:#70e39b;background:#70e39b2e}.spotify-primary-control{color:#07130c!important;background:#70e39b!important}.spotify-device-volume{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(120px,.8fr);gap:10px}.spotify-device-volume label{display:grid;gap:6px}.spotify-device-detail{color:var(--text-muted);font-size:.66rem}.spotify-device-volume label>span{display:flex;align-items:center;gap:6px;font-size:.76rem}.spotify-device-volume select,.spotify-search input,.spotify-search select,.spotify-alias-row input{width:100%;min-width:0;height:40px;padding:0 10px;border:1px solid rgba(255,255,255,.11);border-radius:6px;background:#00000047;color:#edf7ff}.spotify-device-volume input[type=range]{width:100%;margin:0;accent-color:#70e39b}.spotify-volume-buttons{display:grid;grid-template-columns:repeat(5,minmax(36px,1fr));gap:4px}.spotify-volume-buttons button{min-width:0;min-height:36px;padding:0 5px;border:1px solid rgba(255,255,255,.11);background:#00000047;color:var(--text)}.spotify-notice,.spotify-error{gap:8px;padding:9px 10px;border:1px solid rgba(255,202,99,.3);color:var(--amber);font-size:.8rem}.spotify-library,.spotify-queue,.spotify-search-results-wrap{min-width:0;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.spotify-section-heading,.spotify-section-heading strong,.spotify-search-results-wrap summary{display:flex;align-items:center}.spotify-section-heading,.spotify-search-results-wrap summary{justify-content:space-between;gap:8px;min-height:28px;color:#dfeaf0;font-size:.76rem}.spotify-section-heading strong{gap:6px}.spotify-section-heading small{color:var(--text-muted)}.spotify-playlist-heading-actions,.spotify-playlist-manager-row,.spotify-playlist-manager-row label,.spotify-playlist-manager-actions,.spotify-playlist-strip strong{display:flex;align-items:center}.spotify-playlist-heading-actions{gap:6px}.spotify-playlist-manager-toggle{width:28px;height:28px}.spotify-playlist-strip{display:flex;gap:6px;overflow-x:auto;padding:2px 0 5px;scrollbar-width:thin}.spotify-playlist-strip button{display:grid;flex:0 0 172px;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:7px;min-height:46px;padding:5px 7px;text-align:left}.spotify-playlist-strip img,.spotify-queue-row img{width:34px;height:34px;border-radius:3px;object-fit:cover}.spotify-playlist-strip span,.spotify-queue-copy{display:grid;min-width:0}.spotify-playlist-strip strong,.spotify-playlist-strip small,.spotify-queue-copy strong,.spotify-queue-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-playlist-strip strong{gap:4px}.spotify-owl-favorite{flex:0 0 auto;color:#f4cf68;fill:#f4cf6847}.spotify-playlist-strip small,.spotify-queue-copy small,.spotify-empty-row{color:var(--text-muted);font-size:.66rem}.spotify-playlist-manager{display:grid;gap:7px;margin-top:5px;padding-top:7px;border-top:1px solid rgba(255,255,255,.08)}.spotify-playlist-manager-list{display:grid;max-height:228px;overflow-y:auto;scrollbar-width:thin}.spotify-playlist-manager-row{display:grid;grid-template-columns:18px minmax(0,1fr) 28px 28px;gap:5px;min-height:36px;border-top:1px solid rgba(255,255,255,.055)}.spotify-playlist-manager-row:first-child{border-top:0}.spotify-playlist-manager-row.dragging{opacity:.52}.spotify-playlist-drag-handle{color:#7f929d;cursor:grab}.spotify-playlist-manager-row label{min-width:0;gap:7px;color:#dfeaf0;font-size:.76rem}.spotify-playlist-manager-row label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-playlist-manager-row input{margin:0;accent-color:#70e39b}.spotify-playlist-manager-row .icon-button{width:28px;height:28px}.spotify-playlist-manager-actions{justify-content:flex-end;gap:6px}.spotify-playlist-manager-actions button{min-height:30px;padding:5px 10px;border:1px solid rgba(255,255,255,.16);border-radius:5px;color:#c8d7de;background:#080f14b8}.spotify-playlist-manager-actions .spotify-playlist-save{border-color:#70e39b61;color:#d9f7e3;background:#236f4652}.spotify-queue-list{max-height:164px;overflow-y:auto}.spotify-queue-row{display:grid;grid-template-columns:18px 34px minmax(0,1fr) 30px;align-items:center;gap:7px;min-height:43px;border-top:1px solid rgba(255,255,255,.055)}.spotify-queue-position,.spotify-queued-indicator{display:grid;place-items:center;color:#70e39b}.spotify-queue-row button,.spotify-search-result button{display:grid;place-items:center;width:30px;height:30px;padding:0}.spotify-search-result .spotify-queue-action{width:auto;min-width:74px;padding:0 10px;gap:6px;color:var(--accent)}.spotify-search-result .spotify-queue-action span{font-size:.72rem;font-weight:700}.spotify-search{display:grid;grid-template-columns:minmax(0,1fr) 92px 42px;gap:8px}.spotify-search-results{display:grid;gap:6px;max-height:190px;overflow-y:auto}.spotify-search-result{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:9px;min-height:48px;padding:6px 9px;border-top:1px solid rgba(255,255,255,.055)}.spotify-search-results img{width:36px;height:36px;border-radius:3px;object-fit:cover}.spotify-search-result>span:not(.spotify-queued-indicator){display:grid;min-width:0}.spotify-search-results-wrap summary{cursor:pointer;list-style:none}.spotify-search-results-wrap summary::-webkit-details-marker{display:none}.spotify-search-results-wrap summary svg{transition:transform .16s ease}.spotify-search-results-wrap[open] summary svg{transform:rotate(180deg)}.spotify-search-results strong,.spotify-search-results small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spotify-search-results small{color:var(--text-muted)}.spotify-aliases{border-top:1px solid rgba(255,255,255,.09);padding-top:10px}.spotify-aliases summary{color:var(--text-muted);cursor:pointer;font-size:.82rem}.spotify-alias-row{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}.spotify-role-options{display:flex;flex-wrap:wrap;gap:6px 10px}.spotify-role-options label{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:.75rem}.spotify-role-options input{accent-color:#70e39b}.spotify-alias-row>button{min-height:44px}.spotify-error{align-items:flex-start;border-color:#ff6b6b61;color:var(--red)}.spotify-error span{color:#ffd4d4}.confirmation-policy-list{display:grid;border-top:1px solid rgba(255,255,255,.08)}.confirmation-policy-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.confirmation-policy-list>div{min-height:42px;border-bottom:1px solid rgba(255,255,255,.08);color:var(--text-muted);font-size:.82rem}.confirmation-policy-list strong{color:#edf7ff;text-align:right}.confirmation-category-options{display:grid;gap:2px;margin:12px 0 0;padding:10px 0 0;border:0;border-top:1px solid rgba(255,255,255,.08)}.confirmation-category-options legend{padding:0;color:#edf7ff;font-size:.8rem;font-weight:800}.confirmation-category-options label{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:34px;color:var(--text-muted);font-size:.78rem}.confirmation-category-options input{width:17px;height:17px;margin:0;accent-color:var(--cyan)}.confirmation-fixed-note{margin:10px 0 0;color:var(--text-muted);font-size:.72rem;line-height:1.45}.section-title{gap:8px;height:38px;color:var(--text-muted);text-transform:uppercase;font-size:.86rem}.device-grid,.settings-grid{display:grid;gap:14px}.device-grid{max-height:calc(100vh - 160px);overflow:auto;padding-right:2px}.device-card,.settings-card{padding:14px;border-radius:8px}.device-card-header,.settings-card-header{justify-content:space-between;gap:12px;margin-bottom:14px}.device-card h2,.settings-card h2{font-size:1rem}.device-card-header p,.settings-card-header p{margin-top:4px;font-size:.86rem}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric{min-height:72px;padding:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff09}.metric span{display:block;color:var(--text-muted);font-size:.78rem}.metric strong{display:block;margin-top:8px;overflow-wrap:anywhere}.tone-good strong{color:var(--green)}.tone-warn strong{color:var(--amber)}.tone-alert strong{color:var(--red)}.tone-idle strong{color:#edf7ff}.control-grid{display:grid;gap:10px;margin-top:14px}.control-row{display:grid;grid-template-columns:minmax(86px,.7fr) minmax(90px,1fr);align-items:center;gap:10px;min-height:36px;color:#dce8ef}.control-row span,.settings-switches span,.settings-field span{color:var(--text-muted);font-size:.85rem}.control-row input[type=checkbox],.settings-switches input[type=checkbox]{justify-self:end;width:38px;height:20px;accent-color:var(--green)}.control-row input[type=range]{width:100%;accent-color:var(--cyan)}.range-row{grid-template-columns:minmax(76px,.6fr) minmax(90px,1fr) 38px}.range-row b{justify-self:end;color:var(--amber)}.control-row select{height:34px;padding:0 8px}.action-control{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;border:1px solid rgba(255,202,99,.32);border-radius:6px;background:#ffca631a;cursor:pointer}.settings-page{margin-top:18px}.connection-test-panel{display:grid;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff09}.settings-test-button{width:100%}.ha-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;border:1px solid rgba(255,255,255,.12);border-radius:6px;text-transform:uppercase;font-size:.78rem}.ha-connected{border-color:#5cf2a473;color:var(--green);background:#5cf2a414}.ha-disconnected{border-color:#ff6b6b73;color:var(--red);background:#ff6b6b14}.ha-authentication-required,.ha-network-unreachable,.ha-mfa-required,.ha-error{border-color:#ffca638c;color:var(--amber);background:#ffca631a}.ha-simulation{border-color:#ffca636b;color:var(--amber);background:#ffca6314}.connection-test-panel p{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.4}.ha-credential-form{display:grid;gap:10px}.ha-credential-form p{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.4}.connection-test-panel .voice-preview-error{color:var(--red)}.ecobee-thermostat-list{display:grid;gap:8px}.ecobee-thermostat-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:9px 10px;border:1px solid rgba(255,255,255,.08);background:#05090e5c}.ecobee-thermostat-row strong,.ecobee-thermostat-row span{display:block}.ecobee-thermostat-row span{margin-top:3px;color:var(--text-muted);font-size:.76rem;overflow-wrap:anywhere}.ecobee-thermostat-row b{color:var(--cyan);font-size:1.05rem}.pentair-manual-panel{display:grid;gap:12px;padding:12px;border:1px solid rgba(255,202,99,.24);background:#ffca6309}.pentair-read-evidence{display:grid;gap:12px;padding:12px;border:1px solid rgba(177,140,255,.24);background:#b18cff09}.read-evidence-heading,.read-evidence-meta,.read-evidence-category summary{display:flex;align-items:center}.read-evidence-heading{justify-content:space-between;gap:12px}.read-evidence-heading h3{margin:3px 0 0;font-size:.94rem}.read-evidence-content{display:grid;gap:8px}.read-evidence-meta{gap:9px;color:var(--text-muted);font-size:.74rem}.read-evidence-meta strong{color:var(--green)}.read-evidence-meta time{margin-left:auto}.read-evidence-category{border-top:1px solid rgba(255,255,255,.09)}.read-evidence-category summary{gap:9px;min-height:40px;cursor:pointer;color:#e4f1f7;font-size:.82rem}.read-evidence-category summary small{margin-left:auto;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.7rem}.read-evidence-values{display:grid;gap:7px;margin:0 0 10px}.read-evidence-values>div{display:grid;grid-template-columns:minmax(110px,.42fr) minmax(0,1fr);gap:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.06)}.read-evidence-values dt{color:var(--text-muted);font-size:.72rem}.read-evidence-values dd{min-width:0;margin:0;color:#e4f1f7;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.72rem;overflow-wrap:anywhere}.read-evidence-category .manual-observation-actions,.read-evidence-category .manual-observation-status{margin-bottom:11px}.manual-panel-heading,.manual-preview-status,.manual-actions,.manual-result-heading{display:flex;align-items:center}.manual-panel-heading{justify-content:space-between;gap:12px}.manual-panel-heading h3{margin:3px 0 0;font-size:.94rem}.manual-kicker{color:var(--amber);font-size:.7rem;text-transform:uppercase}.manual-command-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.manual-command-row .test-button{min-width:104px;min-height:40px}.manual-preview,.manual-result{display:grid;gap:12px;padding:11px;border:1px solid rgba(255,255,255,.09);background:#0003}.manual-preview-status{gap:8px;font-size:.82rem}.manual-gate-enabled{color:var(--green)}.manual-gate-disabled{color:var(--amber)}.manual-safety-checks{display:grid;gap:8px}.manual-safety-checks>strong{font-size:.78rem}.manual-safety-checks ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.manual-safety-checks li{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:3px 7px;font-size:.76rem}.manual-safety-checks small{grid-column:2;color:var(--text-muted);overflow-wrap:anywhere}.manual-safety-checks .safety-pass{color:var(--green)}.manual-safety-checks .safety-blocked{color:var(--amber)}.manual-evidence-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:0}.manual-evidence-grid>div{min-width:0;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.07)}.manual-evidence-grid dt{color:var(--text-muted);font-size:.72rem}.manual-evidence-grid dd{margin:3px 0 0;color:#e4f1f7;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.76rem;overflow-wrap:anywhere}.manual-confirmation-field span{color:var(--amber)}.manual-actions{gap:8px}.manual-execute{flex:1;border-color:#ffca6375;background:#ffca631a}.manual-result-heading{gap:8px}.manual-result-heading span{margin-left:auto;color:var(--text-muted);font-size:.76rem}.manual-observation{display:grid;gap:8px;padding-top:2px}.manual-observation>strong{font-size:.78rem}.manual-observation-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.manual-observation-actions .test-button{justify-content:center;min-width:0}.manual-observation-status{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;font-size:.8rem}.manual-observation-status small{color:var(--text-muted);font-size:.72rem}.observation-matched{color:var(--green)}.observation-did-not-match{color:var(--red)}.result-verified{border-color:#5cf2a46b}.result-verified .manual-result-heading{color:var(--green)}.result-failed{border-color:#ff6b6b6b}.result-failed .manual-result-heading{color:var(--red)}.pentair-page{margin-top:18px}.test-header,.connection-banner,.test-button,.test-metric,.probe-row{display:flex;align-items:center}.test-header{justify-content:space-between;gap:16px;margin-bottom:16px}.test-header h2{margin:4px 0 0;font-size:1.35rem}.test-button{justify-content:center;gap:8px;min-width:116px;min-height:42px;border:1px solid var(--line-strong);border-radius:6px;background:#b18cff1f;cursor:pointer}.connection-banner,.test-metric,.info-panel,.probe-panel{border:1px solid var(--line);background:linear-gradient(180deg,#ffffff0a,#ffffff03),var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.connection-banner{gap:12px;padding:18px;margin-bottom:16px}.connection-banner strong,.connection-banner span{display:block}.connection-banner strong{font-size:1.25rem}.connection-banner span{margin-top:4px;color:var(--text-muted)}.connection-banner.connected{border-color:#5cf2a473;color:var(--green)}.connection-banner.not-connected{border-color:#ff6b6b73;color:var(--red)}.test-grid,.test-columns{display:grid;gap:14px}.test-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.test-columns{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.test-metric{align-items:flex-start;flex-direction:column;gap:9px;min-height:126px;padding:14px;border-radius:8px}.test-metric span{color:var(--text-muted)}.test-metric strong{font-size:1.05rem;overflow-wrap:anywhere}.info-panel,.probe-panel{padding:14px;border-radius:8px}.info-panel h3,.probe-panel h3{margin:0 0 10px;font-size:.95rem}.info-panel ul{display:grid;gap:8px;padding-left:18px;margin:0}.info-panel p{margin:0;color:var(--text-muted)}.probe-panel{margin-top:14px}.probe-list{display:grid;gap:8px}.probe-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(120px,auto) minmax(120px,auto);gap:12px;min-height:42px;padding:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff09}.probe-row.ok strong{color:var(--green)}.probe-row.fail strong{color:var(--red)}.probe-row small{justify-self:end;color:var(--text-muted);overflow-wrap:anywhere}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-card{display:grid;gap:14px}.owl-mode-card{align-self:start;border-color:#ffca633d}.owl-mode-route-count{display:flex;align-items:center;justify-content:space-between;gap:12px}.owl-mode-route-count span{color:var(--text-muted);font-size:.82rem}.owl-mode-route-count strong{color:var(--amber);font-size:1.1rem}.ha-device-map{grid-column:1 / -1}.ha-map-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:10px}.ha-map-search{position:relative;min-width:0}.ha-map-search svg{position:absolute;top:50%;left:12px;color:var(--text-muted);transform:translateY(-50%);pointer-events:none}.ha-map-search input{width:100%;height:40px;padding:0 12px 0 38px}.ha-map-filters{display:inline-grid;grid-template-columns:repeat(3,auto);padding:4px;border:1px solid var(--line);background:#00000047}.ha-map-filters button{min-height:32px;padding:0 10px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer}.ha-map-filters button.active{border-color:var(--line-strong);background:#b18cff1f;color:#edf7ff}.ha-discover-button{min-width:122px}.ha-map-summary{display:flex;flex-wrap:wrap;gap:8px}.ha-map-summary span,.ha-device-badges span{padding:5px 7px;border:1px solid rgba(255,255,255,.1);border-radius:5px;color:var(--text-muted);font-size:.76rem}.ha-map-empty{display:flex;align-items:flex-start;gap:10px;padding:16px;border-top:1px solid rgba(255,255,255,.08);color:var(--amber)}.ha-map-empty p,.ha-device-details p{margin:4px 0 0;color:var(--text-muted);font-size:.82rem}.ha-map-no-results{padding:16px 0}.ha-device-list{display:grid;border-top:1px solid rgba(255,255,255,.1)}.ha-device-row{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(250px,1.2fr) minmax(270px,1fr);align-items:start;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.ha-device-identity,.ha-device-details,.ha-device-controls,.ha-alias-label{display:grid;gap:7px;min-width:0}.ha-device-identity span,.ha-alias-label>span,.ha-approval-toggle span{color:var(--text-muted);font-size:.8rem}.ha-device-identity code{color:#b9d4df;font-size:.76rem;overflow-wrap:anywhere}.ha-device-badges,.ha-action-line{display:flex;flex-wrap:wrap;gap:6px}.ha-device-badges .safety-safe_control,.ha-device-badges .safety-bounded_control{border-color:#5cf2a452;color:var(--green)}.ha-device-badges .safety-unknown_blocked{border-color:#ff6b6b61;color:var(--red)}.ha-device-badges .safety-read_only_security,.ha-device-badges .safety-read_only_appliance,.ha-device-badges .ha-confirm-badge{border-color:#ffca6357;color:var(--amber)}.ha-action-line span{color:var(--text-muted);font-size:.78rem;overflow-wrap:anywhere}.ha-approval-toggle{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.ha-approval-toggle input{width:38px;height:20px;accent-color:var(--green)}.ha-alias-editor{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px}.ha-alias-editor input{width:100%;min-width:0;height:38px;padding:0 10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-switches label,.settings-field{display:grid;gap:7px}.settings-switches label{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:42px;padding:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff09}.settings-field input,.settings-field select,.settings-switches select{height:40px;padding:0 10px}.setup-steps{display:grid;gap:8px}.setup-steps strong{color:#edf7ff}.setup-steps ol{display:grid;gap:5px;margin:0;padding-left:20px;color:var(--text-muted);font-size:.84rem}.setup-steps code{display:block;padding:9px 10px;border:1px solid rgba(177,140,255,.24);border-radius:6px;background:#b18cff14;color:#dff8ff;overflow-wrap:anywhere}.capability-list{display:flex;flex-wrap:wrap;gap:6px}.capability-list span{padding:5px 7px;border:1px solid rgba(177,140,255,.18);background:#b18cff14;color:#cfeaf6;font-size:.76rem}.settings-status{gap:7px;color:var(--text-muted);text-transform:uppercase;font-size:.78rem}.status-simulated{color:var(--amber)}.status-configured{color:var(--green)}.status-offline{color:var(--red)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1240px){.dashboard-layout:not(.guest-dashboard-layout){grid-template-columns:minmax(330px,390px) minmax(820px,1fr);gap:10px}.dashboard-layout:not(.guest-dashboard-layout) .right-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-layout:not(.guest-dashboard-layout) .right-stack>.device-band{grid-column:1 / -1}.dashboard-layout:not(.guest-dashboard-layout) .voice-panel{grid-template-columns:1fr;gap:8px;min-height:0}.dashboard-layout:not(.guest-dashboard-layout) .tars-status-panel h2{margin:0;font-size:.76rem}.dashboard-layout:not(.guest-dashboard-layout) .status-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.dashboard-layout:not(.guest-dashboard-layout) .status-line{display:grid;place-items:center;gap:3px;min-height:52px;padding:5px 2px;text-align:center}.dashboard-layout:not(.guest-dashboard-layout) .status-line-label{display:grid;place-items:center;gap:3px;min-width:0;font-size:.58rem}}@media(max-width:1200px){.dashboard-layout{grid-template-columns:minmax(0,1fr)}.command-deck{display:contents}.chat-panel{order:1}.voice-panel{order:2}.right-stack{order:3}.right-stack{min-height:auto}.conversation-list{max-height:260px}.device-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;overflow:visible}.settings-grid,.test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.command-control-group{grid-column:span 6}.command-action code{display:none}.connection-row{grid-template-columns:minmax(210px,.75fr) minmax(280px,1.25fr)}.connection-details{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:840px){.app-shell{padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.topbar{align-items:flex-start;flex-direction:column}.topbar-controls{width:100%;align-items:stretch;flex-direction:column}.primary-navigation{width:100%;overflow-x:auto;scrollbar-width:none}.primary-navigation::-webkit-scrollbar{display:none}.top-command-actions,.utility-actions{align-self:flex-end}.primary-navigation button,.top-command-actions button,.utility-actions button,.icon-button{flex:0 0 auto;height:44px}.top-command-actions button,.utility-actions button,.icon-button{width:44px}.top-command-actions .owl-mode-quick-button{flex-basis:44px;width:44px;min-width:44px;height:44px;min-height:44px}.top-command-actions .owl-mode-eyes{top:14px;left:9px}.top-command-actions .owl-mode-beak{top:30px;left:18px}.live-pool-header button{width:44px;height:44px}.spotify-connect-button{min-height:44px}.owner-action-controls button,.owner-action-manual,.owner-action-review>summary{min-height:44px}.owner-action-controls button{flex:1 1 auto}.owner-action-row{grid-template-columns:88px minmax(0,1fr)}.owner-action-row time{grid-column:2}.dashboard-layout,.settings-grid,.device-grid,.test-grid,.test-columns{grid-template-columns:1fr}.test-header{align-items:flex-start;flex-direction:column}.history-rail,.command-deck,.device-band{min-height:auto}.chat-panel{order:1}.voice-panel{order:2}.right-stack{order:3}.conversation-list{max-height:220px}.command-deck{grid-template-rows:auto auto}.voice-panel{grid-template-columns:1fr;gap:10px;min-height:auto;padding:12px}.tars-status-panel{gap:8px;min-height:0;align-content:start}.tars-status-panel h2{margin:0;font-size:.76rem}.status-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.status-line{display:grid;place-items:center;gap:4px;min-height:58px;padding:6px 3px;text-align:center}.status-line-label{display:grid;place-items:center;gap:3px;min-width:0;font-size:.62rem}.status-line-label svg,.status-line>svg{width:16px;height:16px}.ptt-button{width:min(120px,40vw)}.chat-panel{max-height:none}.ha-map-toolbar,.ha-device-row{grid-template-columns:1fr}.ha-map-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.ha-discover-button{width:100%}.connection-row,.connection-details>div{grid-template-columns:1fr}.connection-details{grid-column:auto;grid-template-columns:1fr}}@media(max-width:520px){.app-shell,.access-shell{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.brand-lockup p{display:none}.primary-navigation{gap:4px;padding:4px;flex-wrap:nowrap;justify-content:flex-start}.primary-navigation button{flex:0 0 44px;width:44px;padding:0;justify-content:center}.navigation-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.utility-actions{gap:4px;padding:4px}.session-role{display:none}.access-panel{padding:18px}.metric-grid,.settings-switches{grid-template-columns:1fr}.connections-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.connections-header,.connection-phase-heading{align-items:flex-start;flex-direction:column}.connection-phase-heading span{text-align:left}.connection-details>div{grid-template-columns:1fr;gap:4px}.command-control-group{grid-column:span 12}.command-action{min-height:78px}.control-row,.range-row,.manual-command-row{grid-template-columns:1fr}.manual-command-row .test-button{width:100%}.control-row input[type=checkbox]{justify-self:start}.spotify-device-volume{grid-template-columns:1fr}.pool-accessory-row{grid-template-columns:repeat(2,minmax(0,1fr))}.pool-accessory-status:nth-child(2){border-right:0}.pool-accessory-status:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}.light-option,.light-advance-button{min-height:44px}.voice-panel{padding:10px}.voice-command-center{grid-template-columns:minmax(96px,108px) minmax(0,1fr);gap:5px 8px}.ptt-button{width:min(108px,36vw)}.quick-command-header{align-items:flex-start;flex-wrap:wrap}.command-confirmation{grid-template-columns:22px minmax(0,1fr) 44px}.command-confirmation .confirmation-approve{grid-column:1 / -1;grid-row:2}.command-confirmation .confirmation-cancel{grid-column:3;grid-row:1}.chat-input{padding-bottom:max(12px,env(safe-area-inset-bottom))}.confirmation-policy-list>div{align-items:flex-start;flex-direction:column;gap:4px;padding:9px 0}.confirmation-policy-list strong{text-align:left}}@media(max-width:380px){.pool-body-grid,.pool-equipment-grid{grid-template-columns:1fr}.pool-body-summary+.pool-body-summary,.pool-equipment-stat+.pool-equipment-stat{border-left:0}.pool-equipment-stat+.pool-equipment-stat{border-top:1px solid rgba(255,255,255,.09)}.live-pool-header{align-items:flex-start}.live-pool-actions{align-items:flex-end;flex-direction:column-reverse}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}.upgrade-request-panel{grid-column:1 / -1}.upgrade-request-field textarea{width:100%;min-height:96px;resize:vertical;color:#edf7ff;background:#050a0fb3;border:1px solid var(--line);border-radius:6px;padding:11px 12px;line-height:1.45}.upgrade-request-controls{display:flex;align-items:stretch;gap:10px;margin-top:12px}.upgrade-request-controls .voice-core{display:flex;flex:1 1 190px}.compact-ptt-button{display:inline-flex;width:100%;min-height:42px;align-items:center;justify-content:center;gap:8px;padding:0 13px;color:#dfeaf2;background:#0a131beb;border:1px solid rgba(92,170,255,.45);border-radius:6px;cursor:pointer;font-size:13px;font-weight:750;touch-action:none;-webkit-user-select:none;user-select:none}.compact-ptt-button.voice-state-listening{color:#07130e;background:var(--green);border-color:var(--green)}.compact-ptt-button.voice-state-transcribing{color:#09131c;background:var(--blue);border-color:var(--blue)}.upgrade-send-button,.upgrade-approve-button{min-height:42px;justify-content:center}.upgrade-safety-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:var(--text-muted);font-size:12px;line-height:1.45}.upgrade-safety-note svg{flex:0 0 auto;color:var(--green)}.upgrade-request-notice,.upgrade-request-error{margin:12px 0 0;font-size:13px;line-height:1.45}.upgrade-request-notice{color:var(--green)}.upgrade-request-error,.upgrade-blocker{color:#ff9b9b}.upgrade-request-history{margin-top:18px;border-top:1px solid var(--line)}.upgrade-history-heading,.upgrade-request-row-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.upgrade-history-heading{padding:14px 0 6px}.upgrade-history-heading button{padding:4px 0;color:var(--blue);background:transparent;border:0;cursor:pointer;font-size:12px;font-weight:700}.upgrade-request-row{padding:14px 0;border-top:1px solid rgba(177,140,255,.12)}.upgrade-request-row-heading time{flex:0 0 auto;color:var(--text-muted);font-size:11px}.upgrade-status{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;color:#c7d7e0;background:#5caaff1a;border:1px solid rgba(92,170,255,.3);border-radius:4px;font-size:10px;font-weight:850;text-transform:uppercase}.upgrade-status-ready_for_approval,.upgrade-status-codex_completed{color:var(--green);background:#5cf2a414;border-color:#5cf2a457}.upgrade-status-failed{color:#ff9b9b;background:#ff6b6b14;border-color:#ff6b6b57}.upgrade-request-text,.upgrade-analysis p{margin:9px 0 0;overflow-wrap:anywhere;line-height:1.45}.upgrade-request-text{color:#edf7ff;font-size:14px}.upgrade-analysis{margin-top:12px;padding-left:12px;border-left:2px solid rgba(92,170,255,.42);color:#b8c8d1;font-size:12px}.upgrade-analysis ul{margin:8px 0 0;padding-left:18px}.upgrade-analysis li+li{margin-top:4px}.upgrade-approve-button{margin-top:12px}.upgrade-result{margin-top:11px;color:var(--text-muted);font-size:12px}.upgrade-result summary{cursor:pointer;color:var(--blue);font-weight:700}.upgrade-result pre{max-height:260px;margin:8px 0 0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}@media(max-width:520px){.upgrade-request-controls{flex-direction:column}.upgrade-request-controls .voice-core{flex-basis:auto}}.pilot-page{--pilot-ink: #07151a;--pilot-muted: #557078;--pilot-line: #cad8d9;--pilot-paper: #f4f5ef;--pilot-signal: #eeff65;min-height:100vh;color:var(--pilot-ink);background:var(--pilot-paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.pilot-page *{box-sizing:border-box}.pilot-page a{color:inherit}.pilot-nav,.pilot-hero,.pilot-section,.pilot-footer{max-width:1180px;margin-inline:auto}.pilot-nav{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid var(--pilot-line)}.pilot-brand{display:inline-flex;align-items:center;gap:11px;color:var(--pilot-ink);font-size:12px;font-weight:800;letter-spacing:.13em;text-decoration:none}.pilot-brand-mark{display:grid;place-items:center;width:31px;height:31px;color:var(--pilot-signal);background:var(--pilot-ink);border-radius:3px;font-size:16px;letter-spacing:0}.pilot-nav-link{font-size:13px;font-weight:700;text-underline-offset:4px}.pilot-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);column-gap:70px;align-items:end;padding:112px 28px 82px}.pilot-eyebrow{grid-column:1 / -1;display:flex;align-items:center;gap:10px;margin-bottom:38px;color:#38565e;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pilot-eyebrow span{width:8px;height:8px;background:#6ccf8b;border-radius:50%;box-shadow:0 0 0 5px #dcebdc}.pilot-hero h1{margin:0;max-width:700px;font-family:Georgia,Times New Roman,serif;font-size:clamp(54px,7vw,92px);font-weight:500;letter-spacing:-.055em;line-height:.93}.pilot-hero h1 em{color:#6a7e82;font-weight:400}.pilot-lede{max-width:640px;margin:32px 0 0;color:var(--pilot-muted);font-size:19px;line-height:1.65}.pilot-actions{display:flex;align-items:center;gap:22px;margin-top:32px}.pilot-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 20px;color:#fff!important;background:var(--pilot-ink);border:0;border-radius:3px;font:inherit;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer}.pilot-primary:disabled{cursor:not-allowed;opacity:.56}.pilot-secondary{font-size:14px;font-weight:800;text-underline-offset:5px}.pilot-microcopy{margin:18px 0 0;color:#6b7d81;font-size:12px;line-height:1.5}.pilot-console{align-self:center;padding:18px;color:#d8e5e5;background:#0b1d22;border:1px solid #17353b;border-radius:8px;box-shadow:18px 22px #dce4dc}.pilot-console-top{display:flex;align-items:center;gap:6px;padding-bottom:16px;border-bottom:1px solid #21383e}.pilot-console-top span{width:7px;height:7px;border-radius:50%;background:#496369}.pilot-console-top b{margin-left:auto;color:#7e979c;font-size:9px;letter-spacing:.12em}.pilot-chat-line{display:grid;grid-template-columns:46px 1fr;gap:12px;padding:24px 4px 5px}.pilot-chat-line span{padding-top:3px;color:#799197;font-size:9px;font-weight:900;letter-spacing:.1em}.pilot-chat-line p{margin:0;color:#f5f8f4;font-family:Georgia,serif;font-size:20px;line-height:1.35}.pilot-chat-line.tars p{color:var(--pilot-signal)}.pilot-verification{display:flex;gap:12px;margin-top:24px;padding:14px;color:var(--pilot-ink);background:var(--pilot-signal);border-radius:3px}.pilot-verification strong,.pilot-verification small{display:block}.pilot-verification strong{font-size:12px}.pilot-verification small{margin-top:3px;font-size:10px}.pilot-proof-strip{display:flex;justify-content:center;gap:clamp(30px,7vw,100px);padding:23px 28px;color:#d4e3e4;background:var(--pilot-ink);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pilot-section{padding:110px 28px;border-bottom:1px solid var(--pilot-line)}.pilot-section-heading{display:grid;grid-template-columns:.45fr 1fr;gap:70px;align-items:start}.pilot-section-heading p,.pilot-kicker{margin:8px 0 0;color:#61777d;font-size:10px;font-weight:900;letter-spacing:.16em}.pilot-section h2{margin:0;max-width:760px;font-family:Georgia,serif;font-size:clamp(38px,5vw,60px);font-weight:500;letter-spacing:-.04em;line-height:1.05}.pilot-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:78px;border-top:1px solid var(--pilot-line)}.pilot-steps article{position:relative;min-height:300px;padding:28px 38px 20px 0;border-right:1px solid var(--pilot-line)}.pilot-steps article+article{padding-left:38px}.pilot-steps article:last-child{border-right:0}.pilot-steps article>span{position:absolute;top:30px;right:28px;color:#819398;font-size:11px;font-weight:900}.pilot-steps svg{margin-top:82px}.pilot-steps h3{margin:22px 0 10px;font-family:Georgia,serif;font-size:27px;font-weight:500}.pilot-steps p{margin:0;color:var(--pilot-muted);font-size:14px;line-height:1.65}.pilot-pricing{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;background:#e5ebe5}.pilot-pricing h2{margin-top:28px;font-size:clamp(52px,7vw,76px)}.pilot-pricing h2 span{color:#687d81;font-size:.56em}.pilot-pricing>div>p:last-child{max-width:430px;color:var(--pilot-muted);line-height:1.7}.pilot-includes{padding:42px;background:var(--pilot-paper);border:1px solid #c5d1cc}.pilot-includes h3{margin:0 0 25px;font-family:Georgia,serif;font-size:28px;font-weight:500}.pilot-includes ul{display:grid;gap:16px;margin:0;padding:0;list-style:none}.pilot-includes li{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700}.pilot-includes li svg{flex:0 0 auto;padding:3px;color:var(--pilot-ink);background:var(--pilot-signal);border-radius:50%}.pilot-boundary{margin:28px 0;padding-top:24px;color:#6b7d81;border-top:1px solid var(--pilot-line);font-size:11px;line-height:1.6}.pilot-fit{display:grid;grid-template-columns:1fr 1fr;gap:90px}.pilot-fit h2{margin-top:28px;font-size:clamp(37px,4vw,52px)}.pilot-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;align-self:end;background:var(--pilot-line);border:1px solid var(--pilot-line)}.pilot-fit-grid>div{padding:28px;background:var(--pilot-paper)}.pilot-fit-grid strong{font-family:Georgia,serif;font-size:23px;font-weight:500}.pilot-fit-grid p{margin:12px 0 0;color:var(--pilot-muted);font-size:13px;line-height:1.65}.pilot-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:38px 28px;color:#6a7d81;font-size:11px}.pilot-footer a{font-weight:800;text-underline-offset:4px}@media(max-width:820px){.pilot-hero{grid-template-columns:1fr;padding-top:72px}.pilot-console{margin-top:55px}.pilot-proof-strip{flex-wrap:wrap;gap:16px 30px;justify-content:flex-start}.pilot-section-heading,.pilot-pricing,.pilot-fit{grid-template-columns:1fr;gap:52px}.pilot-steps{grid-template-columns:1fr}.pilot-steps article,.pilot-steps article+article{min-height:auto;padding:28px 10px 34px;border-right:0;border-bottom:1px solid var(--pilot-line)}.pilot-steps svg{margin-top:36px}}@media(max-width:560px){.pilot-nav{padding-inline:18px}.pilot-nav-link{display:none}.pilot-hero,.pilot-section{padding:68px 18px}.pilot-hero h1{font-size:52px}.pilot-lede{font-size:17px}.pilot-actions{align-items:stretch;flex-direction:column}.pilot-secondary{text-align:center}.pilot-console{box-shadow:8px 10px #dce4dc}.pilot-chat-line{grid-template-columns:1fr;gap:4px}.pilot-steps{margin-top:44px}.pilot-includes{padding:28px 22px}.pilot-fit-grid{grid-template-columns:1fr}.pilot-footer{align-items:flex-start;flex-direction:column;padding-inline:18px}}
