@font-face{font-family:Gotham;src:url('/assets/Gotham-Book.woff2')}@font-face{font-family:Gotham;src:url('/assets/Gotham-Medium.woff2');font-weight:600}*{box-sizing:border-box}body{margin:0;color:#454944;background:#f6f5f1;font:13px/1.55 Gotham,Arial,sans-serif}button,input,select{font:inherit;color:inherit}button,a.primary,.upload{cursor:pointer;background:#fff;border:1px solid #d3d5ce;padding:10px 13px;line-height:1.4;transition:background .15s}button:hover,.upload:hover{background:#edf0e9}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #466852;outline-offset:2px}button[aria-current],button[aria-pressed=true]{background:#e8ece2;border-color:#9aa891}h1{font-size:23px;line-height:1.3;font-weight:400;margin:0 0 23px}h2{font-size:17px;font-weight:400;margin:18px 0 10px}p{margin:8px 0 15px}header{height:72px;background:#fff;border-bottom:1px solid #dedfd9;display:flex;align-items:center;gap:20px;padding:0 27px}header img{width:156px;display:block}header>a{padding-right:23px;border-right:1px solid #ddd}.header-spacer{flex:1}#save-state{font-size:11px;color:#73796f}header button{padding:5px 12px;font-size:21px}main{display:grid;grid-template-columns:290px minmax(360px,1fr) 285px;height:calc(100dvh - 72px)}.library,.summary{background:#fff;overflow:auto}.library{border-right:1px solid #dedfd9}.summary{border-left:1px solid #dedfd9;display:flex;flex-direction:column}.panel-heading{padding:25px 22px 18px;border-bottom:1px solid #e7e7e0}.panel-heading h2{font-size:22px;margin:0 0 5px}nav{display:flex;gap:7px}nav button{flex:1;font-size:12px;padding:9px 4px}.library section{padding:6px 22px 24px}.library h2{margin-top:23px}.small{font-size:11px;color:#73796f;line-height:1.6}label{display:block;font-size:11px;margin:13px 0 7px}input:not([type=checkbox]):not([type=file]),select{width:100%;padding:10px 8px;border:1px solid #d5d8cf;background:#fff;border-radius:0;margin-top:5px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.upload{display:block;text-align:center;font-size:12px;margin-top:19px;border-style:dashed;padding:17px 5px}.upload input{width:100%;font-size:10px;display:block;margin:8px 0 0}#photo-preview{width:100%;max-height:200px;object-fit:contain;margin:8px 0}.primary{display:block;background:#4f5d48!important;color:white!important;border:1px solid #4f5d48;text-align:center;text-decoration:none;width:100%;margin-top:14px}.shape-options{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:10px 0}details{margin:15px 0}summary{cursor:pointer}.button-row{display:flex;gap:6px;margin:10px 0}.button-row button{flex:1;font-size:11px}.check{display:flex;align-items:center;gap:8px}.workspace{display:flex;flex-direction:column;min-width:0;min-height:0}.workspace-bar{padding:17px 20px;display:flex;gap:12px;align-items:center;font-size:11px}.workspace-bar strong{font-weight:400;flex:1}.workspace-bar button{background:transparent;padding:5px 8px;font-size:10px}#viewport{position:relative;flex:1;min-height:350px;overflow:hidden}#viewport>canvas{width:100%;height:100%;display:block}#view-controls{position:absolute;top:8px;left:50%;transform:translateX(-50%);display:flex;z-index:3;background:#fff;box-shadow:0 2px 8px #0000000a;padding:3px}#view-controls button{border:0;padding:8px 12px;font-size:11px}#outline{position:absolute;inset:0;width:100%;height:100%;z-index:2;touch-action:none;overflow:visible}#outline path{pointer-events:none}#outline .point{cursor:grab;fill:#fff;stroke:#53755a;stroke-width:3}#outline .point.selected{fill:#53755a}#outline .mid{fill:#dce4d5;stroke:#74876d;stroke-width:1.2;cursor:copy}#outline .curve{fill:#e7d5b5;stroke:#9b814f;stroke-width:2;cursor:grab}#outline text{font:15px Gotham;fill:#496046;pointer-events:none}#canvas-hint{position:absolute;bottom:15px;left:20px;right:20px;text-align:center;font-size:11px;color:#6f786b;pointer-events:none}#busy{position:absolute;inset:0;background:#f6f5f1e8;display:grid;place-items:center;z-index:5}#busy[hidden]{display:none}#stage-notes{padding:8px 20px;font-size:11px;max-height:95px;overflow:auto;color:#78715b}#selection-actions{position:absolute;z-index:6;bottom:90px;left:50%;transform:translateX(-50%);background:#fff;box-shadow:0 4px 22px #0002;padding:11px;max-width:520px}#selection-actions strong{display:block;font-size:12px;margin-bottom:7px}#selection-actions button{font-size:11px;padding:7px 9px;margin-right:5px}#items{padding:8px 17px;flex:1;overflow:auto;min-height:60px}.item-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:0;border-bottom:1px solid #e8e9e2;padding:11px 4px;font-size:11px}.item-row img{width:45px;height:45px;object-fit:contain}.item-row span{flex:1}.item-row small{display:block;font-size:10px;color:#7b8175}.item-row b{font-weight:400;white-space:nowrap}.item-row.selected{background:#edf0e7}.total{padding:19px 22px;border-top:1px solid #dedfd9}.total>strong{float:right;font-weight:400;font-size:22px}.total>span{font-size:11px}.total>p{clear:both;padding-top:10px}#item-details{padding:0 22px;max-height:280px;overflow:auto}#item-details h3{font-size:14px;font-weight:400}.eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:12px}.catalog-tabs{display:flex;gap:4px;margin-top:12px}.catalog-tabs button{font-size:10px;padding:8px 6px;flex:1}.product{display:flex;gap:10px;align-items:center;width:100%;padding:10px 4px;border:0;border-bottom:1px solid #e4e5df;text-align:left}.product img{width:72px;height:72px;object-fit:contain}.product span{flex:1;font-size:11px}.product small{display:block;color:#7b8175;font-size:9px;margin-top:5px}.product .add{font-size:20px;flex:0}.search-label{margin-top:15px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}dialog{border:0;width:min(620px,95vw);max-height:85dvh;box-shadow:0 12px 70px #0003;padding:30px}dialog::backdrop{background:#28342566}.close{float:right}.review-row{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #ddd;padding:12px 0}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:13px 20px;background:#414d3a;color:#fff;z-index:10;max-width:90vw;display:none}#toast.show{display:block}[hidden]{display:none!important}@media(min-width:1500px){main{grid-template-columns:320px minmax(500px,1fr) 320px}}@media(max-width:1000px){main{grid-template-columns:250px minmax(300px,1fr)}.summary{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.summary .panel-heading{display:none}main{height:auto;min-height:calc(100dvh - 72px)}.workspace,.library{height:calc(100dvh - 72px)}#items{max-height:220px}}@media(max-width:650px){header{padding:0 14px;gap:10px}header img{width:120px}header>a{padding-right:10px}#save-state{display:none}main{display:flex;flex-direction:column}.library{height:auto;overflow:visible}.panel-heading{padding:18px}.library h1{font-size:21px;margin-bottom:15px}.library section{max-height:350px;overflow:auto}.workspace{height:65dvh;min-height:430px;order:1}.summary{order:2;display:block}.summary #items{max-height:260px}#item-details{max-height:none}#selection-actions{position:fixed;bottom:18px;width:94vw}.library{order:0}}

.upload input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.upload:focus-within{outline:2px solid #466852}

#selection-actions .remove-piece{color:#a32925;border-color:#d9a09b;background:#fff5f3}#selection-actions .remove-piece:hover{background:#fbe4e0}
#outline{pointer-events:none}#outline .point,#outline .mid,#outline .curve{pointer-events:all}
#selection-actions{width:min(540px,calc(100% - 32px));max-width:540px;padding:0;border:1px solid #dedfd7;box-shadow:0 8px 28px #28342524}
#selection-actions button{margin:0;min-height:37px;font-size:11px;line-height:1.3}
.selection-heading{display:flex;align-items:center;gap:11px;padding:15px 17px 12px}.selection-heading>img{width:48px;height:48px;object-fit:contain;flex:none}.selection-heading>div{flex:1;min-width:0}#selection-actions .selection-heading strong{font-size:13px;font-weight:600;line-height:1.5;margin:0}.selection-heading p{font-size:10px;color:#777e72;margin:3px 0 0}#selection-actions .selection-close{align-self:flex-start;border:0;background:transparent;font-size:22px;min-height:24px;padding:0 2px;color:#73786c}
.selection-scope{display:flex;margin:0 17px 13px;padding:3px;background:#f1f2ec;border:1px solid #e4e6de}.selection-scope button{flex:1;border:0;background:transparent}#selection-actions .selection-scope button[aria-pressed=true]{background:#fff;box-shadow:0 1px 4px #00000013;color:#41533e}
.selection-position{padding:0 17px 15px;display:flex;align-items:center;justify-content:space-between;gap:16px}.rotate-control{display:flex;align-items:center;gap:5px}.rotate-control>span{font-size:11px;margin-right:8px}.rotate-control button{font-size:19px!important;padding:6px 12px!important}.rotate-control small{font-size:10px;vertical-align:middle}.position-lock{padding:9px 13px!important}.separate-note{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%}.separate-note p{font-size:11px;margin:0;color:#747b6b}.separate-piece{background:#4e6248!important;color:white!important;border-color:#4e6248!important;padding:9px 15px!important}
.selection-footer{display:flex;gap:8px;align-items:center;padding:11px 17px;border-top:1px solid #e8e9e3;background:#fafbf7}.selection-footer button{padding:8px 12px!important}.selection-footer .remove-piece{margin-left:auto!important}.selection-settings-heading{display:flex;justify-content:space-between;align-items:center;padding:0 17px;font-size:10px;color:#797e74}.selection-settings-heading button{border:0;background:transparent;padding:5px 0!important;text-decoration:underline;text-underline-offset:3px}#selection-details{padding:0 17px 17px;display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:260px;overflow:auto}#selection-details label{margin:4px 0;font-size:10px}#selection-details .fields{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}#selection-details input,#selection-details select{font-size:11px}
@media(max-width:650px){#selection-actions{width:calc(100vw - 24px);bottom:18px}.selection-heading{padding:12px}.selection-position,.selection-footer{padding:10px 12px}.selection-scope{margin:0 12px 10px}.selection-heading>img{width:38px;height:38px}.selection-footer{gap:5px}.selection-footer button{font-size:10px!important;padding:7px 9px!important}}
#deck-finishes{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:9px 0 14px}#deck-finishes button{padding:5px;font-size:9px;line-height:1.4;min-height:68px}#deck-finishes span{display:block;height:35px;margin-bottom:5px;background-color:var(--deck-color);background-image:url('/assets/materials/deck/grain.jpg');background-size:100px;background-blend-mode:luminosity;opacity:.85}
#selection-actions .arrangement-controls,#selection-actions .individual-controls{padding:0;margin:0}.arrangement-controls{background:#f4f6ef;border-top:1px solid #e5e8dd;border-bottom:1px solid #e5e8dd}.selection-section-heading{display:flex;align-items:center;justify-content:space-between;padding:10px 17px 8px;font-size:10px;font-weight:600;color:#626e58}.selection-section-heading button{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;padding:0!important;min-height:20px!important;font-size:10px!important;font-weight:400}.arrangement-controls .selection-position{gap:8px;margin:0;padding-bottom:12px}.arrangement-controls .position-lock{margin-left:auto!important}.individual-controls .selection-footer{border-top:0;background:transparent}.individual-controls>.selection-section-heading{padding-bottom:0}.selection-footer .separate-piece{font-size:10px!important;padding:8px 10px!important}#selection-actions{max-height:calc(100dvh - 165px);overflow:auto}

/* Keep the two action sections readable on narrow canvases. */
.selection-position,.selection-footer{flex-wrap:wrap}.rotate-control{flex-shrink:0}.selection-footer .remove-piece{white-space:nowrap}

/* The canvas fills the workspace. Camera tools float at its upper left. */
.workspace{position:relative}
.viewer-tools{position:absolute;top:20px;left:22px;z-index:3;display:flex;gap:9px;align-items:center}
#view-controls{position:static;transform:none;box-shadow:0 2px 8px #0000000a}
#reset-view,.save-picture{font-size:11px;padding:11px 13px;background:#fff;box-shadow:0 2px 8px #0000000a}
.save-picture{position:absolute;right:20px;top:20px;z-index:3}
#selection-actions{bottom:26px}
#canvas-hint{bottom:12px}
.sidebar-toggle{position:absolute;top:20px;z-index:7;width:28px;height:36px;padding:0;font:23px Arial,sans-serif;background:#fff;box-shadow:0 2px 7px #0000000d}
main{position:relative;--library-width:290px;--summary-width:285px;grid-template-columns:var(--library-width) minmax(0,1fr) var(--summary-width)}
.library{grid-column:1}.workspace{grid-column:2}.summary{grid-column:3}
.library-toggle{left:calc(var(--library-width) - 14px)}.summary-toggle{right:calc(var(--summary-width) - 14px)}
main.library-collapsed{--library-width:32px}main.summary-collapsed{--summary-width:32px}
main.library-collapsed .library-toggle{left:2px}main.summary-collapsed .summary-toggle{right:2px}
@media(min-width:1500px){main{--library-width:320px;--summary-width:320px}}
@media(min-width:651px) and (max-width:1000px){main{--library-width:230px;--summary-width:230px;height:calc(100dvh - 72px)}.summary{display:flex;grid-column:3}.summary .panel-heading{display:block}.summary #items{max-height:none}}
@media(max-width:650px){.sidebar-toggle{position:fixed;top:82px}.library-toggle{left:2px}.summary-toggle{right:2px}.viewer-tools{top:14px;left:16px;gap:5px}.save-picture{top:14px;right:14px;font-size:10px;padding:10px 8px}#view-controls button{padding:8px}#reset-view{font-size:10px;padding:11px 8px}#selection-actions{position:absolute;bottom:24px}main.library-collapsed .workspace{height:calc(100dvh - 72px)}}

main{--library-expanded:290px;--summary-expanded:285px;transition:grid-template-columns .3s cubic-bezier(.22,.61,.36,1)}
.library,.summary{min-width:0;transition:opacity .22s ease}
.library>.panel-heading,.library>section{min-width:var(--library-expanded)}
.summary>.panel-heading,.summary>#items,.summary>.total{min-width:var(--summary-expanded)}
.library-collapsed .library,.summary-collapsed .summary{opacity:0;pointer-events:none;overflow:hidden}
.sidebar-toggle{transition:left .3s cubic-bezier(.22,.61,.36,1),right .3s cubic-bezier(.22,.61,.36,1),background .15s}
@media(min-width:1500px){main{--library-expanded:320px;--summary-expanded:320px}}
@media(min-width:651px) and (max-width:1000px){main{--library-expanded:230px;--summary-expanded:230px}}
@media(max-width:650px){main{--library-expanded:0px;--summary-expanded:0px}.library,.summary{transition:opacity .22s,max-height .3s;max-height:700px}.library-collapsed .library,.summary-collapsed .summary{max-height:0}}
@media(prefers-reduced-motion:reduce){main,.library,.summary,.sidebar-toggle{transition:none}}

#selection-marquee{position:absolute;z-index:5;pointer-events:none;border:1px solid #4f7454;background:#71996c26;box-shadow:0 0 0 1px #ffffff7a inset}.multi-actions{padding-top:14px;padding-bottom:14px}

#grid-legend{position:absolute;left:16px;top:54px;background:#fffffff0;padding:5px 9px;font-size:10px;pointer-events:none} .swing-height{display:flex;align-items:center;gap:12px;margin:0;padding:10px 17px;border-top:1px solid #e8e9e3}.swing-height input{width:76px!important;margin:0!important}.swing-height span{flex:1}.swing-height small{display:block;color:#777}

/* Phones and small tablets use one workspace, with tools in bottom sheets. */
.mobile-nav,.mobile-panel-heading,.touch-drag-handle{display:none}
@media(max-width:900px){
 body{height:100dvh;overflow:hidden;overscroll-behavior:none}
 header{height:60px;padding:0 12px;gap:8px;padding-top:env(safe-area-inset-top)}
 header img{width:108px}header>a{padding-right:10px}header>span:not(.header-spacer){font-size:11px}#save-state{display:none}
 header button{width:44px;height:44px;padding:4px;font-size:24px}
 main,main.library-collapsed,main.summary-collapsed{display:block;position:relative;height:calc(100dvh - 120px - env(safe-area-inset-bottom));min-height:0;--library-expanded:0px;--summary-expanded:0px;transition:none}
 .sidebar-toggle{display:none!important}
 .workspace,main.library-collapsed .workspace{height:100%;min-height:0;position:relative}
 #viewport{min-height:0;touch-action:none}
 .library,.summary,main.library-collapsed .library,main.summary-collapsed .summary{position:absolute;bottom:0;left:0;right:0;height:auto;max-height:75%;width:100%;z-index:8;background:#fff;display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;border:1px solid #d8dcd2;border-radius:16px 16px 0 0;box-shadow:0 -5px 25px #2739231c;transform:translateY(105%);opacity:0;visibility:hidden;pointer-events:none;transition:transform .25s ease,opacity .2s,visibility .25s}
 main[data-mobile-panel=library] .library,main[data-mobile-panel=summary] .summary{transform:none;opacity:1;visibility:visible;pointer-events:auto}
 .mobile-panel-heading{display:flex;position:sticky;top:0;z-index:2;align-items:center;justify-content:space-between;padding:8px 16px;background:white;border-bottom:1px solid #e5e7df;min-height:56px;flex-shrink:0}
 .mobile-panel-heading strong{font-weight:600;font-size:13px}.mobile-panel-close{min-height:44px;border:0;background:transparent;color:#46634a}
 .library>.panel-heading{display:none}.library>section{padding:4px 16px 18px;max-height:none;overflow:visible;flex-shrink:0}.library h2{font-size:16px;margin-top:16px}
 .summary>.panel-heading{display:block;padding:12px 16px}.summary .panel-heading h2,.summary .eyebrow{display:none}.summary #items{flex:none;max-height:none;min-height:0}.summary .total{padding:16px;flex-shrink:0}
 input:not([type=checkbox]):not([type=file]),select,#selection-details input,#selection-details select{font-size:16px;min-height:44px}
 label,.small{font-size:12px}.catalog-tabs{margin-top:10px}.catalog-tabs button{min-height:44px;font-size:12px}
 .product{min-height:94px;touch-action:pan-y}.product img{width:82px;height:82px}.product span{font-size:12px}.product small{font-size:10px}.product .add{font-size:23px}
 .catalog-card{display:flex;align-items:stretch;border-bottom:1px solid #e4e5df}.catalog-card .product{border-bottom:0;min-width:0}.touch-drag-handle{display:block;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;width:53px;flex:none;font-size:11px;border:0;border-left:1px solid #eef0e9;margin:12px 0 12px 8px;padding:6px}
 .mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:10;background:#fff;display:flex;height:calc(60px + env(safe-area-inset-bottom));padding:6px 10px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #d9ded4;gap:6px}
 .mobile-nav button{font-size:12px;min-height:44px;flex:1;border:0}.mobile-nav button[aria-expanded=true]{background:#e8ece2}
 .viewer-tools{top:10px;left:10px;right:10px;gap:5px;flex-wrap:wrap;pointer-events:none}.viewer-tools>*{pointer-events:auto}#view-controls{padding:0}#view-controls button,#toggle-grid,#reset-view{min-height:44px;padding:8px 10px;font-size:11px}.save-picture{top:auto;bottom:36px;right:10px;min-height:44px;font-size:11px;padding:8px 10px}
 #canvas-hint{bottom:10px;left:10px;right:10px;font-size:10px}#grid-legend{top:60px;font-size:10px;left:10px}
 #selection-actions{position:absolute;bottom:0;left:0;transform:none;width:100%;max-width:none;max-height:49%;border-radius:16px 16px 0 0;overscroll-behavior:contain;padding-bottom:8px}
 #selection-actions .selection-heading{position:sticky;top:0;background:#fff;z-index:1;padding:10px 12px}#selection-actions .selection-heading strong{font-size:12px}#selection-actions .selection-close{width:44px;min-height:44px}
 #selection-actions button{min-height:44px;font-size:12px!important}.selection-position,.selection-footer{padding:8px 12px;gap:8px}.selection-footer button{flex:1}.selection-position{justify-content:flex-start}.rotate-control>span{margin-right:2px}.position-lock{margin-left:auto!important}.selection-section-heading{font-size:12px;padding:8px 12px}.selection-section-heading button{min-height:44px!important}
 #selection-details{max-height:none;grid-template-columns:1fr;padding:8px 12px}#selection-details label{font-size:12px}#selection-details .fields{grid-template-columns:repeat(3,minmax(0,1fr))}#stage-notes{position:absolute;top:105px;left:10px;right:10px;max-height:50px;background:#ffffffe8;padding:5px 8px;pointer-events:none}
 #toast{bottom:calc(74px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 24px);font-size:12px;padding:12px 16px;z-index:15}
 dialog{padding:18px;width:calc(100vw - 20px);max-height:85dvh}dialog .close{min-width:44px;min-height:44px}
 .placing-furniture .mobile-nav,.placing-furniture .viewer-tools,.placing-furniture .save-picture{pointer-events:none;opacity:.4}
 #outline .point{r:14px}#outline .mid,#outline .curve{r:11px}
}
@media(max-width:900px) and (max-height:500px){header{height:48px}main{height:calc(100dvh - 108px - env(safe-area-inset-bottom))}.library,.summary{max-height:95%}#selection-actions{max-height:72%}}
@media(prefers-reduced-motion:reduce){.library,.summary{transition:none!important}}
@media(min-width:901px){#catalog-filter-panel>summary{display:none}#catalog-filter-panel{margin:0}}
@media(max-width:900px){html{height:100%;overflow:hidden}body{position:fixed;inset:0;width:100%}main{overflow:hidden}#catalog-filter-panel{margin:8px 0}#catalog-filter-panel>summary{min-height:44px;display:flex;align-items:center;border:1px solid #d5d8cf;padding:8px 12px}#catalog-filter-panel>summary::after{content:'+';margin-left:auto}#catalog-filter-panel[open]>summary::after{content:'−'}}
@media(max-width:900px){main{overflow:clip}}
.cushion-controls{grid-column:1/-1;border-top:1px solid #dddcd5;padding-top:12px;margin-top:4px}.cushion-controls label{display:grid;gap:7px}.cushion-controls .small{font-size:12px;line-height:1.5;color:#61665b;margin:7px 0}.fabric-picker summary{font-size:12px;cursor:pointer;padding:6px 0}.pad-swatches{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;max-height:240px;overflow:auto;padding:6px 2px}.pad-swatches button{border:1px solid #dddcd5;border-radius:5px;padding:3px;background:#fff;min-width:0;cursor:pointer}.pad-swatches button[aria-pressed=true]{outline:2px solid #456a40;border-color:white}.pad-swatches img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:2px}.pad-swatches span{font-size:9px;line-height:1.15;display:block;padding:3px 0}.cushion-controls select{max-width:100%;width:100%;font:inherit;padding:9px;background:#fff;border:1px solid #c9cbbf;border-radius:4px}

@media(max-width:900px){#selection-actions.editing-finishes{max-height:68%}}

.lid-controls{display:flex;align-items:center;gap:6px;padding:12px 16px;border-top:1px solid var(--line,#dedfd8)}
.lid-controls>span{margin-right:auto;font-size:13px}.lid-controls button{min-width:76px;min-height:40px}.lid-controls button[aria-pressed="true"]{background:#e8ece2;border-color:#85907c;color:#263521}
#walk-overlay{position:absolute;inset:0;z-index:15;touch-action:none;cursor:grab;outline:none}#walk-overlay:active{cursor:grabbing}.walk-banner{position:absolute;left:18px;right:18px;top:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;background:#ffffffed;padding:14px 18px;box-shadow:0 2px 15px #0001}.walk-banner strong,.walk-banner span{display:block}.walk-banner span{font-size:12px;margin-top:5px}.walk-banner button{white-space:nowrap}.walk-arrows{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);text-align:center}.walk-arrows button{width:48px;height:48px;margin:2px;background:#ffffffec;font-size:21px}.walking .viewer-tools,.walking .save-picture,.walking #outline,.walking #canvas-hint,.walking #grid-legend{visibility:hidden}.walking #selection-actions{visibility:hidden}

.walk-height{display:flex;align-items:center;gap:8px;margin:8px 0 0}.walk-height select{width:auto;margin:0;padding:5px 8px}

#busy{inset:auto;left:50%;bottom:48px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:90%;padding:11px 16px;background:#fff;border:1px solid #d9ddd4;box-shadow:0 3px 15px #0001;pointer-events:none;z-index:5;font-size:12px}#busy::before{content:"";width:13px;height:13px;border:2px solid #dfe3da;border-top-color:#53634a;border-radius:50%;animation:loading-turn .9s linear infinite}@keyframes loading-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){#busy::before{animation:none}}

/* Chat shares the right rail with the furniture list. */
.summary-tabs{display:flex;flex:none;border-bottom:1px solid #dedfd7;padding:0 16px;background:#fff;gap:20px;min-height:48px}.summary-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:10px 0;font-size:12px;color:#767b71}.summary-tabs button[aria-pressed=true]{color:#344930;border-bottom-color:#344930}.summary.chat-open>:not(.summary-tabs):not(#planner-chat){display:none!important}#planner-chat{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.chat-heading{padding:20px 18px 12px;border-bottom:1px solid #e8e9e3}.chat-heading h2{font-size:17px;line-height:1.4;font-weight:500;margin:0 0 10px}.chat-heading p{font-size:11px;margin:3px 0;color:#68725e}#chat-selection{font-size:10px;color:#767b71}.chat-messages{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:100px;padding:18px;scroll-behavior:smooth}.chat-welcome p{font-size:12px;line-height:1.6;margin:0 0 12px}.chat-welcome button{display:block;text-align:left;border:1px solid #dadfd3;background:#fafbf7;font-size:11px;padding:10px 12px;margin:7px 0;width:100%}.chat-message{font-size:12px;line-height:1.65;margin:0 0 22px;overflow-wrap:anywhere}.chat-message>strong{font-size:10px;font-weight:600;letter-spacing:.04em}.chat-message>p{margin:5px 0;white-space:pre-wrap}.chat-message.user{background:#f1f3ed;padding:12px 14px;border-radius:3px}.chat-result{border-left:2px solid #607957;padding-left:10px;color:#3c5737;font-size:11px}.chat-products{display:grid;gap:12px;margin:14px 0}.chat-products article{border:1px solid #e3e5dc;background:white}.chat-products img{display:block;width:100%;height:155px;object-fit:contain;background:#fafaf8}.chat-products article>div{padding:12px}.chat-products h3{font-size:12px;line-height:1.5;font-weight:500;margin:0 0 7px}.chat-products p{font-size:10px;color:#66705e;margin:3px 0}.chat-products button{font-size:11px;padding:9px 11px;width:100%;margin-top:10px}.chat-form{flex:none;padding:14px 16px;border-top:1px solid #ddd;background:#fff}.chat-form textarea{width:100%;resize:none;box-sizing:border-box;font-family:inherit;font-size:12px;line-height:1.5;padding:10px;border:1px solid #b7bfac;border-radius:2px;min-height:68px}.chat-form>div{display:flex;gap:8px;align-items:center;margin-top:8px}.chat-form button{font-size:11px;padding:9px 14px;margin-left:auto}.chat-form small{font-size:9px;color:#7a8073;display:block;margin-top:9px}.chat-status{font-size:10px;color:#68725e}.chat-swatches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0}.chat-swatches button{padding:7px;font-size:10px;line-height:1.5}.chat-swatches img{width:100%;height:46px;object-fit:cover;display:block;margin-bottom:4px}.chat-source{display:block;margin:10px 0;color:#4e6248;font-size:10px;text-underline-offset:3px}#open-chat{font-size:12px;padding:9px 13px;width:auto;height:auto}.chat-running #busy{pointer-events:none}@media(max-width:900px){main[data-mobile-panel=summary] .summary.chat-open{height:76%;max-height:76%;overflow:hidden}.summary.chat-open .summary-tabs{min-height:48px}.chat-heading{padding:12px 16px}.chat-heading h2{font-size:16px;margin-bottom:4px}.chat-messages{padding:14px 16px}.chat-form textarea{font-size:16px}.chat-form{padding-bottom:12px}#open-chat{font-size:11px;padding:8px}header>span:nth-child(2){display:none}.chat-products{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-products img{height:115px}}

.chat-clear{font-size:10px;border:0;background:none;color:#66725b;text-decoration:underline;text-underline-offset:3px;padding:7px 0 0}
.flame-level{display:flex;align-items:center;gap:12px;padding:4px 17px;font-size:11px}.flame-level input{flex:1;min-width:80px;accent-color:#586b4c;padding:0;height:28px}.fire-note{padding:0 17px 10px;margin:3px 0;color:#73786c;font-size:10px}
/* Keep conversation choices readable without pushing a whole reply offscreen. */
.chat-products{grid-template-columns:1fr;gap:9px}.chat-products article{position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;border-radius:5px;overflow:hidden}.chat-products img{height:110px;width:92px}.chat-products article>div{padding:10px}.chat-products h3{font-size:12px;margin-bottom:4px}.chat-products button{padding:7px 9px;margin-top:7px}.chat-choice-number{position:absolute;left:6px;top:6px;background:#fff;border:1px solid #dce2d5;border-radius:50%;width:20px;height:20px;font-size:10px;text-align:center;line-height:20px}.typing-dots{display:flex;align-items:center;gap:5px;background:#f1f3ed;border-radius:12px;width:fit-content;padding:13px 16px;margin-top:7px}.typing-dots i{width:6px;height:6px;background:#627359;border-radius:50%;animation:chat-dot 1.2s infinite}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,70%,100%{opacity:.35;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.typing-dots i{animation:none;opacity:.7}}.chat-heading h2{font-size:15px}.chat-message.user{border-radius:10px 10px 2px 10px;margin-left:20px}.chat-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-swatches img{width:28px;height:28px;margin:0;border-radius:50%;flex:none}.chat-swatches button{display:flex;align-items:center;gap:7px;text-align:left}.chat-form textarea{border-radius:8px}.chat-form textarea:focus{outline:2px solid #647e5966;outline-offset:2px}
#toast{top:90px;bottom:auto!important;border-radius:8px;box-shadow:0 5px 24px #1f301e33;max-width:min(440px,calc(100vw - 32px));font-size:13px;line-height:1.5;padding:13px 18px;pointer-events:none;z-index:50}#toast.show{animation:toast-in .15s ease-out}@keyframes toast-in{from{opacity:0;translate:0 -5px}to{opacity:1;translate:0 0}}.walk-seat-prompt{position:absolute;bottom:155px;left:50%;transform:translateX(-50%);background:#fffef5ed;color:#2b3b25;padding:12px 18px;border-radius:7px;text-align:center;box-shadow:0 3px 20px #0002;max-width:90%;font-size:14px}
.rotate-control svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;margin-right:4px}.rotate-control button{font-size:12px!important;padding:7px 9px!important}.free-rotate{font-size:11px}.free-rotate summary{cursor:pointer;padding:9px 5px}.free-rotate input{width:65px;display:inline-block;padding:6px}.free-rotate label{display:inline-block;margin:4px}.catalog-card .product{cursor:grab}.catalog-card .product:active{cursor:grabbing}
.walk-seat-prompt:empty{display:none}.walking .summary,.walking .library{opacity:.45}.walk-arrows [data-walk-action="jump"]{font-size:12px;min-width:60px}.walk-seat-prompt{bottom:175px;z-index:2}.catalog-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.catalog-shortcuts button{padding:6px 9px;font-size:10px;border-radius:15px;background:#f4f5ef}.catalog-sort{margin:8px 0;font-size:11px}.catalog-sort select{padding:7px;font-size:11px}

#outline .outline-measure{pointer-events:auto;cursor:pointer;paint-order:stroke;stroke:#fff;stroke-width:4px;stroke-linejoin:round;fill:#263e30;font-size:12px;font-weight:600}#outline .corner-measure{font-size:10px}.outline-precision{border-top:1px solid #ddd;padding-top:12px;margin-top:12px}.outline-precision button{margin-bottom:8px}

#rotation-handle{position:absolute;z-index:12;transform:translate(-50%,-50%);width:42px;height:42px;border:1px solid #688172;border-radius:50%;background:#fff;color:#263e30;box-shadow:0 2px 8px #0002;touch-action:none;cursor:grab;font-size:19px;padding:0}#rotation-handle:active{cursor:grabbing}

.lighting-picker select{max-width:165px;height:34px;background:#fff;border:1px solid #d7ddd5;border-radius:5px;font:inherit;font-size:11px;padding:4px}.edge-options{margin-top:12px}.edge-options input[type=color]{min-height:32px}@media(max-width:600px){.lighting-picker select{max-width:110px;font-size:10px}}

.fit-guidance{padding:8px 18px;font-size:11px;color:#6d746d}.fit-guidance summary{cursor:pointer}.fit-guidance p{line-height:1.5;margin-bottom:0}.product-dimensions{padding:0 18px}
