/* 2026-10-12: existing Batang canvas, dancheong actions, neutral image stage. */
:root{--compare-bg:#eaf2fc;--compare-ink:#204e85;--remove-bg:#fff1e9;--remove-ink:#923b1d;--soft:#f3f6f1;--accent:#2f6332;--focus:#2f6332}
body.modal-open{overflow:hidden}
[hidden]{display:none!important}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.theme-toggle{flex:0 0 44px;width:44px;height:44px;padding:0;font-size:21px;border:1px solid var(--line);background:var(--surface);border-radius:50%}
header nav{margin-left:auto}
.compare-add,button.compare-add{background:var(--compare-bg);border:1px solid #99b8dc;color:var(--compare-ink)}
.compare-remove,button.compare-remove{background:var(--remove-bg);border:1px solid #dca98f;color:var(--remove-ink)}
.compare-add:hover{background:#d5e5fa;color:#163c69}.compare-remove:hover{background:#ffe0ce;color:#763016}
.cart-add,.cart-added,button.cart-add{background:#2f6332;color:#fff;border:1px solid #2f6332}.cart-added{background:#e8f2e7;color:#244e27}.cart-add:hover,.cart-added:hover{background:#244e27;color:#fff}
.card-actions>*{min-height:44px!important}.card-actions .cart-added{width:100%}
/* Header and actions never scroll away inside the modal. */
dialog.filters{position:fixed!important;inset:0!important;margin:auto!important;width:min(540px,calc(100vw - 32px))!important;height:auto;max-height:min(760px,85dvh)!important;padding:0!important;overflow:hidden!important;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink)}
dialog.filters:not([open]){display:none!important}dialog.filters[open]{display:flex!important;flex-direction:column}
dialog::backdrop{background:#0008;backdrop-filter:blur(2px)}
.filters .filter-heading{position:relative;flex-shrink:0;margin:0;padding:16px 20px;background:var(--surface);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;z-index:2}
.filter-heading h2{margin:0;font-size:22px}.filter-heading button{min-width:64px;min-height:44px}
.filter-scroll{overflow:auto;overscroll-behavior:contain;padding:0 20px 20px;min-height:0}
.filters .filter-panel-footer{position:relative;bottom:auto;margin:0;padding:14px 20px max(14px,env(safe-area-inset-bottom));flex-shrink:0;background:var(--surface);border-top:1px solid var(--line);display:flex}
.filter-panel-footer .text{flex-basis:auto;min-width:100px}.filters .filter-options{max-height:none;overflow:visible}.filter-group{scroll-margin-top:0}.filter-group[hidden]{display:none!important}
.single-facet .filter-group>summary{display:none}.single-facet .filter-group{border:0}.filter-option{min-height:44px}.quick-filters{flex-wrap:wrap}.quick-filters button{min-height:44px!important}
.compare-next{border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:12px;padding:28px;margin:28px 0;background:var(--soft)}
.compare-next h2{font-size:24px;margin:8px 0 12px}.compare-next p{max-width:720px;color:var(--muted)}
.compare-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.compare-picks article{display:flex;flex-direction:column;align-items:start;gap:12px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.compare-picks strong{font-size:15px;overflow-wrap:anywhere}.compare-picks article>a,.compare-picks article>button{margin-top:auto;width:100%}.compare-next-cta{display:flex;width:100%;min-height:56px;font-size:17px}
.plan-total,.basket-estimate .plan-total{background:var(--soft);color:var(--ink);border:1px solid var(--line)}
.plan-total small,.plan-total p,.basket-estimate .plan-total p,.plan-total dt{color:#4b554c!important;opacity:1}
.plan-total>div>small{font-size:14px;font-weight:650}.plan-total h2{font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.035em}
.plan-total dd{font-weight:750;color:var(--ink);font-variant-numeric:tabular-nums}.plan-total dl>div{border-bottom:1px solid var(--line);padding:12px 0!important}.plan-total .estimate-condition{padding:12px;background:var(--surface);border-radius:6px;color:#39483b!important}
.story-copy h2{font-size:17px;margin:24px 0 10px}.brand-story{flex:1;min-width:240px;max-width:560px}.brand-story p{color:var(--muted);line-height:1.8}.footer-contact{flex:1;min-width:240px;max-width:500px}.feedback-invite{display:flex;flex-direction:column;text-align:left;align-items:flex-start;gap:10px;width:100%;padding:22px;background:var(--soft);border:1px solid var(--line);border-radius:10px;line-height:1.6}.feedback-invite span{font-size:14px;color:var(--muted);font-weight:400}.feedback-invite .feedback-link{font-weight:700;color:var(--brand);text-decoration:underline}.footer-contact p{font-size:14px;line-height:1.8;margin-top:20px}.footer-contact a{text-decoration:underline;text-underline-offset:4px}footer>small{width:100%;margin:0}
#dialog{max-height:85dvh;overflow:auto;overscroll-behavior:contain}#feedback-form label{display:block;font-weight:650}#feedback-message{display:block;width:100%;margin:12px 0 6px;resize:vertical;min-height:180px;padding:16px;line-height:1.9;background:var(--soft);border:1px solid var(--line)}#feedback-count{display:block;text-align:right}.feedback-delivery{color:var(--muted);font-size:13px;line-height:1.7}.feedback-heading h2{margin:8px 0 12px}#feedback-status{font-size:14px}.feedback-heading p{color:var(--muted)}
/* Dark UI changes surfaces only; material images and color swatches are untouched. */
:root[data-theme=dark]{color-scheme:dark;--paper:#101311;--surface:#191e1a;--surface-raised:#252d27;--ink:#f4f6f3;--muted:#b7c1b8;--line:#424d44;--soft:#202923;--accent:#99c894;--focus:#a7d4a3;--compare-bg:#20334b;--compare-ink:#c4dcff;--remove-bg:#442b22;--remove-ink:#ffd0b8}
[data-theme=dark] body{background:var(--paper);color:var(--ink)}
[data-theme=dark] header{background:var(--surface)!important;color:var(--ink);border-color:var(--line)}
[data-theme=dark] a:hover{color:var(--ink)}
[data-theme=dark] :is(button,.button,input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] :is(button,.button):hover{background:var(--surface-raised);color:var(--ink)}
[data-theme=dark] :is(.primary,button.primary,.tray>.primary,.filter-done,.cart-add,.cart-added){background:#2f6332;color:#fff;border-color:#739b70}
[data-theme=dark] :is(.primary,.cart-add,.cart-added):hover{background:#3b7840;color:#fff}
[data-theme=dark] :is(.compare-add,button.compare-add){background:var(--compare-bg);color:var(--compare-ink);border-color:#6485ae}
[data-theme=dark] :is(.compare-remove,button.compare-remove){background:var(--remove-bg);color:var(--remove-ink);border-color:#ae7961}
[data-theme=dark] :is(.card,.global-search,.selection-strip,.curtain-intro,.curtain-case,.curtain-room,.curtain-extras,.comparison,.cart-popover,.detail-selection-summary,.detail-sections,dialog,.tray){background:var(--surface);color:var(--ink);border-color:var(--line)}
[data-theme=dark] :is(.notice,.analytics-notice,.plan-context,.cost-settings,.cost-box,.empty,.curtain-total,.home-categories>a,.survey-form,.badge,.search-row input,.global-search input,.curtain-room input,.curtain-room select){background:var(--soft);color:var(--ink);border-color:var(--line)}
[data-theme=dark] :is(.categories a,.view-products .categories a,.view-compare .categories a){background:var(--surface);color:var(--ink);border-color:var(--line)!important}
[data-theme=dark] :is(.categories a.active,.view-products .categories a.active,.view-compare .categories a.active){background:#2f6332;color:#fff}
[data-theme=dark] :is(.comparison th:first-child,.comparison thead th){background:var(--surface-raised);color:var(--ink)}
[data-theme=dark] :is(.home-top p,.house-bar p,.home-categories p,.section-title>span,.home-top small,.group-count,.room-title>span,.cart-preview-item small,.plan-total small,.plan-total p,.plan-total dt,.basket-estimate .plan-total p,.brand-story p,.estimate-assumption){color:var(--muted)!important}
[data-theme=dark] :is(.cost-settings summary,.cart-preview-item>span,.plan-total dd,.plan-total h2){color:var(--ink)}
[data-theme=dark] .plan-total .estimate-condition{background:var(--surface);color:#d9e8da!important}
[data-theme=dark] .cart-nav.has-items{background:#293e2b}
[data-theme=dark] :is(.option:has(input:checked),.filter-option:has(input:checked),.filter-chip,.mode-option.selected){background:#293e2b;color:#dfefdc;border-color:#91b98b}
[data-theme=dark] .filter-option:hover{background:var(--surface-raised)}
[data-theme=dark] :is(header,footer) .brand-wordmark{filter:invert(1);mix-blend-mode:screen}
[data-theme=dark] .feedback-invite .feedback-link{color:#b0d5a8}
@media(max-width:600px){header{height:auto;min-height:72px;display:grid;grid-template-columns:1fr 44px;padding:8px 16px;gap:0 12px}header>.logo{grid-column:1;grid-row:1}header>.theme-toggle{grid-column:2;grid-row:1}header>nav{grid-column:1 / -1;grid-row:2;margin:0;justify-content:space-between;gap:12px;font-size:13px}header nav>a{flex:1;justify-content:center}header .cart-nav{flex:1;justify-content:center}.cart-popover{top:112px}.detail-sections{top:112px}.compare-next{padding:20px 16px}.compare-next h2{font-size:21px}.compare-picks{grid-template-columns:1fr}.compare-picks article{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;padding:14px}.compare-picks article>button,.compare-picks article>a{grid-column:1 / -1}.compare-next-cta{font-size:15px}.plan-total h2{font-size:28px!important}.plan-total dl>div{display:grid!important;grid-template-columns:1fr;gap:4px}.plan-total dd{text-align:left;font-size:16px}.footer-contact,.brand-story{max-width:none;min-width:0;width:100%;flex-basis:100%}dialog.filters{max-height:85dvh!important}.tray>div>b{font-size:13px}.tray>.primary{min-height:48px}}
/* App navigation: reference-locked rounded icon dock. */
header nav.app-tabs{display:flex;align-items:center;justify-content:center;gap:5px;background:var(--soft);padding:6px;border:1px solid var(--line);border-radius:50px;grid-area:auto}
header .app-tab{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px;padding:10px 14px;border-radius:40px;color:var(--muted);text-decoration:none;transition:background .2s,color .2s;white-space:nowrap}
.app-tab svg{width:23px;height:23px;flex-shrink:0}.app-tab .tab-label{display:none}header .app-tab.current{background:var(--ink);color:var(--paper);font-weight:700}header .app-tab.current .tab-label{display:inline}.tab-count{font-size:10px;background:var(--accent);color:var(--paper);border-radius:20px;min-width:17px;padding:2px;position:absolute;right:4px;top:0;text-align:center}
.comparison-editor{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);margin:16px 0 24px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.editor-heading strong{display:flex;align-items:center;gap:8px}.editor-heading .category-icon,.basket-category-title .category-icon,.cost-category-title .category-icon{width:34px;height:34px;flex:0 0 34px}.editor-heading p{color:var(--muted);font-size:13px;margin:4px 0 14px}.candidate-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.candidate-tile{display:grid;grid-template-columns:32px 52px minmax(0,1fr);align-items:center;gap:8px;padding:12px;background:var(--soft);border:2px solid transparent;border-radius:14px;transition:transform .18s,background .18s,border-color .18s}.candidate-tile img{object-fit:cover;border-radius:8px}.candidate-name{min-width:0}.candidate-name strong{font-size:14px;display:block;overflow-wrap:anywhere}.candidate-name small{font-size:11px;color:var(--muted)}.candidate-controls{grid-column:1/-1;display:flex;justify-content:flex-end;gap:6px}.candidate-controls button,.drag-handle{min-width:44px;min-height:44px;padding:10px}.candidate-controls svg,.drag-handle svg,.candidate-add svg{width:20px;height:20px;display:block}.drag-handle{min-width:32px;padding:5px;touch-action:none;cursor:grab;border:0;background:none;color:var(--muted)}.candidate-tile.dragging{opacity:.6;transform:scale(.97);border-color:var(--accent)}.candidate-tile.drop-target{border-color:var(--accent);transform:translateY(-3px)}.candidate-add{border:1px dashed var(--line);border-radius:14px;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--accent);text-decoration:none}.candidate-controls button:disabled{opacity:.3;cursor:default}
.basket-category{margin:0 0 32px;padding:0 0 8px;border-bottom:1px solid var(--line)}.basket-category-title{display:flex;align-items:center;gap:10px;margin:0;padding:14px 16px;background:var(--soft);border-radius:12px;font-size:20px}.basket-category-title small{margin-left:auto;font-size:13px;font-weight:400;color:var(--muted)}.cost-category-title{display:flex;align-items:center;gap:8px;font-size:15px!important;margin:0 0 12px!important;font-weight:750}.story-copy p{line-height:1.9}.story-copy{max-width:560px}.story-copy p br{display:block}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button,a.button,.primary{min-height:44px}#toast{bottom:120px}input,select,textarea{font-size:max(16px,1em)}
@media(max-width:700px){header{display:flex!important;justify-content:space-between;height:72px!important;min-height:72px;padding-top:env(safe-area-inset-top);gap:12px}header .logo{grid-area:auto}header nav.app-tabs{position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:420px;z-index:100;box-shadow:0 8px 32px #0002;justify-content:space-around;background:var(--surface);margin:0;gap:2px;padding:6px}header .app-tab{padding:10px;min-width:48px;min-height:48px;font-size:12px;gap:6px}header .theme-toggle{grid-area:auto}.candidate-board{grid-template-columns:1fr}.candidate-tile{grid-template-columns:36px 52px minmax(0,1fr)}.candidate-controls{grid-column:1/-1}.candidate-add{min-height:64px;flex-direction:row}.comparison-editor{padding:14px}.editor-heading p{line-height:1.6}.tray{bottom:calc(88px + env(safe-area-inset-bottom));border-radius:14px;left:12px;right:12px;width:auto;padding:10px 12px}.detail-selection-summary{bottom:calc(88px + env(safe-area-inset-bottom))}.view-detail~.tray{display:none}footer{padding-bottom:calc(180px + env(safe-area-inset-bottom))!important}main{padding-bottom:96px}.detail-sections{top:72px}.basket-category-title{font-size:19px}#toast{bottom:calc(170px + env(safe-area-inset-bottom))}.comparison-scroll{scroll-padding-inline:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{header,.tray,footer,.actions,.comparison-editor{display:none!important}.basket-layout{display:block}.basket-item,.plan-total{break-inside:avoid}body{background:white;color:black}.basket-category-title{break-after:avoid}}

header .app-tab.current{border-bottom:0}header .app-tab .tab-count{display:block}.drag-handle{min-width:44px}.candidate-tile{grid-template-columns:44px 52px minmax(0,1fr)}
#toast{top:auto;height:auto;min-height:0;max-height:180px;width:max-content;max-width:calc(100vw - 32px);z-index:150}
html[data-theme=dark] header nav.app-tabs .app-tab{color:#b7c1b8}html[data-theme=dark] header nav.app-tabs .app-tab.current{background:#f4f6f3;color:#101311}html[data-theme=dark] header nav.app-tabs .tab-count{background:#99c894;color:#101311}
/* Stable navigation, comparison preview and selected filters — 2026-10-12. */
header nav.app-tabs{display:grid;grid-template-columns:repeat(4,126px);gap:6px;padding:8px;border-radius:48px}header nav.app-tabs .app-tab{width:126px;min-height:54px;padding:14px 16px;border:0;margin:0;background:transparent;gap:9px;font:600 14px/1.3 inherit;color:var(--muted);transition:background-color .18s,color .18s,box-shadow .18s;text-decoration:none}header nav.app-tabs .app-tab .tab-label{display:inline;margin:0}header nav.app-tabs .app-tab.current,header nav.app-tabs .app-tab[aria-expanded=true]{background:#2f6332;color:#fff;border:0;box-shadow:0 2px 7px #25452b22}header nav.app-tabs .app-tab:hover{background:#e0eadc;color:#274d2b}header nav.app-tabs .app-tab.current:hover{background:#28562b;color:white}header nav.app-tabs .app-tab:active{box-shadow:inset 0 0 0 2px #ffffff66}.tab-count{right:3px;top:-2px}
html[data-theme=dark] header nav.app-tabs .app-tab{color:#c6d0c7;background:transparent}html[data-theme=dark] header nav.app-tabs .app-tab.current,html[data-theme=dark] header nav.app-tabs .app-tab[aria-expanded=true]{color:#102714;background:#99c894}html[data-theme=dark] header nav.app-tabs .app-tab:hover{background:#334b37;color:#fff}
.quick-filters .quick-filter,.quick-filters .filter-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;line-height:1.3;min-height:46px}.filter-icon{width:19px;height:19px;flex:0 0 19px;display:block;vertical-align:middle}.quick-filter .filter-icon:last-child{width:16px;height:16px;flex-basis:16px}.selected-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0}.filter-chip{display:inline-flex;align-items:center;gap:8px;line-height:1.3;border-radius:24px!important;padding:9px 13px!important;min-height:44px}.filter-chip .color-dot{display:inline-block;width:18px;height:18px;flex:0 0 18px;border:1px solid #0003;border-radius:50%}.filter-chip>span:last-child{margin-left:3px;font-size:20px}.result-line{margin-top:0}
dialog.comparison-popover{position:fixed;inset:92px max(24px,calc((100vw - 1100px)/2)) auto auto;margin:0;width:420px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 125px);padding:20px;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--ink);box-shadow:0 20px 70px #0003;overflow:auto}dialog.comparison-popover::backdrop{background:#0c201530}.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.preview-heading h2{font-size:20px;margin:0}.preview-category{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;font-size:13px;color:var(--muted)}.preview-category select{padding:8px;max-width:70%;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px}.preview-items article{display:grid;grid-template-columns:56px minmax(0,1fr) 44px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.preview-items img{width:56px;height:56px;object-fit:cover;border-radius:9px;background:#eee}.preview-items strong{display:block;font-size:14px;line-height:1.5}.preview-items small{font-size:11px}.preview-items button{padding:10px;min-width:44px}.preview-items svg,.preview-add svg{width:20px;height:20px;flex:0 0 20px}.preview-footer{display:grid;gap:10px;margin-top:16px}.preview-footer a{min-height:48px;border-radius:12px;gap:8px}.preview-empty{padding:20px 0;line-height:1.7;color:var(--muted)}
aside.tray.selection-dock{background:#e4eddf;color:#234429;border:1px solid #a6bca0;box-shadow:0 -4px 28px #24412820;padding:16px 24px;min-height:100px;gap:16px}.selection-dock .dock-copy{display:flex;align-items:center;gap:20px}.dock-copy>strong{font-size:16px;white-space:nowrap}.dock-copy>strong>span{display:block;font-size:12px;font-weight:500}.selection-dock .dock-thumbnails{display:flex!important;gap:7px}.dock-thumbnails button{position:relative;padding:0;width:46px;height:46px;border:1px solid #a6bca0;border-radius:8px;background:white;overflow:hidden;min-height:46px}.dock-thumbnails img{width:100%;height:100%;object-fit:cover}.dock-thumbnails button span{position:absolute;left:0;bottom:0;background:#234429;color:white;font-size:9px;padding:0 4px}.selection-dock>a.primary{border-radius:12px;min-height:50px;padding:14px 20px;white-space:nowrap;background:#2f6332;color:#fff}.view-compare{padding-bottom:180px}html[data-theme=dark] aside.tray.selection-dock{background:#253c2a;color:#f2f7ef;border-color:#59765a}html[data-theme=dark] .selection-dock>a.primary{background:#99c894;color:#102714}
@media(max-width:850px) and (min-width:701px){header nav.app-tabs{grid-template-columns:repeat(4,100px)}header nav.app-tabs .app-tab{width:100px;padding:12px 8px;font-size:12px;gap:6px}}
@media(max-width:700px){header nav.app-tabs{grid-template-columns:repeat(4,minmax(0,1fr));padding:7px;gap:4px;max-width:440px;border-radius:30px}header nav.app-tabs .app-tab{width:100%;min-width:0;min-height:58px;padding:8px 4px;flex-direction:column;gap:5px;font-size:11px;border-radius:23px;line-height:1.2}header nav.app-tabs .app-tab .tab-label{display:inline;font-size:11px}.app-tab svg{width:22px;height:22px}dialog.comparison-popover{inset:auto 12px calc(98px + env(safe-area-inset-bottom)) 12px;width:auto;max-width:none;max-height:calc(100dvh - 130px);padding:18px}.quick-filters{gap:6px}.quick-filters .quick-filter,.quick-filters .filter-toggle{padding:10px 12px;gap:6px;font-size:12px}.filter-icon{width:16px;height:16px;flex-basis:16px}aside.tray.selection-dock{bottom:calc(100px + env(safe-area-inset-bottom));padding:14px;min-height:104px;gap:10px}.selection-dock .dock-copy{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.dock-copy>strong{font-size:14px}.dock-copy>strong>span{display:inline;margin-left:5px;font-size:12px}.dock-thumbnails button{width:38px;height:38px;min-height:38px}.selection-dock>a.primary{padding:13px;font-size:12px;min-height:50px}.detail-selection-summary{bottom:calc(100px + env(safe-area-inset-bottom))}#toast{bottom:calc(220px + env(safe-area-inset-bottom))}footer{padding-bottom:calc(230px + env(safe-area-inset-bottom))!important}}
@media(prefers-reduced-motion:no-preference){dialog.comparison-popover[open]{animation:preview-in .16s ease-out}@keyframes preview-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}}
/* Estimate guidance: reuse the existing neutral surfaces and green action role. */
.estimate-guide{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:16px 0;color:var(--ink);overflow:hidden}
.estimate-guide>summary{display:flex;align-items:center;gap:10px;min-height:52px;padding:13px 16px;cursor:pointer;font-size:14px;font-weight:650;list-style:none}
.estimate-guide>summary::-webkit-details-marker{display:none}.guide-mark{display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:22px;height:22px;flex:0 0 22px;font-size:13px}.guide-toggle{margin-left:auto;font-size:18px}.estimate-guide[open] .guide-toggle{transform:rotate(45deg)}
.guide-body{padding:0 16px 16px;border-top:1px solid var(--line);font-size:13px;line-height:1.75}.guide-body p{margin:12px 0;color:var(--ink)}.guide-body strong{font-weight:700;margin-right:5px}.guide-body small,.guide-source{color:var(--muted);font-size:12px}.guide-source a{color:var(--accent);text-underline-offset:3px}
.estimate-presets{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.estimate-presets button{font-size:13px;min-height:44px;padding:10px 14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:9px}.estimate-presets button:hover{border-color:var(--accent);color:var(--accent)}
.home-example-panel{padding:16px;margin:20px 0;background:var(--soft);border:1px solid var(--line);border-radius:12px}.home-example-panel p{font-size:13px;line-height:1.7;margin:8px 0}.home-example-panel strong{font-size:15px}
.field-help{font-size:13px!important;line-height:1.7!important;color:var(--muted);margin:10px 0 16px}.cost-settings form>label{display:block}.cost-settings form>label>select{width:100%;margin:8px 0 16px}.cost-advanced{margin:14px 0}.cost-advanced summary{font-size:13px;padding:10px 0}.cost-advanced label{margin:12px 0}.material-subtotal{display:flex;gap:12px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;font-size:13px}.material-subtotal b{font-size:16px;color:var(--ink)}.cost-input-section{min-width:0}.room-cost-fields{margin:10px 0}.cost-box>.field-help{margin-bottom:12px}
@media(max-width:600px){.estimate-guide>summary{padding:12px;font-size:13px}.guide-body{padding:0 12px 14px}.estimate-presets button{flex:1 1 auto}.cost-settings .form-grid{grid-template-columns:1fr}.home-example-panel{padding:14px}}

#estimate{scroll-margin-top:145px}.room-dimensions{margin:12px 0}.room-dimensions>summary{font-size:14px;min-height:44px;padding:12px 0;cursor:pointer}.room-dimensions .form-grid{margin-top:12px}.cost-settings .estimate-presets button{margin:0}.cost-settings .estimate-presets{gap:8px}.cost-settings form>.primary{margin-top:12px}

/* Compact estimate: totals first, optional details in document flow. */
.basket-estimate{position:static;min-width:0;max-height:none;overflow:visible;align-self:start}
.basket-estimate .plan-total{max-height:none;overflow:visible}
.plan-total .estimate-status{margin:4px 0 16px}
.estimate-examples{padding:12px 14px;background:var(--surface);border-radius:8px;font-size:13px}
.estimate-examples strong{font-size:12px;color:var(--muted);font-weight:500}
.estimate-examples ul{margin:6px 0 0;padding-left:18px;display:grid;gap:4px}
.plan-total .budget-breakdown>div{display:grid!important;grid-template-columns:minmax(0,1fr) max-content;align-items:baseline;gap:8px;padding:12px 0!important}
.plan-total .budget-breakdown dt{white-space:nowrap;font-size:12px;letter-spacing:-.025em}
.plan-total .budget-breakdown dd{margin:0;text-align:right;white-space:nowrap;font-size:13px;font-variant-numeric:tabular-nums}
.plan-total .budget-breakdown .budget-subset{padding-top:0!important;border:0}
.plan-total .budget-subset dt:before{content:'↳ ';color:var(--muted)}
.plan-total .budget-subset dd{font-size:12px;font-weight:500}
.plan-total .estimate-disclaimer{font-size:12px;margin:16px 0 12px;word-break:keep-all}
.estimate-notes{border-top:1px solid var(--line);padding-top:4px}
.estimate-notes summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;font-size:13px;font-weight:600}
.estimate-notes ul{padding-left:18px;margin:4px 0 12px;font-size:12px;line-height:1.7;color:var(--muted)}
.estimate-notes li+li{margin-top:8px}
.estimate-notes h3{font-size:12px;margin:16px 0 8px}
@media(max-width:360px){.basket-estimate .plan-total{padding:16px}.plan-total .budget-breakdown dd{font-size:12px}}

/* Clear cost notes and one curtain section, with a following estimate rail. */
.cost-note-list{list-style:none;padding:0;margin:16px 0;font-size:13px;line-height:1.7;color:var(--muted)}
.cost-note-list li{position:relative;padding-left:14px;margin:8px 0;overflow-wrap:anywhere}
.cost-note-list li:before{content:'–';position:absolute;left:0;color:var(--muted)}
.cost-note-list b{color:var(--ink)}
.curtain-simple.curtain-summary{background:transparent;border:0;border-radius:0;padding:0;margin:32px 0}
.curtain-simple>.section-title{border:0;margin-bottom:16px;gap:12px}
.curtain-simple .basket-category-title{margin:0;flex:1}
.curtain-simple .section-title>a{white-space:nowrap;font-size:13px}
.curtain-simple .curtain-saved-rows>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 16px;padding:20px 0;border-bottom:1px solid var(--line)}
.curtain-simple .curtain-saved-rows>div>b{grid-column:2;font-size:15px}
.curtain-simple .curtain-saved-rows small{display:block;color:var(--muted);margin-top:6px;line-height:1.5}
.curtain-estimate-line{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.curtain-estimate-line small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.curtain-estimate-line strong{font-size:20px;text-align:right;font-variant-numeric:tabular-nums}
.curtain-cost-details{border:0;border-top:1px solid var(--line);padding:12px 0;background:transparent}
.curtain-cost-details summary{cursor:pointer;font-size:14px;padding:8px 0;font-weight:600}
.curtain-example-inline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px 0;border-block:1px solid var(--line);font-size:13px}
.curtain-heading{display:flex;align-items:center;gap:12px}
.curtain-room{background:transparent!important;border:0!important;padding:0!important}
.curtain-layer{background:transparent!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;padding:20px 0!important}
.curtain-additional,.curtain-extras{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:16px 0!important}
@media(min-width:1001px){.basket-layout{align-items:start}.basket-estimate{position:sticky;top:100px;align-self:start;max-height:calc(100dvh - 116px);overflow-y:auto;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-gutter:stable}.basket-estimate .plan-total{margin-top:0;margin-bottom:0}}
@media(max-width:1000px){.basket-estimate{position:static;max-height:none;overflow:visible}.curtain-simple .curtain-saved-rows>div{grid-template-columns:1fr}.curtain-simple .curtain-saved-rows>div>b{grid-column:1}.curtain-estimate-line{align-items:start}.curtain-estimate-line strong{font-size:17px}}

/* 2026-10-12 theme audit: pair foregrounds and surfaces. Material imagery stays unchanged. */
:root{--selected-surface:#edf4ed;--selected-ink:#234c26;--control-line:#8b958d}
:root[data-theme=dark]{--selected-surface:#293e2b;--selected-ink:#dfefdc;--control-line:#78877b}
.house-summary{background:var(--surface);color:var(--ink);border-color:var(--line)}
.house-summary:hover{background:var(--soft);color:var(--ink)}
.house-summary strong{color:var(--ink)}
.house-summary span{color:var(--muted)}
.house-summary span:last-child{color:var(--accent)}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}
input[type=checkbox],input[type=radio],progress{accent-color:var(--accent)}
:is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--control-line)}
.room-tabs [aria-current=true]{background:var(--selected-surface);color:var(--selected-ink);border-color:var(--accent)}
.room-tabs [aria-current=true] small{color:inherit}
.mode-option.selected{background:var(--selected-surface);color:var(--selected-ink)}
.mode-option.selected small{color:inherit}
[data-theme=dark] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:var(--control-line)}
[data-theme=dark] :is(.survey-intro,.filters){background:var(--soft);color:var(--ink);border-color:var(--line)}
[data-theme=dark] .survey-intro :is(h2,p,small){color:var(--ink)}
[data-theme=dark] :is(.house-bar,.selection-section,.selection-strip>div,.filter-group,.quote-grid>div){border-color:var(--line)}
[data-theme=dark] .category-index{color:var(--muted)}
[data-theme=dark] :is(.categories a.active small,.categories a.active .category-index){color:#fff}
[data-theme=dark] .home-categories>a:hover{background:var(--surface-raised);color:var(--ink);border-color:var(--accent)}
[data-theme=dark] :is(.selected,.room-tabs [aria-current=true]){background:var(--selected-surface);color:var(--selected-ink);border-color:var(--accent)}
[data-theme=dark] .selected:hover{background:#38563b;color:#fff}
[data-theme=dark] .step-art .filled{background:var(--accent);color:#102714}
[data-theme=dark] .cost-icon{background:var(--accent);color:#102714}
[data-theme=dark] .cart-action{background:#2f6332;color:#fff;border-color:#739b70}
[data-theme=dark] .cart-action:hover{background:#3b7840;color:#fff}
[data-theme=dark] .filter-chip .color-dot{border-color:#9ca99f}
[data-theme=dark] .skip-link:focus{background:#f4f6f3;color:#101311}
@media print{.house-summary,.cost-box,.plan-total,.basket-category-title{background:#fff!important;color:#111!important}.house-summary :is(strong,span),.plan-total :is(h2,p,small,dt,dd){color:#111!important}}
