/* Jarvis Studio — a luminous scene with quiet, legible working surfaces. */
@import url('/scene-viewers.css?v=studio3');
:root {
  --accent:#52d7f3; --accent-soft:#216e91; --gold:#f3cf8c;
  --line:rgba(117,183,219,.16); --muted:#93acc3; --cyan:var(--accent);
  --ice:#e4f4ff; --panel:#0a192b; --studio-shadow:0 20px 60px #0003;
}
body {
  background:radial-gradient(ellipse at 50% 17%,#063e68 0,transparent 58%),linear-gradient(180deg,#04182e,#030c18 80%);
  color:#dce9f5; font-family:'Segoe UI',system-ui,sans-serif;
}
body:before { display:none; }
body[data-workspace-theme=violet] {
  --accent:#c2a8ff; --accent-soft:#7554ae; --line:rgba(179,149,224,.18);
  background:radial-gradient(ellipse at 50% 17%,#292047 0,transparent 58%),linear-gradient(180deg,#120e24,#080b19 80%);
}
main { max-width:2200px; padding:0 30px; }
.hud-header { height:82px; gap:24px; border-bottom:1px solid var(--line); }
.hud-header:after { display:none; }
.wordmark { gap:12px; font:500 17px 'Segoe UI',sans-serif; letter-spacing:3px; color:#ecf6ff; }
.wordmark small { font:8px 'Segoe UI',sans-serif; letter-spacing:2.1px; margin-top:5px; color:#7d9cb7; }
.brand-symbol { display:flex; width:35px; height:40px; text-shadow:none; }
.brand-symbol svg { width:100%; height:100%; fill:none; stroke:var(--gold); stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
.header-line { background:none; }
.connection { font:11px 'Segoe UI',sans-serif; color:#8eaec7; }
.connection i { width:5px; height:5px; margin-right:8px; box-shadow:none; }
.clock { font:11px 'Segoe UI',sans-serif; color:#7393ad; }
.workspace { display:grid; grid-template-columns:245px minmax(0,1fr) 255px; gap:24px; padding:24px 0 36px; align-items:start; }
.center-column { min-width:0; }
.rail {
  position:sticky; top:24px; padding:23px 18px; max-height:calc(100dvh - 48px); overflow:auto;
  scrollbar-width:thin; scrollbar-color:#30536e transparent; border:1px solid var(--line); border-radius:16px;
  background:linear-gradient(150deg,rgba(15,39,62,.76),rgba(7,21,38,.88)); box-shadow:var(--studio-shadow);
}
.rail:before,.rail:after,.hud-panel:before,.hud-panel:after { display:none; }
.rail h2 { font:500 18px 'Segoe UI',sans-serif; letter-spacing:-.4px; color:#e7f1fb; margin:7px 0 9px; }
.rail .panel-subtitle { font-size:11px; line-height:1.7; color:#7797b3; }
.eyebrow { font:500 8px 'Segoe UI',sans-serif; letter-spacing:1.8px; color:#74a5c5; }
.panel-head { margin-bottom:17px; }
.live-tag { font:8px 'Segoe UI',sans-serif; letter-spacing:1px; }
.session-totals { margin:20px 0; padding-bottom:21px; border-color:var(--line); }
.session-totals strong { font:300 32px 'Segoe UI',sans-serif; color:#dceeff; }
.session-totals span { font-size:10px; color:#7393ad; }
.create-session { gap:9px; }
.create-session label,.session-agent-filter label { color:#8daac1; font-size:10px; }
.create-session input,.create-session select,#session-search,.session-agent-filter select {
  background:#07182a; border:1px solid #28445e; color:#d4e4f2; padding:10px; border-radius:8px; font-size:11px;
}
#new-chat { border:1px solid #30617c; background:linear-gradient(120deg,#123f59,#0e2b44); color:#bfecf8; border-radius:8px; padding:11px; font-size:11px; }
.session-card { padding:13px 11px; border:1px solid #203c53; border-radius:9px; background:#091d30; margin-bottom:8px; }
.session-card:hover { background:#102c43; border-color:#3c6881; }
.session-card[data-status=running] { border-left:2px solid #5bcce9; background:#0d2b41; }
.session-name { font-size:12px; line-height:1.55; color:#c7dfef; }
.session-card-meta { color:#789ab5; }
.rail-footer { border-top-color:var(--line); }
.quota-account { border:1px solid #244056; border-radius:10px; background:#081a2d; padding:15px 12px; }
.quota-account[data-active=true] { border-color:#8b7956; background:linear-gradient(135deg,#26314460,#0a1d30); }
.quota-account-title { color:#d5e6f3; }
.quota-bar { height:4px; background:#1a3046; border-radius:8px; }
.quota-fill { background:linear-gradient(90deg,#2d85c2,#6bdeec); box-shadow:none; border-radius:8px; }
.telemetry>section+section { border-top-color:var(--line); }
.telemetry>section { padding:20px 0; }
.telemetry>section:first-child { padding-top:0; }
.model-controls select,.voice-choice select { background:#091b2e; border-color:#2a465f; font-size:11px; }
button,input,select,textarea { border-radius:8px; }
button { transition:background .18s,border-color .18s,color .18s; }
button:hover { background:#173a53; border-color:#547e97; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:2px solid #83d5ed; outline-offset:3px; }
button[aria-pressed=true] { color:#e6f9ff; border-color:#56859c; background:#20475f; }
.icon-button { border-color:#2b4a64; color:#afcde2; }
.dismiss-button { border-radius:50%; }
.hud-panel { border:1px solid var(--line); border-radius:16px; background:linear-gradient(150deg,#102a42e8,#081a2ded); box-shadow:var(--studio-shadow); }
/* Scene: the light is rendered independently from all text and controls. */
.left-stage {
  position:relative; isolation:isolate; display:flex; align-items:center; justify-content:center;
  height:clamp(540px,66dvh,680px); min-height:540px; padding:0; margin:0 0 28px; overflow:hidden;
  border:1px solid #6ab9df0d; border-radius:24px; background:radial-gradient(ellipse,#06456f,#03162b);
  box-shadow:0 28px 80px #0002;
}
.scene-canvas { position:absolute; inset:0; width:100%; height:100%; display:block; z-index:0; opacity:0; transition:opacity 1s; pointer-events:none; }
.left-stage[data-scene-ready=true] .scene-canvas { opacity:1; }
.scene-heading { position:absolute; top:25px; left:27px; right:27px; display:flex; justify-content:space-between; align-items:center; z-index:4; }
.scene-heading .eyebrow { font-size:8px; color:#90bbd6; letter-spacing:2.1px; }
.scene-online { font:8px 'Segoe UI',sans-serif; letter-spacing:1.6px; color:#71a1c0; }
.scene-online i { display:inline-block; width:4px; height:4px; border-radius:50%; background:#83d3d7; margin-right:7px; }
.scene-grid,.scene-orbit { display:none; }
.scene-caption { position:absolute; left:27px; top:77px; display:flex; flex-direction:column; gap:7px; z-index:4; max-width:180px; }
.scene-caption .eyebrow { font-size:7px; color:#7295b0; letter-spacing:1.3px; }
.scene-caption strong { color:#b9dced; font:400 17px 'Segoe UI',sans-serif; overflow:hidden; text-overflow:ellipsis; }
.scene-caption>span:last-child { font-size:10px; color:#6e94b0; line-height:1.7; }
.scene-caption:after,.scene-channels:after { display:none; }
.scene-channels { position:absolute; right:27px; top:77px; display:flex; flex-direction:column; gap:7px; align-items:flex-end; text-align:right; z-index:4; }
.scene-channels .eyebrow { font-size:7px; color:#7295b0; letter-spacing:1.3px; }
.scene-channels>span:not(.eyebrow) { font-size:9px; color:#84a7c0; }
.scene-channels>span[data-active=true] { color:#e3c58e; }
.scene-channels .scene-channel-note { font-size:8px!important; color:#527e9f!important; max-width:140px; line-height:1.6; margin-top:3px; }
.reactor-wrap { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; margin:0; min-width:0; pointer-events:none; }
.reactor-wrap:before,.reactor-wrap:after { display:none; }
#reactor { position:absolute; inset:0; width:100%; height:100%; filter:saturate(var(--orb-saturation,1.3)) brightness(var(--orb-brightness,1.2)); }
.orb-circle-content { width:370px; height:370px; position:absolute; top:calc(43% - 185px); left:calc(50% - 185px); }
#orb-circle-surface { position:absolute; inset:0; background:transparent!important; border-radius:50%; box-shadow:none; }
#orb-circle-glow { opacity:0; }
.core-art { width:100%; height:100%; overflow:visible; display:block; filter:drop-shadow(0 0 15px #69a5c055); animation:none; }
.left-stage[data-scene-ready=true] .orb-circle-content { opacity:0; }
.reactor-label { position:absolute; inset:auto 0 111px; display:flex; flex-direction:column; gap:7px; justify-content:center; align-items:center; padding:0; }
.reactor-id { font:400 15px 'Segoe UI',sans-serif; color:#cee9f6; letter-spacing:6px; text-indent:6px; display:block; text-shadow:0 0 20px #6dc6f333; }
.reactor-label small { font:500 7px 'Segoe UI',sans-serif; letter-spacing:2px; color:#c7b58e; padding:0; background:none; }
.left-stage .voice-actions { position:absolute; bottom:47px; left:10px; right:10px; z-index:5; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:8px; margin:0; }
.left-stage .talk-button { display:flex; gap:8px; align-items:center; padding:11px 20px; min-height:42px; border:1px solid #69a4bd80; border-radius:24px; background:linear-gradient(140deg,#1c4b64c9,#0c2b45e8); color:#d7f3fb; box-shadow:inset 0 1px #a6dded18,0 6px 24px #0002; font-size:11px; }
.left-stage .talk-button svg { width:14px; height:14px; }
.left-stage .voice-actions .icon-button { display:block; padding:10px 14px; min-height:40px; border:1px solid #365e7877; border-radius:22px; color:#91b8d3; background:#0c2840a1; font-size:10px; }
.left-stage .voice-note { position:absolute; bottom:22px; left:18px; right:18px; margin:0; color:#5e8bac; font-size:8px; text-align:center; }
.left-stage .notice { position:absolute; bottom:5px; left:18px; right:18px; z-index:6; background:#071a2de8; font-size:11px; }
.notice:empty { display:none; }
/* Workspace controls share a single hierarchy rather than competing frames. */
.workbench-header { display:flex; align-items:center; gap:15px; margin:0 0 20px; padding:0; border:none; }
.workbench-title { flex:1; min-width:0; }
.workbench-title .eyebrow { font-size:7px; letter-spacing:1.8px; color:#688faa; }
.workbench-title h1 { color:#dcecf8; font:400 21px 'Segoe UI',sans-serif; letter-spacing:-.55px; margin:6px 0 0; }
.workbench-views { display:flex; gap:3px; border:1px solid #34577166; border-radius:11px; padding:4px; background:#071c30a8; }
.workbench-views button { padding:9px 13px; border:0; border-radius:7px; font-size:11px; color:#87a9c3; background:transparent; }
.workbench-views button[aria-pressed=true] { color:#e0f5ff; background:#24465e; box-shadow:0 1px 4px #0003,inset 0 1px #b2e3ff10; }
.appearance-menu { position:relative; font-size:10px; color:#84a7c0; }
.appearance-menu>summary { list-style:none; cursor:pointer; border:1px solid #34577166; padding:12px; border-radius:10px; }
.appearance-menu>summary::-webkit-details-marker { display:none; }
.appearance-content { position:absolute; top:calc(100% + 9px); right:0; width:245px; padding:19px; display:grid; gap:11px; z-index:30; background:#0d253c; border:1px solid #426780; border-radius:13px; box-shadow:0 18px 55px #0008; }
.appearance-content label { color:#b2cbdc; font-size:11px; }
.appearance-content select { width:100%; padding:9px; color:#d4eaf6; background:#091d31; border:1px solid #33536d; }
.appearance-content input { width:100%; accent-color:#8bcadd; }
.project-strip { display:flex; align-items:center; flex-wrap:wrap; gap:8px; border:1px solid var(--line); padding:12px 14px; border-radius:12px; background:#0b2137b0; }
.project-strip select { flex:1; min-width:150px; max-width:360px; padding:9px 11px; background:#0b2035; border:1px solid #304c65; color:#c6ddec; font-size:12px; }
.project-strip button { padding:9px 11px; background:#142e45; border-color:#35516a; font-size:10px; color:#adc8dc; }
.project-strip p { flex-basis:100%; margin:3px 0 0; font-size:11px; line-height:1.6; color:#6f94b1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.task-strip { display:flex; align-items:center; gap:11px; min-height:47px; padding:10px 3px; font-size:10px; }
.task-strip-heading { font:9px 'Segoe UI',sans-serif; color:#80a6bf; white-space:nowrap; }
.task-strip-heading i { display:inline-block; width:4px; height:4px; background:#85c4d6; border-radius:50%; margin-right:6px; }
.task-empty { color:#6288a4; }.task-stale { color:#d8bd91; }
#workspace-tasks { display:flex; gap:6px; overflow:auto; min-width:0; scrollbar-width:thin; }
.task-pill { max-width:235px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; flex-shrink:0; padding:6px 10px; font-size:10px; background:#15374d; border-color:#34637b; border-radius:16px; color:#a5c9dc; }
.workbench { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; height:clamp(680px,82dvh,1200px); min-width:0; }
.workbench[data-view=chat],.workbench[data-view=files] { grid-template-columns:minmax(0,1fr); }
.workbench[data-view=chat] .materials-panel,.workbench[data-view=files] .chat-panel { display:none; }
.workbench .chat-panel { display:flex; flex-direction:column; min-height:0; overflow:hidden; padding:20px; margin:0; }
.workbench .panel-heading { flex-shrink:0; border-bottom:1px solid var(--line); padding-bottom:16px; }
.workbench .panel-heading h2 { font:500 17px 'Segoe UI',sans-serif; color:#d9eaf7; max-width:380px; }
.workbench .account-picker { padding-top:12px; }
.workbench .account-picker label { color:#789db9; font-size:9px; }
.workbench .account-picker select { max-width:none; background:#0b2035; border-color:#2e4a62; color:#b9d4e7; }
.workbench .active-account { font-size:10px; line-height:1.6; color:#83a7c1; margin:8px 0; }
.workbench .message-scroll-area { flex:1; min-height:150px; overflow:hidden; }
.workbench #messages { height:100%; max-height:none; min-height:0; padding:20px 1px; overflow:auto; }
.workbench .message-content { font-size:14px; line-height:1.85; }
.workbench .message.user { margin-left:auto; max-width:88%; background:linear-gradient(135deg,#214e73,#173b5b); border:1px solid #49729066; border-radius:14px 4px 14px 14px; }
.workbench .message.user .message-content { color:#e9f5ff; }
.workbench .message.assistant { max-width:100%; background:#0b203266; border-color:#34516a55; border-radius:4px 14px 14px 14px; }
.workbench .composer { flex-shrink:0; margin-top:12px; padding:12px; background:#091c30; border:1px solid #365870; border-radius:12px; box-shadow:0 4px 16px #0001; }
.workbench .composer textarea { min-height:64px; max-height:180px; font-size:14px; }
.workbench .composer-hint { flex-shrink:0; font-size:9px; margin-top:10px; color:#6388a4; }
.workbench .notice { font-size:12px; flex-shrink:0; }
.send-button { border-radius:50%; background:linear-gradient(135deg,#407e9e,#2a5876); border-color:#6996ad; }
.file-context { display:flex; gap:8px; align-items:center; flex-shrink:0; padding:8px 10px; background:#413e2c66; border:1px solid #927a4d; border-radius:8px; font-size:11px; color:#ddca9f; }
.file-context span { flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.file-context button { background:transparent; border:0; padding:1px 5px; }
.materials-heading { padding:18px; }.materials-heading h2 { font-weight:500; color:#d4e9f6; }.material-mode button { background:#153149; border-color:#35536d; }
.material-empty-icon { color:#a7cfdd; border-color:#45687e; background:radial-gradient(circle,#194d6355,transparent); border-radius:18px; box-shadow:none; font-size:34px; }
.material-empty h3 { font-weight:400; }.file-card { background:#102c43; border-color:#29495f; border-radius:9px; }.file-type { border-radius:7px; }
.file-viewer { background:#06172a; }.file-library { background:#0a2036; }.file-document-heading { background:#102b42; border-color:var(--line); }
.document-paper { background:#f7f9fc; box-shadow:0 8px 40px #0003; }.workbench-toast { border-radius:12px; background:#15334a; border-color:#7f7354; }
#project-editor { border-radius:16px; background:#0d253c; border-color:#40617a; }#project-form input,#project-form textarea { background:#081c30; border-color:#33536b; }
@media(min-width:1750px) {
  .workspace { grid-template-columns:270px minmax(0,1fr) 280px; gap:30px; }
  .left-stage { height:660px; }.scene-caption,.scene-channels { top:86px; }.scene-caption strong { font-size:21px; }
}
@media(max-width:1450px) {
  main { padding:0 20px; }.workspace { grid-template-columns:215px minmax(0,1fr) 225px; gap:18px; }.rail { padding:20px 14px; }
  .left-stage { height:560px; min-height:560px; }.scene-caption>span:last-child,.scene-channel-note { display:none; }
  .scene-caption,.scene-channels { top:73px; }.scene-caption strong { font-size:16px; }
  .workbench-header { flex-wrap:wrap; }.workbench-title { flex-basis:100%; }.appearance-menu { margin-left:auto; }.workbench .chat-panel { padding:16px; }
}
@media(max-width:1250px) {
  .workbench { grid-template-columns:minmax(0,1fr); }.workbench-views [data-workspace-view=split] { display:none; }.workbench[data-view=split] .materials-panel { display:none; }
  .scene-heading { left:20px; right:20px; }.scene-caption { left:20px; }.scene-channels { right:20px; }.scene-heading .eyebrow { font-size:7px; letter-spacing:1.5px; }
  .scene-channels .eyebrow { display:none; }.scene-channels>span:not(.eyebrow) { font-size:8px; }.workbench { height:clamp(680px,84dvh,1200px); }
}
@media(max-width:950px) {
  main { padding:0 18px; }.hud-header { height:72px; gap:12px; }.workspace { display:block; padding-top:20px; }.center-column { width:100%; }
  .rail { position:fixed; max-height:none; overflow:auto; }.left-stage { height:590px; min-height:590px; margin-bottom:26px; }
  .scene-caption>span:last-child,.scene-channel-note { display:block; }.scene-channels .eyebrow { display:block; }.scene-channels>span:not(.eyebrow) { font-size:10px; }
  .workbench-header { flex-wrap:nowrap; }.workbench-title { flex-basis:auto; }.workbench-title h1 { font-size:21px; }.appearance-menu { margin-left:0; }
}
@media(max-width:600px) {
  main { padding:0 11px; }.hud-header { height:68px; gap:8px; }.wordmark { font-size:14px; letter-spacing:1.8px; gap:8px; }.brand-symbol { width:28px; height:33px; }.wordmark small { font-size:6px; letter-spacing:1.4px; }
  .workspace { padding-top:15px; }.left-stage { height:500px; min-height:500px; border-radius:18px; margin-bottom:24px; }
  .scene-heading { top:21px; left:18px; right:18px; }.scene-heading .eyebrow { font-size:6px; letter-spacing:1.3px; }.scene-online { font-size:7px; letter-spacing:1px; }
  .scene-caption { left:18px; top:60px; gap:5px; }.scene-caption .eyebrow { font-size:6px; }.scene-caption strong { font-size:14px; }.scene-caption>span:last-child { display:none; }
  .scene-channels { right:18px; top:62px; gap:5px; }.scene-channels .eyebrow,.scene-channel-note { display:none!important; }.scene-channels>span:not(.eyebrow) { font-size:7px; }
  .orb-circle-content { width:320px; height:320px; left:calc(50% - 160px); top:calc(43% - 160px); }
  .reactor-label { bottom:111px; }.reactor-id { font-size:13px; letter-spacing:5px; }.reactor-label small { font-size:6px; }
  .left-stage .voice-actions { bottom:45px; gap:6px; }.left-stage .talk-button { padding:11px 15px; font-size:11px; }.left-stage .voice-actions .icon-button { font-size:9px; padding:11px; }
  .left-stage #chat-toggle { display:none; }.left-stage .voice-note { font-size:7px; bottom:20px; }
  .workbench-header { flex-wrap:wrap; gap:13px; margin-bottom:17px; }.workbench-title { flex:1; }.workbench-title h1 { font-size:19px; }.workbench-title .eyebrow { font-size:6px; }
  .workbench-views { order:3; width:100%; }.workbench-views button { flex:1; font-size:12px; }.appearance-menu { font-size:10px; }
  .project-strip { padding:10px; gap:7px; }.project-strip select { min-width:140px; max-width:none; font-size:12px; }.project-strip button { font-size:10px; padding:9px; }.project-strip p { font-size:10px; }
  .task-strip { gap:8px; }.task-strip-heading { font-size:8px; }.task-pill { max-width:185px; }
  .workbench { height:calc(100dvh - 90px); min-height:650px; }.workbench .chat-panel { padding:14px; }.workbench .panel-heading h2 { max-width:210px; font-size:16px; }
  .workbench .message-content { font-size:14px; }.workbench .message.user { max-width:93%; }.workbench .composer textarea { font-size:16px; }
  .file-document-heading { flex-wrap:wrap; gap:8px; }.file-document-heading>div:first-child { flex-basis:100%; }.file-document-actions { width:100%; justify-content:flex-start; }.file-document-actions button,.file-download { padding:10px; }
  .file-filters input { font-size:16px; }.file-filters select { font-size:11px; }.workspace-files { max-height:230px; }.file-card strong { font-size:12px; }.file-card small { font-size:10px; }
  .document-paper { padding:18px 14px; margin:10px; font-size:14px; }.browser-dock #browser-dialog[open] { padding:10px; }.browser-dock #browser-type-form { gap:5px; }
  #project-editor { padding:18px; }#project-form input,#project-form textarea { font-size:16px; }.workbench-toast { bottom:16px; right:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .scene-canvas { transition:none; }.core-art,.reactor-wrap:after,.reactor-wrap:before { animation:none!important; }
  .workbench *, .left-stage * { scroll-behavior:auto!important; transition:none!important; }
}
/* An interactive capability map, kept separate from the voice scene. */
.studio-navigation{display:flex;gap:5px;padding:4px;width:max-content;max-width:100%;margin:0 0 18px;border:1px solid #3f668047;border-radius:12px;background:#081c2da8}
.studio-navigation button{border:0;border-radius:8px;padding:10px 15px;background:transparent;color:#7d9fb8;font:11px 'Segoe UI',sans-serif;white-space:nowrap;display:flex;align-items:center;gap:8px}
.studio-navigation button>span{font-size:15px;color:#6495b5}
.studio-navigation button[aria-pressed=true]{background:#24465e;color:#e5f7ff;box-shadow:0 2px 6px #0002,inset 0 1px #c0e8ff12}
.studio-navigation button[aria-pressed=true]>span{color:#bbdce9}
body[data-studio-mode=work] .left-stage,body[data-studio-mode=map] .left-stage{display:none}
body[data-studio-mode=map] .workbench-header,body[data-studio-mode=map] .project-strip,body[data-studio-mode=map] .task-strip,body[data-studio-mode=map] .workbench{display:none}
body[data-studio-mode=map] .workspace{grid-template-columns:minmax(0,1fr)}
body[data-studio-mode=map] .workspace>.rail{display:none}
.system-map{min-width:0}
.map-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:6px 0 23px;padding:0 3px}
.map-heading h1{font:400 29px 'Segoe UI',sans-serif;letter-spacing:-.9px;color:#e4f0fa;margin:8px 0}
.map-heading p{font-size:12px;color:#799bb6;line-height:1.8;margin:0}
.map-heading .eyebrow{color:#7faac8;font-size:8px;letter-spacing:2px}
.map-freshness{display:flex;flex-direction:column;gap:8px;text-align:right;flex-shrink:0}
.map-freshness span{font-size:11px;color:#91c5d3}
.map-freshness span:before{content:'';display:inline-block;width:5px;height:5px;background:#7bd3bf;border-radius:50%;margin-right:7px;box-shadow:0 0 9px #5be9c733}
.map-freshness span[data-stale=true]{color:#c8b48f}.map-freshness span[data-stale=true]:before{background:#c8a976;box-shadow:none}
.map-freshness time{font-size:10px;color:#60859f}
.map-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.map-search{display:flex;align-items:center;gap:9px;flex:1;min-width:180px;max-width:540px;background:#0a2035;border:1px solid #31516a;border-radius:9px;padding:0 12px}
.map-search svg{width:15px;height:15px;fill:none;stroke:#759db8;stroke-width:1.5;flex-shrink:0}
.map-search input{min-width:0;width:100%;background:transparent;border:0;color:#d4e8f6;font-size:12px;padding:11px 0;outline-offset:7px}
.map-search input::placeholder{color:#6c91ae}
.map-toolbar select{padding:11px 12px;color:#b1ccdf;background:#10283e;border:1px solid #36536b;border-radius:9px;font-size:11px;max-width:240px}
.map-toolbar>button{padding:11px 14px;color:#a8c9dd;background:#10293f;border:1px solid #36536b;border-radius:9px;font-size:11px}
.map-shell{position:relative;height:calc(100dvh - 320px);min-height:600px;max-height:1100px;overflow:hidden;border:1px solid #2f5872;border-radius:18px;background:radial-gradient(ellipse at 50% 25%,#0c3551 0,#071c31 65%,#051626);box-shadow:0 20px 80px #0003,inset 0 1px #96cee90d}
.map-viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;background-image:radial-gradient(#72b1d537 .8px,transparent 1px);background-size:25px 25px;user-select:none;-webkit-user-select:none;outline-offset:-4px}
.map-viewport.is-panning{cursor:grabbing}
.map-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
.map-connections{position:absolute;inset:0;overflow:visible;pointer-events:none}
.map-link{fill:none;stroke:#4bc8ed65;stroke-width:1.4;stroke-linecap:round;transition:stroke .2s;filter:drop-shadow(0 0 4px #2aabe522)}
.map-link[data-kind=work],.map-link[data-kind=file],.map-link[data-kind=project]{stroke:#e0b56475;filter:drop-shadow(0 0 4px #e0b56419)}
.map-link[data-kind=voice]{stroke:#a88be57a;filter:drop-shadow(0 0 4px #a88be521)}
.map-link[data-kind=accounts]{stroke:#6ac9b275}
.map-link.is-selected{stroke:#dcf7ff;stroke-width:2;filter:drop-shadow(0 0 5px #6ce0ff50)}
.map-node{position:absolute;display:flex;align-items:center;gap:12px;padding:13px 16px;text-align:left;border:1px solid #426982;border-radius:11px;background:linear-gradient(135deg,#153b55,#0d293e);color:#cce7f5;box-shadow:0 8px 24px #0003,inset 0 1px #d1f3ff08;cursor:pointer;touch-action:none}
.map-node:hover{border-color:#7bbbd7;background:linear-gradient(135deg,#1c4965,#11334b);box-shadow:0 8px 30px #0003,0 0 18px #40b7df0a}
.map-node[aria-pressed=true]{border-color:#c3e7f6;background:linear-gradient(135deg,#255675,#17384e);box-shadow:0 0 0 3px #8dd5f61a,0 8px 30px #0003}
.map-node-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;font:18px 'Segoe UI',sans-serif;color:#8fd5ee;background:#153b54;border:1px solid #416e8a;border-radius:8px}
.map-node-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:5px}
.map-node strong{display:block;max-width:100%;font:500 17px 'Segoe UI',sans-serif;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:inherit}
.map-node small{display:block;font:12px 'Segoe UI',sans-serif;line-height:1.3;color:#80a9c5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.map-node[data-kind=root]{background:radial-gradient(ellipse at top,#2b647b,#12354b);border-color:#8eb8c9;box-shadow:0 0 45px #5fc4dd0f,0 12px 40px #0004}
.map-node[data-kind=root] strong{font-weight:400;letter-spacing:2px;font-size:23px}.map-node[data-kind=root] .map-node-icon{background:#27536b;color:#e2ce9e;border-color:#7b8791;font-size:20px;width:38px;height:38px}
.map-node[data-kind=work],.map-node[data-kind=file],.map-node[data-kind=project]{border-color:#8d7b55;background:linear-gradient(135deg,#303d43,#172f40)}
.map-node[data-kind=work] .map-node-icon,.map-node[data-kind=file] .map-node-icon,.map-node[data-kind=project] .map-node-icon{border-color:#8d7b55;background:#354149;color:#e4c58d}
.map-node[data-kind=voice]{border-color:#776397;background:linear-gradient(135deg,#2c3553,#172c42)}.map-node[data-kind=voice] .map-node-icon{border-color:#776397;background:#333853;color:#bda5eb}
.map-node[data-kind=accounts]{border-color:#4d837e;background:linear-gradient(135deg,#22444c,#122e3c)}.map-node[data-kind=accounts] .map-node-icon{border-color:#4d837e;background:#24494d;color:#8bd2bf}
.map-node[data-state=running]:after,.map-node[data-state=ready]:after{content:'';position:absolute;right:10px;top:10px;width:5px;height:5px;border-radius:50%;background:#81e1bf;box-shadow:0 0 7px #81e1bf80}
.map-node[data-state=error]:after{content:'';position:absolute;right:10px;top:10px;width:5px;height:5px;border-radius:50%;background:#f09595}
.map-expand{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border:1px solid #4a6c84;border-radius:6px;font-size:14px;color:#9dc6db;background:#17374d}
.map-inspector{position:absolute;z-index:8;top:18px;right:18px;width:300px;max-height:calc(100% - 96px);overflow:auto;padding:23px 21px;background:linear-gradient(145deg,#122f47fa,#0c2238fc);border:1px solid #4c728d;border-radius:14px;box-shadow:0 18px 55px #0007;user-select:text}
.map-inspector>.dismiss-button{position:absolute;top:10px;right:10px;width:28px;height:28px;padding:0;background:transparent;border-color:#42617a;font-size:20px;color:#93b2c8}
.map-inspector .eyebrow{font-size:8px;color:#88b2ce;letter-spacing:1.6px;padding-right:25px}
.map-inspector h2{font:400 23px 'Segoe UI',sans-serif;letter-spacing:-.4px;color:#e1eff9;overflow-wrap:anywhere;margin:14px 0 13px;line-height:1.35}
.map-inspector p{font-size:12px;line-height:1.9;color:#8faec4;margin:0 0 20px}
.map-inspector dl{display:grid;grid-template-columns:1fr;gap:6px;margin:0 0 22px;padding-top:14px;border-top:1px solid #365670}
.map-inspector dt{font-size:9px;color:#698da8;margin-top:6px}.map-inspector dd{margin:0;font-size:12px;line-height:1.65;color:#c5dce9;overflow-wrap:anywhere}
#map-detail-actions{display:flex;flex-direction:column;gap:8px}#map-detail-actions button{font-size:11px;text-align:left;padding:11px 12px;background:#1b4159;border-color:#52768b;border-radius:8px;color:#bfdfea}#map-detail-actions button:first-child{background:#29566e;border-color:#7294a6;color:#d9f1fa}
.map-zoom{position:absolute;z-index:5;left:20px;bottom:18px;display:flex;align-items:center;gap:4px;border:1px solid #3e627d;border-radius:11px;padding:4px;background:#102b42e8;box-shadow:0 6px 18px #0003}
.map-zoom button{width:32px;height:31px;padding:0;border:0;border-radius:7px;background:transparent;font-size:18px;color:#c1e2f1}.map-zoom output{font-size:10px;color:#88b1cb;min-width:44px;text-align:center}
.map-legend{position:absolute;z-index:4;right:22px;bottom:25px;display:flex;gap:16px;pointer-events:none}.map-legend>span{font-size:9px;color:#6e99b7;display:flex;align-items:center;gap:5px}.map-legend i{width:5px;height:5px;border-radius:50%;background:#67c8e9}.map-legend .legend-work{background:#d9b572}.map-legend .legend-voice{background:#a88be5}.map-legend .legend-account{background:#6ac9b2}
.map-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:16px;color:#88acc5}
.map-footnote{font-size:10px;color:#6188a5;margin:12px 3px;line-height:1.7}
.system-map.is-expanded{position:fixed;z-index:100;inset:14px;display:flex;flex-direction:column;background:#07192b;padding:22px;border:1px solid #41637c;border-radius:18px;box-shadow:0 0 0 30px #020a16e8}
.system-map.is-expanded .map-heading{margin-top:0;margin-bottom:15px}.system-map.is-expanded .map-shell{flex:1;min-height:0;height:auto;max-height:none}.system-map.is-expanded .map-footnote{margin-bottom:0}
@media(max-width:1100px){.map-heading h1{font-size:25px}.map-search{max-width:none}.map-heading p{font-size:11px}.map-toolbar{flex-wrap:wrap}.map-shell{height:calc(100dvh - 350px)}.map-inspector{width:280px}.map-legend{gap:11px}}
@media(max-width:950px){.studio-navigation{width:100%;margin-bottom:17px}.studio-navigation button{flex:1;justify-content:center}body[data-studio-mode=map] .workspace>.rail.is-open{display:block}.map-heading h1{font-size:24px}.map-shell{min-height:600px}}
@media(max-width:600px){.studio-navigation{gap:2px;padding:3px;border-radius:10px}.studio-navigation button{font-size:10px;padding:10px 5px;gap:5px}.studio-navigation button>span{font-size:12px}.map-heading{align-items:flex-start;margin-bottom:18px;gap:12px}.map-heading h1{font-size:22px;letter-spacing:-.6px;margin:7px 0}.map-heading .eyebrow{font-size:6px;letter-spacing:1.3px}.map-heading p{font-size:10px;line-height:1.7}.map-freshness{padding-top:3px;max-width:100px;gap:6px}.map-freshness span{font-size:8px;line-height:1.5}.map-freshness time{font-size:7px;line-height:1.5}.map-toolbar{gap:7px}.map-search{flex-basis:100%;min-width:0}.map-search input{font-size:16px;padding:11px 0}.map-toolbar select{flex:1;min-width:0;padding:10px 8px;font-size:10px}.map-toolbar>button{font-size:10px;padding:10px}.map-shell{height:calc(100dvh - 305px);min-height:520px;border-radius:13px}.map-inspector{top:auto;bottom:65px;right:10px;left:10px;width:auto;max-height:56%;padding:18px}.map-inspector h2{font-size:21px;margin:11px 0}.map-inspector p{font-size:12px;margin-bottom:13px}.map-inspector dl{grid-template-columns:100px minmax(0,1fr);gap:8px;margin-bottom:17px;padding-top:13px}.map-inspector dt{margin:0;font-size:9px;padding-top:3px}.map-inspector dd{font-size:11px}.map-zoom{left:11px;bottom:12px}.map-legend{right:12px;bottom:23px;gap:8px}.map-legend>span{font-size:7px}.map-legend i{width:4px;height:4px}.map-footnote{font-size:9px}.system-map.is-expanded{inset:6px;padding:12px;border-radius:14px}.system-map.is-expanded .map-heading p{display:none}.system-map.is-expanded .map-heading{margin-bottom:11px}.system-map.is-expanded .map-shell{min-height:0}.system-map.is-expanded .map-footnote{font-size:8px}}
@media(max-width:380px){.map-legend>span:nth-child(n+3){display:none}.studio-navigation button{font-size:9px}.studio-navigation button>span{display:none}}
@media(prefers-reduced-motion:reduce){.map-node,.map-link{transition:none}}

.system-map.is-expanded .map-heading{margin-bottom:12px;align-items:center}.system-map.is-expanded .map-heading h1{font-size:23px;margin:4px 0}.system-map.is-expanded .map-heading p{display:none}.system-map.is-expanded .map-heading .eyebrow{font-size:6px}

/* Blend the voice scene into the application rather than enclosing it in a card. */
.left-stage{border-color:transparent;background:transparent!important;box-shadow:none;border-radius:0}.scene-canvas{mask-image:radial-gradient(ellipse 50% 55% at 50% 45%,#000 60%,transparent 100%)}
#map-detail-actions{margin:0 0 18px}.map-inspector p{margin-bottom:15px}
/* Constellation map: quiet chrome, crisp light and an open spatial composition. */
body[data-studio-mode=map]{background:#030c16}
.system-map{--map-cyan:#6ee6ff;position:relative}
.map-heading{margin:0 0 18px;align-items:center}
.map-heading h1,.system-map.is-expanded .map-heading h1{font-size:22px;font-weight:400;letter-spacing:-.5px;color:#daf4ff}
.map-heading p{display:none}.map-heading .eyebrow{color:#49829a;font-size:7px;letter-spacing:2.5px}
.map-freshness span{color:#8bb5c2;font-size:10px}.map-freshness time{font-size:9px;color:#486e83}
.map-toolbar{gap:6px;margin-bottom:0;padding:10px 0 14px;border-bottom:1px solid #63c7f01a}
.map-search{max-width:350px;min-width:160px;border-color:#4088a52b;background:#071722;border-radius:6px}
.map-search input{font-size:11px;padding:10px 0}.map-search input::placeholder{color:#517a8e}
.map-toolbar select,.map-toolbar>button,.map-branch-toggle{background:#081b27;border:1px solid #38758e38;border-radius:6px;color:#88b8cb;padding:10px 12px;font-size:10px}
.map-toolbar>button:hover{border-color:#61c5e4;background:#103244;color:#dcf7ff}
.map-shell{height:calc(100dvh - 270px);min-height:590px;max-height:none;border:0;border-radius:0;box-shadow:none;background:radial-gradient(ellipse at 50% 50%,#07304790,transparent 60%),linear-gradient(#030e1a,#041524 65%,#030d18)}
.map-viewport{background-image:radial-gradient(#74badb1a .6px,transparent .8px);background-size:32px 32px}
.map-shell:before{content:'';position:absolute;inset:18px;pointer-events:none;z-index:2;border:1px solid #3c9ab00b;clip-path:polygon(0 0,30px 0,30px 1px,1px 1px,1px 30px,0 30px,0 0,100% 0,100% 30px,calc(100% - 1px) 30px,calc(100% - 1px) 1px,calc(100% - 30px) 1px,calc(100% - 30px) 0,100% 0,100% 100%,0 100%)}
.map-node,.map-node[data-kind=work],.map-node[data-kind=file],.map-node[data-kind=project],.map-node[data-kind=voice],.map-node[data-kind=accounts]{padding:9px 13px;gap:11px;border:1px solid #3cabc965;border-radius:8px;background:linear-gradient(115deg,#0b2c3deb,#061b2af5);color:#c2effa;box-shadow:0 4px 18px #0003,inset 0 1px #b9f2ff09;cursor:grab}
.map-node:before{content:'';position:absolute;inset:-1px;border:1px solid transparent;border-top-color:#69d4ed45;border-radius:inherit;pointer-events:none}
.map-node strong{font:500 16px 'Segoe UI',sans-serif;letter-spacing:.1px;color:#c4edf7}
.map-node small{font:11px 'Segoe UI',sans-serif;color:#72a6b9;letter-spacing:.2px}
.map-node-icon,.map-node[data-kind=work] .map-node-icon,.map-node[data-kind=file] .map-node-icon,.map-node[data-kind=project] .map-node-icon,.map-node[data-kind=voice] .map-node-icon,.map-node[data-kind=accounts] .map-node-icon{width:24px;height:24px;border:1px solid #48a2bb30;border-radius:50%;background:#0b394a55;color:#65d4ee;font-size:13px}
.map-node[data-level="1"]{border-color:#5dd6eea0;background:linear-gradient(110deg,#0d4053ef,#092737f5);box-shadow:0 0 20px #22c6ef0b,inset 0 1px #b0efff14}
.map-node[data-level="1"] strong{color:#a9edff;font-size:15px;letter-spacing:.4px}
.map-node[data-kind=root]{border:1px solid #84e7ff;border-radius:36px;background:radial-gradient(ellipse at 50% 0,#126075,#082c40 85%);box-shadow:0 0 0 7px #48c7ed07,0 0 0 8px #67c8e522,0 0 55px #20bded25,inset 0 1px #bdf5ff47;padding:14px 24px}
.map-node[data-kind=root]:before{inset:-17px;border:1px solid #5fcde91a;border-radius:50px}
.map-node[data-kind=root] strong{font-size:21px;font-weight:400;letter-spacing:4px;text-transform:uppercase;color:#d5f7ff;text-shadow:0 0 15px #6edfff45}
.map-node[data-kind=root] small{font-size:9px;color:#6cb1c6;letter-spacing:.5px}
.map-node[data-kind=root] .map-node-icon{width:27px;height:27px;border:1px solid #6adcf18f;border-radius:50%;background:#11516a;color:#c8f7ff;font-size:14px;box-shadow:0 0 15px #55d6f033}
.map-node:hover{border-color:#8be8ff;background:#0d3549;box-shadow:0 0 24px #35bde919,0 5px 20px #0004}
.map-node[aria-pressed=true]{border-color:#ffe1a1;background:linear-gradient(115deg,#243e44,#0a2636);box-shadow:0 0 0 3px #e7c5820d,0 0 28px #eac68213}
.map-expand{width:18px;height:18px;background:#0c3040;border-color:#408da554;border-radius:50%;color:#81cadd;font-size:12px}
.map-link,.map-link[data-kind=work],.map-link[data-kind=file],.map-link[data-kind=project],.map-link[data-kind=voice],.map-link[data-kind=accounts]{stroke:#43c5e99c;stroke-width:1.25;filter:drop-shadow(0 0 4px #20c6ff44);stroke-linecap:round}
.map-link.is-selected{stroke:#c9f7ff;stroke-width:1.7;filter:drop-shadow(0 0 6px #5edaff80)}
.map-node.is-dragging{z-index:10;border-color:#e0f9ff;box-shadow:0 0 0 3px #76daed15,0 14px 35px #0005,0 0 30px #3cd8ff35;cursor:grabbing;transition:none}
.map-viewport.is-moving-node{cursor:grabbing}.map-viewport.is-moving-node .map-node{transition:none}
.map-node[data-locked=true]{cursor:pointer;border-color:#c8bb8f99}
.map-node[data-locked=true]:after{content:'◆';position:absolute;right:7px;bottom:3px;top:auto;width:auto;height:auto;background:none;box-shadow:none;color:#d9c089;font-size:8px}
.map-branch-toggle{display:flex;align-items:center;gap:6px;white-space:nowrap}
.map-branch-toggle input{accent-color:#5bcced;margin:0;width:12px;height:12px}
#map-undo{font-size:18px;line-height:1;padding:8px 12px}#map-undo:disabled{opacity:.3}
.map-zoom{left:18px;bottom:18px;border-color:#3c799044;background:#071a26e8;border-radius:8px;box-shadow:none}
.map-legend{right:20px;bottom:28px;opacity:.65}.map-legend i{background:#65d3eb!important}
.map-footer{display:flex;justify-content:space-between;align-items:start;gap:15px;border-top:1px solid #63c7f013}
.map-footer .map-footnote{flex:1;font-size:9px;color:#406779}
#map-save-state{font-size:9px;color:#4c8394;margin:13px 3px;white-space:nowrap}#map-save-state[data-error=true]{color:#e6bf83}
.system-map.is-expanded{inset:0;padding:24px 30px 12px;border:0;border-radius:0;background:#030e19;box-shadow:none}
.system-map.is-expanded .map-heading{margin-bottom:8px}.system-map.is-expanded .map-footer{flex-shrink:0}
.map-inspector{border-color:#387e965c;background:linear-gradient(135deg,#0b2636fa,#061622fc);border-radius:10px;box-shadow:0 16px 50px #0008;backdrop-filter:blur(16px)}
@media(max-width:600px){
 .map-heading h1,.system-map.is-expanded .map-heading h1{font-size:20px}.map-freshness span{font-size:8px}.map-freshness time{font-size:7px}
 .map-toolbar{gap:6px;padding-bottom:10px}.map-search{max-width:none;flex-basis:100%}.map-search input{font-size:16px}
 .map-toolbar select{flex:1 0 52%;max-width:none}.map-toolbar .map-branch-toggle{font-size:9px;padding:9px 7px}
 .map-toolbar #map-arrange,.map-toolbar #map-fit,.map-toolbar #map-fullscreen{flex:1 1 25%;padding:9px;font-size:10px}
 .map-shell{min-height:520px}.system-map.is-expanded{inset:0;padding:16px 12px 8px}.system-map.is-expanded .map-shell{min-height:0}
 .map-footer{gap:6px;flex-direction:column}.map-footer .map-footnote{margin-bottom:0;font-size:8px}#map-save-state{margin:0 3px 6px;font-size:8px}
}
