:root{color-scheme:dark;font-family:Segoe UI,system-ui,sans-serif}body{margin:0;color:var(--text, #eaeaea)}.app-page{background:var(--bg, #1e1e1e)}.countdown-page{background:transparent;overflow:hidden}.app-shell{padding:16px 20px;display:flex;flex-direction:column;gap:12px;height:100vh;box-sizing:border-box}.loader{display:flex;gap:8px}.loader input{flex:1;padding:8px 10px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--input, #2a2a2a);color:inherit;font-size:14px}.loader button{padding:8px 16px;border:none;border-radius:6px;background:var(--accent, #3b82f6);color:var(--text-on-accent, white);font-size:14px;cursor:pointer}.loader button:disabled{opacity:.6;cursor:default}.error{margin:0;padding:10px 12px;border-radius:6px;background:var(--danger-bg, #402022);border:1px solid var(--danger-line, #7f1d1d);color:var(--danger-text, #fca5a5);font-size:14px;line-height:1.4}.app-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.app-pane{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.setup-pane{display:flex;flex-direction:column;gap:12px}.setup-loaded{margin:0;color:var(--text-3, #a0a6ad);font-size:14px}.prompter-pane{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.overlay.in-pane{height:auto;flex:1;min-height:0}.transport{display:flex;flex-direction:column;gap:8px}.transport-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.transport-buttons{grid-column:2;display:flex;align-items:center;gap:8px}.transport .rehearse-link{grid-column:1;justify-self:start;min-width:0;width:auto;height:auto;display:inline;padding:0;border:0;border-radius:2px;background:none;font:inherit;font-size:13px;color:var(--link, #7fb2ff);text-align:left;cursor:pointer}.transport .rehearse-link:hover:not(:disabled){color:var(--link-hover, #a6ccff);text-decoration:underline}.transport .rehearse-link:focus-visible{outline:2px solid var(--focus, #7fb2ff);outline-offset:2px}.transport .rehearse-link:disabled{color:var(--text-3, #6b6b6b);cursor:default}.transport .rehearse-link.listening{color:var(--following, #4ade80);font-weight:600}.transport-buttons button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--surface, #2a2a2a);color:inherit;cursor:pointer}.transport-buttons button svg{display:block;width:18px;height:18px}.transport-buttons button:disabled{opacity:.45;cursor:default}.transport-buttons button.record:not(:disabled){background:var(--record-deep, #b91c1c);border-color:var(--record-deep, #b91c1c);color:var(--text, #fff)}.transport-state{grid-column:3;justify-self:start;min-width:0;margin-left:12px;font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-3, #9a9a9a)}.transport-state.phase-recording{color:var(--record, #f87171);font-weight:600}.transport-state.phase-paused{color:var(--paused, #fbbf24);font-weight:600}.transport-error{margin:0;padding:8px 10px;border-radius:6px;background:var(--danger-bg, #402022);border:1px solid var(--danger-line, #7f1d1d);color:var(--danger-text, #fca5a5);font-size:13px;line-height:1.4}.transport-saved{margin:0;font-size:12px;color:var(--text-3, #9a9a9a);word-break:break-all}.transport-saved .link{padding:0;border:0;background:none;font:inherit;color:var(--link, #7fb2ff);text-decoration:underline;cursor:pointer;white-space:nowrap;word-break:normal}.transport-saved .link:hover{color:var(--link-hover, #a6ccff)}.transport-saved .link:focus-visible{outline:2px solid var(--focus, #7fb2ff);outline-offset:2px;border-radius:2px}.recovery{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:6px;background:var(--warn-bg, #3a3320);border:1px solid var(--warn-line, #7c5e10)}.recovery h2{margin:0;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--warn-text, #fcd34d)}.recovery-lede{margin:0;font-size:13px;line-height:1.4;color:var(--warn-text-2, #f3e2b4)}.recovery-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.recovery-offer{display:flex;flex-direction:column;gap:6px;padding:10px;border-radius:6px;background:color-mix(in srgb,var(--shadow, #000000) 25%,transparent)}.recovery-what{display:flex;align-items:baseline;gap:10px;font-size:14px}.recovery-when{font-weight:600}.recovery-size{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums;color:var(--warn-text-3, #d4c48f)}.recovery-actions{display:flex;gap:8px}.recovery button{padding:6px 14px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--surface, #2a2a2a);color:inherit;font-size:14px;cursor:pointer}.recovery button:disabled{opacity:.45;cursor:default}.recovery button.recover:not(:disabled){background:var(--accent, #b45309);border-color:var(--accent, #b45309);color:var(--text-on-accent, #fff);font-weight:600}.recovery button.delete:not(:disabled){color:var(--danger-text, #fca5a5)}.recovery button.delete.armed:not(:disabled){background:var(--danger-panel, #7f1d1d);border-color:var(--danger-line, #b91c1c);color:var(--text, #fff);font-weight:600}.recovery-note{margin:0;font-size:11px;line-height:1.4;color:var(--warn-text-3, #bdae82);word-break:break-all}.recovery-saved{margin:0;font-size:13px;color:var(--following, #86efac);word-break:break-all}.recovery-error{margin:0;padding:8px 10px;border-radius:6px;background:var(--danger-bg, #402022);border:1px solid var(--danger-line, #7f1d1d);color:var(--danger-text, #fca5a5);font-size:13px;line-height:1.4;word-break:break-word}.voice{display:flex;flex-direction:column;gap:8px}.voice-row{display:flex;align-items:center;gap:8px}.voice-state{margin-left:auto;font-size:13px;color:var(--text-3, #9a9a9a)}.voice-state.awaiting{color:var(--paused, #fbbf24);font-weight:600}.voice-toggle{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.voice-collision{margin:0;padding:8px 10px;border-radius:6px;background:var(--danger-bg, #402022);border:1px solid var(--danger-line, #7f1d1d);color:var(--danger-text, #fca5a5);font-size:13px;line-height:1.4}.voice-phrases{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.voice-phrases.idle{opacity:.55}.voice-phrases code,.voice-note code{padding:2px 6px;border-radius:4px;background:var(--input, #1c1c1c);border:1px solid var(--line, #333);font-size:12px;color:var(--text-2, #d4d4d4)}.voice-note{margin:0;font-size:12px;line-height:1.5;color:var(--text-3, #9a9a9a)}.modal-backdrop{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;background:color-mix(in srgb,var(--shadow, #000000) 60%,transparent)}.modal{display:flex;flex-direction:column;width:min(560px,100%);max-height:100%;border-radius:8px;background:var(--surface, #1e1e1e);border:1px solid var(--line, #333);box-shadow:0 12px 32px color-mix(in srgb,var(--shadow, #000000) 50%,transparent);outline:none}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line, #333)}.modal-header h2{margin:0;font-size:15px;font-weight:600}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--surface, #2a2a2a);color:inherit;font:inherit;font-size:13px;line-height:1;cursor:pointer}.modal-close:hover{background:var(--surface-raised, #333)}.modal-body{min-height:0;padding:12px;overflow-y:auto}.settings{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:6px;background:var(--surface, #252525);border:1px solid var(--line, #333)}.modal .settings{padding:0;border:none;background:none;border-radius:0}.tab-strip{display:flex;gap:4px;border-bottom:1px solid var(--line, #333)}.tab-button{padding:6px 12px;border:none;border-bottom:2px solid transparent;border-radius:0;background:none;color:var(--text-3, #9a9a9a);font:inherit;font-size:13px;cursor:pointer}.tab-button:hover{color:var(--text, #eaeaea)}.tab-button.active{color:var(--text, #eaeaea);border-bottom-color:var(--accent-line, #60a5fa)}.settings-screen{display:flex;flex-direction:column;gap:8px}.settings-screen h2{margin:0;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3, #9a9a9a)}.settings>.settings-screen+.settings-screen{margin-top:8px}.settings-note{margin:0;font-size:12px;line-height:1.5;color:var(--text-3, #9a9a9a)}.settings-row{display:grid;grid-template-columns:132px 1fr auto;align-items:center;gap:10px;font-size:14px}.settings-row input[type=number],.settings-row input[type=text]{padding:6px 8px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--input, #2a2a2a);color:inherit;font-size:14px;min-width:0}.settings-row input[readonly]{color:var(--text-3, #9a9a9a)}.settings-row input[type=range]{min-width:0;accent-color:var(--accent-line, #60a5fa)}.settings-unit{min-width:56px;font-size:12px;color:var(--text-3, #9a9a9a)}.settings-ack{align-self:center;font-size:12px;color:var(--following, #86efac)}.settings-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.settings-actions button,.settings-row button{padding:6px 10px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--surface, #2a2a2a);color:inherit;font:inherit;font-size:13px;cursor:pointer}.settings-actions button:hover:not(:disabled),.settings-row button:hover:not(:disabled){background:var(--surface-raised, #333)}.settings-actions button:disabled,.settings-row button:disabled{opacity:.5;cursor:default}.settings-actions .settings-reset{margin-left:auto;color:var(--danger-text, #fca5a5);border-color:var(--danger-line, #7f1d1d)}.hotkey-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.hotkey-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px;font-size:14px}.hotkey-label{color:var(--text-2, #d4d4d4)}.hotkey-key{min-width:150px;padding:5px 10px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--input, #1c1c1c);color:var(--text-2, #d4d4d4);font-family:Cascadia Mono,Consolas,monospace;font-size:12px;text-align:center;cursor:pointer}.hotkey-key:hover{border-color:var(--line-hover, #6b7178)}.hotkey-key.listening{border-color:var(--focus, #5c9ded);color:var(--text-on-accent, #cfe2ff);background:color-mix(in srgb,var(--accent, #2f6fd0) 22%,transparent)}.device-row{display:grid;grid-template-columns:132px 1fr;align-items:center;gap:10px;font-size:14px}.device-row select{padding:6px 8px;border:1px solid var(--line-strong, #444);border-radius:6px;background:var(--input, #2a2a2a);color:inherit;font-size:14px;min-width:0}.device-row select:disabled{opacity:.6;cursor:default}.device-status{margin:0;font-size:13px;color:var(--text-3, #9a9a9a)}.device-notice{margin:0;padding:8px 10px;border-radius:6px;background:var(--warn-bg, #3a3320);border:1px solid var(--warn-line, #7c5e10);color:var(--warn-text, #fcd34d);font-size:13px;line-height:1.4}.overlay{position:relative;height:100vh;overflow:hidden}.overlay-placeholder{position:absolute;top:33%;left:0;right:0;margin:0;text-align:center;color:var(--prompter-chrome, #d0d0d0);font-size:18px;text-shadow:0 1px 4px color-mix(in srgb,var(--prompter-shadow, #000000) 95%,transparent)}.overlay-scroll{position:absolute;inset:0;overflow-y:hidden;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain}.overlay-scroll.scrollable{overflow-y:auto}.overlay-scroll::-webkit-scrollbar{width:10px}.overlay-scroll::-webkit-scrollbar-thumb{border-radius:5px;background:color-mix(in srgb,var(--prompter-hairline, #ffffff) 22%,transparent)}.overlay-scroll.scrollable:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--prompter-hairline, #ffffff) 40%,transparent)}.overlay-block{padding:0 32px;box-sizing:border-box}.overlay-line{margin:0;font-size:var(--overlay-font-size, 30px);line-height:1.35;text-align:center;text-shadow:0 1px 4px color-mix(in srgb,var(--prompter-shadow, #000000) 95%,transparent),0 0 2px color-mix(in srgb,var(--prompter-shadow, #000000) 90%,transparent)}.word,.gap{color:var(--prompter-word, #ffffff);transition:color 90ms ease}.word.spoken,.gap.spoken{color:var(--prompter-spoken, #7f7f7f)}.word.current{color:var(--prompter-current, #ffd24a);text-shadow:0 0 10px color-mix(in srgb,var(--prompter-current, #ffd24a) 55%,transparent),0 1px 4px color-mix(in srgb,var(--prompter-shadow, #000000) 95%,transparent)}.note{color:var(--prompter-note, #9aa0a6);font-size:.72em;font-style:italic}.overlay-status{position:absolute;left:10px;bottom:8px;display:flex;align-items:center;gap:8px;pointer-events:none;font-size:12px;font-weight:700;letter-spacing:.1em}.status-mode{padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--prompter-shadow, #000000) 55%,transparent);color:var(--prompter-status, #d8dde3);text-shadow:0 1px 3px color-mix(in srgb,var(--prompter-shadow, #000000) 95%,transparent)}.status-mode.unavailable{color:var(--prompter-status-quiet, #9aa2ab)}.status-offscript{padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--prompter-offscript-panel, #b45309) 90%,transparent);color:var(--prompter-offscript, #fff7ed);text-shadow:0 1px 3px color-mix(in srgb,var(--prompter-shadow, #000000) 90%,transparent)}.overlay-topright{position:absolute;z-index:10;top:8px;right:10px;display:flex;align-items:center;gap:8px;pointer-events:none}.overlay-back-to-top{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid color-mix(in srgb,var(--prompter-hairline, #ffffff) 18%,transparent);border-radius:6px;background:color-mix(in srgb,var(--prompter-shadow, #000000) 60%,transparent);color:var(--prompter-chrome, #d0d0d0);cursor:pointer;opacity:.55;pointer-events:auto;transition:opacity .12s ease-out}.overlay-back-to-top:hover,.overlay-back-to-top:focus-visible{opacity:1;color:var(--prompter-chrome-hover, #fff)}.overlay-back-to-top svg{display:block;width:18px;height:18px}.overlay-recording{position:absolute;top:8px;right:10px;display:flex;align-items:center;gap:8px;padding:4px 10px;border-radius:6px;background:color-mix(in srgb,var(--prompter-shadow, #000000) 60%,transparent);pointer-events:none;font-size:15px;font-weight:700;letter-spacing:.1em;font-variant-numeric:tabular-nums;text-shadow:0 1px 3px color-mix(in srgb,var(--prompter-shadow, #000000) 95%,transparent)}.overlay-topright .overlay-recording{position:static;top:auto;right:auto}.rec-dot{width:12px;height:12px;border-radius:50%;background:currentColor}.overlay-recording.phase-recording{color:var(--prompter-recording, #ff4d4d)}.overlay-recording.phase-recording .rec-dot{animation:rec-pulse 1.4s ease-in-out infinite}.overlay-recording.phase-paused{color:var(--prompter-paused, #fbbf24)}.overlay-recording.phase-starting,.overlay-recording.phase-stopping{color:var(--prompter-status, #d8dde3)}.rec-time{color:var(--prompter-rec-time, #ffffff);font-weight:600}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.25}}.overlay-confirm{position:absolute;z-index:20;left:50%;top:12%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 18px;border-radius:8px;border:2px solid color-mix(in srgb,var(--prompter-confirm, #fbbf24) 90%,transparent);background:color-mix(in srgb,var(--prompter-shadow, #000000) 75%,transparent);pointer-events:none;white-space:nowrap;text-shadow:0 1px 4px color-mix(in srgb,var(--prompter-shadow, #000000) 90%,transparent)}.confirm-question{font-size:17px;font-weight:700;letter-spacing:.06em;color:var(--prompter-confirm, #fbbf24)}.confirm-phrase{font-size:14px;font-weight:600;color:var(--prompter-confirm-phrase, #f5f5f5)}.countdown{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;background:radial-gradient(circle at center,color-mix(in srgb,var(--countdown-shadow, #000000) 62%,transparent),color-mix(in srgb,var(--countdown-shadow, #000000) 45%,transparent) 32%,color-mix(in srgb,var(--countdown-shadow, #000000) 0%,transparent) 68%)}.countdown-number{font-size:min(60vh,60vw);font-weight:800;line-height:1;color:var(--countdown-number, #ffffff);font-variant-numeric:tabular-nums;text-shadow:0 0 40px color-mix(in srgb,var(--countdown-shadow, #000000) 95%,transparent),0 6px 18px var(--countdown-shadow, #000000);animation:countdown-pop .9s ease-out both}@keyframes countdown-pop{0%{transform:scale(1.5);opacity:0}12%{transform:scale(1);opacity:1}to{transform:scale(.92);opacity:.75}}:root{--cool-950: oklch(.13 .01 262);--cool-900: oklch(.16 .01 262);--cool-850: oklch(.185 .01 262);--cool-800: oklch(.22 .01 262);--cool-750: oklch(.24 .01 262);--cool-700: oklch(.3 .01 262);--cool-600: oklch(.4 .012 262);--cool-500: oklch(.52 .01 262);--cool-400: oklch(.62 .01 262);--cool-300: oklch(.75 .008 262);--cool-200: oklch(.86 .005 262);--cool-250: oklch(.9 .005 262);--cool-100: oklch(.94 .005 262);--cool-050: oklch(.98 .003 262);--cool-025: oklch(.995 .002 262);--signal-500: oklch(.78 .17 128);--signal-600: oklch(.7 .155 128);--signal-700: oklch(.62 .14 128);--signal-ink: oklch(.18 .05 128);--signal-800: oklch(.42 .09 128);--signal-850: oklch(.34 .075 128);--rec-500: oklch(.62 .15 25);--warn-500: oklch(.78 .15 74);--bg: var(--cool-950);--stage: var(--cool-900);--input: var(--cool-850);--surface: var(--cool-800);--surface-raised: var(--cool-750);--line: var(--cool-750);--line-strong: var(--cool-700);--line-hover: var(--cool-500);--text: var(--cool-200);--text-2: var(--cool-300);--text-3: var(--cool-400);--text-on-accent: var(--signal-ink);--accent: var(--signal-500);--accent-hover: var(--signal-600);--on-accent-hover: var(--signal-ink);--focus: var(--signal-500);--accent-line: var(--accent);--link: var(--accent-hover);--link-hover: var(--text);--record-deep: var(--rec-500);--record: color-mix(in srgb, var(--rec-500) 70%, var(--text));--paused: var(--warn-500);--following: var(--accent);--record-panel: color-mix(in srgb, var(--record-deep) 22%, var(--bg));--paused-panel: color-mix(in srgb, var(--paused) 20%, var(--bg));--following-panel: color-mix(in srgb, var(--following) 18%, var(--bg));--warn-bg: color-mix(in srgb, var(--paused) 18%, var(--bg));--warn-line: color-mix(in srgb, var(--paused) 55%, transparent);--warn-text: var(--paused);--warn-text-2: color-mix(in srgb, var(--paused) 55%, var(--text));--warn-text-3: color-mix(in srgb, var(--paused) 35%, var(--text-3));--danger-bg: color-mix(in srgb, var(--rec-500) 22%, transparent);--danger-text: color-mix(in srgb, var(--rec-500) 40%, var(--text));--danger-line: color-mix(in srgb, var(--danger-text) 40%, transparent);--danger-panel: color-mix(in srgb, var(--danger-text) 20%, var(--bg));--shadow: #000000;--site-bg: var(--cool-050);--site-surface: var(--cool-025);--site-surface-2: var(--cool-100);--site-line: var(--cool-250);--site-line-strong: var(--cool-300);--site-text: var(--cool-750);--site-text-2: var(--cool-600);--site-text-3: var(--cool-500);--site-accent: var(--signal-500);--site-accent-hover: var(--signal-600);--site-on-accent: var(--signal-ink);--site-focus: var(--signal-700);--site-link: var(--signal-800);--site-link-hover: var(--signal-850);--site-eyebrow: var(--signal-800);--site-bar-bg: color-mix(in srgb, var(--cool-050) 92%, transparent);--site-mock-bg: var(--cool-900);--site-mock-dim: var(--cool-600);--site-mock-current: var(--cool-050);--site-mock-bar: var(--signal-500);--site-mock-line: var(--cool-750);--site-mock-lit-bg: color-mix(in srgb, var(--signal-500) 14%, transparent);--site-mock-rec: var(--rec-500);--site-mock-signal: var(--signal-500);--site-mock-label: var(--cool-200);--site-mock-quiet: var(--cool-400);--site-mock-well: var(--cool-800);--site-mock-shadow: color-mix(in srgb, var(--cool-800) 55%, transparent)}.web-page{background:var(--bg)}.web-page:has(.overlay),.web-page:has(.web-room){overflow:hidden}.web-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.web-room{height:100vh;box-sizing:border-box;padding:0 24px 24px;display:flex;flex-direction:column;overflow:hidden}.web-room-head{height:56px;flex:none;display:flex;align-items:center;justify-content:space-between}.web-room-mark{display:flex;align-items:center}.web-room-how{font-size:13px;color:var(--text-3);text-decoration:none}.web-room-how:hover{color:var(--text);text-decoration:underline}.web-head-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:36px;height:36px;border:none;border-radius:999px;background:transparent;color:var(--text-3);font-family:inherit;font-size:16px;line-height:1;text-decoration:none;cursor:pointer}.web-head-button:hover{background:var(--surface-raised);color:var(--text)}.web-room-columns{flex:1;min-height:0;display:flex;gap:24px;box-sizing:border-box}.web-room-stage{flex:none;width:420px;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px}.web-room-preview{flex:none;width:100%;height:236px;display:flex;align-items:center;justify-content:center;container-type:size}.web-stage{align-self:stretch;flex:1;min-width:0;position:relative;border-radius:16px;background:var(--stage);overflow:hidden;display:flex;align-items:center;justify-content:center}.web-stage.has-frame{align-self:center;flex:none;width:min(100cqw,100cqh * var(--frame, 1.7778));height:min(100cqh,100cqw / var(--frame, 1.7778))}.web-stage-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:block}.web-stage-well{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;box-sizing:border-box;text-align:center;background:var(--stage)}.web-stage-well.is-camera-off,.web-stage-well.is-opening{background:var(--input)}.web-stage-avatar{display:flex;align-items:center;justify-content:center;width:96px;height:96px;border-radius:999px;background:var(--surface-raised);color:var(--text-3)}.web-stage-avatar svg{width:40px;height:40px}.web-stage-note{margin:0;flex:none;align-self:stretch;text-align:center;color:var(--paused);font-size:13px}.web-stage-glyph{color:var(--text-3);display:block}.web-stage-glyph svg{width:48px;height:48px}.web-stage-says{margin:0;color:var(--text);font-size:17px;font-weight:600}.web-stage-detail{margin:0;max-width:380px;color:var(--text-3);font-size:13px;line-height:1.5}.web-stage-grant{margin-top:4px;padding:9px 20px;border:none;border-radius:999px;background:var(--accent);color:var(--text-on-accent);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}.web-stage-grant:hover{background:var(--accent-hover);color:var(--on-accent-hover)}.web-stage-retry{margin-top:4px;padding:8px 18px;border:1px solid var(--line-strong);border-radius:999px;background:transparent;color:var(--text-2);font-family:inherit;font-size:13px;cursor:pointer}.web-stage-retry:hover{border-color:var(--line-hover);color:var(--text)}.web-stage-dots{display:flex;gap:6px}.web-stage-dots span{width:8px;height:8px;border-radius:999px;background:var(--text-3);animation:web-stage-pulse 1.2s ease-in-out infinite}.web-stage-dots span:nth-child(2){animation-delay:.15s}.web-stage-dots span:nth-child(3){animation-delay:.3s}@keyframes web-stage-pulse{0%,to{opacity:.3}50%{opacity:1}}.web-stage-foot{position:absolute;left:0;right:0;bottom:0;padding:24px 16px 12px;display:flex;align-items:center;gap:10px;background:linear-gradient(to top,color-mix(in srgb,var(--shadow) 55%,transparent),transparent);pointer-events:none}.web-stage-meter{display:flex;align-items:flex-end;gap:2px;height:14px}.web-stage-bar{width:3px;height:100%;border-radius:999px;background:var(--text-3)}.web-stage-bar.is-lit{background:var(--following)}.web-stage-label{color:var(--text-2);font-size:12px;font-weight:500}.web-stage-controls{position:absolute;left:0;right:0;bottom:12px;display:flex;align-items:center;justify-content:center;gap:12px}.web-room-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;min-height:0}.web-room-start{flex:none;padding:14px 20px;border:none;border-radius:8px;background:var(--accent);color:var(--text-on-accent);font-family:inherit;font-size:15px;font-weight:700;letter-spacing:.06em;cursor:pointer}.web-room-start:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent-hover)}.web-room-start:disabled{background:var(--surface-raised);color:var(--text-3);cursor:default}.web-room-privacy{flex:none;margin:0;color:var(--text-3);font-size:12px;line-height:1.5}.web-room-privacy a{color:var(--link);text-decoration:none}.web-room-privacy a:hover{color:var(--link-hover);text-decoration:underline}.web-script{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px;padding:20px;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.web-script-head{flex:none;display:flex;align-items:center;justify-content:flex-end;gap:12px}.web-script-doc{padding:6px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--input);color:var(--text-2);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.web-script-doc:hover{background:var(--surface-raised);color:var(--text)}.web-script-foot{flex:none;margin:0;display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--text-3);font-size:13px}.web-script-clear{flex:none;padding:0;border:none;background:transparent;color:var(--link);font-family:inherit;font-size:13px;cursor:pointer}.web-script-clear:hover{color:var(--link-hover)}.web-room-side .recovery{flex:none}.web-hint{margin:0;color:var(--text-3);font-size:12px;line-height:1.5}.web-script-box{flex:1;min-height:0;resize:none;padding:12px 14px;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:6px;background:var(--input);color:var(--text);font-family:inherit;font-size:14px;line-height:1.5}.web-script-box:focus{outline:none;border-color:var(--focus)}.web-page .modal-backdrop{position:fixed;z-index:30}.web-modal-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px;border-top:1px solid var(--line)}.web-modal-cancel{padding:9px 16px;border:1px solid var(--line-strong);border-radius:6px;background:var(--input);color:var(--text-2);font-family:inherit;font-size:14px;cursor:pointer}.web-modal-cancel:hover{background:var(--surface-raised);color:var(--text)}.web-modal-go{padding:9px 20px;border:none;border-radius:6px;background:var(--accent);color:var(--text-on-accent);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}.web-modal-go:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent-hover)}.web-modal-go:disabled{background:var(--surface-raised);color:var(--text-3);cursor:default}.web-doc-form{display:flex;flex-direction:column;gap:8px}.web-doc-form input{min-width:0;padding:9px 12px;box-sizing:border-box;border:1px solid var(--line-strong);border-radius:6px;background:var(--input);color:var(--text);font-family:inherit;font-size:14px}.web-doc-form input:focus{outline:none;border-color:var(--focus)}.web-error{margin:0;padding:10px 12px;border-radius:6px;background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger-text);font-size:14px}.web-settings{max-width:720px;margin:0 auto;padding:48px 24px;display:flex;flex-direction:column;gap:8px;min-height:100vh;box-sizing:border-box}.web-settings h1{margin:0;font-size:28px;font-weight:600;letter-spacing:-.01em}.web-settings h2{margin:20px 0 0;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.web-settings-head{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.web-settings-buttons{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px}.web-transfer-note{margin:0 0 4px;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.web-transfer-note li{font-size:13px;line-height:1.55;color:var(--text-3)}.web-transfer-note li strong{color:var(--text-2);font-weight:600}.web-transfer-file{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.web-transfer-link{display:flex;gap:8px;align-items:stretch;margin-top:8px}.web-setup-url{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--line-strong);border-radius:6px;background:var(--input);color:var(--text-2);font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.web-transfer-link button{padding:8px 16px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--text);font-family:inherit;font-size:13px;cursor:pointer}.web-transfer-link button:hover{background:var(--surface-raised)}.web-from-link{margin:8px 0 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:6px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text-on-accent);font-size:13px;line-height:1.55}.web-prompter-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--bg)}.web-prompter-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1);display:block}.web-prompter-scrim{position:absolute;inset:0;background:linear-gradient(to bottom,transparent calc(var(--web-backdrop-band-top, 26%) - 26%),color-mix(in srgb,var(--bg) var(--web-backdrop-band, 66%),transparent) var(--web-backdrop-band-top, 26%),color-mix(in srgb,var(--bg) var(--web-backdrop-band, 66%),transparent) var(--web-backdrop-band-bottom, 46%),transparent calc(var(--web-backdrop-band-bottom, 46%) + 26%)),color-mix(in srgb,var(--bg) var(--web-backdrop, 55%),transparent)}.web-prompter-top{position:fixed;top:44px;left:0;right:0;height:48px;z-index:15;display:flex;align-items:center;justify-content:space-between;padding:0 12px;box-sizing:border-box;transition:opacity .12s ease}.web-prompter-top.is-faded{opacity:.28;transition-duration:.4s}.web-prompter-top-left,.web-prompter-top-right{display:flex;align-items:center;gap:8px}.web-prompter-pill{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--text-2);font-family:inherit;font-size:13px;line-height:1;cursor:pointer}.web-prompter-pill:hover:not(:disabled){border-color:var(--line-hover);color:var(--text)}.web-prompter-pill:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.web-prompter-pill:disabled{border-color:color-mix(in srgb,var(--line) 55%,transparent);color:var(--text-3);cursor:default}.web-bar-dock{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:15;display:flex;flex-direction:column;align-items:center;gap:12px;transition:opacity .12s ease,background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.web-bar,.web-bar>*,.web-bar-dock>.web-chrome{transition:inherit}.web-bar{display:flex;align-items:center;gap:8px;height:72px;padding:0 12px;box-sizing:border-box;border:1px solid var(--line);border-radius:36px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px);box-shadow:0 8px 32px color-mix(in srgb,var(--shadow) 50%,transparent)}.web-bar-divider{flex:none;width:1px;height:32px;background:var(--line)}.web-bar>button,.web-bar .web-bar-menu-button,.web-circle{flex:none;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:999px;background:var(--surface-raised);color:var(--text-2);cursor:pointer}.web-bar button svg,.web-circle svg{display:block;width:20px;height:20px}.web-bar>button:not(.web-bar-record):not(.web-bar-pause):hover:not(:disabled),.web-bar .web-bar-menu-button:hover:not(:disabled),.web-circle:hover:not(:disabled){background:var(--line-strong);color:var(--text)}.web-bar button:disabled,.web-circle:disabled{background:color-mix(in srgb,var(--surface-raised) 55%,transparent);cursor:default}.web-bar button:disabled svg,.web-circle:disabled svg{opacity:.4}.web-bar button:focus-visible,.web-circle:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.web-bar>button.is-off,.web-circle.is-off{background:var(--record-deep);color:var(--text)}.web-bar>button.is-off:hover:not(:disabled),.web-circle.is-off:hover:not(:disabled){background:color-mix(in srgb,var(--record-deep) 82%,var(--text));color:var(--text)}.web-bar>.web-bar-record{width:64px;height:64px}.web-bar>.web-bar-record svg{width:24px;height:24px}.web-bar>.web-bar-record.look-no-script{background:var(--surface-raised);color:var(--text-3);box-shadow:0 0 0 2px color-mix(in srgb,var(--text-3) 45%,transparent)}.web-bar>.web-bar-record.look-ready,.web-bar>.web-bar-record.look-rolling,.web-bar>.web-bar-record.look-paused{background:var(--record-deep);color:var(--text)}.web-bar>.web-bar-record.look-ready{box-shadow:0 0 0 3px color-mix(in srgb,var(--record) 35%,transparent)}.web-bar>.web-bar-record:hover:not(:disabled){filter:brightness(1.16)}.web-bar>.web-bar-record.look-counting{background:color-mix(in srgb,var(--record-deep) 60%,var(--surface));color:var(--text);animation:web-bar-ring 1s ease-in-out infinite}.web-bar>.web-bar-record.look-rolling{animation:web-bar-ring 1.4s ease-in-out infinite}.web-bar>.web-bar-record.look-paused{box-shadow:0 0 0 3px color-mix(in srgb,var(--paused) 55%,transparent)}@keyframes web-bar-ring{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--record) 45%,transparent)}50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--record) 0%,transparent)}}.web-bar>.web-bar-pause{color:var(--paused)}.web-bar>.web-bar-pause:hover:not(:disabled){background:var(--line-strong)}.web-bar-elapsed{flex:none;display:flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:999px;background:var(--record-panel);color:var(--record);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.web-bar-elapsed.phase-paused{background:var(--paused-panel);color:var(--paused)}.web-bar-elapsed .rec-dot,.web-rolling .rec-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:web-rolling-pulse 1.4s ease-in-out infinite}.web-bar-elapsed.phase-paused .rec-dot,.web-bar-elapsed.phase-stopping .rec-dot,.web-rolling.phase-paused .rec-dot,.web-rolling.phase-stopping .rec-dot{animation:none}.web-bar-more{position:relative;flex:none}.web-bar-menu{position:absolute;right:0;bottom:calc(100% + 10px);z-index:1;min-width:248px;display:flex;flex-direction:column;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);box-shadow:0 8px 32px color-mix(in srgb,var(--shadow) 50%,transparent)}.web-bar-menu button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;height:36px;padding:0 10px;border:0;border-radius:8px;background:none;color:var(--text-2);font:inherit;font-size:13px;text-align:left;white-space:nowrap;cursor:pointer}.web-bar-menu button:hover:not(:disabled){background:color-mix(in srgb,var(--line-strong) 45%,transparent);color:var(--text)}.web-bar-menu button:disabled{color:var(--text-3);cursor:default}.web-bar-menu button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.web-bar-menu-key{color:var(--text-3);font-family:Cascadia Mono,Consolas,monospace;font-size:12px}.web-chrome{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;max-width:min(760px,92vw)}.web-chrome-error{padding:4px 10px;border-radius:6px;background:var(--danger-panel);color:var(--danger-text);font-size:13px}.web-off-strip{margin:0;max-width:60ch;padding:4px 10px;border-radius:6px;background:var(--paused-panel);color:var(--paused);font-size:13px;text-align:center}.web-chrome-saved{max-width:60ch;padding:4px 10px;border-radius:6px;background:var(--following-panel);color:var(--following);font-size:13px}.web-chrome-note{color:color-mix(in srgb,var(--following) 55%,var(--text-3))}.web-follow-state{color:var(--text-3);font-size:13px;letter-spacing:.04em}.web-bar-dock.is-faded{transition-duration:.4s}.web-bar-dock.is-faded .web-bar{background-color:color-mix(in srgb,var(--surface) 45%,transparent);border-color:transparent;box-shadow:none}.web-bar-dock.is-faded .web-bar>*,.web-bar-dock.is-faded .web-chrome{opacity:.28}.web-bar-dock.is-faded .web-bar>.web-bar-record{opacity:.6}.web-rolling{position:fixed;top:10px;right:12px;z-index:20;display:flex;align-items:center;gap:8px;padding:5px 10px;border:1px solid color-mix(in srgb,var(--record) 50%,transparent);border-radius:5px;background:var(--record-panel);color:var(--record);font-size:13px;font-weight:600;letter-spacing:.04em}.web-rolling.phase-paused{border-color:color-mix(in srgb,var(--paused) 50%,transparent);color:var(--paused)}.web-rolling .rec-dot{width:9px;height:9px}.web-rolling button{padding:2px 10px;border:1px solid color-mix(in srgb,var(--text) 35%,transparent);border-radius:4px;background:var(--record-deep);color:var(--text);font-size:12px;font-weight:600;cursor:pointer}.web-rolling .web-pause{background:color-mix(in srgb,var(--shadow) 35%,transparent);color:var(--paused)}.web-rolling button:disabled{color:color-mix(in srgb,var(--record) 55%,var(--text-3));cursor:default}.web-rolling .web-pause:disabled{color:color-mix(in srgb,var(--paused) 45%,var(--text-3))}@keyframes web-rolling-pulse{0%,to{opacity:1}50%{opacity:.35}}.device-grant{padding:2px 8px}.web-device-preview{display:flex;align-items:flex-start;gap:16px;margin-bottom:4px}.web-device-shot{position:relative;flex:none;width:240px;aspect-ratio:var(--frame, 16 / 9);border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--stage);display:flex;align-items:center;justify-content:center}.web-device-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.web-device-blank{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--text-3)}.web-device-blank svg{width:34px;height:34px}.web-device-format{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}.web-background-warning{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border-top:1px solid color-mix(in srgb,var(--paused) 55%,transparent);background:var(--paused-panel);color:var(--paused);font-size:13px;line-height:1.45}.web-page:has(.web-background-warning) .web-bar-dock{bottom:88px}.web-background-warning button{flex:none;padding:3px 10px;border:1px solid color-mix(in srgb,var(--text) 30%,transparent);border-radius:4px;background:color-mix(in srgb,var(--paused) 32%,var(--bg));color:var(--text);font-size:12px;font-weight:600;cursor:pointer}.web-follow{margin:10px 0 0;display:flex;flex-direction:column;gap:6px}.web-follow-toggle{display:flex;align-items:center;gap:8px;color:var(--text);font-size:15px;font-weight:600;cursor:pointer}.web-follow-toggle:has(input:disabled){color:var(--text-3);cursor:default}.web-follow-reason{margin:0;color:var(--text-2);font-size:13px;line-height:1.45}.web-follow-what,.web-follow-cost{margin:0;color:var(--text-2);font-size:14px;line-height:1.5}.web-follow-cost{margin-top:12px;color:var(--text)}.web-model{margin:4px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);display:flex;flex-direction:column;gap:10px}.web-model.phase-failed{border-color:var(--danger-line);background:var(--danger-bg)}.web-model-says{margin:0;color:var(--text-2);font-size:14px;line-height:1.45}.web-model.phase-failed .web-model-says{color:var(--danger-text)}.web-model-bar{height:6px;border-radius:3px;background:var(--surface-raised);overflow:hidden}.web-model-bar>span{display:block;height:100%;background:var(--accent-line)}.web-model-actions{display:flex;align-items:center;gap:8px}.web-model-actions button{padding:6px 14px;border-radius:6px;border:1px solid transparent;font-family:inherit;font-size:14px;cursor:pointer}.web-model-go{background:var(--accent);color:var(--text-on-accent)}.web-model-go:hover{background:var(--accent-hover);color:var(--on-accent-hover)}.web-model-also{background:transparent;border-color:var(--line-strong);color:var(--text-2)}.web-model-also:hover{border-color:var(--line-hover);color:var(--text)}.web-model-chip{align-self:center;display:flex;align-items:center;gap:8px;max-width:60ch}.web-model-chip-says{color:var(--text-2);font-size:12px}.web-model-chip button{flex:none}.web-gate{max-width:680px;margin:0 auto;padding:48px 24px;display:flex;flex-direction:column;gap:12px;box-sizing:border-box}.web-gate h1{margin:0;font-size:28px;font-weight:600;letter-spacing:-.01em}.web-tagline{margin:0;color:var(--text-2);font-size:15px;line-height:1.5}.web-gate-says{margin:8px 0 0;padding:12px 14px;border:1px solid var(--danger-line);border-radius:8px;background:var(--danger-bg);color:var(--danger-text);font-size:15px}.web-gate-list{margin:4px 0 8px;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}.web-gate-list li{display:flex;flex-direction:column;gap:4px;padding-left:12px;border-left:2px solid var(--line)}.web-gate-list strong{color:var(--text);font-size:15px}.web-gate-why{color:var(--text-2);font-size:13px;line-height:1.5}.web-gate-do{color:var(--text);font-size:13px;line-height:1.5}.web-settings-back{padding:6px 14px;border:1px solid var(--line-strong);border-radius:999px;background:transparent;color:var(--text-2);font-family:inherit;font-size:13px;cursor:pointer}.web-settings-back:hover{border-color:var(--line-hover);color:var(--text)}
/*# sourceMappingURL=main.css.map */
