.quote-page{background:#f5f5f2}.quote-wrap{max-width:1440px;padding:0 48px;margin:auto}.quote-title{display:flex;justify-content:space-between;align-items:flex-end;padding:62px 0 45px;gap:25px}.quote-title h1{font-size:57px;line-height:1.12;letter-spacing:-2.9px}.quote-title p:not(.eyebrow){margin-top:20px;font-size:14px;color:var(--muted)}.specs{display:flex;gap:24px;padding-bottom:8px}.specs>span{display:block;font-size:10px;color:var(--muted);max-width:100px}.specs b{font-family:Manrope,Arial,sans-serif;display:block;font-size:23px;font-weight:500;color:var(--ink);margin-bottom:4px}.quote-layout{display:grid;grid-template-columns:400px minmax(0,1fr);gap:32px;align-items:start}.editor-panel,.preview-panel{background:#fff;border:1px solid var(--line);padding:26px;margin-bottom:22px}.panel-title{display:flex;gap:13px;align-items:flex-start;margin-bottom:24px}.step-number{background:#e4f3ee;color:#007d78;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:10px;flex-shrink:0}.quote-page h2{font-size:20px;letter-spacing:-.6px;line-height:1.35}.panel-title p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:4px}.quote-page label:not(.upload-zone):not(.consent){font-size:11px;display:block;font-weight:500;margin:15px 0 6px}.quote-page input:not([type=radio]):not([type=checkbox]),.quote-page select,.quote-page textarea{font:inherit;font-size:13px;line-height:1.3;border:1px solid #ccd3ce;border-radius:4px;background:#fafbf8;width:100%;padding:11px;color:var(--ink);min-height:41px}.quote-page textarea{resize:vertical}.quote-page input:focus,.quote-page select:focus,.quote-page textarea:focus{outline:2px solid #008e88;outline-offset:1px}.input-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.small-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:19px}.subtle-button,.danger-text{border:1px solid #ccd3ce;border-radius:4px;background:#fff;padding:7px 10px;font:inherit;font-size:10px;color:var(--ink);cursor:pointer}.subtle-button:hover{border-color:#008e88}.danger-text{border:0;color:#a73f3f;padding-left:0}.upload-zone{display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;gap:8px;border:1px dashed #8caea4;background:#f0f6f1;min-height:170px;cursor:pointer;padding:20px;border-radius:4px}.upload-zone.dragging{outline:3px solid var(--aqua);background:#e3f6f1}.upload-zone strong{font-size:12px;font-weight:600}.upload-zone>span:last-child{font-size:9px;color:var(--muted)}.upload-symbol{font-size:29px;line-height:1;color:#008e88}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.field-note{font-size:10px;color:var(--muted);line-height:1.75;margin-top:13px}.empty-designs{padding:28px 10px;text-align:center;border-top:1px solid #e2e7e1;margin-top:22px;font-size:12px;color:#87908b}.design-item{border-top:1px solid #dce3dc;margin-top:20px;padding-top:20px}.design-item-head{display:flex;gap:12px;align-items:center}.design-thumb{width:58px;height:58px;object-fit:contain;background-color:#eef1eb;background-image:linear-gradient(45deg,#e2e7df 25%,transparent 25%),linear-gradient(-45deg,#e2e7df 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e2e7df 75%),linear-gradient(-45deg,transparent 75%,#e2e7df 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0}.design-filename{font-size:11px;overflow-wrap:anywhere;font-weight:600;flex:1}.design-item .remove-design{border:0;background:none;font-size:20px;color:#9b5656;cursor:pointer;padding:6px}.design-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.design-fields input{padding:8px!important;font-size:12px!important}.design-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.design-actions small{font-size:9px;color:#7a8580}.design-error{font-size:10px;color:#a73f3f;margin-top:8px}.rate-details{padding:20px;border:1px solid var(--line);font-size:11px;background:#eaede7}.rate-details summary{font-weight:600;cursor:pointer}.rate-details table{font-size:10px;width:100%;border-collapse:collapse;margin-top:15px}.rate-details th,.rate-details td{padding:8px 5px;border-bottom:1px solid #cdd6cb;text-align:left}.rate-details p{margin-top:14px;font-size:10px;line-height:1.7}.preview-panel{padding:25px 28px 20px}.preview-title{display:flex;justify-content:space-between;gap:16px;align-items:center}.preview-title .eyebrow{font-size:8px;margin-bottom:5px}.preview-title h2{font-size:22px}.preview-badge{font-size:10px;border:1px solid #ced8cc;border-radius:20px;padding:5px 12px}.preview-ruler{display:flex;justify-content:space-between;font-size:9px;color:#698276;padding:22px 12px 10px}.canvas-stage{position:relative;background:#dfe5dd;padding:10px 12px;overflow:hidden;border:1px solid #d4ddd0;max-height:1100px}.canvas-stage canvas{width:100%;height:auto;display:block;max-height:1040px;object-fit:contain;object-position:top;background:#fff}.canvas-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;text-align:center;background:#f3f6efe8;padding:20px}.canvas-empty>span{font-size:34px;color:#008e88}.canvas-empty strong{font-family:Manrope,Arial,sans-serif;font-size:20px;font-weight:500;letter-spacing:-.6px}.canvas-empty p{font-size:12px;color:var(--muted)}.preview-caption{display:flex;justify-content:space-between;gap:14px;font-size:10px;padding-top:16px}.preview-pages{display:flex;justify-content:center;align-items:center;gap:20px;font-size:11px;margin-top:13px}.preview-pages button{border:1px solid #ccd3ce;background:white;padding:6px 14px;border-radius:4px;cursor:pointer}.preview-pages button:disabled{opacity:.35;cursor:default}.packing-warning{font-size:12px;color:#974c21;padding:13px;background:#fff4de;margin-top:16px}.total-panel{padding:28px;background:#e5ede6;border:1px solid #c8d5c8;margin-bottom:22px}.total-header{display:flex;align-items:center;justify-content:space-between}.total-header h2{font-size:23px}.total-header>span{font-size:8px;letter-spacing:1.5px}.summary-row{display:flex;justify-content:space-between;gap:10px;font-size:11px;border-bottom:1px solid #cbd6c9;padding:11px 0;color:var(--muted)}#canvas-summary{margin-top:18px}.totals{margin:20px 0 0}.totals>div{display:flex;justify-content:space-between;gap:10px;font-size:12px;margin:10px 0}.totals dt,.totals dd{margin:0}.totals dd{font-weight:600}.totals .grand-total{border-top:1px solid #bfcdbc;padding-top:20px;margin-top:20px;align-items:center;font-size:15px}.grand-total dd{font-family:Manrope,Arial,sans-serif;font-size:35px;letter-spacing:-1.5px;line-height:1}.shipping-note{font-size:10px;color:#667665;margin:18px 0 22px}.total-panel .button{display:flex;width:100%;margin-top:12px;cursor:pointer}.outline{border:1px solid #9eb59e;background:none;color:var(--ink)}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.request-section{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;padding:80px 0 65px;margin-top:48px;border-top:1px solid var(--line)}.request-section h2{font-size:37px;letter-spacing:-1.7px}.request-section>div>p:not(.eyebrow){max-width:380px;font-size:13px;line-height:1.9;color:var(--muted);margin-top:22px}.request-section .request-destinations{color:var(--ink)}.request-destinations>span{font-size:10px}.shipping-choice{border:0;padding:0;margin:20px 0 0}.shipping-choice legend{font-size:11px}.shipping-choice label{display:inline-flex!important;align-items:center;gap:7px;margin-right:25px!important}.shipping-choice input,.consent input{accent-color:#008e88}.consent{display:flex;align-items:flex-start;gap:10px;font-size:10px;line-height:1.8;margin:20px 0}.consent input{margin-top:5px;flex-shrink:0}.honeypot{display:none!important}.submit-status{font-size:12px;line-height:1.7;margin-top:16px}.submit-status.error{color:#a63b3b}.submit-status.success{color:#00796f}.app-alert{padding:15px 20px;border:1px solid #d4c3a4;background:#fff5e0;margin-bottom:24px;font-size:12px}.quote-footer{border-top:1px solid var(--line);padding-top:25px;padding-bottom:25px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}[hidden]{display:none!important}@media(max-width:1050px){.quote-wrap{padding-left:28px;padding-right:28px}.quote-layout{grid-template-columns:345px minmax(0,1fr);gap:22px}.editor-panel{padding:20px}.specs{gap:15px}.request-section{gap:40px}.preview-panel{padding:22px}.quote-title h1{font-size:47px}.quote-title p:not(.eyebrow){font-size:13px}}@media(max-width:760px){.quote-wrap{padding-left:20px;padding-right:20px}.quote-title{align-items:flex-start;flex-direction:column;padding:36px 0 25px;gap:22px}.quote-title h1{font-size:42px;letter-spacing:-2px}.quote-title p:not(.eyebrow) br{display:none}.specs{gap:35px}.specs b{font-size:20px}.quote-layout{grid-template-columns:1fr;gap:18px}.editor-panel{padding:20px}.preview-panel{padding:20px}.canvas-stage{max-height:800px}.canvas-stage canvas{max-height:750px}.request-section{grid-template-columns:1fr;gap:24px;padding-top:45px;margin-top:30px}.request-section h2{font-size:30px}.request-section>div>p:not(.eyebrow){max-width:none}.total-panel{padding:23px}.quote-page header .text-link{font-size:10px}.quote-page header .brand>span{font-size:15px}.quote-page header .brand img{width:37px}.quote-footer{font-size:9px}.specs>span{max-width:none}.input-pair{gap:10px}}

.district-control{position:relative}.district-control ul{position:absolute;z-index:8;top:100%;left:0;right:0;max-height:270px;overflow:auto;background:#fff;border:1px solid #a8bdb1;border-radius:4px;margin:4px 0 0;padding:4px;list-style:none;box-shadow:0 8px 25px #253f3020}.district-control li{padding:10px 12px;border-radius:3px;cursor:pointer;font-size:12px;line-height:1.5}.district-control li[aria-selected=true],.district-control li:hover{background:#e0f1e9}.district-control li strong,.district-control li span{display:block}.district-control li span{font-size:10px;color:#6b7170}.district-control .no-match{color:#6b7170;cursor:default}.consent a{text-decoration:underline}.quote-page .request-link{font-size:12px}.quote-page .subtle-button:disabled,.quote-page .danger-text:disabled{opacity:.4;cursor:default}.quote-page .button{font-family:inherit;font-size:12px}

.layout-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:22px}.layout-tools>div{display:flex;gap:8px}.quote-page .rotation-permission{display:inline-flex!important;align-items:center;gap:7px;font-size:10px!important;margin:0!important;font-weight:400!important}.rotation-permission input{accent-color:#008e88;width:14px;height:14px}.editor-hint{font-size:11px;line-height:1.8;color:#627369;margin-top:15px}.layout-mode{display:inline-block;font-size:9px;color:#00796f;background:#e0f2e9;border-radius:3px;padding:3px 8px;margin-top:10px}.canvas-stage canvas{margin-inline:auto;touch-action:none;cursor:grab}.canvas-stage canvas:active{cursor:grabbing}.canvas-stage canvas:focus-visible{outline:2px solid #008e88;outline-offset:3px}.piece-editor{margin-top:18px;padding:0 16px 16px;background:#eff5ef;border:1px solid #d1ded0;border-radius:4px}.piece-editor label{font-size:10px!important}.piece-caption{font-size:11px;font-weight:600;color:#00796f;margin-top:12px;overflow-wrap:anywhere}.piece-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.piece-actions button{font-size:11px;padding:9px 12px}.design-actions{gap:8px}.preview-caption{flex-wrap:wrap}.preview-panel .layout-tools button{font-size:11px;padding:9px 12px}#optimization-status:empty{display:none}.quote-page #piece-select{font-size:12px}

.layout-feedback{font-size:11px;line-height:1.7;color:#8a4428;background:#fff2dc;padding:10px 12px;border-radius:3px;margin-top:12px}
