/* Editable Chinese plan lives in the independent center workspace. */
.video-script-editor { margin: 0; font: inherit; color: #24272c; }
#director-stored-script { align-self: flex-start; margin: 0 20px 16px; padding: 8px 10px; border: 1px solid #e2e6ec; border-radius: 8px; color: #24272c; background: #fff; font: inherit; font-size: 13px; cursor: pointer; }
#director-stored-script:focus-visible { outline: 1px solid #818995; outline-offset: 2px; }
.video-script-editor > summary { cursor: pointer; font-size: 14px; font-weight: 500; padding: 8px 0; }
.video-script-editor .vs-help, .video-script-editor #vs-status { font-size: 13px; color: #616b79; line-height: 1.55; margin: 8px 0; overflow-wrap: anywhere; }
.video-script-editor #vs-director-status,.video-script-editor #vs-proposal-preview { font-size: 13px; line-height: 1.55; color: #616b79; overflow-wrap: anywhere; }
.director-progress { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.director-progress li { position: relative; padding-left: 22px; color: #9aa1aa; }
.director-progress li::before { content: '✓'; position: absolute; left: 0; color: #6f7781; }
.director-progress li[data-state="active"] { color: #30363f; }
.director-progress li[data-state="active"]::before { content: '•'; animation: director-progress-pulse 1.2s ease-in-out infinite; }
@keyframes director-progress-pulse { 0%,100% { opacity:.35; transform:scale(.8); } 50% { opacity:1; transform:scale(1.25); } }
@media(prefers-reduced-motion:reduce) { .director-progress li[data-state="active"]::before { animation:none; } }
.video-script-editor #vs-proposal-preview p { white-space: pre-wrap; }
.video-script-editor .vs-director[hidden],.video-script-editor .vs-director [hidden] { display: none; }
.video-script-editor #vs-proposal-preview { margin: 12px 0; }
.video-script-editor .vs-fields { border: 0; padding: 0; margin: 0; min-width: 0; }
.video-script-editor .vs-field { display: grid; gap: 6px; margin: 10px 0; font-size: 13px; font-weight: 400; overflow-wrap: anywhere; }
.video-script-editor .vs-field :is(textarea,input) { box-sizing: border-box; width: 100%; min-width: 0; font: inherit; font-size: 14px; line-height: 1.5; color: #24272c; background: #fff; border: 1px solid #e2e6ec; border-radius: 8px; padding: 8px 10px; resize: vertical; }
.video-script-editor .vs-times { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.video-script-editor .vs-segment { border-top: 1px solid #e2e6ec; padding-top: 12px; margin-top: 12px; }
.video-script-editor .vs-segment > summary { cursor: pointer; font-size: 14px; font-weight: 500; padding-bottom: 4px; }
.video-script-editor .vs-audio > summary { cursor: pointer; font-size: 13px; color: #616b79; padding: 6px 0; }
.video-script-editor .vs-footer { padding: 8px 0 2px; margin-top: 12px; border-top: 1px solid #e2e6ec; background: #fafbfc; }
.video-script-editor .vs-footer .vs-actions { margin-top: 0; }
.video-generation-page #result-plan:has(.video-script-editor[open]) { scroll-padding-bottom: 24px; }
.video-script-editor .vs-field :is(textarea,input) { scroll-margin-bottom: 24px; }
.video-script-editor .vs-prompt { border-top: 1px solid #e2e6ec; margin-top: 16px; padding-top: 12px; }
.video-script-editor .vs-prompt > summary { cursor: pointer; font-size: 14px; font-weight: 500; }
.video-script-editor #vs-prompt-preview { box-sizing: border-box; width: 100%; min-width: 0; padding: 10px 12px; margin-bottom: 8px; border: 1px solid #e2e6ec; border-radius: 8px; background: #fafbfc; color: #24272c; font: inherit; font-size: 13px; line-height: 1.7; resize: vertical; }
.video-script-editor #vs-copy-status { font-size: 12px; line-height: 1.55; color: #616b79; }
.video-script-editor strong { font-weight: 500; font-size: 14px; }
.video-script-editor .vs-segments-heading,.video-script-editor .vs-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
.video-script-editor .vs-segments-heading { justify-content: space-between; }
.video-script-editor .vs-generation-plan { margin: 10px 0 4px; padding: 10px 12px; border: 1px solid #e2e6ec; border-radius: 8px; background: #fafbfc; font-size: 12px; line-height: 1.55; color: #616b79; overflow-wrap: anywhere; }
.video-script-editor .vs-generation-plan:empty { display: none; }
.video-script-editor .vs-generation-plan strong { color: #24272c; font-size: 13px; font-weight: 500; }
.video-script-editor .vs-generation-plan p { margin: 5px 0; }
.video-script-editor .vs-generation-plan ul { margin: 6px 0 0; padding: 0; list-style: none; display: grid; gap: 3px; }
.video-script-editor .vs-generation-plan[data-invalid="true"] { border-color: #d9c5aa; background: #fffaf2; color: #765934; }
.video-script-editor .vs-generation-plan[data-invalid="true"] p { margin: 0; }
.video-script-editor button { font: inherit; font-size: 13px; border: 1px solid #e2e6ec; color: #24272c; background: #fff; border-radius: 8px; min-height: 34px; padding: 7px 10px; cursor: pointer; text-decoration: none; }
.video-script-editor #vs-apply { color: #fff; background: #24272c; border-color: #24272c; }
.video-script-editor button:disabled { opacity: .5; cursor: default; }
.video-script-editor :is(button,summary,input,textarea):focus-visible { outline: 1px solid #818995; outline-offset: 2px; }
@media(max-width:600px) { .video-script-editor .vs-field :is(textarea,input) { font-size: 16px; } }
.video-script-editor .vs-generation[hidden],.video-script-editor .vs-generation [hidden] { display:none; }
.video-script-editor .vs-generation { margin-top:12px; padding-top:12px; border-top:1px solid #e2e6ec; }
.video-script-editor #vg-status { color:#616b79; font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.video-script-editor #vg-start { color:#fff; background:#24272c; border-color:#24272c; }
.video-script-editor #vg-history { display:grid; gap:6px; font-size:13px; margin-top:10px; }
.video-script-editor #vg-history select { font:inherit; padding:8px; min-width:0; width:100%; border:1px solid #e2e6ec; border-radius:8px; background:#fff; }
#result-preview .vg-result { width:100%; min-width:0; padding:20px; box-sizing:border-box; text-align:center; }
#result-preview .vg-result video { display:block; width:100%; max-height:65vh; margin:12px auto; object-fit:contain; background:#171717; border-radius:12px; }
#result-preview .vg-result p { font-size:13px; color:#616b79; overflow-wrap:anywhere; }
#result-preview .vg-playback-status:empty { display:none; }
.video-script-editor .vs-continuation { margin-top:12px; padding-top:12px; border-top:1px solid #e2e6ec; font-size:13px; }
.video-script-editor .vs-continuation [hidden],.video-script-editor .vs-continuation[hidden] { display:none; }
.vs-continuation p { margin:8px 0; line-height:1.55; color:#616b79; overflow-wrap:anywhere; }
.vs-continuation .vc-check { display:flex; align-items:flex-start; gap:8px; margin:10px 0; line-height:1.5; font-weight:400; }
.vs-continuation .vc-check input { flex:0 0 auto; width:15px; height:15px; margin:3px 0 0; accent-color:#24272c; }
.vs-continuation #vc-tail { display:block; width:100%; max-height:220px; object-fit:contain; border-radius:8px; background:#f4f5f7; margin-top:10px; }
.vs-continuation #vc-voice { display:block; width:100%; max-width:100%; height:36px; }
.vs-continuation .vc-boundary { font-size:12px; }
.vs-continuation .vc-boundary:empty { display:none; }
.vs-continuation :is(#vc-confirm,#vc-accept,#vc-generate) { background:#24272c; border-color:#24272c; color:#fff; }
.vs-continuation .vs-actions button { max-width:100%; overflow-wrap:anywhere; }
.video-script-editor .vs-film { margin-top:12px; padding-top:12px; border-top:1px solid #e2e6ec; font-size:13px; }
.video-script-editor .vs-film[hidden],.video-script-editor .vs-film [hidden] { display:none; }
.vs-film p { margin:8px 0; line-height:1.55; color:#616b79; overflow-wrap:anywhere; }
.vs-film #vf-assemble { background:#24272c; border-color:#24272c; color:#fff; }
.vs-film .vs-actions :is(button,a) { max-width:100%; overflow-wrap:anywhere; }

/* Read the script first; open only the part being edited. */
.video-script-editor [hidden] { display: none !important; }
.video-generation-page #director-script-host { padding: 22px; }
.video-script-editor > summary { font-size: 16px; font-weight: 600; padding: 4px 0 14px; }
.video-script-editor .vs-field { margin: 18px 0; gap: 9px; }
.video-script-editor .vs-field :is(textarea,input) { padding: 11px 12px; line-height: 1.8; }
.video-script-editor .vs-secondary { margin-top: 20px; border-top: 1px solid #e9ebee; padding-top: 16px; }
.video-script-editor .vs-secondary > summary { cursor: pointer; color: #59616c; font-size: 13px; line-height: 1.7; }
.video-script-editor .vs-script-reading { margin: 26px 0; }
.video-script-editor .vs-script-reading h3 { margin: 0 0 18px; font-size: 15px; font-weight: 600; }
.video-script-editor .vs-reading-shot { padding: 0 0 20px; }
.video-script-editor .vs-reading-shot p { clear: both; margin: 8px 0 0; font-size: 14px; line-height: 1.9; white-space: pre-wrap; overflow-wrap: anywhere; }
.video-script-editor .vs-reading-time { color: #747b85; font-size: 12px; }
.video-script-editor .vs-reading-shot button { float: right; border: 0; padding: 0 4px; min-height: 24px; color: #626a76; font-size: 12px; }
.video-script-editor .vs-segments-heading { margin-top: 28px; }
.video-script-editor .vs-segment { margin-top: 0; padding: 16px 0; }
.video-script-editor .vs-segment > summary { padding: 3px 0; }
.video-script-editor .vs-times { margin-top: 14px; }
.video-script-editor #vs-proposal-preview { margin: 22px 0; color: #30363f; font-size: 14px; line-height: 1.85; }
.video-script-editor #vs-proposal-preview > summary { cursor: pointer; font-weight: 500; }
.video-script-editor .vs-proposal-shot { margin: 24px 0; padding-top: 20px; border-top: 1px solid #e9ebee; }
.video-script-editor .vs-proposal-shot h4 { margin: 0 0 12px; font-size: 13px; color: #737b86; font-weight: 500; }
.video-script-editor .vs-proposal-shot p { margin: 10px 0; }
.video-script-editor .vs-proposal-shot blockquote { margin: 14px 0; padding-left: 12px; border-left: 2px solid #d8dde3; color: #24272c; white-space: pre-wrap; }
.video-script-editor .vs-proposal-audio { font-size: 12px; color: #69717c; }
.video-script-editor .vs-proposal-audio > summary { cursor: pointer; }
.video-script-editor #vs-manual-edit { margin: 18px 0 4px; color: #616b79; }
.video-script-editor .vs-footer { margin-top: 24px; padding: 18px 0 4px; background: #fff; }
@media(max-width:600px) { .video-generation-page #director-script-host { padding: 18px; } }

/* One continuous manuscript. Generation state stays separate from presentation. */
.video-generation-page #director-script-host { padding-top: 12px; }
.video-generation-page .vs-document-mode { border: 0; border-radius: 0; padding: 0; background: transparent; box-shadow: none; }
.video-generation-page .vs-document-mode > summary,
.video-generation-page .vs-document-mode .vs-fields,
.video-generation-page .vs-document-mode > .vs-prompt,
.video-generation-page .vs-document-mode #vs-manual-edit,
.video-generation-page .vs-document-mode #vs-proposal-preview { display: none !important; }
.video-generation-page .vs-document-mode .vs-director { border: 0; background: none; padding: 0; margin: 0 0 8px; }
.video-generation-page .vs-document-mode .vs-director p:empty,
.video-generation-page .vs-document-mode #vs-status:empty { display: none; }
.video-generation-page .vs-director-actions { margin: 0; gap: 6px; }
.video-generation-page .director-plan-panel .director-panel-top { flex-wrap: nowrap; }
.video-generation-page .vs-document-tools { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; margin: 0 0 0 auto; }
.video-generation-page .vs-document-mode #vs-director-status { margin: 0 0 6px; }
.video-generation-page .vs-document-hint { margin: 0 0 10px; font-size: 12px; line-height: 1.5; color: #68717d; }
.video-generation-page .vs-document-editor { box-sizing: border-box; display: block; width: 100%; min-height: 62vh; resize: vertical; padding: 10px 0; border: 0; border-radius: 0; background: transparent; color: #333941; font: inherit; font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; }
@media(max-width:600px) { .video-generation-page .vs-document-editor { font-size: 16px; min-height: 55vh; } }
.video-generation-page .vs-document-tools button { background: transparent; border: 0; color: #657080; padding: 4px 0; min-height: 28px; font-size: 12px; line-height: 1.5; white-space: nowrap; cursor: pointer; }
.video-generation-page .vs-document-tools button:disabled { color: #9aa1aa; cursor: default; }
.video-generation-page .vs-document-tools button:focus-visible { outline: 2px solid #818995; outline-offset: 3px; }
@media(pointer:coarse) { .video-generation-page .vs-document-tools button { min-height:36px; padding-inline:4px; } }
.video-generation-page .vs-document { font-size: 14px; line-height: 1.65; color: #333941; overflow-wrap: anywhere; }
.video-generation-page .vs-document :is(h2,h3,h4) { margin: 20px 0 8px; font-size: 15px; line-height: 1.6; font-weight: 600; color: #22262b; }
.video-generation-page .vs-document h2 { font-size: 16px; }
.video-generation-page .vs-document > :first-child { margin-top: 0; }
.video-generation-page .vs-document p { margin: 0 0 10px; white-space: pre-wrap; }
.video-generation-page .vs-document ul { margin: 0 0 12px; padding-left: 20px; }
.video-generation-page .vs-document li { margin-bottom: 7px; white-space: pre-wrap; }
.video-generation-page .vs-document hr { border: 0; border-top: 1px solid #eceef1; margin: 18px 0; }
.video-generation-page .vs-document-mode .vs-footer { background: transparent; border: 0; border-radius: 0; padding: 16px 0 0; }
.video-generation-page .vs-document-mode .vs-footer:not(:has(> :not([hidden]))) { display: none; }

/* The panel owns the actions; only the manuscript region scrolls. */
.video-generation-page .director-action-dock { flex: 0 0 auto; min-width: 0; padding: 12px 16px; border-top: 1px solid #e2e6ec; background: #fff; }
.video-generation-page .director-dock-buttons { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; }
.video-generation-page .director-dock-buttons button { min-width: 0; min-height: 40px; padding: 9px 10px; border: 1px solid #dce1e8; border-radius: 9px; background: #fff; color: #303740; font: inherit; font-size: 13px; line-height: 1.4; cursor: pointer; }
.video-generation-page .director-dock-buttons #vg-start { background: #24272c; color: #fff; border-color: #24272c; }
.video-generation-page .director-dock-buttons button:disabled { background: #f4f5f7; color: #939aa4; border-color: #e5e8ed; cursor: default; }
.video-generation-page .director-dock-buttons #vg-start:disabled { background: #e9ecf0; color: #939aa4; border-color: #e9ecf0; }
.video-generation-page .director-dock-buttons button:focus-visible { outline: 2px solid #818995; outline-offset: 2px; }
.video-generation-page .director-dock-status p { margin: 7px 0 0; color: #616b79; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; }
.video-generation-page .director-action-dock [hidden],.video-generation-page .director-dock-status p:empty { display: none !important; }
.video-segment-workspace { display:flex; flex:1; min-width:0; min-height:0; }
.video-segment-main { display:flex; flex-direction:column; flex:1; min-width:0; min-height:0; overflow:auto; }
/* The main column scrolls when controls need more room. The player fills the
   remaining height without letting its intrinsic dimensions cover controls. */
.video-segment-main > #result-preview { flex:1 0 auto; min-height:280px; }
.video-segment-rail { display:flex; flex-direction:column; flex:0 0 25%; min-width:112px; max-width:180px; min-height:0; border-right:1px solid #e2e6ec; padding:12px 8px; gap:12px; box-sizing:border-box; background:#f6f7f9; }
.video-segment-rail>strong { padding:0 4px; font-size:12px; }
.video-segment-list { flex:1; overflow:auto; min-height:0; display:flex; flex-direction:column; gap:10px; }
.video-segment-item { flex:0 0 auto; border:1px solid #e0e4ea; border-radius:10px; background:#fff; overflow:hidden; }
.video-segment-item[data-selected="true"] { border-color:#798594; box-shadow:0 0 0 1px #798594; }
.video-segment-select { display:flex; align-items:flex-start; flex-direction:column; width:100%; padding:10px; gap:4px; text-align:left; border:0; background:transparent; cursor:pointer; }
.video-segment-number { font-size:22px; color:#8d98a6; font-variant-numeric:tabular-nums; }
.video-segment-select strong { font-size:11px; }.video-segment-select small { color:#6a7380; font-size:11px; }
.video-segment-meta { display:flex; align-items:center; justify-content:space-between; gap:4px; width:100%; min-width:0; }
.video-segment-meta strong { white-space:nowrap; line-height:1.5; }
.video-segment-select .video-segment-confirmed { flex:0 0 12px; width:12px; height:16px; color:#477360; font-size:0; line-height:16px; text-align:center; }
.video-segment-confirmed::before { content:"✓"; font-size:13px; font-weight:600; }
.video-segment-choice { display:flex; gap:5px; align-items:center; padding:6px 8px; border-top:1px solid #eef0f3; font-size:11px; color:#647080; }
.video-segment-choice input { margin:0; width:13px; height:13px; accent-color:#30343a; }
.video-segment-main>.vs-continuation { flex:0 0 auto; min-width:0; padding:12px 16px; border-top:1px solid #e2e6ec; background:#fff; font-size:12px; }
.video-segment-workspace [hidden] { display:none!important; }
.video-segment-workspace button { font:inherit; cursor:pointer; }
.video-segment-workspace button:disabled { cursor:default; opacity:.5; }
.video-segment-workspace :is(button,a,input):focus-visible { outline:1px solid #818995; outline-offset:2px; }
.video-segment-main .vs-actions { display:flex; flex-wrap:wrap; gap:8px; }
.video-segment-main .vs-actions button,.video-segment-main #vc-review-result,.video-segment-main #vc-prepare,.video-segment-rail .vs-film button { min-height:36px; max-width:100%; padding:8px 10px; border:1px solid #dce1e8; border-radius:7px; background:#fff; color:#30343a; line-height:1.5; overflow-wrap:anywhere; }
.video-segment-main #vc-review-result,.video-segment-rail #vf-assemble { background:#282c32; border-color:#282c32; color:#fff; }
.video-segment-rail #vf-preview { background:#282c32; border-color:#282c32; color:#fff; }
.video-segment-rail .vs-film { margin-top:auto; padding-top:10px; border-top:1px solid #e2e6ec; font-size:11px; overflow-wrap:anywhere; }
.video-segment-rail .vs-film .vs-actions { display:flex; flex-direction:column; gap:6px; }
.video-segment-rail .vs-film p { margin:0 0 8px; color:#667080; line-height:1.5; }
.video-segment-workspace.has-segments #result-preview { flex:1 0 auto; min-height:280px; }
.video-segment-workspace.has-segments #result-preview .vg-result { padding:12px; }
.video-generation-page #result-preview:has(.vg-result) { flex:1 0 auto; min-height:280px; }
.video-generation-page #result-preview .vg-result { display:flex; flex-direction:column; min-height:0; }
.video-generation-page #result-preview .vg-result p { flex:0 0 auto; margin:6px 0; }
.video-generation-page #result-preview .vg-result video { flex:1 1 auto; width:100%; height:140px; min-height:140px; max-height:none; margin:8px auto; object-fit:contain; }
@media(max-width:600px){.video-segment-rail{min-width:100px;flex-basis:27%;padding:8px 6px}.video-segment-main>.vs-continuation{padding:10px}.video-segment-main > #result-preview,.video-segment-workspace.has-segments #result-preview{min-height:220px}.video-segment-select{padding:8px}}
.video-generation-progress { margin:auto; padding:28px; text-align:center; color:#4a5563; }
.video-generation-progress h3 { font-size:17px; color:#24272c; }.video-generation-progress p { font-size:13px; line-height:1.7; }
.video-generation-progress .generation-elapsed { font-size:11px; color:#8a929c; }
.video-generation-page .video-preview-panel[data-reference-visible="true"]>.video-segment-workspace { flex:0 0 0; height:0; overflow:hidden; }
.video-segment-thumbnail { width:100%; height:72px; object-fit:cover; border-radius:5px; background:#edf0f3; pointer-events:none; }
.video-segment-select:has(.video-segment-thumbnail) .video-segment-number { display:none; }

/* The continuation banner never covers or replaces the selected video.
   Only its title shimmers; its background and timing text stay still. */
.video-generation-banner { flex:0 0 auto; padding:18px 18px 16px; border-bottom:1px solid #e9eef1; background:#fff; color:#253544; }
.video-segment-main:has(#result-preview[data-preview-owner="history"]) > .video-generation-banner { display:none; }
.video-generation-banner .video-generation-title { display:inline-block; margin:0; font-size:16px; font-weight:500; line-height:1.5; letter-spacing:.35px; }
.video-generation-banner p { margin:5px 0 0; font-size:12px; line-height:1.6; color:#76828e; }
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .video-generation-banner .video-generation-title { background:linear-gradient(105deg,#182936 0%,#182936 32%,#50718b 43%,#50718b 51%,#182936 63%,#182936 100%); background-size:210% 100%; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; animation:video-wait-text 3.4s cubic-bezier(.4,0,.35,1) infinite; }
 .video-generation-banner[data-phase="queued"] .video-generation-title { animation-duration:5.4s; }
}
.video-segment-pending { position:relative; isolation:isolate; display:grid; place-items:center; width:100%; height:72px; overflow:hidden; border-radius:5px; background:#e9eef1; color:#334858; }
.video-segment-select:has(.video-segment-pending) .video-segment-number { display:none; }
.video-segment-select:has(.video-segment-pending):disabled { opacity:1; }
.video-segment-pending span { position:relative; z-index:1; font-size:11px; font-weight:500; }
.video-segment-pending::before { content:""; position:absolute; inset:-35%; pointer-events:none; background:radial-gradient(ellipse at 25% 35%,#96b1c6b3,transparent 50%),radial-gradient(ellipse at 75% 75%,#d1bc9a99,transparent 50%); filter:blur(12px); animation:video-wait-glow 8s ease-in-out infinite alternate; }
.video-segment-pending::after { content:""; position:absolute; inset:-35% auto -35% -55%; width:44%; pointer-events:none; background:linear-gradient(108deg,transparent,#c9dce64d 20%,#fffffff2 48%,#c9dce64d 76%,transparent); filter:blur(4px); animation:video-segment-sweep 3.4s cubic-bezier(.4,0,.35,1) infinite; }
.video-segment-pending[data-phase="queued"]::after { animation-duration:5.4s; }
@keyframes video-segment-sweep { 0%,5% { transform:translateX(-40%) skewX(-12deg); opacity:0; } 18%,75% { opacity:.8; } 90%,100% { transform:translateX(440%) skewX(-12deg); opacity:0; } }
@media(max-width:600px) { .video-generation-banner { padding:14px 12px; } .video-generation-banner .video-generation-title { font-size:15px; } .video-generation-banner p { font-size:11px; } }
@media(prefers-reduced-motion:reduce) {
 .video-generation-banner .video-generation-title { animation:none; background:none; -webkit-text-fill-color:currentColor; }
 .video-segment-pending::before { animation:none; }
 .video-segment-pending::after { display:none; }
}

.director-progress li { display:flex; flex-wrap:wrap; align-items:baseline; column-gap:10px; row-gap:2px; }
.director-progress-note { margin:10px 0 0; font-size:12px; line-height:1.6; color:#687384; }
.director-progress-note:empty { display:none; }

@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .director-progress li[data-state="active"] > span { background:linear-gradient(105deg,#182936 0%,#182936 32%,#50718b 43%,#50718b 51%,#182936 63%,#182936 100%); background-size:210% 100%; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; animation:video-wait-text 3.4s cubic-bezier(.4,0,.35,1) infinite; }
}
@media(prefers-reduced-motion:reduce) { .director-progress li[data-state="active"] > span { animation:none; background:none; -webkit-text-fill-color:currentColor; } }

.video-generation-page .vs-edit-field { margin: 4px 0 12px; }
.video-generation-page .vs-edit-field-bar { display:flex; align-items:center; justify-content:space-between; gap:8px; color:#73777d; font-size:11px; }
.video-generation-page .vs-edit-field-bar button { border:0; background:transparent; color:#555b63; padding:4px 6px; cursor:pointer; font-size:12px; }
.video-generation-page .vs-edit-field textarea { box-sizing:border-box; width:100%; min-height:100px; padding:8px; border:1px solid #d8dadd; border-radius:6px; background:#fff; color:#333941; font:inherit; line-height:1.65; resize:vertical; }
.video-generation-page .vs-edit-field textarea:focus { outline:1px solid #a4a7ab; box-shadow:none; }
.video-generation-page .vs-edit-field [hidden] { display:none !important; }
