.cast-tool,.cast-tool *{box-sizing:border-box}.cast-tool{color:var(--foreground);font-family:var(--font-sans), sans-serif;min-width:0;scroll-margin-top:5.5rem}.cast-tool button,.cast-tool input,.cast-tool a{font:inherit}.cast-tool .page{width:min(1120px,100%);margin:0 auto;padding:28px 20px 36px}.cast-tool input[type=file]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cast-tool h2,.cast-tool p{margin:0}.cast-tool .offer{border:1px solid var(--line);background:var(--card);width:100%;color:inherit;cursor:pointer;text-align:left;border-radius:2px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:0 0 16px;padding:12px 14px;display:flex}.cast-tool .offer:hover,.cast-tool .offer:focus-visible{border-color:var(--accent);outline:none}.cast-tool .offer-copy{flex-wrap:wrap;gap:4px 14px;font-size:.92rem;line-height:1.4;display:flex}.cast-tool .offer-copy strong{color:var(--accent);font-weight:650}.cast-tool .offer-buy{color:var(--accent);font-size:.85rem;font-weight:650}.cast-tool .studio{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:16px;display:grid}.cast-tool .stage{border:1px solid var(--line);background:linear-gradient(145deg,#d7b07a14,#0000 38%),#0c1018;border-radius:2px;flex-direction:column;height:min(640px,100vh - 112px);min-height:560px;display:flex;position:sticky;top:88px;overflow:hidden}.cast-tool .stage.dragging{border-color:var(--accent)}.cast-tool .stage-bar{justify-content:space-between;align-items:center;gap:12px;padding:14px 14px 0;display:flex}.cast-tool .badge{letter-spacing:.14em;text-transform:uppercase;background:#080a10d1;border-radius:2px;padding:6px 10px;font-size:11px;font-weight:650}.cast-tool .switch{background:#080a10d1;border-radius:2px;padding:3px;display:flex}.cast-tool .switch button{min-height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:2px;padding:0 12px;font-size:12px;font-weight:650}.cast-tool .switch button.on{background:var(--foreground);color:#14140f}.cast-tool .stage-video{flex:1;justify-content:center;align-items:center;min-width:0;min-height:0;padding:12px 16px 16px;display:flex}.cast-tool .stage-video video{object-fit:contain;background:#000;border-radius:2px;max-width:100%;max-height:100%}.cast-tool .live{background:#080a10e0;border-radius:2px;align-items:center;gap:8px;margin:0 14px 14px;padding:10px 12px;font-size:13px;display:flex}.cast-tool .dot{background:var(--accent);border-radius:99px;width:8px;height:8px;animation:1.4s infinite cast-pulse;box-shadow:0 0 #d7b07a8c}@keyframes cast-pulse{70%{box-shadow:0 0 0 7px #d7b07a00}to{box-shadow:0 0 #d7b07a00}}.cast-tool .replace-overlay{border:1px dashed var(--accent);color:var(--foreground);letter-spacing:-.03em;background:#0c0c0ed1;border-radius:2px;place-items:center;font-size:1.2rem;font-weight:600;display:grid;position:absolute;inset:10px}.cast-tool .drop{color:var(--foreground);text-align:center;cursor:pointer;background:0 0;border:1px dashed #f4f1ea38;border-radius:2px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;margin:14px;padding:28px;display:flex}.cast-tool .drop:hover,.cast-tool .stage.dragging .drop{border-color:var(--accent)}.cast-tool .drop .mark{width:52px;height:52px;color:var(--accent);background:#d7b07a24;border-radius:2px;place-items:center;margin-bottom:6px;display:grid}.cast-tool .drop strong{font-family:var(--font-display), Georgia, serif;letter-spacing:-.03em;font-size:2rem;font-weight:400}.cast-tool .drop span:last-child{color:var(--muted);font-size:.95rem}.cast-tool .stage-empty{flex-direction:column;flex:1;min-height:0;display:flex}.cast-tool .templates{flex:none;min-width:0;padding:0 14px 10px}.cast-tool .templates p{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-size:10px;font-weight:650}.cast-tool .templates ul{scroll-snap-type:x proximity;gap:6px;margin:0;padding:0 0 4px;list-style:none;display:flex;overflow-x:auto}.cast-tool .templates li{scroll-snap-align:start;flex:0 0 84px;width:84px;min-width:84px;max-width:84px;display:flex}.cast-tool .templates button{border:1px solid var(--line);width:100%;min-width:0;height:140px;color:var(--foreground);text-align:left;cursor:pointer;background:#0c1018;border-radius:2px;flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.cast-tool .templates button:hover:not(:disabled){border-color:var(--accent)}.cast-tool .templates button:disabled{cursor:default;opacity:.6}.cast-tool .templates img{object-fit:cover;background:#000;flex:none;width:100%;height:112px;display:block}.cast-tool .templates span{white-space:nowrap;text-overflow:ellipsis;width:100%;min-width:0;height:26px;padding:6px 6px 0;font-size:11px;font-weight:650;line-height:14px;display:block;overflow:hidden}.cast-tool .panel{border:1px solid var(--line);background:var(--card);border-radius:2px;flex-direction:column;gap:16px;min-height:100%;padding:20px 16px 16px;display:flex}.cast-tool .panel-head{justify-content:space-between;align-items:baseline;gap:12px;padding:0 4px;display:flex}.cast-tool h2{font-family:var(--font-display), Georgia, serif;letter-spacing:-.03em;font-size:2rem;font-weight:400;line-height:1}.cast-tool .price{letter-spacing:-.03em;margin:0;font-size:1.05rem;font-weight:650}.cast-tool .file{border:1px solid var(--line);width:100%;color:inherit;text-align:left;background:#161a22;border-radius:2px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.cast-tool .file.as-button{cursor:pointer}.cast-tool .file.as-button:hover{border-color:#f4f1ea47}.cast-tool .file-copy{min-width:0}.cast-tool .file-name,.cast-tool .file-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:650;display:block;overflow:hidden}.cast-tool .note,.cast-tool .blurb,.cast-tool .empty-people{color:var(--muted);font-size:.82rem;line-height:1.5}.cast-tool .note{margin-top:2px}.cast-tool .text-btn,.cast-tool .inline-link{color:var(--accent);cursor:pointer;background:0 0;border:0;font-size:13px;font-weight:650}.cast-tool .text-btn:disabled,.cast-tool .inline-link:disabled{cursor:not-allowed;opacity:.4}.cast-tool .block{gap:8px;display:grid}.cast-tool .section-label{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;gap:12px;padding:0 4px;font-size:11px;font-weight:650;display:flex}.cast-tool .steps,.cast-tool .people{gap:8px;margin:0;padding:0;list-style:none;display:grid}.cast-tool .steps li,.cast-tool .person,.cast-tool .empty-people{border:1px solid var(--line);background:#161a22;border-radius:2px}.cast-tool .steps li{min-height:46px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:14px;display:flex}.cast-tool .steps em{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-style:normal;font-weight:650}.cast-tool .steps li.on{border-color:var(--accent);color:var(--foreground)}.cast-tool .steps li.on em{color:var(--accent)}.cast-tool .steps li.ok{color:var(--foreground)}.cast-tool .empty-people{padding:14px 12px}.cast-tool .person{align-items:center;gap:10px;padding:10px 10px 10px 12px;display:flex}.cast-tool .person.ready{border-color:#9ec9b08c}.cast-tool .num{width:18px;color:var(--accent);letter-spacing:-.04em;font-size:1.35rem;font-weight:650}.cast-tool .who{flex:1;min-width:0}.cast-tool .who strong{font-size:14px;font-weight:650;display:block}.cast-tool .who span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.cast-tool .faces{cursor:pointer;flex-shrink:0;gap:6px;display:flex}.cast-tool .faces img,.cast-tool .plus{object-fit:cover;background:#0a0a0c;border-radius:8px;width:36px;height:48px}.cast-tool .plus{color:var(--foreground);border:1px dashed #f4f1ea47;place-items:center;font-size:18px;line-height:1;display:grid}.cast-tool .faces:hover .plus,.cast-tool .scene-face:hover .plus{border-color:var(--accent);color:var(--accent)}.cast-tool .scene-picker{gap:10px;display:grid}.cast-tool .scene-tabs{gap:6px;display:flex;overflow-x:auto}.cast-tool .scene-tabs button{border:1px solid var(--line);height:36px;color:var(--foreground);cursor:pointer;background:#161a22;border-radius:10px;flex:1 0 36px;font-weight:650}.cast-tool .scene-tabs button.on{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.cast-tool .scene-tabs button.ok{color:var(--success);border-color:#9ec9b08c}.cast-tool .scene{border:1px solid var(--line);background:#161a22;border-radius:2px;overflow:hidden}.cast-tool .scene-still{object-fit:contain;pointer-events:none;background:#000;width:100%;height:220px;display:block}.cast-tool .scene-time{color:var(--muted);letter-spacing:.04em;margin:0;padding:10px 12px 0;font-size:12px;font-weight:650}.cast-tool .scene-cast{gap:8px;padding:10px;display:grid}.cast-tool .scene-face{align-items:center;gap:12px;min-width:0;display:flex}.cast-tool .scene-face label{cursor:pointer;flex:none}.cast-tool .scene-copy{flex:1;min-width:0}.cast-tool .pair{gap:6px;display:flex}.cast-tool .pair img,.cast-tool .pair .plus{object-fit:cover;background:#0a0a0c;border-radius:10px;flex:none;width:64px;height:84px}.cast-tool .pair .plus{color:var(--foreground);border:1px dashed #f4f1ea47;place-items:center;font-size:22px;line-height:1;display:grid}.cast-tool .shot{flex:none;width:64px;height:84px;position:relative}.cast-tool .shot img{width:100%;height:100%}.cast-tool .faces .shot,.cast-tool .faces .shot img{width:36px;height:48px}.cast-tool .spin{background:#00000073;border-radius:10px;place-items:center;display:grid;position:absolute;inset:0}.cast-tool .spin i{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite cast-spin}@keyframes cast-spin{to{transform:rotate(360deg)}}.cast-tool .role{color:var(--foreground);margin:0;font-size:12px;line-height:1.35}.cast-tool .caption{color:var(--muted);flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.cast-tool .specs{border:1px solid var(--line);border-radius:2px;grid-template-columns:1fr 1fr;margin:0;display:grid;overflow:hidden}.cast-tool .specs div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 12px}.cast-tool .specs div:nth-child(2n){border-right:0}.cast-tool .specs div:nth-last-child(-n+2){border-bottom:0}.cast-tool .specs dt{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.cast-tool .specs dd{margin:2px 0 0;font-size:14px;font-weight:650}.cast-tool .banner{white-space:pre-wrap;background:#d7b07a1a;border:1px solid #d7b07a66;border-radius:2px;margin:0;padding:12px 14px;font-size:.9rem}.cast-tool .blurb{padding:0 4px}.cast-tool .actions{gap:12px;margin-top:auto;display:grid}.cast-tool .account-link{color:var(--muted);justify-self:center;font-size:13px;font-weight:650;text-decoration:none}.cast-tool .account-link:hover{color:var(--foreground)}.cast-tool .primary,.cast-tool .ghost.wide{cursor:pointer;border:0;border-radius:2px;justify-content:center;align-items:center;width:100%;min-height:48px;padding:0 18px;font-size:.95rem;font-weight:650;text-decoration:none;display:inline-flex}.cast-tool .primary{background:var(--accent);color:var(--accent-ink)}.cast-tool .primary:hover:not(:disabled){filter:brightness(1.06)}.cast-tool .primary:disabled{color:#f3efe66b;cursor:not-allowed;background:#2c3038}.cast-tool .primary.busy:disabled{background:var(--accent);color:var(--accent-ink);cursor:wait}.cast-tool .ghost.wide{color:var(--foreground);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.cast-tool .ghost.wide:disabled{cursor:not-allowed;opacity:.4}.cast-tool .ghost.wide.busy:disabled{opacity:1;cursor:wait}.cast-tool .prompt-preview{border:1px solid var(--line);max-height:280px;color:var(--foreground);white-space:pre-wrap;word-break:break-word;background:#00000047;border-radius:2px;margin:0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}.cast-tool button:focus-visible,.cast-tool .primary:focus-visible,.cast-tool .faces:focus-within,.cast-tool .scene-face:focus-within{outline:2px solid var(--accent);outline-offset:2px}.cast-tool .confirm-layer{z-index:40;background:#000000b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.cast-tool .confirm{border:1px solid var(--line);background:#11151d;border-radius:2px;width:min(100%,420px);padding:24px}.cast-tool .confirm h2{margin:0;font-size:1.35rem}.cast-tool .confirm p{color:var(--muted);margin:12px 0 0;line-height:1.5}.cast-tool .confirm-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.cast-tool .confirm .primary,.cast-tool .confirm .ghost.wide{width:100%}.cast-tool .trim-dialog{border:1px solid var(--line);background:#11151d;border-radius:2px;width:min(100%,640px);padding:24px}.cast-tool .trim-dialog h2{font-family:var(--font-display), Georgia, serif;margin:0;font-size:2rem;font-weight:400}.cast-tool .trim-dialog p{color:var(--muted);margin:8px 0 0;line-height:1.5}.cast-tool .trim-video{object-fit:contain;background:#000;width:100%;max-height:360px;margin-top:16px;display:block}.cast-tool .trim-meta{color:var(--muted);justify-content:space-between;gap:12px;margin-top:10px;font-size:13px;display:flex}.cast-tool .trim-meta strong{color:var(--foreground);font-weight:650}.cast-tool .trim-track{touch-action:none;background:#2c3038;border-radius:2px;height:36px;margin-top:12px;position:relative}.cast-tool .trim-range{background:var(--accent);position:absolute;top:10px;bottom:10px}.cast-tool .trim-handle{cursor:ew-resize;background:#f4f1ea;border:0;border-radius:2px;width:14px;height:36px;padding:0;position:absolute;top:0;transform:translate(-50%)}@media (max-width:900px){.cast-tool .page{width:min(1120px,100%);padding:20px 20px 28px}.cast-tool .studio{grid-template-columns:1fr}.cast-tool .stage{height:auto;min-height:420px;position:static}.cast-tool h2{font-size:1.45rem}}
