:root{--bg: #0a0b0e;--panel: #111319;--panel-2: #161922;--line: #262a33;--line-soft: #1b1f27;--ink: #e9ebf1;--ink-dim: #8b91a0;--ink-faint: #565c6a;--note: #858991;--amber: #c8a84a;--amber-dim: rgba(200,168,74,.45);--orange: #ff9d33;--green: #33b277;--blue: #56a8e8;--yellow: #bebe52;--vgray: #498ade;--vio: #9b8cff;--vio-deep: #1a1736;--mono: "IBM Plex Mono", ui-monospace, "DejaVu Sans Mono", monospace;--noto: "Noto Sans", system-ui, sans-serif;--sans: "Saira", system-ui, sans-serif;--cond: "Saira Condensed", "Arial Narrow", system-ui, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.4;background-image:radial-gradient(120% 80% at 50% -10%,rgba(86,168,232,.05),transparent 60%),repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px);-webkit-font-smoothing:antialiased}#root{height:100%}.app{display:flex;flex-direction:column;height:100vh;min-height:0}header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:9px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#11131a,#0d0f14)}.brand{display:flex;align-items:baseline;gap:9px;flex-shrink:0}.brand b{font-family:var(--cond);font-weight:800;letter-spacing:.06em;font-size:19px;text-transform:uppercase}.brand span{color:var(--ink-faint);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}.transport{display:flex;gap:5px;flex-wrap:wrap;align-items:center}button{font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--ink);background:var(--panel-2);border:1px solid var(--line);padding:7px 12px;border-radius:8px;cursor:pointer;text-transform:uppercase;transition:.12s;white-space:nowrap}button:hover{border-color:#3a4150}button:active{transform:translateY(1px)}button.play{background:#11271c;border-color:#1f6b41;color:var(--green)}button.play.paused{background:#33260f;border-color:#7a5400;color:var(--orange)}button.nudge{font-family:var(--mono);padding:7px 9px}button.ghost{background:transparent;color:var(--ink-dim)}button.ghost:disabled{opacity:.3;cursor:default}button.lock-btn{font-size:12px;padding:7px 11px}button.lock-btn.locked{background:#ff50501f;border-color:#ff505066;color:#ff7a7a}button.help-btn{font-size:14px;padding:5px 10px;border-radius:50%;min-width:30px}.clock-input{font-family:var(--mono);font-weight:600;font-size:28px;letter-spacing:.02em;font-variant-numeric:tabular-nums;padding:3px 12px;border:1px solid var(--line);border-radius:8px;background:#0c0e13;min-width:128px;text-align:center;color:var(--ink-dim);cursor:text;outline:none}.clock-input.run{color:var(--ink);border-color:#2b4a3a}.clock-input.hold{color:var(--blue);border-color:#235a7e}.clock-input:focus{border-color:#3a4150}.transport-sep{width:1px;height:20px;background:var(--line);margin:0 6px;flex-shrink:0}.speed-select{font-family:var(--mono);font-size:11px;background:var(--panel-2);color:var(--ink-dim);border:1px solid var(--line);border-radius:6px;padding:4px 5px;cursor:pointer}.speed-select:disabled{opacity:.4;cursor:default}.toggle{display:flex;align-items:center;gap:7px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:2px 0}.toggle input{display:none}.toggle-slider{position:relative;flex-shrink:0;width:30px;height:16px;border-radius:8px;background:var(--line);transition:background .2s}.toggle-slider:after{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border-radius:50%;background:var(--ink-faint);transition:transform .2s,background .2s}.toggle input:checked+.toggle-slider{background:#33b27759}.toggle input:checked+.toggle-slider:after{transform:translate(14px);background:var(--green)}.toggle-label{font-family:var(--sans);font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);transition:color .2s}.toggle input:checked~.toggle-label{color:var(--ink-dim)}.offset{display:flex;align-items:center;gap:7px;color:var(--ink-dim);font-size:11px;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0}.offset input{width:88px;font-family:var(--mono);font-size:13px;color:var(--ink);background:#0c0e13;border:1px solid var(--line);border-radius:6px;padding:5px 7px;text-align:center}.help-popup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#00000073;display:flex;align-items:flex-start;justify-content:flex-end}.help-popup-inner{margin:56px 14px 0;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px 18px 12px;font-family:var(--mono);font-size:12px;line-height:2;color:var(--ink-dim);min-width:280px;box-shadow:0 8px 32px #00000080}.help-popup-title{font-family:var(--cond);font-weight:700;font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin-bottom:4px}.help-popup table{width:100%;border-collapse:collapse}.help-popup td{padding:1px 8px 1px 0;vertical-align:middle}.help-popup td:first-child{white-space:nowrap}.help-popup kbd{background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:1px 6px;font-size:11px;color:var(--ink)}.help-popup-inner>button{margin-top:10px}.header-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}main{display:grid;flex:1;min-height:0}main.solo .editor{display:none}main.solo .resize-handle-left{display:none}.resize-handle{cursor:col-resize;background:transparent;position:relative;z-index:10}.resize-handle:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;transition:background .15s}.resize-handle:hover:after{background:#56a8e838}.editor{border-right:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-height:0}.editor-head{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--line-soft)}.tabs{display:flex;gap:5px}.tab{font-family:var(--cond);font-weight:700;font-size:12.5px;letter-spacing:.07em;padding:5px 12px;color:var(--ink-faint);background:transparent;border:1px solid transparent;border-radius:7px}.tab.on{color:var(--ink);background:var(--panel-2);border-color:var(--line)}.editor-head .meta{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-faint)}.pane{flex:1;min-height:0;display:none;flex-direction:column}.pane.on{display:flex}.source-header{display:flex;border-bottom:1px solid var(--line-soft);flex-shrink:0;background:#0c0e13;overflow:hidden}.source-col-headers{display:flex;gap:0;padding:4px 14px;overflow:hidden;overflow-x:scroll;scrollbar-width:none;font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);white-space:pre;flex-shrink:0}.source-col-headers::-webkit-scrollbar{display:none}.source-col-header{cursor:default;padding:0 8px;flex-shrink:0;border-right:1px solid var(--line-soft)}.source-col-header:first-child{padding-left:0}.source-col-header:last-child{border-right:none}.source-col-header:hover{color:var(--ink-dim)}.source-editor{flex:1;min-height:120px;resize:none;border:0;outline:0;background:transparent;color:var(--ink);padding:8px 14px;font-family:var(--mono);font-size:12.5px;line-height:1.75;-moz-tab-size:4;tab-size:4;white-space:pre;overflow-x:auto;word-break:normal;overflow-wrap:normal}.parsebar{padding:7px 14px;border-top:1px solid var(--line-soft);font-size:12px;min-height:32px;display:flex;align-items:center}.parsebar.ok{color:var(--ink-dim)}.parsebar.err{color:#ff7a72}.io{display:flex;gap:6px;padding:8px 14px;border-top:1px solid var(--line-soft)}.io button{flex:1;font-size:11.5px;padding:6px 5px}.rlist-head{display:flex;align-items:center;justify-content:flex-end;padding:4px 10px;border-bottom:1px solid var(--line-soft);flex-shrink:0;gap:7px}.rlist-close-all,.editor-clock-btn{font-size:10.5px;padding:3px 9px}.open-count{font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.05em}.editor-clock{font-family:var(--mono);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-dim);letter-spacing:.03em;padding:2px 8px;border:1px solid var(--line);border-radius:5px;background:#0c0e13;min-width:70px;text-align:center;margin-right:auto}.rlist{flex:1;min-height:0;overflow:auto;padding:4px 0}.rrow-wrap{border-bottom:1px solid var(--line-soft);border-left:3px solid transparent;border-top:2px solid transparent}.rrow-wrap.drag-over{border-top-color:var(--blue)}.rrow{display:flex;gap:8px;align-items:center;padding:7px 12px 7px 10px;cursor:pointer;position:relative}.rrow:hover{background:#191c24}.rrow-wrap.t-call{border-left-color:#33b27733}.rrow-wrap.t-note{border-left-color:#9b8cff66}.rrow-wrap.t-phase{border-left-color:var(--blue);background:#56a8e808}.rrow-wrap.t-event{border-left-color:#565a6e4d}.rrow-wrap.t-cast{border-left-color:#7864284d}.rrow-wrap.rrow-selected{border-left-color:var(--blue);background:#56a8e80a}.rrow-wrap.rrow-hovered{background:#0d1e2d}.rrow-wrap.rrow-selected .rt{color:var(--blue)}.rrow.dragging{opacity:.35}.rrow.rrow-disabled{opacity:.4}.rrow.rrow-disabled .rc{text-decoration:line-through;text-decoration-color:#ffffff4d}.drag-insert-line{height:2px;background:var(--blue);margin:0 12px}.rrow-drag{cursor:grab;color:var(--ink-faint);font-size:13px;flex:none;-webkit-user-select:none;user-select:none;opacity:.25;transition:opacity .1s}.rrow:hover .rrow-drag{opacity:.7}.rt{font-family:var(--mono);font-size:12.5px;color:var(--ink-dim);font-variant-numeric:tabular-nums;flex:none;width:50px}.rc{flex:1;min-width:0;font-size:13.5px;font-family:var(--noto);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rrow-wrap.t-note .rc{color:var(--note);font-style:italic}.rrow-wrap.t-phase .rc{color:var(--blue);font-family:var(--cond);letter-spacing:.04em}.rrow-wrap.t-event .rc{color:var(--ink-faint);font-size:12.5px}.rrow-wrap.t-cast .rc{color:var(--ink-dim);font-size:12.5px}.rrow-wrap.t-sync .rc{color:var(--blue);font-style:italic}.rpills{display:flex;gap:3px;flex:none}.rrow-meta{display:flex;gap:4px;align-items:center;flex-wrap:wrap;padding:1px 12px 5px 90px}.rpill{font-family:var(--mono);font-size:9.5px;letter-spacing:.03em;border-radius:3px;padding:1px 4px;flex:none}.rpill.sb{background:#56a8e82e;color:#86c4f4}.rpill.rd{background:#c8a84a33;color:#d4b05e}.rpill.rm{background:#33b2772e;color:#56c990}.rtag{font-size:9px;letter-spacing:.1em;border-radius:3px;padding:1px 5px;flex:none;text-transform:uppercase;color:var(--ink-faint);border:1px solid #333845}.rtag-off{color:var(--ink-faint);border-color:transparent;background:#ffffff0d}.rvtag{font-size:9px;letter-spacing:.08em;color:var(--vio);opacity:.65;border:1px solid #3a3075;border-radius:3px;padding:1px 5px;flex:none;text-transform:uppercase}.rrow-expand{padding:3px 7px;font-size:11px;min-width:0;flex:none;opacity:.35;transition:opacity .1s}.rrow:hover .rrow-expand{opacity:1}.rrow-expand.open{opacity:1;color:var(--blue)!important;border-color:#56a8e866!important}.re-wrap{border-left:3px solid var(--line)}.re-wrap.t-call{border-left-color:var(--green)}.re-wrap.t-note{border-left-color:var(--vio)}.re-wrap.t-phase{border-left-color:var(--blue)}.re-wrap.t-event{border-left-color:#444a58}.re-wrap.t-cast{border-left-color:#5a4a20}.re-panel{background:#07090e;border-top:2px solid var(--line);padding:8px 12px 12px;display:flex;flex-direction:column;gap:6px}.re-locked{padding:10px 14px;color:var(--ink-faint);font-size:12px;font-style:italic}.re-header{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding-bottom:8px;margin-bottom:2px;border-bottom:1px solid var(--line-soft)}.re-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.re-ops{display:flex;gap:6px;padding-top:8px;border-top:1px solid var(--line-soft);margin-top:2px}.re-ops button{font-size:11px;padding:4px 10px}.re-del{color:#a13f3a!important}.re-lbl{font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-faint);min-width:52px;flex:none}.re-inp{font-family:var(--mono);font-size:12.5px;background:#0f1520;color:var(--ink);border:1px solid #2d3448;border-radius:5px;padding:4px 7px;width:88px}.re-txt{font-size:13px;background:#0f1520;color:var(--ink);border:1px solid #2d3448;border-radius:5px;padding:5px 8px;flex:1;min-width:120px}.re-textarea{font-size:13px;font-family:var(--noto)!important;background:#0f1520;color:var(--ink);border:1px solid #2d3448;border-radius:5px;padding:5px 8px;flex:1;min-width:120px;resize:none;min-height:64px;field-sizing:content}.re-mono{font-family:var(--mono)!important;font-size:12.5px!important}.re-sel{font-family:var(--sans);font-size:12px;background:var(--panel-2);color:var(--ink-dim);border:1px solid var(--line);border-radius:5px;padding:4px 7px;cursor:pointer}.re-inp:focus,.re-txt:focus,.re-textarea:focus{border-color:#3a4150;outline:none}.re-row button{font-size:11px;padding:4px 8px}.re-nudge{font-family:var(--mono)!important;padding:4px 6px!important}.re-now{color:var(--green)!important;border-color:#33b27759!important}.re-x{color:var(--ink-faint)!important;padding:4px 7px!important}.re-ann{font-family:var(--mono);font-size:10px;color:var(--ink-faint);margin-left:2px}.re-abs{width:80px;color:var(--ink-dim)}.re-nudge-row{gap:4px}.re-type-seg{display:flex;gap:0;flex:none}.re-type-seg button{font-size:11px;padding:4px 9px;border-radius:0;border-right-width:0;text-transform:uppercase;letter-spacing:.04em}.re-type-seg button:first-child{border-radius:5px 0 0 5px}.re-type-seg button:last-child{border-radius:0 5px 5px 0;border-right-width:1px}.re-type-seg button.on{background:var(--panel);color:var(--ink);border-color:#3a4150}.rt-note{width:50px;font-family:var(--mono);font-size:12.5px;color:var(--ink-faint);font-variant-numeric:tabular-nums}.center-col{display:flex;flex-direction:column;min-height:0;overflow:hidden}.video-panel{display:none;flex-direction:column;border-bottom:1px solid var(--line);background:var(--panel);flex-shrink:0}.video-panel.loaded{display:flex}.video-wrap{background:#000;display:flex;align-items:center;justify-content:center;max-height:38vh;overflow:hidden}.video-wrap video{width:100%;max-height:38vh;object-fit:contain;display:block}.video-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:5px 10px;border-top:1px solid var(--line-soft)}.video-toolbar button{font-size:11px;padding:5px 9px}.video-sep{width:1px;height:16px;background:var(--line);margin:0 2px;flex-shrink:0}.video-speed-label{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.video-speed-btn{font-family:var(--mono);padding:5px 7px!important;font-size:11px!important}.fps-select{font-family:var(--mono);font-size:11px;background:var(--panel-2);color:var(--ink-dim);border:1px solid var(--line);border-radius:6px;padding:4px 5px;cursor:pointer}.video-sync-badge{font-family:var(--cond);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--green);background:#33b27714;border-top:1px solid rgba(51,178,119,.2);padding:4px 12px;text-align:center}.deck{flex:1;min-height:0;overflow-y:auto;padding:16px}.slot{display:grid;grid-template-rows:1fr;transition:grid-template-rows .42s ease,opacity .32s ease,margin .42s ease}.slot.gone{grid-template-rows:0fr;opacity:0;margin:0!important;pointer-events:none}.slot.dimmed .cardwrap{opacity:.35}.slot.slot-disabled .cardwrap{opacity:.22}.slot.slot-disabled .card-text{text-decoration:line-through;text-decoration-color:#fff6}.cardwrap{overflow:hidden;min-height:0}.deck .slot{margin-bottom:12px}.deck .slot:last-child{margin-bottom:0}.card{position:relative;border:1px solid var(--line);border-radius:12px;background:radial-gradient(120% 140% at 50% 0%,#14161d,#0d0f14);padding:9px 22px 16px;display:flex;flex-direction:column;gap:4px;transition:.15s border-color,.15s background;overflow:hidden}.card-state{font-family:var(--cond);font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-size:11.5px;color:var(--ink-faint);min-height:14px}.card-body{display:flex;align-items:center;gap:16px;justify-content:center;flex-wrap:wrap}.cd{font-family:var(--mono);font-weight:600;color:var(--ink-dim);font-variant-numeric:tabular-nums;line-height:1;display:flex;align-items:baseline;flex:0 0 100px;text-align:center;font-size:40px;justify-content:center}.cd .cd-dec{font-size:.75em;opacity:.6;margin-left:1px}.cd .cd-word{font-size:30px;font-family:var(--cond);font-weight:800;letter-spacing:.05em}.card.note .cd{font-size:28px}.card.note .cd .cd-word{font-size:18px}.card.event .cd,.card.cast .cd{font-size:22px}.card.event .cd .cd-word,.card.cast .cd .cd-word{font-size:15px}.barwrap{height:6px;border-radius:4px;overflow:hidden;background:#ffffff0d}.barwrap.hide{visibility:hidden}.bar{height:100%;transform-origin:center;background:var(--amber);border-radius:4px}.bar.castbar{transform-origin:center;background:var(--yellow)}.card-text{font-family:var(--noto);font-weight:700;font-size:clamp(21px,2.4vw,32px);line-height:1.12;word-break:break-word;flex:1;min-width:max(60%,content)}.card-btns{display:flex;gap:9px;flex-wrap:wrap;align-items:center;justify-content:flex-end;margin-left:auto;flex:0 1 auto;min-width:0}.skip-btn{font-family:var(--cond);font-weight:800;font-size:13px;letter-spacing:.07em;padding:9px 20px;background:var(--panel-2);border-color:#3a4150;color:var(--ink-faint)}.skip-btn:hover{color:var(--ink);border-color:#52596a}.skip-btn:disabled{opacity:.3;cursor:default}.skip-btn:disabled:hover{color:var(--ink-faint);border-color:#3a4150}.restore-btn{font-family:var(--cond);font-weight:700;font-size:12px;letter-spacing:.06em;padding:7px 14px;background:transparent;border-color:#3a4150;color:var(--ink-faint)}.restore-btn:hover{color:var(--ink)}.restore-btn:disabled{opacity:.3;cursor:default}.card-pencil{position:absolute;top:8px;right:10px;font-size:13px;padding:2px 6px;background:transparent;border-color:transparent;color:var(--ink-faint);opacity:0;transition:opacity .12s;z-index:2;pointer-events:none}.card:hover .card-pencil{opacity:1;pointer-events:auto}.card-pencil:hover{opacity:1!important;color:var(--ink);border-color:var(--line)!important}.card-disabled-badge{font-family:var(--cond);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line);border-radius:4px;padding:1px 6px;margin-right:auto}.card-toggle-btn{font-size:11px;padding:5px 10px;color:var(--ink-faint)!important}.card-toggle-btn:hover{color:var(--ink)!important}.vgroup{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 10px;border:1px solid var(--vio-deep);border-radius:10px;background:#9b8cff0d}.vglabel{font-family:var(--mono);font-size:11px;color:var(--vio);text-transform:uppercase;letter-spacing:.05em}.vgroup button{font-family:var(--noto);font-weight:700;font-size:14px;padding:8px 14px;background:var(--vio-deep);border-color:#4a3fa0;color:#d9d2ff}.vgroup button.on{background:#3a2fa0;border-color:var(--vio);color:#fff}.vgroup button:hover{border-color:var(--vio)}.go-btn{font-family:var(--cond);font-weight:800;font-size:18px;letter-spacing:.08em;padding:12px 30px;background:#0f2230;border-color:#235a7e;color:#cdeaff;animation:goPulse 1s infinite}@keyframes goPulse{0%,to{box-shadow:0 0 #56a8e800}50%{box-shadow:0 0 0 4px #56a8e833}}.sync-btn{font-family:var(--cond);font-weight:800;font-size:13px;letter-spacing:.07em;padding:9px 20px;background:#56a8e812;border-color:#56a8e84d;color:var(--blue)}.sync-btn:hover{border-color:var(--blue)}.done-settime-group{display:flex;gap:9px;align-items:center}.settime-btns{display:grid;grid-template-columns:1fr 1fr;gap:3px}.settime-btn{font-family:var(--mono);font-size:9.5px;padding:3px 5px;letter-spacing:.04em;background:transparent}.settime-now{color:var(--green)!important;border-color:#33b2774d!important}.settime-now:hover{border-color:var(--green)!important}.settime-ready{color:var(--amber)!important;border-color:#c8a84a4d!important}.settime-ready:hover{border-color:var(--amber)!important}.settime-standby{color:var(--blue)!important;border-color:#56a8e84d!important}.settime-standby:hover{border-color:var(--blue)!important}.settime-remain{color:var(--orange)!important;border-color:#ff9d334d!important}.settime-remain:hover{border-color:var(--orange)!important}.card.note{border-left:4px solid #343943}.card.note .card-text{color:var(--note);font-style:italic;font-size:clamp(18px,2vw,26px)}.card.note .card-state{visibility:hidden}.card.event,.card.cast{opacity:.75;padding:16px 16px 7px;border-radius:10px;border-color:#262a33a6;margin:0 6px}.card.event .card-text{font-size:22px;color:#757b8c;font-style:italic}.card.event .card-state{display:none}.card.cast .card-text{font-size:22px;color:#757b8c}.card.cast .card-state{display:none}.card.cast .barwrap{background:#bebe5226}.card.phase .card-text{color:var(--blue);font-family:var(--cond);letter-spacing:.03em}.card.is-standby:not(.note):not(.event):not(.cast){border-color:var(--blue);background:radial-gradient(120% 140% at 50% 0%,#0e2230,#0c1218)}.card.is-standby:not(.note):not(.event):not(.cast) .card-state{color:var(--blue)}.card.note.is-standby{border-color:#56a8e859}.card.event.is-standby,.card.cast.is-standby{border-color:#56a8e833}.card.cast.is-gray .barwrap,.card.cast.is-standby .barwrap{background:#bebe521a}.card.is-ready:not(.note):not(.event):not(.cast){border-color:var(--amber);background:radial-gradient(120% 140% at 50% 0%,#1d1a0e,#111008)}.card.is-ready:not(.note):not(.event):not(.cast) .cd{color:var(--amber)}.card.is-ready:not(.note):not(.event):not(.cast) .card-state{color:var(--amber);opacity:.7}.card.note.is-ready{border-color:var(--amber)}.card.event.is-ready{border-color:#c8a84a73;opacity:.88}.card.cast.is-ready{border-color:#c8a84a73;opacity:.9}@keyframes readyEntry{0%{box-shadow:0 0 0 2px #c8a84a66,0 0 8px #c8a84a26}to{box-shadow:none}}.card.is-ready.just-entered:not(.note):not(.event):not(.cast){animation:readyEntry .5s ease-out forwards}@keyframes nowGlow{0%,to{box-shadow:0 0 #2b9c6833,0 0 12px #2b9c6814}50%{box-shadow:0 0 0 3px #2b9c684d,0 0 24px #2b9c682e}}.card.is-now:not(.note):not(.event):not(.cast){border-color:#2b9c68;background:radial-gradient(120% 140% at 50% 0%,#0d2c1d,#0c1712);box-shadow:0 0 0 1px #2b9c684d,0 0 20px #2b9c6826;animation:nowGlow 2s ease-in-out infinite}.card.is-now:not(.note):not(.event):not(.cast) .cd{color:#2b9c68}.card.is-now:not(.note):not(.event):not(.cast) .card-state{color:#2b9c68}.card.note.is-now{border-color:#2b9c68}.card.event.is-now,.card.cast.is-now{border-color:#2b9c6880;opacity:.85}.card.is-pending{border-color:var(--vio)}.card.note.is-pending{border-left-color:var(--vio)}.card.is-pending .card-state{color:var(--vio);visibility:visible!important}.card.is-pending .cd{color:var(--vio);opacity:.6}.slot.gone-manual{grid-template-rows:0fr;opacity:0;margin:0!important;pointer-events:none;transition:grid-template-rows 1.2s ease,opacity .8s ease,margin 1.2s ease}.card.phase.is-phase{border-color:var(--blue);background:radial-gradient(120% 140% at 50% 0%,#1c2740,#0c1218)}.card.phase.is-phase .card-state,.card.phase.is-phase .cd .cd-word{color:var(--blue)}.card.ui-selected{border-color:var(--blue)!important}.card.ui-hovered{border-color:#56a8e880}.vval{color:var(--vgray);font-weight:700}.vunset{color:var(--vio);opacity:.85;font-style:italic}.vars{border-left:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column;min-height:0}.vars-head{padding:10px 14px;border-bottom:1px solid var(--line-soft);font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);display:flex;align-items:center;gap:8px}.vars-head .d{width:8px;height:8px;border-radius:50%;background:var(--vio);box-shadow:0 0 7px var(--vio)}.vars-body{flex:1;overflow:auto;padding:10px}.vars-body .slot{margin-bottom:10px}.vars-empty{color:var(--ink-faint);font-size:12.5px;text-align:center;margin-top:18px;line-height:1.6}.vcard{border:1px solid var(--line);border-radius:9px;background:#0f1016;padding:10px 12px;transition:.15s border-color,.15s background}.vcard .vname{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--vio);text-transform:uppercase;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.vcard .vname .vlabel{flex:1}.vcard .vname .cur{color:#fff;font-weight:700;font-family:var(--sans);letter-spacing:0;text-transform:none;font-size:13px}.vcard .vname .cur.none{color:var(--ink-faint);font-weight:400;font-style:italic}.vopts{display:flex;gap:6px;flex-wrap:wrap}.vopts button{flex:1 1 auto;min-width:50px;padding:8px 7px;font-size:13px;background:var(--panel-2);border-color:var(--line)}.vopts button.on{background:var(--vio-deep);border-color:var(--vio);color:#e7e2ff}.vname-conflict{color:var(--amber);font-size:11px;margin-left:5px;cursor:help}.vars-conflict-warn{background:#c8a84a1a;border:1px solid rgba(200,168,74,.3);border-radius:7px;padding:7px 10px;font-size:11.5px;color:var(--amber);margin-bottom:8px}.vcard.is-set{border-color:#33b27740}.vcard.is-set .cur{color:var(--green)}@media (max-width: 1000px){main{grid-template-columns:1fr!important;grid-template-rows:auto 1fr auto}.editor{border-right:0;border-bottom:1px solid var(--line);max-height:34vh}.vars{border-left:0;border-top:1px solid var(--line);max-height:30vh}main.solo{grid-template-columns:1fr!important;grid-template-rows:1fr auto}.resize-handle{display:none}}
