@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{font-family:Manrope,Arial,sans-serif;color:#343c34;background:#f8f8f3;font-synthesis:none;font-size:13px;--sage:#536b4c;--line:#e6e7df;--muted:#92978c;--purple:#aa9bcc;--paper:#fffefb}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{transition:background .15s,box-shadow .15s,transform .15s}button:disabled{opacity:.3;cursor:default}button:hover:not(:disabled){filter:brightness(.97)}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #849772;outline-offset:3px}button svg,.header-actions svg{width:18px;height:18px;vertical-align:middle;flex-shrink:0}button svg{pointer-events:none}button span{pointer-events:none}button{border:none;background:none}a{color:inherit}.app-header{height:80px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;background:#fffefb}.brand{display:flex;align-items:center;text-decoration:none;gap:9px}.brand b{font-size:28px;letter-spacing:-1.8px}.brand-mark{width:28px;height:28px;display:grid;grid-template-columns:1fr 1fr;gap:3px}.brand-mark i{background:#343c34;border-radius:3px}.brand-mark i:first-child{border-radius:3px 3px 3px 9px}.brand-mark i:nth-child(3){background:#b796a4;border-radius:50%}.brand-divider{height:22px;width:1px;background:#dcded4;margin:0 10px}.studio{font-size:20px;font-weight:500;letter-spacing:-.5px;display:flex;align-items:center;gap:9px}.beta{font-size:8px;letter-spacing:1px;background:#e9eddf;color:var(--sage);padding:4px 5px;border-radius:4px}.header-note{color:#8b9284;font-size:12px}.header-actions{display:flex;align-items:center;gap:20px}.save-status{font-size:10px;color:#929a88;display:flex;align-items:center;gap:5px}.save-status>span{background:#98aa89;width:5px;height:5px;border-radius:50%}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #dfe3d7;background:#e9efdf;padding:12px 18px;border-radius:10px;font-weight:700;font-size:12px}.primary{background:var(--sage);border-color:var(--sage);color:white}.export-button{background:#526a4c;color:white;border:0}.intro{display:flex;justify-content:space-between;align-items:center;max-width:1800px;margin:auto;padding:30px 34px 27px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:800;color:#969c8c}h1{font-size:35px;letter-spacing:-1.5px;font-weight:500;margin:4px 0 6px;line-height:1.25}h1 em{font-style:normal;color:var(--sage);font-weight:750}p{line-height:1.6}.intro p{color:#858d7e;margin:0;font-size:12px}.text-button{font-size:11px;display:flex;gap:7px;align-items:center;color:#788470}.text-button svg{width:16px;height:16px}.workbench{max-width:1800px;margin:auto;padding:0 24px;display:grid;grid-template-columns:228px minmax(400px,1fr) 296px;gap:16px;align-items:start}.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:22px 18px}.panel-title{display:flex;align-items:center;gap:10px;margin-bottom:19px}.step{font-size:10px;color:#8e9d80;background:#eef2e7;width:25px;height:25px;display:grid;place-items:center;border-radius:8px;font-weight:700}h2{font-size:14px;letter-spacing:-.35px;margin:0;font-weight:750}h3{font-size:11px;margin:0;font-weight:750}.muted{color:#8f9688;font-size:11px;margin:8px 0 12px}.small{font-size:10px;line-height:1.6}.dimensions{display:grid;grid-template-columns:1fr 1fr;gap:11px}.dimensions label{color:#6f7868;font-size:10px}.dimensions input{display:block;width:100%;margin-top:5px;border:1px solid var(--line);border-radius:7px;background:white;height:37px;padding:7px 10px;color:#424d3b;font-size:13px;font-weight:600}.height-field{position:relative;grid-column:1 / -1}.height-field input{padding-right:40px}.height-field svg{position:absolute;right:12px;bottom:10px;width:17px;height:17px;color:#a9afa0;pointer-events:none}.drawer-preview{background:#f7f8f1;border:1px solid #edf0e5;border-radius:10px;margin-top:14px;text-align:center;padding:6px 8px 10px}.drawer-preview svg{height:77px;width:100%}.drawer-preview span{display:block;font-size:8px;color:#969c8a}.divider{height:1px;background:var(--line);margin:21px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:5px}.info-dot{font-family:Georgia;font-size:10px;border:1px solid #bbc1b1;border-radius:50%;width:13px;height:13px;text-align:center;color:#a4ad9a}.outline-button{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:white;border-radius:8px;padding:10px;font-size:11px;font-weight:600}.cutout-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cutout-buttons svg{width:16px;height:16px}.presets{display:grid;gap:6px;margin-top:11px}.presets button{border:1px solid var(--line);border-radius:8px;text-align:left;font-size:10px;padding:10px;background:white;display:flex;align-items:center;gap:9px}.presets button span{color:#869979;font-size:16px;line-height:1}.presets button.active{background:#f0f3e8;border-color:#b8c5ab}.gentle-note{border-radius:10px;background:#f2f0f7;padding:12px;display:flex;gap:8px;align-items:flex-start;margin-top:22px;color:#8d819c}.gentle-note svg{width:18px;height:18px;flex-shrink:0}.gentle-note p{font-size:10px;margin:0}.canvas-panel{background:#f0f1e9;border:1px solid #e2e5d8;position:relative;border-radius:17px;overflow:hidden}.canvas-toolbar{height:57px;display:flex;justify-content:space-between;align-items:center;padding:0 19px;border-bottom:1px solid #e1e4d6;background:#f6f7f0}.view-label{font-size:10px;color:#79836e;display:flex;gap:7px;align-items:center}.live-dot{width:5px;height:5px;border-radius:50%;background:#8fa477}.tools{display:flex;gap:3px;align-items:center}.icon-button{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;color:#7e8873}.icon-button svg{width:16px;height:16px}.icon-button:hover{background:#e4e9d9}.icon-button.active{background:#e5ebda;color:#5a7346}.tool-divider{width:1px;height:15px;background:#dce1d2;margin:0 6px}.canvas-stage{position:relative;height:580px;min-height:420px;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(#dce1d1 .8px,transparent .8px);background-size:16px 16px;padding:12px 12px 48px}.canvas-stage svg#scene{width:100%;height:100%;touch-action:none;overflow:visible;outline:none;user-select:none}.canvas-stage.is-dragover{background-color:#e2e8d7}.canvas-pill{position:absolute;bottom:18px;display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid #e1e5d7;border-radius:30px;background:#f8f9f3b8;color:#8d9584;font-size:9px;pointer-events:none}.canvas-pill svg{width:13px;height:13px}.canvas-status{padding:15px 20px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e0e4d7;background:#f8f9f3;gap:8px;font-size:10px;color:#7d8970}.canvas-status #layout-status{font-weight:650;display:flex;align-items:center;gap:6px}.canvas-status svg{width:14px;height:14px}.canvas-status .has-error{color:#b77e53}.canvas-status #dimensions-status{font-size:9px;white-space:nowrap;color:#9ba38e}.selection-toolbar{position:absolute;bottom:99px;left:50%;transform:translateX(-50%);background:#fffefc;box-shadow:0 5px 25px #424c3220;border:1px solid #e3e6d9;border-radius:12px;padding:5px 7px 5px 14px;display:flex;align-items:center;gap:4px;max-width:95%;z-index:2}.selection-toolbar[hidden]{display:none}.selection-toolbar #selection-name{font-size:10px;font-weight:650;padding-right:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.selection-toolbar #remove{color:#b08d89}.warnings{padding:8px 18px 12px;background:#fff8eb;border-top:1px solid #eadfc9;font-size:10px;color:#9b7550;line-height:1.6}.warnings button{padding:4px 0;display:block;text-align:left;text-decoration:underline}.catalog-panel{padding:22px 15px 17px}.catalog-panel .panel-title{margin:0 3px 18px}.catalog-tabs{display:flex;gap:3px;background:#f1f2ec;border-radius:9px;padding:4px}.catalog-tabs button{flex:1;padding:9px 3px;border-radius:6px;font-size:10px;color:#8c9382}.catalog-tabs .active{background:#fffefb;color:#4c6144;box-shadow:0 2px 5px #4353320b;font-weight:750}.catalog-hint{font-size:9px;color:#929985;text-align:center;padding:13px 0 9px}.filters{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 13px}.filters button{font-size:9px;border:1px solid #e4e7db;border-radius:20px;padding:5px 8px;color:#8c9481}.filters button.active{background:#edf1e4;border-color:#dce5ce;color:#617a4d}.catalog-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-height:426px;overflow-y:auto;padding:1px 2px 4px;scrollbar-width:thin;scrollbar-color:#d6ddca transparent}.catalog-card{border:1px solid #e6e8dd;border-radius:11px;background:white;cursor:grab;overflow:hidden;position:relative;padding:0;text-align:left}.catalog-card:active{cursor:grabbing}.catalog-card:hover{border-color:#b9c8a8;transform:translateY(-1px)}.catalog-card .product-art{height:81px;background:#f4f5ee;display:grid;place-items:center;margin:4px;border-radius:7px}.catalog-card .product-art svg{height:70px;width:100%;overflow:visible}.catalog-card .product-name{display:block;margin:10px 9px 3px;font-size:10px;font-weight:750}.catalog-card .product-size{display:block;color:#9a9f92;font-size:8px;margin:0 8px 11px}.catalog-card .add-icon{position:absolute;bottom:23px;right:6px;width:19px;height:19px;border:1px solid #e2e7d8;background:#fcfff8;border-radius:50%;display:grid;place-items:center;color:#849571;font-size:13px}.collection{border-top:1px solid var(--line);margin-top:18px;padding:17px 3px 0}.count-badge{font-size:9px;background:#edf1e4;color:#8b9b76;padding:2px 6px;border-radius:5px}.collection-row{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#7a8470;padding:5px 0}.collection-row .row-name{display:flex;gap:7px;align-items:center}.color-dot{height:7px;width:7px;border-radius:50%;background:#d9dfcc;display:inline-block}.collection-row .qty{font-size:9px;color:#a0a58f}.catalog-details{margin-top:18px;padding:0 3px;color:#9b9e93;font-size:9px;line-height:1.7}.catalog-details summary{cursor:pointer}.selected-panel{margin-top:20px;border-top:1px solid var(--line);padding-top:17px}.selected-panel:empty{display:none}.selected-panel h3{margin-bottom:10px}.selected-panel label{display:block;font-size:9px;color:#8b9381}.selected-panel input{display:block;width:100%;border:1px solid #e3e6d9;border-radius:6px;background:white;font-size:11px;padding:7px;margin:5px 0 10px;min-width:0}.selected-panel input:disabled{background:#f4f5f0;color:#9b9f94}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px}.field-trio{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.swatches{display:flex;gap:8px;padding:4px 0}.swatch{width:20px;height:20px;border-radius:50%;background:var(--c);border:2px solid white;box-shadow:0 0 0 1px #e0e3d7}.swatch.active{box-shadow:0 0 0 2px #899978}.selected-note{color:#9b9f92;font-size:9px;line-height:1.5;margin-top:10px}.app-footer{max-width:1800px;padding:24px 33px;display:flex;justify-content:space-between;color:#9ca48e;font-size:9px;margin:auto;gap:15px}.tiny-brand{color:#7d8970;font-weight:800;margin-right:8px;font-size:13px;letter-spacing:-.5px}dialog{border:1px solid #e2e5d9;box-shadow:0 20px 100px #29311b30;border-radius:20px;padding:32px;max-width:480px;color:#3c4734;background:#fffefb;font-size:12px}dialog::backdrop{background:#303a2840;backdrop-filter:blur(4px)}dialog h2{font-size:25px;letter-spacing:-1px;margin:8px 0 18px}dialog ol{padding-left:20px;color:#7a846e;line-height:1.7}dialog li{padding:0 0 13px 5px}dialog li b{color:#536447}dialog .dialog-close{position:absolute;right:14px;top:14px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,10px);opacity:0;background:#3e5336;color:#fffef5;padding:12px 20px;border-radius:11px;box-shadow:0 8px 25px #31492324;z-index:20;pointer-events:none;transition:.2s;font-size:12px;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}svg .scene-item{cursor:grab}svg .scene-item:active{cursor:grabbing}@media(min-width:1600px){.canvas-stage{height:650px}.workbench{grid-template-columns:248px minmax(400px,1fr) 310px}.catalog-grid{max-height:474px}.catalog-card .product-art{height:90px}}@media(max-width:1180px){.workbench{grid-template-columns:205px minmax(300px,1fr) 250px;gap:10px;padding:0 16px}.panel{padding:17px 12px}.canvas-stage{height:520px}.header-note{display:none}.intro{padding:24px}.catalog-card .product-art{height:65px}.catalog-card .product-name{font-size:9px}.catalog-card .product-size{font-size:7px}.catalog-tabs button{font-size:9px}.save-status{display:none}.canvas-status{padding:13px 10px}.canvas-status #dimensions-status{display:none}}@media(max-width:900px){.workbench{grid-template-columns:190px 1fr;gap:12px}.catalog-panel{grid-column:1 / -1;display:grid;grid-template-columns:210px 1fr;column-gap:20px}.catalog-panel .panel-title,.catalog-tabs,.catalog-hint,.filters{grid-column:1}.catalog-panel .catalog-grid{grid-column:2;grid-row:1 / span 5;grid-template-columns:repeat(4,1fr);max-height:310px}.catalog-panel .collection{grid-column:1;margin-top:0}.catalog-details{grid-column:1 / -1}.canvas-stage{height:600px}.intro h1{font-size:31px}.app-header{padding:0 20px;height:69px}.studio{font-size:17px}.export-button{font-size:10px;padding:10px}.drawer-panel{padding:17px 12px}}@media(max-width:600px){.app-header{height:64px;padding:0 15px}.brand b{font-size:24px}.brand-mark{width:24px;height:24px}.brand-divider{margin:0 4px}.studio{font-size:15px}.beta{display:none}.export-button{font-size:9px;padding:9px;gap:5px}.export-button svg{width:14px;height:14px}.intro{padding:22px 17px 18px;align-items:flex-start;gap:7px}.intro h1{font-size:29px}.intro p{font-size:10px;max-width:220px}.eyebrow{font-size:8px;letter-spacing:1.7px}.text-button{font-size:0;padding-top:15px}.text-button svg{width:20px;height:20px}.workbench{display:flex;flex-direction:column;padding:0 10px;gap:13px}.drawer-panel{width:100%;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.drawer-panel .panel-title{grid-column:1 / -1;margin-bottom:10px}.drawer-panel>.muted{grid-column:1 / -1;margin:0 0 8px}.dimensions{grid-column:1 / -1;grid-template-columns:repeat(3,1fr)}.height-field{grid-column:auto}.height-field svg{display:none}.height-field input{padding:7px 10px}.drawer-preview,.drawer-panel>.divider,.gentle-note{display:none}.drawer-panel>.section-heading{margin:15px 0 8px;grid-column:1}.drawer-panel>.small{display:none}.cutout-buttons{grid-column:1}.drawer-panel>.section-heading:nth-of-type(8){display:none}.presets{grid-column:2;grid-row:5 / span 2;display:flex;flex-direction:column;margin:12px 0 0;gap:4px}.presets button{font-size:9px;padding:7px}.selected-panel{grid-column:1/-1;margin-top:12px;padding-top:12px}.selected-panel .field-pair{display:inline-grid;width:49%;padding-right:7px}.selected-panel .swatches{display:inline-flex}.selected-panel .selected-note{margin:4px 0}.canvas-panel{width:100%;order:1}.catalog-panel{width:100%;display:block;order:2}.canvas-stage{height:420px;min-height:320px;padding:3px 4px 43px}.canvas-toolbar{padding:0 12px;height:47px}.canvas-pill{font-size:8px;padding:7px 10px}.canvas-status #dimensions-status{display:block;font-size:8px}.catalog-grid{grid-template-columns:repeat(3,1fr);max-height:350px}.catalog-card .product-art{height:72px}.catalog-card .product-name{font-size:10px}.catalog-card .product-size{font-size:8px}.catalog-panel .catalog-grid{grid-template-columns:repeat(3,1fr)}.catalog-panel .panel-title{margin:0 0 14px}.catalog-tabs button{font-size:11px}.collection{margin-top:15px!important}.app-footer{font-size:8px;flex-direction:column;padding:20px 17px;gap:7px}.selection-toolbar #selection-name{max-width:125px}.selection-toolbar{bottom:92px}.header-actions{gap:0}dialog{margin:20px;max-width:calc(100% - 40px);padding:25px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.floor-launch{width:100%;margin-top:16px}.floor-gap,.mount-note{padding:13px;border-radius:12px;background:#edf1e4;color:#586c44;font-size:13px;line-height:1.6}.color-review{padding:12px;background:#fff0da;border:1px solid #ead4b6;border-radius:10px;color:#866044;font-size:12px;line-height:1.5}.swatch[aria-pressed="true"]{outline:2px solid #788b61;outline-offset:3px}
.scene-hover-label{position:absolute;top:15px;left:14px;max-width:calc(100% - 250px);padding:7px 11px;border:1px solid #a7c0b5;border-radius:9px;background:#fffefbf2;color:#376a61;box-shadow:0 2px 10px #40584612;font-size:10px;line-height:1.4;pointer-events:none;z-index:2}.scene-hover-label[hidden]{display:none}
svg .item-hover-outline{opacity:0;pointer-events:none;stroke:#467c76;stroke-width:2;fill:none;vector-effect:non-scaling-stroke}svg .scene-item.is-hovered .item-hover-outline,svg .scene-item:hover .item-hover-outline{opacity:1}svg .item-decoration{pointer-events:none}svg[data-dragging] .scene-item{cursor:grabbing}
@media(max-width:600px){.scene-hover-label{top:53px;left:10px;max-width:calc(100% - 20px);font-size:9px;padding:5px 9px}}

svg .scene-item.is-lifted{opacity:.75;filter:drop-shadow(4px 8px 4px #536b4c55)}svg .scene-item.is-lifted .item-hover-outline{opacity:1;stroke:#467c76}svg .scene-item.invalid-landing .item-hover-outline{stroke:#c34f46;stroke-dasharray:5 3}

.model-thumbnail{width:100%;height:100%;object-fit:contain;display:block;border-radius:9px}.palette-actions{flex-wrap:wrap;gap:8px}

.base-auto{margin-top:18px;padding:14px 0;border-top:1px solid var(--line)}.base-auto strong{font-size:12px}.base-auto .outline-button{width:100%;margin-top:5px}.base-procurement-note{font-size:10px;line-height:1.6;color:#7a8372;margin:8px 0}.cutting-dialog{width:min(900px,94vw)}.cutting-sheets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:22px 0}.cutting-sheet{border:1px solid var(--line);padding:15px;border-radius:14px}.cutting-sheet svg{width:100%;height:auto;display:block}.cutting-sheet p{font-size:11px}.cutting-dialog pre{white-space:pre-wrap;max-height:350px;overflow:auto;font:12px/1.7 Manrope,Arial,sans-serif}.cutting-dialog details summary{cursor:pointer;padding:10px 0}.catalog-card[data-product="base"] .add-icon{font-size:7px}

/* Keep cutout selection and dimensions together at every viewport size. */
.cutout-list{display:grid;gap:6px;margin-top:12px}.cutout-list:empty{display:none}.cutout-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fffefb;text-align:left;font-size:11px}.cutout-row span{overflow-wrap:anywhere}.cutout-row small{white-space:nowrap;color:#78856d}.cutout-row[aria-pressed="true"]{background:#edf1e4;border-color:#aabc97}.cutout-settings .selected-panel{margin-top:12px;padding-top:12px}.new-idea{width:100%;display:flex;justify-content:center;gap:8px}.cutout-settings>.small{margin-top:8px}.base-auto{margin-top:0;border-top:0}
@media(max-width:600px){.cutout-settings,#selection-inspector-slot,.new-idea,.base-auto{grid-column:1/-1}.cutout-settings{margin-top:14px}.cutout-settings .cutout-buttons{display:grid;grid-template-columns:1fr 1fr}.cutout-settings .selected-panel .field-pair{display:grid;width:100%;padding-right:0}.new-idea{margin-top:12px}}
.collection-row.priced{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;text-align:left}.collection-row.priced .row-name{min-width:0}.collection-row.priced .line-price{grid-column:1/-1;display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#8a907e}.collection-row.priced .line-price strong{font-size:13px;color:#46533b;white-space:nowrap}.collection-total,.order-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid #dfe3d5;margin-top:14px;padding-top:16px}.collection-total strong{font-size:21px;color:#384d2d;white-space:nowrap}.price-note{font-size:11px!important;line-height:1.6}.price-note a{color:inherit;text-underline-offset:3px}.order-total{font-size:20px;margin:20px 0 10px}.order-table th:nth-child(n+3),.order-table td:nth-child(n+3){text-align:right;white-space:nowrap}.order-table-wrap{overflow-x:auto}.product-price{font-size:12px;font-weight:600;color:#627348;display:block;margin-top:5px}
