.chatscreen-container{display:flex;flex-direction:column;height:100vh;width:100vw;background:#090d16;color:#f1f5f9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden;box-sizing:border-box}.chatscreen-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1.25rem;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);height:52px;box-sizing:border-box;flex-shrink:0;gap:1rem}.chatscreen-brand-area{display:flex;align-items:center;gap:.75rem}.chatscreen-logo{font-weight:800;font-size:1.05rem;letter-spacing:-.02em;color:#fff;display:flex;align-items:center;gap:.4rem}.chatscreen-logo span{color:#38bdf8}.chatscreen-mode-pill{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:#38bdf81f;color:#38bdf8;padding:2px 7px;border-radius:4px;border:1px solid rgba(56,189,248,.25)}.chatscreen-meta-line{font-size:.8rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chatscreen-center-telemetry{display:flex;align-items:center;gap:.75rem}.chatscreen-timer-badge{display:inline-flex;align-items:center;gap:.4rem;background:#0f172acc;border:1px solid rgba(255,255,255,.12);padding:3px 9px;border-radius:9999px;font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;color:#e2e8f0}.chatscreen-timer-badge.imminent{border-color:#ef4444;color:#f87171;background:#ef444426}.chatscreen-coverage-pills{display:flex;align-items:center;gap:.4rem}.chatscreen-pill{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:9999px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#cbd5e1}.chatscreen-pill.active{background:#38bdf826;border-color:#38bdf859;color:#38bdf8}.chatscreen-pill.evaluated{background:#10b98126;border-color:#10b98159;color:#34d399}.chatscreen-proctor-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;background:#10b9811f;color:#34d399;border:1px solid rgba(16,185,129,.3);padding:3px 10px;border-radius:9999px}.chatscreen-proctor-badge.away{background:#ef444426;color:#f87171;border-color:#ef444466}.chatscreen-end-btn{background:transparent;border:1px solid rgba(239,68,68,.3);color:#f87171;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:6px;cursor:pointer;transition:all .15s ease}.chatscreen-end-btn:hover{background:#ef444426}.chatscreen-mobile-tabs{display:none;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);padding:.25rem .5rem;gap:.4rem;flex-shrink:0}.chatscreen-mobile-tab-btn{flex:1;background:transparent;border:none;color:#94a3b8;font-size:.8rem;font-weight:700;padding:.45rem .6rem;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.3rem;transition:all .15s}.chatscreen-mobile-tab-btn.active{background:#38bdf826;color:#38bdf8}.chatscreen-workstation{display:grid;grid-template-columns:42% 58%;height:calc(100vh - 52px);overflow:hidden;background:#090d16}.chatscreen-stream-pane{display:flex;flex-direction:column;height:100%;border-right:1px solid rgba(255,255,255,.08);background:#0b1120;overflow:hidden}.chatscreen-transcript-scroll{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem;scroll-behavior:smooth}.chatscreen-turn-card{display:flex;flex-direction:column;border-radius:8px;padding:1rem 1.1rem;font-size:.88rem;line-height:1.55;position:relative;box-sizing:border-box}.chatscreen-turn-card.interviewer{background:#0f172a;border:1px solid rgba(56,189,248,.2);border-left:3px solid #38bdf8}.chatscreen-turn-card.candidate{background:#1e293b;border:1px solid rgba(255,255,255,.08);border-left:3px solid #10b981}.chatscreen-turn-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:.5rem}.chatscreen-speaker-info{display:flex;align-items:center;gap:.45rem;font-weight:700;font-size:.8rem}.chatscreen-speaker-info.interviewer{color:#38bdf8}.chatscreen-speaker-info.candidate{color:#34d399}.chatscreen-category-badge{font-size:.65rem;font-weight:800;letter-spacing:.04em;padding:1px 6px;border-radius:4px;background:#38bdf826;color:#38bdf8;text-transform:uppercase}.chatscreen-turn-body{color:#e2e8f0;word-break:break-word}.chatscreen-turn-body pre{background:#060911;padding:.75rem;border-radius:6px;overflow-x:auto;border:1px solid rgba(255,255,255,.06);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;margin:.6rem 0}.chatscreen-turn-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;background:#ffffff14;padding:1px 4px;border-radius:3px;font-size:.82rem}.chatscreen-turn-body ul{margin:.4rem 0;padding-left:1.25rem}.chatscreen-turn-body li{margin-bottom:.25rem}.chatscreen-eval-score-strip{display:flex;align-items:center;gap:.5rem;margin-top:.6rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.08);font-size:.75rem;color:#94a3b8}.chatscreen-eval-score-val{color:#38bdf8;font-weight:800}.chatscreen-input-dock{background:#0f172a;border-top:1px solid rgba(255,255,255,.08);padding:.75rem 1rem;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0}.chatscreen-dock-status{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#94a3b8}.chatscreen-turn-label{display:flex;align-items:center;gap:.35rem;font-weight:700;color:#cbd5e1}.chatscreen-turn-indicator-dot{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 6px #10b981}.chatscreen-turn-indicator-dot.waiting{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.chatscreen-textarea-row{display:flex;gap:.5rem;position:relative}.chatscreen-textarea{flex:1;background:#090d16;border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:.6rem .8rem;color:#f1f5f9;font-family:inherit;font-size:.85rem;line-height:1.4;resize:none;min-height:58px;outline:none;transition:border-color .15s ease}.chatscreen-textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 2px #38bdf826}.chatscreen-textarea:disabled{opacity:.6;cursor:not-allowed}.chatscreen-send-btn{background:#2563eb;border:none;color:#fff;border-radius:6px;padding:0 1rem;font-weight:700;font-size:.85rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.3rem;transition:background .15s}.chatscreen-send-btn:hover:not(:disabled){background:#1d4ed8}.chatscreen-send-btn:disabled{opacity:.5;cursor:not-allowed}.chatscreen-ide-pane{display:flex;flex-direction:column;height:100%;background:#070b14;overflow:hidden}.chatscreen-tab-bar{display:flex;align-items:center;justify-content:space-between;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);height:38px;padding:0 .5rem;flex-shrink:0}.chatscreen-tabs-left{display:flex;align-items:center;gap:2px}.chatscreen-file-tab{display:inline-flex;align-items:center;gap:.4rem;padding:0 .75rem;height:37px;background:transparent;border:none;border-top:2px solid transparent;color:#94a3b8;font-size:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;cursor:pointer;transition:all .15s ease}.chatscreen-file-tab:hover{color:#f1f5f9;background:#ffffff08}.chatscreen-file-tab.active{background:#070b14;color:#38bdf8;border-top:2px solid #38bdf8;font-weight:600}.chatscreen-tab-actions{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:#94a3b8}.chatscreen-editor-viewport{flex:1;display:flex;position:relative;overflow:hidden;background:#070b14}.chatscreen-gutter{width:44px;padding:.75rem .5rem .75rem 0;text-align:right;color:#94a3b866;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;line-height:1.5;-webkit-user-select:none;user-select:none;background:#060911;border-right:1px solid rgba(255,255,255,.05);box-sizing:border-box}.chatscreen-code-area{flex:1;background:transparent;border:none;color:#e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;line-height:1.5;padding:.75rem 1rem;resize:none;outline:none;tab-size:2;white-space:pre;overflow:auto;box-sizing:border-box}.chatscreen-accessory-bar{display:flex;align-items:center;gap:4px;background:#0b1120;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:4px 8px;overflow-x:auto;flex-shrink:0}.chatscreen-acc-btn{background:#1e293b;border:1px solid rgba(255,255,255,.08);color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;font-weight:700;padding:3px 8px;border-radius:4px;cursor:pointer;flex-shrink:0}.chatscreen-acc-btn:hover{background:#334155;color:#fff}.chatscreen-test-console{background:#0a0f1d;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;flex-shrink:0;transition:max-height .2s ease;max-height:240px}.chatscreen-test-console.minimized{max-height:38px;overflow:hidden}.chatscreen-console-header{display:flex;align-items:center;justify-content:space-between;padding:.4rem 1rem;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;-webkit-user-select:none;user-select:none}.chatscreen-console-title{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:700;color:#cbd5e1}.chatscreen-test-pass-chip{font-size:.7rem;font-weight:800;color:#10b981;background:#10b9811f;padding:1px 6px;border-radius:4px}.chatscreen-test-list{padding:.6rem 1rem;display:flex;flex-direction:column;gap:.45rem;overflow-y:auto;max-height:120px}.chatscreen-test-item{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.chatscreen-test-item.pass{color:#34d399}.chatscreen-test-latency{color:#64748b;font-size:.72rem}.chatscreen-console-footer{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#060911;border-top:1px solid rgba(255,255,255,.06)}.chatscreen-autosave-note{font-size:.72rem;color:#64748b;display:flex;align-items:center;gap:.3rem}.chatscreen-console-actions{display:flex;align-items:center;gap:.6rem}.chatscreen-run-tests-btn{background:#0284c7;border:1px solid rgba(56,189,248,.3);color:#fff;font-size:.78rem;font-weight:700;padding:5px 12px;border-radius:5px;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all .15s}.chatscreen-run-tests-btn:hover:not(:disabled){background:#0369a1}.chatscreen-submit-turn-btn{background:#10b981;border:none;color:#fff;font-size:.78rem;font-weight:800;padding:6px 14px;border-radius:5px;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .15s}.chatscreen-submit-turn-btn:hover:not(:disabled){background:#059669}.chatscreen-submit-turn-btn:disabled,.chatscreen-run-tests-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1024px){.chatscreen-workstation{grid-template-columns:44% 56%}}@media(max-width:768px){.chatscreen-mobile-tabs{display:flex}.chatscreen-center-telemetry .chatscreen-coverage-pills{display:none}.chatscreen-workstation{display:flex;flex-direction:column}.chatscreen-stream-pane,.chatscreen-ide-pane{height:100%;width:100%}}.chatscreen-header-right{display:flex;align-items:center;gap:.6rem}.chatscreen-turn-fade{animation:chatscreenFadeIn .3s ease-out}.chatscreen-scenario-slide-down{animation:chatscreenSlideDown .4s cubic-bezier(.16,1,.3,1)}.chatscreen-turn-paragraph{margin:.4rem 0}.chatscreen-thinking-italic{opacity:.85;font-style:italic}.chatscreen-btn-compact{padding:2px 6px!important;font-size:.72rem!important}.chatscreen-test-collapse-toggle{color:#94a3b8;font-size:.8rem;cursor:pointer}.chatscreen-modal-actions{display:flex;gap:12px;margin-top:16px;justify-content:flex-end}.btn-danger-solid{background:#ef4444!important;border-color:#dc2626!important;color:#fff!important}.chatscreen-connecting-message{padding:2rem 1rem;text-align:center;color:#94a3b8;font-size:.88rem}@media(max-width:768px){.chatscreen-ide-pane.mobile-stream-hidden,.chatscreen-stream-pane.mobile-stream-hidden{display:none!important}}:root{font-family:system-ui,sans-serif;font-size:15px;color-scheme:light dark}body{margin:0}html,body,#root{height:100%}main{max-width:46rem;margin:0 auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid currentColor;padding-bottom:.5rem}h1{font-size:1.1rem;margin:0}.transport,.meta,small{opacity:.6;font-size:.8rem}.setup{display:flex;flex-direction:column;gap:.6rem}.setup label,.row label{display:flex;flex-direction:column;gap:.2rem}.row{display:flex;gap:.75rem}.row label{flex:1}input,select,textarea,button{font:inherit;padding:.4rem}.status{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8rem;opacity:.75}.status .coverage{flex-basis:100%}.transcript{display:flex;flex-direction:column;gap:.75rem;min-height:20rem;max-height:60vh;overflow-y:auto;padding:.5rem 0}.entry{border-left:3px solid currentColor;padding-left:.6rem}.entry.candidate{opacity:.85}.entry.partial .text{opacity:.55;font-style:italic}.entry.pending{opacity:.5;font-style:italic}.who{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;opacity:.6}.text{white-space:pre-wrap}.composer{display:flex;flex-direction:column;gap:.4rem}.composer textarea{min-height:5rem;resize:vertical}.composer-actions{display:flex;gap:.5rem;justify-content:flex-end}.abandon,.finished button{align-self:flex-start}.finished-actions{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.error{border:1px solid currentColor;padding:.5rem;font-size:.85rem}.tabs{display:flex;gap:.25rem}.tab{background:none;border:1px solid currentColor;opacity:.55;cursor:pointer}.tab.active{opacity:1;font-weight:600}.section{border:1px solid currentColor;padding:.4rem .6rem}.section>summary{cursor:pointer;font-size:.85rem;letter-spacing:.02em}.section-body{display:flex;flex-direction:column;gap:.6rem;padding-top:.6rem}.editor{display:flex;flex-direction:column;gap:.5rem}.editor-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem}.editor-row.question,.editor-row.slot{flex-direction:column;align-items:stretch;border-left:2px solid currentColor;padding-left:.5rem}.editor-row.slot{flex-direction:row;align-items:flex-end}.editor-row input,.editor-row select{min-width:4rem}.editor-row label{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem}label.check{flex-direction:row;align-items:center;gap:.3rem}.row-remove,.add{background:none;border:1px solid currentColor;cursor:pointer;opacity:.7;align-self:flex-start}.errors{margin:0;padding-left:1.1rem;font-size:.85rem}.preview{max-height:18rem;overflow:auto;font-size:.75rem;background:#7f7f7f14;padding:.5rem}.projects{border:1px solid currentColor;padding:.4rem .6rem;font-size:.85rem}.projects summary{cursor:pointer}.projects ul{margin:.5rem 0 0;padding-left:1rem;display:flex;flex-direction:column;gap:.5rem}.project-head{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.modes{display:flex;flex-wrap:wrap;gap:1rem;border:1px solid currentColor;padding:.5rem .6rem}.modes label.check{gap:.35rem;cursor:pointer}.mic{border:1px solid currentColor;background:none;cursor:pointer;opacity:.6}.mic.live{opacity:1;font-weight:600}.entry.speaking .who:after{content:" · speaking";opacity:.7}.voice-state{display:flex;align-items:center;gap:.4rem;font-size:.8rem;opacity:.75}.voice-state .dot{width:.55rem;height:.55rem;border-radius:50%;border:1px solid currentColor}.voice-state.candidate .dot,.voice-state.interviewer .dot{background:currentColor}.voice-state.candidate,.voice-state.interviewer{opacity:1}.voice-state.muted{opacity:.9}.voice-state.thinking .dot{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{background:currentColor}}.stage,.lobby{--ink: #f2f3f7;--dim: #8d92a6;--faint: #565c72;--edge: rgba(255, 255, 255, .09);--pane: rgba(255, 255, 255, .045);--accent: #8ea2ff;--live: #ffc46b;--alarm: #ff8a8a;position:fixed;inset:0;color:var(--ink);background:radial-gradient(120% 80% at 50% -10%,#1e2340 0%,transparent 60%),radial-gradient(90% 70% at 85% 110%,#241f33 0%,transparent 55%),#0b0c12;font-family:system-ui,sans-serif}.stage{overflow:clip}.lobby{overflow-y:auto}.stage *,.lobby *{box-sizing:border-box}.stage.connecting{display:grid;place-items:center;color:var(--dim)}.room{position:absolute;inset:0;transition:right .22s cubic-bezier(.32,.72,0,1)}@media(min-width:62rem){.stage.with-panel .room{right:25rem}}.rail{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;font-size:.8rem;letter-spacing:.02em;color:var(--dim);-webkit-user-select:none;user-select:none;z-index:3}.rail .here{text-transform:uppercase;letter-spacing:.09em;font-size:.7rem}.rail .here em{font-style:normal;color:var(--faint)}.rail .clock{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--ink)}.rail .clock.low{color:var(--live)}.rail .strikes{border:1px solid rgba(255,138,138,.35);color:var(--alarm);border-radius:999px;padding:.1rem .55rem;font-size:.7rem}.floor{position:absolute;inset:0;display:grid;place-items:center;-webkit-user-select:none;user-select:none}.interviewer-tile{display:flex;flex-direction:column;align-items:center;gap:1.1rem;transform:translateY(-3vh)}.presence{position:relative;display:grid;place-items:center;width:15rem;height:15rem}.interviewer-tile .avatar{position:relative;width:15rem;height:15rem;border-radius:50%;overflow:hidden;background:#181a20;box-shadow:0 0 0 1px #ffffff14}.interviewer-tile .avatar video{width:100%;height:100%;object-fit:cover;display:block}.interviewer-tile.has-video.speaking .avatar{box-shadow:0 0 0 1px #ffffff24,0 0 0 6px #78a0ff2e}.presence .ring,.presence .disc{grid-area:1 / 1;border-radius:50%}.presence .ring{width:100%;height:100%;border:1px solid var(--accent);transition:transform 90ms linear,opacity 90ms linear}.presence .ring.inner{width:74%;height:74%}.presence .disc{width:54%;height:54%;display:grid;place-items:center;font-size:2.4rem;font-weight:300;letter-spacing:.06em;color:var(--ink);background:linear-gradient(160deg,#333a5e,#1b1e30);box-shadow:inset 0 1px #ffffff1f}.interviewer-tile.thinking .presence .ring.inner{animation:breathe 2.4s ease-in-out infinite}@keyframes breathe{50%{opacity:.65}}.interviewer-tile .identity{display:flex;flex-direction:column;align-items:center;gap:.2rem}.interviewer-tile .name{font-size:1.05rem}.interviewer-tile .org{font-size:.8rem;color:var(--dim)}.camera-off{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);border:1px solid var(--edge);border-radius:999px;padding:.25rem .7rem}.self{position:absolute;right:1.5rem;bottom:7.5rem;z-index:2}.candidate-tile{position:relative;width:15rem;aspect-ratio:4 / 3;border-radius:.9rem;overflow:hidden;background:#14151d;border:1px solid var(--edge);box-shadow:0 1.4rem 3rem #00000073;transition:border-color .14s ease}.candidate-tile.talking{border-color:#8ea2ffbf}.gaze-badge{position:absolute;top:.5rem;right:.5rem;font-size:.65rem;font-weight:700;padding:.15rem .45rem;border-radius:9999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:inline-flex;align-items:center;gap:.25rem;z-index:5;letter-spacing:.02em;transition:all .2s ease}.gaze-badge.lens{background:#16a34ad9;color:#fff;border:1px solid rgba(74,222,128,.4)}.gaze-badge.screen{background:#2563ebd9;color:#fff;border:1px solid rgba(96,165,250,.4)}.gaze-badge.offaxis{background:#d97706d9;color:#fff;border:1px solid rgba(251,191,36,.4)}.candidate-tile video,.lobby-preview video{width:100%;height:100%;object-fit:cover;display:block;transform:scaleX(-1)}.camera-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;color:var(--dim);font-size:.78rem;text-align:center;padding:.75rem}.disc.small{width:3.4rem;height:3.4rem;border-radius:50%;display:grid;place-items:center;font-size:1rem;color:var(--ink);background:linear-gradient(160deg,#333a5e,#1b1e30)}.tile-label{position:absolute;left:.55rem;bottom:.5rem;display:flex;align-items:center;gap:.3rem;font-size:.72rem;padding:.15rem .5rem;border-radius:.4rem;background:#0000008c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.stage-foot{position:absolute;left:50%;bottom:6.5rem;transform:translate(-50%);width:min(46rem,calc(100vw - 20rem));display:flex;flex-direction:column;align-items:center;gap:.5rem}.captions{width:100%;display:flex;flex-direction:column;gap:.35rem;text-align:center}.caption{margin:0;font-size:1.02rem;line-height:1.5}.caption .who{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;color:var(--faint);margin-bottom:.2rem}.caption.live{color:var(--dim);font-style:italic}.caption.pending{color:var(--faint);letter-spacing:.3em}.stage .voice-state{color:var(--dim);opacity:1}.stage .voice-state.interviewer .dot{background:var(--live);border-color:var(--live)}.stage .voice-state.muted{color:var(--alarm)}.controls{position:absolute;left:50%;bottom:1.5rem;transform:translate(-50%);display:flex;align-items:center;gap:.4rem;padding:.45rem;border-radius:999px;background:#12131cd1;border:1px solid var(--edge);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1rem 2.5rem #00000080;z-index:4;-webkit-user-select:none;user-select:none}.control{display:inline-flex;align-items:center;gap:.4rem;border:0;border-radius:999px;padding:.55rem .95rem;font:inherit;font-size:.82rem;color:var(--ink);background:transparent;cursor:pointer;transition:background .13s ease,color .13s ease}.control:hover:not(:disabled){background:#ffffff12}.control:disabled{opacity:.4;cursor:default}.control.live{background:#8ea2ff29;color:#cdd6ff}.control.off{background:#ff8a8a24;color:var(--alarm)}.control.end{margin-left:.3rem;background:#ff8a8a29;color:var(--alarm)}.control.end:hover{background:#ff8a8a47}.control.primary{background:var(--accent);color:#12142a;font-weight:600;padding:.7rem 1.4rem}.control.primary:hover{background:#a4b4ff}.panel{position:absolute;top:0;right:0;bottom:0;width:min(25rem,90vw);display:flex;flex-direction:column;gap:.6rem;padding:1rem;background:#0c0d14ed;border-left:1px solid var(--edge);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(100%);visibility:hidden;transition:transform .22s cubic-bezier(.32,.72,0,1),visibility 0s linear .22s;z-index:5}.panel.open{transform:translate(0);visibility:visible;transition:transform .22s cubic-bezier(.32,.72,0,1)}.panel-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--edge);padding-bottom:.5rem}.panel-head h2{margin:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--dim);font-weight:500}.panel-close{border:0;background:none;color:var(--dim);cursor:pointer;font:inherit;font-size:.78rem}.panel .transcript{flex:1;max-height:none;min-height:0}.panel .entry{border-left-color:var(--faint)}.panel .entry.interviewer{border-left-color:var(--accent)}.panel .who{color:var(--faint);opacity:1}.panel .composer textarea{width:100%;background:var(--pane);border:1px solid var(--edge);border-radius:.5rem;color:var(--ink);min-height:4.5rem}.panel .composer textarea::placeholder{color:var(--faint)}.panel .composer button{border:0;border-radius:.45rem;padding:.45rem 1rem;background:var(--accent);color:#12142a;font-weight:600;cursor:pointer}.panel .composer button:disabled{background:var(--pane);color:var(--faint);cursor:default}.panel .status,.panel .notes{color:var(--dim)}.panel .error{border-color:#ff8a8a66;color:var(--alarm);border-radius:.4rem}.guard{position:absolute;inset:0;display:grid;place-items:center;padding:2rem;background:#06070bdb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10}.guard-panel{max-width:26rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.85rem}.guard-panel h2{margin:0;font-size:1.3rem;font-weight:500}.guard-panel p{margin:0;color:var(--dim);line-height:1.55}.guard-note{font-size:.85rem;color:var(--faint)!important}.guard-count{font-size:.78rem;color:var(--alarm)!important}.lobby{display:grid;place-items:center;padding:2rem}.lobby-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:2rem;align-items:center;width:min(58rem,100%)}.lobby-preview{position:relative;aspect-ratio:4 / 3;border-radius:1rem;overflow:hidden;background:#14151d;border:1px solid var(--edge);box-shadow:0 1.5rem 3.5rem #00000080}.lobby-toggle{position:absolute;left:50%;bottom:.9rem;transform:translate(-50%);border:1px solid var(--edge);border-radius:999px;padding:.4rem .9rem;font:inherit;font-size:.78rem;color:var(--ink);background:#0000008c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer}.lobby-detail{display:flex;flex-direction:column;gap:.55rem}.lobby-eyebrow{margin:0;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.lobby-detail h1{margin:0;font-size:1.7rem;font-weight:500;line-height:1.2}.lobby-org,.lobby-length{margin:0;color:var(--dim);font-size:.9rem}.lobby-length{color:var(--faint);font-size:.82rem}.lobby-devices{display:flex;flex-direction:column;gap:.6rem;margin:.7rem 0 .2rem;padding:.8rem 0;border-top:1px solid var(--edge);border-bottom:1px solid var(--edge);font-size:.82rem}.lobby-devices label{display:flex;flex-direction:column;gap:.25rem;color:var(--dim)}.lobby-devices select{background:var(--pane);border:1px solid var(--edge);border-radius:.4rem;color:var(--ink);padding:.4rem}.lobby-mic{display:flex;align-items:center;gap:.6rem;color:var(--dim)}.lobby-mic small{color:var(--faint);opacity:1}.lobby-gpu{display:flex;align-items:center;gap:.5rem;color:var(--faint)}.lobby-gpu .dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor;animation:pulse 1.2s ease-in-out infinite}.meter{display:inline-flex;gap:2px;align-items:flex-end;height:.9rem}.meter .bar{width:3px;height:100%;border-radius:1px;background:var(--pane);transition:background 80ms linear}.meter .bar.lit{background:var(--accent)}.lobby-terms{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.35rem;font-size:.82rem;line-height:1.5;color:var(--dim)}.lobby-terms strong{color:var(--ink);font-weight:500}.lobby-begin{align-self:flex-start;margin-top:.6rem}@media(max-width:46rem){.lobby-card{grid-template-columns:minmax(0,1fr)}.presence{width:11rem;height:11rem}.candidate-tile{width:9.5rem}.self{right:.9rem;bottom:6.5rem}.stage-foot{width:calc(100vw - 2rem);bottom:11rem}.controls{width:calc(100vw - 2rem);justify-content:center;flex-wrap:wrap;border-radius:1.1rem}.panel{width:100vw;max-width:100vw;border-left:none}}.dev-panel{position:fixed;top:.75rem;left:.75rem;z-index:60;min-width:13rem;padding:.6rem .75rem .7rem;border-radius:.6rem;background:#0a0c10e0;border:1px solid rgb(255 255 255 / 10%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;line-height:1.5;color:#e2e8f0d9;pointer-events:none}.dev-panel header{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.08em;font-size:.62rem;color:#94a3b8e5}.dev-panel header .dot{width:6px;height:6px;border-radius:50%;background:#facc15}.dev-panel dl{margin:0;display:grid;grid-template-columns:auto 1fr;column-gap:.9rem}.dev-panel .row{display:contents}.dev-panel dt{color:#94a3b8bf}.dev-panel dd{margin:0;text-align:right;color:#f87171}.dev-panel .row.good dd{color:#4ade80}.dev-panel .detail{margin:.5rem 0 0;padding-top:.45rem;border-top:1px solid rgb(255 255 255 / 8%);color:#94a3b8e5;max-width:18rem}.dev-panel .detail.muted{border-top:0;padding-top:.15rem;color:#64748bcc}.app-main-centered{text-align:center;padding:80px 20px}.app-token-notice-card{max-width:520px;margin:0 auto;padding:28px;border:1px solid #dc2626;border-radius:10px;background:#fef2f2}.app-token-notice-title{color:#991b1b;margin:0 0 8px}.app-token-notice-body{color:#7f1d1d;font-size:14px;line-height:1.4}.app-token-notice-action{margin-top:18px}.camera-placeholder-chat{background:var(--surface-container-high, #1e293b)}.lobby-chat-title{font-weight:600}.lobby-chat-subtitle{opacity:.8}.guard-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px;width:100%}.presence-rings{grid-area:1 / 1;width:100%;height:100%;overflow:visible;pointer-events:none}
