.door-preview{margin:40px 0 60px;padding:28px;border:1px solid #bcdcff38;border-radius:28px;background:#284a622c}
.door-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.door-preview-heading h2{font-size:30px}.door-preview-heading .eyebrow{margin-bottom:8px}
.door-preview-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:30px}.door-preview-layout>div{min-width:0}.door-stage{position:relative;height:540px;overflow:hidden;border-radius:20px;background:#38424b}
.door-stage canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}.door-stage canvas:active{cursor:grabbing}.door-stage canvas:focus-visible{outline:3px solid #e7c68b;outline-offset:-5px}
.door-reference{width:100%;height:100%;object-fit:contain;display:block}.door-reference[hidden],.door-stage canvas[hidden],.door-status[hidden]{display:none}
.door-status{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:#f1eee7;background:#38424b99;padding:20px;pointer-events:none;margin:0}
.door-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.door-toolbar button{min-width:44px;min-height:44px}.door-help{font-size:13px;color:var(--muted);line-height:1.65}.door-preview-copy h3{font-size:25px;margin:0 0 12px}.door-preview-copy>p{color:var(--muted)}.door-preview-copy dl{margin:24px 0}.door-preview-copy dl>div{padding:14px 0;border-bottom:1px solid #bddaff25}.door-preview-copy dt{font-size:12px;color:var(--muted)}.door-preview-copy dd{margin:5px 0;font-size:16px}
html[data-theme="light"] .door-preview{background:linear-gradient(145deg,#ffffffa8,#eef4f8ae);border-color:#7294ac45}html[data-theme="light"] .door-preview-copy dl>div{border-color:#52799433}
@media(max-width:800px){.door-preview-layout{grid-template-columns:1fr}.door-preview{padding:20px}.door-preview-heading{align-items:start;flex-direction:column}.door-stage{height:440px}.door-preview-heading h2{font-size:26px}}
@media(max-width:450px){.door-preview{padding:14px}.door-stage{height:380px}.door-toolbar{gap:8px}.door-toolbar button{font-size:12px;padding:9px 12px}}
.door-introduction{max-width:650px;margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.65}.door-preview-heading>div{width:100%}
.door-config{border:0;padding:0;margin:22px 0 16px;min-width:0}.door-config legend{font-weight:600;margin-bottom:16px;font-size:17px}.door-setting{margin-bottom:16px}.door-setting label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px}.door-setting output{color:var(--gold,#e7c68b);font-variant-numeric:tabular-nums;font-weight:600}.door-setting input[type="range"]{width:100%;min-height:44px;accent-color:#d3b477;cursor:pointer;margin:0;background:transparent;padding:0}.door-config input:focus-visible{outline:2px solid #d3b477;outline-offset:4px;border-radius:8px}.door-trims{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:16px}.door-trims>span{width:100%;font-size:15px}.door-trims label{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-size:15px}.door-trims input{width:20px;height:20px;accent-color:#d3b477;margin:0}.door-config button{min-height:44px}.door-config-result{font-size:14px;min-height:2.8em;color:var(--muted);line-height:1.6}.door-config:disabled{opacity:.6}.door-preview-copy .door-help{margin-top:12px}html[data-theme="light"] .door-setting output{color:#84601f}

/* Friendly Flex: real fields, compact switches and a quiet, visible track. */
.door-preview-copy{align-self:start}.door-config legend{color:var(--ink);margin-bottom:4px}.door-config-hint{font-size:13px;line-height:1.65;color:var(--muted);margin:6px 0 24px}
.door-setting{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:0 12px;margin-bottom:18px;align-items:center}
.door-setting label{grid-column:1/-1;margin:0;font-weight:500;color:var(--ink)}.door-setting:has(.door-number) label{grid-column:1;grid-row:1}.door-setting:has(.door-number) output{display:none}
.door-number{grid-column:2;grid-row:1;display:flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;background:var(--ff-input,#fff);border:1px solid var(--line);border-radius:10px;color:var(--ink)}
.door-number:focus-within{border-color:var(--gold);outline:2px solid var(--gold);outline-offset:2px}.door-number input{width:100%;min-width:0;min-height:42px;margin:0;padding:6px 0;border:0;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-variant-numeric:tabular-nums;outline:none!important;box-shadow:none}.door-number span{font-size:13px;color:var(--muted)}
.door-setting input[type=range]{grid-column:1/-1;appearance:none;-webkit-appearance:none;height:44px;min-height:44px;touch-action:pan-y;outline-offset:0}
.door-setting input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:8px;background:linear-gradient(to right,#cba360 0%,#cba360 var(--range-fill,0%),var(--line) var(--range-fill,0%),var(--line) 100%)}
.door-setting input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:19px;height:19px;margin-top:-6.5px;background:#ebc888;border:2px solid var(--ff-surface,#fff);border-radius:50%;box-shadow:0 2px 5px #10212c25}
.door-setting input[type=range]::-moz-range-track{height:6px;background:var(--line);border-radius:8px}.door-setting input[type=range]::-moz-range-progress{height:6px;background:#cba360;border-radius:8px}.door-setting input[type=range]::-moz-range-thumb{width:16px;height:16px;background:#ebc888;border:2px solid var(--ff-surface,#fff);border-radius:50%}
.door-trims{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 24px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.door-trims>span{grid-column:1/-1;font-weight:500;color:var(--ink)}
.door-trims .door-switch{position:relative;gap:9px;margin:0;color:var(--ink)}.door-switch input{position:absolute;width:1px;height:1px;opacity:0}.door-switch-track{display:block;position:relative;width:40px;height:24px;flex-shrink:0;border:1px solid var(--line);background:var(--ff-input);border-radius:14px;transition:background-color 180ms ease,border-color 180ms ease}
.door-switch-track:before{content:'';position:absolute;width:16px;height:16px;left:3px;top:3px;background:var(--muted);border-radius:50%;transition:transform 180ms ease,background-color 180ms ease}.door-switch input:checked+.door-switch-track{background:#ebc888;border-color:#bd914b}.door-switch input:checked+.door-switch-track:before{transform:translateX(16px);background:#172531}.door-switch input:focus-visible+.door-switch-track{outline:2px solid var(--gold);outline-offset:4px}
.door-config [data-config-reset]{width:100%;border-radius:10px}.door-config-result{font-variant-numeric:tabular-nums;font-size:13px}.door-toolbar button{border-radius:10px}
@media(min-width:801px){.door-preview-layout>div:first-child{position:sticky;top:calc(var(--nav-height,90px) + 18px);align-self:start}.door-stage{height:clamp(420px,60vh,560px)}}
@media(max-width:450px){.door-preview-copy h3{font-size:22px}.door-stage{height:360px}.door-config{margin-top:20px}.door-toolbar button{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.door-switch-track,.door-switch-track:before{transition:none}}
