/* Quotation studio: scoped to the standard quotation route. */
body.quotation-studio { background:#f6f7fb; }
body.quotation-studio.qm-canvas-active .quotation-studio-nav { display:none!important; }
.quotation-studio-nav { max-width:1440px; margin:0 auto; padding:28px 28px 0; scroll-margin-top:65px; }
.studio-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:24px; }
.studio-heading span,.studio-section-intro>span { font-size:10px; font-weight:700; letter-spacing:.12em; color:#7c3aed; }
.studio-heading h1 { font-size:28px; letter-spacing:-1px; margin:5px 0 6px; color:#172033; }
.studio-heading p,.studio-section-intro p { font-size:13px; color:#667085; margin:0; }
.studio-preview,.studio-back { border:1px solid #dfe3eb; background:white; color:#344054; padding:11px 16px; border-radius:10px; font:600 12px inherit; cursor:pointer; }
.studio-steps { display:grid; grid-template-columns:repeat(4,1fr); padding:6px; gap:6px; border:1px solid #e5e7ef; background:#fff; border-radius:14px; }
.studio-steps button { display:flex; gap:8px; align-items:center; justify-content:center; padding:10px 8px; border:0; border-radius:9px; background:transparent; color:#64748b; font-size:12px; font-weight:600; cursor:pointer; transition:all 0.15s ease; }
.studio-steps button .step-badge { display:grid; place-items:center; width:22px; height:22px; background:#f1f2f6; color:#475467; border-radius:6px; font-size:11px; font-weight:700; flex-shrink:0; }
.studio-steps button .step-text { font-size:12px; font-weight:600; color:#64748b; background:transparent!important; width:auto!important; height:auto!important; }
.studio-steps button:hover { background:#f8fafc; color:#334155; }
.studio-steps button.active { background:#f5f0ff; color:#6d28d9; }
.studio-steps button.active .step-badge { background:#7c3aed; color:white; }
.studio-steps button.active .step-text { color:#6d28d9; font-weight:700; background:transparent!important; }
.quotation-studio .qm-editor-progress,.quotation-studio .qm-reuse-note,.quotation-studio #generator-mobile-stepper,.quotation-studio #mobile-stepper-next-btn { display:none!important; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-editor .editor-card.studio-inactive { display:none!important; }
body.page-generator.quotation-studio #generator-editor .qm-editor-progress { display:none!important; }
.quotation-studio .generator-workspace.form-only-mode { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important; padding-top:22px!important; }
.studio-section-intro { padding:3px 2px 8px; }
.studio-section-intro h2 { font-size:21px; letter-spacing:-.5px; margin:5px 0 7px; color:#172033; }
.quotation-studio .form-only-mode #generator-editor>.editor-card>.card-header-bar { display:flex!important; }
.quotation-studio .form-only-mode #card-doc-details>.card-header-bar,
.quotation-studio .form-only-mode #card-contact-details>.card-header-bar,
.quotation-studio .form-only-mode #card-items>.card-header-bar,
.quotation-studio .form-only-mode #card-payment-terms>.card-header-bar,
.quotation-studio .form-only-mode #card-finish-review>.card-header-bar { display:flex!important; }
.quotation-studio .form-only-mode #card-template-styling>.card-header-bar { display:flex!important; }
.quotation-studio .form-only-mode .contact-grid { gap:20px; }
.quotation-studio .form-only-mode .contact-tag { font-family:inherit; text-transform:none; letter-spacing:0; font-size:13px; }
.quotation-studio .form-only-mode .field-label { text-transform:none; letter-spacing:0; font-size:12px; font-weight:600; color:#475467; }
.quotation-studio .form-only-mode .doc-input,.quotation-studio .form-only-mode .doc-select { min-height:44px; font-size:14px; }
.studio-step-footer { position:sticky; bottom:14px; z-index:40; display:flex; align-items:center; justify-content:space-between; gap:12px; background:#fff; border:1px solid #e5e7ef; padding:12px 14px; border-radius:12px; box-shadow:0 12px 30px -20px #34405466; }
.studio-next { border:0; background:#7c3aed; color:#fff; padding:12px 20px; border-radius:9px; font-weight:600; cursor:pointer; }
.studio-back:disabled { opacity:.35; cursor:default; }
.studio-position { font-size:12px; color:#667085; }
.quotation-studio .studio-heading { display:none; }
.quotation-studio .quotation-studio-nav { padding-top:10px; }
.quotation-studio .studio-steps { padding:4px; }
.quotation-studio .studio-steps button { padding:8px; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode { padding-top:12px!important; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-editor { gap:10px!important; }
.quotation-studio .studio-section-intro { padding:0 2px; }
.quotation-studio .studio-section-intro>span,.quotation-studio .studio-section-intro>p { display:none; }
.quotation-studio .studio-section-intro h2 { font-size:16px; margin:0; line-height:1.4; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #card-template-styling { display:block!important; margin:0!important; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #card-template-styling .card-header-bar { min-height:42px!important; padding:7px 12px!important; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-editor #card-template-styling > .card-header-bar { display:flex!important; }
body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-editor #card-template-styling > .card-body-content { display:block!important; }
.quotation-studio #card-template-styling .tmpl-strip-gallery-btn { min-height:30px; height:auto!important; font-size:12px!important; padding:5px 10px!important; }
@media(min-width:901px) {
 body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-preview { height:auto!important; min-height:0!important; }
 body.page-generator.quotation-studio .generator-workspace.form-only-mode #generator-preview .preview-wrapper { min-height:0!important; overflow:hidden!important; }
}
.quotation-studio button:focus-visible { outline:3px solid #a78bfa; outline-offset:3px; }
[data-theme='dark'] .quotation-studio-nav h1,[data-theme='dark'] .studio-section-intro h2 { color:#f8fafc; }
[data-theme='dark'] .studio-steps,[data-theme='dark'] .studio-step-footer { background:#171222; border-color:#342944; }
[data-theme='dark'] .studio-steps button.active { background:#302045; color:#ddd6fe; }
[data-theme='dark'] #card-finish-review { background: #171222 !important; border-color: #342944 !important; }
[data-theme='dark'] #card-finish-review .qf-rev-grid { background: #1f182c !important; border-color: #342944 !important; }
[data-theme='dark'] #card-finish-review strong { color: #f8fafc !important; }
@media(max-width:900px) {
 .quotation-studio-nav { padding:8px 12px 0; }
 .studio-heading { gap:10px; margin-bottom:12px; }
 .studio-heading h1 { font-size:22px; }
 .studio-heading p { max-width:230px; line-height:1.4; }
 .studio-preview { padding:8px 12px; font-size:11px; }
 .studio-steps { gap:4px; padding:4px; }
 .studio-steps button { flex-direction:column; gap:3px; font-size:10.5px; padding:6px 2px; min-height:42px; }
 .quotation-studio .generator-workspace.form-only-mode { display:block!important; padding:8px 12px 100px!important; }
 .quotation-studio .form-only-mode #generator-preview { display:none!important; }
 .quotation-studio .form-only-mode #generator-editor { display:flex!important; gap:12px; }
 .quotation-studio .form-only-mode .canvas-footer-grid { display:flex!important; flex-direction:column; }
 .quotation-studio .form-only-mode .footer-left,.quotation-studio .form-only-mode .footer-right { display:block!important; width:100%; }
 .studio-step-footer { bottom:0; }
}
