.studio{padding-top:clamp(36px,5vw,82px);background:var(--bg-primary)}.studio h1{font-size:clamp(47px,6vw,92px)}.studio>.lede{margin:15px 0 26px}.studio-steps{display:flex;align-items:center;gap:8px 19px;flex-wrap:wrap;border-block:1px solid var(--line);margin-bottom:22px;padding:12px 0;font-size:13px}.studio-steps a{padding:7px 1px}.studio-steps a span,.stage-header .tag{font:600 10px/1.4 monospace;letter-spacing:.12em;color:var(--accent)}.studio-stage{grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr);gap:clamp(15px,2vw,30px)}.studio-stage .viewport{background:var(--bg-secondary)}.studio-stage .controls{background:var(--bg-secondary)}.stage-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;padding:12px 14px;border-bottom:1px solid var(--line)}.stage-header .tag{margin:0}.stage-header strong{font-size:13px;font-weight:550}.product-window{position:relative;background:var(--graphite)}.product-window canvas:not([hidden]){display:block;width:100%;height:clamp(285px,49vh,570px);min-height:0;touch-action:none}.product-window canvas[hidden],#plaque-note[hidden],.model-loading[hidden]{display:none}.model-loading{position:absolute;bottom:14px;left:14px;right:auto;background:var(--bg-primary);color:var(--text-primary);padding:10px 13px;border:1px solid var(--border-strong);border-radius:5px;font-size:13px}.product-window:has(.model-loading:not([hidden])) canvas{opacity:.62}.product-window canvas{transition:opacity .22s}.studio-stage .viewport .tools{gap:5px;padding-top:6px}.studio-stage .viewport .button{min-height:40px;padding:6px 9px;font-size:12px}.studio-stage .environment-select{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.studio-stage .viewport>.summary{font-size:12px;margin:8px 0 14px}.studio-stage fieldset,.studio-stage [id]{scroll-margin-top:102px}.model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.model-option{display:flex;flex-direction:column;gap:6px;text-align:left;border:1px solid var(--border-strong);border-radius:6px;background:var(--graphite);color:var(--text-primary);padding:8px;min-width:0;position:relative;transition:border .2s,background .2s}.model-option:hover{border-color:var(--accent-subtle);background:var(--bg-elevated)}.model-option[aria-pressed=true]{background:var(--bg-elevated);border-color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--text-primary)}.model-option[aria-pressed=true]::after{content:"";position:absolute;top:15px;right:15px;width:7px;height:7px;border-radius:50%;background:var(--text-primary);box-shadow:0 0 0 3px var(--bg-secondary)}.model-option img{display:block;width:100%;height:auto;aspect-ratio:480/260;object-fit:cover;border-radius:3px}.model-option strong{font-size:clamp(15px,1.4vw,21px);line-height:1.1}.variant-status{font:600 9px/1.5 monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--accent-subtle)}.variant-copy{color:var(--text-secondary);font-size:12px;line-height:1.45}.studio-review{padding-top:13px;border-top:1px solid var(--line)}.studio-review>img{display:block;width:min(100%,250px);height:auto;border-radius:4px;margin:0 0 12px}.studio-review>strong{font-size:19px}.studio-quote-fields{display:grid;gap:12px;margin:18px 0}.studio-quote-fields textarea{width:100%;resize:vertical;padding:10px 12px;border:1px solid var(--border-strong);background:var(--bg-primary);color:var(--text-primary)}#model-status:empty{display:none}.studio-review .tools{gap:7px}.studio-stage .webgl-fallback{max-height:480px}.product-window .summary{margin:0;padding:12px;font-size:13px}.studio-stage label[hidden]{display:none}@media(max-width:1020px){.studio-stage{grid-template-columns:minmax(0,1.35fr) minmax(310px,1fr)}.studio-stage .viewport{top:86px}}@media(max-width:780px){.studio-stage{grid-template-columns:1fr}.studio-stage .viewport{position:relative;top:auto}.studio-steps{gap:3px 12px}.product-window canvas:not([hidden]){height:clamp(290px,70vw,430px)}.studio-stage .viewport .button{min-height:43px}.model-option strong{font-size:18px}}
.mobile-view-link{display:none}@media(max-width:780px){.mobile-view-link{display:inline-block;padding:10px 0 0;color:var(--accent);font-size:13px;text-decoration:underline}}

.studio-fill{display:flex;gap:8px 16px;flex-wrap:wrap;padding:8px 14px;border-bottom:1px solid var(--line)}
.studio-fill label{display:flex;align-items:center;gap:7px;margin:0;font-size:12px}
.studio-fill select{padding:4px 8px;min-height:34px}
.studio-color-inputs{display:flex;align-items:end;flex-wrap:wrap;gap:8px 12px;margin-block:8px}
.studio-color-inputs label{margin:0}
.studio-color-inputs input[type=color]{width:72px;height:39px;padding:3px}
.studio-color-inputs input:not([type]){width:104px;font-family:monospace}
#detail-option[hidden],#color-note[hidden]{display:none}
#recent-colors:empty{display:none}
#panel-art canvas{display:block;max-width:100%;height:auto;margin-top:8px}

.studio-steps a b{font-weight:500}
@media(max-width:780px){
 .studio-steps{position:sticky;top:76px;z-index:5;background:var(--bg-primary);justify-content:space-between;flex-wrap:nowrap;gap:3px;padding:4px 0}
 .studio-steps a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:5px;font-size:12px}
 .studio-steps a span,.studio-steps a b{display:none}
 .studio-steps a::after{content:attr(data-short)}
 .studio-stage [id]{scroll-margin-top:142px}
}

.studio-pin{display:none!important}
@media(max-width:780px){
 .studio>.lede{margin-bottom:18px}
 .studio-steps{box-shadow:0 1px 0 var(--border-dark)}
 .studio-pin{display:inline-flex!important;padding:5px 8px!important;min-height:34px!important;font-size:11px!important;margin-left:auto}
 .stage-header{gap:4px;padding:9px 10px}
 .stage-header .tag{display:none}
 .stage-header strong{font-size:12px}
 .studio-stage fieldset{padding:14px 12px;margin-bottom:12px}
 .studio-stage .controls{padding-top:12px}
 .studio-stage .controls legend{font-size:14px}
 .preview-pinned .studio-stage .viewport{position:sticky;top:130px;z-index:4;box-shadow:0 12px 28px var(--shadow-deep)}
 .preview-pinned .product-window canvas:not([hidden]){height:clamp(120px,22svh,180px)}
 .preview-pinned .studio-fill{padding:4px 8px;gap:4px 10px}
 .preview-pinned .studio-fill label{font-size:11px}
 .preview-pinned .studio-fill select{min-height:30px}
 .preview-pinned .viewport .view-options,.preview-pinned .environment-select,.preview-pinned .viewport>.summary{display:none}
 .preview-pinned .camera-tools button[data-view=front],.preview-pinned .camera-tools button[data-view=detail],.preview-pinned .camera-tools button[data-view=reset]{display:none}
 .preview-pinned .viewport .camera-tools{padding:4px 8px;margin:0}
 .preview-pinned .viewport .camera-tools .button{min-height:36px;min-width:42px}
 .preview-pinned .studio-stage fieldset,.preview-pinned .studio-review{scroll-margin-top:calc(165px + clamp(120px,22svh,180px) + 124px)}
}
@media(max-height:650px) and (max-width:780px){
 .preview-pinned .studio-stage .viewport{position:relative;top:auto}
}
