:root{--bg:#121211;--panel:#181817;--panel2:#1f1f1d;--panel3:#2a2a27;--line:#34332f;--line2:#46453f;--text:#ebe9e4;--dim:#a8a59c;--faint:#8a877e;--signal:#d4392c;--signal-text:#f0604f;--cue:#e3b04b;--ok:#8bc1a0;--ui:1;--font:-apple-system, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--display:"Avenir Next Condensed", "Helvetica Neue", "Arial Narrow", system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font:16px / 1.4 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0}#app{flex-direction:column;min-height:100%;display:flex}button,input{font:inherit;color:inherit}.phone{padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;flex:1;width:100%;max-width:560px;margin:0 auto;display:flex}.screen{flex-direction:column;flex:1;gap:14px;display:flex}.screen.center{text-align:center;justify-content:center}.screen header{color:var(--dim);justify-content:space-between;align-items:center;gap:12px;font-size:.9rem;display:flex}.screen footer{justify-content:center;margin-top:auto;display:flex}.brand{color:var(--text);align-items:center;gap:8px;font-weight:600;display:inline-flex}.brand .dot,.rec .dot{background:var(--signal);border-radius:50%;width:10px;height:10px}h1{font-family:var(--display);margin:8px 0 0;font-size:2.2rem;line-height:1.05}.lead{color:var(--dim);margin:0}.eyebrow{color:var(--faint);text-transform:uppercase;letter-spacing:.08em;margin:8px 0 0;font-size:.8rem}.error{color:var(--signal-text);margin:0}.ok{color:var(--ok)}label{color:var(--dim);flex-direction:column;gap:6px;font-size:.9rem;display:flex}input{background:var(--panel2);border:1px solid var(--line2);border-radius:10px;padding:14px;font-size:1.1rem}input.code{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;text-align:center;font-size:1.6rem}input.small{width:5em;padding:4px 8px;font-size:.9rem}button{border:1px solid var(--line2);background:var(--panel2);cursor:pointer;touch-action:manipulation;border-radius:12px;padding:10px 16px}button:disabled{opacity:.45}button.big{width:100%;min-height:56px;font-size:1.1rem;font-weight:600}button.primary{background:var(--signal);border-color:var(--signal);color:#fff}button.ghost{color:var(--dim);background:0 0;border-color:#0000}.banner{z-index:5;background:var(--panel3);color:var(--dim);text-align:center;border-radius:8px;margin:-4px 0 8px;padding:8px 12px;position:sticky;top:0}.banner.error{color:var(--signal-text)}.people,.cast{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.people li,.cast li{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:6px 12px}.cast li span{color:var(--dim);margin-left:4px}.people li.away{opacity:.5}.parts{flex-direction:column;gap:6px;display:flex}.who{font-size:3rem}.timer{margin:0;font-size:2.4rem}.progress{color:var(--faint);margin:0}.turn .timer{font-size:1.4rem}.stage{aspect-ratio:16/9;background:#000;border-radius:10px;flex:none;position:relative;overflow:hidden}.stage video{object-fit:contain;width:100%;height:100%;display:block}.stage .count{font:700 5rem var(--display);background:#00000073;place-items:center;display:grid;position:absolute;inset:0}.stage .rec{background:#0009;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:flex;position:absolute;top:8px;left:8px}.script{overflow-wrap:anywhere;flex-direction:column;gap:8px;display:flex}.script .other{white-space:pre-line;color:var(--faint);margin:0;font-size:.95rem}.script .mine{white-space:pre-line;color:var(--cue);border-left:4px solid var(--c);margin:0;padding-left:12px;font-size:1.6rem;font-weight:600;line-height:1.25}.actions{flex-direction:column;gap:10px;margin-top:auto;display:flex}.ambience-start{left:16px;right:16px;bottom:max(16px, env(safe-area-inset-bottom));z-index:10;min-height:52px;position:fixed}.ambience-none{color:var(--faint);text-align:center}.grid-page{flex-direction:column;gap:12px;min-height:100vh;padding:12px;display:flex}.grid-page header{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.grid-page label{flex-direction:row;align-items:center}.frames{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.frames iframe{border:1px solid var(--line);background:var(--bg);border-radius:18px;width:100%;height:680px}.script .said{color:var(--text);font-style:italic}.script .suggestion{color:var(--text);background:var(--panel2);border:1px dashed var(--line2);border-radius:10px;margin:0;padding:10px 12px;font-size:1.15rem}.script .suggestion .tag{color:var(--ok);margin-right:4px;font-weight:600}.script .free{color:var(--faint);margin:0;font-size:.85rem}.turn.intro .kicker{color:var(--faint);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.8rem}.turn.intro h1{margin:0}.turn.intro .ending{border-left:6px solid var(--c,var(--line2));background:var(--panel2);border-radius:10px;padding:18px 16px}.turn.intro .ending .words{font:600 1.6rem / 1.25 var(--display);color:var(--cue);margin:0}.turn.intro .ending .words.dim{color:var(--faint);font:1rem var(--sans,inherit)}.turn.intro .ending.playing{animation:1s ease-in-out infinite alternate ending-pulse}@keyframes ending-pulse{to{background:var(--panel3,var(--panel2));border-left-width:12px}}@media (prefers-reduced-motion:reduce){.turn.intro .ending.playing{animation:none}}.turn.intro .free{color:var(--faint);margin:0}#room-screen{border-top:6px solid var(--me,var(--signal));margin-top:-16px;padding-top:14px}.me-card{align-items:center;gap:14px;display:flex}.me-card h1{margin:0}.me-card .initial{background:var(--me,var(--signal));color:#121211;width:56px;height:56px;font:700 1.6rem var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.card,.persona{color:var(--dim);border-left:4px solid var(--c,var(--line2));overflow-wrap:anywhere;margin:0;padding-left:10px}.persona b{color:var(--text)}
