/* One mounting assembly: screen, controls and cartridge bay share a width and a continuous workshop wall. */
.cab-body{display:grid;grid-template-columns:minmax(0,1fr) 160px;column-gap:8px;justify-items:center;isolation:isolate;max-width:1320px;width:calc(100% - 24px);padding:0 24px 12px;border:2px solid #3d3b34;border-radius:12px;background:#0c1012;box-shadow:0 14px 44px #0009}
.station-backdrop{position:absolute;inset:0;z-index:-2;border-radius:inherit;background-size:cover;background-position:center;pointer-events:none}
.cab-body::after{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(90deg,#0002,transparent 55%,#0002);pointer-events:none}
.marquee{grid-column:1/-1;width:100%;margin:0;height:clamp(50px,7svh,76px);border-radius:0;overflow:visible;background:none;box-shadow:none}
.marquee .mq-art{opacity:0;animation:none;filter:none;border-radius:8px}
.marquee .mq-glass,.mq-bulbs{display:none}
.logo{width:calc(clamp(140px,18svh,200px) * var(--sz,1));border-radius:0}
.station-column{grid-column:1;width:min(100%,calc(clamp(380px,calc((100svh - 400px) * 1.77778),940px) * var(--station-scale,1)));max-width:100%;position:relative}
.bay-row{display:block;padding:0;gap:0}
.tube{width:100%;max-width:none}
.tube .skin{filter:drop-shadow(0 3px 3px #0008)}
.tube.custom-frame .op{border-radius:1.5%;background:#020504}
.tube.custom-frame .op .shot{object-fit:contain}
.attendant{display:none!important}
.deck{--control-h:clamp(40px,5.4svh,50px);width:100%;margin:0;padding:12px 16px;gap:10px;min-height:64px}
.deck-art{border-width:12px;filter:drop-shadow(0 3px 4px #0008);border-image-width:12px}
.deck .act-grp{gap:10px}
.deck .btn .lbl{font-size:clamp(13px,1.7svh,18px)}
.deck .sel-row{gap:5px}
.deck .lcd-mini{min-width:52px;padding:0 4px;height:24px;transform:scale(.88)}
#fader{max-width:280px;min-width:36px}
.shelf-wrap{position:relative;isolation:isolate;width:100%;margin:0;padding:3px 8px 14px;border-radius:0 0 8px 8px;overflow:hidden}
.changer-backdrop{position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;border-radius:inherit;pointer-events:none}
.changer{height:clamp(150px,21svh,220px);border-radius:0;background:none;box-shadow:none}
.changer-hint{font-size:8px;line-height:1.3;letter-spacing:.025em;text-shadow:0 1px 3px #000;position:absolute;bottom:3px;left:10px;right:10px;pointer-events:none}
.tube-col{position:relative}
.wall{background-color:#101211}.wall .bgl{opacity:.28}
.art-browser{padding-top:10px}.art-tools{display:grid;gap:8px;padding-bottom:12px;border-bottom:1px solid #ffffff1a}
.art-tools>label,.art-filters label,.art-fit,.art-inset{font-size:12px;color:#d6ccde;display:grid;gap:5px}
.art-tools input[type=search],.art-tools select,.art-fit select{font:inherit;color:#f4ece2;background:#080b0e;border:1px solid #665b48;border-radius:6px;padding:9px;width:100%;min-width:0}
.art-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.art-count{font-size:11px;color:#b9afc6;margin:10px 0!important}
.art-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.art-choice{display:flex;flex-direction:column;gap:6px;background:#080b0e;border:1px solid #ffffff1a;border-radius:7px;padding:7px;text-align:left;min-width:0}
.art-choice img{width:100%;height:78px;object-fit:contain;border-radius:4px;background:repeating-conic-gradient(#232729 0% 25%,#191d1f 0% 50%) 0 / 12px 12px}
.art-choice span{font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.art-choice small{font-size:9px;line-height:1.3;color:#a89f91}
.art-choice[aria-pressed=true]{border-color:#ffae62;box-shadow:0 0 0 1px #ffae62}.art-choice:hover{background:#25241f}
.art-more{margin:14px 0;width:100%}
.art-modes{display:flex;gap:6px;margin-top:12px}.art-modes button{flex:1;font-size:12px;padding:8px 5px;border:1px solid #ffffff20;background:#101418;border-radius:6px}
.art-modes button[aria-pressed=true]{background:#e4ba81;color:#18191a;border-color:#e4ba81}
.art-fit,.art-inset{margin-top:10px}.art-inset span{font-size:10px;color:#b9afc6}
.station-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}
.station-presets button{padding:0;overflow:hidden;background:#0c1013;border:1px solid var(--theme);border-radius:7px;text-align:left}
.station-presets img{width:100%;height:65px;object-fit:cover;display:block}.station-presets span{display:block;padding:7px;font-size:11px;line-height:1.3}
.station-presets button:hover{box-shadow:0 0 0 2px var(--theme)}
.ed-panel{width:min(430px,calc(100vw - 24px))}
.ed-body{scrollbar-gutter:stable}
@media(max-width:1000px){.cab-body{grid-template-columns:1fr;padding:0 16px 10px}}
@media(max-width:760px){
 .cab-body{width:calc(100% - 12px);padding:0 8px 8px;border-width:1px}
 .marquee{height:58px}.logo{width:142px}
 .station-column{width:min(100%,620px)}
 .deck{--control-h:42px;grid-template-columns:42px minmax(0,1fr);gap:6px 8px;padding:12px 10px;min-height:0}
 .deck .act-grp{gap:20px}.deck .lcd-mini{position:static;min-width:40px;width:40px;height:20px;padding:0;transform:none;font-size:13px;grid-template-columns:minmax(0,1fr)}
 .deck .lcd-mini .pxt{transform:scale(.65)}
 .shelf-wrap{padding:3px 3px 20px}.changer{height:clamp(164px,23svh,210px)}
 .changer-hint{max-width:none;bottom:4px;white-space:normal;font-size:9px;line-height:1.25}
 .ed-panel{max-height:70svh}
}
