.configurator{--studio:#151e25;--studio-ink:#f1f3f4;--studio-muted:#9ba6ad;border-top:1px solid var(--line);background:var(--canvas);scroll-margin-top:0}
.config-inner{width:100%;max-width:none;margin:0 auto;padding:96px max(24px,5vw) 64px}
.config-header{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:48px}
.config-overline{font-size:11px;line-height:20px;letter-spacing:.13em;color:var(--secondary);margin-bottom:22px}
.config-title{font-family:var(--head);font-weight:500;letter-spacing:-.052em;line-height:1.05;font-size:clamp(42px,4.5vw,72px)}
.config-intro{color:var(--secondary);font-size:15px;line-height:25px;max-width:310px;padding-bottom:3px}
.config-workspace{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,22.3vw,360px);gap:clamp(32px,3.9vw,72px);align-items:start}
.config-viewer{position:relative;height:720px;min-width:0;background:transparent;color:var(--studio-ink);overflow:hidden;isolation:isolate}
.config-canvas{display:block;position:absolute;left:0;right:0;top:60px;width:100%;height:calc(100% - 132px);outline-offset:-6px;touch-action:pan-y}
.config-canvas:focus-visible{outline:2px solid var(--accent)}
.config-object-label{position:absolute;left:28px;top:24px;z-index:2;pointer-events:none}
.config-object-label p{font-size:12px;line-height:20px}
.config-object-label output{font-size:11px;line-height:22px;color:var(--studio-muted);font-variant-numeric:tabular-nums}
.config-viewer-footer{position:absolute;left:28px;right:24px;bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:2}
.config-drag-hint{font-size:11px;color:var(--studio-muted);max-width:145px;line-height:17px;pointer-events:none}
.config-view-controls{display:flex;align-items:center;gap:16px}
.config-view-controls button{height:44px;background:none;color:var(--studio-muted);padding:0 2px;font-size:11px;border-bottom:1px solid transparent;white-space:nowrap}
.config-view-controls button[aria-pressed="true"]{color:var(--studio-ink);border-color:var(--accent)}
.config-view-controls button:hover{color:var(--studio-ink)}
.config-view-controls .config-save{display:grid;place-items:center;width:44px;border-left:1px solid #bcc3c1;padding-left:12px}
.config-view-controls svg{width:18px;height:18px}
.config-loading{position:absolute;left:28px;bottom:83px;font-size:12px;color:var(--studio-muted);pointer-events:none}
.config-loading[hidden]{display:none}
.config-poster{position:absolute;left:0;top:60px;width:100%;height:calc(100% - 132px);object-fit:contain;pointer-events:none;display:none}
.config-viewer[data-state="error"] .config-poster{display:block}
.config-viewer[data-state="error"] .config-canvas{visibility:hidden}
.config-viewer[data-state="error"] .config-loading{left:28px;right:28px;line-height:1.6}
.config-panel{display:flex;flex-direction:column;gap:34px;padding-top:4px;min-width:0}
.config-panel fieldset{min-width:0;border:0;padding:0;margin:0}
.config-panel legend,.config-group-title{font-size:12px;color:var(--secondary);line-height:20px;margin-bottom:19px}
.config-sizing{display:flex;flex-direction:column;gap:26px;min-width:0}
.config-sashes{display:grid;grid-template-columns:repeat(5,minmax(44px,1fr));gap:8px}
.config-sashes button{height:44px;background:transparent;color:var(--secondary);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;font-variant-numeric:tabular-nums}
.config-sashes button[aria-pressed="true"]{color:var(--text);border-bottom-color:var(--accent)}
.config-sashes button:hover{color:var(--text)}
.config-sashes-note{font-size:11px;line-height:18px;color:var(--secondary);margin-top:10px}
.config-dimensions{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.config-dimension{min-width:0}
.config-dimension label{font-size:11px;line-height:18px;display:block;color:var(--secondary);margin-bottom:8px}
.config-number{width:100%;min-width:0;background:none;border:0;border-bottom:1px solid var(--line);color:var(--text);padding:0 0 10px;font-family:var(--head);font-size:30px;font-weight:400;line-height:38px;font-variant-numeric:tabular-nums;border-radius:0;appearance:textfield;-moz-appearance:textfield}
.config-number::-webkit-inner-spin-button,.config-number::-webkit-outer-spin-button{appearance:none;margin:0}
.config-range{appearance:none;-webkit-appearance:none;width:100%;height:24px;margin:7px 0 0;cursor:pointer;background:transparent}
.config-range::-webkit-slider-runnable-track{height:1px;background:var(--line)}
.config-range::-moz-range-track{height:1px;background:var(--line)}
.config-range::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;margin-top:-5px;border-radius:50%;background:var(--text);border:2px solid var(--canvas)}
.config-range::-moz-range-thumb{width:8px;height:8px;border-radius:50%;background:var(--text);border:2px solid var(--canvas)}
.config-materials{display:flex;flex-direction:column;gap:30px;min-width:0}
.config-finish-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px}
.config-finish-head .config-group-title{margin:0}
.config-finish-name{font-size:12px;color:var(--text)}
.config-finishes{display:flex;gap:12px}
.config-finish{background:transparent;display:grid;place-items:center;width:48px;height:48px;border:1px solid transparent;border-radius:50%;padding:6px}
.config-finish[aria-pressed="true"]{border-color:var(--text)}
.config-swatch{display:block;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.3)}
.config-finish[data-finish="graphite"] .config-swatch{background:linear-gradient(135deg,#53585c,#272c31)}
.config-finish[data-finish="grayGraphite"] .config-swatch{background:linear-gradient(135deg,#8c9297,#565e65)}
.config-finish[data-finish="silver"] .config-swatch{background:linear-gradient(135deg,#d4d8d6,#7f898d)}
.config-finish[data-finish="bronze"] .config-swatch{background:linear-gradient(135deg,#aa8965,#6a5039)}
.config-glass{display:flex;gap:10px}
.config-glass button{padding:0 1px;background:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:48px;flex:1;font-size:11px;color:var(--secondary);white-space:nowrap}
.config-glass button[aria-pressed="true"]{color:var(--text);border-bottom-color:var(--accent)}
.config-actions{display:flex;flex-direction:column;gap:28px;min-width:0}
.config-open{display:flex;align-items:center;gap:14px;min-height:48px;padding:0;background:none;text-align:left;font-size:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--text)}
.config-open svg{width:34px;height:24px;color:var(--secondary)}
.config-open[aria-pressed="true"] svg{color:var(--accent)}
.config-price{min-width:0}
.config-price .config-group-title{margin-bottom:10px}
.config-price-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;font-family:var(--head);font-size:clamp(20px,1.6vw,26px);font-weight:400;line-height:1.45;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.config-price-value span{white-space:nowrap}
.config-price-separator{color:var(--secondary)}
.config-price-note,.config-engineering-note{color:var(--secondary);font-size:11px;line-height:18px;max-width:320px;margin-top:10px}
.config-engineering-note{color:var(--text)}
.config-order{min-height:56px;width:100%;padding:0 20px;display:flex;align-items:center;justify-content:space-between;background:var(--accent);color:#fff;font-size:14px}
.config-order:hover{background:#bc0926}
.config-order svg{width:19px;height:19px;transition:transform .2s}
.config-order:hover svg{transform:translate(2px,-2px)}
.config-summary{font-size:11px;color:var(--secondary);line-height:18px;margin-top:12px;max-width:310px}
.config-endline{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;line-height:18px;color:var(--secondary);letter-spacing:.08em;margin-top:48px}
.config-error{font-size:11px;color:#efa9b4;line-height:17px;margin-top:10px}
.config-error:empty{display:none}
.dialog-configuration{font-size:12px;line-height:1.9;color:var(--secondary);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-bottom:24px;white-space:pre-line}
.dialog-configuration[hidden]{display:none}
body[data-direction="b"] .configurator{--studio:#162028}
body[data-direction="b"] .config-title{font-size:clamp(48px,5.6vw,90px);letter-spacing:-.065em}
body[data-direction="b"] .config-workspace{display:block}
body[data-direction="b"] .config-viewer{height:660px}
body[data-direction="b"] .config-panel{display:grid;grid-template-columns:1.1fr 1fr 1.12fr 1.3fr;gap:30px;padding-top:38px}
body[data-direction="b"] .config-sashes{gap:6px}
body[data-direction="b"] .config-materials{display:contents}
body[data-direction="b"] .config-actions{gap:12px}
body[data-direction="b"] .config-number{font-size:26px}
body[data-direction="b"] .config-summary{display:none}
body[data-direction="c"] .configurator{--studio:#202325}
body[data-direction="c"] .config-workspace{grid-template-columns:200px minmax(0,1fr) 264px;gap:32px;grid-template-areas:"size viewer material" ". viewer actions"}
body[data-direction="c"] .config-panel{display:contents}
body[data-direction="c"] .config-sizing{grid-area:size;padding-top:35px}
body[data-direction="c"] .config-sashes{grid-template-columns:repeat(3,minmax(44px,1fr))}
body[data-direction="c"] .config-dimensions{grid-template-columns:1fr;gap:30px}
body[data-direction="c"] .config-viewer{grid-area:viewer;height:740px}
body[data-direction="c"] .config-materials{grid-area:material;padding-top:35px}
body[data-direction="c"] .config-actions{grid-area:actions;align-self:end}
body[data-direction="c"] .config-view-controls{gap:12px}
body[data-direction="c"] .config-drag-hint{max-width:100px}
@media(min-width:1700px){.config-viewer{height:740px}body[data-direction="c"] .config-workspace{grid-template-columns:240px minmax(0,1fr) 280px}body[data-direction="c"] .config-viewer{height:740px}}
@media(min-width:901px) and (max-width:1200px){.config-workspace{grid-template-columns:minmax(0,1fr) 280px;gap:30px}.config-viewer{height:580px}.config-viewer-footer{left:18px;right:18px}.config-drag-hint{display:none}.config-view-controls{gap:18px;justify-content:center;width:100%}body[data-direction="c"] .config-workspace{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:none}body[data-direction="c"] .config-viewer{grid-area:auto;height:580px}body[data-direction="c"] .config-panel{display:flex}body[data-direction="c"] .config-size,body[data-direction="c"] .config-materials,body[data-direction="c"] .config-actions{grid-area:auto;padding-top:0}body[data-direction="c"] .config-dimensions{grid-template-columns:1fr 1fr;gap:24px}body[data-direction="b"] .config-panel{gap:22px;grid-template-columns:1fr 1fr}body[data-direction="b"] .config-intro{max-width:255px}}
@media(max-width:900px){.config-inner{padding:64px 24px 38px}.config-header{display:block;margin-bottom:30px}.config-overline{margin-bottom:16px;font-size:10px}.config-title,body[data-direction="b"] .config-title{font-size:clamp(32px,8.8vw,54px);line-height:1.12;letter-spacing:-.045em}.config-intro{font-size:14px;line-height:23px;max-width:350px;margin-top:18px}.config-workspace,body[data-direction="c"] .config-workspace{display:flex;flex-direction:column;gap:30px}.config-viewer,body[data-direction="b"] .config-viewer,body[data-direction="c"] .config-viewer{height:390px;width:100%;grid-area:auto}.config-object-label{left:18px;top:16px}.config-object-label p{font-size:10px}.config-object-label output{font-size:10px}.config-viewer-footer{left:14px;right:14px;bottom:12px;justify-content:center}.config-drag-hint,body[data-direction="c"] .config-drag-hint{display:none}.config-view-controls,body[data-direction="c"] .config-view-controls{width:100%;gap:12px;justify-content:center}.config-view-controls button{font-size:10px}.config-loading{left:18px;bottom:66px;font-size:11px}.config-panel,body[data-direction="b"] .config-panel,body[data-direction="c"] .config-panel{display:flex;flex-direction:column;width:100%;padding:0;gap:27px}.config-dimensions,body[data-direction="c"] .config-dimensions{grid-template-columns:1fr 1fr;gap:24px}.config-size,body[data-direction="c"] .config-size{padding-top:0;grid-area:auto}.config-materials,body[data-direction="b"] .config-materials,body[data-direction="c"] .config-materials{display:flex;flex-direction:column;gap:26px;padding-top:0;grid-area:auto}.config-number,body[data-direction="b"] .config-number{font-size:27px;line-height:34px}.config-panel legend{margin-bottom:15px}.config-group-title{font-size:12px;margin-bottom:12px}.config-actions,body[data-direction="c"] .config-actions{grid-area:auto;width:100%;gap:24px;align-self:auto}.config-summary,body[data-direction="b"] .config-summary{display:block;max-width:none}.config-endline{margin-top:35px;font-size:9px;letter-spacing:.04em}.config-glass button{font-size:12px}.config-range{margin-top:10px}}
@media(max-width:359px){.config-viewer,body[data-direction="b"] .config-viewer,body[data-direction="c"] .config-viewer{height:350px}.config-glass{gap:7px}.config-glass button{font-size:10px}.config-view-controls,body[data-direction="c"] .config-view-controls{gap:9px}.config-view-controls .config-save{width:38px;padding-left:6px}}
@media(min-width:901px) and (max-width:1200px){body[data-direction="c"] .config-sizing{grid-area:auto;padding-top:0}body[data-direction="c"] .config-sashes{grid-template-columns:repeat(5,minmax(44px,1fr))}}
@media(max-width:900px){.config-sizing,body[data-direction="c"] .config-sizing{width:100%;grid-area:auto;padding-top:0}.config-sashes,body[data-direction="c"] .config-sashes{grid-template-columns:repeat(5,minmax(44px,1fr));gap:8px}.config-price-value{font-size:clamp(22px,6.15vw,29px)}.config-price-note{max-width:350px}}
