@font-face{font-family:Novaroa Sans;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2) format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Newsreader Variable;src:url(/assets/newsreader-latin-wght-normal-CCVVNp6i.woff2) format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:DM Mono;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:DM Mono;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}:root{font-family:Novaroa Sans,system-ui,sans-serif;color:#f6f4ea;background:#070a08;font-synthesis:none;font-optical-sizing:auto;--ink: #070a08;--forest: #0d1811;--forest-raised: #142219;--signal: #c9ff3d;--signal-shadow: #6f9320;--interactive-surface: rgba(201, 255, 61, .07);--focus-ring: #ddff87;--progress-confirmed: #a9c98f;--success-text: #b9dfc2;--success-surface: #152a1c;--selection-surface: #26351f;--sand: #e8d4ad;--paper: #f6f4ea;--muted: #9eaa9f;--functional-boundary: #68776b;--danger-text: #ff9f8d;--danger-border: #ff7362;--danger-surface: #9b332a;--danger-shadow: #4b1713;--danger-boundary: #8e493f;--disabled-text: #657067;--line: rgba(232, 212, 173, .2);--scene-depth: #0d1712;--scene-horizon: #17261c;--scene-floor: #1d2b21;--scene-furniture: #8f795d;--scene-furniture-shadow: #594c3b;--scene-outline: #050705;--scene-recovery: #d9a66f;--scene-presence: #36533f;--scene-presence-highlight: #5f7a66;--scene-window-grid: rgba(232, 212, 173, .08);--recap-muted: #40520e;--recap-divider: rgba(7, 10, 8, .22);--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--conversation-max: 760px;--motion-fast: .16s;--motion-state: .22s;--motion-emphasis: .24s;--text-caption: .75rem;--text-meta: .875rem;--ease-out-quint: cubic-bezier(.22, 1, .36, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100svh;background:var(--ink)}button,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}button:active:not(:disabled){filter:brightness(.9)}:where(a,button){min-width:44px;min-height:44px}:where(a,button,textarea):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}:where(.primary-action,.record,.send-turn){min-height:44px}:where(.system-message button,.voice-composer-hints button,.voice-composer-actions button,.voice-composer-recording button,.orientation-hints button,.first-exchange-secondary-actions button,.primary-action,.access-recovery,.access-recovery-secondary,.recap-transfer button,.feedback-choice button){transition:color var(--motion-fast) var(--ease-out-quint),border-color var(--motion-fast) var(--ease-out-quint),background-color var(--motion-fast) var(--ease-out-quint),filter var(--motion-fast) ease}:where(.system-message button,.primary-action,.access-recovery,.voice-composer-actions button:last-child,.voice-composer-recording button,.recap-transfer button):hover:not(:disabled){filter:brightness(.92)}:where(.voice-composer-hints button:not(.voice-composer-more-hints),.orientation-hints button,.feedback-choice button):not([aria-pressed=true]):hover{color:var(--paper);border-color:var(--sand);background:var(--interactive-surface)}.app-shell{height:100dvh;min-height:100svh;display:grid;grid-template-areas:"brand brand" "scene conversation";grid-template-columns:minmax(300px,34%) minmax(0,66%);grid-template-rows:72px minmax(0,1fr);overflow:hidden;background:var(--ink)}@media(min-width:885px){.app-shell:has(.game-stage[data-compact=true]){grid-template-columns:minmax(240px,26%) minmax(0,74%)}}.app-shell>*,.conversation-surface,.conversation-panel,.conversation-flow,.conversation-exchange,.npc-line,.learner-turn,.coach-feedback{min-width:0}.mission-heading h1,.mission-objective,.learner-turn p,.npc-line blockquote,.coach-feedback p,.coach-details li,.system-message p,.voice-composer p{overflow-wrap:anywhere}.brand-bar{grid-area:brand;grid-column:1 / -1;position:relative;z-index:5;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-lg);padding-right:max(var(--space-xl),env(safe-area-inset-right));padding-left:max(var(--space-xl),env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--ink)}.brand{display:inline-flex;align-items:center;gap:11px;width:max-content;max-width:100%;min-width:0;color:var(--paper);text-decoration:none}.brand-mark{display:grid;place-items:center;width:32px;height:32px;color:var(--ink);background:var(--signal);box-shadow:0 0 18px #c9ff3d24;font:700 19px/1 Novaroa Sans,sans-serif}.brand-name{font:700 25px/1 Novaroa Sans,sans-serif;letter-spacing:-.035em}.brand-promise{margin:0;color:var(--sand);font:500 .8125rem/1.25 Novaroa Sans,sans-serif;letter-spacing:.01em}.mission-controls{justify-self:end;display:flex;min-width:0;align-items:center;gap:var(--space-md)}.mission-index{display:flex;min-width:0;align-items:center;gap:12px;font-family:DM Mono,monospace;text-transform:uppercase}.mission-index span{color:var(--sand);font-size:var(--text-caption)}.mission-index strong{color:var(--paper);font-size:var(--text-caption);font-weight:500}.mission-exit{min-height:44px;padding:0;color:var(--muted);border:0;border-bottom:1px solid currentColor;background:transparent;font:650 .75rem/1.2 Novaroa Sans,sans-serif;cursor:pointer;transition:color var(--motion-fast) var(--ease-out-quint)}.mission-exit:hover:not(:disabled),.mission-exit:focus-visible{color:var(--signal)}.mission-exit:disabled{color:var(--disabled-text);border-bottom-color:transparent;cursor:not-allowed}.game-stage{grid-area:scene;position:relative;min-height:0;height:calc(100dvh - 72px);overflow:hidden;border-right:1px solid var(--line);background:var(--scene-depth)}.office-scene{position:relative;width:100%;height:100%;contain:strict;isolation:isolate;overflow:hidden;background:#0c1711}.office-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:radial-gradient(circle at 55% 42%,transparent 8%,rgba(7,10,8,.16) 56%,rgba(7,10,8,.76) 100%),linear-gradient(180deg,transparent 68%,rgba(7,10,8,.62))}.office-scene-label{position:absolute;top:5%;left:4%;z-index:6;color:var(--sand);font:500 var(--text-caption)/1 "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;opacity:.64}.office-window{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:radial-gradient(circle at 62% 24%,rgba(232,212,173,.12),transparent 25%),linear-gradient(145deg,#07100c 10%,#122019 58%,#0b130f)}.office-window:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(112deg,transparent 14%,rgba(232,212,173,.04) 44%,transparent 68%)}.office-window-light{position:absolute;top:-12%;left:17%;width:38%;height:112%;background:linear-gradient(102deg,transparent,rgba(232,212,173,.13),rgba(232,212,173,.025));filter:blur(1px);opacity:.54;transform:skew(-14deg);transform-origin:top;transition:opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-window-horizon{position:absolute;right:0;bottom:18%;width:62%;height:1px;background:linear-gradient(90deg,transparent,rgba(232,212,173,.28),transparent);box-shadow:0 34px #e8d4ad0d,0 78px #e8d4ad09}.office-window-column{position:absolute;top:0;right:27%;width:1px;height:74%;background:linear-gradient(180deg,#e8d4ad2e,#e8d4ad05);box-shadow:12px 0 36px #00000057}.office-window-city{position:absolute;right:4%;bottom:18%;width:54%;height:18%;opacity:.32;background:linear-gradient(180deg,transparent 0 32%,#111d16 33% 100%);clip-path:polygon(0 100%,0 58%,8% 58%,8% 31%,17% 31%,17% 66%,25% 66%,25% 18%,34% 18%,34% 51%,45% 51%,45% 4%,58% 4%,58% 61%,67% 61%,67% 26%,78% 26%,78% 48%,87% 48%,87% 12%,100% 12%,100% 100%)}.office-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:radial-gradient(ellipse at 64% 70%,rgba(169,201,143,.08),transparent 32%),linear-gradient(90deg,rgba(7,10,8,.42),transparent 38%);transition:opacity var(--motion-state) ease}.office-workspace{position:absolute;right:3%;bottom:5%;z-index:2;width:56%;height:24%;transform:perspective(420px) rotateX(61deg);transform-origin:bottom}.office-workspace-plane{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#312a21,#6f604a 46%,#332c23);box-shadow:0 -1px #e8d4ad38,0 24px 45px #0006}.office-task-light{position:absolute;right:18%;bottom:62%;width:1px;height:92%;background:var(--sand);opacity:.38;transform:rotate(16deg);transform-origin:bottom}.office-task-light:before{content:"";position:absolute;top:-4px;left:-12px;width:24px;height:7px;background:var(--sand);clip-path:polygon(12% 0,88% 0,100% 100%,0 100%)}.office-notebook{position:absolute;left:18%;top:24%;width:29%;height:42%;background:linear-gradient(90deg,#a99673 0,#a99673 47%,#070a08b8,#070a08b8,#d1bd96 50%);box-shadow:8px 10px 18px #0000002e}.office-practice-card{position:absolute;top:27%;left:52%;width:18%;height:34%;display:grid;grid-template-columns:26% 1fr;align-items:center;gap:9%;padding:4%;color:#c9ff3d85;background:linear-gradient(135deg,#14271c,#0a130e);box-shadow:7px 9px 16px #00000038;transform:rotate(-2deg);transition:color var(--motion-state) ease,box-shadow var(--motion-state) ease}.office-practice-mark{display:grid;place-items:center;aspect-ratio:1;color:var(--ink);background:var(--signal);font:700 clamp(5px,.55vw,8px)/1 "Novaroa Sans",sans-serif}.office-practice-lines{height:2px;background:currentColor;box-shadow:0 6px #e8d4ad33,0 12px #e8d4ad1f}.office-coffee{position:absolute;right:15%;top:20%;width:9%;aspect-ratio:.8;border-radius:10% 10% 34% 34%;background:#b9a17d;box-shadow:inset -6px 0 #070a082e}.office-coffee:after{content:"";position:absolute;top:18%;right:-46%;width:54%;height:45%;border:2px solid #8f795d;border-left:0;border-radius:0 50% 50% 0}.office-presence{position:absolute;right:10%;bottom:10%;z-index:2;width:min(42%,310px);aspect-ratio:.72;transform-origin:50% 100%;transition:transform var(--motion-state) var(--ease-out-quint),opacity var(--motion-state) ease}.office-presence-halo{position:absolute;top:2%;right:-18%;bottom:4%;left:-18%;border-radius:50%;background:radial-gradient(ellipse,rgba(232,212,173,.12),rgba(169,201,143,.025) 48%,transparent 72%);filter:blur(12px);transition:opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-presence-chair{position:absolute;left:8%;right:8%;bottom:-2%;height:52%;border-radius:44% 44% 8% 8%/24% 24% 6% 6%;background:#111b15;box-shadow:0 20px 34px #00000057}.office-presence-silhouette{position:absolute;top:17%;right:17%;bottom:0;left:17%;border-radius:48% 48% 12% 12%/28% 28% 8% 8%;background:linear-gradient(105deg,#18291f,var(--scene-presence) 52%,#14231a);box-shadow:inset 22px 0 34px #e8d4ad17,0 18px 50px #00000047;transition:filter var(--motion-state) ease,box-shadow var(--motion-state) ease}.office-presence-silhouette:before{content:"";position:absolute;top:-17%;left:27%;width:46%;aspect-ratio:.86;border-radius:46% 46% 42% 42%;background:linear-gradient(110deg,#263b2d,var(--scene-presence-highlight) 58%,#1d3024);box-shadow:inset -8px -4px 18px #00000029}.office-presence-silhouette:after{content:"";position:absolute;top:10%;right:7%;bottom:8%;left:44%;background:linear-gradient(104deg,transparent 12%,rgba(232,212,173,.18) 48%,transparent 52%);clip-path:polygon(34% 0,100% 18%,62% 100%,0 72%);opacity:.2;transform:translate(0);transition:opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-presence-face{position:absolute;top:9%;left:42%;z-index:4;width:18%;height:9%;border-top:2px solid rgba(246,244,234,.56);border-radius:50%;opacity:.78;transition:opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-presence-face:before{content:"";position:absolute;top:42%;left:15%;width:3px;height:3px;border-radius:50%;background:var(--sand);box-shadow:14px 0 var(--sand)}.office-presence-face:after{content:"";position:absolute;right:20%;bottom:-4px;width:28%;height:1px;background:#e8d4ad8c;transform:rotate(-7deg)}.office-presence-gesture{position:absolute;top:48%;left:19%;z-index:4;width:34%;height:8%;border-radius:999px;background:linear-gradient(90deg,#1c3325,var(--scene-presence-highlight));box-shadow:inset 0 1px #e8d4ad24;transform:rotate(-5deg);transform-origin:100% 50%;opacity:.72;transition:opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-presence-name{position:absolute;right:13%;bottom:8%;z-index:6;color:#f6f4eab8;font:500 var(--text-caption)/1.3 "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase}.office-foreground,.office-laptop-mark,.office-laptop-wave{display:none}.office-reaction-state{position:absolute;left:4%;bottom:6%;z-index:6;max-width:30ch;color:var(--muted);font:500 var(--text-caption)/1.45 "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase;transition:color var(--motion-state) ease,opacity var(--motion-state) ease,transform var(--motion-state) var(--ease-out-quint)}.office-scene[data-reaction=presenting][data-motion=full] .office-window-light{animation:office-light-breathe 4.8s ease-in-out infinite}.office-scene[data-reaction=listening] .office-presence{transform:translate(-4%) scale(1.025)}.office-scene[data-reaction=listening] .office-presence-halo{opacity:.96;transform:scale(1.06)}.office-scene[data-reaction=listening] .office-reaction-state{color:var(--signal)}.office-scene[data-reaction=listening] .office-presence-silhouette:after{opacity:.62;transform:translate(-4%)}.office-scene[data-reaction=listening] .office-presence-face{opacity:1;transform:translate(-3%)}.office-scene[data-reaction=listening] .office-presence-gesture{opacity:.78;transform:rotate(-12deg) translateY(-12%)}.office-scene[data-reaction=thinking] .office-window-light{opacity:.34}.office-scene[data-reaction=thinking] .office-presence{transform:translateY(2%) scale(.985)}.office-scene[data-reaction=thinking] .office-presence-silhouette{filter:brightness(.96) saturate(.9)}.office-scene[data-reaction=thinking] .office-presence-face{opacity:.64;transform:translateY(8%)}.office-scene[data-reaction=thinking] .office-presence-gesture{opacity:.84;transform:rotate(-48deg) translate(28%,-88%)}.office-scene[data-reaction=responding] .office-presence{transform:translate(-5%) scale(1.035)}.office-scene[data-reaction=responding] .office-task-light{opacity:.62}.office-scene[data-reaction=responding] .office-window-light{opacity:.82;transform:skew(-14deg) translate(3%)}.office-scene[data-reaction=responding] .office-presence-silhouette:after{opacity:.76;transform:translate(-8%)}.office-scene[data-reaction=responding] .office-presence-face{opacity:1;transform:translate(-5%)}.office-scene[data-reaction=responding] .office-presence-gesture{opacity:.94;transform:rotate(-19deg) translate(-9%,-18%)}.office-scene[data-reaction=responding] .office-practice-card,.office-scene[data-reaction=encouraging] .office-practice-card{color:var(--signal);box-shadow:7px 9px 18px #c9ff3d14}.office-scene[data-reaction=encouraging] .office-presence-halo{opacity:1;transform:scale(1.08)}.office-scene[data-reaction=encouraging] .office-window-light{opacity:.7}.office-scene[data-reaction=encouraging] .office-reaction-state{color:var(--success-text)}.office-scene[data-reaction=encouraging] .office-presence-silhouette{filter:brightness(1.14) saturate(1.08);box-shadow:inset 22px 0 34px #e8d4ad17,0 0 30px #c9ff3d1a}.office-scene[data-reaction=encouraging] .office-presence-silhouette:after{opacity:.88}.office-scene[data-reaction=encouraging] .office-presence-face{opacity:1;transform:translateY(-7%)}.office-scene[data-reaction=encouraging] .office-presence-gesture{opacity:1;transform:rotate(-30deg) translate(-14%,-18%)}.office-scene[data-reaction=clarifying] .office-reaction-state{color:var(--sand)}.office-scene[data-reaction=recovering] .office-presence{opacity:.7;transform:translateY(2%)}.office-scene[data-reaction=recovering] .office-presence-silhouette{filter:grayscale(.72) brightness(.74)}.office-scene[data-reaction=recovering] :is(.office-presence-face,.office-presence-gesture){opacity:.24}.office-scene[data-reaction=recovering] .office-reaction-state{color:var(--scene-recovery)}.office-scene[data-reaction]:not([data-reaction=presenting]) .office-reaction-state{animation:office-state-in var(--motion-state) var(--ease-out-quint)}.scene-fallback{margin-bottom:20px;padding:14px 16px;color:var(--sand);border:1px solid var(--functional-boundary);background:var(--forest-raised);font:500 11px/1.6 DM Mono,monospace;text-align:center;text-transform:uppercase}.conversation-surface{grid-area:conversation;min-height:0;display:grid;grid-template-columns:minmax(0,var(--conversation-max));align-content:start;justify-content:center;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-block:var(--space-xl) var(--space-3xl);padding:var(--space-2xl) clamp(var(--space-lg),3.2vw,var(--space-2xl)) var(--space-3xl);background:radial-gradient(circle at 16% 4%,rgba(232,212,173,.06),transparent 28%),linear-gradient(155deg,#142219eb,#070a08fc 52%)}.mission-heading{padding-bottom:var(--space-xl);border-bottom:1px solid var(--line)}.mission-label{display:inline-block;color:var(--sand);font:650 .8125rem/1.3 Novaroa Sans,sans-serif;letter-spacing:0}.mission-heading h1{max-width:12ch;margin:.875rem 0 .75rem;font:700 3.5rem/.94 Newsreader Variable,serif;font-kerning:normal;letter-spacing:-.035em;text-wrap:balance}.mission-objective{max-width:42ch;margin:0;color:var(--sand);font-size:1rem;line-height:1.6;text-wrap:pretty}.mission-loading{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xl);color:var(--muted);font:400 11px/1 DM Mono,monospace;text-transform:uppercase}.mission-loading span{width:12px;height:12px;background:var(--signal);animation:signal-pulse 1.2s steps(2) infinite}.system-message{margin-top:28px;padding:16px;border:1px solid var(--danger-boundary);background:#8e493f24}.system-message span{color:var(--danger-text);font:650 .875rem/1.2 Novaroa Sans,sans-serif}.system-message p{margin:8px 0 0;line-height:1.5}.system-message button{margin-top:var(--space-md);padding:11px 15px;color:var(--ink);border:1px solid var(--signal);background:var(--signal);font-weight:650;cursor:pointer}.system-message details{margin-top:var(--space-sm);color:var(--muted)}.system-message summary{width:max-content;min-height:44px;display:flex;align-items:center;cursor:pointer}.system-message details p{max-width:68ch;color:var(--muted);font:.75rem/1.55 DM Mono,monospace}.mission-pause{display:grid;justify-items:start;gap:var(--space-md);max-width:640px;margin-top:var(--space-xl);padding:var(--space-xl) 0}.mission-pause-kicker{margin:0;color:var(--signal);font:650 .875rem/1.3 Novaroa Sans,sans-serif}.mission-pause h2{max-width:18ch;margin:0;font:700 2.5rem/1.02 Newsreader Variable,serif;letter-spacing:-.035em;text-wrap:balance}.mission-pause h2:focus-visible{outline:2px solid var(--focus-ring);outline-offset:6px}.mission-pause>p:not(.mission-pause-kicker){max-width:52ch;margin:0;color:var(--sand);line-height:1.6}.mission-pause-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.mission-pause-actions button,.mission-restart-confirmation button{min-height:44px;padding:11px 15px;font-weight:650;cursor:pointer}.mission-pause-actions .primary-action,.mission-restart-confirmation button:last-child{color:var(--ink);border:1px solid var(--signal);background:var(--signal)}.mission-restart-trigger,.mission-restart-confirmation button:first-child{color:var(--paper);border:1px solid var(--functional-boundary);background:transparent}.mission-restart-confirmation{display:grid;gap:var(--space-md);max-width:54ch;padding:var(--space-md);border:1px solid var(--danger-boundary);background:#8e493f24;animation:disclosure-enter var(--motion-fast) var(--ease-out-quint) both}.mission-restart-confirmation p{margin:0;color:var(--paper);line-height:1.55}.mission-restart-confirmation>div{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.conversation-panel{min-height:100%}.conversation-flow{display:grid;gap:0;padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.mission-progress{margin-bottom:var(--space-xl)}.opening-exchange{margin-bottom:var(--space-lg)}.conversation-exchange{position:relative;display:grid;gap:18px;padding:24px 0 28px;scroll-margin-top:calc(64px + env(safe-area-inset-top) + var(--space-md));animation:exchange-enter var(--motion-state) var(--ease-out-quint) both}.conversation-exchange:focus-visible{outline:none}.conversation-exchange:focus-visible>.exchange-history-content>.npc-line{outline:2px solid var(--focus-ring);outline-offset:4px}.recap h2:focus-visible{outline:2px solid var(--focus-ring);outline-offset:6px}.conversation-exchange+.conversation-exchange{margin-top:12px;border-top:1px solid var(--line)}.conversation-exchange+.conversation-exchange:before{content:"";position:absolute;top:-1px;left:0;width:52px;height:2px;background:var(--signal)}.conversation-exchange[data-collapsed=true]{gap:0;padding:10px 0}.exchange-history-toggle{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:8px 0;color:var(--muted);text-align:left;border:0;background:transparent;cursor:pointer}.exchange-history-toggle span{font:500 .75rem/1.35 Novaroa Sans,sans-serif}.exchange-history-toggle strong{color:var(--sand);font:650 .75rem/1.35 Novaroa Sans,sans-serif}.exchange-history-toggle:hover strong,.exchange-history-toggle:focus-visible strong{color:var(--signal)}.exchange-history-toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.exchange-history-content{display:contents}.exchange-history-content[hidden]{display:none}.learner-turn{display:grid;gap:8px;justify-items:end;padding-left:clamp(28px,12%,96px);text-align:right}.exchange-sent{width:max-content;padding:3px 7px;color:var(--muted);border:1px solid var(--line);font:500 .75rem/1.2 Novaroa Sans,sans-serif}.learner-turn>span:not(.exchange-sent){color:var(--signal);font:600 .75rem/1.2 Novaroa Sans,sans-serif}.learner-turn p{margin:0;padding:12px 15px;color:var(--paper);border:1px solid color-mix(in srgb,var(--signal) 42%,transparent);background:#c9ff3d0f;font-size:14px;line-height:1.55}.progress-label{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:var(--space-xs);width:max-content;max-width:100%;margin-bottom:var(--space-xs);color:var(--muted);font:500 .75rem/1.35 Novaroa Sans,sans-serif}.progress-label strong{max-width:100%;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-xs);color:var(--paper);font-size:.875rem;text-align:left}.progress-label strong small{color:var(--muted);font-size:.75rem;font-weight:500}.progress-achievement{margin:8px 0 0;color:var(--progress-confirmed);font:500 .75rem/1.45 DM Mono,monospace;animation:status-confirm var(--motion-state) var(--ease-out-expo) both}.npc-line{display:grid;gap:16px;padding:19px 0 21px;border-bottom:1px solid var(--line)}.speaker-lockup{display:flex;align-items:center;gap:11px}.npc-avatar{display:grid;place-items:center;width:36px;height:36px;color:var(--ink);background:var(--sand);font:700 18px/1 Novaroa Sans,sans-serif}.speaker-lockup>span:last-child{display:grid;gap:4px}.speaker{color:var(--paper);font:650 .875rem/1.2 Novaroa Sans,sans-serif}.speaker-lockup small{color:var(--muted);font-size:.75rem}.npc-line blockquote{margin:0;color:var(--paper);font:500 clamp(22px,2vw,31px)/1.22 "Newsreader Variable",serif;letter-spacing:-.025em}.npc-audio-controls{display:flex;flex-wrap:wrap;gap:8px}.npc-audio-controls button{padding:8px 10px;color:var(--sand);border:1px solid var(--functional-boundary);background:transparent;font:600 .75rem/1 Novaroa Sans,sans-serif;cursor:pointer}.npc-audio-controls button:hover,.npc-audio-controls button:focus-visible{color:var(--ink);border-color:var(--signal);background:var(--signal)}.opening-audio-controls{display:grid;justify-items:start;gap:8px}.opening-audio-controls button{padding:9px 12px;color:var(--paper);border:1px solid var(--functional-boundary);background:transparent;font:600 .75rem/1 Novaroa Sans,sans-serif;cursor:pointer}.opening-audio-controls button:hover,.opening-audio-controls button:focus-visible{color:var(--paper);background:transparent;outline:2px solid var(--focus-ring);outline-offset:3px}.opening-audio-error{margin:0;color:var(--danger-text);font-size:12px;line-height:1.5}.opening-understanding{display:grid;justify-items:start;gap:var(--space-xs)}.opening-understanding-trigger{min-height:44px;padding:0;color:var(--sand);border:0;border-bottom:1px solid currentColor;background:transparent;font:650 var(--text-caption)/1.3 "Novaroa Sans",sans-serif;cursor:pointer}.opening-understanding-trigger:hover,.opening-understanding-trigger:focus-visible{color:var(--signal)}.opening-understanding-content{width:100%;display:grid;gap:var(--space-sm);padding:14px 16px;color:var(--muted);border:1px solid var(--functional-boundary);background:#e8d4ad09;font-size:var(--text-meta);line-height:1.55;animation:disclosure-enter var(--motion-fast) var(--ease-out-quint) both}.opening-understanding-content p,.opening-understanding-content dl,.opening-understanding-content dd{margin:0}.opening-understanding-content p{color:var(--paper)}.opening-understanding-content dl{display:grid;gap:var(--space-sm)}.opening-understanding-content dl div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--line)}.opening-understanding-content dt{color:var(--sand);font-weight:650}.section-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.section-label h2{margin:0;font:650 var(--text-meta)/1.2 "Novaroa Sans",sans-serif;letter-spacing:0}.section-label span{color:var(--muted);font:500 var(--text-caption)/1.2 "Novaroa Sans",sans-serif}.hint-block ul,.recap ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.hint-block button{width:100%;display:flex;align-items:center;gap:9px;padding:11px 13px;color:var(--sand);text-align:left;border:1px solid var(--functional-boundary);border-radius:0;background:transparent;cursor:pointer;transition:color var(--motion-fast) var(--ease-out-quint),border-color var(--motion-fast) var(--ease-out-quint),background-color var(--motion-fast) var(--ease-out-quint),transform var(--motion-fast) var(--ease-out-quint)}.hint-block button span{color:var(--signal);font-size:20px;line-height:0}.hint-block button:hover,.hint-block button:focus-visible{color:var(--paper);border-color:var(--signal);background:var(--interactive-surface);transform:translate(3px)}.recorder-row{display:grid;justify-items:center;gap:12px;padding:4px 0}.record{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:min(100%,280px);padding:17px 24px;color:var(--ink);border:1px solid var(--signal);border-radius:0;background:var(--signal);box-shadow:0 4px 8px #6f93202e;font:700 14px/1 Novaroa Sans,sans-serif;cursor:pointer;transition:transform var(--motion-fast) var(--ease-out-quint),box-shadow var(--motion-fast) ease}.record:hover{transform:translateY(-1px);box-shadow:0 5px 8px #6f93203d}.record:active{transform:translateY(1px);box-shadow:0 3px 6px #6f932029}.record.active{color:var(--paper);border-color:var(--danger-border);background:var(--danger-surface);box-shadow:0 8px 24px #4b171347;animation:record-pulse 1.2s steps(2) infinite}.mic-symbol{position:relative;width:13px;height:18px;border:2px solid currentColor;border-radius:8px}.mic-symbol:after{content:"";position:absolute;left:50%;bottom:-7px;width:17px;height:8px;border:2px solid currentColor;border-top:0;transform:translate(-50%)}.recording-status{color:var(--muted);font:400 var(--text-caption)/1.2 "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase}.transcript-field{display:grid;gap:9px;color:var(--sand);font:500 var(--text-caption)/1.2 "DM Mono",monospace;letter-spacing:.04em;text-transform:uppercase}.transcript-field small{margin-left:6px;color:var(--muted);font-weight:400;text-transform:none}.transcript-field textarea{width:100%;min-height:78px;resize:vertical;padding:13px 14px;color:var(--paper);border:1px solid var(--functional-boundary);border-radius:0;background:#0d1811d6;font-size:1rem;line-height:1.5;text-transform:none;transition:border-color .16s ease}.transcript-field textarea:focus{border-color:var(--signal)}textarea::placeholder{color:var(--muted);opacity:1}.coach-feedback{padding:12px 14px;border:1px solid var(--functional-boundary);background:#e8d4ad0a}.coach-feedback .coach-summary{margin:0;color:var(--sand);font:600 .875rem/1.5 Novaroa Sans,sans-serif}.coach-feedback>button{min-height:44px;margin-top:2px;padding:0;color:var(--muted);border:0;border-bottom:1px solid currentColor;background:transparent;font:600 .75rem/1.4 Novaroa Sans,sans-serif;cursor:pointer}.coach-feedback>button:hover{color:var(--signal)}.coach-feedback>button:focus-visible{color:var(--signal);outline:2px solid var(--focus-ring);outline-offset:4px}.coach-details{display:grid;gap:10px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line);animation:disclosure-enter var(--motion-fast) var(--ease-out-quint) both}.coach-details p{margin:0;color:var(--paper)}.coach-details strong{color:var(--sand);font-weight:600}.coach-details ul{display:grid;gap:7px;margin:0;padding-left:18px;color:var(--muted);font-size:12px;line-height:1.5}.inline-error{margin:0;color:var(--danger-text);font-size:12px;line-height:1.5}.send-turn{width:100%;padding:13px 16px;color:var(--paper);border:1px solid var(--sand);border-radius:0;background:transparent;font:650 .875rem/1 Novaroa Sans,sans-serif;cursor:pointer;transition:.16s ease}.send-turn:hover:not(:disabled){color:var(--ink);background:var(--sand)}.send-turn:disabled{color:var(--disabled-text);border-color:#9eaa9f33;cursor:not-allowed}.text-action{padding:0;color:var(--sand);border:0;border-bottom:1px solid currentColor;background:transparent;font:500 var(--text-caption)/1.5 "DM Mono",monospace;text-transform:uppercase;cursor:pointer}.text-action:hover,.text-action:focus-visible{color:var(--signal)}.typing-fallback{justify-self:center}.voice-composer{position:sticky;z-index:4;bottom:-1px;display:grid;gap:var(--space-sm);margin-top:var(--space-xl);padding:var(--space-md);border:1px solid var(--functional-boundary);background:var(--forest-raised)}.voice-composer[data-tone=active]{border-color:var(--signal);outline:1px solid var(--signal);outline-offset:-2px}.voice-composer[data-tone=success]{border-color:var(--progress-confirmed);outline:3px double var(--progress-confirmed);outline-offset:-3px;background:var(--success-surface)}.voice-composer[data-tone=error]{border-color:var(--danger-border);outline:2px dashed var(--danger-border);outline-offset:-2px}.voice-composer.voice-composer--recording{border-color:var(--danger-border);outline:2px solid var(--danger-border);outline-offset:-2px;animation:record-pulse 1.2s steps(2) infinite}.voice-composer-restored{margin:0;padding-bottom:var(--space-sm);color:var(--success-text);border-bottom:1px solid var(--line);font-size:.8125rem;font-weight:650;line-height:1.4}.voice-composer-state{display:grid;gap:6px}.voice-composer-status{margin:0;color:var(--muted);font:650 .75rem/1.2 Novaroa Sans,sans-serif}.voice-composer-guidance{margin:0;color:var(--sand);font-size:.875rem;line-height:1.55}.voice-composer--transcribing .voice-composer-guidance,.voice-composer--submitting .voice-composer-guidance{color:var(--paper)}.voice-composer-idle,.voice-composer-review,.voice-composer-error,.voice-composer-requesting,.voice-composer-transcribing{display:grid;gap:14px}.voice-composer-requesting,.voice-composer-recording,.voice-composer-transcribing,.voice-composer-review,.voice-composer-error{animation:composer-state-enter var(--motion-fast) var(--ease-out-quint) both}.voice-composer-context{display:grid;gap:var(--space-2xs);margin:0;padding:var(--space-sm);color:var(--paper);border:1px solid var(--line);background:#070a0842;font-size:.875rem;line-height:1.45}.voice-composer-context span{color:var(--muted);font-size:.75rem;font-weight:650}.voice-composer-context strong{font-weight:600;text-wrap:pretty}.voice-composer-hints{display:grid;gap:8px}.voice-composer-hints button{padding:10px 12px;color:var(--sand);text-align:left;border:1px solid var(--functional-boundary);background:transparent;cursor:pointer}.voice-composer-hints button[aria-pressed=true]{border-color:var(--progress-confirmed);background:var(--selection-surface)}.voice-composer-hints .voice-composer-more-hints{min-height:44px;padding:0;color:var(--muted);border:0;border-bottom:1px solid currentColor;justify-self:start}.voice-composer-hints .voice-composer-more-hints:hover,.voice-composer-hints .voice-composer-more-hints:focus-visible{color:var(--signal)}.voice-composer-additional-hints{display:grid;gap:8px}.voice-composer-speaking-reference{margin:8px 0 0;color:var(--muted);font-size:.875rem}.voice-composer-typing-hints{padding-top:2px}.voice-composer-use-hint{display:grid;gap:4px}.voice-composer-use-hint span{color:var(--paper);font-weight:650}.voice-composer-use-hint small{color:var(--muted);font:400 .75rem/1.45 Novaroa Sans,sans-serif}.voice-composer-origin{width:max-content;margin:0;color:var(--signal);font:500 .75rem/1.35 Novaroa Sans,sans-serif}.voice-composer-draft{display:grid;gap:8px;color:var(--muted);font:600 .8125rem/1.35 Novaroa Sans,sans-serif}.voice-composer-draft textarea{width:100%;min-height:78px;resize:vertical;padding:12px;color:var(--paper);border:1px solid var(--functional-boundary);background:var(--forest);font:400 1rem/1.5 Novaroa Sans,sans-serif;text-transform:none}.voice-composer-recording{display:flex;align-items:center;justify-content:space-between;gap:14px}.voice-composer-recording time{color:var(--paper);font:500 18px/1 DM Mono,monospace}.voice-composer-error-message{margin:0;color:var(--paper);line-height:1.5}.voice-composer-preserved-draft{display:grid;gap:6px;padding:12px;border:1px solid var(--functional-boundary);background:#e8d4ad12}.voice-composer-preserved-draft p{margin:0}.voice-composer-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:8px}.voice-composer-actions--single{grid-template-columns:1fr}.voice-composer-actions button,.voice-composer-recording button{padding:12px 14px;color:var(--paper);border:1px solid var(--functional-boundary);background:transparent;font-weight:600;cursor:pointer}.voice-composer-actions button:last-child,.voice-composer-recording button{color:var(--ink);border-color:var(--signal);background:var(--signal)}.voice-composer-actions--single button:last-child{color:var(--paper);border-color:var(--functional-boundary);background:transparent}.voice-composer button:disabled{color:var(--muted);border-color:var(--functional-boundary);background:var(--forest);cursor:not-allowed}.voice-composer button:focus-visible,.voice-composer textarea:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.conversation-panel[data-first-exchange=true] .voice-composer{position:static}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.first-exchange-orientation{display:grid;gap:var(--space-sm);padding:var(--space-lg) 0 0;border-top:1px solid var(--line)}.first-exchange-orientation>p{max-width:54ch;margin:0;color:var(--sand);line-height:1.6}.first-exchange-orientation>.primary-action{width:100%;min-height:52px;margin-top:var(--space-xs);padding:14px 18px;border:1px solid var(--signal);font-weight:700;cursor:pointer;box-shadow:0 4px 8px #6f932029}.first-exchange-reference{padding:var(--space-sm) var(--space-md);color:var(--paper)!important;border:1px solid var(--functional-boundary);background:#c9ff3d0d}.first-exchange-reference strong{font-weight:650}.first-exchange-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xs)}.first-exchange-secondary-actions button{width:100%;min-height:44px;padding:10px 12px;color:var(--sand);border:1px solid var(--functional-boundary);background:transparent;font-size:.8125rem;font-weight:650;cursor:pointer}.first-exchange-secondary-actions button:hover,.first-exchange-secondary-actions button:focus-visible{color:var(--paper);border-color:var(--sand);background:var(--interactive-surface)}.orientation-details-trigger[aria-expanded=true]{color:var(--paper);border-color:var(--progress-confirmed);background:var(--selection-surface)}.orientation-details{display:grid;gap:var(--space-sm);padding:14px 16px;color:var(--muted);border:1px solid var(--functional-boundary);background:#e8d4ad09;font-size:var(--text-meta);line-height:1.6;animation:disclosure-enter var(--motion-fast) var(--ease-out-quint) both}.orientation-details p{margin:0}.orientation-hints{display:grid;gap:var(--space-xs)}.orientation-hints button{min-height:44px;padding:10px 12px;color:var(--sand);text-align:left;border:1px solid var(--functional-boundary);background:transparent;cursor:pointer}.orientation-hints button[aria-pressed=true]{color:var(--paper);border-color:var(--progress-confirmed);background:var(--selection-surface)}.first-exchange-privacy{margin:0;color:var(--muted);font-size:.75rem;line-height:1.5}.primary-action{color:var(--ink);background:var(--signal);font-weight:700}.first-exchange-success{margin:0 0 var(--space-xs);padding:9px 0;color:var(--success-text);border-bottom:1px solid var(--line);font:500 .75rem/1.5 Novaroa Sans,sans-serif;animation:status-confirm var(--motion-state) var(--ease-out-expo) both}.access-denied{min-height:100dvh;display:grid;align-items:center;padding-top:max(clamp(28px,8vw,120px),env(safe-area-inset-top));padding-right:max(clamp(28px,8vw,120px),env(safe-area-inset-right));padding-bottom:max(clamp(28px,8vw,120px),env(safe-area-inset-bottom));padding-left:max(clamp(28px,8vw,120px),env(safe-area-inset-left));background:radial-gradient(circle at 24% 28%,rgba(201,255,61,.1),transparent 34%),var(--ink)}.access-denied-content{width:min(100%,680px);display:grid;justify-items:start;gap:var(--space-md)}.access-denied .brand{margin-bottom:var(--space-2xl)}.access-status{margin:0;color:var(--signal);font:650 .875rem/1.4 Novaroa Sans,sans-serif}.access-denied h1{max-width:11ch;margin:0;font:700 clamp(3rem,7vw,5.25rem)/.98 "Newsreader Variable",serif;letter-spacing:-.035em;text-wrap:balance}.access-denied-content>p:not(.access-status,.access-support,.access-recovery-instruction){max-width:46ch;margin:0;color:var(--sand);font-size:1rem;line-height:1.65}.access-recovery-instruction{max-width:54ch;margin:var(--space-xs) 0 0;color:var(--paper);font-size:.9375rem;line-height:1.55}.access-recovery{margin-top:var(--space-sm);padding:13px 17px;color:var(--ink);border:1px solid var(--signal);background:var(--signal);font-weight:700;cursor:pointer}.access-recovery-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.access-recovery-secondary{margin-top:var(--space-sm);padding:13px 17px;color:var(--paper);border:1px solid var(--functional-boundary);background:transparent;font-weight:650;cursor:pointer}.access-recovery-secondary:hover{border-color:var(--sand)}.access-support{max-width:54ch;margin:var(--space-xs) 0 0;color:var(--muted);font-size:.875rem;line-height:1.6}.recap{margin-top:var(--space-2xl);padding:var(--space-lg);color:var(--ink);background:var(--sand);box-shadow:0 14px 34px #0000003d;animation:recap-reveal var(--motion-emphasis) var(--ease-out-expo) both}.conversation-checkpoint{display:grid;justify-items:start;gap:var(--space-sm);margin-top:var(--space-xl);padding:var(--space-lg);border:1px solid var(--progress-confirmed);background:var(--success-surface);animation:recap-reveal var(--motion-emphasis) var(--ease-out-expo) both}.conversation-checkpoint h2{margin:0;color:var(--paper);font:700 2rem/1 Newsreader Variable,serif;letter-spacing:-.03em}.conversation-checkpoint p{max-width:56ch;margin:0;color:var(--sand);line-height:1.6}.conversation-checkpoint .recap-kicker{color:var(--success-text)}.recap-kicker{margin:0 0 var(--space-xs);color:var(--recap-muted);font:650 .875rem/1.4 Novaroa Sans,sans-serif}.recap h2{margin:0 0 5px;font:700 34px/.98 Newsreader Variable,serif;letter-spacing:-.035em}.recap-state{margin-top:0;color:var(--recap-muted);font:650 .75rem/1.2 Novaroa Sans,sans-serif}.recap p{font-size:.875rem;line-height:1.6}.recap h3{margin:19px 0 9px;font:650 .875rem/1.2 Novaroa Sans,sans-serif}.recap li{padding:8px 0;border-top:1px solid var(--recap-divider);font-size:.875rem}.recap-transfer{display:grid;justify-items:start;gap:var(--space-xs);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--recap-divider)}.recap-transfer button{min-height:44px;padding:11px 14px;color:var(--paper);border:1px solid var(--ink);background:var(--ink);font-weight:700;cursor:pointer}.recap-transfer p{min-height:1.5em;margin:0;color:var(--recap-muted);font-size:.75rem}.mission-feedback{display:grid;gap:var(--space-sm);margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--line)}.mission-feedback h3{margin:0;font:650 1rem/1.35 Novaroa Sans,sans-serif}.feedback-intro{max-width:52ch;margin:0;color:var(--muted);font-size:.875rem;line-height:1.55}.feedback-disclosure{justify-self:start;padding:0 0 3px;color:var(--sand);border:0;border-bottom:1px solid currentColor;background:transparent;font-weight:650;cursor:pointer}.feedback-disclosure:hover,.feedback-disclosure:focus-visible{color:var(--signal)}.feedback-form{display:grid;gap:var(--space-sm);margin-top:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--line)}.feedback-form>p{margin:0;color:var(--paper);line-height:1.55}.feedback-choice{display:flex;gap:8px}.feedback-choice button{padding:9px 16px;color:var(--sand);border:1px solid var(--functional-boundary);background:transparent;cursor:pointer}.feedback-choice button[aria-pressed=true]{color:var(--paper);border-color:var(--progress-confirmed);background:var(--selection-surface)}.mission-feedback label{display:grid;gap:8px;color:var(--muted);font:600 .8125rem/1.3 Novaroa Sans,sans-serif}.mission-feedback textarea{resize:vertical;padding:12px;color:var(--paper);border:1px solid var(--functional-boundary);background:var(--forest);font:400 1rem/1.5 Novaroa Sans,sans-serif;text-transform:none}.feedback-thanks{color:var(--success-text);font:650 .875rem/1.5 Novaroa Sans,sans-serif}.voice-composer-draft-label{display:flex;justify-content:space-between;gap:var(--space-sm)}.voice-composer-draft-label small{color:var(--muted);font-weight:400}@keyframes signal-pulse{50%{opacity:.35}}@keyframes record-pulse{50%{filter:brightness(1.25)}}@keyframes office-light-breathe{50%{opacity:.72;transform:skew(-14deg) translate(2%)}}@keyframes office-state-in{0%{opacity:.25;transform:translateY(4px)}}@keyframes office-wave-listen{50%{transform:scaleY(1.55);opacity:1}}@keyframes office-wave-respond{50%{transform:scaleY(.58);opacity:.68}}@keyframes exchange-enter{0%{opacity:0;transform:translateY(8px)}}@keyframes status-confirm{0%{opacity:.35;transform:scale(.985)}}@keyframes disclosure-enter{0%{opacity:0;transform:translateY(-4px)}}@keyframes recap-reveal{0%{opacity:0;transform:translateY(10px)}}@keyframes composer-state-enter{0%{opacity:.4;transform:translateY(4px)}}@media(min-width:885px)and (max-height:900px){.conversation-surface{padding-top:var(--space-lg);padding-bottom:var(--space-2xl)}.mission-heading{padding-bottom:var(--space-lg)}.mission-heading h1{margin-top:var(--space-sm);margin-bottom:var(--space-xs);font-size:3rem}.conversation-flow{padding-top:var(--space-lg)}.mission-progress{margin-bottom:var(--space-md)}.opening-exchange{margin-bottom:var(--space-sm)}.npc-line{gap:var(--space-sm);padding:14px 0 16px}.first-exchange-orientation{gap:var(--space-xs);padding-top:var(--space-md)}.first-exchange-orientation>p{line-height:1.45}.first-exchange-orientation>.primary-action{min-height:48px;margin-top:0;padding-block:12px}}@media(max-width:1040px){.brand-promise{display:none}.brand-bar{grid-template-columns:1fr auto}}@media(max-width:884px){.app-shell{height:auto;min-height:100dvh;grid-template-areas:"brand" "scene" "conversation";grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;align-content:start;overflow:visible}.brand-bar{position:sticky;top:0;height:calc(64px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-right:max(18px,env(safe-area-inset-right));padding-left:max(18px,env(safe-area-inset-left))}.game-stage{min-height:0;height:clamp(172px,23dvh,210px);border-right:0;border-bottom:1px solid var(--line)}.game-stage[data-compact=true]{height:132px}.office-scene{background:#08100c}.office-scene:after{background:radial-gradient(ellipse at 58% 42%,transparent 12%,rgba(7,10,8,.18) 54%,rgba(7,10,8,.72) 100%),linear-gradient(180deg,rgba(7,10,8,.08),transparent 44%,rgba(7,10,8,.56))}.office-scene-label{top:16px;right:18px;left:auto;font-size:.6875rem}.office-window{background:radial-gradient(circle at 51% 20%,rgba(232,212,173,.13),transparent 31%),linear-gradient(154deg,#07100c 4%,#16251c 58%,#09110d)}.office-window-light{top:-34%;left:24%;width:48%;height:154%;opacity:.62;transform:skew(-12deg)}.office-window-horizon{right:3%;bottom:33%;width:76%}.office-window-column{right:19%;height:67%}.office-window-city{right:4%;bottom:33%;width:63%;height:23%;opacity:.36}.office-atmosphere{background:radial-gradient(ellipse at 54% 64%,rgba(169,201,143,.11),transparent 30%),linear-gradient(90deg,rgba(7,10,8,.48),transparent 42%)}.office-presence{right:50%;bottom:11%;width:112px;transform:translate(50%)}.office-presence-halo{top:-4%;right:-34%;bottom:-2%;left:-34%;opacity:.78}.office-presence-chair{left:-2%;right:-2%;bottom:-9%;height:49%}.office-presence-silhouette{top:16%;right:16%;bottom:0;left:16%}.office-presence-name{display:none}.office-workspace{right:-7%;bottom:-14%;width:114%;height:52%;transform:perspective(480px) rotateX(60deg)}.office-workspace-plane{background:linear-gradient(90deg,#342c22,#806e54 48%,#352d23);box-shadow:0 -1px #e8d4ad57,0 18px 32px #00000070}.office-task-light{right:13%;bottom:54%;height:86%}.office-notebook{left:16%;top:24%;width:18%;height:40%}.office-practice-card{top:27%;left:37%;width:14%;height:32%}.office-coffee{right:16%;top:22%;width:5%}.office-foreground{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:block;pointer-events:none}.office-foreground-desk{position:absolute;right:-5%;bottom:-28%;left:-5%;height:43%;background:linear-gradient(180deg,#7f6c5280,#302920 74%);transform:perspective(360px) rotateX(66deg);transform-origin:bottom;box-shadow:0 -1px #e8d4ad33}.office-laptop-screen{position:absolute;bottom:2px;left:50%;width:86px;height:46px;display:grid;grid-template-columns:22px 1fr;align-items:center;gap:8px;padding:7px 9px;border:3px solid #526157;border-bottom-width:5px;background:linear-gradient(145deg,#182a1f,#0a120e);transform:translate(-50%) perspective(260px) rotateX(-4deg);box-shadow:0 5px 10px #00000061}.office-laptop-mark{display:grid;place-items:center;width:18px;height:18px;color:var(--ink);background:var(--signal);font:700 10px/1 Novaroa Sans,sans-serif;box-shadow:0 0 12px #c9ff3d24}.office-laptop-wave{height:18px;display:flex;align-items:center;justify-content:center;gap:3px;color:var(--signal);opacity:.62;transition:opacity var(--motion-state) ease}.office-laptop-wave-bar{width:2px;height:35%;background:currentColor;transform-origin:center}.office-laptop-wave-bar:nth-child(2){height:72%}.office-laptop-wave-bar:nth-child(3){height:52%}.office-laptop-wave-bar:nth-child(4){height:84%}.office-scene[data-reaction=thinking] .office-laptop-wave,.office-scene[data-reaction=recovering] .office-laptop-wave{opacity:.24}.office-scene[data-reaction=encouraging] .office-laptop-wave{opacity:1}.office-scene[data-reaction=listening][data-motion=full] .office-laptop-wave-bar{animation:office-wave-listen .76s ease-in-out infinite alternate}.office-scene[data-reaction=responding][data-motion=full] .office-laptop-wave-bar{animation:office-wave-respond .62s ease-in-out infinite alternate}.office-scene[data-reaction=listening] .office-laptop-wave-bar:nth-child(2),.office-scene[data-reaction=responding] .office-laptop-wave-bar:nth-child(3){animation-delay:-.24s}.office-scene[data-reaction=listening] .office-laptop-wave-bar:nth-child(4),.office-scene[data-reaction=responding] .office-laptop-wave-bar:nth-child(1){animation-delay:-.41s}.office-laptop-base{position:absolute;bottom:-5px;left:50%;width:104px;height:8px;background:#526157;clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);transform:translate(-50%)}.office-reaction-state{top:14px;bottom:auto;left:max(16px,env(safe-area-inset-left));display:inline-flex;align-items:center;gap:8px;max-width:26ch;min-height:40px;padding:8px 11px;color:var(--paper);border:1px solid rgba(232,212,173,.18);background:#070a08b8;font-family:Novaroa Sans,sans-serif;font-size:.875rem;font-weight:600;line-height:1.3;letter-spacing:0;text-transform:none}.office-reaction-state:before{content:"";flex:0 0 auto;width:6px;height:6px;background:currentColor;box-shadow:0 0 0 3px #e8d4ad14}.game-stage[data-compact=true] .office-presence{bottom:7%;width:92px}.game-stage[data-compact=true] .office-workspace{bottom:-17%;height:48%}.game-stage[data-compact=true] .office-window-city{opacity:.24}.game-stage[data-compact=true] .office-laptop-screen{bottom:-2px;width:70px;height:36px}.game-stage[data-compact=true] .office-laptop-base{bottom:-6px;width:86px}.office-scene[data-reaction=listening] .office-presence{transform:translate(50%) translateY(-2%) scale(1.035)}.office-scene[data-reaction=thinking] .office-presence{transform:translate(50%) translateY(2%) scale(.98)}.office-scene[data-reaction=responding] .office-presence{transform:translate(50%) translateY(-1%) scale(1.025)}.office-scene[data-reaction=encouraging] .office-presence{transform:translate(50%) translateY(-2%) scale(1.04)}.office-scene[data-reaction=recovering] .office-presence{transform:translate(50%) translateY(3%)}.conversation-surface{grid-template-columns:minmax(0,1fr);overflow:visible;padding:var(--space-md) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-2xl),calc(var(--space-xl) + env(safe-area-inset-bottom))) max(var(--space-lg),env(safe-area-inset-left))}.mission-heading{padding-bottom:var(--space-lg)}.mission-heading h1{font-size:2.5rem}.conversation-flow{padding-top:var(--space-lg)}.voice-composer{position:static}.mission-pause{margin-top:var(--space-lg)}}@media(max-width:480px){.brand-bar{height:calc(56px + env(safe-area-inset-top))}.brand-name{font-size:21px}.mission-index{display:none}.mission-controls{gap:var(--space-sm)}.mission-exit{font-size:.75rem}.game-stage{height:clamp(132px,18dvh,156px)}.game-stage[data-compact=true]{height:108px}.office-presence{bottom:8%;width:96px}.office-reaction-state{top:12px;max-width:26ch}.office-workspace{bottom:-13%;height:45%}.conversation-surface{padding-top:10px;padding-right:max(var(--space-md),env(safe-area-inset-right));padding-left:max(var(--space-md),env(safe-area-inset-left))}.mission-heading{padding-bottom:10px}.mission-heading h1{margin:6px 0 4px;font-size:2rem;line-height:.98}.mission-objective{line-height:1.4}.conversation-flow{padding-top:10px}.mission-progress{margin-bottom:10px}.progress-label{margin-bottom:6px}.opening-exchange{margin-bottom:8px}.opening-exchange{position:relative}.npc-line{gap:8px;padding:8px 0 10px}.npc-line blockquote{font-size:1.2rem;line-height:1.18}.opening-exchange .speaker-lockup small{display:none}.opening-audio-controls{gap:4px}.opening-audio-controls button{min-height:44px}.opening-audio-controls:not(:has(.opening-audio-error)){position:absolute;top:8px;right:0}.opening-understanding-content dl div{grid-template-columns:1fr;gap:4px}.first-exchange-orientation{gap:6px;padding-top:8px}.first-exchange-orientation>p{line-height:1.35}.first-exchange-orientation>.primary-action{min-height:48px;margin-top:0;padding:12px 16px}.first-exchange-secondary-actions{gap:6px}.first-exchange-secondary-actions button{padding-inline:8px;font-size:.8125rem}.office-scene-label,.mission-label,.conversation-panel[data-first-exchange=false] .opening-exchange{display:none}.conversation-panel[data-first-exchange=false] .conversation-exchange:last-of-type{padding-bottom:16px}.section-label{align-items:flex-start;flex-direction:column;gap:5px}.mission-index strong,.speaker,.speaker-lockup small,.voice-composer-status,.progress-label,.progress-label strong,.section-label span,.recording-status,.voice-composer-origin,.voice-composer-draft,.mission-feedback label,.voice-composer-guidance,.opening-audio-error,.inline-error,.coach-feedback p,.coach-details ul,.orientation-details,.first-exchange-review-note,.first-exchange-privacy,.recap p,.recap li{font-size:.875rem}.record{width:100%}.voice-composer-actions{grid-template-columns:1fr}.voice-composer-review .voice-composer-actions{position:static;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);margin:0;padding:var(--space-xs) 0 max(var(--space-xs),env(safe-area-inset-bottom));border-top:1px solid var(--line);background:transparent}.voice-composer-review .voice-composer-actions--single{grid-template-columns:1fr}.voice-composer-draft textarea{min-height:112px;scroll-margin-block:96px}.mission-pause h2{font-size:2rem}.mission-pause-actions{width:100%;display:grid;grid-template-columns:1fr}.mission-pause-actions button{width:100%}}@media(max-width:480px)and (max-height:700px){.brand-bar{height:calc(56px + env(safe-area-inset-top))}.game-stage{height:132px}.game-stage[data-compact=true]{height:104px}.office-scene-label{top:9px}.office-presence{bottom:7%;width:90px}.office-reaction-state{top:10px}.conversation-surface{padding-top:var(--space-sm);padding-bottom:max(var(--space-lg),calc(var(--space-md) + env(safe-area-inset-bottom)))}.mission-heading{padding-bottom:var(--space-sm)}.mission-heading h1{margin:var(--space-xs) 0 var(--space-2xs);font-size:2rem;line-height:.98}.mission-objective{line-height:1.45}.conversation-flow{padding-top:var(--space-sm);padding-bottom:var(--space-lg)}.mission-progress{margin-bottom:var(--space-md)}.progress-label{margin-bottom:6px}.opening-exchange{margin-bottom:var(--space-sm)}.npc-line{gap:10px;padding:10px 0 12px}.npc-line blockquote{font-size:1.25rem}.first-exchange-orientation{gap:var(--space-xs);padding-top:var(--space-sm)}.first-exchange-orientation>p{line-height:1.45}.first-exchange-orientation>.primary-action{margin-top:0}}@media(min-width:481px)and (max-width:900px)and (max-height:480px){.game-stage{height:124px}.game-stage[data-compact=true]{height:104px}.office-presence{bottom:4%;width:84px}.office-workspace{bottom:-20%;height:58%}.office-laptop-screen{bottom:-2px;width:72px;height:36px}.office-laptop-base{bottom:-6px;width:88px}.office-scene-label,.mission-label{display:none}.mission-index strong,.speaker,.speaker-lockup small,.voice-composer-status,.progress-label,.progress-label strong,.section-label span,.recording-status,.voice-composer-origin,.voice-composer-draft,.mission-feedback label,.voice-composer-guidance,.opening-audio-error,.inline-error,.coach-feedback p,.coach-details ul,.orientation-details,.first-exchange-review-note,.first-exchange-privacy,.recap p,.recap li{font-size:.875rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.mission-loading span,.record.active,.voice-composer--recording{animation:none}.office-window-light,.office-presence,.office-presence-halo,.office-presence-face,.office-presence-gesture,.office-practice-card,.office-laptop-wave,.office-laptop-wave-bar,.office-reaction-state{animation:none!important;transition:none}.conversation-exchange,.progress-achievement,.coach-details,.orientation-details,.first-exchange-success,.voice-composer-requesting,.voice-composer-recording,.voice-composer-transcribing,.voice-composer-review,.voice-composer-error,.recap{animation:none}}@media(forced-colors:active){:where(a,button,textarea){border-color:ButtonText;forced-color-adjust:auto}:where(a,button,textarea):focus-visible{outline-color:Highlight}[aria-pressed=true]{color:HighlightText;background:Highlight;border-color:Highlight}.voice-composer[data-tone=error],.error-message,.inline-error{border-color:Mark;color:Mark}.voice-composer--recording,.record.active{border-color:Highlight}:where(.voice-composer[data-tone=success],.first-exchange-success,.feedback-thanks){color:CanvasText;border-color:CanvasText;background:Canvas}:where(.scene-fallback,.voice-composer,textarea){background:Canvas;color:CanvasText}}
