:root{--red:#b5121b;--deep:#8f0e15;--dark:#101216;--panel:#181b20;--line:#30343b;--muted:#959ca6;--green:#54cd87}*{box-sizing:border-box}html,body,#teleprompter{height:100%;margin:0}body{overflow:hidden;background:#090b0e;color:#fff;font:14px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.app{display:grid;grid-template-rows:68px 1fr;height:100%}.bar{display:flex;align-items:center;gap:14px;padding:10px 18px;border-bottom:2px solid var(--red);background:var(--dark)}.logo{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--red);font-weight:900}.brand b,.brand small{display:block}.brand b{font-size:16px}.brand small,.eyebrow{color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.14em}.show-name{margin-left:24px}.show-name b{display:block}.show-name small{color:var(--muted)}.status{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--green);font-size:10px;font-weight:800}.status i{width:8px;height:8px;border-radius:50%;background:var(--green)}button{min-height:40px;padding:0 14px;border:1px solid #3a3f47;border-radius:11px;background:#20242a;color:#fff;font-weight:800;cursor:pointer}button:hover{border-color:#6b727c}.primary{border-color:var(--red);background:var(--red)}.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:0}.control{overflow:auto;padding:20px;border-right:1px solid var(--line);background:#13161a}.control h2{margin:2px 0 5px;font-size:20px}.control>p{margin:0 0 20px;color:var(--muted);font-size:11px}.field{display:grid;gap:6px;margin:14px 0;color:#9da4ae;font-size:9px;font-weight:900;letter-spacing:.09em}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#1a1d22;color:#fff;outline:none}.field input,.field select{height:42px;padding:0 11px}.field textarea{min-height:190px;padding:12px;resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus{border-color:var(--red)}.row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.range-line{display:grid;grid-template-columns:1fr 48px;align-items:center;gap:10px}.range-line output{text-align:right;color:#fff}.toggles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.toggle{display:flex;align-items:center;justify-content:space-between;padding:11px;border:1px solid var(--line);border-radius:10px;color:#fff;font-size:10px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.actions .primary{grid-column:1/-1}.stage{position:relative;min-width:0;overflow:hidden;background:#050607}.stage-top{position:absolute;z-index:5;top:18px;left:24px;right:24px;display:flex;justify-content:space-between;pointer-events:none}.cue{padding:8px 11px;border-radius:9px;background:#15181dcc;color:#c9ced4;font-size:10px}.cue b{color:#fff}.progress{position:absolute;z-index:5;left:0;top:0;width:4px;height:0;background:var(--red);box-shadow:0 0 18px #b5121b}.guide{position:absolute;z-index:3;left:0;right:0;top:42%;border-top:1px solid #b5121b88}.guide:before{content:"READ";position:absolute;left:18px;top:-11px;padding:2px 5px;background:#050607;color:#d6575e;font-size:8px;font-weight:900;letter-spacing:.13em}.script-window{position:absolute;inset:0;overflow:hidden;padding:32vh 11% 55vh}.script{transform:translateY(0);font-size:52px;font-weight:700;line-height:1.5;letter-spacing:.005em;white-space:pre-wrap;will-change:transform}.script.mirror{transform:scaleX(-1)}.script .marker{display:block;margin:48px 0 18px;color:#dc5159;font-size:.3em;font-weight:900;letter-spacing:.14em}.script .next{display:block;margin:18px 0 38px;color:#7f8792;font-size:.28em;font-weight:800;letter-spacing:.08em}.countdown{position:absolute;z-index:20;inset:0;display:grid;place-items:center;background:#050607e8;font-size:120px;font-weight:900}.countdown[hidden]{display:none}.hint{position:absolute;right:22px;bottom:18px;color:#737b86;font-size:9px}.empty{color:#747c86}.mobile-menu{display:none}@media(max-width:800px){.workspace{grid-template-columns:1fr}.control{position:absolute;z-index:30;inset:68px 0 0;transform:translateX(-102%);transition:transform .25s ease}.control.open{transform:none}.mobile-menu{display:block}.show-name{display:none}.script-window{padding-inline:8%}.script{font-size:38px}.bar{gap:8px}.bar button{padding:0 10px}}
