/* Studio surfaces: quiet chrome, clear typography, media-first hierarchy. */
:root{--bg:#f4f3ef;--panel:#fffefa;--ink:#262827;--muted:#666c69;--line:#dedfd9;--border:var(--line);--soft:#eceee8;--accent:#385a4b;--sidebar:#202824}
html[data-theme=dark]{--bg:#171a19;--panel:#1e2220;--ink:#e6e9e4;--muted:#a1aaa3;--line:#343b36;--border:var(--line);--soft:#2b332d;--accent:#bed0b5;--sidebar:#141a16}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;letter-spacing:.01em;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button{border-radius:5px;min-height:36px;font-size:13px;padding:8px 13px;line-height:1.5;transition:background-color .12s,border-color .12s}button.primary{box-shadow:none;background:var(--accent);color:var(--bg);border-color:var(--accent)}button:hover:not(:disabled){border-color:var(--muted)}
h1{font-size:26px;font-weight:650;letter-spacing:-.035em;line-height:1.3}h2{font-size:19px;font-weight:620;letter-spacing:-.02em}h3{font-size:15px;font-weight:600}p{line-height:1.75}.help,small{line-height:1.65}
aside{background:var(--sidebar);gap:24px}.brand{font-size:21px;letter-spacing:.14em;font-weight:650}.brand small{letter-spacing:.24em;font-size:9px;margin-top:8px;color:#9daea2}
#navigation button,#navigation summary{font-size:12px;min-height:36px;border-radius:4px}#navigation .active{background:#ffffff12;box-shadow:inset 2px 0 #bdd0b5}#navigation .nav-icon{opacity:.65}.sidebar-bottom{border-top:1px solid #ffffff14;padding-top:14px}.identity{font-size:12px}
.workspace-header{height:54px;border-bottom:1px solid var(--line);background:var(--bg);font-size:12px}.header-tools select{font-size:11px;border-color:transparent;background:transparent}.tabs{background:var(--bg);border-bottom:1px solid var(--line);padding-top:0}.tabs button{font-size:11px;border-radius:0;box-shadow:none}
main{padding:30px 32px 72px}.heading{margin:8px 0 24px}.card,.work-panel{border-radius:7px;box-shadow:none}.work-panel{padding:24px}.panel-title{padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:20px}.stage-guide{padding-top:0}.stage-guide h3{font-size:17px}
nav.pipeline{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0 0 10px;gap:4px;margin-bottom:26px}nav.pipeline button{border-radius:4px;background:transparent;padding:12px 10px;box-shadow:none;font-size:12px;border-bottom:2px solid transparent}nav.pipeline button.active{background:var(--soft);border-bottom-color:var(--accent)}nav.pipeline button span+span{font-size:10px;margin-top:6px}
.project-list{border-radius:7px;overflow:hidden}.project-item{padding:22px 20px;background:var(--panel)}.project-item h2{font-size:19px;margin:0 0 7px}.project-team{gap:14px;margin-top:14px}.project-team small{font-size:12px}.list-label{font-size:11px;letter-spacing:.05em;padding:12px 20px;background:var(--bg)}
.asset-folder{border-radius:6px;background:var(--panel);margin:10px 0}.asset-folder>summary{padding:15px 18px;font-size:13px}.asset-categories>h3{font-size:12px;letter-spacing:.06em;margin-top:28px;color:var(--muted)}.recipe{font-size:12px;line-height:1.75;gap:7px 16px;margin:16px 0}.history-row{padding-top:18px;padding-bottom:18px}.history-row>strong{font-size:13px}.history-row>img{border-radius:4px}.revision-feedback{border-radius:4px;border-left-width:3px;padding:14px 18px}.task-progress{border-radius:5px;padding:18px}.task-progress strong{font-size:14px}.task-progress p{font-size:13px}.next-step{border-radius:5px}
#modal{border-radius:10px;border:1px solid var(--line);box-shadow:0 24px 80px #0005;padding:26px}#modalTitle{font-size:19px;margin:0 0 24px}#modalActions{border-top:1px solid var(--line);padding-top:18px;justify-content:flex-end}#modal::backdrop{background:#080d0bb3}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:5px;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:10px 12px}textarea{line-height:1.75}.form-field{font-size:13px}.team-members{border-radius:5px}.person-choice{border:1px solid transparent}.person-choice:has(input:checked){border-color:var(--accent)}
.stat{padding:22px!important}.stat .metric{font-size:34px;font-weight:500;font-variant-numeric:tabular-nums}.table-wrap{font-size:13px}.table-wrap th{font-size:11px;color:var(--muted);font-weight:500}.guide-chapter{border-radius:5px}.guide-chapter h2{font-size:18px}.guide-toc button{border-color:transparent;background:transparent}.guide-toc button.active{background:var(--soft)}
@media(max-width:1000px){nav.pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){main{padding:20px 14px 76px}.work-panel{padding:16px}.brand{font-size:14px;letter-spacing:0}.workspace-header{height:54px}.project-item{padding:18px 14px}#modal{padding:20px}nav.pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe{grid-template-columns:48px minmax(0,1fr);gap:6px 10px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
#navigation button,#navigation summary{color:#dce4dd}#navigation button.active,#navigation button:hover{color:#f3f6f1}#navigation button.active{background:#ffffff12}
/* Scene desk uses scan-friendly rows instead of nested task cards. */
.scene-desk{border-bottom:1px solid var(--line);padding:0 0 24px;margin-bottom:24px}.scene-desk h3{margin-bottom:4px}.scene-result-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;align-items:center;gap:16px;padding:14px 0;border-top:1px solid var(--line);font-size:13px}.scene-result-row>span{color:var(--muted);font-size:12px}.scene-result-row strong{font-weight:500}.scene-result-row button{background:transparent}.scene-desk+.card .task-progress{border:0;border-left:2px solid var(--line);border-radius:0;background:transparent;padding:12px 16px;margin:12px 0}.scene-desk+.card{border:0;background:transparent;padding:0 0 20px}.tabs{scrollbar-width:thin}.project-item{border-left:0;border-right:0}.work-panel>.card{box-shadow:none}#content>.row h1{margin-bottom:8px}
@media(max-width:700px){.scene-result-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.scene-result-row>strong{grid-column:1/-1}}
/* Editorial studio: a consistent frame, restrained surfaces, clear reading order. */
:root{--bg:#f3f2ed;--panel:#fcfbf7;--ink:#232724;--muted:#666d66;--line:#dcded6;--soft:#e9ede5;--accent:#35513f;--sidebar:#212922}
html[data-theme=dark]{--bg:#191c1a;--panel:#202420;--ink:#e9ebe4;--muted:#a3aba0;--line:#363d35;--soft:#2a332a;--accent:#c0cdb3;--sidebar:#151a16}
.shell{grid-template-columns:220px minmax(0,1fr)}#sidebar{padding:30px 12px 16px;scrollbar-width:thin;scrollbar-color:#ffffff24 transparent;border-right:1px solid #ffffff08}.brand{font-size:23px;font-weight:600;letter-spacing:.18em;padding:0 14px}.brand small{font-size:9px;letter-spacing:.28em;margin-top:10px}.nav-icon svg{display:block;margin:auto}#navigation button,#navigation summary{font-size:13px;min-height:38px}#navigation>details{margin:8px 0}#navigation .children{border-left-color:#ffffff13}#navigation .tree-project summary{font-size:12px;color:#aab6a9}#navigation .active{background:#ffffff0c!important;box-shadow:inset 2px 0 #c5cdb9}
.workspace-header{height:48px;padding:0 36px;background:var(--bg);border-bottom:0}.tabs{min-height:38px;gap:0;padding:0 28px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.tab,.tab.active{border:0;border-radius:0;background:transparent;padding:9px 12px;gap:12px;font-size:12px}.tab.active{box-shadow:inset 0 -2px var(--accent)}.tab button{font-size:13px!important;min-height:20px;opacity:.55}.tab:hover button{opacity:1}
main{padding:36px 40px 80px}#content{max-width:1660px;margin:0 auto}.heading{align-items:center;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid var(--line)}.heading h1{font-size:30px!important;font-weight:550;letter-spacing:-.035em;line-height:1.3;margin:0 0 8px}.heading .muted{font-size:13px}.heading button{align-self:center}h2{font-weight:550}button{border-radius:4px;min-height:36px;font-weight:500}button.primary{font-weight:600}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{opacity:.45}
.studio-directory{border:0;border-radius:0;background:transparent;overflow:visible}.studio-directory .project-item{display:grid;grid-template-columns:36px minmax(180px,1fr) 76px 86px auto;gap:20px;align-items:center;min-height:140px;padding:24px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;transition:background .15s}.studio-directory .project-item:hover{background:var(--panel)}.project-ordinal{align-self:start;padding-top:7px;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.08em}.studio-directory h2{font-size:22px;letter-spacing:-.025em;margin-bottom:12px;font-weight:550}.studio-directory .project-team{margin-top:14px;gap:12px;align-items:center}.studio-directory .project-team button{font-size:11px;min-height:28px;padding:4px 8px;background:transparent;border-color:transparent;color:var(--muted)}.studio-directory .project-team button:hover{border-color:var(--line);color:var(--ink)}.studio-directory .project-item>span:not(.project-ordinal){font-size:12px;color:var(--muted)}.project-directory>.help{font-size:11px;margin-top:22px}
nav.pipeline{gap:0;padding:0;margin-bottom:28px}nav.pipeline button{border-radius:0;min-width:0;padding:14px 12px 16px;border-bottom:2px solid transparent}nav.pipeline button.active{background:transparent!important;border-bottom-color:var(--accent)}nav.pipeline b{font-size:12px}nav.pipeline small{font-size:10px}.step-no{font-variant-numeric:tabular-nums;opacity:.7}
.work-panel{padding:28px;border-radius:3px;border-color:var(--line);min-width:0}.work-panel .card{border-radius:3px}.panel-title{margin-bottom:24px}.panel-title h2{font-size:19px}.status-note{border-radius:3px;padding:2px 7px;font-size:11px}.asset-folder{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;margin:0}.asset-folder:last-child{border-bottom:1px solid var(--line)}.asset-folder>summary{padding:19px 4px}.asset-folder[open]>summary{border-bottom:1px solid var(--line);margin-bottom:18px}.asset-folder article{padding:4px 12px 20px}.asset-categories>h3{margin:32px 0 12px;font-size:13px}.history-row{border-color:var(--line)}.recipe{color:var(--muted)}.recipe dd{color:var(--ink)}.actions{gap:8px}.task-progress{box-shadow:none}.scene-result-row{padding:18px 0}
#modal{border-radius:6px;padding:30px;max-width:min(680px,calc(100vw - 32px));box-shadow:0 20px 70px #0004}#modalTitle{font-size:22px;font-weight:550;letter-spacing:-.025em;margin-bottom:26px}#modalBody>.help{font-size:12px}#modalActions{margin-top:26px;padding-top:20px;gap:10px}.form-field>span{font-size:12px;font-weight:550;color:var(--muted)}input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:4px}.settings{max-width:850px}.settings .card{border-radius:3px}.guide-chapter{border:0;border-radius:0;background:transparent}.guide-chapter>h2{font-size:24px}.guide-chapter details{border-radius:0}.guide-summary{font-size:15px}.table-wrap th{letter-spacing:.03em}#watermarks{left:220px}
@media(min-width:1700px){main{padding:44px 56px 90px}.studio-directory .project-item{min-height:154px}}
@media(max-width:1100px){main{padding:28px 24px 72px}.studio-directory .project-item{grid-template-columns:28px minmax(150px,1fr) 62px auto;gap:12px}.studio-directory .project-item>span.muted{display:none}.workspace-header{padding:0 24px}}
@media(max-width:700px){.shell{grid-template-columns:64px minmax(0,1fr)}#sidebar{padding:22px 7px}.brand{font-size:14px;padding:0;letter-spacing:0}.workspace-header{padding:0 12px}.tabs{padding-left:8px}main{padding:24px 14px 72px}.heading{margin-bottom:20px;padding-bottom:18px;flex-wrap:wrap}.heading h1{font-size:24px!important}.studio-directory .project-item{grid-template-columns:22px minmax(0,1fr);padding:20px 0;gap:10px}.studio-directory .project-item>span{display:block}.studio-directory .project-item>span:not(.project-ordinal){display:none}.studio-directory .project-item>button{grid-column:2;justify-self:start}.studio-directory h2{font-size:19px;overflow-wrap:anywhere}.work-panel{padding:18px 14px}.asset-folder article{padding:0 0 16px}#modal{padding:22px}#watermarks{left:64px}.shell.collapsed{grid-template-columns:64px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.studio-directory .project-item{transition:none}}
/* Keep production controls compact so the first asset stays close to the fold. */
.work-panel>section.card:has(button[onclick="imageSettingsDialog()"]) {border:0;border-bottom:1px solid var(--line);padding:0 0 16px;margin:0 0 18px;background:transparent}
.work-panel>section.card:has(button[onclick="generateAllAssets()"]){border:0;padding:0 0 18px;margin:0 0 12px;background:transparent}
.work-panel>section.card:has(button[onclick="imageSettingsDialog()"]) .help{margin:4px 0 0;font-size:12px}
.work-panel>.panel-title{padding-bottom:14px;margin-bottom:20px}
nav.pipeline{margin-bottom:22px}nav.pipeline button{padding-top:10px;padding-bottom:12px}
.next-action{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0 26px;border-bottom:1px solid var(--border,#3b4445);margin-bottom:24px}.next-action h3{margin:6px 0}.next-action p{margin:0;opacity:.75}.next-action small{letter-spacing:.08em}.pool-list{max-height:48vh;overflow:auto}.pool-list p{font-size:12px;margin:4px 0}.needs-attention{opacity:.8}@media(max-width:640px){.next-action{align-items:stretch;flex-direction:column}.next-action button{width:100%}}

.scene-reading{line-height:1.85;max-width:900px}.scene-shot{padding:18px 0;border-top:1px solid var(--line)}.scene-shot section{padding:12px 0}.scene-reading pre{white-space:pre-wrap}

.scene-next{position:sticky;top:0;background:var(--panel,#20282b);padding:14px;z-index:2;border-bottom:1px solid #52605c}

.pending-scenes{margin:20px 0;padding:22px;border:1px solid #b69756;border-left:4px solid #c3a36a;border-radius:8px;background:rgba(174,139,71,.09)}.pending-scenes h3{font-size:20px;margin:0 0 10px}.pending-count{display:inline-block;padding:2px 10px;border-radius:20px;background:#c3a36a;color:#191c18;font-size:18px}.pending-scenes .needs-attention{opacity:1}.pending-scenes .scene-result-row{padding:16px 0}
