:root{font-family:system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;color-scheme:dark;background:#0c1522;color:#ebf4ff}*{box-sizing:border-box}body{margin:0;padding:20px 12px 50px;background:radial-gradient(circle at 90% 0%,#1d3552 0,#0c1522 50%)}.shell{max-width:780px;margin:auto}header,.brand,.row,.chips,form{display:flex;align-items:center;gap:12px}header,.row{justify-content:space-between}.brand{align-items:center}.mark{background:#2b9cdf;color:#071624;border-radius:16px;display:grid;place-items:center;width:50px;height:50px;font-size:29px;font-weight:900}h1{font-size:24px;margin:0}h1 small{color:#8cabc9;font-size:12px}h2{font-size:17px;margin:0 0 15px}p{color:#b5c5d8}header p{font-size:13px;margin:4px 0 0}.panel{margin-top:22px;border:1px solid #2e465f;background:#132336;border-radius:17px;padding:20px;box-shadow:0 12px 35px #030a1540}.chip,.state{border-radius:30px;border:1px solid #3a5977;padding:7px 11px;font-size:13px;background:#182f49;color:#cae3fa}.chips{flex-wrap:wrap;margin-bottom:20px}.chips .good,.state.good{border-color:#2b9269;color:#83e3b0}.state.bad{color:#ffadad;border-color:#af5265}label{align-self:stretch;font-size:14px}form{align-items:stretch;flex-direction:column}input,textarea{width:100%;color:#fff;background:#081727;padding:13px;border:1px solid #42607f;border-radius:11px;font:inherit;resize:vertical}input:focus,textarea:focus{outline:2px solid #54bafc}button{cursor:pointer;background:#43b4f7;border:0;border-radius:11px;color:#082034;padding:13px 22px;font:inherit;font-weight:800;align-self:stretch}button:disabled{opacity:.4;cursor:not-allowed}.hint{font-size:13px;margin-bottom:0}.message{word-break:break-word;white-space:pre-wrap}.timeline{list-style:decimal;margin:14px 0 0;padding-right:24px}.timeline li{padding:9px 0;border-bottom:1px solid #27405d;color:#d0e0f0;white-space:pre-wrap;word-break:break-word;font-size:14px}.timeline small{display:block;color:#7295b5}.hidden{display:none!important}footer{text-align:center;margin-top:25px;font-size:12px;color:#8cabc9}@media(max-width:500px){header{align-items:flex-start;gap:15px}.brand{align-items:flex-start}header .state{font-size:11px;white-space:nowrap}.panel{padding:15px}h1{font-size:21px}}
.chatlog{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto}.chat-entry{padding:12px;border-radius:13px;max-width:95%;white-space:pre-wrap;overflow-wrap:anywhere}.chat-entry strong{display:block;margin-bottom:7px;font-size:13px}.from-user{background:#23496a;align-self:flex-start}.from-katrina{background:#1b3547;align-self:flex-end;border:1px solid #35516a}
.face-card{padding:0;overflow:hidden}.face-panel{position:relative;min-height:380px;height:52vh;max-height:640px;background:#07101a;isolation:isolate;overflow:hidden;border-radius:20px}.face-panel #faceCanvas{width:100%;height:100%;position:relative;z-index:2;display:block}#faceFullscreen{position:absolute;left:12px;top:12px;z-index:30;width:40px;padding:5px;background:#172737;color:#b8e7ef}.face-panel.expanded{position:fixed;inset:0;z-index:1000;max-height:none;height:100dvh;border-radius:0}.login-wrap{max-width:440px;margin:12vh auto;padding:16px}.hidden{display:none!important}.chatlog{min-height:80px;max-height:46vh}.chat-entry{line-height:1.7}.from-user{margin-inline-start:28px}.from-katrina{margin-inline-end:28px}input[type=checkbox]{width:auto}input[type=range]{width:100%}@media(max-width:600px){.face-panel{min-height:290px;height:43vh}.shell{padding:12px}.panel{border-radius:18px}}

/* Katrina camera-settings panels: same existing dark theme, mobile-first layout. */
#identitySettingsBody,#guardianSettingsBody,#guardianSoundSettingsBody{border-top:1px solid #2e465f;margin-top:20px;padding-top:20px}
#cameraSettingsBody form,#identitySettingsBody form,#guardianSettingsBody form{margin:16px 0;padding:13px;border:1px solid #29435e;border-radius:13px}
#cameraSettingsBody form label,#identitySettingsBody form label,#guardianSettingsBody form label{display:flex;flex-direction:column;gap:6px;width:100%}
#guardianSettingsBody input.time-24{direction:ltr;text-align:left;font-variant-numeric:tabular-nums;letter-spacing:.08em}
.camera-days{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
.camera-days label{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:8px;padding:8px 5px}
.camera-days input{width:auto}
.camera-sound{border:1px solid #29435e;border-radius:13px;padding:12px;margin-top:12px}
@media(min-width:620px){.camera-days{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Organized Katrina tabs: preserve existing dark palette and MAX Face layout. */
.tabbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px;margin-top:16px}
.tabbar button{width:100%;min-width:0;min-height:44px;align-self:stretch;padding:10px 4px;border-radius:10px;font-size:14px;background:#1a344d;color:#d2e5f5;border:1px solid #355978;font-weight:650;white-space:nowrap}
.tabbar button.selected,.tabbar button[aria-current="page"]{background:#43b4f7;color:#082034;border-color:#43b4f7}
.tabbar button:focus-visible{outline:2px solid #83dbe7;outline-offset:2px}
.camera-settings-group{border:1px solid #29435e;background:#112235;border-radius:13px;padding:12px;margin:15px 0}
.camera-settings-group summary{cursor:pointer;font-weight:750;font-size:16px;padding:6px;list-style-position:inside}
.camera-settings-group[open] summary{border-bottom:1px solid #29435e;padding-bottom:12px;margin-bottom:10px}
.camera-controls{display:grid;gap:9px}
.camera-controls button{min-height:44px}
@media(max-width:360px){.tabbar{grid-template-columns:repeat(2,minmax(0,1fr))}.tabbar button{font-size:14px}}

/* Mobile workspace: fixed bottom tabs, single shared MAX face, compact chat avatar. */
.shell{padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))}
.tabbar.bottom-nav{
 position:fixed;inset:auto 0 0;z-index:120;margin:0;
 display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;
 padding:8px max(6px,env(safe-area-inset-right,0px)) calc(7px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-left,0px));
 border:1px solid #38506a;border-radius:16px 16px 0 0;
 background:#0b1828f5;box-shadow:0 -10px 30px #030913ac;
 backdrop-filter:blur(14px);
}
.tabbar.bottom-nav button{
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
 min-width:0;min-height:51px;padding:5px 2px;background:transparent;color:#b4ccdf;
 border:0;border-radius:11px;font-size:11px;font-weight:650;white-space:nowrap;
}
.tabbar.bottom-nav button span:first-child{font-size:21px;line-height:23px}
.tabbar.bottom-nav button.selected,.tabbar.bottom-nav button[aria-current="page"]{
 background:#194366;color:#a4eaff;border:1px solid #367bb0;
}
.dashboard-intro{margin-top:16px}
.dashboard-intro h2{margin:0 0 3px;font-size:22px}
.dashboard-intro p{margin:0 0 12px}
#dashboardFaceHost{padding:0;overflow:hidden;margin-top:0}
#dashboardFaceHost .face-panel{height:min(55dvh,585px);max-height:585px;min-height:290px}
.dashboard-pulse{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}
.pulse-item{border:1px solid #2f4b69;border-radius:13px;background:#142639;padding:13px 9px;text-align:center;min-width:0}
.pulse-item small{display:block;color:#94b3cb;font-size:12px;margin-bottom:6px}
.pulse-item strong{display:block;color:#dff5ff;overflow-wrap:anywhere;font-size:13px}
.dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.dashboard-shortcuts button{padding:12px 5px;font-size:14px}
#chatFaceHost{padding:7px 12px;min-height:100px;margin-top:11px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;background:#122236;direction:ltr}
#chatFaceHost .face-panel{
 flex:none;width:92px;height:86px;min-height:86px;max-height:86px;
 border-radius:13px;overflow:hidden;box-shadow:none;
}
#chatFaceHost .face-panel #faceFullscreen{display:none!important}
#chatFaceHost .face-panel .max-face-speech-floor{max-height:36px;opacity:.75}
.chat-face-tools{display:flex;justify-content:flex-end;align-items:center;gap:6px;min-width:0}
#chatFaceHost>.chat-face-tools{grid-column:1;grid-row:1}#chatFaceHost>.face-panel{grid-column:2;grid-row:1}#chatFaceHost>.chat-face-state{grid-column:3;grid-row:1}
.chat-face-tools.is-idle:before{content:'···';color:#55758c;font-size:18px;letter-spacing:2px}
.chat-face-tool{display:grid;place-items:center;width:29px;height:29px;flex:none;border:1px solid #31516a;border-radius:9px;background:#0b1b29;box-shadow:inset 0 0 0 1px #ffffff08}
.chat-face-tool img{display:block;width:19px;height:19px;object-fit:contain}
.chat-face-state{display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:0;color:#b9cada;font-size:11px;font-weight:750;letter-spacing:.02em;direction:ltr}
.chat-face-state i{width:8px;height:8px;flex:none;border-radius:50%;background:#38dc9b;box-shadow:0 0 0 4px #38dc9b18,0 0 10px #38dc9b66}
.chat-face-state[data-state="working"] i,.chat-face-state[data-state="warming"] i{background:#ffd166;box-shadow:0 0 0 4px #ffd16618,0 0 10px #ffd16670;animation:chat-state-pulse 1.1s ease-in-out infinite}
.chat-face-state[data-state="speaking"] i{background:#67d9ff;box-shadow:0 0 0 4px #67d9ff18,0 0 10px #67d9ff70;animation:chat-state-pulse .75s ease-in-out infinite}
.chat-face-state[data-state="offline"] i{background:#ef6377;box-shadow:0 0 0 4px #ef637718}.chat-face-state[data-state="offline"]{color:#dba9b2}
@keyframes chat-state-pulse{50%{transform:scale(.7);opacity:.58}}
@media(prefers-reduced-motion:reduce){.chat-face-state i{animation:none!important}}
#workspaceContent #commands{margin-top:12px}
#workspaceContent .chatlog{max-height:36dvh}
.face-quality-panel{border:1px solid #2f4b69;border-radius:13px;padding:14px;margin-top:16px}
.face-quality-panel h3{margin-top:0}
.face-quality-panel select{width:100%;border:1px solid #42607f;border-radius:11px;padding:12px;color:#fff;background:#081727;font:inherit;margin-top:8px}
@media(max-width:370px){
 .tabbar.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:1px}
 .tabbar.bottom-nav button{font-size:10px}
 #dashboardFaceHost .face-panel{height:46dvh;min-height:245px}
 .dashboard-pulse{gap:5px}.pulse-item{padding:10px 3px}
}
@media(min-width:850px){
 .tabbar.bottom-nav{max-width:800px;left:50%;right:auto;width:100%;transform:translateX(-50%);border-radius:15px 15px 0 0}
 .dashboard-view{max-width:780px;margin:auto}
}

/* Guardian sound picker: fits narrow phones, file selection remains user initiated. */
#guardianSoundSettingsBody .sound-action-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin:10px 0}
#guardianSoundSettingsBody .sound-action-row select{width:100%;min-width:0;max-width:100%;background:#091a2a;color:#e9f5ff;border:1px solid #42607f;border-radius:9px;padding:10px;font:inherit}
#guardianSoundSettingsBody .sound-action-row button{width:100%;min-width:0;min-height:43px}
#guardianSoundSettingsBody .camera-sound label{display:block;margin:12px 0}
#guardianSoundSettingsBody .camera-sound input[type=file]{display:block;max-width:100%;width:100%;box-sizing:border-box;margin:8px 0;padding:9px;background:#0a1a2c;color:#eef8ff;border:1px solid #38516b;border-radius:9px}
#guardianSoundSettingsBody .camera-sound>button{width:100%;margin-top:6px;min-height:43px}
@media(min-width:600px){#guardianSoundSettingsBody .sound-action-row{grid-template-columns:minmax(0,1fr) auto auto}}

/* KATRINA Dashboard — live service connectivity indicators (English UI) */
.dashboard-services{margin-top:18px;}
.services-heading{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;justify-content:space-between;}
.services-heading h2{font-size:17px;margin:0 0 7px;color:#eff8ff}
.services-heading p{margin:0 0 10px;color:#96b4ce;font-size:12px;line-height:1.55}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.service-card{border:1px solid #2f4b69;border-radius:12px;background:#142639;padding:12px 13px;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:9px}
.service-name{font-size:13px;font-weight:750;color:#f0f7ff;line-height:1.35;overflow-wrap:anywhere}
.service-line{display:flex;align-items:center;gap:7px;color:#bed0e0;font-size:12px;font-weight:600}
.service-led{display:inline-block;flex:0 0 auto;width:9px;height:9px;border-radius:50%;border:1px solid #fca8b0;background:#e9475d;box-shadow:0 0 0 3px #e9475d1c}
.service-led.connected{background:#29d483;border-color:#70e9b1;box-shadow:0 0 0 3px #29d48321}
.service-led.disconnected{background:#e9475d;border-color:#fca8b0}
.dashboard-activity{display:flex;justify-content:space-between;gap:12px;margin-top:13px;padding:12px 15px;border:1px solid #2f4b69;border-radius:12px;background:#142639;font-size:13px}
.dashboard-activity span{color:#9cb8cc}.dashboard-activity strong{color:#e6f7ff}
@media(min-width:580px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:350px){.service-grid{gap:6px}.service-card{padding:10px 8px}.service-name{font-size:12px}.service-line{font-size:11px}}

/* Face-only, state-owned status label; works with the existing GPU and 2D rig. */
#facePanel .face-mode-indicator{
  position:absolute;z-index:19;top:14px;left:14px;max-width:min(48%,180px);
  padding:6px 11px;border-radius:20px;
  background:rgba(8,24,40,.78);border:1px solid rgba(120,204,235,.46);
  color:#d9f5ff;font-size:12px;font-weight:680;line-height:1.4;
  pointer-events:none;text-align:center;
  box-shadow:0 2px 10px rgba(0,0,0,.2);
}
#facePanel[data-active-mode="WARNING"] .face-mode-indicator,
#facePanel[data-active-mode="CRITICAL"] .face-mode-indicator,
#facePanel[data-active-mode="ERROR"] .face-mode-indicator{
  border-color:rgba(255,177,119,.7);color:#ffe3ca;
}
#chatFaceHost .face-panel:not(:fullscreen):not(.expanded) :is(.face-mode-indicator,.overview-life,.katrina-result-launcher,.face-service-activity){display:none!important}
#facePanel:fullscreen .face-mode-indicator{top:max(16px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));font-size:14px}
@media(max-width:350px){#facePanel .face-mode-indicator{font-size:11px;padding:5px 7px}}

/* Keep the small status LED directly beside the English service name. */
.service-name{display:flex;align-items:center;gap:8px;}
.service-name .service-led{flex-shrink:0;}
.service-line{padding-left:17px;}

/* Phone microphone next to Send; does not modify KATRINA's output audio. */
#executeForm .command-actions{display:grid;grid-template-columns:minmax(112px,1fr) minmax(112px,1fr);gap:9px;width:100%}
#executeForm .command-actions button{width:100%;align-self:stretch;min-width:0;min-height:49px}
#voiceCommand{background:#1d4862;color:#c0eeff;border:1px solid #56a4c9}
#voiceCommand.recording{background:#983342;color:#fff;border:1px solid #f191a1;animation:mic-glow 1.4s ease-in-out infinite}
#voiceCommandStatus{margin:2px 0 0;align-self:stretch;font-size:12px;line-height:1.6;color:#abd1ea}
@keyframes mic-glow{50%{box-shadow:0 0 0 4px rgba(239,91,119,.17)}}
@media(prefers-reduced-motion:reduce){#voiceCommand.recording{animation:none}}

/* User-enabled wake word. Active only in the foreground page. */
#executeForm .wake-option{width:100%;align-self:stretch;display:grid;gap:7px;padding:10px 12px;border:1px solid #294c6a;border-radius:12px;background:#10283c}
#wakeToggle{width:100%;min-height:47px;align-self:stretch;background:#26445d;color:#cfefff;border:1px solid #4b7899;font-weight:750}
#wakeToggle.wake-on{background:#185c52;border-color:#4cd1ab;color:#dcfff4}
#wakeToggle:focus-visible{outline:2px solid #93f4d3;outline-offset:2px}
#wakeStatus{margin:0;line-height:1.6;font-size:12px;color:#b4d8e8;overflow-wrap:anywhere}
@media(max-width:350px){#executeForm .wake-option{padding:8px}#wakeToggle{font-size:13px}}

/* Compact service switches; keep the existing connection LEDs. */
.service-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px}
.service-card{position:relative;padding:12px!important;min-height:84px}
.service-card:has(.mcp-switch) .service-line{padding-right:50px}
.service-name{font-size:13px!important}.service-value{font-size:11px!important}
.mcp-switch{position:absolute;right:10px;bottom:10px;padding:5px 9px!important;min-width:46px;border-radius:20px!important;font-size:11px!important;background:#123e35!important;border:1px solid #258e70!important;color:#b2f9d9!important}
.mcp-switch[aria-checked="false"]{background:#292e39!important;border-color:#536073!important;color:#aeb8c8!important}
.mcp-switch:disabled{opacity:.5;cursor:wait}.service-off{opacity:.68}
#faceLiveToggle{position:absolute;left:auto;right:12px;top:12px;z-index:35;padding:7px 11px;font-size:12px;background:#11263ce6;border:1px solid #46617e;border-radius:18px;color:white}
#faceLiveToggle[aria-pressed="true"]{background:#145943}
/* Live Cameras belongs to the fullscreen face only, including legacy expanded mode. */
#facePanel #faceLiveToggle{display:none}
#facePanel:fullscreen #faceLiveToggle,#facePanel.expanded #faceLiveToggle{display:block}
@media(max-width:420px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{padding:10px!important}.service-name{font-size:12px!important}}

.live-preview-form{display:grid;gap:14px}.live-preview-form label{display:block}.live-preview-form input[type=checkbox]{width:auto;margin-right:8px}.live-preview-form fieldset{display:grid;gap:10px;border:1px solid #334155;border-radius:10px;padding:14px}.live-preview-form input[type=number],.live-preview-form select{display:block;margin-top:8px;width:100%}

#faceEngineForm input[type=checkbox]{width:auto;margin:0 8px 0 0}#faceEngineForm pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}#cameraRuntimeStatus{white-space:pre-line}

.setting-caption{display:flex;align-items:center;gap:.55rem;justify-content:space-between;min-width:0;font-weight:650;line-height:1.45}
.setting-help{display:inline-flex;flex:0 0 auto}
.setting-help-button{width:1.45rem;height:1.45rem;min-width:1.45rem;padding:0;border:1px solid color-mix(in srgb,var(--accent,#72d7ff) 55%,transparent);border-radius:50%;background:color-mix(in srgb,var(--panel,#142234) 88%,transparent);color:var(--accent,#72d7ff);font:700 .86rem/1 system-ui;display:grid;place-items:center;cursor:pointer}
.katrina-premium .setting-help-button{width:28px;height:28px;min-width:28px;min-height:28px;padding:0;align-self:center;border:1px solid #4d8eac;border-radius:50%;background:#142d42;color:#87dff8;font:800 14px/1 system-ui}
.auto-setting-help-label{position:relative;padding-inline-end:48px!important}.auto-setting-help-label>.setting-help{position:absolute;inset-inline-end:10px;top:10px}
.auto-setting-help-adjacent{vertical-align:middle;margin-inline-start:8px}
.auto-setting-help-host{position:relative}.auto-setting-help-host>.setting-help{position:absolute;inset-inline-end:8px;top:8px;z-index:3}.auto-setting-help-host:has(>.setting-help){padding-inline-end:46px!important}
.katrina-premium :is(#cameraContent,#guardianContent,#identityContent,#processingContent,#audioContent,#settingsContent,#servicesContent,#modelContent,#devicesContent,#schedulesContent,#smartListenerContent,#phonesContent,#peopleContent,#testContent) :is(.hint:not([role="status"]),.quality-guarantee,.people-note){display:none!important}
.katrina-premium :is(#cameraContent,#guardianContent,#identityContent,#processingContent,#audioContent,#settingsContent,#servicesContent,#modelContent,#devicesContent,#schedulesContent,#smartListenerContent,#phonesContent,#peopleContent,#testContent) :is(.settings-form,form)>:is(p,small):not([role="status"]):not([role="alert"]){display:none!important}
.katrina-premium :is(#cameraContent,#guardianContent,#identityContent,#processingContent,#audioContent,#settingsContent,#servicesContent,#modelContent,#devicesContent,#schedulesContent,#smartListenerContent,#phonesContent,#peopleContent,#testContent) .setting-control>small:not([role="status"]){display:none!important}
.katrina-premium :is(#processingContent,#modelContent,#devicesContent,#smartListenerContent,#phonesContent,#peopleContent,#schedulesContent) .page-intro>p{display:none!important}
.katrina-premium :is(#cameraContent,#guardianContent,#settingsContent,#servicesContent)>p:not([role]){display:none!important}
.katrina-premium :is(#monitoringCameraSelectionLink,#guardianSettingsBody,#identitySettingsBody,#guardianSoundSettingsBody) > p:not([role]){display:none!important}
.katrina-premium :is(.services-heading) > p:not([role]){display:none!important}
.katrina-premium #integrationSettings>p:not([role]){display:none!important}
.setting-help-button:hover,.setting-help-button:focus-visible{background:var(--accent,#72d7ff);color:#07111c;outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#72d7ff) 20%,transparent)}
.settings-help-dialog{width:min(42rem,calc(100vw - 2rem));max-width:none;max-height:min(82dvh,46rem);padding:0;border:1px solid #4c7697;border-radius:18px;background:#0d1c2b;color:#eef7ff;box-shadow:0 24px 80px #000c;overflow:hidden}
.settings-help-dialog::backdrop{background:#020812c7;backdrop-filter:blur(5px)}
.settings-help-dialog article{display:flex;flex-direction:column;max-height:min(82dvh,46rem)}
.settings-help-dialog header{position:sticky;top:0;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #2d4b65;background:#112438}
.settings-help-dialog header small{color:#87b8d6}.settings-help-dialog h2{margin:5px 0 0;font-size:20px;line-height:1.35}
.settings-help-close{width:40px;height:40px;min-width:40px;padding:0;border-radius:50%;font-size:27px;line-height:1;background:#203b52;color:#eef8ff;border:1px solid #486b87}
.katrina-premium .settings-help-close{width:40px;height:40px;min-width:40px;min-height:40px;padding:0;align-self:center;border-radius:50%;background:#203b52;color:#eef8ff;font:500 27px/1 system-ui;border:1px solid #486b87}
.settings-help-dialog-body{overflow-y:auto;overscroll-behavior:contain;padding:20px;scrollbar-gutter:stable}
.settings-help-dialog-body section{padding:17px;border:1px solid #294861;border-radius:13px;background:#13283b}
.settings-help-dialog-body section+section{margin-top:14px}.settings-help-dialog-body h3{margin:0 0 9px;font-size:15px;color:#8edfff}.settings-help-dialog-body p{margin:0;line-height:1.8;white-space:pre-line}

.settings-range{display:grid;gap:7px;padding:10px 12px;border:1px solid #304d67;border-radius:12px;background:#0c1b2b}
.settings-stepper-controls{display:grid;grid-template-columns:42px minmax(72px,1fr) 42px;gap:8px;align-items:center}
.settings-stepper-button{min-height:38px!important;padding:4px!important;border-radius:9px!important;font-size:20px!important;font-weight:800!important;line-height:1!important}
.settings-stepper-button:disabled{opacity:.35;cursor:not-allowed}
.settings-stepper-input{width:100%;height:38px;padding:5px 8px!important;border:1px solid #3b607d!important;border-radius:9px!important;background:#1d3d55!important;color:#c9f1ff!important;text-align:center;font-weight:800;font-variant-numeric:tabular-nums;-moz-appearance:textfield}
.settings-stepper-input::-webkit-inner-spin-button,.settings-stepper-input::-webkit-outer-spin-button{appearance:none;margin:0}
.settings-stepper-input:focus-visible{outline:2px solid #88e5ff;outline-offset:2px}
#settingsContent>h2,#settingsContent>p,#settingsContent .face-quality-panel>.hint{display:none}
.settings-search{display:grid;grid-template-columns:minmax(0,420px) auto;gap:10px;align-items:center;margin-top:12px}.settings-search input{width:100%;min-height:40px}.settings-search-empty{color:#ffb3a1;font-size:12px}.settings-search[hidden],.settings-search-empty[hidden]{display:none}
html:is([data-katrina-tab="cameras"],[data-katrina-tab="guardian"],[data-katrina-tab="identity"],[data-katrina-tab="processing"],[data-katrina-tab="audio"],[data-katrina-tab="services"],[data-katrina-tab="settings"],[data-katrina-tab="model"],[data-katrina-tab="phones"],[data-katrina-tab="devices"]) #pageSubtitle{display:none}
html[data-katrina-tab="cameras"] #cameraContent>.hint,html[data-katrina-tab="guardian"] #guardianContent>p:not([role="status"]),html[data-katrina-tab="processing"] #processingContent>.page-intro,html[data-katrina-tab="model"] #modelContent>.page-intro{display:none}
.settings-range-scale{display:flex;justify-content:space-between;color:#779ab5;font-size:11px;font-variant-numeric:tabular-nums}
.time-12-control{display:grid;grid-template-columns:minmax(64px,1fr) auto minmax(64px,1fr) minmax(112px,1.35fr);align-items:center;gap:8px;width:100%;font-variant-numeric:tabular-nums}.time-12-control>span{text-align:center;color:#9dc2d9;font-weight:800}.time-12-control select{width:100%;min-width:0}
@media(max-width:480px){.time-12-control{grid-template-columns:minmax(52px,1fr) auto minmax(58px,1fr) minmax(102px,1.4fr);gap:6px}.time-12-control select{padding-inline:7px;font-size:12px}}
.settings-stepper-reset{min-height:0!important;padding:0 8px!important;border:0!important;background:transparent!important;color:#78b7d7!important;font-size:15px!important;line-height:1!important}
input.settings-range-input{appearance:none;height:6px;padding:0;border:0;border-radius:99px;background:linear-gradient(to right,#45b9f3 0 var(--range-progress),#29465e var(--range-progress) 100%)}
input.settings-range-input::-webkit-slider-thumb{appearance:none;width:22px;height:22px;border-radius:50%;background:#e9f8ff;border:3px solid #45b9f3;box-shadow:0 2px 8px #0008;cursor:grab}
input.settings-range-input::-moz-range-thumb{width:17px;height:17px;border-radius:50%;background:#e9f8ff;border:3px solid #45b9f3;box-shadow:0 2px 8px #0008;cursor:grab}
input.settings-range-input:focus-visible{outline:2px solid #88e5ff;outline-offset:6px}

#cameraSettingsBody form,#identitySettingsBody form,#guardianSettingsBody form,#guardianSoundSettingsBody .settings-form,#offloadSettings .settings-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:12px;align-items:start}
#cameraSettingsBody form>h3,#identitySettingsBody form>h3,#guardianSettingsBody form>h3,#cameraSettingsBody form>button,#identitySettingsBody form>button,#guardianSettingsBody form>button,#guardianSettingsBody form>[role=status],#guardianSoundSettingsBody .settings-form>button,#offloadSettings .settings-form>.quality-guarantee,#offloadSettings .settings-form>button,#offloadSettings .settings-form>[role=status]{grid-column:1/-1}
.settings-cluster{grid-column:1/-1;border:1px solid #31506b;border-radius:13px;background:#0d1d2d;overflow:hidden}
.settings-cluster>summary{cursor:pointer;padding:14px 16px;font-weight:800;color:#dff5ff;background:#152b40}
.settings-cluster[open]>summary{border-bottom:1px solid #31506b}.settings-grid,.settings-cluster>label{margin:12px}
.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:12px}
.setting-control,#cameraSettingsBody form label,#identitySettingsBody form label,#guardianSettingsBody form label{padding:11px;border:1px solid #29445c;border-radius:12px;background:#12273a}
#guardianSettingsBody{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
#guardianSettingsBody>h2,#guardianSettingsBody>p{grid-column:1/-1}#guardianSettingsBody>form{margin:0}
#guardianSoundSettingsBody{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
#guardianSoundSettingsBody>h2,#guardianSoundSettingsBody>p,#guardianSoundSettingsBody>.settings-form{grid-column:1/-1}.camera-sound{margin-top:0}
.camera-selection-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:8px;margin:10px 0 14px}
.camera-selection-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 8px;align-items:center;padding:10px 11px;border:1px solid #2b465f;border-radius:11px;background:#102336;min-width:0}
.camera-selection-item i{grid-row:1/3;width:9px;height:9px;border-radius:50%;background:#718296;box-shadow:0 0 0 3px #7182961f}.camera-selection-item.selected i{background:#2fda95;box-shadow:0 0 0 3px #2fda9525}
.camera-selection-item strong{font-size:13px;color:#e8f7ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-selection-item small{font-size:11px;color:#89a8bf}.camera-selection-item.selected{border-color:#287a67;background:#102f32}.camera-selection-item.selected small{color:#7ce6bd}
.readiness-panel{padding:0!important;overflow:hidden}.readiness-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;cursor:pointer;list-style:none}.readiness-panel>summary::-webkit-details-marker{display:none}.readiness-panel>summary strong{font-size:16px}.readiness-panel>summary:before{content:'›';font-size:25px;color:#7bbbdc;transition:transform .18s}.readiness-panel[open]>summary:before{transform:rotate(90deg)}.readiness-badge{margin-inline-start:auto;padding:5px 10px;border-radius:99px;font-size:12px;background:#55312b;color:#ffc0ad}.readiness-badge.ready{background:#123e34;color:#82e7bc}.readiness-body{padding:0 20px 18px;border-top:1px solid #29445d}.readiness-body button{width:auto;margin-inline-end:8px}.readiness-body li{margin-block:6px}
@media(max-width:600px){.settings-help-dialog{width:calc(100vw - 1rem);max-height:90dvh}.settings-help-dialog article{max-height:90dvh}.settings-help-dialog header,.settings-help-dialog-body{padding:14px}.settings-stepper-controls{grid-template-columns:38px minmax(64px,1fr) 38px}}

/* Professional camera state, framed settings, and a stable conversation workspace. */
.katrina-premium #cameraRuntimeStatus{display:grid;gap:10px;padding:14px!important;white-space:normal;background:#0e1c2c!important;border:1px solid #2d435b;border-radius:15px}
.camera-runtime-summary,.camera-runtime-cameras{display:flex;flex-wrap:wrap;gap:8px}.camera-runtime-cameras{padding-top:10px;border-top:1px solid #263b51}
.camera-state-pill{display:inline-flex;align-items:center;gap:7px;min-width:0;padding:7px 10px;border:1px solid #3d3443;border-radius:999px;background:#251c28;color:#efc4ce;font-size:12px;line-height:1.2}
.camera-state-pill i{width:8px;height:8px;flex:none;border-radius:50%;background:#ef5366;box-shadow:0 0 0 3px #ef53661d}.camera-state-pill.on{border-color:#285f53;background:#102b2a;color:#c8f7e5}.camera-state-pill.on i{background:#2fda95;box-shadow:0 0 0 3px #2fda9525}.camera-state-pill strong{font-size:12px;color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-state-pill small{font-size:10px;color:#91a9bb}
.katrina-premium :is(#cameraSettingsBody,#identitySettingsBody,#guardianSettingsBody,#guardianSoundSettingsBody,#offloadSettings,#voiceRuntimeSettings,#settingsContent) label:has(input,select,textarea),.katrina-premium .setting-control{border:1px solid #314a62!important;border-radius:12px!important;background:#0f2031!important;padding:12px!important;margin:0!important}
.katrina-premium :is(.camera-controls,.command-actions,.sound-action-row,.public-link-actions,.overview-actions){gap:12px!important}.katrina-premium form{row-gap:14px}.katrina-premium form>button{margin-top:4px}.katrina-premium button+button{margin-inline-start:2px}
.chat-toolbar{display:flex;align-items:center;gap:9px;min-height:42px;margin-bottom:12px}.chat-toolbar h2{margin:0;margin-inline-end:auto}.katrina-premium .chat-toolbar button{align-self:center;min-height:32px;padding:5px 11px;font-size:11px;background:#1a3041;color:#d5e7f2;border-color:#355066}.katrina-premium .chat-toolbar .stop-speech{background:#7b2633;color:#fff1f3;border-color:#bd5364}.katrina-premium .chat-toolbar .stop-speech:disabled{background:#33242b;color:#846d75;border-color:#49333c;cursor:default}
.katrina-premium #commands{display:grid;grid-template-rows:auto minmax(120px,1fr) auto;min-height:0}.katrina-premium #commands>.chatlog{max-height:none;height:clamp(180px,36dvh,430px);overscroll-behavior:contain;scrollbar-gutter:stable}.katrina-premium #commands>#executeForm{margin-top:12px}.katrina-premium #chatCleanupStatus:empty,.katrina-premium #commands>#result{display:none}
.katrina-premium :is(#cameraContent,#guardianContent,#audioContent)>h2,.katrina-premium :is(#identitySettingsBody,#guardianSettingsBody)>h2,.katrina-premium :is(#identitySettingsBody,#guardianSettingsBody)>p:not([role="status"]){display:none}
.settings-fold{border:1px solid #304961;border-radius:14px;background:#0f1e2e;overflow:hidden;margin:10px 0}.settings-fold>summary{cursor:pointer;display:flex;align-items:center;gap:10px;padding:14px 16px;color:#e1f1fb;font-size:13px;font-weight:750;list-style:none}.settings-fold>summary::-webkit-details-marker{display:none}.settings-fold>summary:before{content:'›';color:#76d9bd;font-size:22px;line-height:1;transition:transform .16s}.settings-fold[open]>summary:before{transform:rotate(90deg)}.settings-fold[open]>summary{border-bottom:1px solid #304961;background:#14283a}.katrina-premium .settings-fold>form{margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;padding:14px!important}.settings-fold .setting-control:last-of-type{margin-bottom:0!important}
.page-fold{border:1px solid #304961;border-radius:16px;background:#101d2d;overflow:hidden;margin:12px 0}.page-fold>summary{cursor:pointer;display:flex;align-items:center;gap:11px;padding:15px 17px;color:#e5f3fc;font-size:14px;font-weight:800;list-style:none}.page-fold>summary::-webkit-details-marker{display:none}.page-fold>summary:before{content:'›';color:#76d9bd;font-size:23px;line-height:1;transition:transform .16s}.page-fold[open]>summary:before{transform:rotate(90deg)}.page-fold[open]>summary{border-bottom:1px solid #304961;background:#15283a}.katrina-premium .page-fold>section{margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}
.schedule-time{margin:5px 0;padding:8px 10px;border:1px solid #2f475e;border-radius:9px;background:#0d1d2c;font-size:12px}.schedule-time-last{color:#9fb5c8}.schedule-time-next{border-color:#2d6758;color:#9ce8cd;background:#102a29;font-weight:700}
@media(max-width:760px){.settings-fold>summary{padding:11px 13px}.katrina-premium .settings-fold>form{padding:10px!important}.katrina-premium :is(#identityContent,#guardianContent,#audioContent,#servicesContent) .panel{margin-top:10px}.katrina-premium :is(#identityContent,#guardianContent,#audioContent,#servicesContent) button{min-height:38px;padding:8px 12px}}
@media(max-width:760px){
 html[data-katrina-tab="chat"] .page-heading{display:none}
 html[data-katrina-tab="chat"] .katrina-premium .shell{height:100dvh;overflow:hidden;padding-top:10px}
 html[data-katrina-tab="chat"] .katrina-premium header{padding-bottom:8px}
 html[data-katrina-tab="chat"] #workspaceContent{height:var(--conversation-height,calc(100dvh - 220px));display:grid;grid-template-rows:70px minmax(0,1fr);gap:8px;overflow:hidden}
 html[data-katrina-tab="chat"] #chatFaceHost{min-height:0;height:70px;margin:0;padding:3px 9px;gap:8px}
 html[data-katrina-tab="chat"] #chatFaceHost .face-panel{width:66px;height:62px;min-height:62px;max-height:62px}
 html[data-katrina-tab="chat"] .chat-face-tool{width:26px;height:26px;border-radius:8px}html[data-katrina-tab="chat"] .chat-face-tool img{width:17px;height:17px}
 html[data-katrina-tab="chat"] .chat-face-state{gap:6px;font-size:10px}html[data-katrina-tab="chat"] .chat-face-state i{width:7px;height:7px}
 html[data-katrina-tab="chat"] #commands{height:100%;margin:0;padding:10px;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
 html[data-katrina-tab="chat"] #commands>.chatlog{height:auto;min-height:0;max-height:none}
 html[data-katrina-tab="chat"] #executeForm>label,html[data-katrina-tab="chat"] #wakeStatus,html[data-katrina-tab="chat"] #voiceCommandStatus{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
 html[data-katrina-tab="chat"] #executeForm{gap:6px;margin-top:7px}html[data-katrina-tab="chat"] #command{min-height:44px;max-height:58px;margin:0;resize:none}html[data-katrina-tab="chat"] .command-actions{gap:8px!important}html[data-katrina-tab="chat"] .command-actions button{min-height:38px;padding:7px 10px}html[data-katrina-tab="chat"] .wake-option{margin:0}html[data-katrina-tab="chat"] .wake-option button{min-height:34px;padding:6px 10px;font-size:10px}
 .chat-toolbar{min-height:30px;margin-bottom:6px;justify-content:flex-end}.chat-toolbar h2{display:none}.katrina-premium .chat-toolbar button{min-height:28px;padding:3px 9px;font-size:10px}
}
