*{box-sizing:border-box}body{margin:0;background:#101116;color:#eeeef5;font:15px/1.65 system-ui,'Microsoft YaHei',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #41424f;background:#262733;color:#eeeef5;padding:9px 13px;border-radius:8px}button:disabled{opacity:.45;cursor:not-allowed}button:hover:enabled{border-color:#bcb7ff}a{color:inherit;text-decoration:none}input,select,textarea{width:100%;min-width:0;border:1px solid #424351;border-radius:8px;background:#171820;color:#f1f1f6;padding:11px}textarea{resize:vertical;line-height:1.7}input[type=color]{height:48px;padding:5px}input[type=checkbox]{width:auto}label{display:block;margin:15px 0 6px;font-size:13px}label small{color:#aaa9be;margin-left:8px}.test-banner{background:#ddd9fa;color:#302c4a;text-align:center;padding:8px 16px;font-size:12px;font-weight:700}header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #33343f;max-width:1500px;padding:23px 4vw;margin:auto}.wordmark{font-size:23px;font-weight:800}.wordmark small{font-size:10px;letter-spacing:2px;margin-left:14px;color:#aaa7cb}.pill{font-size:11px;border:1px solid #555168;border-radius:24px;padding:4px 10px;color:#d2cbff;white-space:nowrap}.mock{color:#f2d68c;border-color:#78692f}main{max-width:1500px;margin:auto;padding:40px 4vw 70px}.intro{padding:8px 0 20px}.eyebrow{font-size:12px;letter-spacing:2px;color:#c4bbff}h1{font-size:clamp(30px,3.2vw,45px);line-height:1.35;letter-spacing:-1.5px;margin:15px 0}.intro p{color:#a9a8bb}.toolbar,.actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.toolbar{padding:16px 0;border-top:1px solid #33343f;font-size:12px}.toolbar span{color:#a9a8bb}#notice{padding:12px 16px;background:#252332;border-left:3px solid #b8a5ff;border-radius:4px;white-space:pre-line;overflow-wrap:anywhere}#notice.error{border-color:#f2a47f;background:#41291f}.workspace{display:grid;grid-template-columns:minmax(310px,400px) minmax(0,1fr);gap:24px;align-items:start}.editor,.right{min-width:0}fieldset{margin:0;padding:0;border:0;min-width:0}section{background:#1b1c25;border:1px solid #363743;border-radius:16px;padding:24px;margin-bottom:22px}.heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.heading>span{font:12px monospace;color:#d0c5ff;background:#353047;border-radius:6px;padding:5px 8px}h2{font-size:18px;margin:0}.hint{font-size:12px;color:#aeadc0;margin:10px 0 16px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.primary{font-weight:750;background:#b5a0ff;color:#1b1334;border:1px solid #b5a0ff;padding:13px 16px}.editor .primary{width:100%;margin-top:12px}.sample{font-size:12px;margin-top:14px}.filters{display:grid;grid-template-columns:1fr 140px;gap:12px}.empty{text-align:center;color:#a4a0b6;padding:70px 12px}.candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0;max-height:670px;overflow-y:auto}.candidate{padding:10px;background:#16171f;border:2px solid #3c3b4d;border-radius:12px;min-width:0}.candidate.selected{border-color:#b5a0ff;background:#322a49}.candidate img{width:100%;height:220px;object-fit:contain;background:#101018;display:block;border-radius:5px}.thumb{width:100%;padding:0;border:0;background:none}.candidate h3{font-size:14px;margin:12px 0 6px}.candidate p{font-size:11px;color:#aaa7ba}.candidate .actions button{flex:1;font-size:12px;padding:7px}.generate-bar{border-top:1px solid #43404f;padding-top:18px;margin-top:20px;display:flex;gap:15px;align-items:center;justify-content:space-between}.generate-bar p{font-size:12px;flex:1}.generate-bar button{max-width:100%}details{margin:18px 0;font-size:13px}summary{cursor:pointer;color:#d2c8fb}pre{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow-y:auto;background:#12131b;padding:14px;border-radius:8px}#resultImage{display:block;width:100%;max-width:450px;max-height:560px;object-fit:contain;margin:20px auto;background:#111}.mock-note{font-size:13px;color:#f2d68c}.testing{color:#aaa6be;font-size:12px}.check{display:flex;gap:8px}dialog{width:min(700px,94vw);max-height:90vh;overflow:auto;background:#1b1c25;color:#eeeef5;border:1px solid #827096;border-radius:14px;padding:22px}dialog::backdrop{background:#090713df}dialog img{display:block;width:100%;margin:18px 0}dialog .actions{justify-content:space-between}[hidden]{display:none!important}:focus-visible{outline:3px solid #f0d57d;outline-offset:3px}
@media(max-width:1100px){.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.candidate img{height:240px}}
@media(max-width:800px){main{padding:24px 14px 50px}.workspace{grid-template-columns:1fr}header{padding:18px 14px}.wordmark small{display:none}section{padding:18px}.generate-bar{flex-direction:column;align-items:stretch}.candidate-grid{max-height:600px}.filters{grid-template-columns:1fr 115px}.toolbar span{width:100%}.intro{padding-top:0}.test-banner{font-size:11px}.candidate img{height:210px}}
@media(max-width:360px){.candidate-grid{grid-template-columns:1fr}.two,.filters{grid-template-columns:1fr}}

/* Revision 2: image direction controls and studio assets. */
.intro{position:relative;padding:16px 0 26px}.intro h1{letter-spacing:-1px}.test-banner{font-weight:500}.uploads{display:grid;grid-template-columns:1fr 1fr;gap:12px}.uploads>div{border:1px dashed #4c485c;border-radius:10px;padding:10px;min-width:0}.uploads input{font-size:11px;padding:5px}.uploads img{display:block;max-width:100%;height:100px;object-fit:contain;margin:10px auto}.uploads button{font-size:12px;padding:5px 8px}.uploads .hint{margin:8px 0;overflow-wrap:anywhere}.direction-panel{border-top:1px solid #41404d;padding-top:18px;margin-top:24px}.direction-panel h3{font-size:15px;margin:20px 0 10px}.direction-panel h3 small{display:inline;font-size:11px;color:#aeadc0;font-weight:400;margin-left:8px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.chips button{font-size:12px;padding:8px 12px}.chips button[aria-pressed=true],.style-card[aria-pressed=true]{background:#342847;border-color:#b9a0ff;color:#eadfff}.style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.style-card{text-align:left;padding:8px;min-width:0}.style-card img{height:130px;width:100%;object-fit:cover;object-position:top;display:block;border-radius:5px;margin-bottom:7px}.style-card span,.style-card small{display:block}.style-card small{font-size:10px;color:#aba6bd;margin-top:4px}.combination{padding:14px 16px;border-radius:10px;border:1px solid #554269;background:#282033;margin-top:18px}.combination>span{font-size:11px;color:#c1acd9}.combination p{margin:5px 0;font-size:14px}.testing{padding:12px;border-top:1px solid #38343f}.candidate p{min-height:36px}.palette-dot{display:inline-block!important;width:10px;height:10px;border-radius:50%;margin-right:6px}#title,#subtitle{min-height:70px}.right .primary{white-space:normal}.direction-panel button:disabled{cursor:wait}
@media(max-width:800px){.style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.style-card img{height:150px}.uploads{grid-template-columns:1fr 1fr}.direction-panel h3 small{display:block;margin:4px 0}.candidate p{min-height:0}}
@media(max-width:360px){.uploads{grid-template-columns:1fr}}

/* V3: reference question belongs to selected card; works gallery. */
.direction-panel{border-top:0;margin-top:10px;padding-top:0}.site-nav{display:flex;gap:20px;align-items:center;font-size:13px}.site-nav [aria-current=page]{color:#d0bcff}.site-nav a{padding:7px 0}.extra-requirements{margin:24px 0 12px}.extra-requirements label{font-size:14px}.extra-requirements small{color:#aaa6bd}.history-link{font-size:13px;color:#d0bcff;text-decoration:underline}#selectedReferenceNote{color:#c7b1ed}#workStatus{padding:10px 12px;border-radius:8px;background:#282333}.history-filters{display:grid;grid-template-columns:1fr 170px;gap:18px;max-width:700px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.work-card{border:1px solid #3d394c;background:#1b1c25;border-radius:14px;padding:18px;min-width:0}.work-card>img{display:block;width:100%;height:240px;object-fit:contain;background:#111118;border-radius:8px;margin-bottom:16px}.work-card h2{font-size:18px;margin-top:12px;white-space:pre-line;overflow-wrap:anywhere}.work-card .primary{display:inline-block;margin-top:12px}.work-card .hint{overflow-wrap:anywhere}.work-card .pill{display:inline-block}#legacyDraft{margin-top:32px}#legacyDraft a{color:#d0bcff}#historyEmpty .primary{display:inline-block;margin-top:10px}
@media(max-width:800px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-nav{gap:12px;font-size:12px}.work-card{padding:12px}.work-card>img{height:180px}}
@media(max-width:500px){.work-grid{grid-template-columns:1fr}.history-filters{grid-template-columns:1fr 110px}.wordmark{font-size:18px}.site-nav{gap:9px}}

/* Usability: long text and short/mobile viewports */
#accountBar,.work-card h2,.work-card p,#workStatus,#jobState,#siteMessage,.status-box{overflow-wrap:anywhere}dialog{max-height:90dvh}#referenceDialog>.actions{position:sticky;top:-22px;background:var(--panel,#1b1c25);padding:12px 0;z-index:2}#closeDialog{flex-shrink:0;min-height:44px}#replaceDialog .actions button{min-height:44px}#dialogTitle{overflow-wrap:anywhere;min-width:0;flex:1}#editContent{min-height:220px}#workStatus{white-space:pre-line}
@media(max-width:800px){.workspace{grid-template-columns:minmax(0,1fr)}.candidate-grid{grid-template-columns:1fr;max-height:none}.candidate img{height:240px}.filters{grid-template-columns:minmax(0,1fr)}.generate-bar{flex-wrap:wrap}.generate-bar button{width:100%;min-height:48px}.uploads,.two{min-width:0}.actions>button{max-width:100%;white-space:normal}input,textarea,select{font-size:16px}}

/* Upload controls and version timeline */
.file-input{display:none!important}.upload-pick{font-size:16px!important;min-height:46px;padding:10px 16px!important;width:100%}.upload-status{font-size:14px;line-height:1.6;overflow-wrap:anywhere;margin:10px 0}.upload-status.error{color:#b12842;background:#fff0f3;padding:10px;border-radius:8px}.uploads>div{min-width:0}.custom-reference{border:1px dashed #a9a0bf;border-radius:12px;padding:16px}.custom-reference>summary{font-size:16px;font-weight:650}.custom-reference>img{display:block;max-width:100%;max-height:220px;object-fit:contain;margin:12px auto}.custom-reference input[type=radio]{width:auto}.custom-reference fieldset label{font-size:15px}.custom-reference-row{display:flex;gap:12px;align-items:center;margin:12px 0;flex-wrap:wrap}.custom-reference-row img{width:65px;height:80px;object-fit:contain}.custom-reference-row span{flex:1}.reference-drop-zone{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.reference-drop-zone.is-dragover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,#fff);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 14%,transparent)}.reference-drop-hint{text-align:center;color:var(--muted);font-size:14px;margin:14px 0 8px}.version-list{display:flex;gap:12px;overflow-x:auto;padding:10px 2px}.version-card{min-width:140px;max-width:170px;flex:none;text-align:left;white-space:normal}.version-card img{display:block;width:100%;height:110px;object-fit:contain}.version-card span{display:block;font-size:14px}.version-card[aria-pressed=true]{outline:2px solid #9770ed;outline-offset:-2px}

#uploadAsEdit{width:100%;margin-top:8px;min-height:46px;border-color:#b5a0ff;color:#e4d9ff}.old-image-edit{margin:20px 0 0;padding:18px;border-color:#786897;background:#211d2c}.old-image-edit h3,.old-image-edit h4{margin:0 0 10px}.old-image-edit p{line-height:1.7}.old-image-edit label{font-size:14px}.old-image-edit button{margin:5px 5px 5px 0;min-height:42px}.old-image-edit canvas{display:block;width:auto;max-width:100%;height:auto;max-height:700px;object-fit:contain;object-position:center center;margin:12px auto;border:1px solid #625b75;cursor:crosshair;touch-action:none}.old-image-edit #oldImageCoordinates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.old-image-edit #oldImageCoordinates label{margin:0}.old-image-edit #oldImageFullText,.old-image-edit #oldImageCandidateText{max-height:none;white-space:pre-wrap}.old-image-edit #oldImageReview{margin-top:18px;padding:14px;border:1px solid #786897;border-radius:12px}.old-image-edit #oldImageCandidate{display:block;width:100%;max-height:700px;object-fit:contain;background:#111;margin:12px auto}.old-image-edit #oldImageVersion{display:inline-block;margin-top:12px;color:#d9c8ff;text-decoration:underline}.old-image-edit #oldImageStatus{padding:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}

.task-actions{padding:18px;border:1px solid var(--line,#514770);border-radius:16px;margin:16px 0}.task-actions p{font-size:17px;line-height:1.8}.task-actions a,.task-actions button{min-height:44px;display:inline-flex;align-items:center}.task-row{padding:18px 0;border-bottom:1px solid var(--line,#514770);overflow-wrap:anywhere}.version-card span{white-space:normal;overflow-wrap:anywhere}.version-card{min-width:0;max-width:100%}#jobState{font-size:22px;font-weight:700}#versionPanel{margin:20px 0} @media(max-width:600px){.version-list{display:grid;grid-template-columns:minmax(0,1fr)}.task-actions .actions{align-items:stretch;flex-direction:column}.task-actions a,.task-actions button{width:100%;justify-content:center}.version-card{width:100%}}

/* B round 08: customer brief stages */
.brief-flow .workspace{display:block}.brief-flow .workspace>.editor,.brief-flow .workspace>.right{width:100%;max-width:none}.brief-flow [hidden]{display:none!important}.brief-steps{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.brief-steps button[aria-current=step]{background:#713cde;color:white}.brief-panel{padding:24px;border:1px solid #a58cce66;border-radius:22px;margin:20px 0;background:var(--surface,#ffffff16)}.brief-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.brief-option{min-width:0;text-align:left;padding:14px}.brief-option img{width:100%;height:240px;object-fit:contain;border-radius:12px}.brief-option[aria-pressed=true]{outline:3px solid #9b55ed}.brief-option strong,.brief-option span{display:block;margin:8px 0}.brief-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.8;max-height:none;overflow:visible}.brief-flow textarea{max-width:100%;box-sizing:border-box}.brief-flow .error{white-space:pre-wrap}.brief-flow .intro{min-height:0}.brief-flow .brief-panel p{line-height:1.8}@media(max-width:700px){.brief-options{grid-template-columns:1fr 1fr}.brief-option img{height:170px}.brief-panel{padding:16px}.brief-steps{gap:6px}.brief-steps button{padding:10px;font-size:14px}}

.real-character{margin-top:24px;border-top:1px solid #a58cce66;padding-top:20px}.real-character p{line-height:1.8}.real-character textarea{width:100%;box-sizing:border-box}#briefSummary{white-space:pre-wrap;overflow-wrap:anywhere}#characterMaterialStatus{font-size:16px}#clearOriginalDescription{margin:8px 0}

.star-references{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.star-references figure{margin:0;padding:12px;border:1px solid #a58cce66;border-radius:14px}.star-references img{width:100%;height:220px;object-fit:contain}.star-references figcaption{line-height:1.7}.star-save{margin:16px 0}.star-role select{width:100%;margin-top:8px}@media(max-width:600px){.star-references img{height:160px}}
/* Candidate gallery: independent layout and style selections. */
#ownedGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-height:680px;overflow:auto;padding:10px}#ownedGrid article{padding:10px}#ownedGrid img{width:100%;height:220px;object-fit:contain}#ownedGrid button{margin:5px;padding:8px}#ownedGrid button[aria-pressed=true]{background:#4d398d;color:white;border:2px solid #30205a}#ownedSummary{font-weight:700}@media(max-width:700px){#ownedGrid{grid-template-columns:repeat(2,minmax(0,1fr))}#ownedGrid img{height:170px}}

/* Customer creation and saved club recipes. */
.club-recipes{padding:16px;background:var(--soft,#f7f4ff);border-radius:16px;margin-bottom:22px}.recipe-heading{display:flex;justify-content:space-between;gap:12px}.recipe-heading span{font-size:13px;color:var(--muted)}.recipe-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.recipe-choices button[aria-pressed=true]{background:var(--accent);color:white}.character-options fieldset{border:0;padding:0;margin:14px 0;display:flex;flex-wrap:wrap;gap:8px}.character-options legend{margin-bottom:8px;font-size:14px}.character-options fieldset label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:12px;padding:9px 13px;margin:0;cursor:pointer}.character-options fieldset[data-invalid]{border:1px solid #d64862;padding:10px;border-radius:12px;background:#fff4f6;box-shadow:0 0 0 3px color-mix(in srgb,#d64862 12%,transparent)}.character-options fieldset[data-invalid] legend{color:#b12842;font-weight:700}.character-options input[type=radio],.character-options input[type=checkbox]{width:auto;min-height:0;margin:0}.character-options label:has(input:checked){border-color:var(--accent);background:var(--soft)}.character-options>label{display:flex;gap:8px;align-items:center}.generation-help{font-size:13px;margin-top:16px}.customer-studio #briefFinal>h2{margin-bottom:10px}.customer-studio #briefFinal{margin-top:22px}.work-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.work-edit-menu summary{cursor:pointer;padding:12px 16px;border:1px solid var(--line);border-radius:12px}.work-edit-menu>div{display:flex;flex-direction:column;gap:10px;padding:14px}.work-card .pill{font-size:12px}.work-card>p.hint{margin:8px 0}.work-card .work-actions{margin-top:20px}.work-card>a:first-child{display:block}.work-card>a:first-child img{width:100%;height:240px;object-fit:contain}.test-banner:empty{display:none}.customer-studio #loadBrand[hidden]{display:none!important}
.platform-export-menu{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.platform-export-menu summary{cursor:pointer;font-weight:700}.platform-export-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.platform-export-list a{border:1px solid var(--line);border-radius:10px;padding:9px 10px;text-align:center}.platform-export-menu .hint{font-size:12px;line-height:1.5}

#briefFinal>section:empty,#briefFinal>p:empty{display:none}.customer-studio[data-edit-tool] .editor{display:none!important}.customer-studio[data-edit-tool]:not([data-edit-tool="revise"]) #briefFinal{display:none!important}.work-back{display:block;margin:20px 0}#recipeStatus{font-size:13px;line-height:1.5}.customer-studio #brandStatus{font-size:13px}
.reference-mode-box{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:14px}.reference-mode-box legend{padding:0 8px;font-weight:700}.reference-mode-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reference-mode-box .reference-mode-options label{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin:0;padding:14px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.reference-mode-box input{width:auto;margin-top:4px}.reference-mode-box strong,.reference-mode-box small{display:block}.reference-mode-box small{color:var(--muted);margin-top:4px;line-height:1.5}.reference-mode-box label:has(input:checked){border-color:var(--accent);background:var(--soft)}.reference-mode-box>.hint{margin:12px 2px 0}.work-direct-edit{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid var(--line);border-radius:12px;text-decoration:none}.customer-studio #galleryEmpty{display:none!important}

/* One-page revision workspace and simpler reusable brand settings. */
.brand-colors,.trait-choices{border:0;padding:0;margin:16px 0}.brand-colors legend,.trait-choices legend{font-weight:700;margin-bottom:8px}.brand-color-add,.brand-color-list{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.brand-color-add input[type=color]{width:84px}.brand-color-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 10px 8px 38px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(90deg,var(--chip-color) 0 28px,transparent 28px)}.brand-color-chip button{padding:4px 8px}.trait-choices>div{display:flex;gap:9px;flex-wrap:wrap}.trait-choices label{display:inline-flex;align-items:center;gap:7px;margin:0;padding:9px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.trait-choices label:has(input:checked){border-color:var(--accent);background:var(--soft)}.trait-choices input{width:auto}
.unified-edit-shell{max-width:1500px;margin:0 auto 18px;padding:20px 4vw;background:transparent;border:0}.unified-edit-shell h1{font-size:30px;margin:6px 0}.unified-edit-shell p{color:var(--muted)}.unified-edit-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.unified-edit-options button{min-height:44px}.unified-edit-options button[aria-selected=true]{background:var(--accent);color:white;border-color:var(--accent)}.customer-studio[data-edit-tool="revise"] .workspace{display:block}.customer-studio[data-edit-tool="revise"] .workspace>.right{width:100%;max-width:none}.customer-studio[data-edit-tool="revise"] #briefFinal,.customer-studio[data-edit-tool="revise"] #regionRepair,.customer-studio[data-edit-tool="revise"] #brandPlacement,.customer-studio[data-edit-tool="revise"] #accuratePoster,.customer-studio[data-edit-tool="revise"] #editSizePanel{max-width:980px;margin:20px auto}.customer-studio[data-edit-tool="revise"] #editSizePanel label{max-width:520px}#editExportPreview{display:block;width:100%;max-width:520px;max-height:640px;object-fit:contain;margin:18px 0;border-radius:12px;background:#111}#editExportDownload{display:inline-flex;margin-top:10px}
@media(max-width:700px){.unified-edit-shell{padding:16px 14px}.unified-edit-options{display:grid;grid-template-columns:1fr 1fr}.unified-edit-options button{white-space:normal}.brand-color-add{align-items:stretch}.brand-color-add button{flex:1}}

.work-card .work-actions>a{flex:1 1 150px;height:52px;min-height:52px;margin-top:0!important;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;text-align:center}.work-card .work-actions{align-items:center}.revision-workspace{display:grid;grid-template-columns:minmax(430px,1.16fr) minmax(350px,.84fr);gap:22px;margin-top:18px;align-items:start}.revision-workspace.generation-only{grid-template-columns:1fr}.revision-input-panel,.revision-effect-panel{min-width:0;border:1px solid var(--line);border-radius:16px;padding:20px;background:var(--surface,#fff)}.revision-input-panel{position:sticky;top:18px}.revision-input-panel>h3,.revision-effect-panel>h3{margin:0 0 6px}.revision-input-panel>p,.revision-effect-panel>p{margin:0 0 16px;color:var(--muted);line-height:1.6}.revision-request label{display:block;margin:14px 0}.revision-request textarea{min-height:210px}.revision-focus-options{display:flex;flex-wrap:wrap;gap:9px;border:0;padding:0;margin:14px 0}.revision-focus-options legend{width:100%;font-weight:700;margin-bottom:2px}.revision-focus-options label{display:inline-flex;align-items:center;gap:7px;margin:0;padding:9px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.revision-focus-options label:has(input:checked){border-color:var(--accent);background:var(--soft);color:var(--accent)}.revision-focus-options input{width:auto;margin:0}.revision-input-panel #studioGenerate{width:100%;min-height:50px;margin:8px 0}.revision-input-panel #studioGenerationStatus{padding:12px;border-radius:10px;background:var(--soft);min-height:48px}.revision-effect-panel .studio-generated-image{width:100%;height:460px;max-height:55vh;object-fit:contain;margin:0;background:var(--soft);border-radius:12px;cursor:zoom-in;transition:box-shadow .18s ease,transform .18s ease}.revision-effect-panel .studio-generated-image:hover,.revision-effect-panel .studio-generated-image:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 32%,transparent);transform:translateY(-1px)}.revision-zoom-hint{margin:7px 0 4px!important;text-align:center;font-size:13px;color:var(--muted)}.revision-version-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 10px;margin-bottom:8px}.revision-version-card{flex:0 0 112px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-align:center}.revision-version-card[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.revision-version-card img{display:block;width:100%;height:96px;object-fit:contain;border-radius:8px;background:var(--soft);margin-bottom:6px}.revision-version-card span{font-size:14px}.revision-version-status{color:var(--muted);margin:0}.revision-effect-panel>a{display:inline-flex;margin:8px 10px 0 0;min-height:42px;align-items:center}.revision-effect-panel .revision-download-button{min-width:180px;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--accent),#b231ee);border-color:transparent;border-radius:12px}.revision-image-dialog{width:min(1500px,96vw);height:min(94vh,1100px);max-height:94vh;padding:14px;background:#11131c}.revision-image-dialog::backdrop{background:#090713e8}.revision-image-dialog-bar{position:sticky;top:-14px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 4px;background:#11131cee}.revision-image-dialog>img{width:100%;height:calc(94vh - 130px);margin:8px 0 12px;object-fit:contain;background:#080910}.revision-image-dialog>a{display:flex;justify-content:center;max-width:240px;margin:0 auto}.customer-studio[data-edit-tool="revise"] #briefFinal{max-width:1440px}
@media(max-width:860px){.reference-mode-options,.revision-workspace{grid-template-columns:1fr}.revision-input-panel{position:static}.revision-effect-panel .studio-generated-image{height:auto;max-height:70vh}.work-card .work-actions>a{flex-basis:100%}}
.customer-studio[data-edit-tool="revise"] .revision-input-panel #studioGenerationStatus{padding:0;background:transparent;min-height:0;color:var(--muted);font-size:14px;line-height:1.6}.customer-studio[data-edit-tool="revise"] .revision-effect-panel #studioGenerationFeedback{font-size:14px;color:var(--muted);padding:0 4px}.customer-studio[data-edit-tool="revise"] .revision-effect-panel #studioGenerationFeedback:hover{color:var(--accent)}
.customer-studio[data-edit-tool="revise"] .revision-text-link{padding:0;border:0;background:transparent;color:var(--accent);font-size:14px;text-decoration:underline;text-underline-offset:3px}.customer-studio[data-edit-tool="revise"] .revision-text-link:hover{border:0;color:#a028db}

.generation-workspace-mode .workspace{display:block}.generation-workspace-mode .right{width:100%}.generation-flow-heading{margin:0 0 20px}.generation-flow-heading h1{margin:0 0 8px}.generation-flow-heading p{margin:0;color:var(--muted)}
.generation-visual-progress{min-height:460px;display:grid;place-content:center;justify-items:center;gap:14px;border-radius:16px;background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 40%),linear-gradient(145deg,var(--soft),var(--surface,#fff));text-align:center;padding:32px}.generation-live-message{max-width:32em;margin:2px 0 0;font-size:20px;font-weight:700;line-height:1.6}.generation-visual-progress small{max-width:30em;color:var(--muted);font-size:14px}.generation-orbit{width:92px;height:92px;border:4px solid color-mix(in srgb,var(--accent) 18%,transparent);border-top-color:var(--accent);border-radius:50%;animation:generationOrbit 1.05s linear infinite;box-shadow:0 0 34px color-mix(in srgb,var(--accent) 25%,transparent)}.generation-workbench-wait{padding:18px;border-radius:12px;background:var(--soft);color:var(--muted)}@keyframes generationOrbit{to{transform:rotate(360deg)}}
@media(max-width:860px){.generation-visual-progress{min-height:300px}}
@media(prefers-reduced-motion:reduce){.generation-orbit{animation:none;border-color:var(--accent)}}
#studioGenerationStatus[data-tone="attention"]{border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line))!important;background:color-mix(in srgb,var(--accent) 10%,#fff)!important;color:var(--ink)!important;font-weight:650;line-height:1.7;box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 12%,transparent)}
.revision-previous-requirements{margin:12px 0;border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:var(--soft)}.revision-previous-requirements summary{cursor:pointer;font-weight:650}.revision-previous-requirements pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:10px 0 0;font:inherit;line-height:1.65;color:var(--muted)}

/* CSP-safe styles for dynamically mounted studio previews and review panels. */
#briefUseImage{width:140px;max-height:190px;object-fit:contain}
#editParentPreview{max-width:180px;max-height:240px}
#editReviewSummary,#editableOralResult,#repairFullText,#repairSubmitSummary,#repairInspection{white-space:pre-wrap}
#brandPlacementCanvas{max-width:100%;width:560px;height:auto;touch-action:none}
#brandPlacementResult,#repairCandidate{max-width:100%}
#editableSourceImage,#editableCandidate{max-width:min(100%,440px);display:block}
#repairCanvas{max-width:100%;height:auto;touch-action:none}
.partial-stage{position:relative;max-width:720px;touch-action:none}
#partialSource{display:block;width:100%;height:auto;user-select:none;pointer-events:none}
#partialRect{position:absolute;border:2px solid #48b9ff;background:#48b9ff33;display:none;pointer-events:none}
#partialSuggestedRect{position:absolute;border:3px dashed #ff9d2e;background:#ff9d2e22;display:none;pointer-events:none}
.partial-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.partial-comparison img{width:100%}
