/* The workspace follows one reading path: choose, confirm, then save or download. */
.studio{max-width:1560px;padding:38px clamp(22px,3.2vw,54px) 96px}
.studio-heading{margin:0 0 31px}
.studio-heading .eyebrow{color:#777d77;letter-spacing:.19em;font-size:10px}
.studio-heading h1{font-size:clamp(34px,3.2vw,48px);letter-spacing:-.055em;line-height:1.15;margin:10px 0 11px;font-weight:650}
.studio-heading>p{font-size:13px;line-height:1.7;margin:0;color:#667068}
.studio-guide{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border:0;border-top:1px solid #d9dfda;border-bottom:1px solid #d9dfda;background:transparent;border-radius:0}
.studio-guide>div{background:transparent;padding:15px 0;grid-template-columns:28px 1fr;gap:0 8px}
.studio-guide span{color:#69756c;font-size:10px}
.studio-guide b{font-size:12px;font-weight:650;color:#242a25}
.studio-guide small{font-size:10px;color:#808981}
.studio-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,430px);gap:clamp(22px,3vw,48px);align-items:start}
.selection-panel,.review-panel{min-width:0;margin:0;padding:20px 0 0;border:0}
.selection-panel .panel-title,.review-panel .panel-title{margin-bottom:18px;display:flex;align-items:baseline;gap:10px}
.selection-panel .panel-title h2,.review-panel .panel-title h2{font-size:22px;font-weight:640;letter-spacing:-.035em}
.selection-panel .panel-title span,.review-panel .panel-title span{font-size:10px;color:#808a82}
.review-panel{position:sticky;top:88px;max-height:calc(100vh - 100px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;border:1px solid #dde2dd;background:#fff;padding:18px 19px 22px;border-radius:4px;scroll-margin-top:90px}
.review-panel .panel-title{border-bottom:1px solid #e3e7e2;padding-bottom:14px;margin-bottom:15px;flex-wrap:wrap}
.review-panel .panel-title small{font-size:10px;color:#7a847b;margin-left:auto}
.mode-tabs{border-bottom:1px solid #dfe4de;gap:24px;margin-bottom:18px;border-radius:0}
.mode-tabs button,.mode-tabs button.active{border:0;border-radius:0;background:none;color:#6e776f;padding:0 1px 12px;font-size:12px;white-space:nowrap}
.mode-tabs button.active{color:#1c251e;box-shadow:inset 0 -2px #202b22;font-weight:700}
.mode-note{margin-bottom:14px;font-size:11px}
.catalog-tools{top:81px;border:0;border-bottom:1px solid #dfe5de;border-radius:0;padding:9px 0 13px;background:#fff;box-shadow:none}
.catalog-tools input,.catalog-tools select{border-radius:3px;font-size:12px;min-height:40px}
.builder-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.builder-product{border-radius:4px;padding:10px}
.builder-product img{border-radius:2px;height:155px}
.builder-product h3{font-size:13px;min-height:38px}
.builder-product button{border-radius:3px}
.recommend-brief,.recommendation,.library-card{border-radius:4px}
.recommendations{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.recommendation{padding:13px}
.recommendation h3{font-size:17px}
.rec-stage{aspect-ratio:4/5;margin:9px 0}
.rec-bottom .rec-actions button,.library-card-body button{border-radius:3px}
.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.library-card-body{padding:14px}
.library-card-body h4{font-size:16px}
.selected-empty{border:1px dashed #d8dfd8;background:#fafbf9;padding:24px 15px;font-size:12px;line-height:1.7;border-radius:3px}
.package-candidates{border-radius:3px;background:#fafbf9;padding:13px;margin:0 0 12px}
.candidate-heading b{font-size:13px}
.candidate-heading p{font-size:10px}
.package-candidate-list{grid-template-columns:1fr;gap:7px}
.package-candidate{border-radius:3px;padding:7px;grid-template-columns:48px minmax(0,1fr)}
.package-candidate img{width:48px;height:59px;border-radius:2px}
.package-candidate b{font-size:11px}
.package-candidate small{font-size:10px}
.package-candidate [data-use-package]{border-radius:3px}
.review-showcase{display:grid;grid-template-columns:170px minmax(0,1fr);gap:13px;align-items:start}
.review-showcase .selected-stage{grid-column:1;grid-row:1/3;min-height:0;width:170px;height:226px;aspect-ratio:3/4;border-radius:3px;background:#f5f7f4}
.review-showcase .selected-stage img{width:100%;height:100%;object-fit:contain}
.review-showcase .selected-stage span{font-size:11px;padding:10px}
.review-details{display:contents}
.review-details .selected-items{grid-column:2;grid-row:1/3;max-height:226px;overflow-y:auto;scrollbar-width:thin;display:grid;grid-template-columns:1fr;gap:5px}
.review-details .selected-card{min-height:62px;padding:6px;border-radius:3px;gap:7px}
.review-details .selected-card img{width:49px;height:49px;border-radius:2px}
.review-details .selected-card b{font-size:11px}
.review-details .selected-card span,.review-details .selected-card small{font-size:10px}
.review-details .review-bottom{grid-column:1/-1;grid-row:3;display:block;border:0;margin:13px 0 0;padding:0}
.review-details .quote-summary>div:not(.budget-status){padding:7px 0;font-size:11px}
.review-details .quote-summary b{font-size:14px}
.review-details .quote-summary .scheme-quantity{font-size:11px;padding:7px 0}
.scheme-quantity input{height:35px;font-size:11px}
.review-details .review-action{padding-top:14px;align-items:stretch}
.scheme-name-label{font-size:11px;color:#566258;font-weight:600;margin-bottom:6px}
.scheme-name-label{display:flex;justify-content:space-between;align-items:center;gap:10px}
#saveState{font-size:10px;font-weight:500;color:#637b67}
#saveState.is-dirty{color:#a76537;font-weight:650}
#schemeName{border:1px solid #d7dfd6;background:#fff;padding:10px 11px;min-height:39px;border-radius:3px;width:100%;font-size:12px;color:#242c25}
#schemeName:focus{outline:2px solid #d7e1d6;outline-offset:1px}
.review-primary-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:7px;margin-top:9px}
.review-primary-actions button{min-height:41px;justify-content:center;border-radius:3px;padding:9px 7px;font-size:11px;white-space:nowrap}
.review-primary-actions #saveScheme{background:#fff;border:1px solid #9da99e;color:#263328}
.review-primary-actions #downloadPpt{background:#222b24;border:1px solid #222b24;color:#fff}
.review-primary-actions button:disabled{opacity:.42}
.review-action #submitScheme{margin-top:8px;width:100%;min-height:39px;border:1px solid #687a6b;background:#f8faf7;color:#293b2c;border-radius:3px;font-size:11px;font-weight:650;cursor:pointer}
.review-action #submitScheme[hidden]{display:none!important}
.review-action #submitScheme:disabled{opacity:.4;cursor:not-allowed}
.review-action>p{margin:10px 0 0;line-height:1.6;font-size:10px;color:#7a837a}
.review-action #builderMessage{margin-top:8px;min-height:0;font-size:11px;line-height:1.5}
.shot-lead{margin:16px 0 0;border-radius:3px;background:#fafbf9;padding:12px;gap:10px}
.shot-lead b{font-size:12px}
.shot-lead p{font-size:10px;margin-top:3px}
.shot-lead-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.shot-lead-actions button,.shot-lead #requestSample{border-radius:3px;padding:8px 7px;font-size:10px;margin:0;white-space:normal}
.shot-tools{margin-top:14px;padding:14px 0;gap:10px}
.scheme-workflow{margin:16px 0 0;border:0;border-top:1px solid #dfe5df;border-radius:0;padding:16px 0 0;background:#fff}
.scheme-heading{gap:8px;align-items:end}
.scheme-heading b{display:block;font-size:13px;color:#273129;margin-top:4px}
.scheme-heading p{font-size:10px;margin-top:4px}
.scheme-step{font-size:9px;letter-spacing:.08em;color:#849084}
.scheme-heading>span{font-size:10px;color:#7a867c}
.scheme-tabs{margin:12px 0;gap:6px}
.scheme-chip{border-radius:3px}
.scheme-chip.is-dirty{border-color:#cfad8f}
.scheme-chip [data-open-scheme]{padding:8px}
.scheme-chip b{font-size:11px}
.scheme-chip small{font-size:9px}
.scheme-actions{display:grid;grid-template-columns:1fr 1.75fr;gap:7px}
.scheme-actions button{border-radius:3px;padding:9px 6px;font-size:10px;min-height:37px}
.scheme-actions #downloadAllPpt{background:#fff;border-color:#9da99e;color:#263328}
.scheme-actions #newScheme{background:#f7f9f6;border-color:#d8e0d7;color:#354437}
#schemeMessage{font-size:10px;line-height:1.5;margin:8px 0 0;min-height:0}
.submission-history{margin-top:15px;border-top:1px solid #e0e5df;padding-top:14px}
.submission-history[hidden]{display:none}
.submission-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.submission-head b{font-size:12px}
.submission-head button{border:0;background:none;color:#566b59;font-size:10px;cursor:pointer}
.submission-row{display:grid;grid-template-columns:1fr auto;gap:2px 8px;border-top:1px solid #e8ece7;padding:9px 0}
.submission-row:first-child{margin-top:9px}
.submission-row b{font-size:11px;display:block;font-weight:600}
.submission-row small{font-size:10px;color:#8a938a}
.submission-row p{grid-column:1/-1;margin:3px 0 0;font-size:10px;color:#6a736a}
.submission-status{font-size:10px;color:#8b7339;border:1px solid #e6d9b6;padding:4px 6px;align-self:start}
.submission-status.status-approved{color:#427044;border-color:#c9dfca}
.submission-status.status-rejected,.submission-status.status-returned{color:#a45e50;border-color:#ebd5d0}
.submission-empty{font-size:10px;color:#818a81;line-height:1.6}
.builder-dock{display:none}
.submit-dialog{border:0;border-radius:7px;max-width:590px;width:calc(100vw - 28px);padding:30px;color:#253027;box-shadow:0 30px 80px #19241a4a}
.submit-dialog::backdrop{background:#111b14a8}
.submit-dialog h2{font-size:24px;margin:9px 0}
.submit-dialog>p{font-size:12px;color:#6c776e;line-height:1.7}
.submit-dialog form{display:grid;gap:14px;margin-top:20px}
.submit-dialog label{font-size:11px;font-weight:600;color:#4d5b4f;display:grid;gap:6px}
.submit-dialog input,.submit-dialog textarea,.submit-dialog select{width:100%;border:1px solid #d5ded5;border-radius:3px;padding:11px;font:inherit;font-size:12px;color:#263329;background:#fff}
.submit-dialog textarea{resize:vertical;line-height:1.6}
.submit-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.submit-cover{display:flex;align-items:center;gap:12px;background:#f7f9f6;padding:9px;font-size:10px;color:#6d796f}
.submit-cover img{width:53px;height:71px;object-fit:contain}
.submit-cover img[hidden]{display:none}
.submit-dialog form>.button{justify-self:start;border-radius:3px}
#submitMessage{min-height:15px;margin:0;font-size:11px;color:#526d53;line-height:1.6}
@media(max-width:1180px){.studio-workspace{grid-template-columns:minmax(0,1fr) minmax(350px,390px);gap:20px}.builder-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.recommendations,.library-grid{grid-template-columns:1fr}.review-showcase{grid-template-columns:150px minmax(0,1fr)}.review-showcase .selected-stage{width:150px;height:200px}.review-details .selected-items{max-height:200px}}
@media(max-width:900px){.studio{padding:30px 20px 120px}.studio-workspace{display:block}.studio-guide{gap:14px}.selection-panel,.review-panel{padding-top:20px}.review-panel{position:static;max-height:none;overflow:visible;margin-top:34px;padding:18px}.builder-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.recommendations,.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-dock{display:flex}.review-showcase{grid-template-columns:190px minmax(0,1fr)}.review-showcase .selected-stage{width:190px;height:253px}.review-details .selected-items{max-height:253px}.catalog-tools{top:66px}}
@media(max-width:640px){.studio{padding:24px 14px 122px}.studio-heading h1{font-size:32px}.studio-heading>p{font-size:12px}.studio-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:20px}.studio-guide>div{display:block;padding:11px 0}.studio-guide span,.studio-guide b,.studio-guide small{display:block}.studio-guide b{margin:3px 0}.studio-guide small{font-size:9px;line-height:1.45}.mode-tabs{gap:15px;flex-wrap:nowrap}.mode-tabs button{font-size:11px}.builder-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.builder-product img{height:120px}.recommendations,.library-grid{grid-template-columns:1fr}.review-panel{padding:13px;margin-top:25px}.review-panel .panel-title small{width:100%;margin-left:24px}.review-showcase{grid-template-columns:1fr}.review-showcase .selected-stage{grid-column:1;grid-row:1;width:min(100%,230px);height:auto;aspect-ratio:3/4;justify-self:center}.review-details .selected-items{grid-column:1;grid-row:2;max-height:250px;margin-top:10px}.review-details .review-bottom{grid-column:1;grid-row:3}.scheme-actions{grid-template-columns:1fr 1.2fr}.shot-lead-actions{grid-template-columns:1fr 1fr}.submit-dialog{padding:22px}.submit-two{grid-template-columns:1fr}}
