.studio-wrap { width:min(1440px,94vw); }
.regie-hero { display:flex; justify-content:space-between; gap:48px; align-items:flex-end; padding:38px 0 30px; }
.regie-hero h1 { font-size:clamp(30px,3.5vw,48px); line-height:1.08; margin:0; letter-spacing:-.035em; }
.regie-hero em { color:var(--gold); font-style:normal; }
.regie-hero p { color:var(--mute); font-size:14px; line-height:1.65; }
.regie-hero .btn { margin:0 8px 4px 0; }
.storage-note { padding:12px 14px; border:1px solid var(--line); border-radius:8px; font-size:12px; line-height:1.6; color:var(--mute); background:rgba(255,213,74,.035); }
.storage-note b { color:var(--ink); }
.local-dot { display:inline-block; width:7px; height:7px; background:var(--gold); border-radius:50%; margin-right:6px; }
.regie-layout { display:grid; grid-template-columns:245px minmax(0,1fr); gap:30px; padding:28px 0 45px; min-height:65vh; }
.project-rail { border-right:1px solid var(--line); padding-right:22px; }
.project-rail h2 { display:flex; justify-content:space-between; font-size:11px; letter-spacing:.18em; color:var(--mute); margin:0 0 16px; }
.project-rail h2 span { color:var(--gold); }
.project-rail input { width:100%; margin-bottom:12px; }
.project-card { border:1px solid transparent; border-radius:9px; padding:14px 12px; background:transparent; color:var(--ink); text-align:left; width:100%; cursor:pointer; margin:0 0 7px; font:inherit; }
.project-card:hover { background:var(--navy); }
.project-card.active { background:var(--navy); border-color:var(--line); }
.project-card strong { display:block; font-size:14px; line-height:1.35; margin-bottom:6px; word-break:break-word; }
.project-card small { color:var(--mute); font-size:11px; }
.project-card .number { color:var(--gold); }
input,textarea,select { background:#0a1124; color:var(--ink); border:1px solid rgba(255,255,255,.16); border-radius:8px; padding:10px 11px; font:14px/1.4 inherit; font-family:inherit; max-width:100%; }
textarea { resize:vertical; }
input:focus,textarea:focus,select:focus { outline:2px solid var(--gold); outline-offset:2px; }
label { display:block; font-size:12px; color:var(--mute); margin:14px 0 7px; }
label input[type=checkbox] { margin-right:7px; accent-color:var(--gold); }
form input:not([type=checkbox]),form textarea { width:100%; }
.minor { color:var(--mute); font-size:12px; line-height:1.6; }
.error { color:#ff9e90; font-size:13px; line-height:1.5; }
.welcome { padding:44px 24px; max-width:670px; }
.welcome h2 { font-size:30px; line-height:1.2; }
.welcome p { color:var(--mute); line-height:1.7; }
.welcome ol { padding-left:18px; margin-top:30px; color:var(--mute); font-size:14px; }
.welcome li { margin:15px 0; line-height:1.6; }
.welcome b { color:var(--ink); }
.project-head { display:flex; justify-content:space-between; gap:15px; align-items:flex-start; margin-bottom:20px; }
.project-head h2 { margin:0 0 8px; font-size:25px; letter-spacing:-.025em; word-break:break-word; }
.project-head .meta { color:var(--mute); font-size:12px; }
.project-head .actions { margin:0; }
.flow { display:flex; align-items:center; gap:10px; overflow:auto; white-space:nowrap; padding:12px 0 22px; border-bottom:1px solid var(--line); font-size:11px; text-transform:uppercase; letter-spacing:.1em; }
.flow span { color:var(--mute); }
.flow .done { color:var(--gold); }
.flow i { width:22px; height:1px; background:var(--line); }
.source-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:22px; margin-top:22px; }
.source-player { width:100%; max-height:350px; border-radius:10px; background:#000; }
.source-missing { padding:35px 20px; background:var(--navy); border:1px dashed var(--line); border-radius:10px; color:var(--mute); text-align:center; }
.source-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.upload-panel { background:var(--navy); padding:18px; border-radius:10px; }
.upload-panel h3 { font-size:14px; margin:0 0 6px; }
.upload-panel p { font-size:12px; color:var(--mute); line-height:1.6; }
.upload-panel .btn { margin:6px 0; }
.upload-panel textarea { width:100%; }
.section-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:28px 0 14px; }
.section-head h3 { font-size:13px; letter-spacing:.15em; text-transform:uppercase; margin:0; }
.section-head .actions { margin:0; }
.clip-tabs { display:flex; gap:7px; flex-wrap:wrap; margin:0 0 18px; }
.clip-tab { border:1px solid var(--line); background:transparent; border-radius:8px; color:var(--mute); padding:9px 12px; font:12px inherit; font-family:inherit; cursor:pointer; max-width:235px; text-align:left; }
.clip-tab.active { color:var(--gold); background:var(--navy); border-color:var(--gold); }
.clip-tab small { display:block; color:var(--mute); margin-top:4px; font-size:10px; }
.clip-editor { display:grid; grid-template-columns:240px minmax(0,1fr); gap:24px; padding:20px; background:rgba(11,22,48,.45); border:1px solid var(--line); border-radius:12px; }
.vertical-preview { width:216px; max-width:100%; aspect-ratio:9/16; display:block; margin:0 auto; background:var(--navy); border:1px solid rgba(255,255,255,.12); border-radius:9px; }
.render-controls { display:flex; flex-direction:column; gap:8px; margin-top:12px; }
.render-controls .btn { justify-content:center; }
.render-progress { width:100%; height:6px; accent-color:var(--gold); }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.field-row input,.field-row select { width:100%; }
.clip-fields > input,.clip-fields > textarea { width:100%; }
.clip-fields > label:first-child { margin-top:0; }
.badge { display:inline-block; font-size:10px; letter-spacing:.07em; border:1px solid var(--line); color:var(--gold); border-radius:5px; padding:4px 7px; margin:0 7px 8px 0; }
.badge.estimated { color:#ffcb8a; border-color:#a77945; }
.review-block,.schedule-block { padding-top:16px; margin-top:18px; border-top:1px solid var(--line); }
.review-block h4,.schedule-block h4 { font-size:12px; letter-spacing:.1em; margin:0 0 10px; }
.checklist { display:grid; grid-template-columns:1fr 1fr; gap:0 12px; }
.checklist label,.target-list label { font-size:12px; line-height:1.5; display:flex; align-items:flex-start; }
.target-list { display:grid; grid-template-columns:1fr 1fr; gap:0 8px; }
.target-list small { display:block; font-size:10px; color:var(--mute); word-break:break-all; }
#approvalPayload { white-space:pre-wrap; font-size:13px; line-height:1.7; padding:12px; background:#05070d; border-radius:8px; max-height:40vh; overflow:auto; }
.calendar-entry { border-bottom:1px solid var(--line); padding:14px 0; font-size:13px; line-height:1.6; }
.calendar-entry strong { display:block; color:var(--gold); }
.calendar-entry span { color:var(--mute); }
.status-line { min-height:20px; }
@media(max-width:1100px) { .source-layout { grid-template-columns:1fr; }.upload-panel { display:flex; align-items:center; gap:15px; flex-wrap:wrap; }.regie-layout { grid-template-columns:205px minmax(0,1fr); gap:20px; }.clip-editor { grid-template-columns:190px minmax(0,1fr); gap:18px; padding:15px; } }
@media(max-width:780px) { .regie-hero { align-items:flex-start; flex-direction:column; gap:14px; }.regie-layout { grid-template-columns:1fr; }.project-rail { border-right:0; border-bottom:1px solid var(--line); padding:0 0 16px; }#projects { display:flex; overflow:auto; gap:8px; }.project-card { min-width:180px; max-width:210px; }.clip-editor { grid-template-columns:1fr; }.render-controls { max-width:300px; margin:12px auto; }.project-head { flex-direction:column; }.field-row,.checklist,.target-list { grid-template-columns:1fr; }header.top { flex-wrap:wrap; }nav.top a { margin:0 16px 0 0; }.section-head { align-items:flex-start; flex-wrap:wrap; }.vertical-preview { width:180px; } }
@media(prefers-reduced-motion:reduce) { * { animation:none!important; transition:none!important; } }
