/* The plan stays on screen; dimensions live in focused dialogs. */
.planner-page{width:min(1320px,94%);margin:22px auto 40px;color:var(--ink)}.planner-page [hidden]{display:none!important}.planner-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.planner-heading h1{font-size:clamp(1.7rem,3vw,2.6rem);margin:0}.planner-heading .eyebrow{font-size:.75rem;margin:0 0 5px}.planner-page button{font-family:var(--sans);cursor:pointer}.planner-page button:disabled{cursor:default;opacity:.5}.planner-page button:focus-visible,.planner-page input:focus-visible,.planner-page select:focus-visible{outline:3px solid #8a7043;outline-offset:2px}.plan-primary,.plan-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;min-height:48px;font-size:1rem;border:1px solid #a9b09e;background:transparent}.plan-primary{background:#303b31;color:white;border-color:#303b31}.plan-primary:hover{background:#465340}.planner-workspace{display:flex;flex-direction:column;height:calc(100svh - 205px);min-height:570px;max-height:900px;border:1px solid #cfd1c5;background:#f5f4ee;box-shadow:0 8px 32px #2b352208}.plan-toolbar{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:1px;border-bottom:1px solid #d8d9cf;background:#d8d9cf;flex-shrink:0}.plan-toolbar button,.plan-more button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:75px;padding:10px 5px;background:#fcfbf8;font-size:.9375rem;border:0}.plan-toolbar button:hover{background:#e9ede2}.plan-toolbar svg,.plan-more svg{width:25px;height:25px;flex-shrink:0}.plan-viewbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 12px;flex-shrink:0;border-bottom:1px solid #d8d9cf}.plan-viewbar button{min-height:44px;padding:8px 14px;font-size:.9375rem;border:1px solid transparent}.plan-viewbar button[aria-pressed=true]{background:#fff;border-color:#b3bba8}.plan-viewbar #plan-fullscreen{border:1px solid #b3bba8;background:#fff}.plan-view{flex:1;min-height:0;position:relative;overflow:hidden;isolation:isolate}.plan-view #plan-drawing,.plan-view #plan-three{height:100%;width:100%;position:absolute;inset:0;touch-action:none}.planner-svg{display:block;width:100%;height:100%}.planner-svg [role=button]:focus{outline:3px solid #836532;outline-offset:4px}.plan-view canvas,.plan-view #plan-three>svg{display:block;width:100%;height:100%;touch-action:none}#plan-three>p{position:absolute;inset:40% 5% auto;text-align:center}.plan-zoom{position:absolute;inset:auto 12px 12px auto;display:flex;align-items:center;background:#fffffff2;border:1px solid #c8cdbf;box-shadow:0 3px 14px #303a2110;direction:ltr}.plan-zoom button{height:44px;min-width:44px;font-size:1.3rem;padding:6px 10px}.plan-zoom output{font-size:.8125rem;min-width:42px;text-align:center;font-variant-numeric:tabular-nums}.plan-zoom #plan-fit{font-size:.875rem;border-left:1px solid #d8d9cf;padding-inline:12px}.plan-position{display:flex;gap:6px;align-items:center;flex-shrink:0;padding:7px 12px;background:#fff;border-top:1px solid #d8d9cf}.plan-position>button{min-height:44px;padding:8px 12px;font-size:.9375rem;border:1px solid #d8d9cf}.plan-position #plan-selected-name{margin-inline-end:auto;background:#eef1e9;border-color:#b6c1a8;font-weight:500;text-align:start}.plan-position #plan-delete{color:#854932}.plan-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;background:#fcfbf8;flex-shrink:0;min-height:46px}.plan-bottom>span{font-size:.8125rem;line-height:1.4;color:#5b6455}.plan-bottom>button{min-height:44px;font-size:.9375rem;white-space:nowrap;display:flex;align-items:center;gap:6px}.plan-bottom>button[data-warning=true]{color:#86452e}#plan-tip-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:50%;background:#e5eadb;font-size:.8rem}.plan-bottom>button[data-warning=true] #plan-tip-count{background:#f4e2d5}.plan-expanded,.plan-modal-open{overflow:hidden}.planner-workspace.is-expanded{position:fixed;inset:0;z-index:1000;width:100%;height:100dvh;min-height:0;max-height:none;border:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
.plan-dialog{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(580px,calc(100% - 32px));max-width:none;height:auto;max-height:calc(100dvh - 40px);padding:0;margin:0;border:1px solid #c8cdbf;background:#fcfbf8;color:#292d25;box-shadow:0 20px 90px #1e281e35;overflow:hidden;border-radius:12px}.plan-dialog[open]{display:flex;flex-direction:column}.plan-dialog::backdrop{background:#17231870;backdrop-filter:blur(2px)}.plan-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 20px;border-bottom:1px solid #d8d9cf;flex-shrink:0}.plan-dialog h2{font:1.7rem var(--serif);margin:0}.plan-dialog-header>button{font-size:1.9rem;width:44px;height:44px;flex-shrink:0}.plan-dialog-body{padding:20px 24px;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable}.plan-dialog-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #d8d9cf;flex-shrink:0;background:#f6f5ef}.plan-dialog label,.plan-dialog legend{font-size:1rem;display:block;line-height:1.4}.plan-dialog select,.plan-dialog textarea,.plan-dialog input:not([type=checkbox]):not([type=color]){font:1rem var(--sans);min-height:46px;width:100%}.plan-dialog select,.plan-dialog>input{margin:6px 0 15px}.plan-dialog label+input{margin:6px 0 15px}.plan-dialog select,.plan-dialog textarea{padding:11px;border:1px solid #bfc4b7;background:white}.plan-shapes{padding:0;margin:0 0 18px;border:0;min-width:0}.plan-shapes legend{margin:0 0 10px}.plan-shapes>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.plan-shapes button{min-height:46px;border:1px solid #bfc4b7;padding:8px;background:white;font-size:.9375rem}.plan-shapes button[aria-pressed=true]{background:#303b31;color:white;border-color:#303b31}.plan-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;border-bottom:1px solid #c6ccbd;margin:0 0 20px}.plan-tabs button{font-size:.875rem;min-height:48px;line-height:1.25;padding:7px 4px;border-bottom:3px solid transparent}.plan-tabs button[aria-selected=true]{border-bottom-color:#536443;color:#34462c;background:#eef1e9}.plan-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:8px}.plan-field-grid>div{min-width:0}.plan-field{min-width:0;margin-bottom:12px}.plan-input{display:flex;align-items:center;border:1px solid #bfc4b7;background:white;margin-top:7px;min-height:48px}.plan-input input{border:0;padding:10px;min-width:0;width:100%;font-variant-numeric:tabular-nums}.plan-input>span{padding-inline-end:10px;color:#646b5d;font-size:.875rem}.plan-note{font:.875rem/1.55 var(--sans);color:#5e6857;margin:10px 0 16px}.plan-metric{font-size:1rem}.plan-check{display:flex!important;align-items:center;gap:8px;margin-bottom:14px}.plan-check input{appearance:auto;width:22px;height:22px;min-height:22px;flex-shrink:0;accent-color:#485542}.plan-color-label{display:flex!important;justify-content:space-between;align-items:center;margin-top:12px}.plan-color-label input{width:64px;height:44px;padding:2px;border:1px solid #bfc4b7}#plan-material-reference{display:flex;gap:15px;align-items:center;padding:16px 0}#plan-fabric-image{width:110px;height:95px;object-fit:cover}#plan-swatch{text-decoration:underline;font-size:.9375rem}.plan-more{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.plan-more button{border:1px solid #bfc4b7}.plan-more~button{width:100%;margin-bottom:12px}.plan-tip{padding:16px 0;border-bottom:1px solid #d8d9cf}.plan-tip:first-child{padding-top:0}.plan-tip p{margin:0;font-size:1rem;line-height:1.6}.plan-tip button{border:1px solid #a8af9b;padding:10px 12px;min-height:44px;font-size:.9375rem;background:white;margin-top:10px}.plan-tip[data-level=warning]{color:#8b402c}.plan-enquiry p{font-size:1rem}.plan-enquiry .plan-note{font-size:.875rem}.plan-enquiry label{margin:14px 0 6px}.plan-enquiry .inquiry-form{min-height:0}.plan-enquiry .request-contact{margin-top:20px}.plan-enquiry .request-submit{margin-top:18px;width:100%}.plan-dialog pre{white-space:pre-wrap;font:.9375rem/1.7 var(--sans);overflow-wrap:anywhere;margin:0}#plan-print-drawing{display:none}.planner-page .request-trap{position:absolute;left:auto;right:auto;inset-inline-start:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
body:has(#sofa-planner) .site-notice,body:has(#sofa-planner) .contact-dock,body:has(#sofa-planner) .whatsapp-floating{display:none}body:has(#sofa-planner) .site-footer{margin-top:20px}.planner-teaser{width:min(1280px,88%);margin:60px auto;display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;border-top:1px solid var(--line);padding-top:50px}.planner-teaser h2{font-size:clamp(2rem,3.5vw,3rem)}.planner-teaser img{width:100%;aspect-ratio:3/2;object-fit:cover}.planner-teaser p{max-width:490px}.admin-plan .planner-svg{height:auto;max-height:500px}.admin-plan pre{white-space:pre-wrap;font:.9rem/1.7 var(--sans)}
@media(max-width:740px){.planner-page{width:100%;margin:10px auto 24px}.planner-heading{padding:0 12px;margin-bottom:10px;min-height:42px}.planner-heading .eyebrow{display:none}.planner-heading h1{font-size:1.5rem;line-height:1.15}.planner-heading .plan-primary{font-size:.875rem;min-height:44px;padding:8px 10px;max-width:145px}.planner-workspace{height:calc(100svh - 150px);min-height:510px;max-height:none;border-inline:0;box-shadow:none}.plan-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-toolbar button{min-height:62px;padding:7px 3px;gap:3px;font-size:.875rem}.plan-toolbar svg{width:23px;height:23px}.plan-viewbar{padding:4px 8px}.plan-viewbar button{padding:7px 9px;font-size:.875rem}.plan-position{padding:5px 8px;gap:5px}.plan-position>button{padding:7px 9px;font-size:.875rem}.plan-position #plan-selected-name{flex:1;min-width:0}.plan-bottom{padding:0 8px}.plan-bottom>span{font-size:.75rem;max-width:220px}.plan-bottom>button{font-size:.875rem}.plan-zoom{inset:auto 8px 8px auto}.plan-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 24px);border-radius:12px}.plan-dialog-header{padding:10px 14px}.plan-dialog h2{font-size:1.5rem}.plan-dialog-body{padding:18px 16px}.plan-dialog-footer{padding:12px 14px}.plan-dialog-footer button{flex:1}.plan-field-grid{gap:12px}.plan-tabs{margin-bottom:16px}.plan-tabs button{font-size:.8125rem}.planner-teaser{grid-template-columns:1fr;gap:28px}.planner-teaser img{order:-1}.planner-workspace.is-expanded{height:100dvh;min-height:0}}
@media(max-height:500px) and (orientation:landscape){.planner-workspace.is-expanded .plan-toolbar{grid-template-columns:repeat(8,minmax(0,1fr))}.planner-workspace.is-expanded .plan-toolbar button{min-height:48px;padding:3px;font-size:.75rem}.planner-workspace.is-expanded .plan-toolbar svg{width:18px;height:18px}.planner-workspace.is-expanded .plan-bottom{display:none}}
@media print{body:has(#sofa-planner) .site-header,body:has(#sofa-planner) .site-footer,body:has(#sofa-planner) .contact-dock,.planner-heading>.plan-primary,.planner-workspace,.plan-dialog{display:none!important}body.plan-expanded,body.plan-modal-open{overflow:visible}.planner-page{width:100%;margin:0}.planner-heading{padding:0}.planner-heading h1{font-size:2rem}#plan-print-drawing{display:block}#plan-print-drawing svg{height:380px;width:100%}#plan-print-drawing pre{white-space:pre-wrap;line-height:1.45;font-size:10pt}}
/* Room size stays visible even when zoomed; opening positions use named corners. */
.plan-room-size{font: .875rem/1.4 var(--sans);font-variant-numeric:tabular-nums;pointer-events:none}.plan-view #plan-drawing,.plan-view #plan-three{height:calc(100% - 56px);bottom:56px}.plan-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.plan-opening-room-size{font-size:1rem;font-weight:500;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #d8d9cf}.plan-wall-preview{background:#f1f3ed;border:1px solid #d1d7c8;padding:10px 10px 12px;margin:12px 0 16px}.plan-wall-preview svg{width:100%;height:auto;display:block;direction:ltr}.plan-wall-preview dl{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:5px 0 0}.plan-wall-preview dl>div{text-align:center;min-width:0}.plan-wall-preview dt{font-size:.8125rem;line-height:1.4;color:#5c6656}.plan-wall-preview dd{font-size:1rem;font-weight:500;margin:5px 0 0;font-variant-numeric:tabular-nums}.plan-wall-preview dl>div:nth-child(2){color:#906a36}.plan-opening-extra{border-top:1px solid #d8d9cf;border-bottom:0;margin:0}.plan-opening-extra summary{min-height:44px;font-size:1rem;padding:10px 0}.plan-opening-extra .plan-field-grid{margin-top:12px}.plan-input-error{font-size:.875rem;line-height:1.4;color:#913e27;margin:8px 0 12px}#plan-offset-help{margin-top:0;margin-bottom:12px}#plan-opening-offset:invalid{box-shadow:inset 0 -2px #a54830}.planner-svg text{unicode-bidi:plaintext}

/* Everyday planning: a small toolbar, visible measurements and immediate warnings. */
.plan-intro{font-size:.9375rem;line-height:1.5;margin:0 0 14px;color:#5b6455}
.planner-workspace{min-height:660px}
.plan-toolbar{grid-template-columns:repeat(5,minmax(0,1fr))}
.plan-view{min-height:190px}
.plan-dimensions{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;background:#fcfbf8;border-top:1px solid #d8d9cf;padding:9px 12px;flex-shrink:0;font-size:.875rem}
.plan-dimensions strong{font-size:1.05rem;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.plan-dimensions>span:last-child{color:#616a5a}
.plan-view-help{font-size:.8125rem;line-height:1.4;padding:0 10px 8px;margin:0;text-align:center;background:#fcfbf8;color:#5b6455;flex-shrink:0}
.plan-door-alert{display:flex;align-items:center;gap:12px;background:#fff0eb;color:#8a2621;border-block:1px solid #d39483;padding:10px 14px;flex-shrink:0}
.plan-door-alert strong{font-size:1rem}
.plan-door-alert p{font-size:.875rem;line-height:1.4;margin:3px 0 0}
.plan-door-alert button{flex-shrink:0;min-height:44px;padding:7px 10px;border:1px solid #b66352;font-size:.875rem;background:#fff9f6;max-width:125px}
.plan-size-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:1px solid #c9cebf;background:#edf0e7;padding:13px 10px;margin-bottom:18px}
.plan-size-summary>div{display:flex;flex-direction:column;justify-content:space-between;gap:7px;text-align:center}
.plan-size-summary span{font-size:.8125rem;line-height:1.35;color:#505c47}
.plan-size-summary strong{font-size:1.12rem;white-space:nowrap;direction:ltr;unicode-bidi:isolate}
.plan-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.plan-feet{border:0;padding:0;margin:18px 0 8px;min-width:0}
.plan-feet legend{margin-bottom:10px}
.plan-feet>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.plan-feet button{min-height:76px;display:flex;flex-direction:column;justify-content:center;gap:5px;border:1px solid #b6c0aa;background:white;font-size:.9375rem;padding:8px 4px}
.plan-feet button>span{font-size:.8125rem}
.plan-feet button[aria-pressed=true]{border:2px solid #45583b;background:#e9eedf;color:#293821}
.plan-comfort{border-top:1px solid #cdd1c4;margin:18px 0 0}
.plan-comfort summary{cursor:pointer;min-height:50px;padding:15px 0;font-size:.9375rem;line-height:1.4}
.plan-comfort[open] summary{margin-bottom:10px}
.plan-short-arm{padding:12px;background:#f4efdf;border:1px solid #d5c598;margin:12px 0}
.plan-short-arm p{font-size:.9375rem;line-height:1.55;margin:0 0 10px}
.plan-short-arm button{background:#fff;font-size:.9375rem;width:100%}
#plan-modules-drawing{max-width:330px;margin:18px auto}
#plan-modules-drawing svg{display:block;width:100%;max-height:190px}
.plan-module-list{margin:14px 0}
.plan-module-list>p:not(.plan-note){display:flex;justify-content:space-between;gap:10px;font-size:.9375rem;border-bottom:1px solid #dadcd2;padding:9px 0;margin:0}
.plan-module-list strong{font-weight:500;direction:ltr;unicode-bidi:isolate;white-space:nowrap;font-variant-numeric:tabular-nums}
.plan-transport-result{border-inline-start:3px solid #9d9f95;padding:10px 12px;margin:8px 0 20px;background:#f0f0e9;font-size:.9375rem;line-height:1.5}
.plan-transport-result[data-status=tight]{border-color:#b1543a;color:#913d27;background:#fff0e9}
.plan-transport-result[data-status=preliminary]{border-color:#54704b;color:#344d2c;background:#eaf0e4}
.plan-dialog h3{font:1.25rem var(--serif);margin:16px 0 10px}
.plan-coach{font:1.35rem var(--serif);margin:0 0 12px}
[data-plan-panel=move-opening]>p,[data-plan-panel=door-warning]>p{line-height:1.55}
.plan-opening-extra summary{cursor:pointer}
@media(max-width:740px){
 .plan-intro{padding:0 12px;font-size:.875rem;margin-bottom:10px}
 .plan-toolbar{grid-template-columns:repeat(5,minmax(0,1fr))}
 .plan-toolbar button{font-size:.8125rem;min-height:68px;line-height:1.2}
 .plan-toolbar button span{max-width:90px}
 .planner-workspace{min-height:640px}
 .plan-dimensions{column-gap:8px;row-gap:3px;padding:7px 8px}
 .plan-dimensions>span:last-child{width:100%;text-align:center;font-size:.75rem}
 .plan-door-alert{padding:8px 10px;gap:8px}
 .plan-door-alert button{max-width:94px}
 .plan-door-alert p{font-size:.8125rem}
 .plan-position>button{font-size:.8125rem}
 .plan-module-list>p:not(.plan-note){font-size:.875rem}
 .planner-workspace.is-expanded{min-height:0;overflow:auto}
}
@media print{.plan-intro{display:none}}

/* Give the drawing the main workspace on larger screens. */
@media(min-width:1000px){
 .planner-page{width:min(1480px,96%);margin-top:12px}
 .planner-heading{margin-bottom:8px}
 .planner-heading .eyebrow{display:none}
 .plan-intro{margin-bottom:10px}
 .planner-workspace{display:grid;grid-template-columns:154px minmax(0,1fr);grid-template-rows:auto minmax(320px,1fr) auto auto auto auto auto;height:calc(100svh - 200px);min-height:650px;max-height:none}
 .plan-toolbar{grid-column:1;grid-row:1/-1;grid-template-columns:1fr;grid-auto-rows:76px;align-content:start;border-bottom:0;border-inline-end:1px solid #d8d9cf;background:#fcfbf8}
 .plan-toolbar button{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px;font-size:1rem;border-bottom:1px solid #d8d9cf}
 .plan-viewbar,.plan-view,.plan-dimensions,.plan-door-alert,.plan-position,.plan-bottom,.plan-view-help{grid-column:2}
 .plan-viewbar{grid-row:1}.plan-view{grid-row:2}.plan-dimensions{grid-row:3}.plan-door-alert{grid-row:4}.plan-position{grid-row:5}.plan-bottom{grid-row:6}.plan-view-help{grid-row:7}
 .plan-view #plan-drawing,.plan-view #plan-three{height:100%;bottom:0}
 .planner-workspace.is-expanded{height:100dvh;min-height:0}
}
@media(max-width:740px){
 .plan-toolbar button,.plan-position>button,.plan-view-help,.plan-bottom>span{font-size:.875rem}
 .plan-viewbar{flex-wrap:wrap}
 .plan-dialog{max-height:calc(100dvh - 16px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
}

.planner-teaser{grid-template-columns:1fr}.planner-teaser>div{max-width:760px}

/* Large choices and immediate feedback, in centimetres throughout. */
.plan-toolbar{grid-template-columns:repeat(6,minmax(0,1fr))}
.plan-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
.plan-sofa-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:center;margin:0 0 16px;padding:10px;background:#f0f2e9;border:1px solid #d2d9c5;border-radius:8px}
#plan-sofa-preview-drawing{height:150px;pointer-events:none}
.plan-sofa-preview .plan-size-summary{grid-template-columns:1fr;border:0;padding:0;margin:0;gap:8px;background:none}
.plan-sofa-preview .plan-size-summary>div{flex-direction:row;text-align:start;align-items:center;border-bottom:1px solid #d2d9c5;padding-bottom:6px}
.plan-sofa-preview .plan-size-summary strong{font-size:1rem}
.plan-sofa-preview .plan-size-summary span{max-width:105px}
.plan-arm{border:1px solid #c4cdb8;background:white;border-radius:6px;padding:12px 10px 0}
.plan-arm:has(input[type=checkbox]:checked){border-color:#526b43;background:#f0f4e9}
.plan-arm .plan-check{min-height:44px;margin:0 0 8px}
.plan-presets{padding:0;border:0;margin:0 0 14px;min-width:0}
.plan-presets legend{margin-bottom:10px}
.plan-presets>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.plan-presets button{min-height:52px;padding:8px 4px;border:1px solid #c0cbb4;font-size:.9375rem;background:white}
.plan-presets button[aria-pressed=true]{background:#303e2d;color:white;border-color:#303e2d}
.plan-feet>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.plan-feet button{min-height:52px;font-size:1rem}
#plan-profile{background:#f1f2eb;border:1px solid #d2d9c5;margin:12px 0 18px;border-radius:8px}
#plan-profile svg{display:block;width:100%;max-height:235px}
.plan-calculation{font-size:.9375rem;line-height:1.6;background:#e8eddc;border-inline-start:3px solid #536443;padding:12px}
@media(min-width:1000px){.plan-toolbar{grid-template-columns:1fr}}
@media(max-width:740px){.plan-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-toolbar button{flex-direction:row;min-height:54px;gap:6px;padding:6px;font-size:.8125rem}.plan-toolbar button span{max-width:85px}.plan-dialog-body{padding:16px}.plan-sofa-preview{gap:8px;padding:8px}.plan-sofa-preview .plan-size-summary strong{font-size:.9375rem}.plan-tabs button{font-size:.8125rem}.plan-feet>div{gap:5px}.plan-position{flex-wrap:wrap}.plan-sofa-preview .plan-size-summary span{font-size:.75rem}}

.plan-history{display:flex;gap:2px}.plan-viewbar .plan-history button{font-size:.8125rem;padding:6px 8px}.plan-viewbar{flex-wrap:wrap}.plan-viewbar>div{display:flex}.plan-sofa-preview .planner-svg{overflow:visible}@media(max-width:740px){.plan-viewbar .plan-history{order:3;width:100%;justify-content:flex-end;border-top:1px solid #d8d9cf}.plan-history button{min-height:36px}}

@media(min-width:900px){
 .plan-dialog[data-panel=sofa]{width:min(1000px,calc(100% - 48px))}
 [data-plan-panel=sofa]{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0 26px;align-items:start}
 [data-plan-panel=sofa]>:not(.plan-sofa-preview){grid-column:2}
 [data-plan-panel=sofa]>.plan-sofa-preview{grid-column:1;grid-row:1/8;position:sticky;top:0;display:flex;flex-direction:column;gap:18px;padding:20px}
 #plan-sofa-preview-drawing{width:100%;height:245px}
 .plan-sofa-preview .plan-size-summary{width:100%}
 .plan-sofa-preview .plan-size-summary>div{padding-bottom:12px;margin-bottom:4px}
 .plan-sofa-preview .plan-size-summary span{max-width:145px;font-size:.875rem}
 .plan-sofa-preview .plan-size-summary strong{font-size:1.12rem}
}

/* A large canvas and short focused dialogs, with explicit outer dimensions. */
.plan-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}
.plan-view #plan-drawing,.plan-view #plan-three{height:calc(100% - 48px);bottom:48px}
.plan-view{min-height:340px}
.plan-dimensions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0}
.plan-dimensions>button,.plan-size-summary>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:62px;padding:8px 5px;background:transparent;border:0;color:#303d29}
.plan-dimensions>button+button{border-inline-start:1px solid #d8d9cf}
.plan-dimensions>button span{font-size:.8125rem;line-height:1.2}
.plan-dimensions>button strong{font-size:1.1rem}
.plan-size-summary>button{align-items:flex-start;min-height:42px;text-align:start;padding:2px 0}
.plan-size-summary>button span{font-size:.8125rem}
.plan-size-summary>button strong{font-size:1.1rem}
.plan-dimensions>button:hover,.plan-size-summary>button:hover{background:#e5eadd}
.plan-bottom .plan-room-size{pointer-events:auto;font-size:.875rem;white-space:normal;text-align:start;text-decoration:underline;text-underline-offset:4px}
.plan-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
.plan-tabs button{overflow-wrap:anywhere;font-size:.875rem}
.plan-opening-tabs{grid-template-columns:1fr 1fr}
.plan-shape-select{display:flex!important;align-items:center;gap:12px;margin-bottom:12px}
.plan-shape-select select{margin:0!important;min-width:0;flex:1}
.plan-text-button{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:4px;font-size:.9375rem;padding:8px 0;margin:0 0 12px;color:#3d5033}
.plan-height-note{margin-bottom:0}
.plan-arm-card{border:1px solid #c8cfbc;padding:12px;border-radius:6px}
.plan-arm-card>button{width:100%;min-height:56px;border:1px solid #b6c0aa;background:#fcfbf8;font-size:.9375rem;line-height:1.4;padding:8px;margin-bottom:12px}
.plan-arm-card>button[aria-pressed=true]{background:#344331;border-color:#344331;color:#fff}
.plan-arm-card .plan-field{margin-bottom:0}
.plan-sofa-preview{background:#f0f2e9}
#plan-sofa-preview-drawing{pointer-events:none}
#plan-profile svg{max-height:230px}
.plan-dialog input[aria-invalid=true]{outline:2px solid #a3342c}
.plan-position{flex-wrap:nowrap}
.plan-history{margin-inline-start:auto}
.plan-viewbar .plan-history{order:3;border:0;width:auto}
.plan-viewbar .plan-history button{min-height:40px}
@media(min-width:1000px){.plan-toolbar{grid-template-columns:1fr}.plan-view #plan-drawing,.plan-view #plan-three{height:100%;bottom:0}.planner-workspace{min-height:660px}}
@media(max-width:740px){
 .planner-workspace{height:calc(100svh - 146px);min-height:690px}
 .plan-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}
 .plan-toolbar button{min-height:64px;flex-direction:column;gap:4px;font-size:.8125rem;padding:5px 2px}
 .plan-toolbar svg{width:22px;height:22px}
 .plan-view{min-height:320px}
 .plan-viewbar{padding:4px 6px;gap:3px}
 .plan-viewbar button{font-size:.8125rem;padding:6px 7px}
 .plan-viewbar .plan-history{order:3;width:100%;justify-content:flex-end;height:32px}
 .plan-viewbar .plan-history button{min-height:32px;padding:3px 8px}
 .plan-position>button{min-height:44px;padding:5px 7px;font-size:.8125rem}
 .plan-dialog-body{padding:12px}
 .plan-dialog[data-panel=sofa] .plan-dialog-body{padding-top:0}
 .plan-sofa-preview{position:sticky;top:0;z-index:2;grid-template-columns:minmax(0,1fr) 120px;gap:8px;padding:8px;margin:0 -1px 8px;border-radius:0}
 #plan-sofa-preview-drawing{height:142px}
 .plan-sofa-preview .plan-size-summary{gap:2px}
 .plan-sofa-preview .plan-size-summary>button{min-height:44px}
 .plan-sofa-preview .plan-size-summary span{font-size:.75rem}
 .plan-sofa-preview .plan-size-summary strong{font-size:1rem}
 .plan-tabs{position:sticky;top:160px;z-index:2;background:#fcfbf8;margin-bottom:12px}
 .plan-tabs button{font-size:.8125rem;min-height:48px;padding:6px 2px}
 .plan-opening-tabs{top:0}
 .plan-shape-select{padding-top:12px}
 .plan-arm-card{padding:8px}
 .plan-arm-card>button{font-size:.875rem}
 .plan-bottom{gap:6px}
 .plan-bottom .plan-room-size{font-size:.8125rem}
 .planner-workspace.is-expanded{height:100dvh;min-height:0;overflow:auto}
 .planner-workspace.is-expanded .plan-view{min-height:200px}
}
@media(max-width:360px){.plan-dimensions>button span{font-size:.75rem}.plan-dimensions>button strong{font-size:1rem}.plan-position>button{font-size:.75rem}.plan-sofa-preview{grid-template-columns:minmax(0,1fr) 100px}}
@media(max-height:550px) and (orientation:landscape){.plan-sofa-preview{position:static}.plan-tabs{top:0}.planner-workspace.is-expanded .plan-view{min-height:180px}}
.plan-tabs{grid-template-columns:1fr .8fr 1.65fr 1fr .9fr}.plan-tabs button{white-space:nowrap;overflow-wrap:normal;letter-spacing:0}.plan-opening-tabs{grid-template-columns:1fr 1fr}
@media(max-width:740px){.plan-dialog[data-sofa-view=comfort] .plan-sofa-preview{display:none}.plan-dialog[data-sofa-view=comfort] .plan-tabs{top:0}.plan-field-grid{align-items:end}.plan-field-grid label{font-size:.9375rem}.plan-short-arm p{font-size:.875rem}.plan-viewbar .plan-history button{font-size:.75rem}}
@media(max-width:360px){body:has(#sofa-planner) .site-header{grid-template-columns:42px minmax(0,1fr) auto;column-gap:5px;padding-inline:10px}body:has(#sofa-planner) .site-header .wordmark{font-size:.94rem;letter-spacing:.08em}body:has(#sofa-planner) .site-header .wordmark>span{font-size:.625rem}}
