.designer-intro{padding-bottom:12px}.designer-service-letter{fill:var(--ink);font-size:10px;font-weight:600}.designer-issues>button,.designer-step-actions>button:not(.button){border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.4}.designer-issues>button{margin-top:12px}.designer-controls>.designer-issues{margin-bottom:24px}.designer-issues>button:hover,.designer-step-actions>button:not(.button):hover{background:var(--paper);border-color:var(--accent)}.designer-intro-row{justify-content:space-between;align-items:center;gap:24px;padding:4px 0 20px;display:flex}.designer-intro-row h1{letter-spacing:-.045em;font-size:clamp(28px,3vw,40px)}.designer-intro-row>p{font-size:14px;line-height:1.6}.designer-shell{--designer-error:#933b32;--designer-wash:#edf2ed;padding-bottom:90px}.designer-progress{border-block:1px solid var(--line);scrollbar-width:thin;display:flex;overflow-x:auto}.designer-progress button{background:var(--surface);min-height:56px;color:var(--muted);white-space:nowrap;border:0;border-bottom:3px solid #0000;flex:1 0 auto;justify-content:center;align-items:center;gap:10px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.designer-progress button:hover:not(:disabled){background:var(--paper);color:var(--ink)}.designer-progress button.is-active{border-bottom-color:var(--accent);color:var(--ink);background:var(--paper)}.designer-progress button:disabled{opacity:.45;cursor:not-allowed}.designer-step-number{border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.designer-progress .is-active .designer-step-number{background:var(--accent);color:var(--surface);border-color:var(--accent)}.designer-workspace{grid-template-columns:minmax(340px,420px) minmax(0,1fr);align-items:start;gap:clamp(24px,3vw,48px);display:grid}.designer-controls{min-width:0;padding-top:28px}.designer-step-head{border-bottom:0;margin-bottom:24px;padding-bottom:0}.designer-step-head .eyebrow{margin-bottom:12px}.designer-step-head h2{letter-spacing:-.035em;font-size:clamp(26px,2.2vw,32px);line-height:1.2}.designer-step-head p:last-child{margin-top:10px;font-size:14px;line-height:1.7}.designer-layout-list{border:0;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;display:grid}.designer-layout-list legend{margin-bottom:8px;font-size:13px;font-weight:600}.designer-layout-choice{border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;grid-template-columns:1fr;gap:2px;padding:10px 14px 12px;display:grid;position:relative}.designer-layout-choice:first-of-type{border-top:1px solid var(--line)}.designer-layout-choice.is-selected{background:var(--designer-wash);border:1px solid var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.designer-layout-choice:hover{background:var(--paper)}.designer-layout-choice input{width:18px;height:18px;accent-color:var(--accent);position:absolute;top:10px;right:10px}.designer-layout-choice span{gap:2px;display:grid}.designer-layout-choice strong{font-size:15px;font-weight:600}.designer-layout-choice small{color:var(--muted);font-size:11px;line-height:1.45}.designer-note{border-left:2px solid var(--accent);color:var(--muted);margin:24px 0;padding:6px 0 6px 14px;font-size:12px;line-height:1.7}.designer-next{margin-top:8px}.designer-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.designer-field{flex-direction:column;gap:7px;min-width:0;display:flex}.designer-field label{color:var(--ink);font-size:12px;font-weight:600;line-height:1.45}.designer-unit{color:var(--muted);font-size:11px;font-weight:400}.designer-field input,.designer-field select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;height:48px;color:var(--ink);font:inherit;outline:none;padding:8px 12px;font-size:16px}.designer-field input:hover,.designer-field select:hover{border-color:var(--muted)}.designer-field input:focus-visible,.designer-field select:focus-visible,.designer-check input:focus-visible,.designer-layout-choice input:focus-visible,.designer-file-input:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-color:var(--accent)}.designer-field input[aria-invalid=true]{border-color:var(--designer-error);box-shadow:inset 0 0 0 1px var(--designer-error)}.designer-field small{color:var(--muted);font-size:11px;line-height:1.5}.designer-field small.designer-field-error{color:var(--designer-error);font-weight:600}.designer-form-section{border-top:1px solid var(--line);margin-top:28px;padding-block:28px}.designer-form-section>p{margin:8px 0 16px;font-size:12px;line-height:1.7}.designer-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.designer-section-heading h3{font-size:18px}.designer-section-heading button,.designer-secondary-action,.designer-back,.designer-edit-actions button,.designer-toolbar button,.designer-export-actions button:not(.button),.designer-preview-toggle{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);padding:8px 12px;font-size:12px;font-weight:600;line-height:1.4}.designer-section-heading button:hover,.designer-secondary-action:hover,.designer-back:hover,.designer-edit-actions button:hover,.designer-toolbar button:hover:not(:disabled),.designer-export-actions button:not(.button):hover,.designer-preview-toggle:hover{background:var(--paper);border-color:var(--accent)}.designer-entry{border:0;border-top:1px solid var(--line);margin:18px 0 0;padding:16px 0 0}.designer-entry legend{padding-right:10px;font-size:13px;font-weight:600}.designer-entry-top{align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.designer-entry-top .designer-field{flex:1}.designer-remove{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--designer-error);padding:8px 12px;font-size:12px;font-weight:600}.designer-remove:hover{border-color:var(--designer-error);background:#fbf0ee}.designer-check{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:13px;display:flex}.designer-check input{width:18px;height:18px;accent-color:var(--accent)}.designer-step-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-top:28px;display:flex}.designer-step-actions .button{text-align:center;min-height:48px;font-size:12px}.designer-issues{border-left:3px solid var(--designer-error);color:var(--ink);background:#fbf0ee;margin-top:20px;padding:14px 16px}.designer-issues strong{font-size:14px}.designer-issues ul{margin:8px 0 0;padding-left:20px;font-size:12px;line-height:1.7}.designer-toolbar{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.designer-toolbar button:disabled{opacity:.45;cursor:not-allowed}.designer-module-list{border-top:1px solid var(--line)}.designer-module-list button{text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--surface);width:100%;min-height:64px;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.designer-module-list button:hover{background:var(--paper)}.designer-module-list button.is-selected{background:var(--designer-wash);box-shadow:inset 3px 0 var(--accent)}.designer-module-list button span:first-child{gap:2px;display:grid}.designer-module-list strong{font-size:12px}.designer-module-list small{color:var(--muted);font-size:11px}.designer-module-list button>span:last-child{color:var(--accent);font-size:16px}.designer-edit-panel{border:1px solid var(--line);margin:24px 0 0;padding:16px}.designer-edit-panel legend{padding-inline:5px;font-size:13px;font-weight:600}.designer-edit-panel .designer-field-grid{margin-bottom:12px}.designer-edit-actions{flex-wrap:wrap;gap:8px;margin-block:14px;display:flex}.designer-edit-panel .designer-remove{margin-top:8px}.designer-preview{background:var(--paper);border:1px solid var(--line);min-width:0;margin-top:28px;position:sticky;top:112px}.designer-preview-toggle{display:none}.designer-preview-inner{padding:20px}.designer-preview-head{justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px;display:flex}.designer-preview-head .eyebrow{margin-bottom:4px;font-size:10px}.designer-preview-head h2{font-size:25px}.designer-preview-head>span{color:var(--muted);text-align:right;font-size:11px}.designer-view-switch{border:1px solid var(--line);background:var(--surface);gap:0;width:fit-content;margin-bottom:14px;display:flex}.designer-view-switch button{border:0;border-right:1px solid var(--line);min-height:44px;color:var(--muted);background:0 0;padding:8px 20px;font-size:12px;font-weight:600}.designer-view-switch button:last-child{border-right:0}.designer-view-switch button.is-active{color:var(--surface);background:var(--accent)}.designer-view-switch button:disabled{opacity:.45;cursor:not-allowed}.designer-view-stage{background:var(--surface);min-height:360px}.designer-3d-loading{background:var(--surface);place-items:center;min-height:400px;font-size:13px;display:grid}.designer-plan svg{width:100%;height:auto;max-height:520px;display:block}.designer-plan-measure{fill:var(--ink);font-size:21px;font-weight:600}.designer-wall-letter{fill:var(--accent);font-size:16px;font-weight:600}.designer-module-letter{fill:var(--ink);stroke:var(--surface);stroke-width:5px;paint-order:stroke fill;stroke-linejoin:round;pointer-events:none;font-size:21px;font-weight:600}.designer-plan-prompt{fill:var(--muted);font-size:16px}.designer-plan-module.is-interactive{cursor:pointer}.designer-plan-module.is-interactive:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.designer-plan-key,.designer-plan-materials{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:6px 14px;padding:10px 14px;font-size:10px;line-height:1.5;display:flex}.designer-plan-materials strong{color:var(--ink)}.designer-plan-texture-note{border-top:1px solid var(--line);padding:8px 14px;font-size:11px;line-height:1.6}.designer-selected-caption{color:var(--ink);border-top:1px solid var(--line);padding:8px 14px;font-size:11px}.designer-preview-foot{justify-content:space-between;gap:16px;margin-top:14px;display:flex}.designer-preview-foot p,.designer-preview-foot span{font-size:11px;line-height:1.6}.designer-preview-foot span{text-align:right;color:var(--muted)}.designer-status{border-top:1px solid var(--line);color:var(--muted);gap:4px;margin-top:32px;padding-top:14px;font-size:11px;display:grid}.designer-current-decor{margin-top:12px;font-size:12px}.designer-filter-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.designer-filter-row .designer-field:last-child{grid-column:1/-1}.designer-result-count{margin:16px 0 10px;font-size:11px}.designer-decor-list{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.designer-decor{text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-width:0;min-height:0;color:var(--ink);flex-direction:column;align-items:stretch;gap:8px;padding:6px 6px 10px;display:flex;position:relative}.designer-decor:hover{background:var(--paper)}.designer-decor.is-selected{background:var(--designer-wash);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.designer-decor-preview{aspect-ratio:1.3;border:1px dashed var(--line);background:var(--paper);text-align:center;width:100%;height:auto;color:var(--muted);place-items:center;font-size:10px;line-height:1.4;display:grid;position:relative;overflow:hidden}.designer-decor-preview.has-image{border-style:solid}.designer-decor-preview img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.designer-swatch-status{padding:4px}.designer-decor-copy{gap:3px;min-width:0;display:grid}.designer-decor-copy strong{font-size:12px;font-weight:600;line-height:1.3}.designer-decor-copy small{color:var(--muted);font-size:10px;line-height:1.4}.designer-decor-state{color:var(--surface);background:var(--accent);border-radius:var(--radius);padding:3px 5px;font-size:10px;font-weight:600;line-height:1.5;position:absolute;top:9px;right:9px}.designer-empty{background:var(--paper);padding:24px;font-size:13px}.designer-surface-note{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.designer-surface-note strong{font-size:13px}.designer-surface-note p{margin-top:8px;font-size:12px}.designer-summary-facts{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;margin:20px 0;display:grid}.designer-summary-facts>div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);gap:4px;padding:12px;display:grid}.designer-summary-facts span{color:var(--muted);font-size:11px}.designer-summary-facts strong{font-size:13px;font-weight:600}.designer-summary h3{margin:28px 0 12px;font-size:17px}.designer-summary-modules{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.designer-summary-modules li{border-bottom:1px solid var(--line);gap:2px;padding:9px 0;font-size:12px;display:grid}.designer-summary-modules li span{color:var(--muted)}.designer-summary-materials{border-top:1px solid var(--line);margin:0}.designer-summary-materials>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:9px 0;font-size:12px;display:flex}.designer-summary-materials dt{color:var(--muted)}.designer-summary-materials dd{text-align:right;max-width:55%;margin:0}.designer-assumptions{color:var(--muted);padding-left:20px;font-size:12px;line-height:1.7}.designer-export-actions{flex-wrap:wrap;gap:8px;margin-top:28px;display:flex}.designer-export-actions .button{min-height:44px;font-size:12px}.designer-file-input,.designer-print-plan{display:none}.designer-contact-link{border-bottom:1px solid var(--accent);min-height:44px;color:var(--accent);align-items:center;gap:12px;font-size:12px;font-weight:600;display:inline-flex}@media (max-width:1100px){.designer-workspace{grid-template-columns:minmax(300px,365px) minmax(0,1fr);gap:24px}.designer-preview-inner{padding:12px}.designer-preview-head h2{font-size:21px}.designer-preview-foot{display:block}.designer-preview-foot span{text-align:left;margin-top:8px;display:block}}@media (max-width:950px){.designer-intro-row{gap:32px}.designer-workspace{flex-direction:column;display:flex}.designer-controls{width:100%;padding-top:26px}.designer-preview{order:-1;width:100%;margin-top:20px;position:static}.designer-preview-toggle{background:var(--paper);border:0;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding-inline:16px;display:flex}.designer-preview:not(.is-open) .designer-preview-inner{display:none}.designer-preview-inner{padding:12px}.designer-view-stage{min-height:0}}@media (max-width:767px){.designer-intro{padding-bottom:12px}.designer-intro-row{padding:4px 0 24px;display:block}.designer-intro-row h1{font-size:29px}.designer-intro-row>p{margin-top:8px;font-size:13px}.designer-shell{padding-bottom:56px}.designer-progress{margin-inline:calc(var(--gutter)*-1);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:visible}.designer-progress button{flex-direction:column;gap:4px;min-width:0;min-height:64px;padding:6px 2px;font-size:10px}.designer-step-number{width:22px;height:22px}.designer-workspace{gap:0}.designer-preview{margin-top:14px}.designer-controls{padding-top:24px}.designer-step-head h2{font-size:29px}.designer-step-head p:last-child{font-size:13px}.designer-layout-choice{min-height:62px}.designer-field-grid{gap:12px}.designer-entry-top{flex-wrap:wrap}.designer-entry-top .designer-field{min-width:42%}.designer-entry-top .designer-remove{margin-left:auto}.designer-step-actions .button{width:100%}.designer-back{order:2}.designer-preview-inner{padding:10px}.designer-plan-key,.designer-plan-materials{padding:8px;font-size:9px}.designer-preview-foot{margin-top:10px}.designer-export-actions .button{width:100%}.designer-export-actions button:not(.button){flex:42%}}@media (max-width:380px){.designer-field-grid{grid-template-columns:1fr}.designer-decor-list{gap:6px}}@media print{@page{size:A4 portrait;margin:14mm}.site-header,.site-footer,.designer-intro .breadcrumb,.designer-progress,.designer-preview,.designer-status,.designer-step-actions,.designer-export-actions,.designer-contact-link,.designer-summary>.designer-note{display:none!important}.designer-intro-row{padding:0 0 10mm;display:block}.designer-intro-row h1{font-size:22pt}.designer-intro-row>p{display:none}.designer-shell{width:100%;padding:0}.designer-workspace{display:block}.designer-controls{padding:0}.designer-step-head{margin-bottom:4mm;padding-bottom:4mm}.designer-step-head h2{font-size:18pt}.designer-step-head p:last-child{font-size:9pt}.designer-summary h3{margin:5mm 0 2mm;font-size:11pt}.designer-summary-facts{margin:3mm 0}.designer-summary-modules li,.designer-summary-materials>div,.designer-assumptions{font-size:8pt}.designer-print-plan{break-inside:avoid;margin-top:5mm;display:block}.designer-print-plan .designer-plan svg{max-height:110mm}.designer-print-plan .designer-plan-key,.designer-print-plan .designer-plan-materials{font-size:7pt}}.designer-workspace{scroll-margin-top:112px}.designer-shell .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.designer-layout-sketch{width:100%;max-width:110px;height:70px}.designer-layout-choice:last-child{grid-column:1/-1;align-items:center;gap:20px;display:flex}.designer-extra{border-block:1px solid var(--line);margin-top:18px}.designer-extra+.designer-extra{border-top:0;margin-top:0}.designer-extra>summary{cursor:pointer;min-height:54px;color:var(--ink);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;font-size:13px;font-weight:600;line-height:1.5;list-style:none;display:flex}.designer-extra>summary::-webkit-details-marker{display:none}.designer-extra>summary>span{flex-shrink:0;font-size:21px;font-weight:400}.designer-extra[open]>summary>span{transform:rotate(45deg)}.designer-extra>summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.designer-extra-content{padding:4px 0 20px}.designer-extra-content>p{margin:10px 0 14px;font-size:12px;line-height:1.7}.designer-extra-content>.designer-form-section:first-child{border:0;margin:0;padding-top:0}.designer-extra-content>.designer-form-section:last-child{padding-bottom:0}.designer-helper{color:var(--muted);margin:12px 0 20px;font-size:12px;line-height:1.7}.designer-text-action{min-height:44px;color:var(--accent);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin-top:8px;padding:10px 0;font-size:12px;font-weight:600;text-decoration:underline;display:block}.designer-text-action:hover{text-decoration-thickness:2px}.designer-color-mode{margin-bottom:18px}.designer-color-mode .designer-helper{margin:0 0 6px}.designer-color-mode .designer-current-decor{color:var(--ink);margin:6px 0;font-size:12px;line-height:1.6}.designer-search,.designer-category{margin-top:14px}.designer-decor-copy{padding:0 2px}.designer-color-actions{background:var(--surface);border-top:1px solid var(--line);z-index:2;margin-top:12px;padding-block:12px;position:sticky;bottom:0}.designer-module-list{overscroll-behavior:contain;max-height:260px;overflow:auto}.designer-summary>.designer-export-actions{margin-top:20px}.designer-summary>.designer-contact-link{margin-top:14px}.designer-draft-notice{border-left:3px solid var(--accent);background:var(--paper);margin-bottom:20px;padding:12px 14px;font-size:12px;line-height:1.6}.designer-draft-notice button{border:0;border-bottom:1px solid var(--accent);color:var(--accent);cursor:pointer;background:0 0;min-height:44px;padding:5px 0;font-size:12px;font-weight:600;display:block}@media (max-width:950px){.designer-intro-row{gap:14px}.designer-extra>summary{min-height:54px}}@media (max-width:767px){.designer-intro-row{padding-bottom:16px}.designer-layout-sketch{height:60px}.designer-step-head{margin-bottom:20px}.designer-step-head h2{font-size:27px}.designer-color-actions{flex-wrap:nowrap;gap:8px}.designer-color-actions .button{flex:1;width:auto}.designer-color-actions .designer-back{flex:none;order:0}}@media print{.designer-draft-notice,.designer-module-editor,.designer-file-options,.designer-technical-summary>summary{display:none!important}.designer-technical-summary,.designer-technical-summary>.designer-extra-content{border:0;display:block!important}.designer-technical-summary::details-content{content-visibility:visible;display:contents}}
