/* Immersive HUD (contract v23) — the one strip that stays on screen in the immersive view. */
#hud{display:none;position:fixed;top:16px;left:16px;z-index:36;max-width:min(420px,calc(100vw - 32px));flex-direction:column;gap:6px;padding:10px 12px;background:rgba(12,27,38,.78);border:1px solid rgba(137,217,239,.18);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#a1c2d1;font-size:12px;line-height:1.6;letter-spacing:.04em;color-scheme:dark}
body.immersive #hud{display:flex}
#hud .hud-row{display:flex;align-items:center;gap:8px}
#hud-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#527e90;flex:none}
#hud[data-activity=thinking] #hud-dot{background:#e8b981;animation:hud-pulse 1s ease-in-out infinite alternate}
#hud[data-activity=listening] #hud-dot{background:#e8b981}
#hud[data-activity=speaking] #hud-dot{background:#8ce4fa;box-shadow:0 0 8px #8ce4fa}
@keyframes hud-pulse{to{opacity:.35}}
#hud-state{color:#deedf2;white-space:nowrap}
#hud .hud-keys{margin-left:auto;display:flex;gap:4px}
#hud .hud-keys button{background:transparent;border:1px solid rgba(137,217,239,.25);border-radius:3px;color:#a1c2d1;font-size:12px;line-height:1;padding:5px 7px;min-width:28px;min-height:28px}
#hud .hud-keys button:hover{border-color:#8ce4fa;color:#fff}
#hud.mic-on #hud-mic,#hud.voice-on #hud-voice,#hud.chat-on #hud-chat{border-color:#8ce4fa;color:#8ce4fa;background:#8be4fa15}
#hud p{margin:0;overflow-wrap:anywhere}
#hud-interim{color:#e8b981;font-style:normal}
#hud-reply{color:#deedf2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}
#hud-reply.error{color:#edb88c}
#toast{z-index:70}   /* the main feedback channel must not hide behind a dock (z 35) */
@media (max-width:500px){#hud{top:8px;left:8px;right:8px;max-width:none}}
@media (prefers-reduced-motion:reduce){#hud[data-activity=thinking] #hud-dot{animation:none}}
/* v24: what JARVIS understood, the live sessions it started, and which relay agents are connected */
#hud-understood{color:#8ce4fa;font-size:12px}
#hud-agents{color:#527e90;font-size:11px;margin-top:2px}
#hud-agents.none{color:#e8b981}
#hud-sessions{display:flex;flex-wrap:wrap;gap:4px}
#hud-sessions .hud-session{background:#8be4fa15;border:1px solid rgba(137,217,239,.3);border-radius:3px;color:#a1c2d1;font-size:11px;padding:3px 7px;line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#hud-sessions .hud-session.simulated{border-style:dashed}
#hud-sessions .hud-session:hover{border-color:#8ce4fa;color:#fff}
