/* Approval prototype: one canonical chat, result, memory and voice transport. */
body.authenticated #jarvisImmersive{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:18px 24px;box-sizing:border-box;background:#0b0b0d;color:#f4f4f4;border:0;overflow:hidden;color-scheme:dark;--os-panel:#0b0b0d;--os-text:#f4f4f4;--os-muted:#ccc;--home-text:#f4f4f4;--home-muted:#ccc;--os-raised:#202023}
#jarvisImmersive[open]{display:flex;flex-direction:column;gap:10px}#jarvisImmersive::backdrop{background:#000e}#jarvisImmersive>header{display:flex;gap:16px;align-items:center;flex-shrink:0}#jarvisImmersive>header h1{font-size:20px;letter-spacing:.14em;margin:0}#jarvisImmersive>header small{flex:1;color:#aaa}#jarvisImmersive>header>.workspace-back{display:none}#jarvisImmersive button{background:#222;color:#f4f4f4;border:1px solid #705b3b;border-radius:9px;padding:10px 14px;min-height:44px;cursor:pointer}#jarvisImmersive button:focus-visible{outline:3px solid #e9c986;outline-offset:3px}
#jarvisImmersive .immersive-stage{height:185px;position:relative;flex-shrink:0;overflow:hidden}#jarvisImmersive .immersive-graph{position:absolute;inset:0;opacity:.55}#jarvisImmersive .immersive-graph .brain-graph-svg{height:185px;width:100%;background:transparent}#jarvisImmersive .immersive-presence{position:relative;z-index:1;display:grid;place-items:center;width:180px;margin:auto;pointer-events:none}#jarvisImmersive .jarvis-presence{display:grid;grid-template-columns:1fr;justify-items:center;gap:6px;background:transparent;box-shadow:none;border:0;padding:0}#jarvisImmersive .jarvis-presence::before{display:none}#jarvisImmersive #jarvisOrb{width:120px;height:120px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:0 0 0 1px #c5a26066,0 0 45px #c3482933;pointer-events:auto}#jarvisImmersive .jarvis-name{display:none}#jarvisImmersive #jarvisStateText{color:#ccc;font-size:13px}#jarvisImmersive .jarvis-orb::after{pointer-events:none}
#jarvisImmersive .immersive-workspace{display:flex;flex:1;min-height:0;gap:20px;width:100%;max-width:1400px;margin:auto}#jarvisImmersive .immersive-conversation{display:flex;flex-direction:column;flex:1;min-width:0;max-width:900px;margin:auto;height:100%}#jarvisImmersive .immersive-messages{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:10px 18px 22px;scrollbar-gutter:stable}#jarvisImmersive .immersive-turn{margin:0 0 28px}#jarvisImmersive .immersive-user-message{background:#292929;max-width:85%;width:fit-content;margin:10px 0 20px auto;border-radius:18px;padding:12px 18px;white-space:pre-wrap;line-height:1.65}#jarvisImmersive .immersive-assistant-message{background:transparent;margin:12px 0;line-height:1.75;white-space:pre-wrap}#jarvisImmersive .immersive-history-status{color:#bcbcbc;font-size:13px}#jarvisImmersive .immersive-welcome{text-align:center;font-size:26px;margin:50px 0;color:#ddd}
#jarvisImmersive #jarvisResult{position:static;margin:12px 0;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#f4f4f4;max-height:none;overflow:visible}#jarvisImmersive #jarvisAnswer{line-height:1.75;white-space:pre-wrap;color:#f4f4f4}#jarvisImmersive .jarvis-result-heading{display:none}#jarvisImmersive .immersive-chat{flex-shrink:0;background:#171719;border:1px solid #655336;border-radius:18px;padding:12px}#jarvisImmersive #jarvisConsole{display:flex!important;flex-direction:column;gap:8px;padding:0;margin:0;max-width:none;width:100%;background:transparent;color:#fff}#jarvisImmersive #jarvisConsole>.jarvis-context,#jarvisImmersive #jarvisConsole>.jarvis-suggestions,#jarvisImmersive #jarvisConversationMemory,#jarvisImmersive #jarvisFocusClose{display:none!important}#jarvisImmersive #jarvisCommandForm{margin:0;width:100%;background:transparent;border:0}#jarvisImmersive #jarvisCommandInput{background:transparent;color:#fff;min-height:48px;border:0}#jarvisImmersive .jarvis-voice-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}#jarvisImmersive .jarvis-voice-actions label{color:#ccc}#jarvisImmersive #jarvisDock{display:none!important}
#jarvisImmersive .immersive-panels:empty{display:none}#jarvisImmersive .immersive-panels:not(:empty){width:340px;max-width:40%;overflow:auto;min-width:0}#jarvisImmersive .immersive-card{background:#1c1c1f;border:1px solid #705b3b;border-radius:12px;padding:16px;margin-bottom:14px;overflow-wrap:anywhere}#jarvisImmersive .immersive-card h3{font-size:17px;color:#efcf91}#jarvisImmersive .immersive-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}#jarvisImmersive .immersive-card dd{margin:0}#jarvisImmersive .immersive-card :is(dt,small){color:#ccc}#jarvisImmersive>nav:empty{display:none}#jarvisImmersive>nav{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0;max-height:90px;overflow:auto}#jarvisImmersive :is(h2,h3,p,summary,label){color:inherit}
#jarvisImmersive:has([data-jarvis-state=thinking]) #jarvisOrb{animation:immersive-breathe 1.6s ease-in-out infinite}#jarvisImmersive:has([data-jarvis-state=listening]) #jarvisOrb{box-shadow:0 0 0 2px #bda268,0 0 40px #bda26855}#jarvisImmersive:has([data-jarvis-state=speaking]) #jarvisOrb{animation:immersive-breathe .7s ease-in-out infinite}#jarvisImmersive:has([data-jarvis-state=error]) #jarvisOrb{box-shadow:0 0 0 1px #c84242,0 0 35px #bc33264d}
@keyframes immersive-breathe{50%{filter:drop-shadow(0 0 24px #dc604399);transform:scale(1.025)}}
@media(max-width:700px){body.authenticated #jarvisImmersive{padding:12px}.jarvis-immersive>header small{display:none}#jarvisImmersive>header h1{flex:1}#jarvisImmersive .immersive-stage{height:140px}#jarvisImmersive .immersive-graph .brain-graph-svg{height:140px}#jarvisImmersive #jarvisOrb{width:90px;height:90px}#jarvisImmersive .immersive-workspace{flex-direction:column;gap:8px}#jarvisImmersive .immersive-conversation{width:100%;min-height:160px}#jarvisImmersive .immersive-panels:not(:empty){width:100%;max-width:none;max-height:30dvh;flex-shrink:0}#jarvisImmersive .immersive-messages{padding:4px 5px 12px}#jarvisImmersive .immersive-user-message{max-width:92%}}
@media(prefers-reduced-motion:reduce){#jarvisImmersive *{animation:none!important;transition:none!important}}
#jarvisImmersive>header>button:not(:last-child){display:none}
#jarvisImmersive [data-crm-back]{display:none!important}
body.authenticated #jarvisImmersive #jarvisCommandInput{background:#232325!important;color:#fff!important;caret-color:#fff;border:0!important;box-shadow:none!important}
body.authenticated #jarvisImmersive #jarvisCommandInput::placeholder{color:#bcbcbc!important;opacity:1}
body.authenticated #jarvisImmersive .jarvis-command-input{background:#232325!important;border:0!important;border-radius:13px}
#jarvisImmersive .brain-markdown{white-space:normal;color:#eee;line-height:1.75}#jarvisImmersive .brain-markdown :is(h2,h3,h4,h5){color:#f4f4f4;margin:24px 0 10px;font-size:19px}#jarvisImmersive .brain-markdown p{margin:12px 0}#jarvisImmersive .brain-markdown .brain-table-scroll{overflow:auto}#jarvisImmersive .brain-markdown :is(th,td){background:#19191b;color:#eee;border:1px solid #4a463d;padding:10px;text-align:left}#jarvisImmersive .brain-markdown code{background:#29292d;color:#ead19d;padding:2px 4px}#jarvisImmersive .brain-markdown a{color:#e9ca8e}
#jarvisImmersive .immersive-turn-time{display:block;position:sticky;top:-1px;z-index:1;background:#0b0b0d;color:#aaa;padding:8px 0;font-size:12px}

/* Preserve the canonical sphere artwork after moving it outside the Home. */
#jarvisImmersive .jarvis-sphere { display:block; width:100%; height:100%; overflow:visible; transform-origin:center; animation:home-sphere-breathe 9s ease-in-out infinite; }
#jarvisImmersive .sphere-body { stroke:#e7a892; stroke-opacity:.55; stroke-width:.7; }
#jarvisImmersive .sphere-track { fill:none; stroke:#ad7864; stroke-opacity:.55; stroke-width:.8; stroke-dasharray:.7 5; }
#jarvisImmersive .sphere-orbit { fill:none; stroke:#c69586; stroke-opacity:.6; stroke-width:.75; transform-origin:140px 140px; animation:home-orbit-spin 80s linear infinite; }
#jarvisImmersive .sphere-orbit path { stroke:#fa967b; stroke-opacity:1; stroke-width:1.6; }
#jarvisImmersive .orbit-marker { fill:#ffd0ad; stroke:#ff7a55; stroke-width:1; }
#jarvisImmersive .orbit-tilted { animation-duration:72s; animation-direction:reverse; rotate:-35deg; }
#jarvisImmersive .orbit-cross { animation-duration:96s; rotate:62deg; stroke:#dad4cb; }
#jarvisImmersive .orbit-inner { animation-duration:64s; animation-direction:reverse; }
#jarvisImmersive .sphere-latitudes { fill:none; stroke:#dec7be; stroke-width:.6; opacity:.16; }
#jarvisImmersive .sphere-inner-ring { fill:none; stroke:#f0af9b; stroke-width:.7; opacity:.6; }
#jarvisImmersive .sphere-core-seat { fill:#140e10; stroke:#925c50; stroke-width:.7; }
#jarvisImmersive .sphere-core { stroke:#ffab8e; stroke-width:.7; transform-origin:140px 140px; animation:home-core-breathe 7s ease-in-out infinite; }
#jarvisImmersive .sphere-highlight { fill:none; stroke:#f3d9c7; stroke-width:1; stroke-linecap:round; opacity:.76; }

#jarvisImmersive .immersive-stage{height:clamp(240px,31dvh,340px);isolation:isolate;background:radial-gradient(ellipse at center,#9e302018 0,transparent 60%)}
#jarvisImmersive .immersive-graph{inset:0;width:100%;opacity:.85}
#jarvisImmersive .immersive-graph .brain-graph-svg{height:100%;width:100%;overflow:visible}
#jarvisImmersive .immersive-presence{position:absolute;inset:0;width:210px;height:100%;display:grid;align-content:center;justify-content:center}
#jarvisImmersive #jarvisOrb{width:190px;height:190px;box-shadow:none;filter:drop-shadow(0 0 18px #b33b2828)}
#jarvisImmersive #jarvisStateText{text-align:center;max-width:210px;margin:4px auto 0;font-size:12px}
#jarvisImmersive .immersive-graph .brain-graph-svg line{stroke:#bda268;stroke-width:1;stroke-opacity:.28;transition:stroke-opacity .2s}
#jarvisImmersive .immersive-graph .brain-node{cursor:pointer;transition:opacity .2s}
#jarvisImmersive .immersive-graph .brain-node circle{stroke:#ccb37c55;stroke-width:1.5;transition:stroke .2s,filter .2s}
#jarvisImmersive .immersive-graph .brain-node:is(:hover,:focus) circle{stroke:#ffe3ac;stroke-width:3;filter:drop-shadow(0 0 8px #e9b866)}
#jarvisImmersive .immersive-graph .brain-node:focus{outline:none}
#jarvisImmersive .immersive-graph .brain-graph-svg text{fill:#eee;font-size:13px}
#jarvisImmersive:has([data-jarvis-state=thinking]) .sphere-orbit,#jarvisImmersive:has([data-jarvis-state=executing]) .sphere-orbit{animation-duration:4s;stroke-opacity:.95}
#jarvisImmersive:has([data-jarvis-state=listening]) .sphere-core{filter:drop-shadow(0 0 10px #e4bc71)}
#jarvisImmersive:has([data-jarvis-state=speaking]) .sphere-core{animation-duration:.7s}
#jarvisImmersive:has([data-jarvis-state=error]) .sphere-orbit{animation-play-state:paused}
@media(max-width:700px){#jarvisImmersive .immersive-stage{height:230px}#jarvisImmersive .immersive-graph .brain-graph-svg{height:100%}#jarvisImmersive .immersive-presence{width:150px}#jarvisImmersive #jarvisOrb{width:140px;height:140px}}
@media(max-height:650px){#jarvisImmersive .immersive-stage{height:160px}#jarvisImmersive #jarvisOrb{width:110px;height:110px}}
@media(prefers-reduced-motion:reduce){#jarvisImmersive :is(.jarvis-sphere,.sphere-orbit,.sphere-core){animation:none!important}}
#jarvisImmersive .immersive-presence #jarvisStateText{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:210px;margin:0}
#jarvisImmersive .immersive-graph .brain-node.selected circle{stroke:#fff0bd;stroke-width:4;filter:drop-shadow(0 0 8px #e9b866)}
#jarvisImmersive .immersive-graph .brain-node.dim{opacity:.25}

.jarvis-voice-transcript {color:#eee;background:#171717;border:1px solid #806638;border-radius:14px;padding:16px;max-width:100%;overflow-wrap:anywhere;}
.jarvis-voice-transcript p {line-height:1.55;white-space:pre-wrap;}
.jarvis-voice-transcript .voice-transcript-notice {color:#d6c49d;font-size:.85rem;}
.jarvis-voice-transcript .immersive-user-message {color:#fff;background:#292929;padding:12px;border-radius:12px;}
.jarvis-voice-transcript .immersive-assistant-message {color:#eee;}
