/* A single silhouette; the deck sits inside the housing's lower chin. */
.cab-body{grid-template-columns:1fr;background:#101416;border:1px solid #343735;padding:0 16px 8px;max-width:1340px;overflow:hidden}
.station-column{width:min(100%,calc(clamp(360px,calc((100svh - 110px - clamp(56px,8svh,86px) - clamp(174px,23svh,248px)) * var(--assembly-ratio,1.38)),1000px) * var(--station-scale,1)))}
.marquee{height:clamp(56px,8svh,86px)}
.television{position:relative;width:100%;aspect-ratio:var(--tv-aspect,1.38);background:#242829;border:2px solid #605f50;border-radius:14px;box-shadow:0 12px 24px #0008;isolation:isolate}
.television.has-housing{border:0;background:transparent;box-shadow:none}
.tv-housing-art{position:absolute;inset:0;z-index:-1;background-size:100% 100%;background-repeat:no-repeat;pointer-events:none;filter:drop-shadow(0 5px 8px #0008)}
.television .bay-row{position:absolute;left:var(--tv-left,4.5%);top:var(--tv-top,6.5%);width:var(--tv-width,91%);height:var(--tv-height,71%);padding:0;margin:0}
.television .tube-col,.television .tube,.television #tube-slot{position:relative;display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;margin:0;padding:0}
.television #tube-op{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:100%!important;border-radius:9px;background:#020403;box-shadow:inset 0 0 20px #000}
.television #tube-op .shot{object-fit:contain}
.television.has-housing .tube .skin{display:none}
.television .deck{position:absolute;inset:var(--tv-chin,80%) 4.8% 5%;width:auto;min-height:0;--control-h:clamp(31px,4.8svh,51px);padding:0;gap:8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-content:center;overflow:visible}
.television .deck-art{display:none;border-image-width:7px;inset:-5px}
.television .deck.has-overlay .deck-art{display:block}
.television .deck .act-grp{gap:8px}
.television .deck .btn .lbl{font-size:clamp(11px,1.7svh,18px)}
.television .deck .lcd-mini{position:static;width:43px;min-width:43px;height:22px;padding:0;transform:none;font-size:14px;grid-template-columns:minmax(0,1fr)}
.television .deck .lcd-mini .pxt{transform:scale(.68)}
.television .deck #fader{min-width:20px;flex:1;width:auto}
.shelf-wrap{padding:0 0 18px;margin:0;overflow:visible}
.changer{height:clamp(174px,23svh,248px);touch-action:pan-y}
.changer canvas{display:block;width:100%;height:100%;touch-action:pan-y}
.changer-hint{bottom:1px;font-size:9px;color:#c6b99e}
.station-presets{grid-template-columns:repeat(2,minmax(0,1fr))}
.station-presets img{object-fit:contain;height:85px;background:#181e20}
.ed-history{padding:9px 12px;border-bottom:1px solid #635748;display:flex;gap:7px;flex-wrap:wrap;background:#151a1e}
.ed-history button{padding:7px 10px;border:1px solid #746249;background:#292b27;border-radius:5px;color:#f2dfc0;font:inherit;font-size:12px}
.ed-history button:disabled{opacity:.35}
.ed-history .history-note{font-size:10px;color:#b7c4b7;flex-basis:100%}
.ed-compare{position:sticky;top:-4px;z-index:5;background:#17111f;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 0 12px}
.ed-compare article{min-width:0;border:1px solid #a97e4c;padding:8px;border-radius:6px;background:#13191c}
.ed-compare article:first-child{border:2px solid #edb06b}
.ed-compare b{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#edb06b;display:block;margin-bottom:5px}
.ed-compare .compare-image{height:66px;display:flex;align-items:center;justify-content:center;background:repeating-conic-gradient(#252b2e 0% 25%,#1b2022 0% 50%) 0/12px 12px;overflow:hidden}
.ed-compare img{max-height:100%;width:100%;object-fit:contain}
.ed-compare small{display:block;font-size:10px;line-height:1.3;margin:7px 0;overflow-wrap:anywhere}
.ed-compare button{font-size:11px;padding:5px 7px;width:100%}
.saved-looks{padding:10px 0;border-bottom:1px solid #ffffff20}.saved-looks input{width:100%;padding:8px;background:#0b1114;color:#f3e4c9;border:1px solid #675d4b;border-radius:5px;margin-bottom:6px}
.saved-looks .ed-item{margin-top:5px}
@media(max-width:760px){
 .cab-body{padding:0 5px 8px;width:calc(100% - 12px)}
 .station-column{width:min(100%,600px)}
 .television{border-radius:8px}
 .television .deck{--control-h:clamp(25px,7.6vw,43px);grid-template-columns:auto minmax(0,1fr) auto;gap:4px;left:4.5%;right:4.5%}
 .television .deck .act-grp{grid-column:auto;gap:4px}
 .television .deck .sel-row{gap:4px;justify-content:space-evenly}
 .television .deck .lcd-mini,.television .deck #fader{display:none}
 .television .deck .btn .lbl{font-size:clamp(10px,2.8vw,15px)}
 .television #tube-op{border-radius:5px}
 .changer{height:clamp(180px,26svh,230px)}
 .changer-hint{font-size:8px;max-width:none;left:2px;right:2px}
 .ed-panel{height:min(78svh,680px);max-height:80svh}
}
