/* Dominion Video Studio: scoped cinematic workbench */
body.dv-open{overflow:hidden}
#dv-launch{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(126,255,105,.28);border-radius:10px;padding:8px 11px;background:linear-gradient(180deg,rgba(18,37,29,.94),rgba(4,12,10,.97));color:#c9ffd0;font:700 10px/1 ui-sans-serif,system-ui;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;box-shadow:0 2px 11px #0008,inset 0 1px #fff1}#dv-launch span{color:#7dff55;font-size:16px}#dv-launch:hover{border-color:#8eff75;box-shadow:0 0 20px #55ff4929}
#dv-root{position:fixed;z-index:1100;inset:0;color:#dbece4;background:#030807;overflow:hidden;font-family:Bahnschrift,"Segoe UI",system-ui,sans-serif;--dv-green:#7dff55;--dv-mint:#c6ffd0;--dv-copper:#f3a36a;--dv-line:#ffffff17;--dv-panel:rgba(8,19,15,.94);--dv-muted:#8ea69c;--dv-deep:#020706;animation:dv-in .25s ease both}#dv-root *{box-sizing:border-box}#dv-root button,#dv-root input,#dv-root textarea,#dv-root select{font:inherit}#dv-root button{cursor:pointer;color:inherit}#dv-root button:focus-visible,#dv-root input:focus-visible,#dv-root textarea:focus-visible,#dv-root select:focus-visible{outline:2px solid var(--dv-green);outline-offset:2px}@keyframes dv-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.dv-shell{height:100dvh;min-height:0;background:radial-gradient(1000px 600px at 48% -5%,#173a273d,transparent 62%),linear-gradient(130deg,#06110e,#010403 55%,#07100d);display:flex;flex-direction:column}.dv-top{height:58px;flex:none;display:flex;align-items:center;gap:17px;padding:0 18px;border-bottom:1px solid var(--dv-line);background:linear-gradient(90deg,#07120f,#08100dcb);box-shadow:0 6px 25px #0007}.dv-mark{border:0;background:none;padding:0;color:#ebfff0;font:800 12px/1 ui-monospace,monospace;letter-spacing:.14em}.dv-mark span{color:var(--dv-green);font-size:20px}.dv-mark b{color:var(--dv-copper);font-weight:800}.dv-project-name{display:flex;align-items:center;gap:11px;min-width:180px;flex:1}.dv-project-name input{max-width:300px;width:100%;padding:5px 0;color:#fff;background:transparent;border:0;border-bottom:1px solid transparent;font-size:15px;font-weight:650}.dv-project-name input:hover,.dv-project-name input:focus{border-bottom-color:#7dff5575}.dv-project-name span{color:var(--dv-green);font:700 9px/1 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.08em}.dv-single-title{color:var(--dv-copper)!important}.dv-top-actions{display:flex;align-items:center;gap:7px}.dv-top-actions button,.dv-timeline-toolbar button,.dv-panel header button,.dv-panel footer button,.dv-agent-strip button,.dv-chat-head button{border:1px solid #a9e8d52b;border-radius:7px;padding:7px 10px;background:#091610;color:#c7ded4;font-size:11px}.dv-top-actions button:hover,.dv-timeline-toolbar button:hover,.dv-panel header button:hover,.dv-panel footer button:hover{border-color:#81ff6a8a;background:#13271b}.dv-top-actions .dv-primary,.dv-project-actions .dv-primary{color:#061108;font-weight:850;border-color:#a2ff82;background:linear-gradient(180deg,#b6ff9c,#65df67);box-shadow:0 3px 13px #65df6733}.dv-close{font-size:20px!important;padding:3px 8px!important;color:#aebdb6!important}
.dv-controlbar{min-height:59px;display:flex;align-items:end;gap:8px;padding:8px 17px 10px;border-bottom:1px solid var(--dv-line);background:#07100ce8;overflow:auto}.dv-controlbar label{display:grid;gap:3px;min-width:91px;color:#789188;font:700 8px/1 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}.dv-controlbar input,.dv-controlbar select{width:100%;padding:5px 7px;color:#def8e6;border:1px solid #9ed7c022;border-radius:5px;background:#020806;font-size:11px}.dv-controlbar label:nth-child(2){min-width:130px}.dv-estimate{margin-left:auto;align-self:center;color:#95afa4;font-size:10px;white-space:nowrap}.dv-generate{align-self:center;white-space:nowrap;border:1px solid #f0a26a99;border-radius:7px;padding:9px 12px;color:#ffe0c7;background:linear-gradient(180deg,#5e3321,#20120c);font-size:11px;font-weight:750;box-shadow:0 2px 12px #f3813522}.dv-generate:hover{filter:brightness(1.18)}
.dv-workspace{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-template-rows:minmax(210px,1fr) minmax(230px,.72fr);gap:0;flex:1;min-height:0;overflow:hidden}.dv-stage{position:relative;display:flex;min-width:0;min-height:0;flex-direction:column;padding:15px 19px 10px;background:radial-gradient(600px 250px at 50% 0,#1f4e2922,transparent 75%)}.dv-player{position:relative;display:grid;place-items:center;flex:1;min-height:150px;overflow:hidden;border:1px solid #bdecc834;border-radius:13px;background:radial-gradient(circle at 50% 45%,#102f23,#040b08 63%);box-shadow:0 16px 40px #0008,inset 0 1px #d6ffdf0a}.dv-player-grid{position:absolute;inset:0;opacity:.25;background:linear-gradient(#7dff5510 1px,transparent 1px),linear-gradient(90deg,#7dff5510 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(ellipse at center,#000,transparent 78%)}.dv-player-empty{z-index:1;text-align:center;color:#b7cec3}.dv-player-empty span{display:block;margin-bottom:10px;color:#88ff67;font-size:38px;text-shadow:0 0 23px #77ff5588}.dv-player-empty b{display:block;font-size:15px;letter-spacing:.04em}.dv-player-empty small{display:block;max-width:260px;margin:7px auto;color:#82988e;font-size:11px;line-height:1.4}.dv-safe{position:absolute;top:10px;right:10px;color:#91aa9f;font:700 9px/1 ui-monospace,monospace;letter-spacing:.08em}.dv-play{position:absolute;bottom:15px;left:15px;display:grid;place-items:center;width:35px;height:35px;border:1px solid #9dff8655;border-radius:50%;background:#07110bd9;color:#caffbe;box-shadow:0 3px 12px #0008}.dv-agent-strip{display:flex;align-items:center;gap:7px;margin-top:10px;color:#788f85;font-size:10px;white-space:nowrap;overflow:auto}.dv-agent-strip b{color:#c9e4d7;font-size:10px}.dv-agent-strip i{color:#3f5e50}.dv-agent-strip button{margin-left:auto;padding:5px 8px;white-space:nowrap}.dv-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--dv-green);box-shadow:0 0 9px var(--dv-green);animation:dv-pulse 1.8s infinite}@keyframes dv-pulse{50%{opacity:.35;box-shadow:none}}
.dv-chat{grid-area:chat;position:relative;z-index:2;display:flex;min-height:0;flex-direction:column;border-left:1px solid var(--dv-line);background:linear-gradient(180deg,#0a1511fa,#050a08fa);box-shadow:-12px 0 30px #0003}.dv-chat-head{display:flex;justify-content:space-between;padding:13px 14px;border-bottom:1px solid var(--dv-line);font:750 10px/1 ui-monospace,monospace;color:#b9d6c9;text-transform:uppercase;letter-spacing:.08em}.dv-chat-head .dv-pulse{margin-right:7px}.dv-chat-head button{display:none;padding:4px 7px}.dv-chat-body{flex:1;padding:12px;overflow:auto}.dv-chat-body article{margin:0 0 10px;padding:10px 11px;border:1px solid #b4ddc51c;border-radius:9px;background:#ffffff05;color:#bed1c7;font-size:11px;line-height:1.48}.dv-chat-body article b{color:var(--dv-green);font:700 9px/1 ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.dv-chat-body article p{margin:6px 0 0}.dv-chat-body article.user{margin-left:24px;background:#66df6211;border-color:#78ff6a33}.dv-chat-body article.error{border-color:#ff8d6c66;color:#ffc8ba}.dv-chat form{display:flex;gap:7px;padding:10px;border-top:1px solid var(--dv-line)}.dv-chat textarea{min-height:42px;flex:1;resize:none;padding:8px;color:#eefaf3;border:1px solid #bcf1d02d;border-radius:7px;background:#020706;font-size:11px}.dv-chat form button{width:32px;border:1px solid #9dff8688;border-radius:7px;background:#7eea70;color:#062006;font-size:17px;font-weight:900}.dv-tray{grid-area:tray;display:flex;gap:6px;flex-wrap:wrap;padding:0 10px 10px}.dv-tray button{border:1px solid #82ff6b44;border-radius:6px;padding:5px 7px;background:#0d2115;color:#d4f5dc;font-size:9px}
.dv-timeline-panel{grid-area:timeline;display:none;min-width:0;overflow:auto;border-top:1px solid var(--dv-line);background:linear-gradient(180deg,#050c09,#030705)}.dv-timeline-toolbar{display:flex;align-items:center;gap:7px;height:40px;padding:0 12px;border-bottom:1px solid var(--dv-line);position:sticky;top:0;z-index:3;background:#09120eeF}.dv-eyebrow{color:#91b6a4;font:800 9px/1 ui-monospace,monospace;letter-spacing:.12em}.dv-timeline-toolbar .dv-eyebrow{margin-right:auto}.dv-timeline-toolbar button{padding:5px 8px;font-size:10px}.dv-zoom{display:flex;align-items:center;gap:4px}.dv-zoom button{padding:3px 7px}.dv-zoom input{width:72px;accent-color:var(--dv-green)}.dv-timeline-toolbar output{min-width:57px;color:#e5f6e9;font:700 11px/1 ui-monospace,monospace}.dv-ruler{height:24px;padding-left:130px;overflow:hidden;border-bottom:1px solid #ffffff12;background:#07100c}.dv-ruler-scroll{overflow:hidden;height:24px}.dv-scale{height:24px;position:relative}.dv-scale span{position:absolute;top:5px;border-left:1px solid #9de1bb33;padding-left:4px;color:#6b8a7b;font:700 8px/1 ui-monospace,monospace}.dv-tracks{min-width:max-content}.dv-track{display:flex;height:47px;border-bottom:1px solid #ffffff0e}.dv-track-controls{position:sticky;left:0;z-index:2;display:flex;align-items:center;gap:4px;width:130px;flex:none;padding:0 8px;background:#09120f;border-right:1px solid #ffffff16}.dv-track-controls b{flex:1;color:#aec5ba;font:700 9px/1 ui-monospace,monospace;letter-spacing:.05em}.dv-track-controls button{display:grid;place-items:center;width:19px;height:19px;padding:0;border:1px solid #b8e5d126;border-radius:4px;background:#06100b;color:#8da89b;font:700 8px/1 ui-monospace,monospace}.dv-track-controls button[aria-pressed="true"]{color:#09200c;border-color:#92ff78;background:#89ef72}.dv-lane{position:relative;min-height:46px;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(80px * var(--z,1) - 1px),#d8ffe709 calc(80px * var(--z,1)));--z:1}.dv-clip{position:absolute;top:7px;height:33px;display:flex;align-items:center;gap:5px;overflow:hidden;border:1px solid #8eff7666;border-radius:5px;background:linear-gradient(180deg,#35783d,#174421);color:#ecffeb;text-align:left;white-space:nowrap;box-shadow:inset 0 1px #ffffff22}.dv-clip.audio{border-color:#86c4fa66;background:linear-gradient(180deg,#254e76,#102843)}.dv-clip.selected{outline:2px solid #f4b27d;z-index:1}.dv-clip span{overflow:hidden;padding-left:7px;text-overflow:ellipsis;font-size:10px}.dv-clip small{color:#d4f4dc;font-size:8px}.dv-trim{position:absolute;top:0;bottom:0;width:6px;background:#e9ffdf45;cursor:ew-resize}.dv-trim.left{left:0}.dv-trim.right{right:0}.dv-playhead{position:absolute;top:-1px;bottom:0;width:1px;background:#ffb275;z-index:3;box-shadow:0 0 5px #ff9c49}.dv-playhead:before{content:"";position:absolute;left:-4px;top:0;border:4px solid transparent;border-top-color:#ffb275}
.dv-panel{position:absolute;z-index:6;display:flex;flex-direction:column;width:min(355px,38vw);height:min(440px,59vh);border:1px solid #b7ead142;border-radius:12px;background:linear-gradient(150deg,#102119f7,#07100ddf);box-shadow:0 22px 50px #000b,0 1px #fff1 inset;backdrop-filter:blur(16px);overflow:hidden}.dv-writer{top:28px;left:31px}.dv-board{top:28px;right:337px}.dv-panel header{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid var(--dv-line);color:#e0f6e7;font:800 10px/1 ui-monospace,monospace;letter-spacing:.07em}.dv-panel header i{color:var(--dv-copper);font-style:normal}.dv-panel header small{display:block;margin-top:4px;color:#8da79a;font-size:8px;letter-spacing:.02em}.dv-panel header div{display:flex;gap:4px}.dv-panel header button{padding:3px 6px}.dv-panel textarea{flex:1;width:100%;resize:none;padding:13px;color:#e8f9ed;border:0;background:#02080696;font-size:12px;line-height:1.52}.dv-panel footer{display:flex;justify-content:space-between;align-items:center;gap:7px;padding:9px 11px;border-top:1px solid var(--dv-line)}.dv-panel footer span{color:#809c8d;font:700 8px/1 ui-monospace,monospace}.dv-panel footer button{font-size:10px}.dv-scenes{flex:1;overflow:auto;padding:7px}.dv-scene{display:flex;width:100%;gap:8px;margin:0 0 5px;padding:7px;border:1px solid transparent;border-radius:7px;background:#ffffff05;color:#cce1d3;text-align:left}.dv-scene:hover,.dv-scene.selected{border-color:#a1ff8766;background:#75ff5311}.dv-thumb{display:grid;place-items:center;width:32px;height:28px;flex:none;border:1px solid #b6ead336;border-radius:4px;background:#14271c;color:#99ff78;font:700 9px/1 ui-monospace,monospace}.dv-scene b{display:block;font-size:10px}.dv-scene small{display:block;margin-top:3px;color:#839c90;font-size:9px;white-space:nowrap;max-width:165px;overflow:hidden;text-overflow:ellipsis}.dv-scene em{margin-left:auto;color:#f1ae79;font-size:8px;font-style:normal}.dv-empty-note{padding:16px;color:#89a197;font-size:11px;line-height:1.45}.dv-panel.minimized{display:none}.dv-panel.expanded{position:fixed;z-index:12;top:72px;bottom:20px;width:calc(100vw - 40px);height:auto;left:20px;right:auto}.dv-two-expanded .dv-panel.expanded{width:calc(50vw - 26px)}.dv-two-expanded .dv-writer.expanded{left:20px}.dv-two-expanded .dv-board.expanded{left:calc(50vw + 6px);right:auto}.dv-focus-mode .dv-panel.regular{display:none}.dv-focus-mode .dv-workspace{grid-template-columns:1fr 310px;grid-template-rows:1fr minmax(360px,.9fr)}.dv-focus-mode .dv-stage{padding:10px}.dv-focus-mode .dv-player{border-radius:5px}.dv-focus-mode #dv-focus{color:#09200c;background:#8bea76;border-color:#a5ff91}
.dv-notice{position:fixed;z-index:1600;left:50%;bottom:20px;max-width:min(540px,90vw);padding:11px 16px;border:1px solid #9dff7a66;border-radius:9px;background:#0b1d12f5;color:#dcf9e3;font-size:12px;box-shadow:0 12px 32px #000a;transform:translate(-50%,20px);opacity:0;pointer-events:none;transition:.2s}.dv-notice.show{transform:translate(-50%,0);opacity:1}.dv-notice.error{border-color:#ff937277;color:#ffd0c2}
/* Not-configured is a STANDING banner, never a five-second toast: a dead render engine must stay said. */
.dv-config-banner{padding:9px 16px;border-bottom:1px solid #ff937255;background:linear-gradient(180deg,#2a130bf0,#1a0c06f0);color:#ffd0c2;font-size:11.5px;line-height:1.45}.dv-config-banner b{color:#ffb08e}.dv-config-banner small{display:block;margin-top:2px;color:#c78d76;font:700 9px/1.4 ui-monospace,monospace}
.dv-crew-line{display:block;margin-top:4px;color:#6b8a7b;font:600 8.5px/1.4 ui-monospace,monospace;letter-spacing:.04em}
/* ---- the numbered pipeline. Cues only: the panels keep their sketched positions. ---------- */
.dv-stage-strip{display:flex;align-items:center;gap:7px;padding:7px 14px;border-bottom:1px solid var(--dv-line);background:#060d0af0;overflow-x:auto;scrollbar-width:none}
.dv-stage-strip::-webkit-scrollbar{display:none}
.dv-stage-step{display:inline-flex;align-items:center;gap:6px;flex:none;padding:3px 9px 3px 3px;border:1px solid transparent;border-radius:999px;color:#6f8b7d;font:700 9px/1 ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.dv-stage-step b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;border:1px solid currentColor;font:700 9px/1 ui-monospace,monospace}
.dv-stage-step[data-state="done"]{color:#8fe57e;border-color:#8fe57e33;background:#7dff5a0e}
.dv-stage-step[data-state="done"] b{color:#06180a;border-color:#8fe57e;background:#8fe57e}
.dv-stage-step[data-state="current"]{color:#ffd7a8;border-color:#f3ae6f55;background:#ffb46b12}
.dv-stage-step[data-state="current"] b{color:#2a1405;border-color:#f6bb80;background:#f6bb80}
.dv-stage-step[data-state="skipped"]{color:#5c6f66;opacity:.62}
.dv-stage-step[data-state="skipped"] b{border-style:dashed}
.dv-stage-arrow{flex:none;color:#3d5149;font-style:normal;font-size:11px}
.dv-step-badge{display:inline-grid;place-items:center;width:15px;height:15px;margin-right:6px;border-radius:50%;border:1px solid #8fe57e55;color:#9fe98d;font:700 8px/1 ui-monospace,monospace;vertical-align:middle}
/* ---- the producer's suggested next step, as one tap ---------------------------------------- */
.dv-chips{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 10px}
.dv-chip{padding:7px 11px;border:1px solid #f3ae6f66;border-radius:999px;background:linear-gradient(180deg,#2a1a0c,#150c05);color:#ffd7a8;font-size:10.5px;font-weight:700;letter-spacing:.02em}
.dv-chip:hover{border-color:#ffc78e;background:linear-gradient(180deg,#3a2410,#1d1007)}
/* Secondary by design: the conversation is the primary path, so this must never out-shout the
   send control the way a wide primary bar did. */
.dv-chat-actions{display:flex;justify-content:flex-end;padding:0 10px 10px}
.dv-generate-secondary{padding:6px 12px;border:1px solid #b8e5d13d;border-radius:7px;background:#0c1912;color:#bcd9c7;font-size:10px;font-weight:700;letter-spacing:.03em}
.dv-generate-secondary:hover:not([disabled]){border-color:#8fe57e77;color:#dcf6e3}
.dv-generate-secondary[disabled]{opacity:.5}
.dv-chat-send{align-self:stretch}
.dv-modal{position:fixed;z-index:1500;inset:0;display:grid;place-items:center;padding:20px;background:#010503b9;backdrop-filter:blur(10px)}.dv-modal-card{width:min(620px,96vw);max-height:min(80vh,720px);overflow:auto;padding:20px;border:1px solid #bcebc94d;border-radius:15px;background:linear-gradient(145deg,#14231b,#07100c);box-shadow:0 28px 80px #000d}.dv-modal-card header{display:flex;justify-content:space-between}.dv-modal-card header button{border:0;background:none;color:#d7e8df;font-size:22px}.dv-modal-card h2{margin:9px 0 5px;color:#f2fff4;font-size:21px}.dv-modal-card>p{color:#9ab0a5;font-size:12px;line-height:1.5}.dv-project-actions{display:flex;gap:8px;margin:17px 0}.dv-project-actions button,.dv-modal-card [data-mobile]{border:1px solid #a8e6ca55;border-radius:7px;padding:9px 11px;background:#0a1711;color:#d9f2e0}.dv-project-list article{display:flex;align-items:center;gap:10px;margin:7px 0;padding:11px;border:1px solid #b9ead022;border-radius:8px;background:#ffffff04}.dv-project-list article>span{color:var(--dv-green);font-size:20px}.dv-project-list article div{flex:1}.dv-project-list article b{display:block;color:#eafbed;font-size:12px}.dv-project-list article small{color:#88a195;font-size:10px}.dv-project-list article button{border:1px solid #b9ead033;border-radius:5px;padding:5px 7px;background:#0a1610;color:#ccebd4;font-size:10px}.dv-loading{padding:15px;color:#9ab5a7}.dv-mobile-only{display:none}
@media(max-width:980px){.dv-workspace{grid-template-columns:minmax(0,1fr) 270px}.dv-board{right:294px}.dv-controlbar{align-items:center}.dv-controlbar label:nth-child(2){display:none}.dv-estimate{display:none}.dv-panel{width:min(320px,45vw)}}
@media(max-width:700px){#dv-root{--mobilebar:55px}.dv-top{height:52px;padding:0 10px;gap:8px}.dv-mark{font-size:9px}.dv-project-name{min-width:0}.dv-project-name input{font-size:12px}.dv-project-name span,.dv-top-actions button:not(.dv-primary):not(.dv-close){display:none}.dv-top-actions{gap:3px}.dv-top-actions .dv-primary{padding:7px 8px;font-size:10px}.dv-controlbar{display:grid;grid-template-columns:repeat(3,1fr);height:auto;padding:8px;gap:7px}.dv-controlbar label{min-width:0!important}.dv-controlbar label:nth-child(n+4),.dv-estimate{display:none}.dv-generate{grid-column:1/-1;width:100%;padding:8px}.dv-workspace{display:flex;min-height:calc(100vh - 175px);flex-direction:column}.dv-stage{height:260px;min-height:0;padding:10px}.dv-chat{order:3;min-height:270px;border-top:1px solid var(--dv-line);border-left:0}.dv-chat-head button{display:block}.dv-timeline-panel{order:2;height:270px;flex:none}.dv-panel.regular{display:none}.dv-panel.expanded{top:0;left:0!important;right:0;bottom:0;width:100%!important;height:100%;z-index:20;border-radius:0}.dv-two-expanded .dv-panel.expanded:not(.dv-writer){display:none}.dv-focus-mode .dv-workspace{display:flex}.dv-focus-mode .dv-stage{height:calc(100vh - 105px)}.dv-focus-mode .dv-chat,.dv-focus-mode .dv-timeline-panel{display:none}.dv-agent-strip span:not(.dv-pulse),.dv-agent-strip i,.dv-agent-strip b:not(:first-of-type){display:none}.dv-ruler{padding-left:102px}.dv-track-controls{width:102px}.dv-track-controls b{font-size:8px}.dv-track-controls button{width:17px}.dv-modal-card{padding:16px}.dv-modal-card [data-mobile]{display:block;width:100%;margin:7px 0;text-align:left}.dv-mobile-only{display:block!important;padding-top:10px;border-top:1px solid var(--dv-line)}}
@media(prefers-reduced-motion:reduce){#dv-root,.dv-notice,.dv-pulse{animation:none;transition:none}}

.dv-scene{align-items:center}.dv-scene-main{display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding:0;border:0;background:transparent;color:inherit;text-align:left}.dv-scene-main>span:nth-child(2){min-width:0;flex:1}.dv-scene select{max-width:82px;padding:3px;color:#bcebc9;border:1px solid #b6ead32b;border-radius:4px;background:#07100c;font-size:8px}
.dv-scene-edit{display:grid;place-items:center;width:24px;height:24px;flex:none;border:1px solid #b6ead32b;border-radius:5px;background:#08140e;color:#bdf0c8}.dv-player video{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;background:#000}.dv-volume{display:flex;align-items:center;gap:5px;color:#9eb7ab;font-size:9px}.dv-volume input{width:70px;accent-color:var(--dv-green)}
.dv-modal-field{display:grid;gap:5px;margin:12px 0;color:#9eb8ac;font:700 9px/1 ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.dv-modal-field input,.dv-modal-field textarea{width:100%;padding:9px;color:#e8f9ed;border:1px solid #b8e9cf33;border-radius:7px;background:#030906;font:400 12px/1.45 "Segoe UI",sans-serif;text-transform:none;letter-spacing:0}.dv-modal-save{border:1px solid #a2ff82;border-radius:7px;padding:9px 12px;background:#78e970;color:#061108;font-weight:800}
.dv-track-assign{display:flex;align-items:center;gap:4px;color:#9eb7ab;font-size:9px}.dv-track-assign select{max-width:92px;padding:3px;color:#d9f1df;border:1px solid #b6ead32b;border-radius:4px;background:#07100c;font-size:9px}.dv-single-prompt{display:grid;gap:7px;margin:12px auto 0;width:min(680px,100%);color:#a9c6b6;font:800 9px/1 ui-monospace,monospace;letter-spacing:.1em}.dv-single-prompt textarea{width:100%;resize:vertical;padding:11px;color:#e9faed;border:1px solid #a6eeca42;border-radius:8px;background:#020806;font:400 13px/1.45 "Segoe UI",sans-serif;letter-spacing:0}.dv-single-prompt small{color:#829e90;font:400 10px/1.4 "Segoe UI",sans-serif;letter-spacing:0}.dv-mobile-solo .dv-chat,.dv-mobile-solo .dv-timeline-panel,.dv-mobile-solo .dv-panel{display:none!important}.dv-mobile-solo .dv-workspace{display:block;overflow:auto}.dv-mobile-solo .dv-stage{height:auto;min-height:calc(100dvh - 175px)}.dv-mobile-solo .dv-player{min-height:220px;max-height:42vh}.dv-mobile-solo .dv-controlbar label:nth-child(2),.dv-mobile-solo .dv-controlbar label:nth-child(3),.dv-mobile-solo .dv-controlbar label:nth-child(6){display:none}.dv-mobile-solo .dv-controlbar{justify-content:center}.dv-mobile-solo .dv-generate{min-width:150px}
@media(min-width:1189px){.dv-panel{width:min(405px,42vw);height:min(500px,66vh)}.dv-writer{top:20px;left:24px}.dv-board{top:20px;right:354px}}
@media(min-width:981px) and (max-width:1188px){.dv-panel.regular{width:calc((100vw - 380px)/2);height:min(460px,62vh)}.dv-writer.regular{left:14px}.dv-board.regular{right:344px}.dv-has-expanded:not(.dv-two-expanded) .dv-panel.regular{right:342px}.dv-two-expanded .dv-panel.expanded{width:calc((100vw - 370px)/2)}}
@media(min-width:701px) and (max-width:980px){.dv-panel.regular{width:calc((100vw - 310px)/2);height:min(430px,58vh)}.dv-writer.regular{left:10px}.dv-board.regular{right:280px}.dv-panel.expanded{right:270px}.dv-two-expanded .dv-panel.expanded{width:calc((100vw - 310px)/2)}.dv-two-expanded .dv-writer.expanded{left:10px}.dv-two-expanded .dv-board.expanded{left:calc((100vw - 270px)/2)}.dv-has-expanded:not(.dv-two-expanded) .dv-panel.regular{right:282px}}
@media(max-width:700px){.dv-panel.expanded{display:flex;right:0;width:100%}.dv-focus-mode .dv-panel{display:none!important}.dv-mobile-solo .dv-writer,.dv-mobile-solo .dv-board{display:none}.dv-mobile-solo .dv-top-actions [data-action="dashboard"]{display:none}}
.dv-agent-strip em{border-radius:999px;padding:2px 5px;font:700 7px/1 ui-monospace,monospace;text-transform:uppercase}.dv-agent-strip em.ready{color:#bfffaf;background:#65df6717}.dv-agent-strip em.unavailable{color:#ffc7b0;background:#f8794b17}.dv-chat-body article.degraded{border-color:#f3a36a66;background:#f3a36a0b;color:#ffd4b6}.dv-chat-body article.degraded b{color:#ffad78}.dv-generation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dv-generation-grid .dv-modal-field,.dv-generation-grid>label{min-width:0}.dv-generation-grid textarea{min-height:62px}.dv-check{display:flex!important;align-items:center;gap:7px;padding:8px;color:#b7cfc1;font-size:10px}.dv-check input{width:auto!important}.dv-mobile-generation{width:min(680px,100%);margin:9px auto;padding:9px;border:1px solid #b8e9cf2b;border-radius:8px;background:#06100c}.dv-mobile-generation summary{cursor:pointer;color:#bfe5cb;font:750 10px/1 ui-monospace,monospace}.dv-mobile-generation label{display:grid;gap:4px;color:#8eaa9c;font:700 8px/1.2 ui-monospace,monospace;text-transform:uppercase}.dv-mobile-generation input,.dv-mobile-generation select,.dv-mobile-generation textarea{width:100%;padding:7px;color:#e5f7e9;border:1px solid #b8e9cf2f;border-radius:6px;background:#020806;font:400 11px/1.35 "Segoe UI",sans-serif;text-transform:none}.dv-mobile-generation small{font-size:8px;text-transform:none}.dv-history-list article{display:flex;align-items:center;gap:12px;padding:10px;border-bottom:1px solid #ffffff14}.dv-history-list article div{min-width:0;flex:1}.dv-history-list b,.dv-history-list small{display:block}.dv-history-list small{margin-top:4px;color:#8da79a;font-size:9px}.dv-history-list button{border:1px solid #9fe3c044;border-radius:6px;padding:6px 9px;background:#0a1711;color:#d9f2e0}.dv-panel button:disabled,.dv-controlbar button:disabled,.dv-chat button:disabled{cursor:not-allowed;opacity:.5;filter:saturate(.4)}
@media(max-width:700px){.dv-generation-grid{grid-template-columns:1fr}.dv-mobile-generation{flex:none}.dv-mobile-solo .dv-controlbar{grid-template-columns:repeat(2,minmax(0,1fr))}.dv-mobile-solo .dv-controlbar label:nth-child(4),.dv-mobile-solo .dv-controlbar label:nth-child(5){display:grid}.dv-mobile-solo .dv-stage{overflow:auto}.dv-mobile-solo .dv-player{flex:none;height:230px}}
@media(max-width:700px){.dv-focus-mode .dv-project-name,.dv-focus-mode .dv-top-actions .dv-primary{display:none}.dv-focus-mode .dv-top-actions #dv-focus{display:block!important;white-space:nowrap}}

/* Sketch-faithful workspace: writer | player | storyboard, previews, wide chat, then tray. */
.dv-scene-previews{grid-area:previews;display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden;border:1px solid #b7ead12b;border-radius:10px;background:linear-gradient(180deg,#09130ff0,#050b08f0);box-shadow:0 8px 25px #0005}
.dv-scene-previews header{height:27px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:1px solid var(--dv-line);color:#91b6a4;font:800 8px/1 ui-monospace,monospace;letter-spacing:.12em}
.dv-scene-previews header button{border:0;background:none;color:#b7dfc5;font-size:9px}
.dv-preview-strip{display:flex;align-items:stretch;gap:8px;min-width:0;flex:1;padding:7px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#69d86155 transparent}
.dv-preview-card{display:flex;width:clamp(105px,11vw,154px);min-width:105px;flex-direction:column;gap:4px;padding:0 0 4px;overflow:hidden;border:1px solid #a7d7bd24;border-radius:6px;background:#07100c;color:#a9c2b6;text-align:left}
.dv-preview-card:hover,.dv-preview-card.selected{border-color:#8dff7373;background:#102118;color:#e0f8e5}
.dv-preview-card>span:last-child{padding:0 6px;overflow:hidden;font-size:8px;white-space:nowrap;text-overflow:ellipsis}
.dv-preview-visual,.dv-thumb{position:relative;display:grid;width:100%;aspect-ratio:16 / 9;place-items:center;overflow:hidden;border:1px solid #b6ead326;background:radial-gradient(circle at 50% 35%,#214731,#0a1710 68%);color:#99ff78}
.dv-preview-visual img,.dv-preview-visual video,.dv-thumb img,.dv-thumb video{width:100%;height:100%;object-fit:cover}
.dv-visual-empty{font-size:18px;opacity:.68}.dv-shot-number{position:absolute;right:4px;bottom:4px;padding:3px 4px;border-radius:3px;background:#020706d9;color:#c9ffba;font:800 8px/1 ui-monospace,monospace}
.dv-preview-empty{align-self:center;padding:0 12px;color:#718b7f;font-size:10px}
.dv-scenes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:7px;min-height:0;flex:1;overflow:auto;padding:8px}
.dv-scenes>.dv-empty-note{grid-column:1/-1}
.dv-scene{position:relative;display:flex;min-width:0;width:100%;flex-direction:column;gap:6px;margin:0;padding:6px;border:1px solid #9bcbb71e;border-radius:7px;background:#ffffff05;color:#cce1d3;text-align:left}
.dv-scene:hover,.dv-scene.selected{border-color:#a1ff8766;background:#75ff5311}.dv-scene-main{display:flex;min-width:0;width:100%;flex-direction:column;align-items:stretch;gap:5px;padding:0;border:0;background:transparent;color:inherit;text-align:left}.dv-scene-copy{min-width:0}.dv-scene-copy b,.dv-scene-copy small{display:block;overflow:hidden;text-overflow:ellipsis}.dv-scene-copy b{font-size:9px;white-space:nowrap}.dv-scene-copy small{margin-top:2px;color:#839c90;font-size:8px;line-height:1.25;white-space:nowrap}.dv-scene-controls{display:flex;gap:4px;min-width:0}.dv-scene select{min-width:0;max-width:none;flex:1;padding:3px;color:#bcebc9;border:1px solid #b6ead32b;border-radius:4px;background:#07100c;font-size:7px}.dv-scene-edit{display:grid;width:23px;height:23px;flex:none;place-items:center;border:1px solid #b6ead32b;border-radius:5px;background:#08140e;color:#bdf0c8}
.dv-tray{grid-area:tray;display:flex;align-items:center;gap:7px;min-width:0;min-height:30px;padding:3px 8px;border:1px solid #ffffff12;border-radius:7px;background:#050c09;box-shadow:0 -5px 18px #0003}.dv-tray.empty{opacity:.68}.dv-tray-label{color:#668176;font:700 8px/1 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}.dv-tray button{border:1px solid #82ff6b44;border-radius:6px;padding:5px 9px;background:#0d2115;color:#d4f5dc;font-size:9px}
.dv-focus-mode .dv-timeline-panel{display:block}

@media(min-width:701px){
  #dv-root{--dv-chat-h:clamp(150px,22vh,220px);--dv-tray-h:30px;--dv-chrome-h:117px}
  .dv-workspace{grid-template-areas:"writer stage board" "previews previews previews" "chat chat chat" "tray tray tray";grid-template-columns:minmax(200px,.82fr) minmax(300px,1.55fr) minmax(220px,.9fr);grid-template-rows:minmax(220px,1.5fr) clamp(86px,13vh,116px) var(--dv-chat-h) var(--dv-tray-h);gap:8px 10px;padding:10px 12px 8px}
  .dv-stage{grid-area:stage;padding:0;min-width:0;min-height:0}
  .dv-writer.regular{grid-area:writer}
  .dv-board.regular{grid-area:board}
  .dv-panel.regular{position:relative;z-index:3;top:auto;right:auto;left:auto;width:auto;height:auto;min-width:0;min-height:0;margin:0;border-radius:10px;box-shadow:0 9px 26px #0007,0 1px #fff1 inset}
  .dv-chat{grid-area:chat;z-index:4;min-height:0;border:1px solid #b7ead129;border-radius:10px;box-shadow:0 10px 30px #0005}
  .dv-chat-head{padding:9px 12px}.dv-chat-body{padding:8px 10px}.dv-chat-body article{display:inline-block;max-width:min(760px,88%);margin-right:8px;vertical-align:top}.dv-chat form{padding:7px 10px}.dv-chat textarea{min-height:36px}
  .dv-timeline-panel{grid-area:timeline;display:none;min-width:0;min-height:0;border:1px solid #b7ead129;border-radius:8px}
  #dv-root.dv-writer-minimized:not(.dv-board-minimized):not(.dv-focus-mode) .dv-workspace{grid-template-areas:"stage stage board" "previews previews previews" "chat chat chat" "tray tray tray"}
  #dv-root.dv-board-minimized:not(.dv-writer-minimized):not(.dv-focus-mode) .dv-workspace{grid-template-areas:"writer stage stage" "previews previews previews" "chat chat chat" "tray tray tray"}
  #dv-root.dv-writer-minimized.dv-board-minimized:not(.dv-focus-mode) .dv-workspace{grid-template-areas:"stage stage stage" "previews previews previews" "chat chat chat" "tray tray tray"}
  .dv-no-regular:not(.dv-focus-mode) .dv-stage{grid-area:stage}
  .dv-panel.expanded{position:fixed;z-index:50;top:calc(var(--dv-chrome-h) + 10px);right:auto;bottom:calc(var(--dv-chat-h) + var(--dv-tray-h) + 26px);left:12px;width:calc(100vw - 24px);height:auto;margin:0;border-radius:12px}
  .dv-two-expanded .dv-panel.expanded{width:calc(50vw - 18px)}
  .dv-two-expanded .dv-writer.expanded{right:auto;left:12px}
  .dv-two-expanded .dv-board.expanded{right:auto;left:calc(50vw + 6px)}
  .dv-has-expanded .dv-chat,.dv-has-expanded .dv-tray{position:relative;z-index:40}
  .dv-has-expanded:not(.dv-two-expanded) .dv-panel.regular{position:fixed;z-index:52;top:calc(var(--dv-chrome-h) + 17px);right:22px;left:auto;width:280px;height:42px}
  .dv-has-expanded:not(.dv-two-expanded) .dv-panel.regular>:not(header){display:none}
  .dv-has-expanded:not(.dv-two-expanded) .dv-panel.regular header{height:100%;border-bottom:0}
  .dv-focus-mode .dv-workspace{grid-template-areas:"stage chat" "timeline chat" "tray tray";grid-template-columns:minmax(0,1fr) minmax(280px,330px);grid-template-rows:minmax(210px,.88fr) minmax(260px,1.12fr) var(--dv-tray-h)}
  .dv-focus-mode .dv-panel,.dv-focus-mode .dv-scene-previews{display:none!important}
  .dv-focus-mode .dv-stage{grid-area:stage;padding:0}
  .dv-focus-mode .dv-chat{grid-area:chat}
  .dv-focus-mode .dv-timeline-panel{grid-area:timeline;display:block;min-height:0;overflow:auto}
  .dv-focus-mode .dv-player{border-radius:7px}
  .dv-focus-mode #dv-focus{color:#09200c;background:#8bea76;border-color:#a5ff91}
}
@media(min-width:1189px){.dv-board.regular .dv-scenes{grid-template-columns:repeat(4,minmax(0,1fr))}.dv-board.regular .dv-scene-copy small{display:none}.dv-panel.expanded.dv-board .dv-scenes{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}}
@media(min-width:701px) and (max-width:980px){
  .dv-workspace{grid-template-columns:minmax(150px,.68fr) minmax(230px,1.45fr) minmax(170px,.78fr);grid-template-rows:minmax(210px,1.45fr) 90px var(--dv-chat-h) var(--dv-tray-h);padding:8px;gap:7px}
  .dv-panel header{padding:8px}.dv-panel footer{padding:7px}.dv-panel textarea{padding:9px;font-size:10px}.dv-scene-previews header button{display:none}
  .dv-timeline-toolbar{gap:5px;padding:0 8px}.dv-timeline-toolbar .dv-eyebrow{flex:none;margin-right:0;white-space:nowrap}.dv-timeline-detail,.dv-timeline-toolbar .dv-zoom input{display:none}.dv-timeline-toolbar output{min-width:43px;font-size:9px}
  .dv-top-actions [data-action="history"],.dv-top-actions [data-action="undo"],.dv-top-actions [data-action="redo"]{display:none}
}
@media(max-width:700px){
  .dv-workspace{overflow-x:hidden;overflow-y:auto}
  .dv-stage{height:300px;flex:0 0 300px;overflow:hidden}
  .dv-workspace{display:flex;min-height:calc(100dvh - 175px);padding:0;gap:0;overflow-x:hidden;overflow-y:auto}
  .dv-stage{order:1;height:300px;flex:0 0 300px;overflow:hidden;padding:10px}
  .dv-scene-previews{order:2;height:118px;flex:0 0 118px;margin:0 8px 8px}
  .dv-preview-card{width:118px;min-width:118px}
  .dv-chat{order:3;min-height:300px;flex:0 0 300px;border-top:1px solid var(--dv-line);border-left:0}
  .dv-tray{order:4;min-height:34px;flex:0 0 34px;margin:0 8px 8px}
  .dv-timeline-panel{order:5;display:none;height:300px;flex:0 0 300px}
  .dv-panel.regular{display:none}
  .dv-panel.expanded{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0!important;display:flex;width:100%!important;height:100%;border-radius:0}
  .dv-two-expanded .dv-panel.expanded:not(.dv-writer){display:none}
  .dv-focus-mode .dv-workspace{display:flex;overflow:hidden}
  .dv-focus-mode .dv-stage{order:1;height:42dvh;flex:0 0 42dvh}
  .dv-focus-mode .dv-scene-previews,.dv-focus-mode .dv-chat,.dv-focus-mode .dv-tray{display:none}
  .dv-focus-mode .dv-timeline-panel{order:2;display:block;height:calc(58dvh - 105px);min-height:260px;flex:1 1 auto;overflow:auto}
  .dv-focus-mode .dv-panel{display:none!important}
  .dv-mobile-solo .dv-scene-previews,.dv-mobile-solo .dv-tray{display:none}
  .dv-timeline-toolbar{gap:5px;padding:0 8px}.dv-timeline-toolbar .dv-eyebrow{flex:none;margin-right:0;white-space:nowrap}.dv-timeline-detail,.dv-timeline-toolbar .dv-zoom input{display:none}.dv-timeline-toolbar output{min-width:43px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.dv-preview-strip{scroll-behavior:auto}}
