:root{font-family:Inter,system-ui,"Microsoft YaHei",sans-serif;color:#243247;background:#f4f6fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0;padding:0px 30px}button,select,input{font:inherit}button{border:1px solid transparent;border-radius:9px;padding:10px 18px;color:white;background:#2563eb;font-weight:600;cursor:pointer;transition:background .15s,box-shadow .15s}button:hover{background:#1d4ed8;box-shadow:0 3px 9px #2563eb22}button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}button.secondary{background:#eef2f7;color:#526078;border-color:#e0e6ee}button.secondary:hover{background:#e2e8f0}[hidden]{display:none!important}.shell-header{display:flex;align-items:center;justify-content:center;position:relative;min-height:62px;margin-bottom:22px}.project-switch{position:absolute;left:0;top:5px;z-index:15}.menu-button{background:white;color:#4b5d77;font-size:25px;line-height:1;border:1px solid #d6dfeb;padding:10px 13px}.menu-button:hover{background:#e9f1ff}.project-menu{width:290px;max-height:70vh;overflow:auto;background:white;box-shadow:0 14px 40px #13213c22;border:1px solid #e1e7ee;border-radius:12px;padding:10px;margin-top:8px}.project-menu button{width:100%;text-align:left;margin-bottom:4px;background:white;color:#334155;overflow-wrap:anywhere}.project-menu button:hover,.project-menu button.selected{background:#eff6ff;color:#2563eb}.menu-label{border-top:1px solid #e5eaf0;font-size:12px;color:#94a3b8;padding:12px 10px 6px}.project-menu small{display:block;color:#94a3b8;padding:10px;overflow-wrap:anywhere}nav{display:flex;align-items:center;width:min(860px,80%)}.step{white-space:nowrap;display:flex;align-items:center;gap:9px;font-size:16px;color:#53627a;border:1px solid #cdd8e7;background:white;padding:8px 14px}.step:hover{background:#eff6ff;color:#2563eb}.step.current{border-color:#2563eb;color:#2563eb;background:#eff6ff}.step span{border-radius:50%;background:#edf1f7;padding:5px 10px;font-size:13px}.step.current span{background:#2563eb;color:#fff}.connector{height:2px;background:#d8e1ed;flex:1;min-width:12px;margin:0 15px}main{max-width:1680px;margin:auto}.project-heading{display:flex;justify-content:space-between;align-items:center;margin:12px 0 22px;gap:16px}h1{font-size:25px;margin:3px 0;overflow-wrap:anywhere}.eyebrow{font-size:12px;color:#8492a8;margin:0 0 6px;letter-spacing:1px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.upload-group,.reader-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}select{border:1px solid #dce3ed;border-radius:8px;padding:9px;background:white;color:#475569}.file-hint{font-size:12px;color:#8492a8}.tabs{display:flex;background:#e8edf5;padding:3px;border-radius:9px}.tabs button{color:#64748b;background:transparent;border:0;padding:7px 14px;font-size:14px}.tabs button[aria-selected=true]{background:white;color:#2563eb;box-shadow:0 1px 4px #182f5012}.font-control{display:flex;gap:6px;align-items:center;color:#64748b;font-size:13px}.font-control button{background:white;color:#475569;border:1px solid #dbe3ef;padding:6px 9px}.font-control output{width:24px;text-align:center}#status{font-size:13px;color:#64748b;min-height:20px;margin:15px 0}#status.error,.error{color:#dc2626}details{border:1px solid #fcd59e;background:#fffbeb;border-radius:8px;padding:10px 14px;margin-bottom:12px;color:#9a6700;font-size:13px}#warningText{white-space:pre-wrap;max-height:160px;overflow:auto;margin-top:10px}.reader-layout{display:grid;grid-template-columns:200px minmax(0,1fr);border:1px solid #e0e6ee;border-radius:14px;overflow:hidden;background:white;height:calc(100vh - 265px);min-height:390px;box-shadow:0 5px 18px #20314e04}aside{background:#f9fafc;border-right:1px solid #e4e9f0;display:flex;flex-direction:column;min-height:0}.episode-heading{padding:20px;font-size:14px;font-weight:700;border-bottom:1px solid #e6ebf1}.episode-heading span{float:right;color:#8a97ac}.episodes{padding:10px;overflow:auto}.episodes button{display:block;width:100%;color:#56647b;background:transparent;text-align:left;font-size:14px;padding:11px 13px;margin-bottom:5px;font-weight:500;overflow-wrap:anywhere}.episodes button.selected{background:#e9f1ff;color:#2563eb;font-weight:700;border:1px solid #cfdefc}.episodes button:hover{background:#f0f4fa}.reader{display:flex;flex-direction:column;min-height:0;min-width:0}.reader-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;border-bottom:1px solid #e8ecf2;padding:16px 26px}.reader-heading h2{font-size:16px;margin:0}.reader-heading span{font-size:12px;color:#8191a8}#readingPane{flex:1;min-height:0;overflow:auto;padding:22px 32px;scrollbar-color:#cbd5e1 transparent}pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;font:17px/1.9 system-ui,"Microsoft YaHei",sans-serif;margin:0;color:#29384c}#emptyState{text-align:center;color:#8c9ab0;margin:65px auto;line-height:1.9}#emptyState h2{font-size:20px;color:#536279}.paper-icon{font-size:52px;color:#b1c4e4}.pager{border-top:1px solid #e8edf2;padding:13px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px}.pager span{font-size:13px;color:#8b98ab}.asset-placeholder{background:white;border:1px solid #e0e6ee;border-radius:14px;padding:40px}.asset-placeholder p{color:#64748b}dialog{border:0;border-radius:16px;box-shadow:0 20px 70px #0f172a30;padding:28px;width:min(440px,92vw);color:#334155}dialog::backdrop{background:#14223866}dialog h2{margin:0 0 12px;font-size:21px}dialog p{font-size:14px;line-height:1.7;white-space:pre-wrap}dialog label{display:block;font-size:14px;margin-top:20px}dialog input,dialog select{width:100%;margin-top:8px;padding:11px;border:1px solid #cbd5e1;border-radius:8px}.global-custom-input{margin-top:8px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:800px){body{padding:12px}.shell-header{padding-top:52px}nav{width:100%}.step{font-size:13px;gap:4px;padding:7px}.step span{padding:3px 7px}.connector{margin:0 5px;min-width:4px}.reader-layout{grid-template-columns:115px 1fr;height:65vh}.reader-heading,#readingPane{padding:15px}.episode-heading{padding:14px}.toolbar{align-items:stretch}.file-hint{display:none}.project-heading h1{font-size:22px}}
.story-shot-duration{margin:20px 0 0;padding:10px 12px 12px;border:1px solid #d7e2ef;border-radius:9px}.story-shot-duration legend{padding:0 5px;font-size:14px;font-weight:700}.story-shot-duration>div{display:flex;align-items:end;gap:8px}.story-shot-duration label{display:grid;flex:1;gap:6px;margin:0}.story-shot-duration select{margin:0;width:100%}.story-shot-duration small{display:block;margin-top:8px;color:#64748b;font-size:12px}
main{max-width:none;width:100%;margin:0}
.project-landing{min-height:100dvh;display:grid;place-items:center;padding:26px}.project-landing-card{width:min(1180px,92vw);min-height:min(710px,calc(100dvh - 90px));padding:38px 42px;background:#fff;border:1px solid #dfe6ef;border-radius:20px;box-shadow:0 22px 60px #20314e12;display:flex;flex-direction:column}.project-landing-card h1{margin:4px 0 10px;font-size:30px}.landing-copy{margin:0;color:#64748b;line-height:1.7}.landing-new{width:100%;font-size:18px;padding:18px;margin:28px 0 22px}.landing-project-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e5eaf0;padding-top:17px;margin-bottom:15px;color:#64748b;font-size:14px;font-weight:700}.text-button{padding:5px 0;background:transparent;color:#2563eb;border:0;border-radius:0;font-size:14px}.text-button:hover{background:transparent;color:#1d4ed8;box-shadow:none;text-decoration:underline}.landing-project-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-content:start;flex:1;overflow:hidden}.landing-project-list small{padding:42px;color:#8492a8;text-align:center;grid-column:1/-1}.landing-project-card,.all-project-card{position:relative;min-width:0;border:1px solid #e1e7ee;border-radius:12px;background:#f8fafc;overflow:hidden;transition:border-color .15s,box-shadow .15s}.landing-project-card:hover,.all-project-card:hover{border-color:#93c5fd;box-shadow:0 6px 18px #1d4ed818}.project-open{display:flex;width:100%;min-width:0;align-items:center;gap:13px;padding:10px 77px 10px 10px;color:#334155;background:transparent;text-align:left;border:0}.project-open:hover{background:#eff6ff;color:#1d4ed8;box-shadow:none}.project-thumb{width:92px;height:70px;flex:0 0 92px;border-radius:8px;object-fit:cover;background:#eaf0f7;border:1px solid #dce4ee}.project-thumb.fallback{background:linear-gradient(135deg,#eff6ff,#dbeafe 52%,#c7d2fe);position:relative}.project-thumb.fallback::after{content:"短剧";display:grid;place-items:center;height:100%;color:#476888;font-size:13px;font-weight:800;letter-spacing:2px}.project-card-copy{min-width:0;display:grid;gap:7px}.project-card-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.project-card-copy small{color:#8a98aa;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-rename{position:absolute;right:10px;top:50%;transform:translateY(-50%);padding:7px 9px;font-size:12px}.project-landing-card>small{display:block;margin-top:18px;color:#94a3b8;overflow-wrap:anywhere}.all-projects-dialog{width:min(900px,94vw);padding:25px}.all-projects-dialog .dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #e5eaf0;padding-bottom:14px}.all-projects-dialog .dialog-heading h2{margin:0}.all-projects-dialog .dialog-heading p{margin:5px 0 0;color:#8492a8;font-size:13px}.all-projects-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:250px;margin:18px 0}.all-project-card .project-thumb{width:112px;height:82px;flex-basis:112px}.project-pagination{display:flex;justify-content:flex-end;align-items:center;gap:13px;border-top:1px solid #e5eaf0;padding-top:16px}.project-pagination span{color:#64748b;font-size:13px;min-width:84px;text-align:center}.icon-close{padding:0;background:transparent;color:#64748b;border:0;font-size:28px;line-height:1}.icon-close:hover{background:transparent;color:#1e293b;box-shadow:none}@media(max-width:800px){.project-landing{padding:12px}.project-landing-card{width:100%;min-height:calc(100dvh - 24px);padding:26px 20px}.landing-project-list{grid-template-columns:1fr;overflow:auto}.all-projects-list{grid-template-columns:1fr}.landing-new{margin:22px 0 16px}.project-card-copy strong{font-size:15px}}
.shell-header{position:relative}.header-tools{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:10px;z-index:20}.header-icon-button{position:static;flex:0 0 auto;width:42px;height:42px;padding:0;border-radius:10px;font-size:22px;line-height:1;color:#475569;background:#fff;border:1px solid #cbd5e1}.header-icon-button:hover{color:#2563eb;border-color:#60a5fa;background:#eff6ff}.api-records-button{font-size:20px}#settingsDialog{width:min(460px,calc(100vw - 32px));border:0;border-radius:14px;padding:0;box-shadow:0 18px 56px #0005}#settingsDialog form{padding:24px}#settingsDialog h2{margin:0 0 16px}#settingsDialog p{margin:0 0 12px;color:#475569}#settingsDialog label{display:grid;gap:7px;color:#334155;font-weight:600}#settingsDialog input{padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}#settingsState{display:block;margin-top:8px;color:#64748b}
.user-menu-wrap{gap:0;z-index:30}.user-avatar-button{width:42px;height:42px;border-radius:50%;padding:0;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;border:2px solid #fff;box-shadow:0 4px 14px #1d4ed82a;font-size:17px;font-weight:900}.user-avatar-button:hover{background:linear-gradient(135deg,#1d4ed8,#6d28d9);box-shadow:0 6px 18px #1d4ed836}.user-menu-panel{position:absolute;right:0;top:50px;width:250px;background:#fff;border:1px solid #dbe5f2;border-radius:14px;box-shadow:0 18px 50px #0f172a24;padding:10px;display:grid;gap:6px}.user-menu-profile{display:flex;align-items:center;gap:12px;padding:10px;border-bottom:1px solid #e5edf6;margin-bottom:4px}.user-menu-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e9f1ff;color:#1d4ed8;font-weight:900}.user-menu-profile strong{display:block;color:#1e293b}.user-menu-profile small{display:block;margin-top:4px;color:#64748b}.user-menu-panel button{width:100%;text-align:left;background:#fff;color:#334155;border:0;border-radius:9px;padding:10px 11px;box-shadow:none}.user-menu-panel button:hover{background:#eff6ff;color:#1d4ed8}.user-menu-panel .danger-text{color:#dc2626}.user-menu-panel .danger-text:hover{background:#fff1f2;color:#b91c1c}
.landing-user-menu{position:fixed;right:24px;top:18px;z-index:40;display:flex;align-items:center;gap:10px}.landing-user-menu .user-menu-panel{right:0;top:52px}
:root .step:disabled,:root .step:disabled:hover{opacity:1;color:#a4adbb;background:#edf0f4;border-color:#e1e5eb;box-shadow:none;cursor:not-allowed}
:root .step:disabled span{background:#e2e7ee;color:#a4adbb}
.delivery-page{flex:1;min-height:0}.delivery-page:not([hidden]){display:flex;flex-direction:column}.delivery-shell{height:100%;min-height:0;background:#fff;border:1px solid #e0e6ee;border-radius:14px;box-shadow:0 5px 18px #20314e04;display:flex;flex-direction:column;overflow:hidden}.delivery-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;border-bottom:1px solid #e5eaf1}.delivery-header h2{margin:0 0 5px;font-size:22px}.delivery-header p{margin:0;color:#64748b;font-size:13px}.delivery-grid{display:grid;grid-template-columns:minmax(360px,480px) minmax(0,1fr);gap:16px;min-height:0;flex:1;padding:16px;background:#f6f8fb;overflow:auto}.delivery-panel{background:#fff;border:1px solid #e0e6ee;border-radius:12px;padding:16px;min-width:0}.delivery-panel h3{margin:0 0 14px;color:#1e293b}.delivery-panel label{display:grid;gap:7px;margin:0 0 12px;color:#334155;font-weight:700}.delivery-panel select{width:100%}.delivery-two-cols{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px}.delivery-note{margin:8px 0 14px;color:#64748b;font-size:13px;line-height:1.65}.delivery-slots{display:grid;gap:10px}.delivery-slot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #dfe7f1;border-radius:10px;padding:11px;background:#fbfdff}.delivery-slot strong{display:block;color:#1e293b}.delivery-slot span{display:block;margin-top:4px;color:#718096;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delivery-slot>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.delivery-slot button{padding:7px 10px;font-size:12px}.delivery-episode-select{margin-top:13px}.delivery-episode-select button{width:100%;color:#334155}.delivery-start{width:100%;margin-top:10px;font-size:16px}.delivery-info{display:grid;gap:8px;margin-bottom:13px}.delivery-info p{margin:0;color:#475569;line-height:1.55}.delivery-info b{color:#1e293b}.delivery-results{border-top:1px solid #e5eaf1;padding-top:12px}.delivery-results p{margin:0;color:#475569;overflow-wrap:anywhere}.delivery-job-message{font-weight:700;font-size:18px;color:#1e3a5f}.delivery-job-message.error{color:#dc2626}.delivery-library-dialog,.delivery-episode-dialog{width:min(720px,94vw)}.delivery-episode-dialog .dialog-heading{align-items:flex-start}.delivery-episode-heading{display:grid;grid-template-columns:minmax(0,1fr) auto 38px;gap:12px}.delivery-episode-heading .icon-close{margin-top:-14px}.delivery-episode-tools{display:flex;gap:8px;align-items:center;justify-content:flex-end;padding-top:45px;justify-self:end}.delivery-episode-tools button{padding:7px 13px;color:#334155}.delivery-library-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;max-height:58vh;overflow:auto}.delivery-library-item{display:block;text-align:left;background:#fff;color:#334155;border:1px solid #dfe7f1;padding:0 0 12px;overflow:hidden}.delivery-library-item:hover{background:#eff6ff;color:#1d4ed8}.delivery-library-item img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#edf2f7;border-bottom:1px solid #e5eaf1}.delivery-library-item strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 12px 0}.delivery-library-item span{display:block;margin-top:6px;color:#718096;font-size:12px;padding:0 12px}.delivery-empty{grid-column:1/-1;color:#8492a8;text-align:center;padding:24px}.delivery-episode-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;max-height:52vh;overflow:auto;margin-top:12px}.delivery-episode-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px;margin:0!important;border:1px solid #dfe7f1;border-radius:10px;padding:11px;background:#fbfdff}.delivery-episode-option input{width:16px;height:16px}@media(max-width:900px){.delivery-grid{grid-template-columns:1fr}.delivery-header{align-items:flex-start;flex-direction:column}.delivery-slot{grid-template-columns:1fr}.delivery-two-cols{grid-template-columns:1fr}.delivery-episode-heading{grid-template-columns:minmax(0,1fr) 38px}.delivery-episode-tools{grid-column:1/-1;padding-top:0;justify-self:end}}
:root body{height:100dvh;overflow:hidden;display:flex;flex-direction:column;padding:10px 20px}
:root .shell-header{min-height:46px;flex-shrink:0;margin-bottom:6px}
:root main{width:100%;flex:1;min-height:0;display:flex;flex-direction:column}
:root .project-heading{margin:0 0 8px;flex-shrink:0;min-height:36px}.project-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.project-global-meta{font-size:12px;font-weight:500;color:#64748b;background:#f1f5f9;border:1px solid #dbe4ef;border-radius:999px;padding:3px 9px;line-height:1.4}.title-edit-button{width:22px;height:22px;min-width:22px;padding:0;border-radius:5px;background:#fff;color:#64748b;border:1px solid #cbd5e1;font-size:14px;line-height:1;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.title-edit-button:hover{background:#eff6ff;color:#2563eb;border-color:#93c5fd;box-shadow:0 2px 7px #2563eb18}
:root .eyebrow{display:none}
:root h1{font-size:21px;margin:0}
:root #scriptPage{display:flex;flex-direction:column;flex:1;min-height:0}
:root .toolbar{gap:6px;flex-shrink:0}
:root .toolbar button,:root .project-heading button{padding:7px 12px}
:root select{padding:6px 9px}
:root #status{margin:6px 0;font-size:12px;min-height:16px;flex-shrink:0}
:root details{margin:0 0 6px;padding:5px 10px;flex-shrink:0}
:root .reader-layout{height:auto;min-height:0;flex:1}
:root .reader-heading{padding:9px 16px;flex-shrink:0}
:root .episode-heading{padding:12px 16px}
:root #readingPane{padding:14px 22px}
:root .pager{padding:8px 16px;flex-shrink:0;background:#fff}
:root .pager button{padding:7px 16px}
:root .asset-placeholder{overflow:auto}
@media(max-width:800px){:root body{padding:6px 10px}:root .shell-header{padding-top:44px}:root .reader-layout{grid-template-columns:115px minmax(0,1fr)}:root .toolbar{gap:4px}:root #readingPane{padding:10px}:root .reader-heading h2{font-size:14px}}
#content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;color:#29384c}
#content p{margin:0 0 .7em}#content h2{font-size:1.18em;margin:0 0 .8em}#content h3{font-size:1.06em;color:#1d4ed8;margin:1em 0 .6em}#content h4{font-size:1em;margin:.6em 0}
#content[contenteditable=true]{outline:none;border-radius:6px;background:#fffef8;caret-color:#2563eb}#content[contenteditable=true]:focus{box-shadow:inset 0 0 0 2px #bfdbfe}#content.locked{cursor:default;background:#f8fafc}
.format-issues{max-height:42vh;overflow:auto;border:1px solid #fecaca;background:#fff7f7;border-radius:9px;padding:10px 14px;color:#b91c1c;font-size:13px;line-height:1.65}.format-issues div+div{border-top:1px solid #fee2e2;margin-top:6px;padding-top:6px}
:root .reader-layout{grid-template-columns:100px minmax(0,1fr)}
:root .episodes{padding:7px}:root .episodes button{text-align:center;padding:9px 6px;white-space:nowrap}
:root .episode-heading{padding:10px;font-size:13px}
#assetPage{display:flex;flex-direction:column;min-height:0;flex:1;background:#fff;border:1px solid #e0e6ee;border-radius:14px;overflow:hidden}.asset-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 14px;border-bottom:1px solid #e5eaf1}.asset-doors,.asset-actions{display:flex;align-items:center;gap:8px}.asset-doors{background:#edf2f8;border-radius:11px;padding:4px}.asset-doors button{background:transparent;color:#617089;padding:8px 20px}.asset-doors button.active{background:#2563eb;color:#fff;box-shadow:0 3px 10px #2563eb33}.asset-doors span{display:inline-block;min-width:20px;margin-left:5px;padding:2px 5px;border-radius:10px;background:#ffffff33;font-size:11px}.asset-turnaround-option{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border:1px solid #cbdcf8;border-radius:9px;background:#f5f8ff;color:#334b70;font-size:13px;font-weight:600;cursor:pointer}.asset-turnaround-option input{width:15px;height:15px;accent-color:#2563eb}.asset-turnaround-option:has(input:disabled){opacity:.58;cursor:wait}.asset-actions button{padding:8px 13px}.success{background:#059669}.success:hover{background:#047857}.asset-status{font-size:12px;color:#64748b;margin:0;padding:7px 16px;border-bottom:1px solid #edf0f4}.asset-viewport{flex:1;min-height:0;overflow:hidden}.asset-slider{height:100%;display:flex;width:300%;transition:transform .28s ease}.asset-slider>section{width:33.3333%;min-width:0;height:100%;overflow:auto;padding:14px}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.asset-card{border:1px solid #dfe6ef;border-radius:12px;padding:12px;background:#fbfcfe;display:grid;grid-template-columns:92px minmax(0,1fr);gap:11px}.asset-preview{width:92px;height:120px;border-radius:9px;border:1px dashed #b9c6d8;background:linear-gradient(145deg,#edf3fa,#f8fafc);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#8a98ad;font-size:12px;padding:8px;overflow:hidden}.asset-preview img{width:100%;height:100%;object-fit:cover}.asset-card h3{font-size:15px;margin:0 0 6px;display:flex;justify-content:space-between;gap:6px}.state{font-size:11px;font-weight:500;color:#64748b}.asset-card textarea{width:100%;height:82px;resize:vertical;border:1px solid #d8e0eb;border-radius:8px;padding:8px;font:12px/1.55 inherit;color:#3a475b;background:#fff}.asset-card textarea:focus{outline:2px solid #bfdbfe;border-color:#60a5fa}.card-actions{display:flex;gap:6px;margin-top:7px;flex-wrap:wrap}.card-actions button{font-size:12px;padding:6px 9px}.portrait-confirmed{color:#047857}.turnaround-block{grid-column:1/-1;border-top:1px solid #e7ebf1;padding-top:9px}.turnaround-block .asset-preview{height:90px;width:150px;float:left;margin-right:10px}.asset-footer{display:flex;justify-content:space-between;padding:9px 14px;border-top:1px solid #e5eaf1}.index-dialog{width:min(780px,92vw)}.index-dialog pre{max-height:60vh;overflow:auto;background:#f6f8fb;border:1px solid #e1e7ef;border-radius:9px;padding:14px;font:13px/1.6 ui-monospace,Consolas,monospace}.queued{color:#b45309}
.look-meta{font-size:11px;color:#718096;margin:0 0 5px}.generation-error{margin:5px 0 0;color:#dc2626;font-size:11px;line-height:1.45;white-space:pre-wrap}.generation-error.managed-error{color:#b45309}.state.failed{color:#dc2626}@media(max-width:900px){.asset-toolbar{align-items:flex-start;flex-direction:column}.asset-actions{flex-wrap:wrap}.asset-grid{grid-template-columns:1fr}.asset-doors button{padding:7px 12px}}
.asset-empty{flex:1;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 45%,#fff 0,#f8fbff 70%)}.extract-button{min-width:230px;min-height:54px;font-size:17px;display:inline-flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 8px 24px #2563eb25}.extract-button .spinner{display:none;width:19px;height:19px;border:3px solid #ffffff66;border-top-color:#fff;border-radius:50%}.extract-button.loading .spinner{display:inline-block;animation:asset-spin .75s linear infinite}.extract-button.processing{cursor:pointer;background:#d97706}.extract-button.processing:hover{background:#b45309}.asset-workspace{display:flex;flex-direction:column;min-height:0;flex:1}.category-extract{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;grid-column:1/-1}.category-extract p{color:#7b8799;font-size:13px;margin:0}.danger{background:#dc2626}.danger:hover{background:#b91c1c}@keyframes asset-spin{to{transform:rotate(360deg)}}
.asset-grid{grid-template-columns:repeat(auto-fill,minmax(260px,300px));align-items:start;justify-content:start;gap:16px}.asset-card{display:flex;flex-direction:column;gap:10px;padding:13px;border-radius:20px;background:#fff}.asset-card>h3{display:block;margin:0;font-size:16px;color:#1e293b}.asset-unit{border-top:1px solid #e5eaf1;padding-top:10px}.asset-card>h3+.asset-unit{border-top:0;padding-top:0}.asset-unit-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;font-size:12px;color:#526078}.asset-preview-wrap{position:relative}.asset-preview{appearance:none;width:100%;height:auto;margin:0;padding:0;border:1px solid #cbd5e1;border-radius:16px;background:#f4f7fb;color:#8a98ad;font-weight:500;box-shadow:none;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}.asset-preview:hover{background:#eef4ff;border-color:#60a5fa;box-shadow:0 3px 12px #2563eb18}.asset-preview.square{aspect-ratio:1}.asset-preview.landscape{aspect-ratio:16/9}.asset-preview.portrait{aspect-ratio:3/4}.asset-preview img{display:block;width:100%;height:100%;object-fit:contain;background:#eef1f5}.asset-preview.is-processing{position:relative}.asset-preview.is-processing>img{filter:brightness(.62)}.asset-image-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;background:#0f172a52;color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em;pointer-events:none}.asset-image-spinner{width:30px;height:30px;box-sizing:border-box;border:4px solid #ffffff66;border-top-color:#fff;border-radius:50%;animation:asset-spin .75s linear infinite;filter:drop-shadow(0 2px 4px #0f172a88)}.asset-image-tools{position:absolute;left:10px;right:10px;bottom:10px;display:flex;gap:8px;justify-content:center;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .15s,transform .15s}.asset-preview-wrap:hover .asset-image-tools,.asset-preview-wrap:focus-within .asset-image-tools{opacity:1;transform:translateY(0);pointer-events:auto}.asset-image-tools button{min-height:30px;padding:5px 10px;font-size:12px;box-shadow:0 6px 16px #0f172a30}.asset-image-tools button.secondary{background:#ffffffee}.asset-unit-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.asset-unit-actions button{width:100%;min-height:36px}.look-meta{margin:6px 1px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-footer{justify-content:flex-start}.image-dialog{width:min(1100px,94vw);padding:18px}.image-dialog img{display:block;max-width:100%;max-height:82vh;margin:auto;object-fit:contain;border-radius:10px;background:#eef1f5}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.dialog-heading h2{margin:0}.icon-close{width:38px;height:38px;padding:0;border-radius:50%;background:#eef2f7;color:#526078;font-size:24px}.prompt-dialog{width:min(820px,94vw)}.prompt-dialog textarea{display:block;width:100%;height:48vh;min-height:260px;resize:vertical;border:1px solid #cbd5e1;border-radius:10px;padding:12px;font:14px/1.65 inherit;color:#26364b}.prompt-dialog textarea:focus{outline:3px solid #bfdbfe;border-color:#60a5fa}.prompt-dialog #promptHint{color:#718096;margin:8px 0 0}.index-dialog{width:min(1050px,94vw)}
@media(max-width:700px){.asset-grid{grid-template-columns:1fr}.asset-card{max-width:none}.prompt-dialog{padding:18px}.asset-image-tools{opacity:1;transform:none;pointer-events:auto}}

.asset-toolbar-left,.asset-turnaround-settings{display:flex;align-items:center;gap:8px;min-width:0}.asset-turnaround-settings{flex-wrap:nowrap}.asset-turnaround-layout{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border:1px solid #cbdcf8;border-radius:9px;background:#f5f8ff;color:#334b70;font-size:13px;font-weight:600}.asset-turnaround-layout select{min-height:30px;padding:4px 28px 4px 8px;border:1px solid #b9c9e2;border-radius:6px;background:#fff;color:#1e3a5f;font:inherit}.asset-turnaround-layout:has(select:disabled){opacity:.58;cursor:wait}
@media(max-width:1100px){.asset-toolbar{align-items:stretch;flex-direction:column}.asset-actions{flex-wrap:wrap}.asset-actions button{flex:1 1 180px}}
#assetPage .asset-toolbar{flex-direction:row;align-items:center;flex-wrap:nowrap;overflow-x:auto}#assetPage .asset-toolbar-left{flex:0 0 auto;flex-direction:row;flex-wrap:nowrap}#assetPage .asset-turnaround-settings{flex:0 0 auto;flex-wrap:nowrap}#assetPage .asset-actions{flex:0 0 auto;margin-left:auto;flex-wrap:nowrap;justify-content:flex-end}#assetPage .asset-actions button{flex:0 0 auto}
.project-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.asset-card>h3{display:flex;align-items:center;justify-content:space-between;gap:10px}.asset-card>h3 .state{flex:0 0 auto;font-weight:500}.asset-card>h3+.asset-unit{padding-top:0;border-top:0}
@media(max-width:800px){.project-heading{align-items:flex-start}.project-actions{justify-content:flex-end}.project-actions button{padding:7px 9px;font-size:12px}}
.storyboard-empty{height:100%;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:1px solid #e0e6ee;border-radius:14px}.storyboard-empty p{color:#718096;max-width:620px;text-align:center}.storyboard-workspace{height:100%;min-height:0;background:#fff;border:1px solid #e0e6ee;border-radius:14px;display:flex;flex-direction:column;overflow:hidden}.storyboard-toolbar{padding:10px 16px;border-bottom:1px solid #e5eaf1;display:flex;justify-content:space-between;gap:12px}.storyboard-toolbar span{font-size:12px;color:#64748b}.storyboard-layout{display:grid;grid-template-columns:100px minmax(0,1fr);min-height:0;flex:1}.story-list{min-height:0;overflow:auto}.story-list>#storyCards{padding:10px 14px 18px;display:grid;grid-template-columns:1fr;gap:10px;align-content:start}.story-card{border:1px solid #dfe6ef;border-radius:12px;padding:10px 12px;background:#fbfcfe}.story-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.story-card-head strong{font-size:13px;overflow-wrap:anywhere}.story-card-head label{white-space:nowrap;font-size:12px;color:#64748b}.story-card-head select{padding:5px 7px}.story-card-tools{display:flex;align-items:center;gap:10px;white-space:nowrap}.text-link{color:#2563eb;text-decoration:none;font-size:12px;font-weight:600;cursor:pointer}.text-link:hover{text-decoration:underline}.story-card textarea{display:block;width:100%;min-height:160px;resize:vertical;border:1px solid #d8e0eb;border-radius:8px;padding:9px;font:13px/1.65 system-ui,"Microsoft YaHei",sans-serif;color:#29384c}.story-card textarea:focus{outline:2px solid #bfdbfe;border-color:#60a5fa}#storyboardPage{flex:1;min-height:0}#storyboardPage:not([hidden]){display:flex;flex-direction:column}@media(max-width:900px){.storyboard-layout{grid-template-columns:80px minmax(0,1fr)}}
.check-row{display:flex;align-items:center;gap:9px;color:#334155;font-weight:600}.check-row input{width:auto;margin:0;accent-color:#2563eb}
#videoPage{flex:1;min-height:0}#videoPage:not([hidden]){display:flex;flex-direction:column}.native-audit{height:100%;min-height:0;background:#fff;border:1px solid #e0e6ee;border-radius:14px;display:flex;flex-direction:column;overflow:hidden}.audit-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px 9px;border-bottom:1px solid #e5eaf1}.audit-title-group{display:flex;align-items:center;gap:12px;min-width:0}.audit-menu-button{width:52px;height:52px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.audit-header h2{margin:0;font-size:18px}.audit-header p{margin:4px 0 0;color:#64748b;font-size:12px}.review-next-slot{display:flex;align-items:center}.review-next-button{font-size:16px;padding:10px 18px}.audit-actions{display:flex;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:1px solid #edf0f4;flex-wrap:wrap}.audit-actions>div{display:flex;gap:7px;flex-wrap:wrap}.audit-actions button{font-size:12px;padding:7px 10px}.audit-stats{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #edf0f4}.audit-stats>div{padding:7px 12px;background:#fff;border:1px solid #e4eaf1;border-radius:9px}.audit-stats strong{display:block;font-size:17px;color:#1e3a5f}.audit-stats span{font-size:12px;color:#718096}.audit-episodes{overflow:auto;padding:12px 14px 26px;background:#f6f8fb;min-height:0;flex:1}.audit-episode{background:#fff;border:1px solid #e0e6ee;border-radius:12px;padding:12px;margin-bottom:12px}.audit-episode>header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e4eaf1;padding:0 0 8px;margin-bottom:10px}.audit-episode h3{margin:0;font-size:18px}.audit-episode header span{font-size:12px;color:#5f718b}.audit-episode h4{margin:15px 0 8px;font-size:14px;color:#334155}.audit-video-grid{display:flex;gap:10px;overflow-x:auto;padding-bottom:3px}.audit-video-card{flex:0 0 176px;border:1px solid #cbd9ea;border-radius:10px;padding:8px;background:#fbfdff}.audit-video-card>strong{font-size:13px;display:block;overflow-wrap:anywhere}.audit-video-card video,.audit-placeholder{display:block;width:100%;aspect-ratio:9/16;margin-top:6px;background:#101216;border-radius:7px;object-fit:cover}.audit-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;color:white;font-size:13px}.audit-placeholder.processing{background:#182231}.audit-placeholder.failed{background:#7f1d1d}.audit-video-status{min-height:18px;margin:5px 0;font-size:11px;color:#64748b;line-height:1.4}.audit-video-card .card-actions{gap:5px}.audit-video-card .card-actions button{padding:5px 7px;font-size:11px}.audit-review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:10px}.audit-review-card{border:1px solid #bfd0e8;border-radius:10px;padding:10px;background:#fbfdff}.audit-review-card>div:first-child{display:flex;justify-content:space-between;gap:8px}.audit-review-card strong{font-size:13px;overflow-wrap:anywhere}.audit-badge{font-size:11px;color:#b45309;background:#fef3c7;border-radius:999px;padding:2px 7px}.audit-references{display:flex;gap:6px;overflow:auto;margin:8px 0}.audit-references img{width:58px;height:58px;object-fit:cover;border:1px solid #d5dfeb;border-radius:7px;cursor:zoom-in}.audit-review-card textarea{display:block;width:100%;min-height:150px;resize:vertical;border:1px solid #d8e0eb;border-radius:8px;padding:9px;font:12px/1.6 system-ui,"Microsoft YaHei",sans-serif;color:#29384c}.audit-review-card textarea:focus{outline:2px solid #bfdbfe;border-color:#60a5fa}.audit-settings{display:flex;gap:7px;margin-top:7px}.audit-settings select{padding:5px 7px;font-size:12px}.warn{background:#d97706}.warn:hover{background:#b45309}@media(max-width:800px){.audit-header{align-items:flex-start}.audit-actions{flex-direction:column}.audit-stats{grid-template-columns:repeat(2,1fr)}.audit-review-grid{grid-template-columns:1fr}.review-next-button{padding:8px 11px;font-size:13px}}
.landing-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:auto;padding-top:20px}.landing-pagination span{min-width:86px;text-align:center;color:#64748b;font-size:13px}.landing-project-list{grid-template-columns:repeat(4,minmax(0,1fr))}.landing-project-card{display:grid;grid-template-rows:minmax(0,1fr) auto;background:#fff;border-radius:13px;overflow:hidden}.landing-project-card .project-open{display:block;padding:0;width:100%;height:100%;min-height:164px;position:relative}.landing-project-card .project-thumb{display:block;width:100%;height:100%;min-height:164px;border:0;border-radius:0;background:linear-gradient(135deg,#eef5ff,#dbeafe 55%,#c7d2fe);position:relative;overflow:hidden}.landing-project-card .project-thumb::after{content:"短剧项目";display:grid;place-items:center;height:100%;color:#486b91;font-size:15px;font-weight:800;letter-spacing:3px}.landing-project-card .project-thumb img{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover}.landing-project-card .project-rename{position:absolute;z-index:3;right:76px;bottom:49px;transform:translateY(8px);opacity:0;padding:4px 9px;font-size:12px;line-height:1.15;background:#ffffffeb;color:#1d4ed8;border:1px solid #bfdbfe;box-shadow:0 3px 12px #0f172a22;transition:opacity .16s,transform .16s}.landing-project-card:hover .project-rename,.landing-project-card:focus-within .project-rename{opacity:1;transform:translateY(0)}.landing-project-card .project-card-name{display:block;padding:11px 13px;color:#26384f;background:#fff;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.return-home{color:#2563eb!important;border-bottom:1px solid #e5eaf0!important;margin-bottom:6px!important}.project-menu #rootPath{display:none}@media(max-width:800px){.landing-project-list{grid-template-columns:1fr}.landing-project-card .project-thumb,.landing-project-card .project-open{min-height:185px}.landing-project-card .project-rename{opacity:1;transform:none}}
.landing-project-card .project-rename{height:24px;min-height:24px;padding:0 8px;line-height:1;font-size:12px;display:inline-flex;align-items:center}
.landing-project-card .project-delete{position:absolute;z-index:3;right:12px;bottom:49px;height:24px;min-height:24px;padding:0 8px;line-height:1;font-size:12px;display:inline-flex;align-items:center;background:#fff;color:#dc2626;border:1px solid #fecaca;box-shadow:0 3px 12px #0f172a22;opacity:0;transform:translateY(8px);transition:opacity .16s,transform .16s}
.landing-project-card .project-delete:hover{background:#fff1f2;color:#b91c1c;border-color:#f87171}
.landing-project-card:hover .project-delete,.landing-project-card:focus-within .project-delete{opacity:1;transform:translateY(0)}
#deleteProjectDialog{width:min(480px,94vw)}
#deleteProjectDialog form{display:grid;gap:12px}
#deleteProjectDialog p{margin:0;color:#64748b;line-height:1.65}
#deleteProjectDialog label{display:grid;gap:7px;color:#334155;font-weight:700}
#deleteProjectDialog input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}
#deleteProjectDialog input:focus{outline:3px solid #fecaca;border-color:#f87171}
#deleteProjectDialog .dialog-actions{justify-content:flex-end}
@media(max-width:800px){.landing-project-card .project-delete{opacity:1;transform:none}}

#emptyState{margin:54px auto 18px}.empty-upload-button{display:block;min-width:246px;min-height:52px;margin:0 auto 10px;font-size:17px;box-shadow:0 8px 24px #2563eb28}.empty-upload-button:hover{box-shadow:0 10px 26px #2563eb38}

.asset-grid:has(.category-extract){height:100%;align-content:center;justify-content:center}
.category-extract{text-align:center;width:100%;min-height:0}
.category-extract p{max-width:520px;text-align:center}
.api-records-dialog{width:min(1120px,96vw);padding:24px}.api-records-dialog .dialog-heading{border-bottom:1px solid #e5eaf0;padding-bottom:13px}.api-records-dialog .dialog-heading p{margin:4px 0 0;color:#64748b;font-size:13px}.api-records-list{max-height:68vh;overflow:auto;margin-top:14px;border:1px solid #e3e9f2;border-radius:12px;background:#fff}.api-record-row{display:grid;grid-template-columns:120px 120px minmax(130px,1fr) 145px 90px minmax(170px,1.4fr);gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #edf1f6;font-size:13px}.api-record-row:last-child{border-bottom:0}.api-record-row.header{position:sticky;top:0;z-index:1;background:#f8fafc;color:#64748b;font-weight:700}.api-record-row strong{color:#1e3a8a}.api-record-row code{font-family:ui-monospace,Consolas,monospace;color:#64748b;font-size:12px;word-break:break-all}.api-record-status{display:inline-flex;width:max-content;max-width:100%;border-radius:999px;padding:3px 9px;background:#eaf1ff;color:#1d4ed8;font-weight:700}.api-record-status.completed{background:#dcfce7;color:#047857}.api-record-status.active{background:#fef3c7;color:#b45309}.api-record-status.exception{background:#fee2e2;color:#b91c1c}.api-record-empty{padding:34px;text-align:center;color:#8492a8}@media(max-width:900px){.api-record-row{grid-template-columns:1fr;gap:5px}.api-record-row.header{display:none}.api-record-row span::before,.api-record-row strong::before,.api-record-row code::before{content:attr(data-label) "：";color:#94a3b8;font-weight:500}}
.delivery-option-box{border:1px solid #65d20a;border-radius:10px;padding:10px;margin:8px 0 8px;background:#fff}.delivery-section-check{display:flex!important;align-items:center;gap:8px;margin:0 0 8px!important;font-size:15px!important;font-weight:800;color:#1e293b}.delivery-section-check input{width:17px!important;height:17px;margin:0!important;accent-color:#2563eb}.delivery-option-box input[type=text],.delivery-option-box input:not([type]){width:100%;margin-top:7px;border:1px solid #dce3ed;border-radius:8px;padding:9px;color:#475569}.delivery-option-box:has(.delivery-section-check input:not(:checked)){border-color:#d8e1ed;background:#f8fafc}.delivery-option-box:has(.delivery-section-check input:not(:checked)) label:not(.delivery-section-check),.delivery-option-box:has(.delivery-section-check input:not(:checked)) .delivery-slot{opacity:.55}.delivery-option-box .delivery-suboption{display:flex!important;align-items:center;gap:8px;margin:10px 0 0 26px!important;font-size:14px!important;font-weight:700;color:#334155}.delivery-suboption input{width:16px!important;height:16px;margin:0!important;accent-color:#2563eb}.delivery-suboption span{white-space:nowrap;color:#64748b;font-weight:600}.delivery-suboption select{flex:1;width:auto;margin:0!important}
.delivery-episode-heading{position:relative!important;display:block!important;padding-right:54px;padding-bottom:48px}.delivery-episode-heading .icon-close{position:absolute;right:0;top:-14px;margin-top:0!important}.delivery-episode-tools{position:absolute;right:0;top:52px;padding-top:0!important;justify-self:auto!important}
#storyboardPage .storyboard-layout{grid-template-columns:160px minmax(0,1fr)}
#storyboardPage .episode-heading{padding:12px 10px;font-size:13px;line-height:1.35;display:flex;align-items:center;justify-content:space-between;gap:8px}
#storyboardPage .episode-heading span{float:none;color:#7b8aa3;font-weight:700;text-align:right;white-space:nowrap}
#storyboardPage .episodes{padding:10px}
#storyboardPage .episodes button{text-align:left;padding:10px 12px;white-space:nowrap;font-size:13px}
@media(max-width:900px){#storyboardPage .storyboard-layout{grid-template-columns:132px minmax(0,1fr)}#storyboardPage .episode-heading{font-size:12px}#storyboardPage .episodes button{font-size:12px;padding:9px 8px}}
#nameForm>label:first-of-type{padding:12px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1d4ed8;font-size:16px}
#nameInput{font-size:20px;font-weight:800;color:#0f172a;background:#fff}
.generation-settings-block{margin-top:18px;padding:14px;border:1px solid #dfe7f1;border-radius:12px;background:#fbfdff}
.asset-batch-kinds{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;padding:12px;border:1px solid #dbeafe;border-radius:12px;background:#f8fbff}.asset-batch-kinds label{display:flex;align-items:center;gap:7px;margin:0;font-weight:800;color:#334155}.asset-batch-kinds input{width:16px;height:16px;margin:0;accent-color:#2563eb}
.asset-prompt-batch-dialog{width:min(540px,94vw);padding:28px}.asset-prompt-batch-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:18px 0 20px;padding:4px;border-radius:11px;background:#eaf0f7}.asset-prompt-batch-tabs button{border:0;background:transparent;color:#526078;padding:9px 12px}.asset-prompt-batch-tabs button.active{background:#fff;color:#2563eb;box-shadow:0 2px 5px #1e3a5f1c}.asset-prompt-batch-dialog label,.asset-prompt-batch-dialog #assetPromptReplaceFields label{display:block;margin:0 0 7px;font-weight:800;color:#475569}.asset-prompt-batch-dialog textarea{display:block;width:100%;height:145px;resize:vertical;border:2px solid #1e293b;border-radius:10px;padding:12px;font:14px/1.6 inherit;color:#26364b}.asset-prompt-batch-dialog #assetPromptReplaceFields textarea{height:76px;margin:0 0 13px}.asset-prompt-batch-dialog textarea:focus{outline:3px solid #bfdbfe;border-color:#2563eb}.asset-prompt-batch-options{display:flex;gap:20px;margin:14px 0}.asset-prompt-batch-options label,.asset-prompt-batch-scope label{display:flex;align-items:center;gap:7px;margin:0;color:#42526b;font-weight:600}.asset-prompt-batch-options input,.asset-prompt-batch-scope input{width:auto;margin:0;accent-color:#2563eb}.asset-prompt-batch-scope{display:flex;gap:20px;flex-wrap:wrap;margin:12px 0 0;padding:12px;border:1px solid #d7e1ef;border-radius:10px}.asset-prompt-batch-scope legend{padding:0 5px;color:#526078;font-size:14px}.asset-prompt-batch-hint{margin:12px 0 0!important;color:#718096;font-size:13px!important;line-height:1.65}.asset-prompt-batch-dialog .error{min-height:20px;margin:10px 0 0}
.generation-settings-block h3{margin:0 0 10px;font-size:16px;color:#1e293b}
.generation-settings-block label{margin-top:10px}
.generation-settings-block small{display:block;margin-top:8px;color:#718096;line-height:1.5}
.settings-grid-two{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:12px;align-items:end}
@media(max-width:620px){.settings-grid-two{grid-template-columns:1fr}}

/* Platform login and admin shell */
.login-page,.admin-page{min-height:100vh;background:linear-gradient(135deg,#eef5ff,#f8fafc 45%,#edfdf6)}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:min(440px,92vw);background:#fff;border:1px solid #dbe5f2;border-radius:22px;box-shadow:0 24px 70px #12345620;padding:34px}
.login-card h1{margin:4px 0 10px;font-size:30px;color:#10233f}
.login-copy{color:#64748b;line-height:1.7;margin:0 0 24px}
.login-form{display:grid;gap:16px}
.login-form label{display:grid;gap:8px;color:#334155;font-weight:700}
.login-form input{height:44px;border:1px solid #cbd8ea;border-radius:11px;padding:0 13px;font-size:15px;outline:none}
.login-form input:focus{border-color:#2b6df3;box-shadow:0 0 0 3px #2b6df322}
.login-form button{height:46px;border:0;border-radius:12px;background:#2563eb;color:#fff;font-weight:800;font-size:16px}
.login-form button:disabled{opacity:.55}
.form-error{min-height:22px;color:#dc2626}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 32px;background:#fff;border-bottom:1px solid #dce5f0}
.admin-header h1{margin:2px 0 0;font-size:24px}
.admin-nav{display:flex;gap:10px;align-items:center}
.admin-account-info{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid #dbe5f2;border-radius:10px;background:#f8fbff;color:#334155;font-size:13px;font-weight:800;white-space:nowrap}.interface-confirm-model{display:block;margin-top:14px;font-weight:800;color:#334155}.interface-confirm-model select{margin-top:7px}
.admin-nav a,.admin-nav button,.admin-table-head button{border:1px solid #cbd8ea;background:#fff;color:#1e3a8a;border-radius:10px;padding:10px 14px;font-weight:700;text-decoration:none}
.admin-main{padding:24px 32px;display:grid;gap:18px}
.admin-summary{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:14px}
.admin-summary article{background:#fff;border:1px solid #dbe5f2;border-radius:16px;padding:18px;box-shadow:0 10px 28px #12345610}
.admin-summary span{display:block;color:#64748b;font-size:13px}
.admin-summary strong{display:block;margin-top:8px;font-size:26px;color:#10233f}
.admin-tabs{display:flex;gap:10px;flex-wrap:wrap}
.admin-tabs button{border:1px solid #cbd8ea;background:#fff;border-radius:999px;padding:10px 16px;color:#334155;font-weight:800}
.admin-tabs button.active{background:#2563eb;border-color:#2563eb;color:#fff}
.admin-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-form-card{background:#fff;border:1px solid #dbe5f2;border-radius:16px;padding:16px;display:grid;gap:12px}
.admin-form-card h2{margin:0;font-size:17px}
.admin-form-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:9px}
.admin-form-grid.compact{grid-template-columns:repeat(3,minmax(120px,1fr))}
.admin-form-grid input,.admin-form-grid select{height:38px;border:1px solid #cbd8ea;border-radius:9px;padding:0 10px;min-width:0}
.admin-form-card button{justify-self:start;border:0;background:#2563eb;color:#fff;border-radius:10px;padding:10px 16px;font-weight:800}
.admin-form-card small{color:#64748b;min-height:18px}
.admin-table-card{background:#fff;border:1px solid #dbe5f2;border-radius:18px;overflow:hidden}
.admin-table-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e5edf6}
.admin-table-head h2{margin:0;font-size:18px}
.admin-table{overflow:auto;max-height:68vh}
.admin-row{display:grid;grid-template-columns:repeat(12,minmax(120px,1fr));gap:10px;padding:11px 14px;border-bottom:1px solid #edf2f7;font-size:12px;min-width:1300px}
.admin-row.header{position:sticky;top:0;background:#f8fafc;color:#64748b;font-weight:800;z-index:1}
.admin-row span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-empty{padding:32px;color:#64748b;text-align:center}
@media(max-width:900px){.admin-header{padding:18px;align-items:flex-start;flex-direction:column}.admin-main{padding:18px}.admin-summary{grid-template-columns:1fr 1fr}.admin-forms{grid-template-columns:1fr}.admin-form-grid,.admin-form-grid.compact{grid-template-columns:1fr}.login-card{padding:24px}}

/* System admin / frontend account center */
.login-page,.system-admin-page,.account-page{height:auto;min-height:100vh;overflow:auto;display:block;padding:0;background:linear-gradient(135deg,#eef5ff,#f8fafc 45%,#edfdf6)}
.register-card{width:min(520px,94vw)}
.auth-switch{margin:16px 0 8px;color:#64748b}.auth-switch a{color:#2563eb;font-weight:800;text-decoration:none}.auth-switch a:hover{text-decoration:underline}
.email-code-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.email-code-row button{height:44px;background:#eef2f7!important;color:#334155!important;border:1px solid #d5deea!important}
.system-admin-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr);background:#f5f7fb;color:#243247}
.system-admin-sidebar{background:#0f1f3a;color:#dbeafe;border-right:0;padding:18px 14px;display:flex;flex-direction:column;gap:18px}
.system-admin-brand{padding:10px 12px}.system-admin-brand strong{display:block;font-size:20px;color:#fff}.system-admin-brand span{display:block;margin-top:5px;font-size:12px;color:#93a8c8}
.system-admin-menu{display:grid;gap:6px;width:auto}.system-admin-menu button{width:100%;text-align:left;background:transparent;color:#c8d7ef;border:0;border-radius:11px;padding:12px 13px;font-weight:800;box-shadow:none}.system-admin-menu button:hover{background:#1e3a5f;color:#fff}.system-admin-menu button.active{background:#2563eb;color:#fff}
.system-admin-content{min-width:0;display:flex;flex-direction:column;min-height:100vh}.system-admin-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 24px;background:#fff;border-bottom:1px solid #dce5f0}.system-admin-topbar h1{font-size:23px;margin:0}
.system-admin-main{max-width:none;width:100%;display:block;padding:22px;overflow:auto}.admin-section{display:grid;gap:16px}
.admin-form-card.wide{grid-column:1/-1}.admin-table-head p{margin:5px 0 0;color:#64748b;font-size:12px}.admin-switch-list{display:flex;gap:18px;flex-wrap:wrap}.admin-switch-list label{display:flex;align-items:center;gap:8px;font-weight:800;color:#334155}.admin-switch-list input{width:17px;height:17px;accent-color:#2563eb}
.account-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 32px;background:#fff;border-bottom:1px solid #dce5f0}.account-header h1{margin:0;font-size:24px}.account-main{max-width:1280px;margin:0 auto;padding:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-panel{background:#fff;border:1px solid #dbe5f2;border-radius:18px;padding:18px;box-shadow:0 10px 28px #1234560d;min-width:0}.account-panel h2{margin:0 0 12px;font-size:18px}.account-panel h3{margin:16px 0 8px;font-size:15px;color:#334155}.account-panel p{margin:7px 0;color:#526078}.mini-table{overflow:auto;border:1px solid #e5edf6;border-radius:12px}.mini-table .admin-row{min-width:760px}
.recharge-main{max-width:760px;margin:0 auto;padding:32px 24px;display:grid;gap:16px}.recharge-card strong{display:block;font-size:34px;color:#1d4ed8;margin:8px 0 14px}.recharge-note{color:#64748b}.recharge-contact{display:inline-flex;width:max-content;margin-top:10px;padding:11px 18px;border-radius:10px;background:#2563eb;color:#fff;text-decoration:none;font-weight:800}.recharge-contact:hover{background:#1d4ed8}
.recharge-dialog{width:min(520px,94vw);padding:24px}.recharge-dialog .dialog-heading{margin-bottom:16px}.recharge-dialog .dialog-heading p{margin:4px 0 0;color:#64748b}.recharge-dialog-balance{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;margin-bottom:14px}.recharge-dialog-balance span{color:#64748b}.recharge-dialog-balance strong{font-size:26px;color:#1d4ed8}.recharge-dialog-card{border:1px solid #e5edf6;border-radius:14px;padding:16px;background:#fff}.recharge-dialog-card h3{margin:0 0 10px}.recharge-dialog-card p{margin:7px 0;color:#526078}
.account-single{max-width:980px;grid-template-columns:1fr}.account-profile-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #e5edf6;padding-bottom:16px}.account-profile-heading h2{margin:0}.account-profile-heading p{margin:5px 0 0;color:#64748b}.account-balance{font-size:25px;color:#2563eb;white-space:nowrap}.account-balance small{font-size:13px;color:#64748b}.account-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:8px}.account-detail-list>div{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #edf1f6}.account-detail-list span{color:#64748b}.account-detail-list b{color:#1e293b;text-align:right;overflow-wrap:anywhere}.account-profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.account-action-link{display:inline-flex;align-items:center;padding:10px 18px;border-radius:9px;background:#2563eb;color:#fff;font-weight:700;text-decoration:none}.account-action-link:hover{background:#1d4ed8}.account-dialog{width:min(480px,94vw);padding:24px}.account-dialog form{display:grid;gap:13px}.account-dialog label{display:grid;gap:7px;color:#334155;font-weight:700}.account-dialog input{height:40px;border:1px solid #cbd8ea;border-radius:9px;padding:0 10px}.account-dialog small{min-height:20px;color:#64748b}.account-logs-dialog{width:min(960px,94vw);padding:24px}.account-log-row{grid-template-columns:130px minmax(180px,1fr) 180px 110px 100px 180px;min-width:900px}.account-logs-dialog .mini-table{max-height:62vh;overflow:auto}
.account-employee-form{margin:16px 0;padding:14px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;display:grid;gap:10px}.account-employee-form h3{margin:0}.account-employee-form button{justify-self:start}.account-employee-form small{color:#64748b;min-height:18px}.account-employee-form .admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-row input,.admin-row select{width:100%;height:30px;margin:0;border:1px solid #d7e1ef;border-radius:7px;padding:0 7px;background:#fff;color:#243247;font-size:12px}.admin-row.user-row{grid-template-columns:70px 130px 180px 150px 105px 110px 100px 110px 145px 250px}.row-actions{display:flex!important;gap:6px;align-items:center;white-space:nowrap;position:sticky;right:0;z-index:2;background:#fff;box-shadow:-8px 0 12px #fff}.admin-row.frontend-user-row.header>span:last-child,.admin-row.system-user-row.header>span:last-child{position:sticky;right:0;z-index:3;background:#f8fafc;box-shadow:-8px 0 12px #f8fafc}.mini-action{min-height:28px!important;height:28px!important;padding:0 8px!important;border-radius:7px!important;font-size:12px!important}.account-employee-table{overflow:auto;border:1px solid #e5edf6;border-radius:12px}.account-employee-table .admin-row{grid-template-columns:60px 120px 180px 120px 110px 110px 180px;min-width:880px}
.admin-nav{width:auto}.admin-nav a:hover,.admin-nav button:hover,.admin-table-head button:hover{background:#eff6ff;box-shadow:none}
@media(max-width:900px){.system-admin-shell{grid-template-columns:1fr}.system-admin-sidebar{position:static}.system-admin-menu{grid-template-columns:repeat(2,minmax(0,1fr))}.system-admin-topbar,.account-header{height:auto;align-items:flex-start;flex-direction:column}.account-main{grid-template-columns:1fr;padding:16px}.email-code-row{grid-template-columns:1fr}}

.users-only .system-admin-main{padding:22px}
.users-only .admin-table-card{min-height:calc(100vh - 120px);display:flex;flex-direction:column}
.users-only .admin-table{max-height:none;flex:1}
.users-only .admin-row.user-row{grid-template-columns:70px 150px 210px 150px 110px 110px 110px 110px 165px 250px;min-width:1440px}
.users-only .admin-row.frontend-user-row{grid-template-columns:70px 150px 230px 120px 110px 150px 110px 110px 100px 165px 165px 230px;min-width:1670px}
.users-only .admin-row.system-user-row{grid-template-columns:70px 170px 240px 130px 100px 170px 170px 330px;min-width:1380px}
.users-only .admin-row.frontend-user-row{grid-template-columns:70px 150px 230px 120px 110px 150px 110px 110px 110px 100px 165px 165px 430px;min-width:1980px}
.users-only .admin-row.credit-log-row{grid-template-columns:70px 150px 180px 100px 130px 120px 120px 150px 280px 170px;min-width:1470px}
.users-only .admin-row.recharge-card-row{grid-template-columns:70px 260px 110px 110px 170px 110px 165px 165px 150px 330px;min-width:1650px}.recharge-card-row code{font:700 12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:#1d4ed8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recharge-card-admin-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 0 16px}.recharge-card-admin-heading h2{margin:0;font-size:19px}.recharge-card-admin-heading p{margin:6px 0 0;color:#64748b;font-size:13px}
.recharge-card-input{display:flex;gap:8px;margin-top:10px}.recharge-card-input input{min-width:0;flex:1;border:1px solid #cbdaf2;border-radius:9px;padding:10px 11px;color:#243247}.recharge-card-input button{flex:0 0 auto}.recharge-card-state{min-height:20px;margin:8px 0 0;font-size:13px;color:#526078}.recharge-card-state:not(:empty){color:#1d4ed8}
.recharge-dialog #redeemRechargeCard,.recharge-dialog #confirmRechargeDialog{background:#2563eb!important;color:#fff!important}.recharge-dialog #redeemRechargeCard:hover,.recharge-dialog #confirmRechargeDialog:hover{background:#1d4ed8!important;color:#fff!important}.recharge-dialog .recharge-contact{color:#fff!important}
.credit-positive{color:#059669;font-weight:700}.credit-negative{color:#dc2626;font-weight:700}.credit-action{background:#fff7ed!important;color:#c2410c!important;border-color:#fed7aa!important}.credit-action:hover{background:#ffedd5!important}
.credit-log-dialog{width:min(1500px,96vw)}.credit-log-dialog .dialog-heading{margin-bottom:14px}.credit-log-table{overflow:auto;max-height:65vh}.credit-log-table .admin-row{min-width:1470px}
.admin-user-dialog.system-request-log-dialog:not([open]){display:none}
.admin-user-dialog.system-request-log-dialog{width:min(50vw,calc(100vw - 40px));height:min(88vh,1000px);max-height:88vh;padding:0;overflow:hidden;display:flex;flex-direction:column}.system-request-log-dialog .dialog-heading{position:relative;z-index:2;flex:0 0 auto;padding:24px 30px 17px;margin:0;border-bottom:1px solid #dbe5f0;background:#fff;box-shadow:0 4px 12px #0f172a08}.system-request-log-dialog .dialog-heading p{margin:6px 0 0;color:#64748b}.system-request-log-content{min-height:0;flex:1;padding:22px 30px 30px;overflow:auto;display:grid;align-content:start;gap:18px;background:#f6f8fb}.system-request-log-entry{display:flex;flex-direction:column;min-height:0;border:1px solid #dce5f0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 2px 6px #0f172a08}.system-request-log-entry header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 18px;border-bottom:1px solid #e6edf5}.system-request-log-entry.is-request header{background:#eff6ff;color:#1d4ed8}.system-request-log-entry.is-response header{background:#ecfdf5;color:#047857}.system-request-log-entry header strong{font-size:15px}.system-request-log-entry header span{font-size:12px;color:#64748b}.system-request-log-meta{display:flex;gap:8px;flex-wrap:wrap;padding:13px 18px 0}.system-request-log-meta span{display:inline-flex;gap:5px;max-width:100%;padding:4px 8px;border-radius:7px;background:#f1f5f9;color:#526078;font:12px/1.35 ui-monospace,Consolas,monospace;overflow-wrap:anywhere}.system-request-log-meta b{font-family:Inter,system-ui,"Microsoft YaHei",sans-serif;color:#334155;white-space:nowrap}.system-request-log-entry pre{height:min(46vh,520px);margin:14px 18px 18px;padding:16px 18px;border-radius:10px;overflow:auto;background:#0f172a;color:#dbeafe;font:13px/1.72 ui-monospace,Consolas,monospace;white-space:pre-wrap;word-break:break-word;scrollbar-color:#64748b #172236;scrollbar-width:thin}@media(max-width:720px){.admin-user-dialog.system-request-log-dialog{width:calc(100vw - 20px);height:92vh;max-height:92vh}.system-request-log-dialog .dialog-heading{padding:18px 20px 14px}.system-request-log-content{padding:14px 16px 20px}.system-request-log-entry pre{height:52vh;margin:12px;padding:12px;font-size:12px}}
.users-only .admin-row.request-log-row{grid-template-columns:70px 90px 90px 110px 180px 180px 90px 90px 90px 180px 175px 175px;min-width:1530px}
.dashboard-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px;background:#f8fbff}.dashboard-cards{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.dashboard-cards article,.dashboard-chart{background:#fff;border:1px solid #dbe5f2;border-radius:16px;padding:16px;box-shadow:0 10px 24px #1234560a}.dashboard-cards span{display:block;color:#64748b;font-size:13px}.dashboard-cards strong{display:block;margin-top:7px;color:#10233f;font-size:27px}.dashboard-cards small{display:block;margin-top:6px;color:#8492a8}.dashboard-chart.wide{grid-column:span 1}.dashboard-chart h3{margin:0;color:#183b70;font-size:16px}.dashboard-chart p{margin:4px 0 12px;color:#64748b;font-size:12px}.dashboard-spark{height:170px;display:flex;align-items:flex-end;gap:7px;padding:10px;border-radius:12px;background:linear-gradient(180deg,#f8fbff,#eef5ff)}.dashboard-spark span{flex:1;min-width:8px;border-radius:7px 7px 0 0;background:linear-gradient(180deg,#60a5fa,#2563eb)}.dashboard-bars{display:grid;gap:11px}.dashboard-bars label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;color:#334155;font-size:13px}.dashboard-bars b{color:#10233f}.dashboard-bars i{display:block;height:9px;border-radius:99px;background:#e8eef7;overflow:hidden}.dashboard-bars em{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#38bdf8,#2563eb)}.dashboard-recent{list-style:none;margin:0;padding:0;display:grid;gap:9px}.dashboard-recent li{display:grid;grid-template-columns:120px 90px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid #edf2f7;border-radius:11px;background:#f8fafc}.dashboard-recent span{font-weight:800;color:#334155}.dashboard-recent b{color:#2563eb}.dashboard-recent small{color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-table-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.admin-table-tools label{display:flex;align-items:center;gap:7px;color:#64748b;font-size:13px;font-weight:700}
.admin-table-tools select{height:38px;padding:0 9px}
.dashboard-range{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dashboard-range label{margin:0}
.dashboard-range select,.dashboard-range input{height:38px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:9px;background:#fff;color:#243247;padding:0 9px;font:inherit}
.dashboard-custom-range{display:flex;align-items:center;gap:7px}
.dashboard-custom-range button{height:38px;padding:0 12px}
.credit-log-filters{display:grid;grid-template-columns:140px minmax(180px,1fr) minmax(180px,1fr) minmax(180px,1fr) auto;align-items:end;gap:10px;padding:12px 18px;border-bottom:1px solid #e5edf6;background:#fbfdff}
.credit-log-filters label{display:grid;gap:5px;color:#526078;font-size:12px;font-weight:700}
.credit-log-filters input{width:100%;height:36px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:8px;padding:0 9px;background:#fff;color:#243247;font:inherit;font-weight:400}
.credit-log-filter-actions{display:flex;align-items:end;gap:8px}
.frontend-user-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px 150px auto;align-items:end;gap:10px;padding:12px 18px;border-bottom:1px solid #e5edf6;background:#fbfdff}
.frontend-user-filters label{display:grid;gap:5px;color:#526078;font-size:12px;font-weight:700}
.frontend-user-filters input,.frontend-user-filters select{width:100%;height:36px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:8px;padding:0 9px;background:#fff;color:#243247;font:inherit;font-weight:400}
.frontend-user-filter-actions{display:flex;align-items:end;gap:8px}
.request-log-filters{display:grid;grid-template-columns:repeat(6,minmax(145px,1fr));align-items:end;gap:10px;padding:12px 18px;border-bottom:1px solid #e5edf6;background:#fbfdff}
.request-log-filters label{display:grid;gap:5px;color:#526078;font-size:12px;font-weight:700}
.request-log-filters input{width:100%;height:36px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:8px;padding:0 9px;background:#fff;color:#243247;font:inherit;font-weight:400}
.request-log-filter-actions{display:flex;align-items:end;gap:8px}
.request-log-filter-actions button{height:36px;padding:0 14px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:#fff;font-weight:800;cursor:pointer}
.request-log-filter-actions button.secondary{border-color:#cbd8ea;background:#fff;color:#334155}
.credit-log-filter-actions button{height:36px;padding:0 14px;border:1px solid #2563eb;border-radius:8px;background:#2563eb;color:#fff;font-weight:800;cursor:pointer}
.credit-log-filter-actions button.secondary{border-color:#cbd8ea;background:#fff;color:#334155}
@media(max-width:1100px){.credit-log-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}.credit-log-filter-actions{grid-column:1/-1}}
@media(max-width:1100px){.request-log-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}.request-log-filter-actions{grid-column:1/-1}}
.admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 18px;border-top:1px solid #e5edf6;background:#fff}
.admin-pagination span{min-width:160px;text-align:center;color:#64748b;font-size:13px}
.admin-pagination button{padding:8px 14px}
.interface-settings-panel{display:grid;gap:18px}.interface-settings-form{background:#fff;border:1px solid #dbe5f2;border-radius:16px;padding:18px}.interface-settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.interface-settings-heading h2{margin:0;font-size:18px}.interface-settings-heading p{margin:5px 0 0;color:#64748b;font-size:13px}.interface-settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.interface-settings-form label{display:grid;gap:6px;color:#334155;font-size:13px;font-weight:700}.interface-settings-form input,.interface-settings-form select{width:100%;min-height:38px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:9px;padding:8px 10px;background:#fff;color:#1e293b;font:inherit}.interface-price-list{display:grid;gap:12px}.interface-price-card{border:1px solid #dbe5f2;border-radius:14px;padding:14px;background:#f8fbff}.interface-price-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.interface-price-title h3{margin:0;color:#183b70;font-size:16px}.interface-price-title span{font-size:12px;color:#64748b}.interface-price-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.admin-form-state{min-height:20px;color:#16803c;font-size:13px}.interface-settings-table{overflow:visible}
.interface-model-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.interface-model-sections section{border:1px solid #dbe5f2;border-radius:12px;background:#f8fbff;padding:12px}.interface-model-sections h3{margin:0 0 10px;color:#334155;font-size:14px}.frontend-model-options{display:grid;gap:7px;max-height:220px;overflow:auto}.frontend-model-options label{display:flex;grid-template-columns:none;align-items:center;gap:7px;font-size:13px;font-weight:600}.frontend-model-options input{width:16px;min-height:16px;accent-color:#2563eb}.frontend-model-default{margin-top:12px;padding-top:10px;border-top:1px solid #e3eaf4}
.mini-action.danger{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}
.interface-fixed-fields,.interface-edit-fields{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.interface-fixed-fields{padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #e5edf6}.interface-fixed-fields>div{display:grid;gap:6px;min-width:0}.interface-fixed-fields small,.interface-edit-fields small{color:#64748b;font-size:12px;font-weight:700}.interface-fixed-fields strong{min-height:38px;box-sizing:border-box;padding:9px 10px;border:1px solid #e5edf6;border-radius:9px;background:#f8fafc;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.interface-fixed-fields label,.interface-edit-fields label{display:grid;gap:6px}.interface-price-row [data-price-field]{min-height:38px}
.interface-capability-fields{margin-top:12px;padding-top:12px;border-top:1px solid #e5edf6}.interface-capability-fields h4{margin:0 0 10px;color:#183b70;font-size:14px}.interface-capability-fields>label{margin-bottom:10px}.capability-checks{display:flex;flex-wrap:wrap;gap:8px 14px;min-height:38px;box-sizing:border-box;padding:8px 10px;border:1px solid #cbd8ea;border-radius:9px;background:#fff}.capability-checks label{display:flex;grid-template-columns:none;align-items:center;gap:5px;margin:0;font-weight:600;color:#334155}.capability-checks input{width:auto;min-height:0}.capability-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}
.interface-runtime-grid{display:grid;grid-template-columns:minmax(260px,2fr) repeat(2,minmax(130px,.75fr));gap:10px 12px;margin-top:12px;padding-top:12px;border-top:1px solid #e5edf6}
.mini-action.danger:hover{background:#b91c1c!important}
.admin-create-user-card{margin-bottom:14px}
.admin-create-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.admin-create-head h2{margin:0;font-size:18px}
.admin-create-head small{display:block;margin-top:5px;color:#64748b}
.admin-user-dialog{width:min(680px,94vw);padding:0}
.admin-user-dialog form{padding:24px}
.admin-user-dialog .dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid #e5edf6;padding-bottom:14px;margin-bottom:16px}
.admin-user-dialog .dialog-heading h2{margin:0;font-size:22px}
.admin-user-dialog .dialog-heading p{margin:6px 0 0;color:#64748b}
.admin-dialog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-dialog-grid label{display:grid;gap:7px;margin:0;color:#334155;font-weight:800}
.admin-dialog-grid input,.admin-dialog-grid select{width:100%;height:40px;border:1px solid #cbd8ea;border-radius:9px;padding:0 10px}
#userDialogState{display:block;min-height:20px;margin-top:12px;color:#64748b}
#userDialogState:not(:empty){color:#dc2626}
@media(max-width:900px){.users-only .system-admin-main{padding:14px}.users-only .admin-table-card{min-height:auto}.admin-table-tools{width:100%;justify-content:flex-start}.admin-pagination{justify-content:center;flex-wrap:wrap}}
@media(max-width:1100px){.interface-settings-grid,.interface-price-grid,.interface-fixed-fields,.interface-edit-fields,.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.interface-runtime-grid{grid-template-columns:minmax(240px,2fr) repeat(2,minmax(120px,.8fr))}}
@media(max-width:1100px){.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-panel{grid-template-columns:1fr}.dashboard-chart.wide{grid-column:auto}}
@media(max-width:800px){.interface-model-sections{grid-template-columns:1fr}}
@media(max-width:600px){.interface-settings-grid,.interface-price-grid,.interface-fixed-fields,.interface-edit-fields,.capability-grid,.interface-runtime-grid{grid-template-columns:1fr}.interface-settings-heading{flex-direction:column}}
@media(max-width:600px){.dashboard-cards{grid-template-columns:1fr}.dashboard-recent li{grid-template-columns:1fr}}
@media(max-width:700px){.admin-dialog-grid{grid-template-columns:1fr}.admin-create-head{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.account-detail-list{grid-template-columns:1fr}.account-profile-heading{align-items:flex-start;flex-direction:column}.account-balance{font-size:22px}.account-header .admin-nav{flex-wrap:wrap}}

/* 系统后台内容页允许随内容自然纵向滚动，避免接口设置被固定视口裁剪。 */
html:root body.system-admin-page{height:100dvh;min-height:0;margin:0;padding:0;overflow:hidden;display:block}
html:root body.system-admin-page .system-admin-main{min-height:0;overflow:auto}
html:root body.system-admin-page.interface-settings-active .system-admin-main{min-height:calc(100vh - 76px)}



.reader-heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.reader-heading-actions button{padding:6px 10px;font-size:12px}.episodes button.failed{color:#dc2626;background:#fff1f2;border-color:#fecdd3;font-weight:800}.episodes button.failed.selected{background:#fee2e2;color:#b91c1c;border-color:#fb7185}.episodes button.failed::after{content:" 未通过";display:block;margin-top:3px;font-size:11px;color:#ef4444;font-weight:700}.script-delete-episode-link{color:#dc2626}.script-delete-episode-link:hover{color:#b91c1c}.script-delete-episode-link[aria-disabled="true"]{color:#94a3b8;cursor:not-allowed;text-decoration:none;pointer-events:none}



#readingPane>#content.script-with-lines{display:block!important;box-sizing:border-box;width:100%!important;max-width:100%;min-width:0!important;white-space:normal;padding:0;background:#fff;color:#29384c}
#readingPane>#content.script-with-lines>.script-line{box-sizing:border-box;width:100%!important;max-width:100%;min-width:0!important}
.script-line::before{content:none!important}
.script-line-text{display:block;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;padding:0 14px;min-height:1.85em;outline:none;color:inherit}
.script-line.issue-line{background:#fff1f2;color:#b91c1c}
.script-line.issue-line::before{background:#fee2e2;color:#dc2626;font-weight:800}
.script-line-number-located{position:relative;box-shadow:inset -3px 0 #2563eb,inset 0 0 0 1px #93c5fd;animation:script-line-number-locate 1.1s ease-in-out 3}
@keyframes script-line-number-locate{0%,100%{background:#dbeafe}50%{background:#bfdbfe}}
#content[contenteditable=true].script-with-lines:focus{box-shadow:inset 0 0 0 2px #bfdbfe}


.api-records-tools{display:flex;align-items:center;gap:10px}.api-records-tools .secondary{height:36px;padding:0 14px}

/* 第四步审核/视频页：限制内容宽度，避免缩略图、提示词和视频卡片把页面撑开错位 */
#videoPage,
.native-audit,
.audit-episode,
.audit-video-grid,
.audit-video-card,
.audit-review-grid,
.audit-review-card,
.audit-references,
.audit-review-card textarea {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
}
#videoPage,
.native-audit { overflow: hidden; }
.audit-episodes { overflow-x: hidden; }
.audit-video-grid {
  overflow-x: auto;
  overflow-y: hidden;
  align-items: flex-start;
}
.audit-video-card { overflow: hidden; }
.audit-review-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(380px, 100%), 1fr));
  overflow: hidden;
}
.audit-review-card { overflow: hidden; }
.audit-references {
  flex-wrap: wrap;
  overflow-x: hidden;
  overflow-y: visible;
}
.audit-review-card textarea,
.audit-review-card pre,
.audit-review-card code {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.project-files-dialog{width:min(980px,92vw);max-height:86vh;border:0;border-radius:18px;padding:22px;background:#fff;box-shadow:0 22px 70px #0f172a33}.project-files-tools{display:flex;align-items:center;gap:10px}.project-files-tools #downloadProjectFiles{white-space:nowrap}.project-file-package-dialog{width:min(420px,90vw);border:0;border-radius:16px;padding:22px;background:#fff;box-shadow:0 22px 70px #0f172a33}.project-file-package-dialog p{margin:10px 0 0;color:#526078}.project-files-tabs{display:flex;gap:10px;margin:14px 0 16px;border-bottom:1px solid #e5eaf0;padding-bottom:10px}.project-files-tabs button{background:#eef2f7;color:#526078;border-color:#dbe4ef;padding:8px 14px}.project-files-tabs button.active{background:#2563eb;color:#fff}.project-files-tabs span{margin-left:4px;opacity:.8}.project-files-list{display:grid;gap:10px;max-height:58vh;overflow:auto;padding-right:4px}.project-file-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e5eaf0;border-radius:12px;padding:10px;background:#fbfdff}.project-file-thumb{width:92px;height:68px;border-radius:9px;overflow:hidden;background:#eef2f7;color:#64748b;padding:0;display:flex;align-items:center;justify-content:center;font-size:15px}.project-file-thumb img,.project-file-thumb video{width:100%;height:100%;object-fit:cover;display:block}.project-file-body{min-width:0;display:flex;flex-direction:column;gap:3px}.project-file-body strong{color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-body small{color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-file-body span{font-size:12px;color:#94a3b8}.project-file-actions{display:flex;gap:8px}.project-file-actions button{padding:8px 12px}.project-files-empty{padding:30px;text-align:center;color:#64748b;border:1px dashed #d7dee9;border-radius:12px;background:#f8fafc}.project-files-pagination{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:14px;padding-top:12px;border-top:1px solid #e5eaf0}.project-files-pagination span{min-width:150px;text-align:center;color:#64748b;font-size:13px}@media(max-width:760px){.project-file-row{grid-template-columns:76px 1fr}.project-file-actions{grid-column:1/-1}.project-file-thumb{width:76px;height:58px}}
.project-video-dialog{width:min(1120px,94vw);padding:22px;border:0;border-radius:18px;background:#fff;box-shadow:0 22px 70px #0f172a33}.project-video-preview{display:grid;place-items:center;min-height:260px;max-height:72vh;background:#f3f6fa;border-radius:14px;overflow:hidden}.project-video-preview video{display:block;max-width:100%;max-height:72vh;background:#111;border-radius:10px}.file-video-placeholder{font-weight:800;letter-spacing:.08em;background:linear-gradient(135deg,#e8eef6,#f8fafc)}
 .delivery-package-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}.delivery-package-head h4{margin:0;color:#1e293b}.delivery-package-head button{min-width:170px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.delivery-package-list{margin-top:22px;border-top:1px solid #e5eaf1;padding-top:18px;min-height:260px}.delivery-package-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid #e5eaf0;border-radius:12px;background:#fbfdff;padding:18px 14px;min-height:68px;margin-bottom:12px}.delivery-package-row strong{display:block;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.55}.delivery-package-row span{display:block;margin-top:6px;color:#64748b;font-size:13px;line-height:1.65}.delivery-package-status{display:inline-flex!important;margin:0!important;border-radius:999px;padding:6px 12px;background:#eef2f7;color:#526078;font-weight:800}.delivery-package-status.running{background:#dbeafe;color:#1d4ed8}.delivery-package-status.failed{background:#fee2e2;color:#b91c1c}.delivery-package-status.expired{background:#f1f5f9;color:#64748b}

button.danger{background:#dc2626;color:#fff;border-color:#dc2626}button.danger:hover{background:#b91c1c}



.model-price-main{max-width:1280px;margin:0 auto;padding:24px}.model-price-status{margin:0 0 14px;color:#64748b}.model-price-groups{display:grid;gap:16px}.model-price-card{background:#fff;border:1px solid #dbe5f2;border-radius:18px;padding:18px;box-shadow:0 10px 28px #1234560d}.model-price-card h2{margin:0 0 14px;font-size:18px}.model-price-card h2 span{color:#64748b;font-size:13px}.model-price-table{overflow:auto;border:1px solid #e5edf6;border-radius:12px}.model-price-row{display:grid;grid-template-columns:120px minmax(220px,1fr) 90px 120px minmax(220px,1.2fr);gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #edf1f6;min-width:820px}.model-price-row:last-child{border-bottom:0}.model-price-row.header{background:#f8fafc;color:#64748b;font-weight:800}.model-price-row code{font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:#1e3a8a;overflow-wrap:anywhere}.model-price-row strong{color:#0f172a}.model-price-row small{color:#64748b}.model-price-empty{color:#94a3b8;margin:0}.model-price-status.error{color:#dc2626}

html:root body.model-price-page{height:auto;min-height:100vh;overflow-x:hidden;overflow-y:auto;display:block;padding:0}html:root body.model-price-page .model-price-main{display:block;min-height:auto;padding-bottom:60px}

#nextStep.story-update-needed{position:relative;background:#dc2626;color:#fff;border-color:#dc2626;box-shadow:0 4px 12px #dc262633}#nextStep.story-update-needed:hover{background:#b91c1c}#nextStep.story-update-needed::after{content:'更新';position:absolute;right:-9px;top:-10px;background:#ef4444;color:#fff;border:2px solid #fff;border-radius:999px;font-size:11px;line-height:1;padding:3px 6px}.storyboard-update-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 10px}.storyboard-update-options button{width:100%}.storyboard-update-options button.danger{background:#dc2626;border-color:#dc2626}.storyboard-update-options button.danger:hover{background:#b91c1c}

.storyboard-update-options label{display:flex;align-items:center;gap:8px;border:1px solid #dbe5f2;border-radius:12px;background:#f8fafc;padding:12px 14px;margin:0;color:#1e293b;font-weight:700}.storyboard-update-options input{width:auto;margin:0}
.delivery-library-tabs{display:flex;gap:8px;margin:0 0 12px}.delivery-library-tabs button{border:0;border-radius:8px;padding:8px 14px;background:#edf2fa;color:#29456e;cursor:pointer}.delivery-library-tabs button:hover{background:#dbe8ff}.admin-material-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.admin-material-card{border:1px solid #dbe4f0;border-radius:10px;padding:14px;display:grid;gap:7px}.admin-material-card small{color:#6d7f99}.admin-material-card select{margin-left:8px}
#deliveryChromaColor{display:none}label:has(> #deliveryChromaColor){display:none}
.delivery-library-dialog{width:min(1060px,92vw);max-width:none;min-height:560px}.delivery-library-source-tabs{display:flex;gap:10px;border-bottom:1px solid #dce5f2;padding:0 0 12px;margin-bottom:16px}.delivery-library-source-tabs button{border:0;border-radius:10px;padding:11px 22px;background:#edf2fa;color:#29456e;font-weight:700;cursor:pointer}.delivery-library-source-tabs button.active{background:#2563eb;color:#fff}.delivery-library-source-body{min-height:390px}.delivery-library-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.delivery-library-item{min-height:210px;border:1px solid #dbe4f0;border-radius:10px;background:#fff;padding:0 0 10px;overflow:hidden;text-align:left;display:flex;flex-direction:column;gap:5px;cursor:pointer}.delivery-library-item img{width:100%;height:145px;object-fit:cover;background:#111}.delivery-library-item strong,.delivery-library-item span{padding:0 12px}.delivery-library-item:hover{border-color:#2563eb;box-shadow:0 4px 14px #2563eb22}
.delivery-library-source-tabs button[data-source="project"]{display:none}
.delivery-library-source-body>.delivery-library-tabs{display:none!important}
.delivery-library-list{display:block}.delivery-library-list>.delivery-library-tabs{display:none}.delivery-library-source-tabs{display:flex!important;align-items:center}.delivery-library-source-tabs button{width:auto!important;height:auto!important;min-height:0!important;flex:0 0 auto}.delivery-library-source-body{display:block}.delivery-library-cards{display:grid}
.admin-material-card{position:relative}.admin-material-delete{position:absolute;right:8px;top:8px;width:28px;height:28px;min-width:28px;padding:0;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:50%;background:#f1f5f9;color:#64748b;font:20px/1 Arial,sans-serif;cursor:pointer;box-shadow:none;transition:background .15s,color .15s,border-color .15s}.admin-material-delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca;box-shadow:none}.admin-material-delete:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.admin-material-card>strong{padding-right:32px}
:root .header-credit-balance{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border:1px solid #cbdaf2;border-radius:11px;background:#f8fbff;color:#1d4ed8;font-size:14px;font-weight:800;white-space:nowrap}
.landing-project-card .project-card-actions{position:absolute;right:10px;bottom:49px;z-index:5}.landing-project-card .project-more{width:30px;height:30px;min-height:30px;padding:0;border:1px solid #bfdbfe;border-radius:50%;background:#ffffffed;color:#2563eb;box-shadow:0 3px 12px #0f172a22;font-size:21px;font-weight:900;line-height:24px;display:grid;place-items:center;cursor:pointer}.landing-project-card .project-more:hover{background:#eff6ff;border-color:#60a5fa;color:#1d4ed8}.project-card-menu{position:absolute;right:0;bottom:36px;width:112px;padding:5px;background:#fff;border:1px solid #dbe5f2;border-radius:9px;box-shadow:0 10px 28px #0f172a2b}.project-card-menu[hidden]{display:none!important}.project-card-menu button{display:block;width:100%;padding:8px 10px;border:0;border-radius:6px;background:#fff;color:#334155;text-align:left;font-size:12px;line-height:1.2}.project-card-menu button:hover{background:#eff6ff;color:#1d4ed8}.project-card-menu button.danger{color:#dc2626}.project-card-menu button.danger:hover{background:#fff1f2;color:#b91c1c}@media(max-width:800px){.landing-project-card .project-card-actions{right:10px;bottom:49px}.landing-project-card .project-more{opacity:1}}


/* 系统设置：按功能分组，统一字段宽度和开关样式。 */
.system-settings-card{padding:22px}
.system-settings-card .interface-settings-heading{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid #e5edf6}
.system-settings-content{display:grid;gap:16px}
.system-settings-group{padding:16px;border:1px solid #e2eaf4;border-radius:12px;background:#fbfdff}
.system-settings-group-heading{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}
.system-settings-group-heading h3{margin:0;color:#183b70;font-size:15px}
.system-settings-group-heading p{margin:0;color:#64748b;font-size:12px}
.system-settings-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.system-settings-group .admin-check-row{display:flex;align-items:center;gap:10px;min-height:44px;box-sizing:border-box;padding:10px 12px;border:1px solid #dbe5f2;border-radius:9px;background:#fff;color:#334155;font-size:13px;font-weight:700}
.system-settings-group .admin-check-row input{width:18px;min-width:18px;height:18px;min-height:18px;margin:0;accent-color:#2563eb}
.system-settings-field-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}
.system-settings-field-grid label{display:grid;align-content:start;gap:6px;min-width:0}
.system-settings-field-grid label small{color:#64748b;font-size:11px;font-weight:500;line-height:1.3}
.system-settings-card .admin-form-state{margin:12px 0 0}

@media(max-width:1100px){
  .system-settings-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .system-settings-toggle-grid,.system-settings-field-grid{grid-template-columns:1fr}
  .system-settings-group-heading{display:block}
  .system-settings-group-heading p{margin-top:4px}
}

.cover-project-name{max-width:42%;min-width:0;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:7px 12px;border:1px solid #cbd9ea;border-radius:8px;background:#f8fbff;color:#2563eb;font-size:14px;font-weight:700;cursor:copy}.cover-project-name:hover{background:#eff6ff;border-color:#93c5fd}.cover-project-name:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}@media(max-width:640px){.cover-project-name{max-width:36%;font-size:12px;padding:6px 8px}}

.delivery-library-preview{position:relative;width:100%;height:145px;background:#111;overflow:hidden}.delivery-library-preview img{display:block;width:100%;height:100%;object-fit:cover}.delivery-library-play{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:grid;place-items:center;width:42px;height:30px;border-radius:999px;background:#2563ebdd;color:#fff;font-size:16px;line-height:1;opacity:0;pointer-events:none;cursor:pointer;box-shadow:0 3px 10px #0f172a55;transition:opacity .16s,transform .16s}.delivery-library-item:hover .delivery-library-play,.delivery-library-item:focus-within .delivery-library-play{opacity:1;pointer-events:auto}.delivery-library-play:hover{background:#1d4ed8;transform:translateX(-50%) scale(1.06)}.delivery-library-play:focus-visible{outline:2px solid #bfdbfe;outline-offset:2px}
.rt-subtitle{margin:14px 0 8px;padding:8px 12px;border-left:3px solid #6b9df8;background:#f4f7fc;color:#173b67;font-size:15px;font-weight:600;line-height:1.5}
.batch-group:disabled,.batch-group.pending{color:#aab4c3;background:#f3f5f8;border-color:#dfe5ee;cursor:not-allowed;opacity:.75}
.project-start-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0 6px;padding:12px;border:1px solid #dbe5f2;border-radius:10px;background:#f8fbff}.project-start-mode legend{padding:0 5px;color:#324c6b;font-weight:700}.project-start-mode label{display:flex;align-items:center;gap:7px;margin:0;color:#334155;font-weight:600;cursor:pointer}.project-start-mode input[type=radio]{width:auto;margin:0;accent-color:#2563eb}
.asset-extraction-recovery{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #fed7aa;border-radius:12px;background:#fffaf0;color:#9a3412}.asset-extraction-recovery>div{min-width:0;display:grid;gap:3px}.asset-extraction-recovery strong{font-size:14px}.asset-extraction-recovery span{font-size:12px;color:#9a5a20;overflow-wrap:anywhere}.asset-extraction-recovery button{flex:0 0 auto;white-space:nowrap;border-color:#fdba74;background:#fff;color:#9a3412}.asset-extraction-recovery button:hover{background:#fff7ed;border-color:#f97316}@media(max-width:620px){.asset-extraction-recovery{align-items:stretch;flex-direction:column}.asset-extraction-recovery button{width:100%}}

/* 人物素材库：后台与第二步共用的头像分类选择界面 */
.person-material-admin-filters,.person-material-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:14px 0 18px}.person-material-admin-filters label,.person-material-filters label{display:grid;gap:6px;font-size:13px;color:#42526b}.person-material-admin-filters small{color:#70819a;padding-bottom:7px}.person-material-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}.person-material-admin-card{border:1px solid #dbe4f1;border-radius:12px;overflow:hidden;background:#fff;display:grid;grid-template-rows:190px auto auto}.person-material-admin-card>img{width:100%;height:190px;object-fit:cover;background:#edf2f8}.person-material-admin-card>div{display:grid;gap:5px;padding:12px}.person-material-admin-card small,.person-material-admin-card span{color:#6b7c93;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-material-admin-card footer{display:flex;gap:8px;padding:0 12px 12px}.person-material-admin-card footer button{flex:1}.person-material-dialog{width:min(980px,calc(100vw - 36px));height:min(760px,calc(100vh - 36px));max-height:min(760px,calc(100vh - 36px));box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden}.person-material-dialog>.dialog-heading,.person-material-tabs,.person-material-filters,.person-material-pagination{flex:0 0 auto}.person-material-dialog>.dialog-heading{margin-bottom:0}.person-material-tabs{display:flex;gap:8px;margin:14px 0 4px;border-bottom:1px solid #dbe4f1}.person-material-tabs button{border-radius:9px 9px 0 0!important;background:#eef3fa!important;border-color:#d6e0ec!important;color:#526078!important}.person-material-tabs button.active{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}.person-material-filters>div{display:grid;gap:7px;color:#42526b;font-size:13px}.person-material-filter-buttons{display:flex;gap:7px;flex-wrap:wrap}.person-material-filter-buttons button{padding:6px 10px;background:#f8fafc!important;border-color:#d7e1ee!important;color:#526078!important}.person-material-filter-buttons button.active{background:#059669!important;border-color:#059669!important;color:#fff!important}.person-material-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;gap:14px;flex:1 1 auto;min-height:0;overflow:auto;max-height:none;padding:2px}.person-material-card{align-self:start;height:max-content;padding:0;overflow:hidden;border:1px solid #d7e1ef;border-radius:12px;background:#fff;color:#183760;text-align:left;display:grid;grid-template-rows:170px auto auto;gap:5px}.person-material-card:hover,.person-material-card:focus-visible{border-color:#2864e8;box-shadow:0 0 0 2px #d9e6ff}.person-material-card img{width:100%;height:170px;object-fit:cover;background:#edf2f8}.person-material-card strong,.person-material-card span{padding:0 10px}.person-material-card strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-material-card span{padding-bottom:11px;color:#68809e;font-size:12px}.person-material-empty{grid-column:1/-1;color:#71829a;padding:28px;text-align:center}.person-material-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin:14px 0 0}.person-material-pagination span{min-width:130px;text-align:center;color:#64748b;font-size:13px}

.asset-load-more{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:12px;padding:18px;border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;color:#64748b;font-size:13px}.asset-load-more button{min-width:132px}
.storyboard-insert-button{margin-left:8px;padding:5px 10px;font-size:12px}.storyboard-insert-dialog{width:min(440px,92vw);border:0;border-radius:14px;padding:22px;box-shadow:0 20px 56px #0f172a38}.storyboard-insert-dialog form{display:grid;gap:13px}.storyboard-insert-dialog h2{margin:0}.storyboard-insert-dialog p{margin:0;color:#64748b;line-height:1.6}.storyboard-insert-dialog label{display:grid;gap:6px;color:#334155;font-weight:700}.storyboard-insert-dialog select{height:39px;border:1px solid #cbd8ea;border-radius:8px;padding:0 10px;background:#fff}.storyboard-insert-dialog .error{min-height:18px;color:#dc2626}
.audit-title-line{display:flex;align-items:center;gap:7px}.audit-settings-button{display:none}.native-audit #auditTitle{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.native-audit #auditTitle::after{content:'⚙';display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #cbd8ea;border-radius:8px;background:#f8fbff;color:#3b5678;font-size:16px;font-weight:400;line-height:1}.native-audit #auditTitle:hover::after{background:#eaf2ff;color:#1d4ed8;border-color:#93c5fd}.audit-workflow-settings-dialog{width:min(520px,calc(100vw - 32px));border:0;border-radius:16px;padding:24px;box-shadow:0 24px 64px #0f172a38}.audit-workflow-settings-dialog form{display:grid;gap:14px}.audit-workflow-settings-dialog .dialog-heading h2{margin:0;font-size:22px}.audit-workflow-settings-dialog .dialog-heading p{margin:6px 0 0;color:#64748b;line-height:1.55}.audit-setting-row{display:flex!important;align-items:flex-start;gap:11px;padding:13px;border:1px solid #dbe6f2;border-radius:11px;background:#fbfdff;cursor:pointer}.audit-setting-row input{width:18px;height:18px;margin:2px 0 0;accent-color:#2563eb;flex:0 0 auto}.audit-setting-row span{display:grid;gap:4px}.audit-setting-row b{color:#243b5a}.audit-setting-row small{color:#64748b;line-height:1.55}.audit-workflow-settings-dialog .error{min-height:18px;margin:0;color:#dc2626}
.style-preset-admin-list,.director-preset-admin-list{display:grid;gap:12px}.style-preset-admin-card,.director-preset-admin-card{border:1px solid #dbe5f2;border-radius:12px;background:#fff;padding:16px}.style-preset-admin-card header,.director-preset-admin-card header{display:flex;align-items:center;gap:9px}.style-preset-admin-card header strong,.director-preset-admin-card header strong{font-size:16px;color:#1e3a5f}.style-preset-default{border-radius:999px;padding:3px 8px;background:#dcfce7;color:#166534;font-size:12px;font-weight:700}.style-preset-admin-card pre,.director-preset-admin-card pre{max-height:165px;margin:12px 0;overflow:auto;white-space:pre-wrap;word-break:break-word;color:#42526b;font:13px/1.65 system-ui,"Microsoft YaHei",sans-serif}.style-preset-admin-card footer,.director-preset-admin-card footer{display:flex;justify-content:flex-end;gap:8px}#stylePresetDialog,#directorPresetDialog{width:min(760px,94vw)}#stylePresetDialog .admin-dialog-grid,#directorPresetDialog .admin-dialog-grid{grid-template-columns:1fr;gap:16px}#stylePresetDialog .style-preset-prompt-field,#directorPresetDialog .style-preset-prompt-field{grid-column:auto}#stylePresetDialog .style-preset-prompt-field textarea,#directorPresetDialog .style-preset-prompt-field textarea{width:100%;min-height:190px;margin:0;padding:11px;resize:vertical;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#1e293b;font:14px/1.6 system-ui,"Microsoft YaHei",sans-serif}#stylePresetDialog .admin-check-row,#directorPresetDialog .admin-check-row{display:flex;align-items:center;gap:9px;width:max-content;margin:0;padding:10px 12px;border:1px solid #dbe5f2;border-radius:9px;background:#f8fbff;cursor:pointer}#stylePresetDialog .admin-check-row input[type=checkbox],#directorPresetDialog .admin-check-row input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:#2563eb}#stylePresetDialog .admin-check-row span,#directorPresetDialog .admin-check-row span{font-size:14px;font-weight:700;color:#334155}#stylePresetDialog .dialog-actions,#directorPresetDialog .dialog-actions{margin-top:24px}
.director-preset-heading-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:9px;flex-wrap:wrap}.director-preset-heading-actions label{display:grid;grid-template-columns:auto 88px;align-items:center;gap:7px;color:#334155;font-size:13px;font-weight:700}.director-preset-heading-actions label small{grid-column:1/-1;color:#718096;font-size:11px;font-weight:500}.director-preset-heading-actions input{width:88px;min-height:38px;box-sizing:border-box;border:1px solid #cbd8ea;border-radius:9px;padding:8px 10px;background:#fff;color:#1e293b;font:inherit}@media(max-width:760px){.director-preset-heading-actions{justify-content:flex-start;width:100%}}

.member-expire{display:block;margin-top:3px;color:#718096;font-size:11px}.membership-plan-admin-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.membership-plan-admin-card{border:1px solid #dbe5f2;border-radius:12px;background:#fff;padding:16px}.membership-plan-admin-card header{display:flex;justify-content:space-between;gap:10px;align-items:center}.membership-plan-admin-card header strong{color:#1e3a5f;font-size:17px}.membership-plan-active,.membership-plan-disabled{padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700}.membership-plan-active{background:#dcfce7;color:#166534}.membership-plan-disabled{background:#f1f5f9;color:#64748b}.membership-plan-admin-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.membership-plan-admin-card dl div{padding:10px;border-radius:9px;background:#f8fbff}.membership-plan-admin-card dt{font-size:12px;color:#64748b}.membership-plan-admin-card dd{margin:5px 0 0;color:#1e3a5f;font-weight:800}.membership-plan-admin-card p{min-height:42px;margin:0;color:#526078;font-size:13px;line-height:1.6}.membership-plan-admin-card footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.membership-plan-note{grid-column:1/-1}.membership-plan-note textarea{width:100%;min-height:88px;resize:vertical;border:1px solid #cbd8ea;border-radius:9px;padding:9px;font:14px/1.55 inherit}.membership-plan-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:11px 0 -2px;color:#64748b;font-size:12px;font-weight:700}.membership-plan-type{padding:3px 8px;border-radius:999px}.membership-plan-type.personal{background:#eff6ff;color:#1d4ed8}.membership-plan-type.enterprise{background:#f5f3ff;color:#6d28d9}#membershipPlanEmployeeLimitWrap small{color:#718096;font-size:11px;font-weight:500}

.user-membership-line{display:flex;align-items:center;gap:7px;min-width:0}.user-membership-line small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-membership-line button{margin-left:auto;border:1px solid #93c5fd;border-radius:7px;background:#eff6ff;color:#1d4ed8;padding:3px 8px;font-size:12px;font-weight:700;cursor:pointer}.user-membership-line button:hover{background:#dbeafe}.membership-upgrade-dialog{width:min(660px,94vw);padding:24px}.membership-upgrade-dialog .dialog-heading{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e5edf6;padding-bottom:14px}.membership-upgrade-dialog h2{margin:0}.membership-upgrade-dialog p{margin:6px 0 0;color:#64748b}.membership-upgrade-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:18px 0}.membership-upgrade-plan{display:grid;gap:6px;min-height:150px;padding:15px;border:1px solid #dbe5f2;border-radius:12px;background:#fff;color:#334155;text-align:left;cursor:pointer}.membership-upgrade-plan:hover,.membership-upgrade-plan.selected{border-color:#2563eb;background:#f4f8ff;box-shadow:0 0 0 2px #dbeafe}.membership-upgrade-plan strong{font-size:17px;color:#1e3a5f}.membership-upgrade-plan span{color:#64748b}.membership-upgrade-plan b{color:#2563eb;font-size:16px}.membership-upgrade-plan small{color:#718096;line-height:1.45}.membership-upgrade-empty{grid-column:1/-1;padding:25px;text-align:center;border:1px dashed #cbd8ea;border-radius:10px;background:#f8fafc}.membership-upgrade-dialog .error{min-height:20px;color:#dc2626}

.membership-plan-terms{display:grid;gap:10px;margin-top:16px}.membership-plan-term{display:grid;grid-template-columns:82px 90px minmax(160px,1fr);align-items:center;gap:12px;padding:12px;border:1px solid #dbe5f2;border-radius:10px;background:#f8fbff;color:#334155;font-weight:700}.membership-plan-term input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb}.membership-plan-term span:last-child{display:flex;align-items:center;gap:8px}.membership-plan-term input[type=number]{width:100%;height:36px;border:1px solid #cbd8ea;border-radius:8px;padding:0 9px}.membership-plan-term-summary{display:grid;gap:7px;margin:14px 0}.membership-plan-term-summary span{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;background:#f8fafc;font-size:13px;color:#64748b}.membership-plan-term-summary span.enabled{background:#effcf5;color:#166534}.membership-plan-term-summary b{min-width:42px;color:#334155}.membership-plan-term-summary em{font-style:normal;margin-right:auto}.membership-upgrade-level{display:grid;gap:8px;padding:15px;border:1px solid #dbe5f2;border-radius:12px;background:#fff}.membership-upgrade-level>strong{font-size:17px;color:#1e3a5f}.membership-upgrade-level>small{color:#718096}.membership-upgrade-level>div{display:flex;flex-wrap:wrap;gap:8px}.membership-upgrade-level .membership-upgrade-plan{min-height:auto;flex:1;min-width:140px;padding:11px;grid-template-columns:1fr auto;align-items:center}.membership-upgrade-level .membership-upgrade-plan b{font-size:14px;text-align:right}

/* Account menu: keep credit, membership and expiry readable on separate lines. */
.user-menu-panel{width:286px;padding:12px}
.user-menu-profile{align-items:flex-start;padding:11px 8px 13px;gap:11px}
.user-menu-profile-info{flex:1;min-width:0;display:grid;gap:5px}
.user-menu-profile-info strong{font-size:16px;line-height:1.25}
.user-menu-balance{display:block;color:#2563eb;font-size:12px;font-weight:800;line-height:1.35}
.user-membership-line{display:flex;align-items:center;gap:8px;min-width:0;margin-top:1px}
.user-membership-line>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334155;font-size:13px;font-weight:800}
.user-membership-line button{width:auto!important;margin-left:0!important;padding:3px 9px!important;line-height:1.35;flex:0 0 auto}
.user-menu-profile-info small{margin:0!important;min-height:16px;overflow-wrap:anywhere;white-space:normal;color:#718096;font-size:12px;line-height:1.4}

/* Enterprise account center */
.enterprise-team-panel{display:grid;gap:18px}.enterprise-team-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #e5edf6;padding-bottom:16px}.enterprise-team-heading h2{margin:2px 0 0}.enterprise-team-heading p{margin:6px 0 0;color:#64748b}.enterprise-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.enterprise-summary article{display:grid;gap:6px;padding:14px;border:1px solid #dbeafe;border-radius:13px;background:#f8fbff}.enterprise-summary span,.enterprise-summary small{color:#64748b;font-size:12px}.enterprise-summary strong{color:#1e3a5f;font-size:19px;overflow-wrap:anywhere}.enterprise-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.enterprise-section-heading h3{margin:0}.enterprise-section-heading p{margin:5px 0 0;color:#64748b;font-size:13px}.enterprise-member-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.enterprise-member-card{display:grid;gap:13px;padding:15px;border:1px solid #dbe5f2;border-radius:14px;background:#fff}.enterprise-member-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.enterprise-member-card-heading strong,.enterprise-member-card-heading small{display:block}.enterprise-member-card-heading strong{color:#1e3a5f}.enterprise-member-card-heading small{margin-top:5px;color:#64748b;overflow-wrap:anywhere}.enterprise-status{flex:0 0 auto;padding:3px 8px;border-radius:999px;background:#dcfce7;color:#166534;font-size:12px;font-weight:800}.enterprise-status.disabled{background:#f1f5f9;color:#64748b}.enterprise-member-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.enterprise-member-card dl div{min-width:0;padding:9px;border-radius:9px;background:#f8fafc}.enterprise-member-card dt{font-size:11px;color:#64748b}.enterprise-member-card dd{margin:5px 0 0;overflow-wrap:anywhere;color:#334155;font-weight:800;font-size:12px}.enterprise-member-actions{display:flex;gap:7px;flex-wrap:wrap}.enterprise-member-actions button{font-size:13px;padding:8px 10px}.enterprise-dialog p{margin:5px 0 0;color:#64748b;font-size:13px}.enterprise-dialog select{height:40px;border:1px solid #cbd8ea;border-radius:9px;padding:0 10px;background:#fff}.enterprise-check{display:flex!important;align-items:center;gap:8px!important;font-weight:700!important}.enterprise-check input{width:16px!important;height:16px!important;accent-color:#2563eb}.enterprise-dialog small,.enterprise-permission-dialog small{min-height:20px;color:#64748b}.enterprise-error{margin:0;padding:12px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#b91c1c}.enterprise-permission-dialog{width:min(920px,94vw);padding:24px}.enterprise-project-list{display:grid;gap:10px;max-height:55vh;overflow:auto}.enterprise-project-permission{padding:13px;border:1px solid #dbe5f2;border-radius:11px;background:#f8fbff}.enterprise-module-checks{display:flex;gap:12px;flex-wrap:wrap;padding:10px 0 0 24px}.enterprise-module-checks label{display:flex;align-items:center;gap:5px;color:#475569;font-size:13px}.enterprise-module-checks input{width:15px;height:15px;accent-color:#2563eb}.enterprise-project-create{padding:10px 12px;border:1px solid #dbeafe;border-radius:9px;background:#eff6ff}.enterprise-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.enterprise-project-grid article{display:grid;gap:7px;padding:13px;border:1px solid #dbe5f2;border-radius:11px;background:#f8fbff}.enterprise-project-grid strong{color:#1e3a5f}.enterprise-project-grid small{color:#64748b}.enterprise-summary.employee article{background:#fbfdff}
@media(max-width:700px){.enterprise-team-heading{flex-direction:column}.enterprise-summary{grid-template-columns:1fr}.enterprise-member-card dl{grid-template-columns:1fr 1fr}.enterprise-module-checks{padding-left:0}.enterprise-permission-dialog{padding:17px}}
.asset-preview.is-complete{position:relative;border-color:#cbd5e1;background:#f4f7fb;color:#64748b}.asset-preview-complete-label{display:flex;align-items:center;justify-content:center;gap:6px;position:absolute;inset:0;font-size:14px;font-weight:700;letter-spacing:.04em;pointer-events:none;z-index:1}.asset-preview-complete-spinner{width:12px;height:12px;box-sizing:border-box;border:2px solid #94a3b8;border-top-color:#2563eb;border-radius:50%;animation:asset-spin .75s linear infinite}.asset-preview.has-image .asset-preview-complete-label{display:none}

/* Keep admin navigation and header visible; only workspace content scrolls. */
.system-admin-page{height:100vh;overflow:hidden}.system-admin-page .system-admin-shell{height:100vh;min-height:0;overflow:hidden}.system-admin-page .system-admin-sidebar{height:100%;min-height:0;overflow-y:auto}.system-admin-page .system-admin-content{height:100%;min-height:0;overflow:hidden}.system-admin-page .system-admin-topbar{flex:0 0 auto}.system-admin-page .system-admin-main{flex:1;min-height:0;overflow:auto}


html:root body.system-admin-page .system-admin-shell{height:100dvh;min-height:0;margin:0;box-sizing:border-box} html:root body.system-admin-page .system-admin-main{box-sizing:border-box} html:root body.system-admin-page.interface-settings-active .system-admin-main{min-height:0}

/* Explicit grid track prevents tall settings forms from enlarging the shell. */
html:root body.system-admin-page .system-admin-shell{grid-template-rows:minmax(0,1fr)}
html:root body.system-admin-page .system-admin-content{height:100%;min-height:0}
html:root body.system-admin-page .system-admin-main{flex:1 1 0;min-height:0;overflow-y:auto}
html:root body.system-admin-page.interface-settings-active .admin-table-card{flex-shrink:0;overflow:visible;min-height:0}

/* Public draft-package link: show the whole address clearly when browser copy is blocked. */
.delivery-package-link-dialog{width:min(680px,calc(100vw - 32px));max-width:680px;border:0;border-radius:18px;padding:0;overflow:hidden;background:#fff;box-shadow:0 24px 72px #0f172a3d}
.delivery-package-link-dialog::backdrop{background:#0f172a73;backdrop-filter:blur(2px)}
.delivery-package-link-dialog .dialog-heading{align-items:flex-start;gap:18px;margin:0;padding:22px 24px 16px;border-bottom:1px solid #e5eaf1;background:linear-gradient(135deg,#f8fbff,#fff)}
.delivery-package-link-dialog .dialog-heading>div{min-width:0}
.delivery-package-link-dialog .dialog-heading h2{margin:0;color:#1e3a5f;font-size:21px;line-height:1.3}
.delivery-package-link-dialog .dialog-heading p{margin:7px 0 0;color:#64748b;font-size:13px;line-height:1.65;white-space:normal}
.delivery-package-link-dialog .icon-close{flex:0 0 auto}
.delivery-package-link-dialog textarea{display:block;width:calc(100% - 48px);min-height:112px;margin:18px 24px 0;padding:12px 14px;border:1px solid #cbd8ea;border-radius:10px;background:#f8fafc;color:#243b5a;resize:vertical;overflow-wrap:anywhere;word-break:break-all;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,"Microsoft YaHei",monospace}
.delivery-package-link-dialog textarea:focus{outline:3px solid #bfdbfe;border-color:#2563eb;background:#fff}
.delivery-package-link-dialog .dialog-actions{margin:18px 0 0;padding:16px 24px 22px;border-top:1px solid #edf1f6;background:#fff}
.delivery-package-link-dialog .dialog-actions button{min-width:96px}
.delivery-package-row>div:last-child{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.delivery-package-row>div:last-child button{white-space:nowrap}
@media(max-width:560px){.delivery-package-link-dialog .dialog-heading{padding:18px 18px 14px}.delivery-package-link-dialog textarea{width:calc(100% - 36px);margin:14px 18px 0;min-height:128px}.delivery-package-link-dialog .dialog-actions{padding:14px 18px 18px}.delivery-package-link-dialog .dialog-actions button{flex:1}.delivery-package-row{grid-template-columns:1fr;gap:12px}.delivery-package-row>div:last-child{justify-content:stretch}.delivery-package-row>div:last-child button{flex:1}}
.landing-project-card .project-entry-links{position:absolute;z-index:4;left:12px;right:52px;bottom:49px;transform:translateY(8px);opacity:0;pointer-events:none;display:flex;gap:7px;transition:opacity .16s,transform .16s}.landing-project-card:hover .project-entry-links,.landing-project-card:focus-within .project-entry-links{opacity:1;pointer-events:auto;transform:translateY(0)}.landing-project-card .project-entry-link{flex:1;min-width:0;min-height:27px;padding:0 7px;border:1px solid #bfdbfe;border-radius:8px;background:#ffffffed;color:#1d4ed8;box-shadow:0 3px 12px #0f172a22;font-size:12px;font-weight:800;white-space:nowrap}.landing-project-card .project-entry-link:hover{background:#eff6ff;color:#174ea6}@media(max-width:800px){.landing-project-card .project-entry-links{opacity:1;pointer-events:auto;transform:translateY(0)}}
.delivery-job-message.attention{color:#dc2626}.delivery-job-message.complete{color:#16a34a}.delivery-completion-dialog{width:min(460px,92vw);border:0;border-radius:16px;padding:0;background:#fff;box-shadow:0 22px 70px #0f172a38}.delivery-completion-dialog::backdrop{background:#0f172a66}.delivery-completion-dialog .dialog-heading{padding:22px 24px 14px}.delivery-completion-dialog .dialog-heading h2{margin:0;color:#1e293b;font-size:21px}.delivery-completion-dialog .dialog-heading p{margin:7px 0 0;color:#526078;line-height:1.6}.delivery-completion-dialog .dialog-actions{margin:0;padding:16px 24px 22px;border-top:1px solid #e5eaf0}

/* Step 1 episode navigator: fixed at the requested 160px. */
#scriptPage .reader-layout{grid-template-columns:160px minmax(0,1fr)}
#scriptPage .episode-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px;white-space:nowrap}
#scriptPage .episode-heading b{font-size:13px;color:#1e293b}
#scriptPage .episode-heading span{float:none;flex:1;min-width:0;color:#64748b;font-size:12px;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}
#scriptPage .episodes{padding:8px}
#scriptPage .episodes button{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 11px;margin-bottom:3px;font-size:13px;font-variant-numeric:tabular-nums}
@media(max-width:1000px){#scriptPage .reader-layout{grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:800px){:root #scriptPage .reader-layout{grid-template-columns:160px minmax(0,1fr)}#scriptPage .episode-heading{padding:10px 8px;gap:4px}#scriptPage .episode-heading b{font-size:12px}#scriptPage .episode-heading span{font-size:11px}#scriptPage .episodes{padding:6px}#scriptPage .episodes button{padding:9px 7px;font-size:12px}}
/* Single source of truth: use exactly 160px at every viewport width. */
:root #scriptPage .reader-layout{grid-template-columns:160px minmax(0,1fr)!important}
:root #scriptPage .reader-layout>aside{width:160px;min-width:160px;max-width:160px}
.asset-version-button{position:absolute;z-index:4;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;padding:0;box-sizing:border-box;border:2px solid #fff;border-radius:50%;background:#fff;color:#2563eb;line-height:1;box-shadow:0 3px 10px #0f172a30}.asset-version-button:hover{background:#f8fbff;color:#1d4ed8;transform:translateY(-1px);box-shadow:0 5px 13px #0f172a3b}.asset-version-button:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.asset-version-icon{position:relative;display:block;width:13px;height:13px;box-sizing:border-box;border:2px solid currentColor;border-radius:2px}.asset-version-icon::after{content:'';position:absolute;top:2px;left:2px;width:3px;height:3px;border-radius:1px;background:currentColor}.asset-versions-dialog{box-sizing:border-box;width:min(960px,calc(100vw - 28px));height:min(820px,calc(100vh - 28px));max-height:calc(100vh - 28px);padding:0;overflow:hidden;display:flex;flex-direction:column;border:0;border-radius:18px;box-shadow:0 20px 60px #0f172a55}.asset-versions-dialog::backdrop{background:#0f172a88}.asset-versions-dialog .dialog-heading{flex:0 0 auto;margin:0;padding:22px 24px 16px;border-bottom:1px solid #e3eaf4;background:#fff}.asset-versions-dialog .dialog-heading p{margin:5px 0 0;color:#64748b;font-size:13px}.asset-versions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-content:start;gap:14px;flex:1 1 auto;min-height:0;overflow:auto;padding:18px 24px 24px;background:#f8fafc}.asset-version-card{display:flex;flex-direction:column;gap:8px;min-width:0;padding:9px;border:1px solid #dbe3ed;border-radius:12px;background:#fff}.asset-version-card.current{border:2px solid #2563eb;background:#eff6ff}.asset-version-card img{display:block;width:100%;height:220px;max-width:100%;object-fit:contain;cursor:zoom-in;border-radius:8px;background:#eef1f5}.asset-version-card div{display:grid;gap:5px}.asset-version-card strong{font-size:14px;color:#1e3a5f}.asset-version-card small{min-height:32px;color:#64748b;font-size:12px;line-height:1.35}.asset-version-card button{width:100%;padding:7px 9px;font-size:12px}.asset-version-card button:disabled{opacity:1;background:#dbeafe;color:#1d4ed8;cursor:default}.image-dialog{box-sizing:border-box;width:min(1100px,calc(100vw - 28px));max-width:calc(100vw - 28px);max-height:calc(100vh - 28px);padding:0;overflow:hidden;display:flex;flex-direction:column;border:0;border-radius:18px;box-shadow:0 20px 60px #0f172a55}.image-dialog .dialog-heading{flex:0 0 auto;margin:0;padding:16px 20px;border-bottom:1px solid #e3eaf4;background:#fff}.image-dialog img{display:block;align-self:center;box-sizing:border-box;min-width:0;max-width:100%;width:auto;height:auto;max-height:calc(100vh - 104px);margin:auto;object-fit:contain;border-radius:0;background:#eef1f5}@media(max-width:640px){.asset-version-button{top:8px;right:8px;width:32px;height:32px}.asset-versions-dialog{width:calc(100vw - 20px);height:calc(100vh - 20px);max-height:calc(100vh - 20px);border-radius:14px}.asset-versions-dialog .dialog-heading{padding:18px 16px 14px}.asset-versions-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px 18px}.asset-version-card{padding:7px}.asset-version-card img{height:150px}.image-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:14px}.image-dialog .dialog-heading{padding:14px 16px}.image-dialog img{max-height:calc(100vh - 92px)}}
.wardrobe-plan-dialog{width:min(1120px,96vw);height:min(820px,calc(100vh - 36px));max-height:calc(100vh - 36px);padding:0;overflow:hidden;display:flex;flex-direction:column}.wardrobe-plan-dialog .dialog-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex:0 0 auto;padding:26px 30px 17px;border-bottom:1px solid #e3eaf4;background:#fff}.wardrobe-plan-dialog .dialog-heading h2{margin:0}.wardrobe-plan-dialog .dialog-heading p{margin:6px 0 0;color:#64748b}.wardrobe-plan-dialog pre{box-sizing:border-box;flex:1 1 auto;min-height:0;max-height:none;overflow:auto;white-space:pre-wrap;line-height:1.75;margin:0 30px;padding:18px 20px;border:1px solid #d5e3f6;border-radius:10px;background:#f8fbff;color:#23466e;font:15px/1.75 system-ui,"Microsoft YaHei",sans-serif}.wardrobe-plan-dialog>p{flex:0 0 auto;margin:12px 30px 0;color:#64748b;font-size:13px}.wardrobe-plan-dialog .dialog-actions{flex:0 0 auto;margin:14px 0 0;padding:17px 30px 24px;border-top:1px solid #e3eaf4;background:#fff}.wardrobe-plan-dialog .icon-close{padding:5px 10px;font-size:22px;line-height:1;background:#eef2f7;color:#526078}#wardrobePlanPreviewDialog:not([data-preview-ready]){display:none!important}#wardrobePlanRequestDialog{width:min(640px,94vw);padding:0;overflow:hidden}#wardrobePlanRequestDialog form{display:flex;flex-direction:column;max-height:min(680px,calc(100vh - 36px))}#wardrobePlanRequestDialog h2{margin:0;padding:26px 26px 0}#wardrobePlanRequestDialog form>p:not(.error){margin:8px 0 0;padding:0 26px;color:#526078;line-height:1.7}#wardrobePlanRequestDialog label{display:block;margin:22px 26px 0;font-weight:700;color:#1f3859}#wardrobePlanRequestDialog textarea{box-sizing:border-box;display:block;width:100%;min-height:170px;margin-top:9px;padding:12px;resize:vertical;border:1px solid #cbd8ea;border-radius:9px;font:14px/1.65 system-ui,"Microsoft YaHei",sans-serif;color:#203b5e;background:#fbfdff}#wardrobePlanRequestDialog textarea:focus{outline:2px solid #87b8ff;outline-offset:1px;border-color:#4f91ee}#wardrobePlanRequestDialog .error{min-height:20px;margin:10px 26px 0}#wardrobePlanRequestDialog .dialog-actions{margin-top:16px;padding:18px 26px 24px;border-top:1px solid #e3eaf4;background:#fff}@media (max-width:640px){.wardrobe-plan-dialog{width:calc(100vw - 20px);height:calc(100vh - 20px)}.wardrobe-plan-dialog .dialog-heading{padding:20px 18px 14px}.wardrobe-plan-dialog pre{margin:0 18px;padding:14px;font-size:14px}.wardrobe-plan-dialog>p{margin-left:18px;margin-right:18px}.wardrobe-plan-dialog .dialog-actions{padding:14px 18px 18px}}
/* Author layout rules must never override the browser's closed-dialog state. */
dialog:not([open]){display:none!important}

.outfit-completion-button{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important}.outfit-completion-button:hover{background:#b91c1c!important;border-color:#b91c1c!important}
#assetPromptAiDialog{box-sizing:border-box;width:min(640px,calc(100vw - 32px));padding:26px;background:#fff}#assetPromptAiDialog h2{margin:0 0 8px;color:#1e293b}#assetPromptAiDialog p{margin:0;color:#64748b;line-height:1.7;white-space:normal}#assetPromptAiDialog label{display:block;margin-top:20px;font-weight:700;color:#334155}#assetPromptAiDialog textarea{box-sizing:border-box;display:block;width:100%;min-width:100%;min-height:164px;margin-top:9px;padding:12px;border:1px solid #cbd5e1;border-radius:10px;resize:vertical;font:14px/1.65 system-ui,"Microsoft YaHei",sans-serif;color:#26364b;background:#fbfdff}#assetPromptAiDialog textarea:focus{outline:3px solid #bfdbfe;border-color:#60a5fa;background:#fff}#assetPromptAiDialog .dialog-actions{margin-top:18px}
#scriptKeywordSearchDialog{box-sizing:border-box;width:min(760px,calc(100vw - 24px));height:min(680px,calc(100vh - 48px));max-height:none;padding:0;overflow:hidden;background:#fff}#scriptKeywordSearchDialog form{display:flex;flex-direction:column;height:100%;max-height:none;overflow:hidden}#scriptKeywordSearchDialog h2{flex:0 0 auto;margin:0;padding:24px 24px 0;color:#1e293b}#scriptKeywordSearchDialog .dialog-description{flex:0 0 auto;margin:8px 24px 0;color:#64748b;line-height:1.65}#scriptKeywordSearchDialog label{flex:0 0 auto;margin:18px 24px 0;color:#334155;font-weight:700}#scriptKeywordSearchDialog input{box-sizing:border-box;width:100%;margin-top:8px}#scriptKeywordSearchDialog .error{flex:0 0 auto;min-height:20px;margin:8px 24px 0}#scriptKeywordSearchResults{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;overflow-x:hidden;margin:10px 24px 0;padding:2px}.script-keyword-search-summary{flex:0 0 auto;margin:0 0 2px!important;color:#526078;font-size:13px}.script-keyword-search-result{display:flex!important;flex:0 0 auto;align-items:center;gap:12px;box-sizing:border-box;width:100%;min-width:0;height:50px;padding:8px 12px!important;background:#fff!important;color:#1e3a5f!important;border:1px solid #d9e5f4!important;border-radius:9px!important;box-shadow:none!important;text-align:left!important;font-size:13px!important;font-weight:400!important;line-height:1.4!important;white-space:nowrap!important;overflow:hidden!important;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.script-keyword-search-result:hover{background:#f6faff!important;color:#1e3a5f!important;border-color:#93c5fd!important;box-shadow:0 3px 10px rgba(37,99,235,.08)!important}.script-keyword-search-meta{display:flex;flex:0 0 auto;min-width:0;max-width:225px;align-items:center;gap:7px;color:#1e3a5f;white-space:nowrap}.script-keyword-search-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.script-keyword-search-line{flex:0 0 auto;padding:2px 7px;border-radius:999px;background:#eff6ff;color:#2563eb;font-size:12px;font-weight:700;white-space:nowrap}.script-keyword-search-excerpt{display:block;min-width:0;flex:1 1 auto;overflow:hidden;color:#526078;font-size:13px;font-weight:400;line-height:1.4;text-align:left;text-overflow:ellipsis;white-space:nowrap}.script-keyword-search-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px;white-space:nowrap}.script-keyword-search-actions button{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#2563eb!important;font:inherit!important;font-size:13px!important;font-weight:700!important;line-height:1.4!important;cursor:pointer}.script-keyword-search-actions button:hover{text-decoration:underline}.script-keyword-search-replace{color:#64748b!important}.script-keyword-search-replace:hover{color:#2563eb!important}#scriptKeywordSearchDialog .dialog-actions{flex:0 0 auto;margin:14px 0 0;padding:14px 24px 20px;border-top:1px solid #e5edf7;background:#fbfdff}@media(max-width:560px){#scriptKeywordSearchDialog{width:calc(100vw - 16px);height:min(660px,calc(100vh - 24px))}#scriptKeywordSearchDialog h2{padding:20px 18px 0;font-size:20px}#scriptKeywordSearchDialog .dialog-description,#scriptKeywordSearchDialog label,#scriptKeywordSearchDialog .error{margin-left:18px;margin-right:18px}#scriptKeywordSearchResults{margin-left:18px;margin-right:18px}.script-keyword-search-result{gap:8px;height:48px;padding:8px 10px!important}.script-keyword-search-meta{max-width:145px;gap:5px}.script-keyword-search-meta strong{font-size:13px}.script-keyword-search-line{padding:2px 5px;font-size:11px}.script-keyword-search-actions{gap:7px}.script-keyword-search-actions button{font-size:12px!important}#scriptKeywordSearchDialog .dialog-actions{padding:12px 18px 16px}}
#personMaterialDialog .person-material-list{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-auto-rows:max-content;gap:14px;padding:4px}#personMaterialDialog .person-material-card{display:grid!important;grid-template-rows:auto auto auto!important;align-self:start!important;min-height:0!important;height:auto!important;padding:0!important;overflow:hidden!important}#personMaterialDialog .person-material-card img{display:block!important;width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;aspect-ratio:1/1!important;object-fit:cover!important;object-position:center 28%!important}#personMaterialDialog .person-material-card strong{display:block!important;min-width:0!important;padding:8px 10px 0!important}#personMaterialDialog .person-material-card span{display:block!important;min-width:0!important;padding:0 10px 11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#storyDurationStatsDialog{width:min(480px,92vw)}.story-duration-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.story-duration-stat{padding:10px 11px;border:1px solid #dce6f2;border-radius:9px;background:#f8fbff}.story-duration-stat span{display:block;color:#718096;font-size:12px}.story-duration-stat strong{display:block;margin-top:4px;color:#1e3a5f;font-size:16px}.story-duration-stats-hint{margin:14px 0 0;color:#64748b}@media(max-width:900px){.story-duration-stats{grid-template-columns:1fr}}
#assetPage .asset-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:14px;overflow-x:auto}#assetPage .asset-toolbar-left{display:flex!important;align-items:center!important;flex:0 0 auto!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:8px;min-width:max-content}#assetPage .asset-doors,#assetPage .asset-turnaround-settings{display:flex!important;align-items:center!important;flex:0 0 auto!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:8px;white-space:nowrap}#assetPage .asset-turnaround-layout{order:1;flex:0 0 auto}#assetPage .asset-turnaround-option{order:2;flex:0 0 auto}#assetPage .asset-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:0 0 auto!important;flex-wrap:nowrap!important;margin-left:auto}#assetPage .asset-actions button{flex:0 0 auto!important}
#storyboardPage{position:relative}.storyboard-loading[hidden]{display:none!important}.storyboard-loading{position:absolute;inset:0;z-index:12;display:grid;place-items:center;background:rgba(255,255,255,.88);border:1px solid #e0e6ee;border-radius:14px}.storyboard-loading-card{display:flex;align-items:center;gap:12px;padding:18px 21px;border:1px solid #cbd9ec;border-radius:12px;background:#fff;box-shadow:0 10px 28px #1e3a5f1f;color:#24486e}.storyboard-loading-card strong,.storyboard-loading-card small{display:block}.storyboard-loading-card small{margin-top:4px;color:#718096;font-size:13px}.storyboard-loading-spinner{width:28px;height:28px;box-sizing:border-box;border:4px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:storyboard-loading-spin .8s linear infinite}@keyframes storyboard-loading-spin{to{transform:rotate(360deg)}}
.header-tools .tutorial-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 74px!important;width:74px!important;min-width:74px!important;max-width:74px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0 9px!important;padding:0 14px!important;overflow:hidden!important;color:#1d4ed8;background:#f8fbff;border-color:#cbdaf2;border-radius:11px;font-size:14px!important;font-weight:800!important;line-height:1!important;letter-spacing:0!important;white-space:nowrap!important;word-break:keep-all!important;overflow-wrap:normal!important}.header-tools .tutorial-button:hover{background:#eff6ff;color:#1d4ed8}

/* Header tracks reserve real space for both navigation and account tools. */
.shell-header{display:grid;grid-template-columns:46px minmax(0,1fr) auto;column-gap:clamp(8px,1.5vw,24px);justify-content:initial}.shell-header .project-switch{position:relative;left:auto;top:auto;align-self:center}.shell-header .project-menu{position:absolute;left:0;top:calc(100% + 8px);margin-top:0}.shell-header #steps{width:min(100%,900px);min-width:0;justify-content:center;justify-self:center}.shell-header .header-tools{position:relative;right:auto;top:auto;transform:none;justify-self:end}.shell-header #steps .connector{min-width:6px;margin-inline:clamp(5px,1.25vw,15px)}
@media(max-width:1120px){.shell-header{grid-template-columns:46px minmax(0,1fr);grid-template-rows:42px auto;row-gap:8px;min-height:106px;margin-bottom:12px}.shell-header .project-switch{grid-column:1;grid-row:1}.shell-header .header-tools{grid-column:2;grid-row:1}.shell-header #steps{grid-column:1/-1;grid-row:2}.shell-header #steps .step{gap:6px;padding:8px 10px;font-size:14px}.shell-header #steps .step span{padding:4px 8px}.shell-header #steps .connector{min-width:4px;margin-inline:clamp(3px,.9vw,10px)}}
@media(max-width:620px){.shell-header{column-gap:6px;row-gap:6px;min-height:98px;padding-top:0!important}.shell-header #steps .step{gap:3px;padding:6px 5px;font-size:12px}.shell-header #steps .step span{padding:3px 7px;font-size:12px}.shell-header #steps .connector{min-width:2px;margin-inline:2px}.shell-header .header-tools{gap:0}.shell-header .header-tools .tutorial-button{flex-basis:66px!important;width:66px!important;min-width:66px!important;max-width:66px!important;margin-inline:5px!important;padding-inline:8px!important;font-size:12px!important}.shell-header .header-credit-balance{padding-inline:9px;font-size:12px}}

/* Switch to two compact header rows before the account tools can cover steps 4–5. */
@media(max-width:1320px){.shell-header{grid-template-columns:46px minmax(0,1fr);grid-template-rows:42px 42px;row-gap:6px;min-height:90px;margin-bottom:8px}.shell-header .project-switch{grid-column:1;grid-row:1}.shell-header .header-tools{grid-column:2;grid-row:1}.shell-header #steps{grid-column:1/-1;grid-row:2}.shell-header #steps .step{gap:6px;padding:7px 10px;font-size:14px}.shell-header #steps .step span{padding:4px 8px}.shell-header #steps .connector{min-width:4px;margin-inline:clamp(3px,.9vw,10px)}}
@media(max-width:620px){.shell-header{column-gap:6px;row-gap:6px;min-height:90px;padding-top:0!important}.shell-header #steps .step{gap:3px;padding:6px 5px;font-size:12px}.shell-header #steps .step span{padding:3px 7px;font-size:12px}.shell-header #steps .connector{min-width:2px;margin-inline:2px}}

/* Account menu actions use the same regular weight as the review page menu. */
.user-menu-panel button{font-weight:400}

.delivery-slot>div:last-child>button{align-self:center;min-height:36px}

.delivery-slot{padding:7px 10px}
.delivery-slot>div:last-child{align-items:flex-end}
.delivery-slot>div:last-child>button{align-self:flex-end;min-height:36px}
.delivery-slot>div:last-child>label{gap:3px;margin:0}
.delivery-slot [data-slot-chroma]{height:36px}

.delivery-grid{grid-template-rows:minmax(0,1fr);overflow:hidden}
.delivery-settings-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.delivery-settings-panel>h3{flex:none}
.delivery-settings-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.delivery-settings-panel>.delivery-start{flex:none}
.delivery-grid>.delivery-panel:not(.delivery-settings-panel){min-height:0;overflow-y:auto}
@media(max-width:900px){.delivery-grid{display:block;overflow-y:auto}.delivery-settings-panel{height:min(70vh,720px);min-height:300px}.delivery-grid>.delivery-panel:not(.delivery-settings-panel){margin-top:16px;overflow:visible}}

.delivery-library-source-tabs{overflow-x:auto}
.delivery-library-source-tabs .delivery-library-upload{margin-left:auto;background:#2563eb;color:#fff;white-space:nowrap}

.delivery-library-dialog{box-sizing:border-box;height:90vh;max-height:90vh;min-height:0;overflow:hidden}
.delivery-library-dialog[open]{display:flex;flex-direction:column}
.delivery-library-dialog>.dialog-heading{flex:none}
.delivery-library-dialog>.delivery-library-list{flex:1;min-height:0;max-height:none;overflow-y:auto}
