:root{color-scheme:dark;--ink: #0e1116;--paper: #f4f6f8;--muted: #9aa3ad;--line: rgba(244, 246, 248, .14);--accent: #d7e4ff;--accent-ink: #10131a;font-family:Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--ink);color:var(--paper);overflow:hidden}button,select{font:inherit;color:inherit}.eyebrow{margin:0 0 .3rem;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;color:var(--accent)}h1,h2{font-weight:620;letter-spacing:-.03em}.picker,.app{margin:0 auto}.picker{width:min(1280px,calc(100% - 1.5rem))}.app{width:calc(100% - 1.5rem)}.picker{height:100%;overflow:auto;padding:2.5rem 0 4rem}.picker h1{font-size:clamp(2.2rem,5vw,4rem);margin:0 0 .6rem}.lede{max-width:40rem;color:var(--muted);line-height:1.5}.whole,.role-grid button,.text,.transport button{background:transparent;border:1px solid var(--line);border-radius:999px;padding:.7rem 1rem;cursor:pointer}.whole{margin:1rem 0 1.5rem;background:var(--paper);color:var(--accent-ink);border:0;font-weight:650}.picker section{margin-top:1.4rem}.picker h2{margin:0 0 .6rem;font-size:1.2rem}.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}.role-grid button{border-radius:16px;text-align:left;display:flex;flex-direction:column;gap:.15rem;min-height:72px}.role-grid button span,.timing-note{color:var(--muted)}.role-grid button:hover,.text:hover,.transport button:hover{border-color:var(--paper)}.app{height:100%;padding:.75rem 0 .7rem;display:flex;flex-direction:column;gap:.55rem;overflow:hidden}.top,.top-actions,.transport-row{display:flex;justify-content:space-between;gap:1rem;align-items:end}.top{flex:none}.top h1{margin:0;font-size:clamp(1.25rem,2vw,1.7rem)}.top-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}.top label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--muted)}select{background:#171b22;border:1px solid var(--line);border-radius:10px;padding:.45rem .6rem;max-width:16rem}.top-actions select{width:13rem}.board{flex:1;min-height:0;display:flex;flex-direction:column;gap:.55rem}.notes{flex:none;height:7.4rem;overflow:auto;display:grid;grid-template-columns:minmax(0,1fr);align-items:start}.plot{margin:0;flex:1;height:auto;min-height:0;display:flex;flex-direction:column;background:#15181e;border:1px solid var(--line);border-radius:18px;padding:.65rem .75rem}.plot-top,.upstage{display:flex;justify-content:flex-end;color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.plot-top{position:relative;min-height:1.4rem;align-items:center}.audience-label{position:absolute;left:11%;right:11%;text-align:center}.upstage{flex-direction:column;align-items:center;gap:.05rem}.upstage strong{letter-spacing:0;text-transform:none;color:var(--paper);font-size:.95rem;line-height:1.2;min-height:1.2em;white-space:nowrap}.upstage strong.is-empty{visibility:hidden}.plot-body{position:relative;flex:1;min-height:0;margin:.35rem 0}.wing,.stage-floor{position:absolute;top:0;bottom:0;border-radius:12px}.wing-l{left:0;width:10%}.wing-r{right:0;width:10%}.stage-floor{left:11%;right:11%}.people-layer{position:absolute;top:0;right:0;bottom:0;left:0}.wing{display:flex;align-items:flex-end;justify-content:center;padding:0 .3rem .45rem;background:#101318;color:var(--muted);font-size:.72rem;text-align:center}.wing .short{display:none}.stage-floor{background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 22%),#1c212b;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14}.zone-grid i{position:absolute;transform:translate(-50%,-50%);font-style:normal;font-size:.68rem;color:#f4f6f847}.marker,.company,.prop,.zone-grid i,.spot{position:absolute;transform:translate(-50%,-50%)}.marker,.company,.prop{transition:left .9s ease,top .9s ease}.prop.is-picture,.prop.is-gaadhi,.company.is-fixed,.is-scrubbing .marker,.is-scrubbing .company,.is-scrubbing .spot{transition:none}.spot{border-radius:1.35rem;background:#ffd67857;box-shadow:0 0 18px 5px #ffc85a47;pointer-events:none;z-index:1;transition:left .9s ease,top .9s ease,width .9s ease,height .9s ease}.spot.is-on{opacity:1}.spot.is-front{z-index:6}.spot.is-round{border-radius:50%}.marker{width:max-content;max-width:9rem;height:auto;padding:.22rem .5rem;border-radius:999px;background:#f4f6f8;color:#12151b;display:grid;place-items:center;border:0;z-index:2}.marker span{font-size:.72rem;font-weight:650;line-height:1.2;text-align:center}.marker .line{display:block}.marker.is-dim{opacity:.38}.marker.is-selected{background:#fff;color:#10131a;z-index:4;box-shadow:0 0 0 3px #7aa2ff}.marker.is-front{z-index:7}.marker.is-cluster{border-radius:999px}.marker.is-unlisted{border-style:dashed}.company{z-index:2;width:max-content;max-width:11rem;padding:.35rem .7rem;border-radius:999px;background:#0e1116e0;color:var(--paper);border:2px solid #f08a24;text-align:center}.company span{font-size:.75rem;font-weight:650;line-height:1.25}.company .line{display:block}.company.is-song{max-width:22rem;padding:.55rem .9rem}.company.is-song .line{white-space:nowrap}.prop{font-size:.65rem;background:#10131adb;color:var(--paper);border-radius:999px;padding:.1rem .4rem;z-index:3}.prop.is-picture,.prop.is-mess,.prop.is-gaadhi{font-size:.8rem}.curtain{position:absolute;left:11%;right:11%;top:0;bottom:0;z-index:5;display:grid;place-items:center;background:repeating-linear-gradient(90deg,#12151c 0,#12151c 14px,#1a1f2a 14px,#1a1f2a 28px);color:var(--paper);letter-spacing:.16em;text-transform:uppercase;font-size:.8rem}.upstage{justify-content:center;padding-top:.2rem}.cue-card h2{margin:0 0 .3rem;font-size:1.15rem}.cue-count{color:var(--muted);font-weight:500;font-size:.82em;letter-spacing:0;white-space:nowrap}.cue-check{margin:0 0 .25rem;color:var(--muted);font-size:.85rem}.cue-card ul{list-style:disc;margin:.15rem 0 0;padding-left:1.05rem;columns:3;column-gap:1.6rem}.cue-card li{line-height:1.35;break-inside:avoid;margin-bottom:.28rem}.transport{flex:none;padding:0 4px}.transport .transport-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.transport-buttons{grid-column:2;display:flex;gap:.45rem;justify-content:center}.transport button{border-color:#f3ead773}.scrub{position:relative;margin-top:.55rem;--thumb: 28px;--ring: 3px}.scene-marks{position:relative;height:10px}.scene-marks button{position:absolute;top:0;width:2px;height:10px;padding:0;border:0;background:var(--paper);transform:translate(-1px)}.song-marks{position:absolute;left:0;right:0;bottom:0;height:var(--thumb);z-index:2;pointer-events:none}.transport .song-mark{pointer-events:auto;position:absolute;top:50%;left:calc(var(--p) * (100% - var(--thumb)) + (var(--thumb) / 2));width:22px;height:22px;margin:0;padding:0;border-radius:50%;border:2px solid #f08a24;background:var(--ink);color:var(--paper);font-size:12px;font-weight:700;line-height:20px;text-align:center;transform:translate(-50%,-50%)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;height:var(--thumb);margin:.35rem 0 0;background:transparent}input[type=range]::-webkit-slider-runnable-track{height:4px;background:#f4f6f8;border-radius:999px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;box-sizing:border-box;width:var(--thumb);height:var(--thumb);margin-top:calc((4px - var(--thumb)) / 2);border:var(--ring) solid #7aa2ff;border-radius:50%;background:#fff}input[type=range]::-moz-range-track{height:4px;background:#f4f6f8;border:0;border-radius:999px}input[type=range]::-moz-range-thumb{box-sizing:border-box;width:var(--thumb);height:var(--thumb);border:var(--ring) solid #7aa2ff;border-radius:50%;background:#fff}@media(max-width:1100px){.cue-card ul{columns:2}}.turn-phone{display:none}.stage-slot,.stage-fit{display:contents}@media(orientation:portrait)and (max-width:900px){.turn-phone{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;align-items:center;justify-content:center;margin:0;padding:1.5rem;background:var(--ink);text-align:center;font-size:1.35rem;line-height:1.35}}@media(orientation:landscape)and (max-height:520px)and (max-width:1100px){body{overflow:hidden}.app{width:100%;height:100dvh;max-height:100dvh;padding:max(.35rem,env(safe-area-inset-top)) max(.35rem,env(safe-area-inset-right)) max(.35rem,env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left));display:grid;grid-template-columns:6.4rem minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:.3rem;overflow:hidden}.board,.transport{display:contents}.top{grid-column:1;grid-row:1;width:0;min-width:100%;overflow:hidden;flex-direction:column;align-items:stretch;gap:.25rem}.eyebrow{display:none}.top h1{display:block;margin:0;height:calc(.82rem * 1.15 * 3);font-size:.82rem;line-height:1.15;overflow:hidden;overflow-wrap:anywhere;flex:none}.top-actions{flex-direction:column;align-items:stretch;gap:.25rem;min-width:0}.top-actions select{width:100%;min-width:0;max-width:100%;padding:.3rem .35rem;font-size:.72rem}.notes{display:none}.cue-card h2{font-size:.92rem}.cue-card ul{columns:1;font-size:.78rem}.transport-row{grid-column:1;grid-row:2;align-self:start;display:block;width:100%;margin-top:.55rem;position:relative;z-index:2}.transport-buttons{display:grid;grid-template-columns:1fr;gap:.3rem;width:100%}.transport button{padding:.32rem .35rem;font-size:.78rem}.scrub{display:none}.stage-slot{display:grid;place-items:center;grid-column:2;grid-row:1 / -1;min-width:0;min-height:0;overflow:hidden;container-type:size}.stage-fit{display:block;width:calc(1120px*min(100cqi / 1120px,100cqb / 560px));height:calc(560px*min(100cqi / 1120px,100cqb / 560px))}.plot{width:1120px;height:560px;max-width:none;flex:none;transform:scale(min(100cqi / 1120px,100cqb / 560px));transform-origin:top left}.plot-body{height:auto;min-height:0;flex:1}}
