/* Visitor studio. Geometry, calculation and print rules remain in style.css. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.studio-dialog-note{font-size:12px;line-height:1.65;color:#787267}
.template-grid,.decor-grid{display:grid;gap:16px}
.template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.decor-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.template-card,.decor-card{display:flex;flex-direction:column;min-width:0;text-align:left;padding:0;border:1px solid #dedbd4;background:#fff;border-radius:10px;overflow:hidden;color:#302d28;transition:border-color .15s,box-shadow .15s}
.template-card:hover,.decor-card:hover{border-color:#8c887b;box-shadow:0 4px 15px #332f2410}
.template-card:focus-visible,.decor-card:focus-visible{outline-offset:2px}
.template-card[aria-pressed=true],.decor-card[aria-pressed=true],.template-card.selected,.decor-card.selected{border-color:#525d47;box-shadow:0 0 0 1px #525d47}
.template-preview{width:100%;height:180px;display:block;background:#f7f6f2;padding:18px;border-bottom:1px solid #eeebe5;overflow:hidden}
.template-preview>svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;overflow:visible}
.template-card>svg{display:block;width:100%;height:180px;background:#f7f6f2;padding:18px;border-bottom:1px solid #eeebe5}
.template-info,.decor-info{display:block;padding:15px;min-width:0;width:100%}
.template-info strong,.template-card>strong,.decor-info strong,.decor-card>strong{font-size:14px;line-height:1.45;font-weight:600;display:block;overflow-wrap:anywhere}
.template-info p,.template-info small,.template-card>small,.decor-info p,.decor-info small,.decor-card>small{display:block;font-size:11px;line-height:1.65;color:#797368;margin-top:7px;overflow-wrap:anywhere}
.template-meta,.decor-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:11px;color:#787164;margin-top:8px;line-height:1.5}
.template-card .template-action{display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid #eeebe5;color:#566249;font-weight:500;font-size:11px}
.decor-image,.decor-card>img{width:100%;height:145px;display:block;object-fit:cover;background:#ebe4d8}
.decor-stock{display:block;margin-top:8px;color:#566648;font-size:10.5px;line-height:1.5}
.decor-stock.unavailable{color:#85755c}
.decor-info .decor-price{display:block;color:#3d4435;font-weight:500;font-size:12px;margin-top:9px}
.gallery-empty{grid-column:1/-1;min-height:180px;padding:45px 20px;text-align:center;display:grid;place-content:center;gap:10px;color:#7b756b;font-size:13px;line-height:1.65;border:1px dashed #d9d5cc;border-radius:9px;background:#fbfaf7}
.gallery-empty strong{font-weight:500;color:#514d44}
.toast{pointer-events:none}
.mobile-start-note,.mobile-workspace-hint{display:none}
.quick-product-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;min-height:20px}
.quick-product-heading>span{white-space:nowrap}
.material-scope{display:block;min-width:0}
.quickbar-fields .quick-product .material-scope select{display:block;width:124px;max-width:100%;height:20px;min-height:20px;font-size:10px;line-height:1.2;padding:0 15px 0 5px;background:#f3f4ed;border:0;color:#4f5e43;border-radius:3px}
@media screen and (max-width:1100px){.quickbar-fields .quick-product .material-scope select{height:30px;min-height:30px;font-size:12px;width:153px}.quick-product-heading{min-height:30px}}
@media screen{
  :root{--ink:#292824;--muted:#797469;--line:#e4e1d9;--paper:#fff;--soft:#f2f1eb;--green:#5d6951;--panel-bg:#fff;--canvas-bg:#f5f4f0;--control:#fff;--quickbar-height:80px}
  body{color:var(--ink);background:#f5f4f0}
  .topbar{padding-left:23px;padding-right:23px;border-color:var(--line)}
  .app-name{color:#686257;font-size:12px;letter-spacing:0}
  .beta{color:#827d70;border-color:#d7d2c6}
  .header-actions{gap:3px}
  .header-actions .quiet-button{font-size:11px;padding-left:9px;padding-right:9px;border-radius:5px;color:#5f594e}
  .header-actions .quiet-button:hover{background:#f3f1eb;color:#2f2b25}
  .header-actions .button-dark,.button-dark{background:#2d3028;border-color:#2d3028;color:#fff}
  .button-dark:hover{background:#49513e;border-color:#49513e}
  .button-outline{color:#585b4c;border-color:#d7d8cb}
  .button-outline:hover{background:#f4f4ee;border-color:#b6bdad}
  .text-button{color:#626b51}
  .eyebrow{color:#8a8376;letter-spacing:1.15px;font-size:8px}
  .help-icon{border-color:#98907e}
  .material-quickbar{border-color:var(--line);background:#fff}
  .quickbar-fields{max-width:none;grid-template-columns:minmax(168px,1.1fr) minmax(130px,.8fr) minmax(220px,1.45fr) minmax(145px,.9fr) minmax(130px,.85fr);padding:8px 23px;gap:15px}
  .quickbar-fields .field{color:#716b60;font-size:10px}
  .quickbar-fields .field b{background:#eeece5;color:#77705f}
  .quickbar-fields .field select{background:#fff;border-color:#e0dcd2;color:#37372c;font-size:12px;height:34px;min-height:34px}
  .quick-decor-control{position:relative;min-width:0;display:flex;gap:6px}
  .decor-picker-button{height:38px;min-height:38px;min-width:0;display:flex;align-items:center;gap:9px;padding:0 8px 0 0;border:1px solid #dcd7cb;background:#fff;border-radius:5px;flex:1;text-align:left}
  .decor-picker-button:hover{border-color:#a9ac99;background:#fafaf6}
  .decor-picker-button img{width:54px;height:36px;object-fit:cover;align-self:stretch;border-radius:4px 0 0 4px;flex:none;background:#e2d6c1}
  .decor-picker-button>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;color:#3f4034}
  .decor-picker-button>svg{width:15px;height:15px;color:#87806e}
  .native-decor-select{width:31px;position:relative;flex:none}
  .quickbar-fields .native-decor-select select{width:31px;height:38px;min-height:38px;padding-left:0;padding-right:0;color:transparent;font-size:0;background:#f8f7f2;border-color:#e2ddd2;appearance:auto}
  .quickbar-fields .native-decor-select select option{font-size:13px;color:#35392e}
  .quickbar-fields .native-decor-select select:focus-visible{outline-offset:2px}
  .controls{background:#fff;border-color:#e4e1d9}
  .sidebar-intro{padding-top:23px;padding-bottom:18px}
  .sidebar-intro h1{font-size:18px;font-weight:600;letter-spacing:-.45px;color:#34332b}
  .sidebar-intro p{font-size:11px;color:#80796d;line-height:1.65}
  .project-shortcuts{background:#fffefa;border-color:#ebe7de;backdrop-filter:none}
  .project-shortcuts .add-room-button{background:#f4f4ed;border-color:#d8dccd;color:#515e44;border-radius:5px;min-height:36px}
  .control-section{border-color:#ebe7df;padding-top:20px;padding-bottom:20px}
  .control-section h2{color:#4d4c40;font-size:12px;font-weight:600}
  .field{color:#7b7468;font-size:11px}
  .field input,.field select{color:#3e3e32;border-color:#dedbd1;border-radius:5px}
  .field input:focus,.field select:focus{border-color:#8c9c7c}
  .field-note{font-size:10.5px;color:#878171}
  .section-heading h2{font-size:12px}
  .room-count{color:#88826f}
  .room-list button{border-color:#e5e1d7;color:#635f51;background:#fff}
  .room-list button:hover{background:#f8f8f2;border-color:#b6bda5}
  .room-list button.active,.room-list button[aria-current=true]{background:#f0f2e8;border-color:#99a68b;color:#414e34;box-shadow:inset 3px 0 #7a8f68}
  .room-list small,.room-list .room-meta{color:#8a8575}
  .room-actions button{color:#8b8575}
  .custom-room-fields{background:#f7f7f1;border-color:#e5e6da}
  .custom-room-fields .field-note{color:#807d6d}
  .room-edit-actions .button-outline{border-color:#dce0cf;color:#757962}
  .material-preview strong{color:#494b3b}
  .material-preview span{color:#8c8676}
  .price-line>span{color:#5d664d}
  .price-line a{color:#8d8777}
  .room-area{color:#8b8576}
  .room-area strong{color:#5c6c4c}
  .move-pattern-button{background:#f4f6ed;border-color:#d4ddc8;color:#657653}
  .gap-setting{border-color:#e6e5d8}
  .local-note{color:#9b9483;font-size:10px}
  .drawing-area{background:#f5f4f0;padding-top:19px}
  .drawing-heading h2{color:#39382f;font-size:18px;font-weight:500}
  .drawing-heading .eyebrow{color:#9c9585}
  .calculation-state{color:#838b70}
  .calculation-state:before{background:#9caf87}
  .edit-toolbar{border-color:#e1ded4;box-shadow:0 1px 2px #534f3b08;gap:5px;padding:4px;border-radius:7px}
  .canvas-tools{overflow:auto;scrollbar-width:none;overscroll-behavior:contain;flex:1;gap:2px;min-width:0}
  .canvas-tools::-webkit-scrollbar{display:none}
  .canvas-tool{flex:none;color:#807b6b;font-size:10px;padding:0 9px}
  .canvas-tool:hover{background:#f4f3eb;color:#4c5640}
  .canvas-tool.active,.canvas-tool[aria-pressed=true]{background:#47533b;color:#fff}
  .canvas-tool.studio-primary-tool{color:#4b5940;background:#f1f4e9}
  .canvas-tool.studio-primary-tool:hover{background:#e5ebda}
  .history-tools{background:#fff;border-color:#e9e6dd;padding-left:4px;gap:0}
  .history-tools button{color:#6c795b;width:29px}
  .view-switch{background:#eae9e0}
  .view-switch button{color:#948c7a}
  .view-switch button.active{color:#6b7758;box-shadow:0 1px 2px #5d563318}
  .edit-hint{color:#928b79}
  .zoom-tools button{color:#8a8b76}
  .plan-canvas{border-color:#e4dfd3;background-color:#fcfbf7;background-image:linear-gradient(#e0dbce45 1px,transparent 1px),linear-gradient(90deg,#e0dbce45 1px,transparent 1px);box-shadow:none}
  .plan-caption{color:#887a60}
  .plan-caption span:first-child{background:#fcfbf7e6}
  .plan-legend{color:#98917c}
  .plan-legend .legend-hint{color:#8b7d62}
  .dimension-text{stroke:#fcfbf7;fill:#86866d}
  .dimension-line{stroke:#b6b6a0}
  .room-outline{stroke:#74745c}
  .inspector{border-color:#e4e1d9}
  .inspector-tabs{border-color:#e7e3d9}
  .inspector-tabs button{color:#807258}
  .inspector-tabs button.active,.inspector-tabs button[aria-selected=true]{color:#5d684b}
  .inspector-tabs button.active:after,.inspector-tabs button[aria-selected=true]:after{background:#88956f}
  .project-summary-panel{border-color:#e7e3d9}
  .project-summary-panel>h2{color:#615f4d;font-weight:500}
  #projectSummary{color:#80735c}
  #projectSummary strong{color:#71805b}
  .project-room-totals th{background:#f6f6ed;color:#7b7155}
  .project-room-totals td{color:#737855;border-color:#edede2}
  .project-room-totals td strong{color:#6a7d51}
  .summary-heading h2{color:#6a7055;font-size:18px}
  .summary-heading p{color:#807159}
  .main-quantity strong{color:#71865a;font-weight:400}
  .main-quantity span,.purchased-area{color:#81745c}
  .cost-block strong{color:#71865a}
  .cost-block>div{color:#827257}
  .cost-block p{color:#8a7b61}
  .project-next-step{margin:22px 0 2px;padding-top:19px;border-top:1px solid #e7e5d7;display:flex;flex-direction:column;gap:11px}
  .project-next-step .button-dark{width:100%;min-height:43px;padding:11px 13px;justify-content:space-between;font-size:12px;background:#4b5940;border-color:#4b5940}
  .project-next-step .button-dark:hover{background:#626f51;border-color:#626f51}
  .project-next-step .text-button{align-self:center;font-size:11px;min-height:27px;color:#8c9776;text-align:center}
  .project-next-step p{font-size:10px;line-height:1.65;color:#83745b;text-align:center}
  .stock-block{border-color:#e6e6d8}
  .stock-block .field{color:#82765b}
  .stock-block select{background:#fdfef9;border-color:#e2e6d2;color:#8a9571}
  .stock-status{color:#84785d}
  .calculation-note{color:#85785b}
  .summary-footer .button-outline{color:#75845a;border-color:#d9e0cc}
  .summary-footer .text-button{color:#7b865d}
  .dialog{background:#fffefa;color:#363329;border-color:#e5dfd1;border-radius:12px;box-shadow:0 24px 90px #25291b3b;padding:27px;overflow:auto;scrollbar-width:thin;scrollbar-color:#d8d7c9 transparent;overscroll-behavior:contain}
  .dialog::backdrop{background:#25281b6b;backdrop-filter:blur(4px)}
  .dialog-heading{align-items:flex-start;gap:12px;margin-bottom:16px}
  .dialog-heading .eyebrow{font-size:8px;color:#8b8572;margin:0 0 7px}
  .dialog-heading h2{font-size:24px;font-weight:500;letter-spacing:-.65px;line-height:1.2;color:#35352a;margin:0}
  .dialog-close{color:#9a947e;font-weight:400;min-height:30px;min-width:30px;display:grid;place-items:center;border-radius:5px;flex:none}
  .dialog-close:hover{background:#f0eee4;color:#5f6650}
  .dialog>p,.dialog form>p{color:#7d7360;font-size:12px;line-height:1.75}
  .dialog .field{color:#7a7863;font-size:11.5px}
  .dialog .field input,.dialog .field select,.dialog .field textarea{color:#454b36;background:#fff;border-color:#dce0cd;min-height:42px;height:42px;font-size:13px}
  .dialog .field textarea{display:block;width:100%;resize:vertical;max-height:220px;min-height:90px;padding:11px;border:1px solid #dce0cd;border-radius:5px;font-family:inherit;line-height:1.6}
  .dialog .button-dark{background:#4d5c3d;border-color:#4d5c3d}
  .dialog .button-dark:hover{background:#66774e;border-color:#66774e}
  .start-dialog{padding:0;width:min(1000px,calc(100vw - 48px));max-height:calc(100dvh - 50px);border:0;border-radius:14px;background:#fffefa;position:relative}
  .start-close{position:absolute;top:17px;right:18px;z-index:2;background:#ffffffa1}
  .start-layout{display:grid;grid-template-columns:1.06fr 1fr;min-height:572px}
  .start-story{background:#f1eee5;padding:37px 37px 12px;display:flex;flex-direction:column;min-width:0}
  .start-story>.eyebrow{color:#7e725c;font-size:8.5px;letter-spacing:1.7px}
  .start-story h2{font-size:35px;line-height:1.17;font-weight:500;letter-spacing:-1.3px;color:#454536;margin-top:22px}
  .start-lead{font-size:13px;line-height:1.8;color:#827460;max-width:360px;margin-top:18px}
  .start-outcomes{display:grid;gap:10px;margin-top:22px}
  .start-outcomes>span{display:flex;align-items:center;gap:8px;color:#706f56;font-size:11px;line-height:1.5}
  .start-outcomes svg{width:15px;height:15px;fill:none;stroke:#92a071;stroke-width:1.6;flex:none}
  .start-plan-illustration{margin-top:auto;padding-top:20px;position:relative}
  .start-plan-illustration svg{width:100%;height:auto;max-height:220px;display:block;opacity:.9}
  .start-plan-illustration>span{position:absolute;bottom:3px;right:12px;font-size:8px;color:#85765b}
  .start-choices{padding:68px 34px 27px;display:flex;flex-direction:column;justify-content:center;gap:13px}
  .start-choices>.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:2px;color:#81745c}
  .start-choice{display:flex;gap:17px;align-items:flex-start;text-align:left;padding:22px 19px;border:1px solid #dddccc;background:#fff;border-radius:9px;color:#62664a;width:100%;transition:border-color .15s,background .15s;min-width:0}
  .start-choice:hover{border-color:#8e9d73;background:#fbfcf6}
  .choice-icon{width:35px;flex:none;color:#949d7a;margin-top:1px}
  .choice-icon svg{height:35px;width:35px;fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
  .start-choice>span:last-child{min-width:0;flex:1}
  .start-choice strong{display:block;font-weight:500;font-size:17px;line-height:1.35;letter-spacing:-.3px}
  .start-choice small{display:block;font-size:11.5px;line-height:1.75;color:#87795f;margin-top:8px}
  .start-choice em{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font-size:11px;font-style:normal;font-weight:500;color:#63794b}
  .start-choice em span{font-size:17px;line-height:1}
  .start-continue{color:#78865e;font-size:11px;line-height:1.5;min-height:36px;padding:7px 0;background:transparent;text-decoration:underline;text-underline-offset:4px;display:flex;justify-content:center;align-items:center;gap:14px}
  .start-continue:hover{color:#74825d}
  .start-footnote{color:#8a8165;font-size:9.5px;line-height:1.8;text-align:center;margin-top:0;max-width:350px;align-self:center}
  .gallery-dialog{width:min(1000px,calc(100vw - 48px));padding:30px;max-height:calc(100dvh - 48px)}
  .gallery-dialog .gallery-intro{max-width:740px;font-size:11.5px;margin:0 0 23px;color:#81745d}
  .gallery-filters{display:grid;grid-template-columns:1fr 1fr 1.75fr;gap:13px;border-top:1px solid #e8e5d9;padding:17px 0 4px;margin-bottom:9px}
  .gallery-filters .field{font-size:10.5px;color:#8d896e}
  .gallery-filters .field select,.gallery-filters .field input{height:39px;min-height:39px;font-size:12px}
  .gallery-endnote{margin:20px 0 0!important;font-size:10px!important;color:#8b7c61!important;max-width:740px}
  .decor-filters{grid-template-columns:1.5fr 1fr}
  .share-dialog{width:min(570px,calc(100vw - 32px))}
  .share-actions{display:flex;gap:9px;margin-top:18px}
  .share-actions .button-dark{flex:1}
  #shareUrl{font-size:11.5px;color:#819064;background:#f8faf1}
  .form-status{font-size:12px;color:#748657;line-height:1.65;margin-top:16px!important;margin-bottom:0!important;overflow-wrap:anywhere;white-space:normal}
  .form-status:empty{display:none}
  .form-status.error,[data-state=error].form-status{color:#b37952}
  .dialog-small-note{border-top:1px solid #e6e8d8;padding-top:17px;margin-top:19px;font-size:10.5px!important;color:#7f8264!important}
  .request-dialog{width:min(560px,calc(100vw - 32px))}
  .request-dialog .field-pair{gap:15px}
  .request-dialog .field{position:relative;padding-top:0;gap:7px;margin-bottom:15px;min-width:0}
  .optional-label,.required-label{font-size:8px;color:#82785c;line-height:1.1;margin-top:-3px;font-weight:400}
  .request-consent{display:flex;align-items:flex-start;gap:10px;font-size:9.5px;color:#7d795e;line-height:1.75;margin-top:15px}
  .request-consent input{width:17px;height:17px;flex:none;margin:2px 0 0;accent-color:#829661}
  .request-consent a{text-decoration-color:#c8ceb3}
  .request-dialog .dialog-footer{margin-top:20px}
  .request-dialog .dialog-footer .button-dark{width:100%;min-height:44px;justify-content:space-between;padding-left:16px;padding-right:16px}
  .request-dialog .request-final-note{margin:11px 0 0;color:#8a8064;text-align:center;font-size:9px}
  .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
}
@media screen and (min-width:1600px){
  .canvas-tool{font-size:10.5px;padding-left:11px;padding-right:11px}
  .quickbar-fields{padding-left:28px;padding-right:28px;gap:20px}
}
@media screen and (min-width:1101px) and (max-width:1380px){
  .header-actions .quiet-button span:not(.help-icon){display:none}
  .header-actions .quiet-button{padding-left:9px;padding-right:9px}
  .quickbar-fields{grid-template-columns:minmax(158px,1fr) minmax(112px,.7fr) minmax(190px,1.3fr) minmax(133px,.9fr) minmax(126px,.85fr);gap:12px;padding-left:20px;padding-right:20px}
  .quickbar-fields .field select{font-size:11px}
  .decor-picker-button>span{font-size:11px}
  .decor-picker-button img{width:47px}
}
@media screen and (max-width:1100px){
  :root{--quickbar-height:44px}
  .topbar{padding-left:17px;padding-right:17px}
  .header-actions .quiet-button{padding:7px;min-width:32px;min-height:34px}
  .header-actions #helpButton{display:none}
  .material-quickbar>summary{height:44px;background:#fafaf5;color:#7c8268;border-color:#e5e5d8;font-size:11px}
  .quickbar-mobile-value{font-size:10px;color:#a4a88e}
  .quickbar-chevron{color:#b2b696}
  .material-quickbar .quickbar-fields{top:44px;background:#fffefa;border-color:#dfe4cf;box-shadow:0 12px 25px #656b3e22;max-height:min(45dvh,350px);padding:15px 20px 20px;gap:13px 14px}
  .quickbar-fields .field{font-size:11px;color:#8a8b70}
  .quickbar-fields .field select{height:41px;min-height:41px;font-size:16px;border-color:#e0e5ce}
  .quickbar-fields .quick-product{grid-column:1/-1}
  .decor-picker-button{height:44px;min-height:44px;gap:12px}
  .decor-picker-button img{height:42px;width:68px}
  .decor-picker-button>span{font-size:14px}
  .native-decor-select{width:38px}
  .quickbar-fields .native-decor-select select{height:44px;min-height:44px;width:38px;font-size:0}
  .quickbar-fields .native-decor-select select option{font-size:16px}
  .drawing-area{padding-top:11px}
  .drawing-heading h2{font-size:14px;color:#77795d}
  .edit-toolbar{margin-top:7px;gap:3px}
  .canvas-tool{height:32px;font-size:10px;padding:0 8px;gap:5px}
  .canvas-tool svg{height:15px;width:15px}
  .history-tools{padding-left:3px}
  .history-tools button{width:27px;height:29px}
  .plan-toolbar{gap:7px}
  .project-next-step .button-dark{min-height:44px;font-size:13px}
  .project-next-step .text-button{font-size:12px;min-height:32px}
  .project-next-step p{font-size:11px}
  .dialog{max-height:calc(100dvh - 24px);padding:23px;border-radius:10px}
  .dialog .field input,.dialog .field select,.dialog .field textarea{font-size:16px}
  .gallery-dialog{width:calc(100vw - 28px)}
  .start-dialog{width:calc(100vw - 30px);padding:0;max-width:890px}
  .start-story{padding:33px 29px 13px}
  .start-story h2{font-size:31px}
  .start-lead{font-size:12px}
  .start-choices{padding-left:27px;padding-right:27px;gap:12px}
  .start-choice{padding:21px 17px;gap:13px}
  .start-choice strong{font-size:15px}
  .start-choice small{font-size:11px}
  .start-outcomes>span{font-size:10.5px}
  .gallery-filters .field input,.gallery-filters .field select{font-size:16px;min-height:43px;height:43px}
  .decor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media screen and (max-width:680px){
  .topbar{padding-left:12px;padding-right:12px;gap:10px}
  .app-name{display:none}
  .brand-divider{display:none}
  .header-actions{gap:0}
  .header-actions .quiet-button{min-width:34px;width:34px;padding:7px}
  .header-actions .button-dark{font-size:10px;max-width:112px;min-height:34px;padding:8px 10px;line-height:1.2}
  .topbar .header-actions #libraryButton{display:flex}
  .material-quickbar>summary{padding-left:13px;padding-right:13px}
  .canvas-tool{height:30px;font-size:9px;padding:0 7px;gap:4px}
  .canvas-tool svg{width:14px;height:14px}
  .history-tools button{width:25px;height:28px}
  .drawing-area{padding-top:8px}
  .drawing-heading h2{font-size:13px}
  .start-dialog{width:calc(100vw - 22px);max-height:calc(100dvh - 22px);max-width:500px;border-radius:11px}
  .start-layout{display:flex;flex-direction:column;min-height:0}
  .start-story{padding:27px 25px 22px}
  .start-story>.eyebrow{font-size:7.5px;letter-spacing:1.25px;max-width:85%}
  .start-story h2{font-size:29px;line-height:1.15;letter-spacing:-1px;margin-top:17px}
  .start-story h2 br{display:none}
  .start-lead{font-size:12px;line-height:1.7;margin-top:13px;max-width:340px}
  .start-outcomes{display:none}
  .start-plan-illustration{display:none}
  .start-choices{padding:23px 24px 22px;gap:10px}
  .start-choices>.eyebrow{font-size:7.5px}
  .start-choice{padding:17px 14px;gap:12px;border-radius:7px}
  .choice-icon{width:27px}
  .choice-icon svg{width:27px;height:27px}
  .start-choice strong{font-size:15px}
  .start-choice small{font-size:10.5px;line-height:1.65;margin-top:6px}
  .start-choice em{font-size:10px;margin-top:10px}
  .start-continue{font-size:10px;min-height:33px;padding-top:9px}
  .start-footnote{font-size:9px;line-height:1.6;max-width:290px}
  .start-close{top:12px;right:12px;min-height:27px;min-width:27px;font-size:23px}
  .gallery-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:21px 18px}
  .gallery-dialog .dialog-heading h2{font-size:23px}
  .dialog-heading .eyebrow{font-size:7px;max-width:240px;line-height:1.6}
  .gallery-dialog .gallery-intro{font-size:11px;line-height:1.7;margin-bottom:17px}
  .gallery-filters{grid-template-columns:1fr 1fr;gap:10px;padding-top:15px;margin-bottom:8px}
  .gallery-filters .gallery-search{grid-column:1/-1;order:-1}
  .gallery-filters .field{font-size:10px;margin-bottom:8px;gap:5px}
  .gallery-filters .field input,.gallery-filters .field select{font-size:16px;height:42px;min-height:42px;padding-left:9px}
  .template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .template-preview,.template-card>svg{height:120px;padding:10px}
  .template-info{padding:11px}
  .template-info strong,.template-card>strong{font-size:12px;line-height:1.45}
  .template-info p,.template-info small,.template-card>small{font-size:9.5px;line-height:1.6;margin-top:6px}
  .template-meta{font-size:9px;gap:6px;margin-top:7px}
  .template-card .template-action{font-size:9px;margin-top:9px;padding-top:8px}
  .gallery-endnote{font-size:9.5px!important;line-height:1.7!important;margin-top:17px!important}
  .decor-filters{grid-template-columns:1fr}
  .decor-filters .gallery-search{grid-column:auto}
  .decor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
  .decor-image,.decor-card>img{height:115px}
  .decor-info{padding:11px}
  .decor-info strong,.decor-card>strong{font-size:13px}
  .decor-info p,.decor-info small,.decor-card>small{font-size:10px}
  .decor-meta{font-size:10px;gap:6px}
  .decor-stock{font-size:9px}
  .decor-info .decor-price{font-size:11px}
  .share-dialog,.request-dialog{width:calc(100vw - 24px);padding:22px 20px}
  .share-dialog .dialog-heading h2,.request-dialog .dialog-heading h2{font-size:22px}
  .share-dialog>p,.request-dialog form>p{font-size:11.5px;line-height:1.7}
  .share-actions{flex-direction:column}
  .share-actions button{min-height:43px}
  .request-dialog .field-pair{grid-template-columns:1fr;gap:0}
  .request-dialog .field{font-size:11px}
  .request-consent{font-size:10px;line-height:1.7}
  .optional-label,.required-label{font-size:8px}
  .dialog-small-note{font-size:10px!important}
}
@media screen and (max-width:370px){
  .topbar{padding-left:10px;padding-right:10px;gap:7px}
  .header-actions .quiet-button{min-width:31px;width:31px;padding-left:6px;padding-right:6px}
  .header-actions .button-dark{font-size:9px;max-width:100px;padding:7px 8px}
  .material-quickbar>summary{font-size:10px;gap:7px}
  .quickbar-mobile-value{max-width:33%;font-size:9px}
  .material-quickbar .quickbar-fields{padding-left:15px;padding-right:15px;gap:11px}
  .canvas-tool{font-size:8.5px;padding:0 6px}
  .history-tools button{width:24px}
  .start-story{padding:25px 21px 19px}
  .start-story h2{font-size:25px;margin-top:15px;max-width:240px}
  .start-lead{font-size:11px}
  .start-choices{padding:20px 19px}
  .start-choice{padding:15px 12px;gap:10px}
  .start-choice strong{font-size:14px}
  .start-choice small{font-size:10px}
  .start-footnote{font-size:8.5px}
  .gallery-dialog{padding:20px 15px}
  .gallery-dialog .dialog-heading h2{font-size:21px}
  .template-preview,.template-card>svg{height:104px;padding:8px}
  .template-info{padding:10px}
  .template-info strong,.template-card>strong{font-size:11px}
  .template-info p,.template-info small{font-size:9px}
  .decor-image,.decor-card>img{height:103px}
  .share-dialog,.request-dialog{padding:21px 17px}
}
@media screen and (max-width:1100px) and (orientation:landscape){
  .material-quickbar .quickbar-fields{max-height:calc(100dvh - 99px)}
  .start-dialog{width:min(900px,calc(100vw - 28px));max-width:900px}
  .start-layout{display:grid;grid-template-columns:1fr 1.1fr;min-height:0}
  .start-story{padding:30px 27px 23px}
  .start-story h2{font-size:29px}
  .start-outcomes,.start-plan-illustration{display:none}
  .start-choices{padding:40px 25px 24px}
  .start-choice{padding:17px 14px}
}
@media(prefers-reduced-motion:reduce){.template-card,.decor-card,.start-choice{transition:none}}
@media print{
  .start-dialog,.gallery-dialog,.share-dialog,.request-dialog,.project-next-step,.decor-picker-button,.studio-primary-tool,#toolMoveRoomButton,#connectRoomsButton,#referenceImageButton,#referenceClearButton{display:none!important}
}

@media screen{.start-story h2{color:#36362b}.start-choice{color:#3f4933}.start-choice small{color:#7f725d}.start-choice em{color:#5a6e43}.start-lead{color:#776c5c}.start-footnote{color:#82755f}.gallery-dialog .gallery-intro{color:#7a6f5c}.project-next-step p{color:#7f735c}.summary-heading h2{color:#555d42}.main-quantity strong,.cost-block strong{color:#536d3e}.field-note,.custom-room-fields .field-note{color:#7a7465}.eyebrow{color:#80775f}.template-info p,.template-info small,.decor-info p,.decor-info small{color:#756d5e}.decor-stock{color:#597042}}

@media screen{.native-decor-select::after{content:"≡";font-size:15px;color:#87846d;pointer-events:none;position:absolute;inset:0;display:grid;place-items:center}.quickbar-fields .native-decor-select select{appearance:none}#toolSelect.canvas-tool,#toolPan.canvas-tool{width:31px;padding-left:6px;padding-right:6px}#toolSelect.canvas-tool>span,#toolPan.canvas-tool>span{display:none}}

/* The visitor module creates these from the current, calculated project. */
@media screen{
  .studio-recommendations{margin-top:22px;padding:16px 14px;background:#f7f7f0;border:1px solid #e3e6d7;border-radius:7px;color:#787963}
  .studio-recommendations h3{font-size:11.5px;font-weight:600;line-height:1.5;color:#5c684b;margin:0 0 10px}
  .studio-recommendations p{font-size:10.5px;line-height:1.75;margin:9px 0 0;color:#777960;overflow-wrap:anywhere}
  .studio-recommendations p+p{padding-top:9px;border-top:1px solid #e7e9dd}
  .room-floor-toggle{margin:4px 0 16px;padding:11px 10px;min-height:43px;align-items:center;gap:9px;background:#f6f7ef;border:1px solid #e2e6d6;border-radius:5px;font-size:10.5px;line-height:1.6;color:#737e5f;cursor:pointer}
  .room-floor-toggle input{width:16px;height:16px;margin:0;accent-color:#809366}
  .room-floor-toggle:has(input:not(:checked)){background:#f8f6ef;color:#9b8d73;border-color:#e7e0d2}
  .template-info{display:flex;flex:1;flex-direction:column}
  .template-card p{font-size:11px;line-height:1.7;color:#7d745f;margin:8px 0 0;overflow-wrap:anywhere}
  .template-choose{display:block;margin-top:auto;padding-top:15px;color:#687d4d;font-size:10.5px;font-weight:500;line-height:1.6}
  .template-meta{color:#7a765e;font-size:10px;gap:6px 11px;margin-top:11px;line-height:1.65}
  .template-grid>.empty-library,.decor-grid>.empty-library{grid-column:1/-1;min-height:150px;margin:0;padding:34px 22px;border:1px dashed #dfe3d0;border-radius:8px;background:#fbfcf7;font-size:12px;line-height:1.75;color:#8e9278;text-align:center;display:grid;place-content:center}
  .decor-meta{display:block;font-size:10.5px;line-height:1.7;margin-top:7px;color:#82816a;overflow-wrap:anywhere}
  .decor-stock{font-size:10px;line-height:1.65;color:#738a55;margin-top:9px;overflow-wrap:anywhere}
  #connectRoomsDialog .field,#referenceScaleDialog .field{margin-bottom:15px}
  #connectRoomsDialog .field-note{margin:8px 0 0;line-height:1.75;font-size:11px}
  #connectRoomsDialog .dialog-footer .button-dark,#referenceScaleDialog .dialog-footer .button-dark{min-height:42px}
  #referenceScaleDialog p{margin-bottom:18px;font-size:12px;line-height:1.75;color:#8d8774}
}
@media screen and (max-width:1100px){
  .room-floor-toggle{font-size:12px;min-height:46px;padding:12px}
  .room-floor-toggle input{width:17px;height:17px}
  .studio-recommendations{padding:17px 15px}
  .studio-recommendations h3{font-size:12.5px}
  .studio-recommendations p{font-size:11.5px;line-height:1.75}
  .decor-meta{font-size:11px}
  .decor-stock{font-size:10.5px}
}
@media screen and (max-width:680px){
  .template-card p{font-size:9.5px;line-height:1.65;margin-top:7px}
  .template-meta{font-size:9px;line-height:1.6;display:block;margin-top:8px}
  .template-meta>span{display:block;margin-top:2px}
  .template-choose{font-size:9.5px;padding-top:11px;line-height:1.6}
  .decor-meta{font-size:10px;line-height:1.65}
  .decor-stock{font-size:9.5px;line-height:1.6}
  #connectRoomsDialog .field-note,#referenceScaleDialog p{font-size:11.5px}
}

/* Selects keep their native form contract; the visible controls share one UI. */
.select-ui{position:relative;display:block;width:100%;min-width:0;text-align:left}
.select-ui-native{position:absolute!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip-path:inset(50%)!important;border:0!important}
.select-ui-trigger{width:100%;height:39px;min-width:0;padding:0 11px;display:flex;align-items:center;justify-content:space-between;gap:9px;text-align:left;font:inherit;font-size:13px;line-height:1.35;color:#424637;background:#fff;border:1px solid #deddd1;border-radius:5px;cursor:pointer;box-shadow:none;transition:border-color .12s,background .12s}
.select-ui-trigger:hover:enabled{background:#fdfdf9;border-color:#aebba0}
.select-ui-trigger[aria-expanded=true]{border-color:#879d6f;background:#fff;box-shadow:0 0 0 2px #8c9e7320}
.select-ui-trigger:focus-visible{outline:2px solid #879d6f;outline-offset:2px}
.select-ui-trigger:disabled{background:#f8f8f2;border-color:#e5e5db;color:#aaa998;opacity:.7;cursor:not-allowed}
.select-ui-trigger[aria-invalid=true]{border-color:#b88568;background:#fffaf5}
.select-ui-value{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}
.select-ui-arrow{display:grid;place-items:center;width:16px;height:16px;line-height:0;color:#7b866b;flex:none;transition:transform .12s}
.select-ui-arrow>svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.select-ui-trigger[aria-expanded=true] .select-ui-arrow{transform:rotate(180deg)}
.select-ui-popover{position:fixed;inset:auto;margin:0;padding:5px;z-index:2000;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cdd6bf transparent;background:#fffffc;color:#4c5540;border:1px solid #d7dfcb;border-radius:8px;box-shadow:0 9px 28px #35431f24;min-height:0;font-family:"Golos Text",Arial,sans-serif;font-size:12px;line-height:1.45;box-sizing:border-box;max-width:calc(100vw - 16px);text-align:left;outline:0}
.select-ui-popover::backdrop{background:transparent}
.select-ui-option{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 11px;min-height:36px;border-radius:4px;cursor:pointer;user-select:none}
.select-ui-option-label{flex:1;min-width:0;overflow-wrap:anywhere}
.select-ui-option.is-active{background:#eef3e7;color:#445b32}
.select-ui-option[aria-selected=true]{font-weight:500;color:#486332}
.select-ui-option[aria-disabled=true]{color:#b3b6a5;cursor:not-allowed;background:transparent}
.select-ui-tick{font-family:Arial,sans-serif;font-weight:400;font-size:12px;color:#879e67;visibility:hidden;flex:none}
.select-ui-option[aria-selected=true] .select-ui-tick{visibility:visible}
.select-ui-group{padding:10px 11px 5px;color:#9a9f87;font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:.05em}
@media screen{
  .quickbar-fields .select-ui-trigger{height:34px;font-size:12px;padding:0 9px;border-color:#deded0}
  .quickbar-fields .quick-product .material-scope .select-ui{width:124px;max-width:100%}
  .quickbar-fields .material-scope .select-ui-trigger{height:20px;min-height:20px;font-size:10px;line-height:1.2;padding:0 5px;background:#f3f4ed;border:0;border-radius:3px;gap:5px;color:#4f5e43}
  .material-scope .select-ui-arrow{width:12px;height:12px}
  .material-scope .select-ui-arrow>svg{width:12px;height:12px}
  .native-decor-select::after{display:none}
  .native-decor-select .select-ui-trigger{height:38px;min-height:38px;padding:0;justify-content:center;background:#f8f8f1}
  .native-decor-select .select-ui-value{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}
  .native-decor-select .select-ui-arrow{color:#7b866b}
  .dialog .select-ui-trigger{height:42px;font-size:13px}
  .gallery-filters .select-ui-trigger{height:39px;font-size:12px}
  .direction-controls{display:flex;gap:6px;align-items:center;min-width:0}
  .direction-controls>.select-ui{flex:1;width:auto;min-width:0}
  .direction-angle-field{width:67px;flex:none;min-width:0}
  .quickbar-fields .direction-angle-field input{height:34px;min-height:34px;font-size:12px;padding:0 19px 0 7px;border:1px solid #deded0;border-radius:5px;width:100%;color:#525c42;background:#fff;appearance:textfield}
  .direction-angle-field input::-webkit-inner-spin-button,.direction-angle-field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
  .direction-angle-field .input-unit>span{font-size:11px;right:7px;color:#9aab84}
  details.custom-room-fields{padding:0;background:#fafaf5;border-color:#e5e9da}
  .custom-room-fields>summary{display:flex;align-items:center;justify-content:space-between;gap:7px;list-style:none;cursor:pointer;padding:11px 10px;color:#788466;font-size:10.5px;line-height:1.5}
  .custom-room-fields>summary::-webkit-details-marker{display:none}
  .custom-room-fields>summary>span{font-size:16px;line-height:1;font-weight:400;color:#9eab8a;transition:transform .15s}
  .custom-room-fields[open]>summary>span{transform:rotate(45deg)}
  .complex-room-content{padding:0 10px 12px}
  .complex-room-content>.field-note{font-size:10px;line-height:1.7}
  .complex-room-content .room-edit-actions{gap:6px}
  .complex-room-content .room-edit-actions #resetRoomButton{grid-row:auto;grid-column:1/-1}
  .optimization-controls .button-outline{white-space:normal;line-height:1.5;padding:10px 9px;min-height:43px;font-size:10.5px;text-wrap:balance}
  .inspector>.inspector-tabs{order:0}
  .inspector>.order-summary{min-height:0;flex:1 1 0;padding-bottom:22px;order:1}
  .inspector>.details-panel{order:1}
  .inspector>.project-next-step{flex:none;margin:0;padding:13px 20px 12px;background:#fffffb;border-top:1px solid #e1e6d5;box-shadow:0 -5px 15px #59683b09;gap:7px;z-index:3;order:2}
  .inspector>.project-next-step .button-dark{min-height:42px;padding:10px 12px;font-size:11px;gap:8px;text-align:left;line-height:1.5}
  .inspector>.project-next-step .button-dark>span{flex:none}
  .inspector>.project-next-step .text-button{font-size:10px;min-height:23px;padding:2px 0}
  .inspector>.project-next-step p{font-size:9px;line-height:1.65;max-width:260px;align-self:center}
  .workspace[data-panel=details] .inspector>.project-next-step{display:flex}
}
@media screen and (max-width:1100px){
  .select-ui-trigger{height:42px;font-size:16px}
  .select-ui-popover{font-size:14px;padding:5px;border-radius:8px}
  .select-ui-option{min-height:43px;padding:11px 12px;gap:14px}
  .select-ui-group{font-size:10px}
  .quickbar-fields .select-ui-trigger{height:41px;font-size:16px}
  .quickbar-fields:has(#directionAngleField:not([hidden])){grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
  .quick-direction .select-ui-trigger{font-size:14px;gap:5px;padding-left:8px;padding-right:8px}
  .quick-stagger .select-ui-trigger{font-size:13px;gap:5px;padding-left:8px;padding-right:8px}
  .quickbar-fields .quick-product .material-scope .select-ui{width:153px}
  .quickbar-fields .material-scope .select-ui-trigger{height:30px;min-height:30px;font-size:12px;padding:0 6px}
  .material-scope .select-ui-arrow{width:14px;height:14px}
  .material-scope .select-ui-arrow>svg{width:14px;height:14px}
  .native-decor-select .select-ui-trigger{height:44px;min-height:44px}
  .dialog .select-ui-trigger,.gallery-filters .select-ui-trigger{height:43px;font-size:16px}
  .direction-angle-field{width:75px}
  .quickbar-fields .direction-angle-field input{height:41px;min-height:41px;font-size:16px;padding-right:20px}
  .direction-angle-field .input-unit>span{font-size:13px}
  .custom-room-fields>summary{padding:12px;font-size:12px;min-height:43px}
  .complex-room-content{padding:0 12px 13px}
  .complex-room-content>.field-note{font-size:11px}
  .complex-room-content .room-edit-actions .button-outline{min-height:37px;font-size:11px;line-height:1.45}
  .optimization-controls .button-outline{min-height:43px;font-size:12px}
  .inspector>.project-next-step{padding:10px 20px 8px;gap:5px}
  .inspector>.project-next-step .button-dark{min-height:42px;font-size:12px;padding:10px 13px}
  .inspector>.project-next-step .text-button{font-size:11px;min-height:23px}
  .inspector>.project-next-step p{font-size:9px;line-height:1.5;max-width:none}
}
@media screen and (max-width:370px){
  .inspector>.project-next-step{padding-left:17px;padding-right:17px}
  .inspector>.project-next-step .button-dark{font-size:11px}
  .quick-collection .select-ui-trigger{font-size:14px;gap:4px;padding-left:8px;padding-right:8px}
  .select-ui-popover{font-size:13px}
}
@media screen and (max-height:700px) and (max-width:1100px){
  .inspector>.project-next-step p{display:none}
  .inspector>.project-next-step{padding-top:8px;padding-bottom:7px;gap:3px}
}
@media print{.select-ui-popover,.select-ui-trigger{display:none!important}}

/* Clear reading and a visible, prefilled request without another input form. */
@media screen{
  .request-dialog{width:min(620px,calc(100vw - 32px));max-width:620px;max-height:calc(100dvh - 32px)}
  .request-calculation{padding:17px 18px;margin:18px 0 23px;background:#f4f6ee;border:1px solid #dce3d0;border-radius:8px;color:#34402d}
  .request-calculation h3{margin:0;font-size:14px;font-weight:600;line-height:1.5}
  .request-calculation-name{font-size:11.5px;color:#68715e;line-height:1.6;margin:5px 0 12px;overflow-wrap:anywhere}
  .request-calculation-items{margin:0;padding:0;list-style:none;display:grid;gap:12px}
  .request-calculation-items li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;padding-bottom:12px;border-bottom:1px solid #dce3d0}
  .request-calculation-items strong{grid-column:1/-1;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
  .request-calculation-quantity{font-size:12.5px;line-height:1.6;color:#59644c}
  .request-calculation-price{font-size:13px;line-height:1.6;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
  .request-calculation-totals{margin:12px 0 0;display:grid;gap:7px;font-size:12px;line-height:1.55}
  .request-calculation-totals>div{display:flex;justify-content:space-between;gap:18px}
  .request-calculation-totals dt{color:#67715c}
  .request-calculation-totals dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
  .request-calculation-note{margin:12px 0 0;font-size:11px;line-height:1.65;color:#6a725f}
  .request-dialog .field{font-size:12px;line-height:1.6}
  .request-dialog .request-consent{font-size:11.5px;line-height:1.65}
  .request-dialog .form-status{font-size:12.5px;line-height:1.65}
  .request-calculation-compact{display:none}
  .request-calculation-details>summary{display:none}
  .request-plan-delivery{margin-top:13px;padding-top:12px;border-top:1px solid #dce3d0;overflow-wrap:anywhere}
  .request-plan-delivery p{font-size:11.5px;line-height:1.65;margin:0}
  .request-plan-delivery .text-button{font-size:12px;min-height:40px;line-height:1.5;text-align:left}
  .request-plan-delivery input{width:100%;font-size:12px;margin-top:8px}
  .start-advice-button{width:100%;margin-top:10px;min-height:44px;font-size:13px}
  .request-dialog .dialog-footer{position:static;margin:16px 0 0;padding:14px 0 0;background:transparent;border-top:1px solid #e3e5d9}
  .help-content p{font-size:13px;line-height:1.85;color:#5f6258}
  .help-content h3{font-size:15px;line-height:1.5;margin-top:24px}
  .help-content .help-lead{font-size:14px;color:#424b39}
  .calculation-note{font-size:11.5px;line-height:1.75;color:#737366}
  .storage-recovery{display:grid;gap:12px;padding:16px;border:1px solid #d9cbb2;background:#fbf7ed;border-radius:6px;margin:15px 0;font-size:12px;line-height:1.7;color:#756344}
  .storage-recovery .button-outline{justify-self:start}
  .plan-piece{stroke:#6e6658;stroke-opacity:.55;stroke-width:.65}
  .plan-piece:hover{stroke-opacity:1}
}
@media screen and (max-width:1100px){
  .dialog .field input:not([type=hidden]),.dialog .field textarea{font-size:16px}
  .request-calculation{padding:15px;margin:16px 0 20px}
  .request-calculation h3{font-size:15px}
  .request-calculation-items strong{font-size:14px}
  .request-calculation-quantity,.request-calculation-price,.request-calculation-totals{font-size:13px}
  .request-dialog .field{font-size:13px}
  .request-plan-delivery p{font-size:12px}
}
@media screen and (max-width:760px),screen and (max-width:1100px) and (pointer:coarse){
  .request-calculation-compact{display:block;margin:8px 0 10px;font-size:13px;line-height:1.6;font-weight:600;overflow-wrap:anywhere}
  .request-calculation-details>summary{display:list-item;cursor:pointer;min-height:40px;padding:8px 0;font-size:12px;line-height:1.7;color:#4b5940}
  .mobile-start-note{display:block;padding:12px 13px;margin:0 0 19px;border:1px solid #d9dfce;border-radius:7px;background:#f3f5ec;color:#4c5840}
  .mobile-start-note strong{font-size:13px;line-height:1.5}
  .mobile-start-note p{font-size:12px;line-height:1.65;margin:6px 0 0;color:#66705a}
  .mobile-workspace-hint:not([hidden]){display:flex;flex:none;align-items:flex-start;gap:10px;padding:10px 12px;background:#f1f4e8;border-bottom:1px solid #dbe3cc;color:#4d5d3f}
  .mobile-workspace-hint strong{font-size:12px;line-height:1.5}
  .mobile-workspace-hint p{font-size:11px;line-height:1.55;margin-top:3px;color:#69745d}
  .mobile-workspace-hint>button{font-size:22px;line-height:1;min-width:36px;min-height:36px;border-radius:5px;background:#e5ebd9;flex:none;margin-left:auto}
}
@media print{.mobile-start-note,.mobile-workspace-hint{display:none!important}}
@media(prefers-reduced-motion:reduce){.select-ui-trigger,.select-ui-arrow,.custom-room-fields>summary>span{transition:none}}

@media screen{
  .plan-piece.same-board:not(.selected){stroke:#325e68;stroke-width:2;stroke-dasharray:5 3;vector-effect:non-scaling-stroke}
  .plan-piece.selected{stroke-dasharray:none}
  .piece-reuse-parts{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
  .piece-reuse-parts button{border:1px solid #cbd8c4;background:#f5f9ef;color:#64804e;padding:5px 7px;border-radius:4px;font-size:10px;line-height:1.4;max-width:100%;overflow-wrap:anywhere;text-align:left}
  .piece-reuse-parts button:hover{background:#eaf2e0;border-color:#9bb58b}
  .piece-popover{max-height:min(60dvh,460px,calc(100% - 20px));overflow:auto}
}

/* Labels may wrap independently; controls in each shared row keep one baseline. */
@media screen{
  .field-pair{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
  .field-pair>.field,.gallery-filters>.field{align-self:stretch}
  .field-pair>.field>:is(input,textarea,.input-unit,.select-ui,.direction-controls),
  .gallery-filters>.field>:is(input,.select-ui){margin-top:auto;flex:none}
  .field-pair input,.field-pair textarea,.dialog form,.dialog .field{min-width:0;max-width:100%}
  .field-pair .input-unit{min-width:0}
  .quickbar-fields{--quick-control-height:38px;--quick-label-height:20px;align-items:end}
  .quickbar-fields>.field{display:grid;grid-template-rows:minmax(var(--quick-label-height),auto) auto;align-content:end;row-gap:5px;min-width:0}
  .quickbar-fields>.field>.select-ui .select-ui-trigger,
  .quickbar-fields .direction-controls>.select-ui .select-ui-trigger,
  .quickbar-fields .direction-angle-field input,
  .quickbar-fields .decor-picker-button,
  .quickbar-fields .native-decor-select .select-ui-trigger{height:var(--quick-control-height);min-height:var(--quick-control-height)}
  .quickbar-fields .decor-picker-button img{height:auto}
  .quickbar-fields .quick-product-heading{min-height:var(--quick-label-height)}
  .quickbar-chevron{display:block;flex:none;width:16px;height:16px;font-size:0;line-height:0}
  .quickbar-chevron::before{content:"";display:block;width:100%;height:100%;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5.5 8 4.5 4.5L14.5 8' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat}
}
@media screen and (max-width:1100px){
  .quickbar-fields{--quick-control-height:41px;--quick-label-height:18px}
  .quickbar-fields .quick-product-heading{min-height:30px}
  .direction-angle-field{width:68px}
  .quickbar-fields .direction-angle-field input{padding-left:5px;padding-right:15px}
  .direction-angle-field .input-unit>span{right:4px;font-size:11px}
}
@media screen and (max-width:680px){
  .request-dialog .field-pair{grid-template-columns:minmax(0,1fr)}
}
@media screen and (max-width:760px),screen and (max-width:1100px) and (pointer:coarse){
  .quickbar-fields{--quick-control-height:44px}
  .quickbar-fields .quick-product-heading{min-height:44px}
  .quickbar-fields .material-scope .select-ui-trigger{height:44px;min-height:44px;font-size:13px}
  .field input:not([type=hidden]),.select-ui-trigger,.dialog .select-ui-trigger{min-height:44px}
  .dialog-close{min-width:44px;min-height:44px}
}

@media screen{
  .floor-continuity{min-width:0;margin:17px 0 18px;padding:0;border:0}
  .floor-continuity legend{padding:0;margin:0 0 9px;font-size:11px;font-weight:500;line-height:1.5;color:#555c49}
  .floor-mode-options{display:grid;gap:7px;min-width:0}
  .floor-mode-options>label{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:10px 11px;border:1px solid #e0e2d7;border-radius:6px;background:#fcfcf9;cursor:pointer}
  .floor-mode-options>label:has(input:checked){border-color:#a7b495;background:#f2f5eb}
  .floor-mode-options>label:has(input:focus-visible){outline:2px solid #879d6f;outline-offset:2px}
  .floor-mode-options input[type=radio]{flex:none;width:16px;height:16px;margin:2px 0 0;accent-color:#6f805a}
  .floor-mode-options>label>span{min-width:0;flex:1}
  .floor-mode-options strong{display:block;font-size:11px;font-weight:500;line-height:1.5;color:#4e5940;overflow-wrap:anywhere}
  .floor-mode-options small{display:block;font-size:10px;line-height:1.6;color:#7e816e;margin-top:3px;overflow-wrap:anywhere}
  .floor-continuity-status{font-size:10.5px;line-height:1.65;color:#65734f;overflow-wrap:anywhere;margin:9px 0 0}
  .floor-continuity-status:empty{display:none}
  .floor-continuity .field-note{font-size:10px;margin-top:6px;line-height:1.65}
  .floor-continuity .text-button{font-size:10.5px;line-height:1.5;min-height:32px;padding:5px 0;margin-top:4px;text-align:left}
}
@media screen and (max-width:1100px){
  .floor-continuity legend{font-size:12px}
  .floor-mode-options>label{min-height:58px;padding:12px}
  .floor-mode-options strong{font-size:12px}
  .floor-mode-options small,.floor-continuity-status,.floor-continuity .field-note{font-size:11px}
  .floor-continuity .text-button{font-size:12px;min-height:44px}
}
/* Compact handoff to the main site; the editor keeps its existing header height. */
@media screen{
  .site-navigation{min-width:0;flex:1}.site-navigation>nav{display:flex;align-items:center;gap:13px;min-width:0}.site-navigation a{font-size:11px;color:#69675e;text-decoration:none;white-space:nowrap}.site-navigation a:hover{color:#283c2a;text-decoration:underline;text-underline-offset:4px}.site-city-label{margin-left:3px;min-width:0}.site-city-label .select-ui{width:124px}.site-city-label .select-ui-trigger{height:30px;min-height:30px;font-size:10.5px;background:#f7f7f2;border-color:#e2e1d8;padding-left:8px}.site-city-label select{font-size:11px;max-width:145px;background:#f7f7f2;border:1px solid #e2e1d8;border-radius:5px;padding:6px}.site-navigation #siteNavToggle,.site-navigation #siteNavPrint{display:none}.entry-decor-notice{border:1px solid #d7ddcc;border-radius:7px;padding:12px;background:#f4f6ee;margin:0 0 16px}.entry-decor-notice strong{display:block;font-size:12px;line-height:1.6;color:#42543b}.entry-decor-notice p{font-size:11px;line-height:1.65;color:#77776a;margin-top:6px}.entry-decor-notice button{margin-top:9px;font-size:11px;padding:9px 11px}
}
@media screen and (min-width:1101px) and (max-width:1450px){.topbar>.app-name,.topbar>.brand-divider{display:none}.site-navigation>nav{gap:10px}.topbar{gap:14px}.header-actions{gap:6px}.header-actions .quiet-button{padding-left:7px;padding-right:7px}}
@media screen and (max-width:1100px){
  .site-navigation{flex:none;margin-left:auto}.site-navigation>nav{display:none;position:absolute;right:12px;top:calc(var(--chrome) - 3px);width:min(280px,calc(100vw - 24px));padding:12px;flex-direction:column;align-items:stretch;gap:1px;background:#fff;border:1px solid #dfdfd4;border-radius:8px;box-shadow:0 14px 35px #34392a22;z-index:70}.site-navigation.is-open>nav{display:flex}.site-navigation a,.site-navigation #siteNavPrint{display:block;padding:12px 10px;text-align:left;font-size:13px;line-height:1.4;border-radius:4px;background:none}.site-navigation a:hover,.site-navigation #siteNavPrint:hover{background:#f2f4ec}.site-city-label{margin:7px 0;padding-top:9px;border-top:1px solid #e8e8e0}.site-city-label .select-ui{width:100%}.site-city-label .select-ui-trigger{height:42px;font-size:13px}.site-navigation #siteNavToggle{display:flex;align-items:center;justify-content:center;width:30px;height:34px;padding:6px;background:transparent;color:#767869;border-radius:4px}.site-navigation #siteNavToggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.header-actions{margin-left:0!important}.topbar .header-actions #printButton{display:none}.topbar>.brand-divider,.topbar>.app-name{display:none}
}
@media print{.site-navigation{display:none!important}}
@media screen and (max-width:1100px){.topbar:has(.site-navigation.is-open){z-index:80}}

/* PDF is a visible primary action, separate from editable browser versions. */
@media screen{
  .topbar .header-actions #printButton{display:flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:36px;padding:8px 11px;border:1px solid #c9cfbb;border-radius:5px;background:#f5f7ef;color:#46533b;gap:6px;font-size:11px;line-height:1.3;flex:none}
  .topbar .header-actions #printButton>span{display:inline!important;white-space:nowrap}
  .topbar .header-actions #printButton svg{display:block;width:16px;height:16px}
  .topbar .header-actions #printButton:hover:enabled{background:#eaf0df;border-color:#94a37e}
  .topbar .header-actions #printButton:disabled{cursor:not-allowed}
  .save-label-short,.site-project-actions{display:none}
  .pdf-export-option{display:grid;gap:10px;margin-top:20px;padding-top:17px;border-top:1px solid #e1e4d8}
  .pdf-export-option .button-outline{justify-self:start;min-height:44px;min-width:190px;font-size:12px;color:#47563b;background:#f8faf2;border-color:#cbd5bd}
  .pdf-export-option p{font-size:11.5px;line-height:1.7;color:#72765f;margin:0;max-width:390px}
  #saveDialog .dialog-footer .button-dark{width:100%;min-height:44px}
  #saveDialog form>p{font-size:12px;line-height:1.75;margin-bottom:20px;color:#737261}
}
@media screen and (max-width:1100px){
  .site-navigation>nav{max-height:calc(100dvh - var(--chrome) - 12px);overflow:auto;overscroll-behavior:contain}
}
@media screen and (max-width:760px){
  :root{--chrome:56px}
  .topbar{height:var(--chrome);min-height:var(--chrome);padding:6px 8px;gap:6px}
  .topbar .header-actions{gap:5px}
  .topbar .header-actions #newProjectButton,.topbar .header-actions #libraryButton,.topbar .header-actions #shareButton{display:none}
  .topbar .header-actions #printButton{min-height:44px;padding:8px;font-size:10.5px;gap:5px}
  .topbar .header-actions #printButton svg{width:15px;height:15px}
  .topbar .header-actions #saveButton{min-height:44px;max-width:none;padding:8px 10px;font-size:10.5px;line-height:1.3;white-space:nowrap}
  .topbar #siteNavToggle{width:44px;height:44px;min-height:44px}
  .save-label-full{display:none}
  .save-label-short{display:inline}
  .site-navigation .site-project-actions{display:grid;gap:1px;border-top:1px solid #e5e7dc;margin-top:5px;padding-top:8px}
  .site-project-actions>span{font-size:10px;line-height:1.5;color:#8a8d7d;padding:3px 10px}
  .site-project-actions>button{min-height:44px;padding:11px 10px;background:none;text-align:left;font-size:13px;line-height:1.4;border-radius:4px;color:#59624c}
  .site-project-actions>button:hover{background:#f2f4ec}
  .pdf-export-option .button-outline{width:100%;justify-self:stretch;min-width:0;font-size:13px}
  .pdf-export-option p{font-size:12px}
}
