:root{color-scheme:dark;--bg:#0d0e0f;--panel:#17191b;--line:#303336;--text:#f4f1e9;--muted:#9b9b96;--accent:#e3ff6d;--danger:#ffca8b;font-family:Inter,system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 80% 0,#25271b 0,transparent 30%),var(--bg);color:var(--text);min-height:100vh}
.shell{width:min(1120px,calc(100% - 32px));margin:auto;padding:34px 0 60px}
header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:26px}
h1{font-size:28px;margin:7px 0 0;letter-spacing:-.8px}
h2{font-size:36px;letter-spacing:-1.3px;margin:8px 0}
.mark,.intro>span,.card>span,.provider span,.editor-head span{font-size:11px;letter-spacing:1.8px;color:var(--accent)}
.local{color:var(--muted);font-size:12px;border:1px solid var(--line);padding:8px 11px;border-radius:99px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:30px 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.step{border:0;background:#131516;color:var(--muted);display:flex;gap:12px;align-items:center;padding:18px;text-align:left;cursor:pointer}
.step b{display:grid;place-items:center;border:1px solid #444;width:30px;height:30px;border-radius:50%}
.step span{font-weight:650}
.step small{display:block;font-weight:400;margin-top:3px}
.step.active{background:#20231c;color:var(--text)}
.step.active b{background:var(--accent);color:#111;border-color:var(--accent)}
.screen{display:none}
.screen.active{display:block}
#step-2.active{display:flex;flex-direction:column}
#step-2>.intro{order:0}#step-2>.journey-summary{order:1}#step-2>#full-song-panel{order:2}#step-2>.advanced-toggle{order:3}#step-2>#screenplay-assistant{order:4}#step-2>#first-frame-panel{order:5}#step-2>#local-music-panel{order:6}#step-2>.editor{order:7}#step-2>.actions{order:8}
.intro{margin:42px 0 28px}
.intro p{color:var(--muted);margin:0}
.layout{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}
.actor-modes{display:flex;gap:10px;margin-bottom:20px}
.actor-mode.active{border-color:var(--accent);color:var(--accent);background:#20251a}
.actor-panel{display:none}.actor-panel.active{display:block}
.mvp-panel{padding:22px}.mvp-panel>span{font-size:11px;letter-spacing:1.5px;color:var(--accent)}
.mvp-panel p{color:var(--muted)}
.form-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin:18px 0}
.form-grid label,.own-inputs label{display:grid;gap:7px;color:var(--muted);font-size:12px}
.form-grid textarea,.form-grid input,.preview-box textarea{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:11px;min-height:46px}
.form-grid textarea{min-height:86px;resize:vertical}
.preview-box{margin-top:18px;border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:12px}
.preview-box textarea{min-height:82px;resize:vertical}.preview-box small{color:var(--muted)}
.own-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}
.own-inputs input{padding:12px;border:1px dashed var(--line);border-radius:8px;background:#101213;color:var(--muted)}
.reference-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px}
.reference-slot{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#101213}.reference-slot img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.reference-slot div{padding:9px}.reference-slot strong,.reference-slot small{display:block}.reference-slot small{color:var(--muted);margin-top:4px}.reference-slot.derived{border-color:#866f3d}
.actor-pack{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px}
.actor-choice{padding:8px;text-align:left;min-height:0;background:var(--panel);position:relative}
.actor-choice img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:7px;margin-bottom:9px}
.actor-choice strong{display:block;font-size:12px;line-height:1.3}
.actor-choice small{display:block;color:var(--muted);margin-top:5px}
.actor-choice[aria-pressed=true]{border:2px solid var(--accent);padding:7px}
.actor-choice[aria-pressed=true]::after{content:'ВЫБРАН';position:absolute;top:15px;right:15px;background:var(--accent);color:#111;padding:4px 6px;border-radius:4px;font-size:9px;font-weight:800;letter-spacing:.8px}
.card,.drop,.track-upload{border:1px solid var(--line);border-radius:13px;background:var(--panel)}
.drop{min-height:390px;display:grid;place-items:center;align-content:center;gap:10px;cursor:pointer;background:linear-gradient(135deg,#1d2018,#141617);border-style:dashed}
.drop input,.track-upload input{position:absolute;opacity:0;pointer-events:none}
.drop small,.track-upload small,.card p,.card small,.provider small{color:var(--muted)}
.upload-icon{font-size:38px;color:var(--accent)}
.preview-card{padding:16px}
.portrait{aspect-ratio:1;background:#0e1011;border-radius:9px;display:grid;place-items:center;color:#727570;overflow:hidden}
.portrait img,.thumb img{width:100%;height:100%;object-fit:cover}
.preview-card h3{margin:18px 0 4px}
.preview-card p{margin:0}
.gap,.notice{border:1px solid #655136;background:#2a241c;color:#f2d3a5;padding:13px 16px;border-radius:10px;margin-top:16px;font-size:13px}
.actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px}
button,.download{font:inherit;border:1px solid var(--line);border-radius:9px;padding:12px 18px;min-height:46px;color:var(--text);background:#1a1c1e;text-decoration:none;cursor:pointer}
button:focus-visible,.download:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.primary{background:var(--accent);color:#131508;border-color:var(--accent);font-weight:750}
.primary:disabled{opacity:.35;cursor:not-allowed}
.track-upload{display:flex;align-items:center;gap:15px;padding:20px;cursor:pointer}
.track-upload.disabled{opacity:.55;cursor:not-allowed}
.track-upload>span{font-size:28px;color:var(--accent)}
.track-upload strong{display:block}
.track-upload small{margin-left:auto}
.editor{margin-top:18px;padding:25px}
.editor-head{display:flex;justify-content:space-between;align-items:flex-end}
.editor-head strong{display:block;font-size:25px;margin-top:7px}
.editor-head b{font-size:22px;color:var(--accent)}
audio{width:100%;margin:26px 0}
.preview-controls{display:flex;align-items:center;gap:14px;margin-top:-12px;margin-bottom:22px}.preview-controls span{color:var(--muted);font-size:13px}
.range-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.range-wrap label{font-size:12px;color:var(--muted)}
.range-wrap output{float:right;color:var(--text)}
input[type=range]{width:100%;accent-color:var(--accent)}
.pin{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px}
.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.summary .card{padding:16px;min-height:245px}
.thumb{height:135px;background:#0d0f10;border-radius:8px;margin:12px 0;overflow:hidden}
.sound{height:135px;display:grid;place-items:center;font-size:55px;color:var(--accent);background:#20251a;border-radius:8px;margin:12px 0}
.summary strong,.summary small{display:block}
.status-card{display:flex;flex-direction:column}
.status{display:flex;align-items:center;gap:9px;font-size:23px;margin:35px 0 8px}
.status i{width:12px;height:12px;border-radius:50%;background:#7e817b}
.status[data-state=queued] i{background:#ffdc72}
.status[data-state=running] i{background:#7bcfff}
.status[data-state=done] i{background:var(--accent)}
.status[data-state=fail] i,.status[data-state=submission_unknown] i{background:#ff7e71}
.status[data-state=disabled] i,.status[data-state=reconciliation_review] i{background:#ffca8b}
.provider{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:14px;padding:20px}
.provider strong,.provider small{display:block;margin-top:7px}
.hidden{display:none!important}
.generate{min-width:190px}
.fixture-banner{padding:11px 14px;margin-bottom:18px;border:1px solid #8a7332;background:#332b17;color:#ffe89b;border-radius:9px;font-size:12px;font-weight:750;letter-spacing:.4px}
.inline-message{position:sticky;top:8px;z-index:5;padding:14px 16px;margin-bottom:18px;border:2px solid #ff8d80;background:#3a201e;color:#ffe5df;border-radius:10px;font-weight:650}
.diagnostics{margin-top:14px;padding:16px;color:var(--muted);font-size:12px}.diagnostics summary{cursor:pointer;color:var(--text);font-weight:700}.diagnostics div{margin-top:9px;overflow-wrap:anywhere}
.result-card{margin-top:16px;padding:18px}.result-card video{display:block;width:100%;max-height:520px;background:#000;border-radius:9px;margin:14px 0}.result-card strong,.result-card small{display:block}
.creator-panel{display:grid;gap:14px;margin:0 0 18px;padding:20px}.creator-panel h3{margin:0}.creator-panel label{display:grid;gap:7px;color:var(--muted);font-size:13px}.creator-panel textarea,.creator-panel input,.creator-panel select{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:11px}.creator-panel textarea{min-height:92px;resize:vertical}.policy-grid,.music-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.policy-grid label,.music-controls label{display:flex;align-items:center;gap:8px}.policy-grid input,.music-controls input[type=checkbox]{width:18px;height:18px}.bilingual-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.local-status{margin:0;color:var(--muted);font-size:13px}.creator-panel audio{width:100%}
.header-actions{display:flex;align-items:center;gap:12px}.clip-choices{padding:22px;margin:18px 0}.clip-choices h2{margin:0 0 15px;font-size:24px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choice-grid button{text-align:left}.choice-grid strong,.choice-grid small{display:block}.choice-grid small{color:var(--muted);margin-top:5px}.full-song-panel{padding:22px;margin:18px 0;display:grid;gap:13px}.full-song-panel h3{margin:0;font-size:25px}.rights{display:flex;gap:9px;align-items:flex-start}.rights input{width:19px;height:19px;flex:none}.upload-state{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.upload-state progress{grid-column:1/-1;width:100%;accent-color:var(--accent)}#full-song-analysis{display:grid;gap:14px}#full-song-analysis>label{display:grid;gap:7px;color:var(--muted)}#full-song-lyrics,.shot textarea{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:10px;resize:vertical}.storyboard{display:grid;gap:10px}.shot{display:grid;grid-template-columns:210px repeat(3,1fr);gap:10px;border:1px solid var(--line);border-radius:9px;padding:12px}.shot strong,.shot small{display:block}.shot small{color:var(--muted);margin-top:6px}.shot label{display:grid;gap:5px;color:var(--muted);font-size:12px}.shot textarea{min-height:112px}.shot-meta{display:grid;align-content:start;gap:8px}.shot-frame{display:grid;gap:4px;min-height:118px;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#0d0f10;color:var(--muted);place-items:center;text-align:center}.shot-frame img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.shot-frame small{padding:0 6px 6px;overflow-wrap:anywhere}.shot-regenerate{width:100%;min-height:44px}
.performance-preview{display:grid;gap:8px;margin:16px 0;padding:16px;border:1px solid var(--accent);border-radius:10px;background:#20251a;min-width:0;max-width:100%}.performance-preview>span{font-size:11px;letter-spacing:1.5px;color:var(--accent)}.performance-preview h4{margin:0;font-size:19px}.performance-preview p,.performance-preview small{margin:0;color:var(--muted)}.performance-preview output{display:block;font-weight:750;color:var(--accent);overflow-wrap:anywhere}.shot select{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:10px;min-width:0;max-width:100%}
.journey-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:4px}.journey-summary>div{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:11px;padding:14px;background:#131516}.journey-summary b{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--accent);color:#111}.journey-summary span,.journey-summary strong,.journey-summary small{display:block}.journey-summary small,.plain-help,#audio-rights-help{color:var(--muted)}.cost-box{display:grid;gap:8px;border:2px solid var(--accent);background:#20251a;color:var(--text);padding:16px;border-radius:10px}.cost-box strong{font-size:20px}.cost-box span,.cost-box small{display:block;color:var(--muted)}.cost-box summary{cursor:pointer;margin-top:4px}.rights{min-height:44px;padding:8px 0;cursor:pointer}
.analysis-strip,.stage-one-tools,.before-after{border:1px solid var(--line);border-radius:10px;padding:13px;background:#131516}.stage-one-tools{display:grid;gap:10px}.stage-one-tools h4{margin:8px 0 0}.stage-one-tools textarea,.stage-one-tools input{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:10px}.before-after{white-space:pre-wrap;line-height:1.5}.stage-one-tools img{display:block;width:min(100%,720px);aspect-ratio:3/2;object-fit:contain;background:#090a0b;border-radius:8px}.shot-retake{width:100%;min-height:44px}
.passport-panel{display:grid;gap:10px;margin:16px 0;padding:16px;border:1px solid var(--accent);border-radius:10px;background:#20251a;min-width:0}.passport-panel>span{font-size:11px;letter-spacing:1.5px;color:var(--accent)}.passport-panel h4,.passport-panel p{margin:0}.passport-panel textarea{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:10px;min-height:80px}.passport-view-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}.passport-view{display:grid;gap:6px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px}.passport-view>*{min-width:0;max-width:100%;overflow-wrap:anywhere}.passport-view img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.passport-view button{width:100%;min-height:40px;padding:8px}.similarity-review{color:#ffd27c}
.packaging{border:1px solid var(--line);border-radius:9px;padding:14px;display:grid;gap:10px}.packaging>span{font-size:11px;letter-spacing:1.5px;color:var(--accent)}.packaging h4{margin:0}.packaging small{color:var(--muted)}.packaging-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.packaging-grid label{display:grid;gap:6px;color:var(--muted);font-size:13px}.packaging select{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:10px;min-width:0;max-width:100%}
.advanced-toggle{margin-top:16px;width:100%;color:var(--muted)}.advanced-only{display:none}.advanced-only.revealed{display:grid}.editor.advanced-only.revealed{display:block}
#toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,100px);background:#f1f2e9;color:#151611;padding:12px 18px;border-radius:9px;transition:.2s}
#toast.show{transform:translate(-50%,0)}
.login-shell{width:min(460px,calc(100% - 32px));margin:10vh auto}
.login-shell>p{color:var(--muted)}
.login-card{display:grid;gap:18px;padding:24px;margin-top:28px}
.login-card label{display:grid;gap:7px;color:var(--muted);font-size:13px}
.login-card input{font:inherit;color:var(--text);background:#101213;border:1px solid var(--line);border-radius:8px;padding:12px}
#login-error{min-height:20px;color:var(--danger);margin:0}
.onboarding-shell{width:min(620px,calc(100% - 32px));margin:5vh auto}.onboarding-shell .login-card{margin-top:18px}.onboarding-shell>a,.login-card>a{color:var(--accent)}#onboarding-error{min-height:20px;color:var(--danger)}
@media(max-width:760px){.shell{width:min(100% - 22px,1120px);padding-top:18px}
header{display:block}
.header-actions{justify-content:space-between;margin-top:13px}.choice-grid,.shot{grid-template-columns:1fr}.upload-state{grid-template-columns:1fr 1fr}.upload-state span{grid-column:1/-1;overflow-wrap:anywhere}
.local{display:inline-block;margin-top:15px}
.steps{grid-template-columns:repeat(3,1fr);position:sticky;top:0;z-index:4}
.step{justify-content:center;padding:10px 6px;min-width:0}.step span{font-size:12px}.step b{flex:0 0 30px}.step:nth-child(3) span{display:none}
.step small{display:none}
.intro{margin-top:28px}
h2{font-size:29px}
.layout,.summary,.provider,.range-wrap,.form-grid,.own-inputs,.policy-grid,.music-controls,.bilingual-grid,.journey-summary,.packaging-grid{grid-template-columns:1fr}
#step-2>*{min-width:0;max-width:100%}.full-song-panel,#full-song-analysis,#full-song-analysis>*,.performance-preview,.packaging,.packaging-grid,.packaging-grid label,.packaging select{min-width:0;max-width:100%;width:100%}#full-song-analysis textarea,#full-song-analysis input,#full-song-analysis button{min-width:0;max-width:100%;width:100%}.upload-state button{min-width:0}
.actor-modes{display:grid}.reference-grid,.passport-view-grid{grid-template-columns:repeat(2,1fr)}
.actor-pack{grid-template-columns:repeat(2,1fr)}
.drop{min-height:260px}
.track-upload small{display:none}
.actions{gap:10px}
.actions button{flex:1}
.actions>div{display:flex;flex-direction:column;width:100%;min-width:0;gap:8px}.actions>div>*{width:100%;min-width:0;text-align:center}.actions>.secondary{flex:0 0 auto}.preview-controls{align-items:stretch;flex-direction:column}.preview-controls button{width:100%}.generate{min-width:0}
.summary .card{min-height:auto}
.shot{grid-template-columns:1fr}.shot textarea{min-height:92px}.shot-frame{min-height:0}.shot-frame img{max-height:none}.storyboard{scroll-snap-type:y proximity}.shot{scroll-snap-align:start}
}
