:root{color:#172326;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#edf2f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline-offset:2px;outline:3px solid #315f9f59}:root{--ink:#172326;--ink-soft:#2d3a3f;--muted:#5b676d;--muted-soft:#7a868b;--paper:#fbfaf5;--canvas:#f1ece1;--surface:#fff;--surface-soft:#faf6ec;--primary:#1d7f75;--primary-soft:#e3f3ee;--primary-deep:#155f57;--accent:#bf4d34;--accent-soft:#fde8df;--warn:#8c6d1f;--warn-soft:#fff4cf;--info:#315f9f;--info-soft:#e6edfb;--line:#1f2a2e17;--line-strong:#1f2a2e29;--shadow-sm:0 4px 12px #1f2a2e0f;--shadow-md:0 14px 30px #1f2a2e17;--shadow-lg:0 28px 60px #1f2a2e29;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:28px}.app-shell{background:radial-gradient(1100px 600px at 18% -10%,#1d7f752e,#0000 60%),radial-gradient(900px 600px at 110% 30%,#bf4d3424,#0000 65%),radial-gradient(700px 500px at 50% 120%,#315f9f29,#0000 70%),linear-gradient(#f4ede0 0%,#e7dcca 60%,#d6c9b3 100%);place-items:center;min-height:100svh;padding:28px 24px;display:grid;position:relative;overflow:hidden}.ambient-glow{pointer-events:none;filter:blur(12px);z-index:0;background:radial-gradient(420px 280px at 22% 18%,#ffffff8c,#0000 70%),radial-gradient(360px 240px at 78% 82%,#ffffff59,#0000 70%);position:absolute;inset:-10%}.phone{z-index:1;border-radius:var(--radius-xl);width:min(100%,430px);min-height:min(900px,100svh - 56px);box-shadow:var(--shadow-lg), inset 0 1px 0 #ffffffb3;background:linear-gradient(#fbfaf5 0%,#f5efe1 100%);border:1px solid #1f2a2e24;position:relative;overflow:hidden}.status-bar{height:36px;color:var(--ink);letter-spacing:.02em;justify-content:space-between;align-items:end;padding:0 26px 6px;font-size:13px;font-weight:750;display:flex}.status-time{font-variant-numeric:tabular-nums}.status-cluster{align-items:end;gap:6px;display:flex}.status-signal{align-items:end;gap:1.5px;height:11px;display:inline-flex}.status-signal i{background:var(--ink);border-radius:1px;width:3px}.status-signal i:first-child{height:4px}.status-signal i:nth-child(2){height:6px}.status-signal i:nth-child(3){height:8px}.status-signal i:nth-child(4){height:10px}.status-wifi{background:radial-gradient(circle at 50% 100%, var(--ink) 0 1.6px, transparent 1.8px), radial-gradient(circle at 50% 100%, transparent 3.2px, var(--ink) 3.4px 4.6px, transparent 4.8px), radial-gradient(circle at 50% 100%, transparent 6.2px, var(--ink) 6.4px 7.6px, transparent 7.8px);background-repeat:no-repeat;width:14px;height:11px}.status-battery{border:1.2px solid var(--ink);border-radius:3px;width:24px;height:11px;padding:1px;position:relative}.status-battery:after{content:"";background:var(--ink);border-radius:1px;width:2px;height:5px;position:absolute;top:3px;right:-3px}.status-battery-fill{background:var(--ink);border-radius:1.4px;width:78%;height:100%;display:block}.app-header{justify-content:space-between;align-items:center;padding:16px 22px 8px;display:flex}.brand-lockup{align-items:center;gap:12px;min-width:0;display:flex}.app-icon{border-radius:12px;width:46px;height:46px;box-shadow:0 8px 18px #1723262e}.brand-subtitle{color:var(--muted);margin-top:2px;font-size:12px;font-weight:700}.eyebrow{color:var(--muted-soft);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:800}h1,h2,h3,p{margin:0}h1{color:var(--ink);letter-spacing:-.01em;font-size:22px;font-weight:850;line-height:1.05}h2{color:var(--ink);letter-spacing:-.01em;font-size:26px;font-weight:850;line-height:1.05}h3{color:var(--ink);font-size:16px;font-weight:800;line-height:1.25}button{font:inherit}.icon-button{width:42px;height:42px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;place-items:center;transition:background .12s,color .12s,transform .12s;display:grid}.icon-button:hover{transform:translateY(-1px)}.icon-button.danger{color:#fff;background:var(--accent);border-color:var(--accent)}.header-spacer{width:42px;height:42px}.mode-strip{align-items:center;gap:10px;padding:6px 22px 18px;display:flex}.segmented{background:#1723260f;border-radius:12px;flex:1;grid-template-columns:1fr 1fr;padding:4px;display:grid}.segmented-option{height:36px;color:var(--muted);letter-spacing:.01em;background:0 0;border:0;border-radius:9px;place-items:center;font-size:13px;font-weight:800;transition:background .14s,color .14s,box-shadow .14s;display:grid}.segmented-option.active{color:var(--ink);background:var(--surface);box-shadow:var(--shadow-sm)}.source-chip{height:36px;color:var(--info);background:var(--info-soft);border:1px solid #315f9f2e;border-radius:12px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.screen{flex-direction:column;gap:14px;padding:0 20px 76px;display:flex}.interview-screen{flex-direction:column;gap:12px;padding:0 16px 76px;display:flex}.exam-hero{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:radial-gradient(120% 100% at 0 0,#1d7f7524,#0000 55%),linear-gradient(140deg,#fff,#faf2e1);grid-template-columns:134px 1fr;align-items:stretch;gap:14px;padding:14px;display:grid;overflow:hidden}.exam-hero-art{border:1px solid var(--line);background:linear-gradient(#f4ece1 0%,#e7dcca 100%);border-radius:14px;height:154px;position:relative;overflow:hidden}.exam-hero-copy h2{margin-top:2px;font-size:22px}.hero-copy{color:var(--muted);margin-top:6px;font-size:13px;font-weight:600;line-height:1.4}.hero-pills{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.hero-pills span{height:24px;color:var(--ink);background:#1723260f;border-radius:999px;align-items:center;gap:5px;padding:0 8px;font-size:11px;font-weight:800;display:inline-flex}.interviewer{width:100%;height:100%;position:relative}.interviewer svg{width:100%;height:100%;display:block}.interviewer .body{transform-origin:160px 200px;animation:5.2s ease-in-out infinite ic-breathe}.interviewer .head{transform-origin:160px 150px;transition:transform .36s}.interviewer .lid{transform-box:fill-box;transform-origin:50% 0;transition:transform .1s;transform:scaleY(.05)}.interviewer.blink .lid{transform:scaleY(1)}.interviewer .mouth-neutral{opacity:1}.interviewer .mouth-open{opacity:0;transform-origin:160px 180px}.interviewer .mouth-smile,.interviewer .mouth-tight,.interviewer.stage-speaking .mouth-neutral{opacity:0}.interviewer.stage-speaking .mouth-open{opacity:1;animation:.42s ease-in-out infinite ic-talk}.interviewer.stage-positive .mouth-neutral{opacity:0}.interviewer.stage-positive .mouth-smile{opacity:1}.interviewer.stage-positive .head{transform:rotate(-1deg)}.interviewer.stage-listening .head{transform:rotate(2deg)translate(2px)}.interviewer.stage-listening .listen-rings{opacity:1;animation:1.6s ease-out infinite ic-listen}.interviewer.stage-thinking .head{transform:rotate(-2deg)translateY(-1px)}.interviewer.stage-thinking .brow-r{transform:translateY(-2px)rotate(4deg)}.interviewer.stage-needs-review .mouth-neutral{opacity:0}.interviewer.stage-needs-review .mouth-tight{opacity:1}.interviewer.stage-needs-review .head{transform:rotate(-1deg)translateY(1px)}.interviewer.stage-needs-review .brow-l{transform-origin:143px 138px;transform:translateY(-3px)}.interviewer.stage-needs-review .brow-r{transform-origin:177px 138px;transform:translateY(-3px)}.interviewer.interviewer--live .mouth-neutral,.interviewer.interviewer--live .mouth-tight,.interviewer.interviewer--live .mouth-smile{opacity:0}.interviewer.interviewer--live .brow-l,.interviewer.interviewer--live .brow-r{stroke:#1a1109}.interviewer .steam{opacity:0;animation:4.8s ease-in-out infinite ic-steam}.interviewer .steam.s2{animation-delay:1.6s}@keyframes ic-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(2.4px)}}@keyframes ic-talk{0%,to{transform:scaleY(.55)scaleX(1)}50%{transform:scaleY(1)scaleX(.92)}}@keyframes ic-listen{0%{opacity:.6;transform:scale(.85)}to{opacity:0;transform:scale(1.15)}}@keyframes ic-steam{0%{opacity:0;transform:translateY(2px)}30%{opacity:.9}to{opacity:0;transform:translateY(-10px)}}.primary-action,.secondary-action{color:#fff;letter-spacing:.01em;background:linear-gradient(#21897f 0%,#176d63 100%);border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:54px;font-size:15px;font-weight:850;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 14px 28px #1d7f7547}.primary-action:hover{transform:translateY(-1px)}.primary-action:active{transform:translateY(0);box-shadow:0 8px 18px #1d7f7547}.secondary-action{width:100%;box-shadow:var(--shadow-md);background:linear-gradient(#2d3a3f 0%,#1a262a 100%);margin-top:14px}.split-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.split-action{text-align:left;min-height:70px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;align-items:center;gap:10px;padding:12px;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex}.split-action:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.split-action svg{width:28px;height:28px;color:var(--primary);background:var(--primary-soft);border-radius:10px;flex:none;padding:6px}.split-action.guided svg{color:var(--info);background:var(--info-soft)}.split-action.locked{color:var(--muted);background:#1723260a;border-style:dashed}.split-action span{flex-direction:column;min-width:0;display:flex}.split-action strong{color:var(--ink);font-size:13px;font-weight:900;line-height:1.2}.split-action small{color:var(--muted);margin-top:2px;font-size:11px;font-weight:700}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.metric-card{min-height:78px;color:var(--muted);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;grid-template-columns:22px 1fr;align-items:start;gap:4px 8px;padding:14px;display:grid}.metric-card svg{color:var(--accent)}.metric-card span{font-size:12px;font-weight:800}.metric-card strong{color:var(--ink);grid-column:1/-1;font-size:22px;font-weight:900;line-height:1}.unit-panel,.question-card,.explanation-panel,.readiness-panel,.calendar-panel,.paywall-panel,.session-result{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px}.unit-panel{padding:16px}.section-heading,.practice-topline{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading.compact{margin-bottom:10px}.text-action{color:var(--primary);background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:12px;font-weight:800;display:inline-flex}.unit-list{gap:10px;margin-top:14px;display:grid}.unit-row{min-height:44px;color:var(--ink-soft);text-align:left;cursor:default;background:0 0;border:0;border-radius:10px;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:6px 4px;font-size:13px;font-weight:700;display:grid}.unit-row.tappable{cursor:pointer}.unit-row.tappable:hover{background:#1723260a}.unit-index{width:26px;height:26px;color:var(--primary);background:var(--primary-soft);border-radius:8px;place-items:center;font-size:12px;font-weight:900;display:grid}.unit-index.alert{color:var(--accent);background:var(--accent-soft)}.unit-row strong{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:800}.unit-row-label{-webkit-line-clamp:2;color:var(--ink);-webkit-box-orient:vertical;font-size:13px;font-weight:600;display:-webkit-box;overflow:hidden}.unit-row.missed-row{align-items:flex-start}.missed-row-label{flex-direction:column;gap:4px;display:flex;overflow:hidden}.missed-row-label>strong{color:var(--ink);font-size:13px;font-weight:700}.missed-row-said{color:var(--muted);font-size:12px;font-weight:500}.missed-row-said.muted{opacity:.7;font-style:italic}.missed-row-said em{color:var(--ink);background:#1f31420f;border-radius:4px;padding:1px 5px;font-style:normal}.choice-feedback-sheet{padding:16px 16px calc(14px + env(safe-area-inset-bottom,0));background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-md);border-radius:16px;flex-direction:column;gap:8px;margin:12px 0 0;display:flex}.choice-feedback-sheet.correct{border-color:#21897f8c;box-shadow:0 -10px 30px #21897f38}.choice-feedback-sheet.wrong{border-color:#d645458c;box-shadow:0 -10px 30px #d6454538}.choice-feedback-sheet .eyebrow{margin:0}.choice-feedback-sheet strong{color:var(--ink);font-size:16px}.choice-feedback-sheet span{color:var(--muted);font-size:13px;line-height:1.4}.choice-feedback-sheet-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px;display:grid}.choice-feedback-next,.choice-feedback-retry{cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:14px;font-weight:800;display:inline-flex}.choice-feedback-next.primary,.choice-feedback-retry.primary{color:#fff;background:linear-gradient(#21897f 0%,#176d63 100%)}.choice-feedback-next.secondary,.choice-feedback-retry{color:var(--ink);border:1px solid var(--line);background:#f3f7f5}.choice-feedback-next:only-child,.choice-feedback-retry:only-child{grid-column:1/-1}@keyframes feedback-fade-in{0%{opacity:0}to{opacity:1}}@keyframes feedback-sheet-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.category-list{gap:12px;margin-top:14px;display:grid}.category-row{text-align:left;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:0;border-radius:8px;grid-template-columns:1fr 90px 36px;align-items:center;gap:10px;padding:6px 4px;display:grid}.category-row.tappable{cursor:pointer}.category-row.tappable:hover{background:#1723260a}.reset-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.reset-panel>div{flex:auto}.reset-panel h3{margin:2px 0;font-size:14px}.reset-panel small{color:var(--muted);font-size:12px}.reset-button{background:var(--surface);border:1px solid var(--line);height:36px;color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:8px;padding:0 14px;font-size:13px;font-weight:800}.reset-button.danger{color:#fff;background:#d64545;border-color:#b13434}.category-row strong{color:var(--ink);font-size:13px;font-weight:800;line-height:1.2;display:block}.category-row small{color:var(--muted);font-size:11px;font-weight:700}.category-bar{background:#17232612;border-radius:999px;height:8px;overflow:hidden}.category-bar-fill{background:linear-gradient(90deg, var(--primary), #2da89c);height:100%}.category-row>span{text-align:right;color:var(--ink);font-size:12px;font-weight:800}.practice-topline{align-items:flex-end;min-height:56px}.topline-meta{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.score-pill{height:30px;color:var(--warn);background:var(--warn-soft);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.topline-language{height:30px;color:var(--muted);background:var(--surface);border:1px solid var(--line);letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:900;display:inline-flex}.topline-language.active{color:#fff;background:linear-gradient(#21897f 0%,#176d63 100%);border-color:#176d63}.topline-language select{max-width:92px;color:inherit;font:inherit;letter-spacing:0;background:0 0;border:0;outline:0}.topline-language.active select{color:#fff}.mock-progress{background:#17232614;border-radius:999px;width:110px;height:6px;overflow:hidden}.mock-progress-fill{background:linear-gradient(90deg, var(--primary), #38b09f);height:100%;transition:width .24s}.interview-room{border:1px solid var(--line);min-height:360px;box-shadow:var(--shadow-md);background:linear-gradient(#f4ece1 0%,#e7dcca 100%);border-radius:18px;grid-template-rows:minmax(230px,1fr) auto;display:grid;position:relative;overflow:hidden}.interview-room .interviewer{min-height:230px;position:relative}.interview-room-avatar{z-index:1;pointer-events:none;min-height:250px;display:block;position:relative}.interview-room-avatar>.interviewer{transform-origin:bottom;position:absolute;inset:-18px 0 -8px;transform:scale(1.04)}.interpreter-avatar-pip{z-index:10;aspect-ratio:1;width:45%;min-width:132px;position:absolute;bottom:-10px;right:0}.interpreter-avatar-pip .interviewer{position:absolute;inset:0}.interview-fullscreen{z-index:100;background:linear-gradient(#f4ece1 0%,#e7dcca 60%,#dcd1bf 100%);grid-template-rows:auto 1fr auto auto;display:grid;position:absolute;inset:0;overflow:hidden}.interview-fullscreen .fs-topbar{padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);z-index:2;background:#f4ece1e0;justify-content:space-between;align-items:center;display:flex}.interview-fullscreen .fs-topbar-left{align-items:center;gap:10px;display:flex}.interview-fullscreen .fs-back{width:36px;height:36px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:10px;place-items:center;display:grid}.interview-fullscreen .fs-session-label{color:var(--ink);font-size:13px;font-weight:800}.interview-fullscreen .fs-session-label small{color:var(--muted);margin-top:1px;font-size:11px;font-weight:700;display:block}.interview-fullscreen .fs-score{height:30px;color:var(--warn);background:var(--warn-soft);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:900;display:flex}.interview-fullscreen .fs-avatar-area{min-height:0;position:relative;overflow:hidden}.interview-fullscreen .fs-avatar-area>.interviewer{z-index:1;position:absolute;inset:0}.fs-interpreter-pip{z-index:4;aspect-ratio:1;background:#ffffffeb;border:1px solid #21897f47;border-radius:18px;width:min(34%,156px);min-width:118px;position:absolute;bottom:14px;right:14px;overflow:hidden;box-shadow:0 16px 34px #1f2a2e38}.fs-interpreter-pip.speaking{box-shadow:0 16px 34px #1f2a2e38,0 0 0 4px #21897f29}.fs-interpreter-pip .interviewer{position:absolute;inset:0}.fs-interpreter-pip span{z-index:2;color:#1f4f49;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#ffffffe6;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900;position:absolute;bottom:8px;left:8px;right:8px;overflow:hidden}.interview-fullscreen .fs-speech-bubble{z-index:3;border:1px solid var(--line-strong);background:#fffffff5;border-radius:16px;padding:14px 16px;position:absolute;bottom:16px;left:16px;right:16px;box-shadow:0 14px 28px #1f2a2e2e}.interview-fullscreen .fs-speech-bubble:before{content:"";border-left:1px solid var(--line-strong);border-top:1px solid var(--line-strong);background:#fffffff5;border-top-left-radius:4px;width:16px;height:16px;position:absolute;top:-8px;left:36px;transform:rotate(45deg)}.interview-fullscreen .fs-speech-row{justify-content:space-between;align-items:center;display:flex}.interview-fullscreen .fs-speaking-indicator{color:var(--primary);justify-content:center;align-items:center;animation:1.1s ease-in-out infinite mic-pulse;display:inline-flex}.interview-fullscreen .fs-speech-bubble h3{color:var(--ink);margin-top:4px;font-size:17px;font-weight:700;line-height:1.35}.audio-control-bar{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;justify-content:center;align-items:center;gap:12px;padding:12px 16px;display:flex}.audio-control-bar .acb-btn{height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex}.audio-control-bar .acb-btn:disabled{opacity:.45}.audio-control-bar .acb-btn:active{transform:scale(.97)}.audio-control-bar .acb-btn.primary{color:#fff;background:linear-gradient(#21897f 0%,#155f57 100%);border-color:#0000;flex:1;max-width:200px;box-shadow:0 8px 18px #1d7f7547}.audio-control-bar .acb-btn.primary.recording{background:linear-gradient(#d2583c 0%,#9c3b25 100%);box-shadow:0 8px 18px #bf4d3452}.audio-control-bar .acb-btn.primary .mic-orb-sm{background:#ffffff38;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.audio-control-bar .waveform{height:14px;margin:0}.audio-control-bar .waveform span{width:2px}.interview-fullscreen .fs-bottom{padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;flex-direction:column;gap:10px;max-height:35vh;display:flex;position:relative;overflow-y:auto}.fs-transcript{background:var(--surface-soft);border:1px solid var(--line);color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:700;display:flex}.fs-transcript.likely{background:var(--primary-soft);border-color:#1d7f7566}.fs-transcript.check{background:var(--warn-soft);border-color:#8c6d1f52}.fs-transcript.unclear{background:var(--accent-soft);border-color:#bf4d3459}.fs-transcript.listening{background:var(--accent-soft);border-color:#bf4d3466}.fs-transcript-clear{color:var(--ink);cursor:pointer;background:#1f31420f;border:1px solid #1f31422e;border-radius:999px;flex:none;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:800;display:inline-flex}.fs-transcript-clear:hover{background:#1f31421f}.fs-transcript-copy{gap:3px;min-width:0;display:grid}.fs-transcript-copy strong,.fs-transcript-copy small{overflow-wrap:anywhere;display:block}.fs-transcript-copy small{color:var(--muted);font-size:11px;line-height:1.25}.fs-transcript-copy .speech-error{color:var(--accent)}.fs-transcript .fs-status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.fs-transcript.likely .fs-status-dot{background:var(--primary)}.fs-transcript.check .fs-status-dot{background:var(--warn)}.fs-transcript.unclear .fs-status-dot{background:var(--accent)}.fs-transcript.listening .fs-status-dot{background:var(--accent);animation:1s ease-in-out infinite mic-pulse}.fs-transcript .fs-status-dot{background:var(--muted-soft)}.fs-grade-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fs-typed-fallback{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;gap:8px;padding:10px;display:grid}.fs-typed-fallback label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:11px;font-weight:850;display:flex}.fs-typed-fallback textarea{resize:vertical;width:100%;min-height:58px;color:var(--ink);border:1px solid var(--line-strong);font:inherit;background:#fff;border-radius:10px;padding:10px;font-size:14px;line-height:1.35}.typed-submit{color:#fff;background:linear-gradient(#21897f,#155f57);border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;font-size:13px;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #1d7f7538}.typed-submit.secondary{color:#6b5140;box-shadow:none;background:#fff7ed;border:1px solid #f1d7bb}.typed-submit:disabled{color:var(--muted);background:var(--surface-soft);box-shadow:none}.fs-grade-row .grade-button{min-height:44px;font-size:13px}.interpreter-turns{border-top:1px solid var(--line);background:#ffffffb3;justify-content:center;align-items:center;gap:6px;padding:8px 16px;display:flex}.interpreter-turns.compact{background:0 0;border-top:0;flex-wrap:wrap;justify-content:flex-start;padding:0}.interpreter-turn{color:var(--muted);background:#1723260d;border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:800;transition:background .2s,color .2s;display:flex}.interpreter-turn.active{color:#fff;background:var(--primary)}.interpreter-turn-arrow{color:var(--muted-soft);font-size:12px}.interpreter-audio-panel{color:var(--muted);border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#ffffffd1;border-radius:14px;gap:10px;padding:12px 14px;display:grid}.interview-fullscreen .interpreter-audio-panel{margin:0 16px 10px}.interpreter-audio-panel.compact-fs{flex-direction:column;gap:6px;padding:8px 12px;display:flex}.interpreter-audio-panel .interpreter-audio-note{color:var(--muted);margin:0;font-size:11px;font-weight:700;display:block}.interpreter-audio-panel strong,.interpreter-audio-panel small{display:block}.interpreter-audio-panel strong{color:var(--ink);font-size:13px;font-weight:850}.interpreter-audio-panel small{margin-top:2px;font-size:11px;font-weight:750}.role-replay-row{flex-wrap:wrap;gap:8px;display:flex}.role-replay-row button{min-height:36px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:850;display:inline-flex}.role-replay-row button:disabled{opacity:.45}.role-transcript-stack{gap:8px;display:grid}.role-transcript{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:auto 1fr;gap:3px 8px;padding:10px 11px;display:grid}.role-transcript.active{background:var(--primary-soft);border-color:#1d7f755c}.role-transcript.speaking{background:var(--info-soft);border-color:#315f9f4d}.role-transcript.listening{background:var(--accent-soft);border-color:#bf4d3459}.role-transcript.error{border-color:#bf4d3459}.role-transcript .role-label{color:var(--ink);font-size:12px;font-weight:900}.role-transcript .role-language{color:var(--muted-soft);text-transform:uppercase;letter-spacing:.04em;justify-self:end;font-size:10px;font-weight:850}.role-transcript strong{color:var(--ink);overflow-wrap:anywhere;grid-column:1/-1;font-size:13px;font-weight:750;line-height:1.35}.speech-bubble{z-index:3;border:1px solid var(--line-strong);background:#fffffff5;border-radius:16px;margin:0 14px 14px;padding:14px 14px 14px 16px;position:relative;bottom:auto;left:auto;right:auto;box-shadow:0 14px 28px #1f2a2e2e}.speech-bubble:before{content:"";border-left:1px solid var(--line-strong);border-top:1px solid var(--line-strong);background:#fffffff5;border-top-left-radius:4px;width:16px;height:16px;position:absolute;top:-8px;left:36px;transform:rotate(45deg)}.speech-bubble-row{justify-content:space-between;align-items:center;display:flex}.speech-bubble h3{color:var(--ink);margin-top:4px;font-size:16px;line-height:1.32}.speaker-button{width:30px;height:30px;color:var(--info);background:var(--info-soft);cursor:pointer;border:1px solid #315f9f29;border-radius:999px;place-items:center;transition:transform .12s;display:grid}.speaker-button.playing{color:#fff;background:var(--info);animation:1.2s ease-in-out infinite speaker-pulse}@keyframes speaker-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.voice-settings-panel{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#ffffffc7;border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.voice-settings-copy{align-items:center;gap:10px;min-width:0;display:flex}.voice-settings-copy>svg{color:var(--info);flex:none}.voice-settings-copy strong,.voice-settings-copy small{display:block}.voice-settings-copy strong{color:var(--ink);font-size:13px;font-weight:850}.voice-settings-copy small{max-width:210px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.stt-diagnostics{border-top:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;gap:6px;padding-top:10px;display:flex}.stt-diagnostics span{min-height:24px;color:var(--muted);border:1px solid var(--line);background:#1723260d;border-radius:999px;align-items:center;padding:0 8px;font-size:10px;font-weight:850;display:inline-flex}.stt-diagnostics .ok{color:var(--primary-deep);background:var(--primary-soft);border-color:#1d7f7533}.stt-diagnostics .warn{color:var(--accent);background:var(--accent-soft);border-color:#bf4d3438}.voice-picker{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;gap:4px;font-size:10px;font-weight:850;display:grid}.voice-picker select{max-width:150px;height:34px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);font:inherit;letter-spacing:0;text-transform:none;border-radius:10px;padding:0 28px 0 10px;font-size:12px;font-weight:800}.question-card{padding:16px}.skill-row{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:7px;margin-bottom:10px;font-size:11px;font-weight:800;display:flex}.interview-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.interview-actions.compact{grid-template-columns:1fr;margin-top:12px}.answer-mode-switch{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:4px 0 8px;padding:3px;display:grid}.answer-mode-option{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:900;display:inline-flex}.answer-mode-option.active{color:#fff;background:linear-gradient(#21897f,#155f57);box-shadow:0 8px 16px #1d7f7538}.answer-mode-option:disabled{opacity:.45}.mic-status-card{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:10px;margin:2px 0 10px;padding:12px;display:grid}.mic-status-card strong,.mic-status-card small{display:block}.mic-status-card strong{color:var(--ink);font-size:14px;font-weight:850}.mic-status-card small{margin-top:2px;font-size:12px;font-weight:700;line-height:1.35}.mic-status-card>span{min-height:28px;color:var(--info);background:var(--info-soft);white-space:nowrap;border:1px solid #315f9f29;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:10px;font-weight:850;display:inline-flex}.mic-status-card.listening{background:var(--accent-soft);border-color:#bf4d3447}.mic-status-card.blocked,.mic-status-card.unsupported{background:var(--warn-soft);border-color:#8c6d1f3d}.mic-primary{color:#fff;background:radial-gradient(circle at 50% 24%,#ffffff38,#0000 36%),linear-gradient(#21897f 0%,#155f57 100%);border:0;border-radius:16px;place-items:center;gap:6px;width:100%;min-height:116px;margin-top:6px;padding:14px;transition:transform .12s,box-shadow .12s;display:grid;position:relative;box-shadow:0 18px 34px #1d7f7547}.mic-primary:hover{transform:translateY(-1px)}.mic-primary.recording{background:radial-gradient(circle at 50% 24%,#ffffff38,#0000 36%),linear-gradient(#d2583c 0%,#9c3b25 100%);box-shadow:0 18px 34px #bf4d3452}.mic-primary.unavailable{background:radial-gradient(circle at 50% 24%,#ffffff2e,#0000 36%),linear-gradient(#4a5860 0%,#26343a 100%);box-shadow:0 14px 26px #1f2a2e33}.mic-primary.unavailable .mic-orb{color:var(--ink-soft)}.mic-primary strong{font-size:20px;font-weight:900;line-height:1}.mic-primary small{color:#ffffffd9;font-size:12px;font-weight:700}.mic-orb{width:46px;height:46px;color:var(--primary);background:#fff;border-radius:50%;place-items:center;display:grid;box-shadow:0 4px 10px #0000001f}.mic-primary.recording .mic-orb{color:var(--accent);animation:1s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.waveform{opacity:.4;align-items:end;gap:3px;height:18px;margin-top:4px;display:flex}.waveform span{background:#ffffffd9;border-radius:2px;width:3px;height:4px;display:block}.waveform.active{opacity:1}.waveform.active span{animation:.9s ease-in-out infinite wave}@keyframes wave{0%,to{height:4px}50%{height:16px}}.voice-button{min-height:46px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.voice-button:first-child{color:var(--info);background:var(--info-soft);border-color:#315f9f2e}.voice-button.secondary{color:var(--muted);background:var(--surface-soft)}.typed-practice{gap:10px;margin-top:14px;display:grid}.typed-practice label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:7px;font-size:11px;font-weight:800;display:flex}.typed-practice textarea{resize:vertical;width:100%;min-height:80px;color:var(--ink);border:1px solid var(--line-strong);font:inherit;background:#fff;border-radius:12px;padding:12px;font-size:14px;line-height:1.4}.typed-practice textarea:focus{border-color:var(--info);outline:3px solid #315f9f33}.practice-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.practice-tools button{min-height:36px;color:var(--ink-soft);background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;font-size:12px;font-weight:800}.transcript-card{color:var(--muted);background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;gap:6px;margin-top:14px;padding:13px;display:grid}.transcript-card strong{color:var(--ink);font-size:14px;font-weight:700;line-height:1.4}.transcript-card span{color:var(--muted-soft);font-size:12px;font-weight:700}.transcript-card.listening{background:var(--accent-soft);border-color:#bf4d3466}.transcript-card.likely{background:var(--primary-soft);border-color:#1d7f7566}.transcript-card.check{background:var(--warn-soft);border-color:#8c6d1f52}.transcript-card.unclear{background:var(--accent-soft);border-color:#bf4d3459}.transcript-card .speech-error{color:var(--accent)}.answer-stack{gap:8px;margin-top:14px;display:grid}.answer-option{width:100%;min-height:50px;color:var(--ink);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;grid-template-columns:30px 1fr 20px;align-items:center;gap:10px;padding:10px 12px;display:grid}.answer-option span{width:26px;height:26px;color:var(--ink-soft);background:#1723260f;border-radius:8px;place-items:center;font-size:12px;font-weight:900;display:grid}.answer-option strong{font-size:14px;font-weight:700;line-height:1.3}.answer-option.correct{background:var(--primary-soft);border-color:#1d7f7566}.answer-option.correct span{color:#fff;background:var(--primary)}.choice-card{gap:10px;display:grid}.choice-list{gap:7px;display:grid}.choice-option{width:100%;min-height:46px;color:var(--ink);text-align:left;border:1px solid var(--line);font:inherit;background:#fff;border-radius:12px;grid-template-columns:30px 1fr;align-items:center;gap:10px;padding:8px 10px;display:grid;box-shadow:0 4px 10px #1f2a2e0a}.choice-option strong{font-size:13.5px;font-weight:800;line-height:1.25}.choice-marker{width:28px;height:28px;color:var(--muted);background:#1723260f;border-radius:9px;place-items:center;font-size:12px;font-weight:900;display:grid}.choice-option.selected{background:var(--info-soft);border-color:#315f9f5c}.choice-option.selected .choice-marker{color:#fff;background:var(--info)}.choice-option.correct{background:var(--primary-soft);border-color:#1d7f7570}.choice-option.correct .choice-marker{color:#fff;background:var(--primary)}.choice-option.wrong{background:var(--accent-soft);border-color:#bf4d346b}.choice-option.wrong .choice-marker{color:#fff;background:var(--accent)}.choice-option:disabled{opacity:1}.choice-feedback{border:1px solid var(--line);border-radius:12px;gap:5px;padding:12px;display:grid}.choice-feedback strong{color:var(--ink);font-size:13.5px;line-height:1.25}.choice-feedback span{color:var(--ink-soft);font-size:12.5px;font-weight:700;line-height:1.35}.choice-feedback.correct{background:var(--primary-soft);border-color:#1d7f7547}.choice-feedback.wrong{background:var(--accent-soft);border-color:#bf4d3447}.choice-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.choice-actions .primary-action:only-child,.choice-actions .secondary-action:only-child{grid-column:1/-1}.choice-actions .secondary-action{margin-top:0}.choice-actions .primary-action:disabled{color:var(--muted);background:var(--surface-soft);box-shadow:none}.inline-note{color:var(--primary-deep);background:var(--primary-soft);border-radius:10px;margin-top:12px;padding:10px 12px;font-size:12px;font-weight:700;line-height:1.4}.inline-note.warning{color:var(--warn);background:var(--warn-soft)}.current-answer-card{border:1px solid var(--line);border-radius:12px;gap:6px;margin-top:12px;padding:12px;display:grid}.current-answer-card strong{color:var(--ink);font-size:13px;font-weight:800}.current-answer-card a{color:var(--info);font-size:12px;font-weight:800;text-decoration:none}.current-answer-card.stale{background:var(--warn-soft);border-color:#8c6d1f3d}.current-answer-card.fresh{background:var(--primary-soft);border-color:#1d7f7547}.reveal{width:100%;box-shadow:none;margin-top:14px}.grade-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.grade-button{letter-spacing:.01em;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:50px;font-size:14px;font-weight:900;transition:transform .12s;display:flex}.grade-button:active{transform:scale(.98)}.grade-button:disabled{color:var(--muted);background:var(--surface-soft);box-shadow:none;transform:none}.grade-button.correct{color:#fff;background:linear-gradient(#21897f,#155f57);box-shadow:0 8px 18px #1d7f753d}.grade-button.wrong{color:#fff;background:linear-gradient(#d2583c,#9c3b25);box-shadow:0 8px 18px #bf4d3438}.grade-button.skip-live{color:#6b5140;box-shadow:none;background:#fff7ed;border:1px solid #f1d7bb}.explanation-panel{padding:16px}.explanation-panel p,.muted{color:var(--muted);font-size:13px;font-weight:600;line-height:1.45}.readiness-panel{grid-template-columns:110px 1fr;align-items:center;gap:16px;padding:16px;display:grid}.readiness-ring{background:radial-gradient(circle at center, #fff 60%, transparent 62%), conic-gradient(var(--primary) var(--score), #17232614 0);border-radius:50%;place-items:center;width:104px;height:104px;display:grid}.readiness-ring span{color:var(--ink);font-size:26px;font-weight:900}.session-result{grid-template-columns:1fr 42px;align-items:center;gap:12px;padding:16px;display:grid}.session-result.passed{background:var(--primary-soft);border-color:#1d7f7552}.session-result.failed{background:var(--warn-soft);border-color:#8c6d1f3d}.session-result p:last-child{color:var(--muted);margin-top:6px;font-size:13px;font-weight:700}.paywall-panel{grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.paywall-panel button{color:#fff;min-height:38px;box-shadow:var(--shadow-sm);background:linear-gradient(#2d3a3f,#172326);border:0;border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:900;display:flex}.calendar-panel{grid-template-columns:32px 1fr;align-items:center;gap:12px;padding:14px;display:grid}.calendar-panel svg{color:var(--info)}.bottom-tabs{padding:6px 10px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(#fbfaf599,#fbfaf5f2 50%);grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid;position:absolute;bottom:0;left:0;right:0}.tab{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:10px;font-weight:800;transition:color .12s,background .12s;display:flex}.tab svg{width:18px;height:18px}.tab.active{color:var(--ink);background:var(--surface);box-shadow:0 6px 14px #1f2a2e14}.tab.active svg{color:var(--primary)}@media (width<=520px){.app-shell{background:radial-gradient(800px 400px at 50% -10%,#1d7f752e,#0000 60%),linear-gradient(#f4ede0 0%,#e7dcca 100%);padding:0}.phone{width:100%;min-height:100svh;box-shadow:none;border:0;border-radius:0}.exam-hero{grid-template-columns:112px 1fr;padding:12px}.exam-hero-art{height:130px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.voice-settings-panel{grid-template-columns:1fr}.voice-picker select{width:100%;max-width:none}}@media (prefers-reduced-motion:reduce){.interviewer .body,.interviewer .lid,.interviewer .mouth-open,.interviewer .listen-rings,.interviewer .steam,.waveform.active span,.speaker-button.playing,.mic-primary.recording .mic-orb{animation:none!important}}.home-screen{flex-direction:column;gap:18px;padding-top:8px;display:flex}.home-hero{background:linear-gradient(#f6fbf9 0%,#fff 100%);border:1px solid #e3ece8;border-radius:18px;align-items:center;gap:14px;padding:14px 16px;display:flex}.home-hero-art{flex:0 0 88px;justify-content:center;align-items:center;width:88px;height:88px;display:flex}.home-hero-copy h2{letter-spacing:-.01em;margin:4px 0 6px;font-size:18px;line-height:1.2}.home-hero-copy .hero-copy{color:#4f5b56;margin:0;font-size:13px;line-height:1.4}.home-cta-stack{flex-direction:column;gap:10px;display:flex}.home-paths{flex-direction:column;gap:12px;display:flex}.path-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;gap:10px;padding:16px;display:flex}.path-card-header{align-items:flex-start;gap:12px;display:flex}.path-card-icon{color:#176d63;background:#21897f1f;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid}.path-card-header h3{margin:2px 0 0;font-size:16px}.path-card-blurb{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.path-card-actions{gap:8px;margin-top:auto;display:flex}.path-action{cursor:pointer;border:1px solid #0000;border-radius:10px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.path-action.primary{color:#fff;background:linear-gradient(#21897f 0%,#176d63 100%)}.path-action.live{background:var(--surface);color:var(--ink);border-color:var(--line)}.path-action.live.disabled,.path-action.live:disabled{opacity:.55;cursor:not-allowed}.home-cta{text-align:left;cursor:pointer;background:#fff;border:1px solid #e3ece8;border-radius:16px;align-items:center;gap:14px;padding:14px;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;box-shadow:0 1px #0d1c190a}.home-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0d1c1914}.home-cta:disabled,.home-cta.disabled{opacity:.65;cursor:not-allowed;transform:none}.home-cta.primary{color:#fff;background:linear-gradient(#1d7f75 0%,#176c63 100%);border-color:#176c63}.home-cta.primary .home-cta-copy small{color:#ffffffdb}.home-cta.live{color:#fff;background:#1f3142;border-color:#1f3142}.home-cta.live .home-cta-copy small{color:#ffffffc7}.home-cta.secondary{background:#fff}.home-cta-icon{background:#ffffff29;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.home-cta.secondary .home-cta-icon{color:#1d7f75;background:#f1f6f4}.home-cta-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.home-cta-copy strong{letter-spacing:-.01em;font-size:15px;font-weight:600}.home-cta-copy small{color:#6b7773;font-size:12px;line-height:1.35}.home-quick-link{cursor:pointer;text-align:left;color:#1f3142;background:#f9fbfa;border:1px dashed #d8e0db;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.home-quick-link:hover{background:#f1f6f4}.home-quick-link span{flex-direction:column;flex:1;min-width:0;display:flex}.home-quick-link strong{font-size:13px}.home-quick-link small{color:#6b7773;font-size:11px}.home-footer{color:#8b9690;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 4px 4px;font-size:11px;display:flex}.home-footer-link{color:#6b7773;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.home-footer-link:hover{color:#1d7f75}.home-footer-meta{color:#8b9690}.live-strip{color:#fff;letter-spacing:.08em;text-transform:uppercase;background:#1f3142;border-radius:12px;align-items:center;gap:8px;margin:0 16px 8px;padding:6px 14px;font-size:11px;display:flex}.live-strip-dot{background:#ff5b5b;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite live-pulse}@keyframes live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.live-strip-label{font-weight:700}.live-strip-meta{color:#ffffffc7;flex:1}.live-strip-timer{font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:999px;align-items:center;gap:4px;padding:3px 7px;display:inline-flex}.practice-setup{flex-direction:column;gap:16px;display:flex}.setup-intro h2{letter-spacing:-.01em;margin:4px 0;font-size:18px}.setup-copy{color:#4f5b56;margin:0;font-size:13px;line-height:1.4}.setup-section{flex-direction:column;gap:8px;display:flex}.setup-section .eyebrow{margin:0}.setup-chips{scrollbar-width:none;flex-wrap:nowrap;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.setup-chips::-webkit-scrollbar{display:none}.setup-chips.wrap{flex-wrap:wrap;overflow:visible}.setup-chip{color:#1f3142;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d8e0db;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:500;display:inline-flex}.setup-chip:hover{color:#1d7f75;border-color:#1d7f75}.setup-chip.active{color:#fff;background:#1d7f75;border-color:#1d7f75}.setup-chip:disabled,.setup-chip[aria-disabled=true]{opacity:.5;cursor:not-allowed}.setup-toggle{cursor:pointer;background:#fff;border:1px solid #e3ece8;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.setup-toggle input[type=checkbox]{accent-color:#1d7f75;width:18px;height:18px;margin-top:2px}.setup-toggle span{flex-direction:column;gap:2px;display:flex}.setup-toggle strong{font-size:13px}.setup-toggle small{color:#6b7773;font-size:11px}.setup-interpreter{background:#f6fbf9;border:1px solid #d6e4df;border-radius:14px;gap:10px;padding:12px}.setup-interpreter-header{color:#1f3142;align-items:flex-start;gap:10px;display:flex}.setup-interpreter-header strong{font-size:13px}.setup-interpreter-header small{color:#4f5b56;margin-top:2px;font-size:11px;line-height:1.4;display:block}.setup-toggle-button{color:#1d7f75;cursor:pointer;background:#fff;border:1px solid #1d7f75;border-radius:999px;align-self:flex-start;padding:7px 14px;font-size:12px;font-weight:600}.setup-toggle-button.active{color:#fff;background:#1d7f75}.setup-language-picker{flex-direction:column;gap:4px;margin-top:8px;display:flex}.setup-language-picker>span{color:#4f5b56;text-transform:uppercase;letter-spacing:.03em;align-items:center;gap:4px;font-size:11px;display:flex}.setup-language-picker select{color:#1f3142;background:#fff;border:1px solid #c5d6cf;border-radius:10px;padding:8px 10px;font-family:inherit;font-size:13px}.live-intro-interpreter{flex-direction:column;gap:6px;margin:0 0 12px;display:flex}.live-intro-interpreter-note{color:#6b7773;font-size:11px;line-height:1.4}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.setup-error{color:#8a2929;background:#fff1f1;border:1px solid #f0caca;border-radius:10px;margin:0;padding:8px 10px;font-size:12px}.setup-note{color:#6b7773;margin:0;font-size:12px}.practice-back{color:#1f3142;cursor:pointer;background:#fff;border:1px solid #d8e0db;border-radius:10px;justify-content:center;align-items:center;width:30px;height:30px;margin-right:6px;display:inline-flex}.practice-back:hover{color:#1d7f75;border-color:#1d7f75}.self-grade-note{color:#6b7773;margin:4px 0 0;font-size:11px}.grade-toast,.fs-grade-toast{text-align:center;color:#1d7f75;margin:6px 0 0;font-size:12px;font-weight:600}.fs-grade-toast{color:#fff}.auto-submit-slot{align-items:stretch;min-height:44px;display:flex}.auto-submit-indicator{color:#3a2a06;cursor:pointer;background:#fff4d4;border:1px solid #d9a838;border-radius:12px;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px;width:100%;padding:8px 14px;font-size:13px;font-weight:800;display:grid;box-shadow:0 4px 12px #3a2a062e}.auto-submit-indicator:hover{background:#ffe9a8}.auto-submit-indicator>svg{color:#6e4a0a}.auto-submit-num{color:#5a3a06;font-variant-numeric:tabular-nums;text-align:center;min-width:18px;font-size:22px;font-weight:900}.auto-submit-label{text-align:left;font-size:13px}.auto-submit-cancel{color:#6e4a0a;letter-spacing:.02em;text-transform:uppercase;opacity:.7;font-size:11px;font-weight:700}.live-launch,.live-intro,.live-complete{flex-direction:column;gap:16px;display:flex}.live-launch-hero{color:#fff;background:linear-gradient(#1f3142 0%,#15212d 100%);border-radius:18px;align-items:center;gap:14px;padding:16px;display:flex}.live-launch-hero .interviewer{flex:0 0 88px;width:88px;height:88px}.live-launch-copy h2{letter-spacing:-.01em;color:#fff;margin:4px 0 6px;font-size:18px}.live-launch-copy p{color:#ffffffd1;margin:0;font-size:13px;line-height:1.4}.live-launch-copy .eyebrow{color:#ffffffb3}.live-launch-rules,.live-intro-rules{flex-direction:column;gap:8px;width:100%;margin:0;padding:0;list-style:none;display:flex}.live-launch-rules li,.live-intro-rules li{color:#1f3142;background:#fff;border:1px solid #e3ece8;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;display:flex}.live-launch-rules li svg,.live-intro-rules li svg{color:#1d7f75;flex-shrink:0}.live-mode-card,.live-instruction-card{width:100%;box-shadow:var(--shadow-sm);text-align:left;background:#fff;border:1px solid #e3ece8;border-radius:14px;padding:14px}.live-mode-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.live-mode-option{color:#1f3142;text-align:left;cursor:pointer;background:#f8fbfa;border:1px solid #e3ece8;border-radius:12px;min-height:92px;padding:12px;transition:background .12s,border-color .12s,box-shadow .12s}.live-mode-option:hover{border-color:#79b8ae}.live-mode-option.active{background:linear-gradient(#21897f12 0%,#176d6320 100%);border-color:#21897f;box-shadow:inset 0 0 0 1px #21897f2e}.live-mode-option strong{font-size:14px;font-weight:850;display:block}.live-mode-option span{color:#5a6762;margin-top:5px;font-size:12px;font-weight:650;line-height:1.35;display:block}.live-mode-option.active span{color:#1f4f49}.live-instruction-card .live-intro-rules{margin-top:10px}.live-instruction-card .live-intro-rules li{box-shadow:none;background:#f8fbfa}.live-score-status{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e3ece8;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.live-score-status.intro-visible{text-align:left;width:100%;margin:4px 0 0}.live-score-icon{color:#5b676d;background:#9aa8a324;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 0 0 4px #9aa8a314}.live-score-status.ready .live-score-icon{color:#fff;background:#1d7f75;box-shadow:0 0 0 4px #1d7f7524}.live-score-status.unavailable .live-score-icon{color:#fff;background:#bf4d34;box-shadow:0 0 0 4px #bf4d341f}.live-score-status strong{color:var(--ink);font-size:15px;display:block}.live-score-status small{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.35;display:block}.live-score-status button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#f3f7f5;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:850}.web-auth-card{width:100%;box-shadow:var(--shadow-sm);text-align:left;background:#fff;border:1px solid #e3ece8;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.web-auth-card strong,.web-auth-card small{display:block}.web-auth-card strong{color:var(--ink);font-size:14px;font-weight:850}.web-auth-card small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.35}.web-auth-stack{gap:10px;width:100%;display:grid}.web-auth-card label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;gap:5px;font-size:11px;font-weight:850;display:grid}.web-auth-card input{min-width:0;height:38px;color:var(--ink);border:1px solid var(--line);font:inherit;letter-spacing:0;text-transform:none;background:#f8fbfa;border-radius:10px;padding:0 10px;font-size:13px;font-weight:700}.web-auth-actions,.web-auth-inline{gap:8px;display:flex}.web-auth-inline input{flex:auto}.web-auth-card button{min-height:38px;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:#f3f7f5;border-radius:10px;padding:0 12px;font-size:12px;font-weight:850}.web-auth-card button:disabled{opacity:.5;cursor:not-allowed}.web-auth-message{color:#1f4f49}.primary-action.disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#c8d3ce}.live-intro{text-align:center;align-items:center;padding-top:6px}.live-intro-room{width:100%;box-shadow:var(--shadow-md);background:#1f2832;border-radius:14px;overflow:hidden}.live-intro-room svg{width:100%;height:auto;display:block}.live-intro-flag{justify-content:center;width:100%;margin:4px 0 8px;display:flex}.live-intro-flag svg{border:1px solid #1f31422e;border-radius:4px;width:130px;height:auto;display:block;box-shadow:0 4px 10px #1f31421f}.screen-breadcrumb{color:var(--muted);letter-spacing:.02em;cursor:pointer;background:0 0;border:0;border-radius:6px;align-self:flex-start;align-items:center;gap:4px;margin:0 0 4px;padding:4px 6px;font-size:12px;font-weight:700;display:inline-flex}.screen-breadcrumb:hover{color:var(--ink);background:#1f31420f}.ready-check{flex-direction:column;gap:16px;display:flex}.ready-check-stage{aspect-ratio:1;width:100%;max-height:60vh;box-shadow:var(--shadow-md);background:#1f2832;border-radius:18px;position:relative;overflow:hidden}.ready-check-stage .interviewer{width:100%;height:100%}.ready-check-interpreter-pip{z-index:5;background:#1f2832;border:2px solid #fff6;border-radius:12px;width:38%;min-width:96px;position:absolute;bottom:10px;right:10px;overflow:hidden;box-shadow:0 6px 18px #0006}.ready-check-interpreter-pip .interviewer{width:100%;height:100%}.ready-check-pip-label{z-index:6;color:#fff;letter-spacing:.04em;background:#0000008c;border-radius:999px;padding:2px 6px;font-size:10px;font-weight:800;position:absolute;bottom:4px;left:6px}.ready-check-copy{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:0 6px;display:flex}.ready-check-copy h2{letter-spacing:-.01em;margin:0;font-size:22px}.ready-check-copy p{color:var(--muted);max-width:36ch;margin:0;font-size:14px;line-height:1.45}.ready-check-actions{gap:10px;width:100%;display:flex}.ready-check-button{letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;padding:0 14px;font-size:15px;font-weight:850;transition:transform .12s,box-shadow .12s;display:inline-flex}.ready-check-button.primary{color:#fff;background:linear-gradient(#21897f 0%,#176d63 100%);box-shadow:0 14px 28px #1d7f7547}.ready-check-button.primary:hover{transform:translateY(-1px)}.ready-check-button.secondary{color:var(--ink);background:var(--surface);border-color:var(--line)}.ready-check-button.secondary:hover{border-color:var(--ink)}.live-intro-avatar{justify-content:center;align-items:center;width:140px;height:140px;display:flex}.live-intro-copy{flex-direction:column;align-items:center;gap:8px;max-width:320px;display:flex}.live-intro-copy h2{letter-spacing:-.01em;margin:0;font-size:18px}.live-intro-copy p{color:#4f5b56;margin:0;font-size:13px;line-height:1.45}.live-intro-actions,.live-intro-checks{flex-direction:column;align-items:stretch;gap:10px;width:100%;display:flex}.intro-check{background:var(--surface);border:1px solid var(--line);text-align:left;cursor:pointer;color:var(--ink);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;transition:border-color .12s,background .12s;display:flex}.intro-check:hover{border-color:#1d7f75}.intro-check>span{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.intro-check strong{font-size:14px;font-weight:800}.intro-check small{color:var(--muted);font-size:12px;font-weight:600}.intro-check.active{background:linear-gradient(#21897f10 0%,#176d6320 100%);border-color:#21897f}.intro-check.disabled{color:var(--muted);cursor:default;background:#f8faf9;border-style:dashed}.intro-check.disabled:hover{border-color:var(--line)}.intro-check.disabled svg{color:#8b9792}.intro-check.error{background:#fff5f4;border-color:#d64545}.intro-check.error small{color:#b13434}.interpreter-controls{align-items:center;gap:8px;margin-top:8px;display:flex}.interpreter-language-select{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--ink);border-radius:8px;flex:auto;padding:0 10px;font-size:13px;font-weight:700}.interpreter-toggle{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--muted);cursor:pointer;border-radius:8px;padding:0 16px;font-size:13px;font-weight:800}.interpreter-toggle.on{color:#fff;background:linear-gradient(#21897f 0%,#176d63 100%);border-color:#176d63}.interpreter-toggle:disabled{opacity:.5;cursor:not-allowed}.interpreter-coming-soon{color:#6e4a0a;background:#f3c9762e;border:1px solid #f3c9766b;border-radius:6px;margin-top:6px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.mic-live-dot{background:#21897f;border-radius:999px;flex:none;width:12px;height:12px;animation:1.4s ease-out infinite mic-live-pulse;box-shadow:0 0 #21897f80}@keyframes mic-live-pulse{0%{box-shadow:0 0 #21897f80}to{box-shadow:0 0 0 12px #21897f00}}.live-cancel{color:#8b9690;cursor:pointer;background:0 0;border:none;margin-top:6px;font-size:12px;text-decoration:underline}.live-result{border:1px solid #e3ece8;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 16px;display:flex}.live-result.passed{color:#1f4f3a;background:linear-gradient(#ecfaf3 0%,#d8f1e3 100%);border-color:#cfe9d7}.live-result.failed{color:#6b2316;background:linear-gradient(#fff2f0 0%,#fde2dd 100%);border-color:#f3cabb}.live-result h2{margin:4px 0 6px;font-size:22px}.live-result p{margin:0;font-size:13px}.live-complete-actions{flex-direction:column;gap:10px;display:flex}.fs-end-test{color:#fff;letter-spacing:.02em;cursor:pointer;background:#ff5b5b29;border:1px solid #ff5b5b6b;border-radius:10px;align-items:center;height:36px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.fs-end-test:hover{background:#ff5b5b47}.fs-end-confirm{z-index:50;background:#080e16b8;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.fs-end-confirm-card{background:var(--surface);width:min(360px,100%);color:var(--ink);border-radius:16px;flex-direction:column;gap:10px;padding:22px 22px 18px;display:flex;box-shadow:0 24px 60px #00000052}.fs-end-confirm-card h3{margin:0;font-size:18px}.fs-end-confirm-card p{color:var(--muted);margin:0;font-size:14px}.fs-end-confirm-actions{gap:10px;margin-top:10px;display:flex}.fs-end-confirm-actions>button{border-radius:12px;flex:1 1 0;width:auto;min-height:48px;margin:0;font-size:14px}.primary-action.danger{color:#fff;background:#d64545;border-color:#b13434}.primary-action.danger:hover{background:#b13434}.live-result.ended{color:#fff;background:linear-gradient(135deg,#2c3a4d 0%,#1f2a39 100%);border-color:#ffffff2e}.live-result.ended h2{color:#fff}.live-result.ended p{color:#ffffffd1}.live-result.ended .eyebrow{color:#ffffffb8}.interview-fullscreen.live-mode .fs-topbar{color:#fff;background:#15212d}.interview-fullscreen.live-mode .fs-session-label,.interview-fullscreen.live-mode .fs-session-label small{color:#fff}.interview-fullscreen.live-mode .fs-score{color:#fff;background:#ff5b5b29;border:1px solid #ff5b5b52}.bottom-tabs .tab.live-tab.active span,.bottom-tabs .tab.live-tab.active svg{color:#ff5b5b}
