@import url('./fonts.css');
@font-face{font-family:IDENFallback;src:local("Arial");font-display:swap}
:root{font-family:"Golos Text",Arial,IDENFallback,sans-serif;color:#252922;background:#f7f6f2;font-synthesis:none;--ink:#252922;--muted:#82867b;--line:#e5e6dc;--paper:#fdfdf9;--green:#627151;--soft:#eef0e8;--gold:#b69a6a;--red:#a34333;--control:#fff}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,summary,select{cursor:pointer}button{touch-action:manipulation}button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex:none}button{border:0}a{color:inherit;text-decoration-color:#b4baaa;text-underline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid #697b56;outline-offset:3px}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}h1,h2,h3,p{margin:0}.skip-link{position:fixed;left:16px;top:-100px;z-index:30;background:var(--ink);color:#fff;padding:12px}.skip-link:focus{top:8px}.topbar{min-height:72px;display:flex;align-items:center;gap:22px;padding:12px 30px;border-bottom:1px solid var(--line);background:#fafaf7}.brand{font-weight:800;font-size:32px;letter-spacing:-1.8px;text-decoration:none;line-height:1;position:relative;padding-right:10px}.brand-dot{font-size:32px;color:#c64a3f;position:absolute;right:0;bottom:0;letter-spacing:0}.brand-divider{height:24px;width:1px;background:#daddd0}.app-name{font-size:14px;letter-spacing:.05px;display:flex;align-items:center;gap:12px;white-space:nowrap}.beta{font-size:9px;font-weight:600;letter-spacing:1.1px;line-height:1;border:1px solid #c7cdbb;border-radius:3px;padding:5px 6px;color:#707b60;display:inline-block;vertical-align:middle}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.quiet-button{display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;font-size:12px;padding:10px 12px;white-space:nowrap}.quiet-button:hover{background:var(--soft);border-radius:4px}.help-icon{border:1px solid #89927b;border-radius:50%;width:17px;height:17px;display:inline-grid;place-items:center;font-size:11px}.button-dark,.button-outline{border-radius:4px;padding:13px 17px;font-size:12px;font-weight:600;display:inline-flex;justify-content:center;align-items:center;gap:8px}.button-dark{color:#fff;background:#30382b;border:1px solid #30382b}.button-dark:hover{background:#47523c}.button-outline{border:1px solid #cfd4c6;background:transparent}.button-outline:hover{background:var(--soft)}.text-button{padding:3px 0;font-size:12px;background:transparent;text-align:left;color:#667253;text-decoration:underline;text-underline-offset:3px}.workspace{display:grid;grid-template-columns:304px minmax(340px,1fr) 278px;min-height:calc(100vh - 72px);max-width:2200px;margin:auto}.controls{border-right:1px solid var(--line);background:#fafaf7;padding-bottom:22px}.sidebar-intro{padding:28px 25px 24px}.eyebrow{font-size:9px;letter-spacing:1.6px;font-weight:600;color:#888d7e;display:block}.sidebar-intro h1{font-size:21px;font-weight:400;letter-spacing:-.6px;margin:11px 0 9px}.sidebar-intro p{font-size:12px;color:#898c82;line-height:1.65;max-width:240px}.control-section{padding:22px 25px;border-top:1px solid var(--line)}.control-section h2{font-size:13px;font-weight:600;display:flex;align-items:center;gap:11px;margin-bottom:20px}.step{font-size:10px;font-weight:400;color:#9ca28f}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;line-height:1.5;margin-bottom:13px;color:#74796b;min-width:0}.field select,.field input{width:100%;min-width:0;border:1px solid #dcded3;border-radius:4px;background:var(--control);height:39px;padding:0 11px;font-size:12px;color:#30372b}.field select{appearance:auto;padding-right:9px}.field input:invalid:not(:placeholder-shown){box-shadow:none}.field input[aria-invalid=true]{border-color:#bd7868;background:#fff9f5}.input-unit{position:relative;display:flex;align-items:center}.input-unit input{padding-right:35px;font-variant-numeric:tabular-nums}.input-unit>span{position:absolute;right:11px;font-size:11px;color:#969c8d;pointer-events:none}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.room-area{display:flex;align-items:center;justify-content:space-between;padding:13px 0 5px;font-size:11px;color:#8a8f7e}.room-area strong{font-size:14px;font-weight:400;color:#4d5940;font-variant-numeric:tabular-nums}.field-note{color:#929687;line-height:1.6;font-size:10px;margin:8px 0 0}.cutout-fields{border-left:2px solid #d8ddcd;padding-left:11px;margin-top:2px}.material-preview{display:flex;gap:12px;align-items:center;margin:18px 0 14px}.material-preview img,.material-placeholder{width:59px;height:59px;border-radius:3px;object-fit:cover;flex:none;background:repeating-linear-gradient(2deg,#b8a07a 0 1px,#c3ad8b 1px 7px,#b9a383 7px 8px,#c4ae8d 8px 13px)}.material-preview strong{display:block;font-size:13px;font-weight:500;color:#30372b}.material-preview span{display:block;font-size:10px;line-height:1.8;color:#949888}.price-line{display:flex;align-items:center;justify-content:space-between;gap:6px}.price-line>span{font-size:13px;color:#565f49}.price-line a{font-size:10px;color:#8e947e}.advanced{margin-top:20px;border-top:1px solid var(--line)}.advanced>summary{list-style:none;padding:18px 0 0;display:flex;align-items:center;justify-content:space-between;color:#69735b;font-size:11px}.advanced>summary::-webkit-details-marker{display:none}.advanced>summary span{font-size:17px;font-weight:400;transition:transform .2s}.advanced[open]>summary span{transform:rotate(45deg)}.advanced-content{padding-top:19px}.check-field{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:#727b64;line-height:1.5;margin:13px 0}.check-field input{margin:2px 0 0;accent-color:#657550;width:14px;height:14px;flex:none}.offset-controls{margin-top:4px}.slider-field{display:flex;justify-content:space-between;font-size:10px;color:#7d846f;margin:14px 0 5px}.slider-field output{color:#4c5941;font-variant-numeric:tabular-nums}.offset-controls input[type=range]{width:100%;height:13px;margin:6px 0;accent-color:#64744e}.offset-nudge{display:flex;gap:5px;margin:12px 0 0}.offset-nudge button{height:29px;min-width:29px;border:1px solid #dce0d2;border-radius:3px;background:transparent;font-size:13px}.offset-nudge button:last-child{margin-left:auto;padding:0 9px;font-size:10px}.local-note{margin:0 25px;display:flex;gap:7px;align-items:flex-start;font-size:10px;color:#a0a592;line-height:1.6}.local-note svg{width:12px;height:14px;fill:none;stroke:currentColor;stroke-width:1.4;flex:none}.drawing-area{padding:29px 30px 25px;min-width:0;display:flex;flex-direction:column;align-self:start}.drawing-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:55px}.drawing-heading h2{font-size:23px;letter-spacing:-.8px;font-weight:400;margin-top:9px}.calculation-state{font-size:10px;color:#88907b;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.calculation-state:before{content:"";height:5px;width:5px;border-radius:50%;background:#9aa98a}.calculation-state.invalid{color:var(--red)}.calculation-state.invalid:before{background:#bf7f6b}.plan-toolbar{margin-top:26px;display:flex;justify-content:space-between;gap:8px}.view-switch{display:flex;gap:2px;background:#eaece3;padding:3px;border-radius:4px;flex:none}.view-switch button{font-size:10px;padding:7px 12px;color:#879077;background:transparent;border-radius:3px}.view-switch button.active{background:#fafbf6;box-shadow:0 1px 3px #3e4a2020;color:#536044}.zoom-tools{display:flex;align-items:center;gap:3px}.zoom-tools button{background:transparent;width:29px;height:28px;font-size:16px;border-radius:3px;display:flex;justify-content:center;align-items:center;color:#737f62}.zoom-tools button:hover,.zoom-tools button[aria-pressed=true]{background:#e8ecdf}.zoom-tools #zoomReset{font-size:10px;width:45px}.zoom-tools #panButton{margin-right:4px}.zoom-tools #panButton svg{height:15px;width:15px}.plan-canvas{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:390px;height:min(60vw,625px);max-height:calc(100vh - 230px);margin-top:16px;overflow:hidden;border:1px solid #e4e7db;border-radius:5px;background-color:#f3f4ee;background-image:radial-gradient(#c7cdbb66 .7px,transparent .7px);background-size:14px 14px}.plan-canvas svg{height:100%;width:100%;min-height:0;flex:1;user-select:none;overflow:hidden;display:block}.plan-canvas.is-panning{cursor:grab;touch-action:none}.plan-canvas.is-panning:active{cursor:grabbing}.plan-canvas.stale svg{opacity:.38;filter:grayscale(.5)}.plan-caption{position:absolute;bottom:16px;left:19px;right:19px;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none;font-size:9px;letter-spacing:.1px;color:#949b88}.plan-caption span:first-child{background:#f3f4eed9;padding:4px 6px;border-radius:3px}.plan-caption span:last-child{font-size:8px}.loading-text{font-size:120px;fill:#9aab89}.plan-empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;font-size:13px;color:#868f78;text-align:center;padding:30px;background:#f3f4ee}.plan-piece{stroke:#77664b;stroke-opacity:.44;stroke-width:.8;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .15s}.plan-piece:hover{filter:brightness(1.08);stroke:#485b35;stroke-width:1.5}.plan-piece.selected{stroke:#344c27;stroke-width:2.5;fill:#9dad78!important;filter:none}.room-outline{fill:none;stroke:#4b5340;stroke-width:1.3;vector-effect:non-scaling-stroke;pointer-events:none}.field-outline{fill:none;stroke:#8c987c;stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke;pointer-events:none}.dimension-line{stroke:#b0b7a1;stroke-width:.8;vector-effect:non-scaling-stroke;fill:none}.dimension-text{font-size:90px;fill:#89947a;font-family:Arial,sans-serif;text-anchor:middle;paint-order:stroke;stroke:#f3f4ee;stroke-width:28px;stroke-linejoin:round}.dimension-unit{font-size:68px;fill:#9ba58d}.north-label{font-size:70px;fill:#a0aa92;letter-spacing:12px;text-anchor:middle}.plan-legend{display:flex;gap:15px;flex-wrap:wrap;align-items:center;margin:15px 0 24px;font-size:9px;color:#8d957f}.plan-legend>span{display:inline-flex;align-items:center;gap:6px}.plan-legend i{width:9px;height:9px;display:inline-block;border-radius:1px;border:1px solid #9d8c70}.legend-whole{background:#c3b08c}.legend-cut{background:#ded2b8;border-color:#b8a07b!important}.legend-reused{background:#abb798;border-color:#81966c!important}.legend-hint{margin-left:auto;font-size:8px;color:#a2a993}.drawing-bottom{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;padding:21px 2px 25px;border-top:1px solid var(--line)}.small-label{display:block;letter-spacing:1.1px;font-size:8px;color:#9ba28e;margin-bottom:9px}.drawing-bottom strong{font-size:12px;font-weight:400;color:#667456}.piece-popover{position:absolute;right:15px;top:15px;width:min(245px,calc(100% - 30px));padding:19px;background:#fffff7f5;box-shadow:0 5px 25px #42512416;border:1px solid #d8decb;border-radius:4px;font-size:10px;line-height:1.6;color:#7d896d}.piece-popover strong{font-size:14px;display:block;margin:8px 0}.piece-popover p{margin-top:6px}.piece-caution{font-size:9px;border-top:1px solid var(--line);padding-top:8px;color:#9aa38d}.close-small{position:absolute;top:8px;right:9px;color:#849176;background:transparent;font-size:20px;padding:0 3px}.draft-error{padding:12px 15px;background:#fbf0e9;border:1px solid #ead6c6;color:#9d5b3a;font-size:12px;line-height:1.6;margin-top:19px;border-radius:4px}.cut-list{border-top:1px solid var(--line);font-size:11px}.cut-list>summary{display:flex;align-items:center;gap:9px;list-style:none;color:#717c60;padding:19px 0}.cut-list>summary::-webkit-details-marker{display:none}.cut-list>summary #cutListCount{color:#a1a891;font-size:10px}.cut-list .plus{margin-left:auto;font-size:17px}.cut-list[open] .plus{transform:rotate(45deg)}.cut-list-content{padding-bottom:20px}.cut-list-content>.field-note{margin:0 0 15px}.cut-piece-select{max-width:320px}.table-scroll{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:3px}table{border-collapse:collapse;width:100%;font-size:10px;text-align:left}th{position:sticky;top:0;background:#edf0e5;color:#7f8a6f;font-weight:400;padding:10px 11px;white-space:nowrap}td{padding:9px 11px;border-top:1px solid #e9ebdf;color:#71815e;font-variant-numeric:tabular-nums;white-space:nowrap}td button{background:transparent;text-decoration:underline;color:#526b3d;padding:0;font-size:inherit}.order-summary{border-left:1px solid var(--line);padding:31px 23px;background:#fafbf6;min-width:0;align-self:stretch}.summary-heading .eyebrow{font-size:8px;letter-spacing:1.3px}.summary-heading h2{font-size:18px;letter-spacing:-.4px;font-weight:400;line-height:1.3;margin:13px 0 8px}.summary-heading p{font-size:10px;color:#9ba18e;line-height:1.6}.main-quantity{display:flex;align-items:baseline;gap:10px;margin:28px 0 6px}.main-quantity strong{font-size:54px;font-weight:400;line-height:1;letter-spacing:-2px;font-variant-numeric:tabular-nums;color:#4b5c3b}.main-quantity span{font-size:10px;line-height:1.5;color:#899578;max-width:85px}.purchased-area{font-size:11px;color:#9ba68b}.quantity-list{margin-top:26px}.quantity-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-size:10px;color:#899578;margin:15px 0}.quantity-list strong{font-weight:400;font-size:11px;color:#5f7350;font-variant-numeric:tabular-nums;white-space:nowrap}.quantity-list>.quantity-sub{margin:9px 0;font-size:9px;color:#a0aa91}.quantity-sub>span:last-child{white-space:nowrap}.quantity-list>.quantity-sub+div:not(.quantity-sub){margin-top:23px}.waste-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:22px}.waste-details summary{display:flex;list-style:none;justify-content:space-between;padding:14px 0;color:#8b997b;font-size:10px}.waste-details summary::-webkit-details-marker{display:none}.waste-details dl{margin:0 0 17px;font-size:9px;color:#9aa68a;line-height:1.5}.waste-details dl>div{display:flex;justify-content:space-between;gap:9px;margin:10px 0}.waste-details dd{margin:0;text-align:right;white-space:nowrap;color:#6e825b;font-variant-numeric:tabular-nums}.cost-block{margin-top:23px}.cost-block>div{display:flex;flex-direction:column;gap:10px;font-size:10px;color:#8b997c}.cost-block strong{font-size:25px;font-weight:400;letter-spacing:-.6px;color:#435a32;font-variant-numeric:tabular-nums}.cost-block p{margin-top:10px;font-size:9px;line-height:1.7;color:#a0aa91}.stock-block{margin-top:25px;padding-top:21px;border-top:1px solid var(--line)}.stock-block .field{font-size:10px;gap:9px}.stock-block select{background:#fafbf6;height:34px;font-size:11px}.stock-status{font-size:10px;line-height:1.6;color:#99a38b;margin-top:9px}.stock-status.available{color:#75885e}.stock-status.unavailable{color:#a17e57}.stock-block .text-button{font-size:9px;margin-top:7px;color:#98a385}.warnings{margin-top:22px;display:flex;flex-direction:column;gap:9px}.warning-item{border-left:2px solid #ccbf9d;padding:2px 0 2px 10px}.warning-item strong{display:block;font-weight:400;font-size:10px;line-height:1.5;color:#9e8e68}.warning-item p{font-size:9px;color:#a4a08b;line-height:1.6;margin-top:4px}.warning-item.error{border-color:#bc8168}.warning-item.error strong{color:#a16b51}.warning-item.info{border-color:#b4c0a3}.warning-item.info strong{color:#81946c}.warning-item.info p{color:#9ba78e}.calculation-note{margin-top:25px;color:#9fa98f;font-size:9px;line-height:1.8}.calculation-note .beta{font-size:7px;padding:3px 4px;margin-right:5px}.summary-footer{display:flex;align-items:stretch;flex-direction:column;gap:13px;margin-top:24px}.summary-footer .button-outline{font-size:10px;padding:11px;color:#849572;border-color:#cbd5be}.summary-footer .text-button{text-align:center;font-size:9px;color:#9da98c}.invalid-summary{margin-top:30px;border:1px solid #ead6c6;border-radius:4px;background:#fbf2ec;padding:16px}.invalid-summary strong{font-size:13px;font-weight:400;color:#a36945}.invalid-summary p{font-size:11px;line-height:1.7;color:#b18b6b;margin-top:8px}.dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:27px;border:1px solid #dbe1d0;background:#fcfdf7;border-radius:7px;box-shadow:0 20px 80px #25321b30;color:var(--ink)}.dialog::backdrop{background:#26371f60;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.dialog-heading h2{font-size:22px;font-weight:400;letter-spacing:-.5px}.dialog-close{font-size:27px;line-height:1;background:transparent;color:#8d9a7d;padding:0 3px}.dialog>p,.dialog form>p{font-size:12px;color:#94a183;line-height:1.7;margin-bottom:22px}.dialog .field{font-size:12px}.dialog .field input{height:44px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.compact-dialog{width:min(430px,calc(100vw - 32px))}.help-dialog{width:min(650px,calc(100vw - 32px))}.help-content{font-size:12px;color:#8a9a78;line-height:1.8}.help-content h3{font-size:13px;font-weight:500;color:#586c47;margin:24px 0 7px}.help-content p{margin:7px 0}.help-content .help-lead{font-size:16px;line-height:1.6;color:#6a7d58}.saved-plans{display:flex;flex-direction:column;gap:8px}.saved-plan{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #e0e6d6;border-radius:4px}.saved-plan-main{background:transparent;text-align:left;padding:0;flex:1;min-width:0}.saved-plan-main strong{display:block;font-size:13px;font-weight:400;color:#5f774b;overflow-wrap:anywhere}.saved-plan-main span{display:block;font-size:10px;margin-top:6px;color:#a1ae93}.saved-plan-delete{background:transparent;color:#a6ad9b;font-size:11px;text-decoration:underline;padding:5px}.empty-library{padding:25px 0;color:#9aaa87;font-size:12px;line-height:1.7}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:50;max-width:calc(100vw - 32px);padding:13px 20px;background:#394b2c;color:#eff6e5;font-size:12px;line-height:1.6;border-radius:4px;box-shadow:0 5px 25px #31451e30}.print-settings{display:none}.app-failed{padding:30px;line-height:1.8;color:#9c5f45}.summary-body.is-stale{display:none}.controls:has(input[aria-invalid=true]) .room-area strong{color:#b07c54}
@media(min-width:1500px){.workspace{grid-template-columns:320px minmax(340px,1fr) 295px}.drawing-area{padding:34px 44px}.order-summary{padding:34px 29px}.plan-canvas{height:min(64vw,740px);max-height:calc(100vh - 240px)}.sidebar-intro,.control-section{padding-left:28px;padding-right:28px}.drawing-heading h2{font-size:26px}}
@media(max-width:1180px){.workspace{grid-template-columns:278px minmax(340px,1fr) 245px}.topbar{gap:17px;padding:12px 22px}.quiet-button{padding:10px 7px}.quiet-button span:not(.help-icon){display:none}.control-section,.sidebar-intro{padding-left:20px;padding-right:20px}.drawing-area{padding:27px 20px}.drawing-heading h2{font-size:20px}.drawing-heading{align-items:flex-start;flex-direction:column;gap:9px}.calculation-state{margin-bottom:0}.order-summary{padding:29px 19px}.plan-caption span:last-child{display:none}.plan-canvas{min-height:370px;height:510px;max-height:calc(100vh - 260px)}.plan-legend{gap:10px}.legend-hint{width:100%;margin-left:0}.drawing-bottom{gap:9px}.drawing-bottom strong{font-size:10px}.small-label{font-size:7px;letter-spacing:.8px}}
@media(max-width:990px){.workspace{grid-template-columns:278px minmax(0,1fr)}.order-summary{grid-column:2;border-top:1px solid var(--line);border-left:0;margin:0 20px 25px;padding:25px 23px;display:grid;grid-template-columns:1fr 1fr;gap:0 27px;border:1px solid var(--line);border-radius:5px}.controls{grid-row:1 / 3}.summary-heading{grid-column:1 / -1}.summary-body{grid-column:1}.stock-block{grid-column:2;grid-row:2;align-self:start}.warnings{grid-column:2;grid-row:2;align-self:end;margin-top:160px}.calculation-note{grid-column:1 / -1}.summary-footer{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between}.main-quantity{margin-top:24px}.drawing-area{padding-bottom:10px}.plan-canvas{min-height:380px;height:530px;max-height:none}.drawing-heading{flex-direction:row;align-items:center}.drawing-heading h2{font-size:19px}.app-name{font-size:13px}.topbar{gap:14px}.header-actions{gap:3px}.header-actions .button-dark{font-size:11px;padding:11px 12px}.brand{font-size:29px}}
@media(max-width:760px){.topbar{min-height:64px;padding:13px 17px;flex-wrap:wrap;gap:12px}.brand{font-size:30px}.app-name{font-size:12px;gap:9px}.app-name .beta{font-size:8px;padding:4px 5px}.brand-divider{height:21px}.header-actions{width:100%;border-top:1px solid var(--line);padding-top:10px;justify-content:space-between}.quiet-button{padding:7px 4px;font-size:10px;gap:5px}.quiet-button span:not(.help-icon){display:inline}.quiet-button svg{height:15px;width:15px}.quiet-button .help-icon{width:15px;height:15px;font-size:10px}.header-actions .button-dark{font-size:10px;padding:10px 12px}.workspace{display:flex;flex-direction:column}.controls{border-right:0;order:0;padding-bottom:0}.sidebar-intro{padding:25px 21px 21px}.sidebar-intro h1{font-size:24px;margin:10px 0 7px}.sidebar-intro p{max-width:none;font-size:12px}.control-section{padding:21px;border-top:1px solid var(--line)}.control-section h2{font-size:14px;margin-bottom:18px}.field{font-size:12px;gap:7px;margin-bottom:14px}.field input,.field select{height:43px;font-size:13px}.field-pair{gap:14px}.room-area{padding-top:6px;font-size:12px}.room-area strong{font-size:15px}.field-note{font-size:11px}.material-preview{margin:18px 0}.material-preview img,.material-placeholder{height:65px;width:65px}.material-preview strong{font-size:15px}.material-preview span{font-size:11px}.price-line>span{font-size:14px}.price-line a{font-size:11px}.advanced>summary{font-size:12px}.check-field{font-size:12px}.local-note{padding:0 0 20px;margin:0 21px;font-size:10px}.offset-nudge button{min-width:35px;height:34px}.slider-field{font-size:11px}.drawing-area{order:1;padding:28px 16px 15px;border-top:1px solid var(--line);background:#f2f4eb}.drawing-heading{gap:12px}.drawing-heading h2{font-size:21px;line-height:1.3;max-width:230px;margin-top:10px}.calculation-state{font-size:9px;white-space:normal;flex:none;max-width:77px;line-height:1.5}.drawing-heading .eyebrow{font-size:8px}.plan-toolbar{margin-top:24px}.view-switch button{font-size:11px;padding:8px 12px}.zoom-tools{gap:1px}.zoom-tools button{width:27px}.zoom-tools #panButton{margin-right:2px}.plan-canvas{height:410px;min-height:350px;margin-top:13px;background-color:#f7f8f1}.plan-caption{left:10px;right:10px;bottom:13px;font-size:8px}.plan-legend{gap:13px;font-size:9px;margin:16px 0 22px}.legend-hint{font-size:9px;line-height:1.5}.drawing-bottom{padding:20px 0 24px}.drawing-bottom strong{font-size:11px}.small-label{font-size:7px}.cut-list>summary{font-size:12px}.order-summary{display:block;order:2;margin:0;border:0;border-top:1px solid var(--line);border-radius:0;padding:28px 23px 32px;background:#fafcf4}.summary-heading .eyebrow{font-size:9px}.summary-heading h2{font-size:23px;margin-top:11px}.summary-heading p{font-size:12px}.main-quantity{margin-top:25px;gap:12px}.main-quantity strong{font-size:62px}.main-quantity span{font-size:12px;max-width:none}.purchased-area{font-size:12px}.quantity-list{margin-top:26px}.quantity-list>div{font-size:12px;margin:18px 0}.quantity-list strong{font-size:13px}.quantity-list>.quantity-sub{font-size:11px;margin:12px 0}.quantity-list>.quantity-sub+div:not(.quantity-sub){margin-top:25px}.waste-details summary{font-size:12px;padding:17px 0}.waste-details dl{font-size:11px}.waste-details dl>div{margin:13px 0}.cost-block>div{flex-direction:row;align-items:center;justify-content:space-between;font-size:12px}.cost-block strong{font-size:29px;white-space:nowrap}.cost-block p{font-size:10px}.stock-block{margin-top:27px}.stock-block .field{font-size:12px}.stock-block select{font-size:12px;height:40px}.stock-status{font-size:12px}.stock-block .text-button{font-size:11px}.warnings{margin-top:24px}.warning-item{padding-left:12px}.warning-item strong{font-size:12px}.warning-item p{font-size:11px}.calculation-note{font-size:11px;line-height:1.7;margin-top:26px}.calculation-note .beta{font-size:8px}.summary-footer{display:flex;flex-direction:column;gap:17px;align-items:stretch;margin-top:25px}.summary-footer .button-outline{font-size:12px;padding:14px}.summary-footer .text-button{font-size:11px}.dialog{padding:23px}.dialog-heading h2{font-size:21px}.saved-plan{padding:12px}.toast{bottom:17px;width:max-content}.control-section #patternCompatibility{margin-bottom:14px}.order-summary .invalid-summary{margin-top:23px}.table-scroll{max-height:300px}}
@media(max-width:370px){.topbar{padding-left:14px;padding-right:14px}.header-actions{gap:4px}.quiet-button{gap:4px;font-size:9px}.header-actions .button-dark{font-size:9px;padding:10px}.print-button span{display:none!important}.sidebar-intro,.control-section{padding-left:18px;padding-right:18px}.drawing-area{padding-left:12px;padding-right:12px}.drawing-heading h2{font-size:19px;max-width:200px}.plan-canvas{height:355px;min-height:320px}.zoom-tools #panButton{display:none}.plan-legend{gap:10px}.drawing-bottom{gap:7px}.drawing-bottom strong{font-size:10px}.small-label{font-size:6px}.order-summary{padding-left:20px;padding-right:20px}.cost-block>div{font-size:11px}.cost-block strong{font-size:25px}.dialog-heading h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{@page{size:A4 portrait;margin:12mm}html,body{background:#fff!important;color:#222!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:10pt}.topbar{padding:0 0 5mm;background:none;border-bottom:1px solid #ddd;min-height:0}.brand{font-size:25pt}.brand-divider{height:18pt}.app-name{font-size:11pt}.header-actions,.controls,.plan-toolbar,.plan-caption,.legend-hint,.piece-popover,.summary-footer,.stock-block,.local-note,.calculation-state,.cut-piece-select,.dialog,.toast,.skip-link,.draft-error{display:none!important}.workspace{display:block;min-height:0;max-width:none}.drawing-area{display:block;padding:7mm 0 0;background:#fff}.drawing-heading{display:block;min-height:0}.drawing-heading h2{font-size:17pt;max-width:none}.eyebrow{font-size:7pt}.plan-canvas{background:#fff!important;border:0;margin:3mm 0 0;min-height:0;height:105mm;max-height:none;break-inside:avoid}.plan-canvas svg{height:105mm;opacity:1!important;filter:none!important}.plan-legend{margin:2mm 0 5mm;font-size:7pt;gap:5mm}.drawing-bottom{padding:4mm 0;gap:8mm;grid-template-columns:1fr 1fr 1fr}.small-label{font-size:6pt}.drawing-bottom strong{font-size:9pt}.print-settings{display:block;border-top:1px solid #ddd;padding:4mm 0;font-size:8pt;line-height:1.7;color:#555}.order-summary{display:block;border:0;background:none;margin:0;padding:5mm 0;break-inside:avoid}.summary-heading h2{font-size:14pt;margin:2mm 0}.summary-heading p{font-size:8pt}.summary-body{display:block}.main-quantity{margin:4mm 0 2mm}.main-quantity strong{font-size:26pt;letter-spacing:0}.main-quantity span{font-size:9pt;max-width:none}.purchased-area{font-size:9pt}.quantity-list{margin-top:3mm;display:grid;grid-template-columns:1fr 1fr;gap:0 8mm}.quantity-list>div,.quantity-list>.quantity-sub{font-size:8pt;margin:2mm 0}.quantity-list strong{font-size:8pt}.quantity-list>.quantity-sub+div:not(.quantity-sub){margin:2mm 0}.waste-details{display:block;margin-top:3mm;padding:3mm 0}.waste-details summary{display:none}.waste-details dl{display:grid!important;grid-template-columns:1fr 1fr;gap:0 8mm;font-size:7pt;margin:0}.waste-details dl>div{margin:1mm 0}.cost-block{margin-top:3mm}.cost-block>div{display:flex;flex-direction:row;font-size:9pt}.cost-block strong{font-size:16pt}.cost-block p{font-size:7pt}.warnings{margin-top:4mm;gap:2mm}.warning-item strong{font-size:8pt}.warning-item p{font-size:7pt}.calculation-note{font-size:8pt;margin-top:4mm;line-height:1.6}.calculation-note .beta{font-size:6pt}.cut-list{margin-top:3mm;break-before:page}.cut-list:not([open]){display:none}.cut-list>summary{font-size:10pt;padding:4mm 0}.cut-list .plus{display:none}.cut-list-content{display:block!important}.cut-list-content>.field-note{font-size:7pt;margin-bottom:3mm}.table-scroll{overflow:visible;max-height:none;border:0}table{font-size:7pt}th,td{padding:2mm}th{position:static}.plan-piece{stroke-width:.3}.room-outline{stroke-width:.8}.invalid-summary{font-size:10pt}.summary-body.is-stale{display:none!important}}

.sidebar-intro h1,.drawing-heading h2,.summary-heading h2,.main-quantity strong,.cost-block strong,.dialog-heading h2{font-family:Onest,Arial,sans-serif}

.piece-popover .piece-diagram{display:block;width:100%;height:60px;margin:10px 0 5px;min-height:0;flex:none}.piece-popover .piece-diagram rect,.piece-popover .piece-diagram polygon{vector-effect:non-scaling-stroke;stroke-width:.8px}.piece-popover .piece-diagram polygon{stroke-width:1px}.controls #cutoutSideNote{margin:-4px 0 13px}
@media print{.draft-error:not([hidden]){display:block!important;background:#fff1df;border:1px solid #b85f33;margin:4mm 0;font-size:9pt;color:#864d2c}.plan-canvas.stale{border:1px solid #b85f33}.plan-canvas.stale:after{content:'ПРЕДЫДУЩИЙ ВАРИАНТ - ТЕКУЩИЕ НАСТРОЙКИ НЕ ПРОВЕРЕНЫ';position:absolute;bottom:0;left:0;right:0;padding:3mm;background:#fff1df;color:#864d2c;text-align:center;font-size:8pt}}

/* Comfortable reading sizes; secondary labels still carry essential information. */
@media screen{
.field{font-size:12px;color:#62685e}.field select,.field input{font-size:14px;height:42px}.input-unit>span{font-size:12px;color:#69705f}.field-note{font-size:11.5px;color:#69705f;line-height:1.65}.sidebar-intro p{font-size:12.5px;color:#69705f}.control-section h2{font-size:14px}.step{font-size:11px;color:#767f6b}.eyebrow{font-size:10px;color:#737c68}.room-area{font-size:12px;color:#69705f}.room-area strong{font-size:15px;color:#435835}.material-preview span{font-size:11.5px;color:#69705f}.material-preview strong{font-size:14px}.price-line>span{font-size:14px;color:#4e623e}.price-line a{font-size:11.5px;color:#667653}.advanced>summary{font-size:12px;color:#5e704d}.check-field{font-size:12px;color:#626e56}.local-note{font-size:11px;color:#69705f}.slider-field{font-size:11.5px;color:#69705f}.offset-nudge button{min-height:34px;min-width:34px}.offset-nudge button:last-child{font-size:11.5px}.view-switch button{font-size:11.5px;padding:8px 11px;color:#637353}.zoom-tools button{height:34px;width:32px;color:#5d704b}.zoom-tools #zoomReset{font-size:11px;width:45px}.calculation-state{font-size:11px;color:#647752}.plan-caption{font-size:10.5px;color:#647257}.plan-caption span:last-child{font-size:10px}.plan-legend{font-size:11px;color:#627450;gap:11px}.legend-hint{font-size:10.5px;color:#69785b}.small-label{font-size:9px;color:#6d795f;line-height:1.5}.drawing-bottom strong{font-size:12px;color:#50643f}.cut-list>summary{font-size:12px;color:#586f45}.cut-list>summary #cutListCount{font-size:11px;color:#718161}.summary-heading .eyebrow{font-size:9px;color:#6c795f}.summary-heading p{font-size:11.5px;color:#69705f}.main-quantity span{font-size:12px;color:#647653;max-width:110px}.purchased-area{font-size:12px;color:#69785a}.quantity-list>div{font-size:11.5px;color:#626e56;line-height:1.6;gap:8px}.quantity-list strong{font-size:12px;color:#4d663b}.quantity-list>.quantity-sub{font-size:10.5px;color:#69775d}.waste-details summary{font-size:11.5px;color:#65774f}.waste-details dl{font-size:10.5px;color:#69765d}.waste-details dd{color:#4d683b}.cost-block>div{font-size:12px;color:#667652}.cost-block p{font-size:11px;color:#69705f;line-height:1.65}.stock-block .field{font-size:11.5px}.stock-block select{font-size:12px;height:39px}.stock-status{font-size:11.5px;color:#69705f}.stock-status.available{color:#52713d}.stock-status.unavailable{color:#8b6339}.stock-block .text-button{font-size:11.5px;color:#64794d}.warning-item strong{font-size:11.5px;color:#81673f}.warning-item p{font-size:11px;color:#746b52;line-height:1.65}.warning-item.info strong{color:#5b7545}.warning-item.info p{color:#68795b}.calculation-note{font-size:11px;color:#69705f;line-height:1.75}.summary-footer .button-outline{font-size:11.5px;min-height:42px;color:#566e41}.summary-footer .text-button{font-size:11.5px;color:#62794a}.piece-popover{font-size:11px;color:#5f7450}.piece-popover .piece-caution{font-size:10.5px;color:#6e7f5f}.dialog>p,.dialog form>p{color:#687c55}.help-content{color:#657b51}.saved-plan-main span{font-size:11px;color:#6d825a}.empty-library{color:#6c8257}.saved-plan-delete{min-height:38px;color:#697d58}.saved-plan-main{min-height:42px}.table-scroll th{color:#5d7349;font-size:11px}.table-scroll td{color:#5b7446;font-size:11px}.offset-controls input[type=range]{height:19px}.help-content .help-lead{color:#536f40}.text-button{min-height:30px}.local-note svg{margin-top:2px}
}
@media screen and (max-width:760px){
.field input,.field select{font-size:16px;min-height:44px}.field{font-size:13px}.field-note{font-size:12px}.header-actions .button-dark{min-height:40px}.quiet-button{min-height:40px}.sidebar-intro p{font-size:13px}.material-preview span{font-size:12px}.price-line a{font-size:12px}.view-switch button{min-height:36px;font-size:11px;padding:8px 10px}.zoom-tools button{height:36px;width:33px}.zoom-tools #zoomReset{width:43px}.plan-caption{font-size:10px}.calculation-state{font-size:10.5px;max-width:84px}.plan-legend{font-size:11px;gap:12px}.legend-hint{font-size:11px}.drawing-bottom strong{font-size:11px}.small-label{font-size:8px}.quantity-list>div{font-size:12px}.quantity-list>.quantity-sub{font-size:11.5px}.quantity-list strong{font-size:13px}.summary-heading p{font-size:12px}.summary-heading .eyebrow{font-size:10px}.purchased-area{font-size:13px}.waste-details summary{font-size:12px}.waste-details dl{font-size:11.5px}.cost-block>div{font-size:12px}.cost-block p{font-size:11.5px}.stock-block .field{font-size:12px}.stock-block select{font-size:16px;min-height:44px}.stock-status{font-size:12px}.warning-item strong{font-size:12px}.warning-item p{font-size:11.5px}.calculation-note{font-size:11.5px}.summary-footer .button-outline{font-size:12px;min-height:44px}.summary-footer .text-button{font-size:12px;min-height:40px}.offset-nudge button{min-height:40px;min-width:40px}.check-field{font-size:12.5px}.check-field input{width:17px;height:17px;margin-top:1px}.slider-field{font-size:12px}.offset-controls input[type=range]{height:24px}.dialog .field input{font-size:16px}.dialog-footer button{min-height:44px}.saved-plan-delete{min-height:44px}.local-note{font-size:11.5px}
}
@media screen and (max-width:370px){.view-switch button{padding:8px 9px}.zoom-tools button{width:32px}.drawing-bottom strong{font-size:10.5px}.small-label{font-size:7.5px}.calculation-state{max-width:77px}.drawing-heading h2{font-size:19px}}
.drawing-area{width:100%;max-width:100%}.cut-list,.cut-list-content,.table-scroll{min-width:0;max-width:100%;width:100%}.table-scroll{overflow-x:auto}.cut-list summary{min-width:0}.cut-list summary #cutListCount{min-width:0}

.mobile-nav{display:none}.header-actions .button-dark{min-height:44px}.calculation-assumptions{border-top:1px solid #e0e5d6;margin-top:3px}.calculation-assumptions>summary{font-size:11.5px;line-height:1.6;color:#62794b;padding:12px 0;cursor:pointer}.assumptions-content{display:flex;flex-direction:column;gap:12px;padding:1px 0 7px}.herringbone-estimate{font-size:11.5px;line-height:1.7;color:#61754d;border-left:2px solid #b6c2a4;padding-left:10px}
@media screen and (max-width:760px){html{scroll-behavior:smooth}body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;justify-content:space-around;align-items:stretch;background:#fcfdf7f5;backdrop-filter:blur(14px);border-top:1px solid #dce3d1;box-shadow:0 -5px 20px #4a5e3010;padding:5px 12px calc(5px + env(safe-area-inset-bottom))}.mobile-nav a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;flex:1;font-size:12px;color:#4e693a;text-decoration:none;border-radius:3px}.mobile-nav a:hover,.mobile-nav a:focus-visible{background:#edf2e4}.mobile-nav a span{font-size:9px;color:#7e916b}.toast{bottom:calc(80px + env(safe-area-inset-bottom))}#plannerForm,#drawingTitle,#summaryTitle{scroll-margin-top:20px}.header-actions .button-dark{min-height:44px}.calculation-assumptions>summary,.herringbone-estimate{font-size:12px}}
@media print{.mobile-nav{display:none!important}.calculation-assumptions{border:0;margin:2mm 0}.calculation-assumptions>summary{font-size:8pt;padding:1mm 0}.calculation-assumptions .assumptions-content{display:flex!important;gap:2mm}.calculation-assumptions .warning-item{display:block!important}.herringbone-estimate{font-size:8pt;line-height:1.6}.calculation-assumptions[open] .assumptions-content,.calculation-assumptions:not([open]) .assumptions-content{display:flex!important}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
.optimization-controls{margin-top:20px;padding-top:17px;border-top:1px solid #e0e5d6}.optimization-controls .button-outline{width:100%;min-height:40px;color:#526b40;border-color:#bdcbb0}.optimization-status{font-size:11.5px;line-height:1.7;color:#516f3b;background:#edf2e4;border-left:2px solid #aabf96;padding:10px;margin-top:12px;overflow-wrap:anywhere}.optimization-controls .field-note{margin-top:10px}#plannerForm[aria-busy=true] .optimization-controls .button-outline{opacity:.7;cursor:wait}@media screen and (max-width:760px){.optimization-controls .button-outline{min-height:44px;font-size:12px}.optimization-status{font-size:12px}}
/* Canvas workspace: each panel owns its scroll; the room stays in view. */
@media screen {
  :root{--chrome:60px;--panel-bg:#fcfcfa;--canvas-bg:#f5f6f3;--ink:#202923;--muted:#667168;--line:#e0e5df;--green:#50705a}
  html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
  body{height:100vh;height:100dvh;display:flex;flex-direction:column;padding:0;min-width:280px;background:#f7f8f5}
  .topbar{height:var(--chrome);min-height:var(--chrome);flex:none;padding:10px 22px;gap:18px;background:#fff;border-bottom-color:#e1e6e0;z-index:10}
  .brand{font-size:30px}.brand-dot{font-size:30px}.brand-divider{height:22px}.app-name{font-size:13px;gap:10px}.beta{font-size:8px;padding:4px 5px;letter-spacing:1px}
  .header-actions{gap:6px}.header-actions .button-dark{min-height:36px;padding:10px 15px;font-size:11.5px;border-radius:6px;background:#283d30;border-color:#283d30}.quiet-button{min-height:36px;padding:8px 10px;font-size:11.5px}
  .workspace{display:grid;grid-template-columns:276px minmax(0,1fr) 274px;grid-template-rows:minmax(0,1fr);height:calc(100% - var(--chrome));min-height:0;width:100%;max-width:none;margin:0;flex:1;overflow:hidden;position:relative}
  .controls,.order-summary,.details-panel{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8d1c7 transparent;scrollbar-gutter:stable}
  .controls{grid-area:1/1;align-self:stretch;padding:0 0 22px;background:var(--panel-bg);border-right:1px solid var(--line)}
  .sidebar-intro{padding:22px 21px 19px}.sidebar-intro h1{font-size:19px;font-weight:500;letter-spacing:-.6px;margin:8px 0}.sidebar-intro p{font-size:11.5px;line-height:1.65;color:#6b776c}.eyebrow{font-size:9px;letter-spacing:1.2px;color:#79867b}
  .control-section{padding:21px}.control-section h2{font-size:13px;margin-bottom:16px;gap:10px}.step{font-size:10px;color:#87978a}.field{font-size:11.5px;color:#5d6c60;gap:6px;margin-bottom:12px}.field input,.field select{height:39px;min-height:39px;font-size:13px;border-color:#d9e0d7;border-radius:5px;background:#fff;color:#283e2f}.field input:focus,.field select:focus{border-color:#7b9980}.field-pair{gap:10px}.field-note{font-size:10.5px;line-height:1.65;color:#738073}.input-unit>span{font-size:11px;color:#738171}.room-area{font-size:11.5px;padding-top:6px}.room-area strong{font-size:14px}.custom-room-fields{margin:4px 0 14px;padding:11px;background:#edf3ed;border:1px solid #dce6db;border-radius:6px}.custom-room-fields .field-note{font-size:10.5px;margin:0;color:#607663}.room-edit-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;align-items:center}.room-edit-actions .button-outline{padding:7px 5px;font-size:10px;min-height:32px;background:#fff;border-color:#cddbcf}.room-edit-actions .text-button{font-size:10px;text-align:center;min-height:32px}.room-edit-actions #drawRoomButton,.room-edit-actions #cancelDrawButton{grid-column:1/-1}.room-edit-actions #resetRoomButton{grid-column:1/-1;grid-row:4}
  .material-preview{margin:15px 0 12px;gap:11px}.material-preview img,.material-placeholder{width:52px;height:52px}.material-preview strong{font-size:13px}.material-preview span{font-size:10.5px}.price-line>span{font-size:12px}.price-line a{font-size:10.5px}.optimization-controls{margin-top:16px;padding-top:15px}.optimization-controls .button-outline{min-height:36px;font-size:11px;border-radius:5px}.optimization-controls .field-note{font-size:10px}.optimization-status{font-size:10.5px}.advanced{margin-top:16px}.advanced>summary{font-size:11px;padding-top:16px}.advanced-content{padding-top:16px}.check-field{font-size:11px}.local-note{font-size:10px;margin:0 21px}.slider-field{font-size:10.5px}.offset-nudge button{min-width:31px;min-height:31px;font-size:12px}.offset-nudge button:last-child{font-size:10px}
  .drawing-area{grid-area:1/2;align-self:stretch;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;padding:19px 20px 10px;background:#f4f6f2;overflow:hidden;width:auto;max-width:none}
  .drawing-heading{min-height:35px;flex:none;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.drawing-heading .eyebrow{font-size:8px;letter-spacing:1.3px}.drawing-heading h2{font-size:19px;font-weight:500;letter-spacing:-.5px;margin-top:4px;max-width:none}.calculation-state{font-size:10px;max-width:none;white-space:nowrap;color:#66816c}.calculation-state:before{background:#7ca783}
  .edit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;flex:none;padding:5px;background:#fff;border:1px solid #dce3da;border-radius:8px;box-shadow:0 1px 2px #203f2210}
  .canvas-tools{display:flex;align-items:center;gap:3px;min-width:0}.canvas-tool{display:flex;align-items:center;gap:6px;justify-content:center;height:34px;padding:0 10px;background:transparent;color:#69786b;font-size:10.5px;white-space:nowrap;border-radius:5px}.canvas-tool svg{height:17px;width:17px;stroke-width:1.5}.canvas-tool:hover{background:#edf3eb;color:#304d37}.canvas-tool.active,.canvas-tool[aria-pressed=true]{background:#314b39;color:#fff;box-shadow:0 1px 2px #16351a20}.history-tools{display:flex;align-items:center;gap:2px;border-left:1px solid #e6ebe2;padding-left:7px;flex:none}.history-tools button{height:32px;width:32px;display:grid;place-items:center;background:transparent;color:#506a55;border-radius:4px}.history-tools button:hover:enabled{background:#edf3eb}.history-tools button:disabled{opacity:.3;cursor:default}.history-tools svg{height:16px;width:16px}
  .plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:9px;flex:none;min-height:31px}.view-switch{padding:2px;border-radius:5px;background:#e8ede6}.view-switch button{padding:6px 10px;font-size:10px;min-height:28px;color:#71816c}.view-switch button.active{color:#3f6147;background:#fff;box-shadow:0 1px 2px #2c40211a}.edit-hint{font-size:10px;color:#768571;line-height:1.5;min-width:0;max-width:245px;text-align:center;margin:0 2px}.zoom-tools{gap:1px;flex:none}.zoom-tools button{height:30px;width:28px;font-size:16px;color:#5c735a}.zoom-tools #zoomReset{width:42px;font-size:10px}.zoom-tools #panButton{display:none}
  .plan-canvas{display:flex;position:relative;flex:1 1 0;height:auto;min-height:0;max-height:none;margin-top:9px;border:1px solid #dbe2d7;border-radius:7px;background-color:#fafbf8;background-image:linear-gradient(#d6ddd33d 1px,transparent 1px),linear-gradient(90deg,#d6ddd33d 1px,transparent 1px);background-size:24px 24px;box-shadow:inset 0 0 20px #3d662a04;touch-action:none}
  .plan-canvas #planSvg{height:100%;width:100%;min-height:0;flex:1;outline:none}.plan-caption{bottom:10px;left:12px;right:12px;font-size:9px;color:#7b8d75}.plan-caption span:first-child{background:#fafbf8e6}.plan-caption span:last-child{font-size:9px}.plan-legend{margin:10px 0 0;flex:none;gap:12px;font-size:9.5px;color:#6d7f62;min-height:17px}.plan-legend .legend-hint{font-size:9px;margin-left:auto;line-height:1.5}.plan-legend i{width:8px;height:8px}
  .draft-error{margin-top:8px;padding:8px 11px;font-size:10.5px;line-height:1.5;flex:none;max-height:80px;overflow-y:auto}.plan-empty{font-size:12px}.room-outline{stroke:#445f4b;stroke-width:1.4}.dimension-line{stroke:#9bafa0;stroke-width:.8}.dimension-text{fill:#55715e;stroke:#fafbf8;stroke-width:25px;font-family:"Golos Text",Arial,sans-serif}.field-outline{stroke:#8daa85}.plan-piece{transition:none;stroke-opacity:.36}.plan-piece:hover{stroke:#45714c;stroke-width:1.3}.plan-piece.selected{stroke:#214f32;stroke-width:2.2;fill:#a3b88b!important}
  .plan-canvas[data-tool=room] .plan-piece,.plan-canvas[data-tool=pattern] .plan-piece{cursor:inherit}.plan-canvas[data-tool=room]{cursor:crosshair}.plan-canvas[data-tool=pattern]{cursor:move}.plan-canvas[data-tool=pan]{cursor:grab}.plan-canvas[data-tool=pan]:active,.plan-canvas.is-dragging{cursor:grabbing}.wall-hit{stroke:transparent;stroke-width:18;fill:none;vector-effect:non-scaling-stroke;cursor:move;pointer-events:stroke}.wall-hit:hover,.wall-selected{stroke:#5a9a73;stroke-opacity:.35;stroke-width:8;vector-effect:non-scaling-stroke}.room-handle{fill:#fff;stroke:#3d7954;stroke-width:2;vector-effect:non-scaling-stroke;cursor:move;filter:drop-shadow(0 1px 2px #20472e20)}.room-handle:hover,.room-handle.selected{fill:#3d7954;stroke:#fff;stroke-width:2}.room-handle-hit{fill:transparent;stroke:none;cursor:move;pointer-events:all}.dimension-hit{cursor:pointer;pointer-events:all}.dimension-hit:hover .dimension-text,.dimension-text.editable:hover{fill:#244b30;stroke:#edf6eb}.dimension-hit rect{fill:#fff;fill-opacity:.94;stroke:#dce7d9;stroke-width:1;vector-effect:non-scaling-stroke}.dimension-hit:hover rect{fill:#edf6eb;stroke:#6c9975}.pattern-origin{stroke:#2e7553;stroke-width:1.5;vector-effect:non-scaling-stroke;fill:#fff;cursor:move}.drawing-preview{fill:#6ca4791a;stroke:#4f8d66;stroke-width:2;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.drawing-point{fill:#4b855c;stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}.drawing-close-handle{fill:#fff;stroke:#3a7d50;stroke-width:2;cursor:pointer;vector-effect:non-scaling-stroke}
  .piece-popover{top:10px;right:10px;max-height:calc(100% - 20px);overflow-y:auto;width:min(228px,calc(100% - 20px));font-size:10px;padding:15px;border-color:#d3dfce;background:#fffffcf7;box-shadow:0 8px 30px #203b201c;border-radius:6px}.piece-popover strong{font-size:13px}.piece-popover .piece-caution{font-size:9.5px}.piece-popover .piece-diagram{height:52px;margin-top:8px}
  .dimension-editor{position:absolute;z-index:5;top:20px;left:50%;transform:translateX(-50%);width:212px;max-width:calc(100% - 20px);padding:11px 12px;background:#fff;border:1px solid #a9c4ac;border-radius:7px;box-shadow:0 6px 25px #244b292b}.dimension-editor label{display:block;font-size:10.5px;font-weight:500;color:#4b6b52;margin-bottom:7px}.dimension-editor>div{display:flex;gap:5px}.dimension-editor input{width:100%;min-width:0;height:35px;border:1px solid #cedecc;border-radius:4px;padding:0 8px;font-size:14px;color:#2b5739}.dimension-editor button{height:35px;min-width:31px;border-radius:4px;background:#eaf2e6;color:#3d6749;font-size:16px}.dimension-editor button[type=submit]{background:#32553d;color:#fff}
  .inspector{grid-area:1/3;display:flex;flex-direction:column;min-height:0;min-width:0;height:100%;background:#fff;border-left:1px solid var(--line);overflow:hidden}.inspector-tabs{display:flex;align-items:center;gap:20px;flex:none;height:49px;padding:0 20px;border-bottom:1px solid var(--line);background:#fff}.inspector-tabs button{height:100%;padding:2px 1px 0;background:transparent;color:#8a978a;font-size:12px;font-weight:500;position:relative}.inspector-tabs button.active,.inspector-tabs button[aria-selected=true]{color:#314d37}.inspector-tabs button.active:after,.inspector-tabs button[aria-selected=true]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#456e4d;border-radius:2px}
  .order-summary{display:block;grid-area:auto;align-self:auto;flex:1;width:100%;margin:0;padding:22px 20px 25px;background:#fff;border:0;border-radius:0}.summary-heading .eyebrow{font-size:8px;letter-spacing:1.2px}.summary-heading h2{font-size:18px;font-weight:500;margin:9px 0 7px;line-height:1.3}.summary-heading p{font-size:10.5px;color:#84917e}.main-quantity{margin:23px 0 7px;gap:11px}.main-quantity strong{font-size:49px;letter-spacing:-1.7px;color:#375a3e}.main-quantity span{font-size:10.5px;color:#6d8365;max-width:110px}.purchased-area{font-size:11px;color:#7e8d76}.quantity-list{margin-top:21px}.quantity-list>div{font-size:10.5px;line-height:1.65;margin:13px 0;color:#687b61;gap:10px}.quantity-list strong{font-size:11px;color:#41633e}.quantity-list>.quantity-sub{font-size:9.5px;margin:8px 0;color:#87947d}.quantity-list>.quantity-sub+div:not(.quantity-sub){margin-top:18px}.waste-details{margin-top:18px}.waste-details summary{font-size:10.5px;padding:13px 0}.waste-details dl{font-size:9.5px}.cost-block{margin-top:20px}.cost-block>div{font-size:11px;gap:9px;flex-direction:column;align-items:flex-start}.cost-block strong{font-size:26px;letter-spacing:-.7px;color:#2d5938}.cost-block p{font-size:10px;line-height:1.65;margin-top:9px}.stock-block{margin-top:21px;padding-top:19px}.stock-block .field{font-size:10.5px;gap:7px}.stock-block select{height:36px;min-height:36px;font-size:12px;background:#fbfdf8}.stock-status{font-size:10.5px;color:#74846a;line-height:1.6}.stock-block .text-button{font-size:10.5px;min-height:27px}.warnings{margin-top:19px;gap:11px}.warning-item strong{font-size:10.5px}.warning-item p{font-size:10px}.calculation-note{font-size:10px;line-height:1.75;margin-top:20px}.summary-footer{gap:11px;margin-top:21px}.summary-footer .button-outline{min-height:37px;padding:9px;font-size:10.5px}.summary-footer .text-button{font-size:10.5px;min-height:30px}.calculation-assumptions>summary,.herringbone-estimate{font-size:10.5px}.invalid-summary{margin-top:22px}.invalid-summary p{font-size:11px}
  .details-panel{display:none;flex:1;padding:22px 20px 25px;background:#fff}.details-heading h2{font-family:Onest,Arial,sans-serif;font-size:18px;font-weight:500;margin:9px 0 7px;letter-spacing:-.4px}.details-heading p{font-size:10.5px;line-height:1.6;color:#7b8d71}.details-panel .drawing-bottom{display:flex;flex-direction:column;padding:18px 0 6px;gap:14px;border:0}.details-panel .drawing-bottom>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.details-panel .small-label{margin:0;font-size:8px;letter-spacing:.8px}.details-panel .drawing-bottom strong{font-size:10.5px}.details-panel .cut-list{margin-top:16px}.details-panel .cut-list>summary{font-size:11px;line-height:1.5;padding:15px 0;gap:7px}.details-panel .cut-list>summary #cutListCount{font-size:10px}.details-panel .cut-list-content>.field-note{font-size:10px;line-height:1.6}.details-panel .cut-piece-select{font-size:10.5px}.details-panel .cut-piece-select select{font-size:11px;height:37px;min-height:37px}.details-panel .table-scroll{max-height:none;overflow-x:auto}.details-panel table{min-width:395px}.details-panel th,.details-panel td{font-size:9.5px;padding:8px}.details-panel #cutListNote{font-size:10px}.workspace[data-panel=details] .order-summary{display:none}.workspace[data-panel=details] .details-panel{display:block}.workspace[data-panel=details] .inspector-tabs button[data-panel-tab=summary]{color:#8a978a}.workspace[data-panel=details] .inspector-tabs button[data-panel-tab=summary]:after{display:none}.workspace[data-panel=details] .inspector-tabs button[data-panel-tab=details]{color:#314d37}.workspace[data-panel=details] .inspector-tabs button[data-panel-tab=details]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#456e4d}
  .mobile-nav{display:none}.toast{bottom:20px;z-index:60}.dialog{max-height:calc(100dvh - 40px)}.dialog,.dialog input{border-radius:7px}.dialog-heading h2{font-size:21px}.print-settings{display:none}.plan-canvas:focus-within{border-color:#93ad91}.controls input,.controls select{scroll-margin-block:70px}.plan-canvas.is-drawing .plan-piece{pointer-events:none}
}
@media screen and (min-width:1600px){.workspace{grid-template-columns:300px minmax(0,1fr) 300px}.drawing-area{padding:23px 28px 13px}.sidebar-intro,.control-section{padding-left:25px;padding-right:25px}.order-summary,.details-panel{padding-left:25px;padding-right:25px}.inspector-tabs{padding-left:25px}.canvas-tool{padding:0 13px;font-size:11px}.edit-hint{font-size:11px;max-width:360px}.plan-legend{font-size:10px}.drawing-heading h2{font-size:21px}.plan-canvas{margin-top:11px}.main-quantity strong{font-size:55px}}
@media screen and (min-width:1101px) and (max-width:1250px){.workspace{grid-template-columns:252px minmax(0,1fr) 248px}.drawing-area{padding:17px 14px 9px}.control-section,.sidebar-intro{padding-left:18px;padding-right:18px}.order-summary,.details-panel{padding-left:17px;padding-right:17px}.edit-toolbar{gap:5px}.canvas-tool{padding:0 7px;font-size:9.5px;gap:5px}.history-tools{padding-left:4px}.history-tools button{width:27px}.edit-hint{font-size:9px;max-width:160px}.plan-legend .legend-hint{display:none}.drawing-heading h2{font-size:18px}.calculation-state{font-size:9px}}
@media screen and (max-width:1100px){
  :root{--chrome:52px;--mobile-nav:55px}
  .topbar{height:var(--chrome);min-height:var(--chrome);padding:8px 17px;gap:13px}.brand{font-size:26px}.brand-dot{font-size:27px}.brand-divider{height:19px}.app-name{font-size:12px;gap:7px}.app-name .beta{font-size:7px;padding:4px}.header-actions{gap:4px}.header-actions .button-dark{font-size:10.5px;min-height:34px;padding:8px 12px}.quiet-button{padding:7px;min-height:34px}.quiet-button span:not(.help-icon){display:none}.quiet-button svg{width:17px;height:17px}
  .workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,52fr) minmax(0,48fr);height:calc(100% - var(--chrome) - var(--mobile-nav) - env(safe-area-inset-bottom));min-height:0;margin:0 0 calc(var(--mobile-nav) + env(safe-area-inset-bottom));overflow:hidden;border:0}
  .drawing-area{grid-area:1/1;display:flex;min-height:0;height:100%;padding:10px 14px 8px;order:0;border:0;border-bottom:1px solid #dce4d9;background:#f3f6f0;z-index:2}.drawing-heading{min-height:23px;align-items:center;flex-direction:row;gap:7px}.drawing-heading .eyebrow{display:none}.drawing-heading h2{font-size:15px;line-height:1.35;letter-spacing:-.3px;margin:0;max-width:none}.calculation-state{font-size:9px;line-height:1.4;max-width:none;white-space:nowrap;margin:0}.calculation-state:before{width:4px;height:4px}.edit-toolbar{margin-top:8px;padding:4px;border-radius:6px;gap:5px;box-shadow:0 1px 2px #203f220c}.canvas-tools{gap:2px}.canvas-tool{height:32px;padding:0 8px;gap:5px;font-size:10px}.canvas-tool svg{width:16px;height:16px}.history-tools{padding-left:5px;gap:1px}.history-tools button{width:30px;height:30px}.history-tools svg{width:15px;height:15px}.plan-toolbar{margin-top:6px;min-height:28px;gap:7px}.view-switch button{font-size:9px;padding:5px 9px;min-height:27px}.view-switch{padding:1px}.edit-hint{max-width:none;flex:1;font-size:9px;text-align:left;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zoom-tools button{height:27px;width:27px}.zoom-tools #zoomReset{font-size:9px;width:38px}.plan-canvas{flex:1;min-height:0;max-height:none;height:auto;margin-top:5px;border-radius:6px;background-size:20px 20px}.plan-caption{font-size:8px;bottom:7px;left:8px;right:8px}.plan-caption span:last-child{font-size:8px;display:none}.plan-legend{display:none}.draft-error{font-size:10px;padding:5px 9px;max-height:46px;margin-top:5px}.piece-popover{width:196px;padding:11px;font-size:9px}.piece-popover strong{font-size:12px;margin:6px 0}.piece-popover .piece-caution{font-size:8.5px}.piece-popover .piece-diagram{height:43px;margin:7px 0 3px}.piece-popover p{margin-top:4px}.dimension-editor{top:10px;width:200px;padding:9px 10px}.dimension-editor input{font-size:16px}
  .controls{display:block;grid-area:2/1;height:100%;width:100%;min-height:0;align-self:stretch;order:0;border:0;background:#fff;padding:0 0 20px;scroll-padding-top:12px}.sidebar-intro{padding:20px 22px 17px}.sidebar-intro h1{font-size:20px;line-height:1.3;margin:7px 0}.sidebar-intro p{font-size:12px;max-width:none}.sidebar-intro .eyebrow{font-size:9px}.control-section{padding:19px 22px}.control-section h2{font-size:14px;margin-bottom:17px}.field{font-size:12px;margin-bottom:13px}.field input,.field select{font-size:16px;min-height:43px;height:43px}.input-unit>span{font-size:12px}.field-note{font-size:11px}.field-pair{gap:13px}.room-area{font-size:12px}.room-area strong{font-size:15px}.custom-room-fields{padding:12px}.custom-room-fields .field-note{font-size:11px}.room-edit-actions{gap:8px}.room-edit-actions .button-outline,.room-edit-actions .text-button{min-height:37px;font-size:11px}.material-preview img,.material-placeholder{width:57px;height:57px}.material-preview strong{font-size:14px}.material-preview span{font-size:11px}.price-line>span{font-size:14px}.price-line a{font-size:11px}.advanced>summary{font-size:12px}.check-field{font-size:12px}.check-field input{height:17px;width:17px}.local-note{font-size:11px}.optimization-controls .button-outline{min-height:42px;font-size:12px}.optimization-controls .field-note{font-size:11px}.optimization-status{font-size:11px}.slider-field{font-size:11px}.offset-nudge button{min-width:37px;min-height:37px}.offset-controls input[type=range]{height:22px}
  .inspector{display:none;grid-area:2/1;border:0;background:#fff;overflow:hidden;min-height:0;height:100%;order:0}.inspector-tabs{display:none}.order-summary,.details-panel{height:100%;max-height:100%;padding:21px 22px 24px;margin:0;border:0;border-radius:0;background:#fff;overflow-y:auto;grid-area:auto;display:block;flex:1}.details-panel{display:none}.summary-heading .eyebrow,.details-heading .eyebrow{font-size:9px}.summary-heading h2,.details-heading h2{font-size:21px;margin:7px 0}.summary-heading p,.details-heading p{font-size:11.5px}.main-quantity{margin-top:21px;gap:12px}.main-quantity strong{font-size:51px}.main-quantity span{font-size:12px;max-width:none}.purchased-area{font-size:12px}.quantity-list>div{font-size:12px;margin:15px 0}.quantity-list strong{font-size:12px}.quantity-list>.quantity-sub{font-size:11px}.waste-details summary{font-size:12px}.waste-details dl{font-size:11px}.cost-block>div{font-size:12px;flex-direction:row;align-items:center;justify-content:space-between}.cost-block strong{font-size:27px}.cost-block p{font-size:11px}.stock-block .field{font-size:12px}.stock-block select{font-size:16px;height:42px;min-height:42px}.stock-status,.stock-block .text-button{font-size:11.5px}.warning-item strong{font-size:12px}.warning-item p{font-size:11px}.calculation-note{font-size:11px}.summary-footer .button-outline{min-height:42px;font-size:12px}.summary-footer .text-button{font-size:11.5px;min-height:37px}.calculation-assumptions>summary,.herringbone-estimate{font-size:11.5px}.details-panel .drawing-bottom{gap:15px}.details-panel .drawing-bottom strong{font-size:12px}.details-panel .small-label{font-size:9px}.details-panel .cut-list>summary{font-size:12px}.details-panel .cut-list>summary #cutListCount{font-size:11px}.details-panel .cut-list-content>.field-note{font-size:11px}.details-panel .cut-piece-select{font-size:12px}.details-panel .cut-piece-select select{font-size:16px;min-height:42px}.details-panel th,.details-panel td{font-size:11px}.details-panel #cutListNote{font-size:11px}.details-panel .table-scroll{max-height:none}
  .workspace[data-panel=settings] .controls{display:block}.workspace[data-panel=summary] .controls,.workspace[data-panel=details] .controls{display:none}.workspace[data-panel=summary] .inspector,.workspace[data-panel=details] .inspector{display:flex}.workspace[data-panel=summary] .order-summary{display:block}.workspace[data-panel=details] .order-summary{display:none}.workspace[data-panel=details] .details-panel{display:block}
  .mobile-nav{position:fixed;z-index:20;left:0;right:0;bottom:0;display:flex;align-items:stretch;justify-content:center;height:calc(var(--mobile-nav) + env(safe-area-inset-bottom));padding:4px 12px calc(4px + env(safe-area-inset-bottom));background:#fcfefaf2;backdrop-filter:blur(14px);border-top:1px solid #dce5d7;box-shadow:0 -2px 12px #2d4b2210;gap:5px}.mobile-nav button{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;background:transparent;border-radius:5px;min-height:44px;font-size:11.5px;color:#7b8d70;padding:5px 9px}.mobile-nav button svg{height:17px;width:17px;stroke-width:1.5}.mobile-nav button.active,.mobile-nav button[aria-selected=true]{background:#eaf2e5;color:#365c3c}.toast{bottom:calc(68px + env(safe-area-inset-bottom));font-size:11px;max-width:calc(100vw - 26px);padding:11px 15px}.dialog{padding:21px;max-height:calc(100dvh - 28px)}.dialog input{font-size:16px}.dialog-footer button{min-height:42px}.dialog-heading h2{font-size:20px}.dialog-close{min-height:30px;min-width:30px}.skip-link{font-size:11px}
}
@media screen and (max-width:600px){.topbar{padding:8px 12px;gap:10px}.app-name{font-size:11px;gap:7px}.app-name .beta{font-size:6px;padding:3px 4px}.brand-divider{display:none}.header-actions{gap:0}.header-actions .button-dark{padding:8px 10px;font-size:10px;min-height:33px}.quiet-button{padding:7px 6px;min-height:33px}.header-actions #helpButton{display:none}.print-button svg{width:16px}.drawing-area{padding:8px 10px 7px}.drawing-heading{min-height:20px}.drawing-heading h2{font-size:13px}.calculation-state{font-size:8px}.edit-toolbar{margin-top:6px;padding:3px;gap:3px}.canvas-tool{height:30px;padding:0 7px;gap:4px;font-size:9px}.canvas-tool svg{width:15px;height:15px}.history-tools{padding-left:4px;gap:0}.history-tools button{width:26px;height:28px}.history-tools svg{width:14px;height:14px}.plan-toolbar{gap:7px}.view-switch button{padding:5px 8px;font-size:9px}.edit-hint{display:none}.plan-caption span:first-child{font-size:7px}.controls .sidebar-intro{padding:18px 20px 16px}.control-section{padding:18px 20px}.order-summary,.details-panel{padding:20px}.field-pair{gap:12px}.mobile-nav{gap:3px;padding-left:9px;padding-right:9px}.mobile-nav button{font-size:11px;gap:7px}.plan-canvas{border-radius:5px}.dimension-editor{top:8px}.stock-block,.warnings,.summary-footer{margin-top:20px}}
@media screen and (max-width:370px){.topbar{gap:8px;padding-left:10px;padding-right:10px}.brand{font-size:24px}.brand-dot{font-size:25px}.app-name{font-size:10px;gap:5px}.app-name .beta{display:none}.quiet-button{padding-left:5px;padding-right:5px}.header-actions .button-dark{padding:8px;font-size:9px}.canvas-tool{padding:0 6px;gap:3px;font-size:8px}.canvas-tool svg{width:14px;height:14px}.history-tools button{width:24px}.drawing-area{padding-left:8px;padding-right:8px}.controls .sidebar-intro,.control-section,.order-summary,.details-panel{padding-left:17px;padding-right:17px}.plan-caption{left:5px;bottom:5px}.piece-popover{width:180px;padding:10px}.mobile-nav button{font-size:10px;gap:6px}.mobile-nav button svg{width:16px;height:16px}.cost-block strong{font-size:24px}.cost-block>div{font-size:11px}}
@media screen and (max-width:1100px) and (orientation:landscape){
  .workspace{grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:minmax(0,1fr);height:calc(100% - var(--chrome));margin:0}
  .drawing-area{grid-area:1/1;border-bottom:0;border-right:1px solid #dce4d9;padding:10px 12px 8px}.controls,.inspector{grid-area:1/2;padding-bottom:calc(20px + var(--mobile-nav) + env(safe-area-inset-bottom));height:100%}.inspector{padding-bottom:calc(var(--mobile-nav) + env(safe-area-inset-bottom))}.order-summary,.details-panel{max-height:100%}.drawing-heading h2{font-size:14px}.edit-hint{display:none}.mobile-nav{left:auto;width:320px}.sidebar-intro{padding-top:18px}.workspace .controls{border-left:0}.workspace[data-panel=summary] .inspector,.workspace[data-panel=details] .inspector{border-left:0}
}
@media screen and (min-width:761px) and (max-width:1100px) and (orientation:portrait){.drawing-area{padding:15px 20px 11px}.drawing-heading{min-height:28px}.drawing-heading h2{font-size:17px}.calculation-state{font-size:10px}.edit-toolbar{margin-top:10px}.canvas-tool{height:35px;font-size:11px;padding:0 12px}.plan-toolbar{margin-top:8px}.view-switch button{font-size:10px}.edit-hint{font-size:10px}.plan-canvas{margin-top:8px}.controls .sidebar-intro,.control-section,.order-summary,.details-panel{padding-left:30px;padding-right:30px}.sidebar-intro p{max-width:none}.control-section .field-pair{gap:18px}.plan-legend{display:flex;font-size:9px;margin-top:9px}.plan-legend .legend-hint{display:none}.controls .field{max-width:100%}.mobile-nav button{font-size:12px}}
@media screen and (max-height:670px) and (max-width:600px) and (orientation:portrait){:root{--chrome:47px;--mobile-nav:50px}.workspace{grid-template-rows:minmax(0,55fr) minmax(0,45fr)}.topbar{height:47px;min-height:47px}.drawing-heading{display:none}.edit-toolbar{margin-top:0}.drawing-area{padding-top:6px}.mobile-nav button{min-height:39px}}
@media print{
 html,body{height:auto!important;overflow:visible!important;display:block!important;padding:0!important;min-width:0!important}.workspace{height:auto!important;overflow:visible!important;display:block!important;margin:0!important}.drawing-area{height:auto!important;overflow:visible!important;display:block!important}.edit-toolbar,.edit-hint,.dimension-editor,.inspector-tabs,.mobile-nav,.room-handle,.room-handle-hit,.wall-hit,.wall-selected,.drawing-preview,.drawing-point,.drawing-close-handle,.pattern-origin{display:none!important}.inspector{display:block!important;height:auto!important;overflow:visible!important;border:0!important}.order-summary{display:block!important;overflow:visible!important;height:auto!important;max-height:none!important}.details-panel{display:block!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;background:none!important}.details-heading{display:none!important}.details-panel .drawing-bottom{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:8mm!important;padding:4mm 0!important;border-top:1px solid #ddd!important;break-inside:avoid}.details-panel .drawing-bottom>div{display:block!important}.details-panel .drawing-bottom .small-label{display:block!important;font-size:6pt!important;margin-bottom:2mm!important}.details-panel .drawing-bottom strong{font-size:9pt!important}.details-panel .cut-list{margin-top:3mm!important;break-before:page}.details-panel .cut-list:not([open]){display:none!important}.details-panel table{min-width:0!important}.details-panel .table-scroll{overflow:visible!important;max-height:none!important}.details-panel th,.details-panel td{font-size:7pt!important;padding:2mm!important}.details-panel .cut-list-content>.field-note{font-size:7pt!important}.details-panel #cutListNote{font-size:7pt!important}.plan-canvas{touch-action:auto!important}.dimension-text{pointer-events:none}.plan-canvas .room-outline{stroke:#4b5340;stroke-width:.8}.plan-canvas .plan-piece{stroke-width:.3}.dimension-hit rect{fill:none!important;stroke:none!important}
}
@media screen{.plan-canvas{user-select:none}.wall-grip{fill:#fff;stroke:#4c865b;stroke-width:1.7;vector-effect:non-scaling-stroke;cursor:move;filter:drop-shadow(0 1px 2px #274b2920)}.wall-grip:hover{fill:#438154;stroke:#fff}.draw-preview{fill:#78ab7920;stroke:#4b8b60;stroke-width:1.7;stroke-dasharray:5 4;vector-effect:non-scaling-stroke;pointer-events:none}[data-editor-overlay=drawing]{pointer-events:none}}
@media print{[data-editor-overlay]{display:none!important}}
@media screen{.topbar{flex-wrap:nowrap}.header-actions{width:auto;border:0;padding:0;flex-wrap:nowrap}.topbar .header-actions{margin-top:0}}
@media screen and (max-width:600px){.topbar .header-actions{width:auto;flex:none;justify-content:flex-end;margin-left:auto;gap:0}.topbar .app-name{min-width:0;flex:none}.topbar .header-actions #libraryButton{display:flex}.topbar .brand{flex:none}.topbar .brand-divider{display:none}}
/* Expand the drawing without leaving the protected workspace. */
@media screen{
 .zoom-tools #canvasExpandButton{margin-left:4px;border-left:1px solid #dbe4d6;border-radius:0 4px 4px 0;width:31px}.zoom-tools #canvasExpandButton svg{width:16px;height:16px;stroke-width:1.5}.zoom-tools #canvasExpandButton[aria-pressed=true]{background:#e3edde;color:#315f3b}
 .workspace.canvas-expanded{height:calc(100% - var(--chrome));margin:0;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
 .workspace.canvas-expanded .controls,.workspace.canvas-expanded .inspector{display:none!important}.workspace.canvas-expanded .drawing-area{grid-area:1/1;width:100%;height:100%;border:0;min-height:0}.workspace.canvas-expanded .plan-canvas{min-height:0}
 body:has(.workspace.canvas-expanded) .mobile-nav{display:none}
 .edit-hint.is-important{font-weight:500;color:#466c4d}
}
@media screen and (max-width:1100px){
 .zoom-tools #canvasExpandButton{width:28px;margin-left:3px}.zoom-tools #canvasExpandButton svg{width:15px;height:15px}
 .plan-toolbar:has(.edit-hint.is-important){flex-wrap:wrap;gap:5px 7px}.edit-hint.is-important{display:block;flex:1 0 100%;order:3;width:100%;max-width:none;white-space:normal;overflow:visible;text-overflow:clip;text-align:left;font-size:10px;line-height:1.5;background:#e9f1e3;border-left:2px solid #81a574;border-radius:2px;padding:5px 8px;margin:0}.workspace.canvas-expanded .drawing-heading{display:flex}
}
@media screen and (max-width:370px){.zoom-tools #canvasExpandButton{width:26px;margin-left:2px}.edit-hint.is-important{font-size:9px;padding:4px 7px}}
@media print{.workspace.canvas-expanded{display:block!important;height:auto!important;margin:0!important}.workspace.canvas-expanded .controls{display:none!important}.workspace.canvas-expanded .inspector,.workspace.canvas-expanded .order-summary,.workspace.canvas-expanded .details-panel{display:block!important}.zoom-tools #canvasExpandButton{display:none!important}}

/* Apartment workspace: material controls stay beside the drawing, never below it. */
.project-print-sections{display:none}
@media screen{
  :root{--quickbar-height:74px}
  .material-quickbar{position:relative;flex:none;z-index:15;height:var(--quickbar-height);min-height:var(--quickbar-height);margin:0;background:#fff;border-bottom:1px solid #dce4da}
  .material-quickbar>summary{display:none;list-style:none}
  .material-quickbar>summary::-webkit-details-marker{display:none}
  .quickbar-fields{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(150px,.9fr) minmax(180px,1.3fr) minmax(155px,.95fr) minmax(145px,.9fr);gap:0 18px;align-items:center;max-width:1536px;height:100%;padding:9px 24px;margin:auto}
  .quickbar-fields .field{margin:0;font-size:10px;gap:5px;line-height:1.3;color:#69776b}
  .quickbar-fields .field>span{display:flex;gap:6px;align-items:center}
  .quickbar-fields .field b{font-size:9px;display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#e8efe5;color:#49634e;font-weight:500}
  .quickbar-fields .field select{height:33px;min-height:33px;font-size:12px;border:1px solid #dbe3d8;border-radius:5px;background:#fcfdfb;color:#263e2e;padding-left:9px}
  .quickbar-fields .quick-product select{font-weight:500}
  .workspace{height:calc(100% - var(--chrome) - var(--quickbar-height));flex:1 1 0;min-height:0}
  .workspace.canvas-expanded{height:calc(100% - var(--chrome) - var(--quickbar-height));flex:1 1 0}
  .sidebar-intro{padding-bottom:16px}
  .section-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:14px}
  .section-heading h2{margin:0}
  .project-section .field{margin-bottom:13px}
  .room-count{font-size:10px;color:#798873;white-space:nowrap}
  .room-list{display:flex;flex-direction:column;gap:6px;margin-bottom:10px;max-height:220px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8d1c7 transparent}
  .room-list:empty{display:none}
  .room-list button,.room-list .room-item{position:relative;display:flex;align-items:center;gap:9px;justify-content:space-between;width:100%;min-width:0;min-height:48px;text-align:left;border:1px solid #dfe6db;border-radius:6px;padding:9px 11px;background:#fff;color:#5a6c58;font-size:11px;line-height:1.5}
  .room-list button:hover{border-color:#b7c9b1;background:#f6f9f3}
  .room-list button.active,.room-list button[aria-current=true],.room-list .room-item.active{border-color:#799d76;background:#edf4e8;color:#294b30;box-shadow:inset 3px 0 #61875a}
  .room-list button>span:first-child{min-width:0;flex:1}
  .room-list strong,.room-list .room-name{display:block;font-size:11.5px;font-weight:500;overflow-wrap:anywhere}
  .room-list small,.room-list .room-meta{display:block;font-size:9.5px;color:#7c8b74}
  .room-list button>span:last-child:not(:first-child){font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}
  .add-room-button{width:100%;min-height:37px;padding:8px 10px;font-size:11px;border-style:dashed;border-color:#b9cbb0;color:#496b43;background:#f5f9f2}
  .add-room-button>span{font-size:19px;font-weight:400;line-height:1}
  .room-actions{display:flex;gap:3px;flex:none}
  .room-actions button{width:29px;height:29px;display:grid;place-items:center;border-radius:4px;color:#708268;background:transparent}
  .room-actions button:hover:enabled{background:#e9efe4;color:#3c5d38}
  .room-actions button:disabled{opacity:.35;cursor:default}
  .room-actions svg{width:15px;height:15px}
  .room-connection-fields{border-top:1px solid #e1e8dc;padding-top:15px;margin-top:16px}
  .room-connection-fields h3{font-size:11px;font-weight:500;color:#4e6b4a;margin-bottom:13px}
  .room-connection-fields .field-note{font-size:10px}
  .offset-controls{margin-top:14px}
  .move-pattern-button{width:100%;min-height:39px;padding:8px 9px;font-size:10.5px;border-color:#bed0b7;background:#f3f8ef;color:#41653a;gap:7px}
  .move-pattern-button svg{width:17px;height:17px}
  .move-pattern-button[aria-pressed=true]{background:#e5efdf;border-color:#83a77a}
  .offset-readout{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:9.5px;color:#8b9981;margin-top:9px;font-variant-numeric:tabular-nums}
  .offset-readout .text-button{font-size:10px;color:#738968}
  .gap-setting{margin-top:17px;padding-top:16px;border-top:1px solid #e0e6d9;display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px}
  .gap-setting .field{margin:0;font-size:10.5px;white-space:nowrap}
  .gap-setting .field-note{margin:14px 0 0;font-size:9.5px;line-height:1.6;color:#7e8b74}
  .gap-setting .input-unit input{height:36px;min-height:36px}
  .project-summary-panel{padding-bottom:19px;border-bottom:1px solid #e1e8dc;margin-bottom:21px}
  .project-summary-panel>.eyebrow{font-size:8px}
  .project-summary-panel>h2{font-size:15px;line-height:1.5;font-weight:500;letter-spacing:-.3px;margin:7px 0 8px;color:#36553c;overflow-wrap:anywhere}
  #projectSummary{font-size:11px;line-height:1.65;color:#7b8e72;font-variant-numeric:tabular-nums}
  #projectSummary p{margin-top:5px}
  #projectSummary strong{font-weight:500;color:#3e5f3b}
  .project-room-totals{font-size:10px;line-height:1.65;margin-top:12px;color:#7a8b70;min-width:0}
  .project-room-totals:empty{display:none}
  .project-room-totals table{width:100%;table-layout:fixed;border:0}
  .project-room-totals th{padding:7px 4px;font-size:9px;background:#f2f6ed;color:#72866a;white-space:normal;position:static}
  .project-room-totals td{padding:8px 4px;font-size:10px;white-space:normal;overflow-wrap:anywhere;border-color:#e7eddf;vertical-align:top;color:#657b58}
  .project-room-totals td:last-child,.project-room-totals th:last-child{text-align:right}
  .project-room-totals td strong{font-size:11px;display:block;color:#395f35;font-weight:500}
  .project-room-totals td small{display:block;font-size:9px}
  .project-room-totals .project-room-total,.project-room-totals .project-product-total{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #e7eddf}
  .new-connection-fields{padding:16px 15px;border:1px solid #dfe8d8;border-radius:6px;background:#f4f8f0;margin-bottom:15px}
  .new-connection-fields .field-note{margin:0;font-size:10.5px}
  .add-room-dialog{width:min(470px,calc(100vw - 28px));padding:25px}
  .add-room-dialog .field{font-size:11.5px}
  .add-room-dialog .field input,.add-room-dialog .field select{font-size:13px;height:40px;min-height:40px}
  .add-room-dialog>form>p{font-size:11.5px;margin-bottom:18px;color:#7e8f73}
  .add-room-dialog .dialog-footer{margin-top:20px}
  .add-room-dialog .dialog-footer button{min-height:41px;font-size:11.5px}
}
@media screen and (min-width:1101px) and (max-width:1250px){
  .quickbar-fields{padding-left:19px;padding-right:19px;gap:11px;grid-template-columns:minmax(175px,1.1fr) minmax(135px,.8fr) minmax(165px,1.2fr) minmax(145px,.9fr) minmax(130px,.8fr)}
  .quickbar-fields .field select{font-size:11.5px}
}
@media screen and (max-width:1100px){
  :root{--quickbar-height:42px}
  .material-quickbar{z-index:30}
  .material-quickbar>summary{height:42px;padding:0 18px;display:flex;align-items:center;gap:10px;font-size:11.5px;color:#47633f;background:#f8fbf5;cursor:pointer;list-style:none}
  .material-quickbar>summary>span:first-child{display:flex;align-items:center;gap:7px;white-space:nowrap}
  .material-quickbar>summary svg{height:15px;width:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
  .quickbar-mobile-value{font-size:10px;color:#7e9173;margin-left:auto;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .quickbar-chevron{font-size:18px;line-height:1;margin-left:1px;color:#809774;transition:transform .15s}
  .material-quickbar[open] .quickbar-chevron{transform:rotate(180deg)}
  .material-quickbar .quickbar-fields{position:absolute;top:42px;left:0;right:0;height:auto;max-height:min(65dvh,430px);overflow:auto;background:#fff;border-bottom:1px solid #cbdcc2;box-shadow:0 12px 22px #233f2524;padding:16px 20px 20px;gap:13px 15px;grid-template-columns:1fr 1fr;align-items:start;z-index:5}
  .quickbar-fields .field{font-size:11px;gap:6px}
  .quickbar-fields .field select{height:41px;min-height:41px;font-size:16px;background:#fff;border-color:#d3dfcc}
  .quickbar-fields .quick-pattern,.quickbar-fields .quick-product{grid-column:1/-1}
  .quickbar-fields .quick-collection{grid-column:1/-1}
  .quickbar-fields .field b{font-size:9px;width:15px;height:15px}
  .workspace{height:calc(100% - var(--chrome) - var(--quickbar-height) - var(--mobile-nav) - env(safe-area-inset-bottom));flex:1 1 0;min-height:0;grid-template-rows:minmax(0,52fr) minmax(0,48fr)}
  .workspace.canvas-expanded{height:calc(100% - var(--chrome) - var(--quickbar-height));grid-template-rows:minmax(0,1fr);margin:0}
  .project-section .field{margin-bottom:14px}
  .room-list{max-height:240px;gap:7px;margin-bottom:11px}
  .room-list button,.room-list .room-item{min-height:52px;font-size:12px;padding:9px 12px}
  .room-list strong,.room-list .room-name{font-size:12px}
  .room-list small,.room-list .room-meta{font-size:10.5px}
  .room-list button>span:last-child:not(:first-child){font-size:11px}
  .section-heading{margin-bottom:16px}.section-heading h2{font-size:14px}
  .room-count{font-size:11px}
  .add-room-button{min-height:42px;font-size:12px;padding:9px 12px}
  .room-actions button{height:32px;width:32px}.room-actions svg{height:17px;width:17px}
  .room-connection-fields h3{font-size:12px}.room-connection-fields .field-note{font-size:11px}
  .move-pattern-button{min-height:42px;font-size:12px}.move-pattern-button svg{height:18px;width:18px}
  .offset-readout{font-size:11px}.offset-readout .text-button{font-size:11.5px;min-height:28px}
  .gap-setting{grid-template-columns:110px minmax(0,1fr);gap:15px;margin-top:20px;padding-top:19px}
  .gap-setting .field{font-size:12px}.gap-setting .field-note{font-size:11px;margin-top:16px}.gap-setting .input-unit input{height:42px;min-height:42px}
  .project-summary-panel{padding-bottom:19px;margin-bottom:20px}.project-summary-panel>.eyebrow{font-size:9px}.project-summary-panel>h2{font-size:17px;margin-top:6px}#projectSummary{font-size:12px}.project-room-totals{font-size:11.5px;margin-top:12px}.project-room-totals th{font-size:10px;padding:8px 6px}.project-room-totals td{font-size:11.5px;padding:9px 6px}.project-room-totals td strong{font-size:12px}.project-room-totals td small{font-size:10px}
  .add-room-dialog{padding:22px}.add-room-dialog .field{font-size:12px}.add-room-dialog .field input,.add-room-dialog .field select{height:43px;min-height:43px;font-size:16px}.add-room-dialog>form>p{font-size:12px}.new-connection-fields .field-note{font-size:11px}.add-room-dialog .dialog-footer button{min-height:43px;font-size:12px}
}
@media screen and (max-width:1100px) and (orientation:landscape){
  .workspace{height:calc(100% - var(--chrome) - var(--quickbar-height));grid-template-rows:minmax(0,1fr);margin:0}
  .material-quickbar .quickbar-fields{max-width:650px;left:auto;width:min(100%,650px);grid-template-columns:1fr 1fr 1fr;max-height:calc(100dvh - 94px);gap:12px;padding:15px 20px}
  .quickbar-fields .quick-pattern,.quickbar-fields .quick-collection,.quickbar-fields .quick-product{grid-column:auto}
  .quickbar-fields .quick-direction,.quickbar-fields .quick-stagger{grid-column:auto}
  .quickbar-fields .field select{font-size:13px;height:37px;min-height:37px}
  .quickbar-fields .quick-product{grid-column:3}
}
@media screen and (max-width:600px){
  .material-quickbar>summary{padding:0 13px;font-size:11px}.quickbar-mobile-value{font-size:9.5px;max-width:39%}
  .material-quickbar .quickbar-fields{padding-left:18px;padding-right:18px;gap:12px}
  .header-actions .button-dark{max-width:108px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media screen and (max-width:370px){
  .material-quickbar>summary{padding:0 11px;font-size:10.5px;gap:7px}.quickbar-mobile-value{max-width:32%;font-size:9px}.quickbar-fields .field select{font-size:15px}.header-actions .button-dark{max-width:94px}
}
@media print{
  .material-quickbar,.project-summary-panel{display:none!important}
  .project-print-sections:not(:empty){display:block!important;background:#fff;color:#202820;font-size:9pt;line-height:1.6}
  body:has(.project-print-sections:not(:empty))>.workspace{display:none!important}
  .project-print-header{padding:6mm 0 4mm;border-bottom:1px solid #ccd2c6;break-inside:avoid}
  .project-print-header h1{font-size:20pt;font-weight:500;line-height:1.3;margin:0 0 2mm;overflow-wrap:anywhere}
  .project-print-header p{font-size:8pt;color:#66705f;margin:1mm 0}
  .project-print-summary{padding:5mm 0;font-size:9pt;line-height:1.7;break-inside:avoid}
  .project-print-summary h2{font-size:14pt;margin:0 0 3mm;font-weight:500}
  .project-print-summary table{font-size:8pt;table-layout:fixed;width:100%;border-top:1px solid #d5dccf}
  .project-print-summary th,.project-print-summary td{padding:2mm 1.5mm;position:static;white-space:normal;overflow-wrap:anywhere;vertical-align:top;color:#354a2e;font-size:8pt}
  .project-print-summary th{background:#f0f4ed;font-weight:500;color:#63735b}
  .project-print-summary th:first-child,.project-print-summary td:first-child{width:30%}
  .project-print-summary tr{break-inside:avoid}
  .project-print-room{break-before:page;padding:4mm 0 0;break-inside:auto}
  .project-print-room h2{font-size:16pt;font-weight:500;line-height:1.35;margin:0 0 2mm;overflow-wrap:anywhere}
  .project-print-room h3{font-size:10pt;font-weight:500;margin:4mm 0 2mm}
  .project-print-room p{font-size:8pt;line-height:1.65;margin:1.5mm 0;color:#607058}
  .project-print-room>svg,.project-print-plan svg,.project-print-room .plan-canvas svg{width:100%!important;height:112mm!important;max-height:112mm!important;display:block;overflow:hidden;break-inside:avoid;background:#fff}
  .project-print-plan{break-inside:avoid;margin:3mm 0;border:1px solid #e0e5db;border-radius:2mm;padding:2mm}
  .project-print-metrics{display:grid;grid-template-columns:1fr 1fr;gap:0 8mm;margin:4mm 0;font-size:8pt;line-height:1.8;break-inside:avoid}
  .project-print-metrics>div{display:flex;align-items:baseline;justify-content:space-between;gap:4mm;padding:1mm 0;border-bottom:1px solid #e9ede5}
  .project-print-metrics strong{font-weight:500;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
  .project-print-notes{font-size:7.5pt;line-height:1.7;color:#6d785f;margin:3mm 0;break-inside:avoid}
  .project-print-notes li{margin:1mm 0}
  .project-print-room .plan-piece{stroke-width:.3}
  .project-print-room [data-editor-overlay],.project-print-room .room-handle,.project-print-room .wall-hit,.project-print-room .wall-grip,.project-print-room .pattern-origin{display:none!important}
  .project-print-room table{width:100%;font-size:7pt}.project-print-room td,.project-print-room th{font-size:7pt;padding:1.5mm;white-space:normal;position:static;vertical-align:top}.project-print-room tr{break-inside:avoid}
}
@media screen{
 .project-shortcuts{position:sticky;top:0;z-index:3;padding:10px 20px;background:#fcfcfaf5;backdrop-filter:blur(8px);border-top:1px solid #e1e7db;border-bottom:1px solid #e1e7db}
 .project-shortcuts .add-room-button{border-style:solid;background:#eef5e8;min-height:35px}
 .project-section{border-top:0;padding-top:18px}.connection-description{font-size:10.5px;line-height:1.6;color:#7b8d70;margin:-5px 0 13px;overflow-wrap:anywhere}.connection-description:empty{display:none}.detach-room-button{font-size:10.5px;margin-top:12px;color:#8a7963;min-height:28px}
}
@media screen and (max-width:1100px){.project-shortcuts{padding:9px 20px}.project-shortcuts .add-room-button{min-height:40px}.connection-description{font-size:11.5px}.detach-room-button{font-size:11.5px;min-height:32px}}
@media screen and (max-width:370px){.project-shortcuts{padding-left:17px;padding-right:17px}}
@media screen and (max-width:1100px) and (orientation:portrait){
 .material-quickbar .quickbar-fields{max-height:min(40dvh,300px)}
 .quickbar-fields .quick-pattern,.quickbar-fields .quick-collection{grid-column:auto}
 .quickbar-fields .quick-product{grid-column:1/-1}
}
