/* AIMusicFix DJ Booth: two decks and a mixer (additive screen).
   Every rule is scoped under #aimf-booth, except the one entry button in the
   studio tabs (.aimf-booth-open), so nothing leaks into the existing app. */
.studio-tabs .aimf-booth-open{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.studio-tabs .aimf-booth-open::before{content:"";width:6px;height:6px;border-radius:50%;background:#aaff00;box-shadow:0 0 6px #aaff0080}

#aimf-booth{--bg:#0b0e0c;--panel:#121613;--panel2:#171c18;--well:#070908;--line:#2a332c;--line2:#384339;
  --lime:#aaff00;--cyan:#22d3ee;--red:#ff3b5c;--text:#f2f5f1;--sub:#c3ccc4;--muted:#8d998f;--acc:var(--lime);
  --mono:"Geist Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  position:fixed;inset:0;z-index:4000;display:flex;flex-direction:column;background:var(--bg);color:var(--text);
  font:13px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;
  padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;overscroll-behavior:none}
#aimf-booth[hidden]{display:none}
#aimf-booth *,#aimf-booth *::before,#aimf-booth *::after{box-sizing:border-box}
#aimf-booth button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
#aimf-booth button:focus-visible,#aimf-booth [tabindex]:focus-visible,#aimf-booth a:focus-visible,#aimf-booth select:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
#aimf-booth .bt-lbl{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
#aimf-booth .bt-mono{font-family:var(--mono)}
#aimf-booth .bt-b{display:flex;align-items:center;justify-content:center;gap:5px;min-height:32px;min-width:0;padding:0 7px;border:1px solid var(--line2);border-radius:6px;
  background:var(--panel2);color:var(--sub);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-decoration:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 1px 0 rgba(0,0,0,.5);touch-action:manipulation}
#aimf-booth .bt-b:hover{border-color:#56655a;color:var(--text)}
#aimf-booth .bt-b:disabled{opacity:.4;cursor:not-allowed}
#aimf-booth .bt-b.on{border-color:var(--acc);color:var(--acc);background:color-mix(in srgb,var(--acc) 13%,#0d110e);
  box-shadow:0 0 10px color-mix(in srgb,var(--acc) 25%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--acc) 30%,transparent)}
#aimf-booth .bt-b.lime{--acc:var(--lime)}
#aimf-booth .bt-b.rec{color:var(--text)}
#aimf-booth .bt-b.rec i{width:8px;height:8px;border-radius:50%;background:#6f7b71}
#aimf-booth .bt-b.rec.on{--acc:var(--red);color:#fff;background:color-mix(in srgb,var(--red) 22%,#0d110e)}
#aimf-booth .bt-b.rec.on i{background:var(--red);box-shadow:0 0 6px var(--red)}
#aimf-booth .bt-b.save{--acc:var(--lime);border-color:var(--lime);color:var(--lime)}
#aimf-booth .bt-save[hidden],#aimf-booth [hidden]{display:none}
#aimf-booth .bt-chip{font:800 11px/16px var(--mono);color:#fff;background:#3a1720;border:1px solid var(--red);border-radius:4px;padding:0 5px;cursor:pointer}

/* top bar */
#aimf-booth .bt-top{flex:none;height:46px;display:flex;align-items:center;gap:12px;padding:0 12px;border-bottom:1px solid var(--line);background:#0d110e}
#aimf-booth .bt-logo{display:flex;align-items:center;gap:8px;font-weight:900;font-size:16px;letter-spacing:.03em;white-space:nowrap}
#aimf-booth .bt-logo svg{flex:none}
#aimf-booth .bt-logo small{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.14em}
#aimf-booth .bt-sp{flex:1;min-width:0}
#aimf-booth .bt-kv{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
#aimf-booth .bt-kv b{font:700 15px var(--mono);color:var(--lime)}
#aimf-booth .bt-msg{min-width:0;flex:1;font-size:12px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}
#aimf-booth .bt-msg.err{color:#ff8aa0}
#aimf-booth .bt-top .bt-b{min-height:34px}

/* main grid (desktop) */
#aimf-booth .bt-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 304px minmax(0,1fr);gap:8px;padding:8px}
#aimf-booth .bt-tabs,#aimf-booth .bt-ph{display:none}
#aimf-booth .bt-deck{--acc:var(--lime);display:flex;flex-direction:column;gap:8px;min-width:0;min-height:0;padding:9px;border:1px solid var(--line);border-radius:7px;
  background:linear-gradient(180deg,#131814,#0f1310)}
#aimf-booth .bt-deck[data-d="1"]{--acc:var(--cyan)}
#aimf-booth .bt-screen{display:flex;flex-direction:column;gap:6px;min-width:0}
#aimf-booth .bt-dhead{display:flex;align-items:center;gap:9px;min-width:0}
#aimf-booth .bt-dnum{flex:none;width:30px;height:30px;border-radius:6px;background:var(--acc);color:#0b0e0c;font:900 17px/30px var(--mono);text-align:center}
#aimf-booth .bt-dtitle{min-width:0;flex:1}
#aimf-booth .bt-dtitle .t{font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#aimf-booth .bt-dtitle .a{font-size:11px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
#aimf-booth .bt-hmeta{display:none;font:700 12px var(--mono);color:var(--sub);white-space:nowrap}
#aimf-booth .bt-hmeta b{color:var(--acc)}
#aimf-booth .bt-tag{flex:none;font-size:11px;font-weight:800;letter-spacing:.06em;padding:3px 7px;border-radius:4px;border:1px solid var(--line2);color:var(--sub);background:none;min-height:26px}
#aimf-booth .bt-tag.on{border-color:var(--acc);color:var(--acc)}
#aimf-booth .bt-load{flex:none;--acc:var(--lime);border-color:color-mix(in srgb,var(--acc) 55%,#384339);color:var(--acc)}
#aimf-booth .bt-deck[data-d="1"] .bt-load{--acc:var(--cyan)}
#aimf-booth .bt-well{background:var(--well);border:1px solid var(--line);border-radius:6px;padding:6px;display:flex;flex-direction:column;gap:5px;box-shadow:inset 0 0 0 1px #000}
#aimf-booth .bt-wf{position:relative;width:100%;border-radius:4px;background:#050706;overflow:hidden;touch-action:none}
#aimf-booth .bt-wf canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
#aimf-booth .bt-wfz{height:118px;cursor:grab}
#aimf-booth .bt-wfo{height:34px;cursor:pointer}
#aimf-booth .bt-reads{display:grid;grid-template-columns:1.6fr 1.2fr 1fr .8fr;gap:6px}
#aimf-booth .bt-r{position:relative;min-width:0;padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:#0a0d0b}
#aimf-booth .bt-r b{display:block;font:700 21px/1.15 var(--mono);color:var(--text);white-space:nowrap;overflow:hidden}
#aimf-booth .bt-r.bpm{border-color:var(--acc)}
#aimf-booth .bt-r.bpm b{color:var(--acc)}
#aimf-booth .bt-r .bt-chip{position:absolute;right:5px;top:4px}

/* deck controls (desktop) */
#aimf-booth .bt-ctl{display:flex;flex-direction:column;gap:7px;min-height:0;flex:1}
#aimf-booth .bt-ctl.bt-ph{display:none}
#aimf-booth .bt-pads{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}
#aimf-booth .bt-pad{--c:#fff;position:relative;min-height:42px;border-radius:6px;border:1px solid color-mix(in srgb,var(--c) 45%,#1a201b);background:#111512;
  display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:var(--sub);touch-action:none;padding:0}
#aimf-booth .bt-pad::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--c);opacity:.5}
#aimf-booth .bt-pad .k{font:900 14px var(--mono);color:var(--c)}
#aimf-booth .bt-pad .n{font:700 11px var(--mono);color:var(--muted);margin-top:1px}
#aimf-booth .bt-pad.set{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 38%,#0b0e0c),color-mix(in srgb,var(--c) 16%,#0b0e0c));border-color:var(--c);box-shadow:0 0 12px color-mix(in srgb,var(--c) 30%,transparent)}
#aimf-booth .bt-pad.set::before{opacity:1}
#aimf-booth .bt-pad.set .k,#aimf-booth .bt-pad.set .n{color:#fff}
#aimf-booth .bt-pad:disabled{opacity:.45}
#aimf-booth .bt-row{display:flex;gap:8px;align-items:flex-end;min-width:0}
#aimf-booth .bt-grp{display:flex;flex-direction:column;gap:3px;min-width:0}
#aimf-booth .bt-grp .bt-gb{display:flex;gap:4px}
#aimf-booth .bt-grp .bt-gb .bt-b{flex:1}
#aimf-booth .bt-lower{flex:1;min-height:0;display:grid;grid-template-columns:104px minmax(0,1fr) 94px;gap:8px}
#aimf-booth .bt-col{display:flex;flex-direction:column;gap:6px;min-height:0}
#aimf-booth .bt-col .bt-b{min-height:34px}
#aimf-booth .bt-col .bt-fill{flex:1;min-height:4px}
#aimf-booth .bt-round{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:72px;height:72px;margin:0 auto;border-radius:50%;
  background:radial-gradient(circle at 50% 35%,#1c221d,#0c0f0d);border:2px solid var(--line2);color:var(--text);font-weight:900;font-size:15px;letter-spacing:.06em;touch-action:none;padding:0}
#aimf-booth .bt-round small{font-size:11px;color:var(--muted);letter-spacing:.1em;font-weight:800}
#aimf-booth .bt-round.cue{border-color:#e9ece9;box-shadow:0 0 0 3px #0b0e0c,0 0 0 4px #3a443b}
#aimf-booth .bt-round.cue.on{background:radial-gradient(circle at 50% 35%,#3a403b,#151a16);box-shadow:0 0 14px #ffffff60,0 0 0 3px #0b0e0c,0 0 0 4px #3a443b}
#aimf-booth .bt-round.play{border-color:var(--acc);color:var(--acc);box-shadow:0 0 0 3px #0b0e0c,0 0 0 4px #3a443b}
#aimf-booth .bt-round.play.on{background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--acc) 30%,#1c221d),#0c0f0d);box-shadow:0 0 16px color-mix(in srgb,var(--acc) 50%,transparent),0 0 0 3px #0b0e0c,0 0 0 4px #3a443b}
#aimf-booth .bt-round svg{display:block}
#aimf-booth .bt-jogwrap{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}
#aimf-booth .bt-jog{position:relative;width:240px;height:240px;border-radius:50%;touch-action:none;cursor:grab;flex:none;
  background:repeating-conic-gradient(#2c352e 0 1.4deg,#141915 1.4deg 4deg);box-shadow:0 0 0 2px #262e28,0 10px 30px #000a}
#aimf-booth .bt-jog::before{content:"";position:absolute;inset:9%;border-radius:50%;background:radial-gradient(circle,#111512 55%,#1a201b 56%,#0c0f0d 70%);box-shadow:inset 0 0 0 2px #2a332c}
#aimf-booth .bt-jring{position:absolute;inset:20%;border-radius:50%;background:conic-gradient(var(--acc) 0 var(--jp,0deg),#26302a var(--jp,0deg) 360deg);
  -webkit-mask:radial-gradient(circle,transparent 63%,#000 64%);mask:radial-gradient(circle,transparent 63%,#000 64%)}
#aimf-booth .bt-jmark{position:absolute;inset:20%;transform:rotate(var(--jr,0deg))}
#aimf-booth .bt-jmark::before{content:"";position:absolute;left:50%;top:-2%;width:4px;height:14%;margin-left:-2px;border-radius:2px;background:#fff;box-shadow:0 0 6px #fff8}
#aimf-booth .bt-jcenter{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}
#aimf-booth .bt-jcenter b{font:700 24px var(--mono)}
#aimf-booth .bt-jcenter small{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--acc)}
#aimf-booth .bt-jcap{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--muted);text-align:center}
#aimf-booth .bt-keysh{display:grid;grid-template-columns:1fr 1fr;gap:4px}
#aimf-booth .bt-tempo{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;gap:4px}
#aimf-booth .bt-thead{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%}
#aimf-booth .bt-tempo .bt-fader.v{min-height:60px}
#aimf-booth .bt-tempo .bt-pm{font:700 13px var(--mono);color:var(--muted)}

/* faders and knobs */
#aimf-booth .bt-fader{position:relative;touch-action:none;cursor:grab;--p:0}
#aimf-booth .bt-fader.v{width:40px;flex:1;min-height:80px}
#aimf-booth .bt-fader.v::before{content:"";position:absolute;left:50%;top:6px;bottom:6px;width:4px;margin-left:-2px;border-radius:2px;background:#050706;box-shadow:0 0 0 1px #2a332c}
#aimf-booth .bt-fader.v .bt-cap{position:absolute;left:3px;right:3px;height:26px;top:calc(var(--p) * (100% - 26px))}
#aimf-booth .bt-fader.h{height:40px;flex:1;min-width:80px}
#aimf-booth .bt-fader.h::before{content:"";position:absolute;top:50%;left:6px;right:6px;height:4px;margin-top:-2px;border-radius:2px;background:#050706;box-shadow:0 0 0 1px #2a332c}
#aimf-booth .bt-fader.h .bt-cap{position:absolute;top:3px;bottom:3px;width:30px;left:calc(var(--p) * (100% - 30px))}
#aimf-booth .bt-fader.h.mid::after,#aimf-booth .bt-fader.v.mid::after{content:"";position:absolute;background:#56655a}
#aimf-booth .bt-fader.h.mid::after{left:50%;top:4px;bottom:4px;width:1px}
#aimf-booth .bt-fader.v.mid::after{top:50%;left:4px;right:4px;height:1px}
#aimf-booth .bt-cap{border-radius:4px;background:linear-gradient(180deg,#3a443c,#1d231e);border:1px solid #4d5a50;box-shadow:0 2px 6px #000a;z-index:1}
#aimf-booth .bt-cap::after{content:"";position:absolute;background:var(--acc);box-shadow:0 0 6px var(--acc)}
#aimf-booth .bt-fader.v .bt-cap::after{left:4px;right:4px;top:50%;height:2px;margin-top:-1px}
#aimf-booth .bt-fader.h .bt-cap::after{top:4px;bottom:4px;left:50%;width:2px;margin-left:-1px}
#aimf-booth .bt-fader.white .bt-cap::after{background:#fff;box-shadow:none}
#aimf-booth .bt-kn{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}
#aimf-booth .bt-knob{--ks:36px;--a0:0deg;--a1:0deg;--rot:-135deg;position:relative;flex:none;width:var(--ks);height:var(--ks);border-radius:50%;touch-action:none;cursor:ns-resize;
  background:conic-gradient(from 225deg,#2a332c 0 270deg,transparent 270deg)}
#aimf-booth .bt-knob::before{content:"";position:absolute;inset:0;border-radius:50%;
  background:conic-gradient(from 225deg,transparent 0 var(--a0),var(--acc) var(--a0) var(--a1),transparent var(--a1))}
#aimf-booth .bt-knob::after{content:"";position:absolute;inset:4px;border-radius:50%;background:radial-gradient(circle at 50% 35%,#252c26,#0d100e);box-shadow:inset 0 0 0 1px #384339}
#aimf-booth .bt-knob i{position:absolute;inset:0;transform:rotate(var(--rot));z-index:1}
#aimf-booth .bt-knob i::before{content:"";position:absolute;left:calc(50% - 1px);top:6px;width:2px;height:30%;border-radius:1px;background:#f2f5f1}
#aimf-booth .bt-meter{position:relative;width:8px;flex:none;min-height:60px;background:repeating-linear-gradient(to top,#1b231d 0 5px,transparent 5px 7px)}
#aimf-booth .bt-meter i{position:absolute;inset:0;background:linear-gradient(to top,var(--lime) 0 78%,#ffffff 78% 90%,var(--red) 90%);
  -webkit-mask:repeating-linear-gradient(to top,#000 0 5px,transparent 5px 7px);mask:repeating-linear-gradient(to top,#000 0 5px,transparent 5px 7px);
  clip-path:inset(calc(100% - var(--l,0) * 100%) 0 0 0)}

/* mixer (desktop) */
#aimf-booth .bt-mixer{display:flex;flex-direction:column;gap:8px;min-height:0;padding:8px;border:1px solid var(--line);border-radius:7px;background:#101411;overflow-y:auto}
#aimf-booth .bt-mixbody{display:contents}
#aimf-booth .bt-mixd{order:1;flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
#aimf-booth .bt-xf{order:2}
#aimf-booth .bt-fxd{order:3}
#aimf-booth .bt-mixp,#aimf-booth .bt-fxp{display:none}
#aimf-booth .bt-strip{--acc:var(--lime);display:flex;flex-direction:column;align-items:center;gap:5px;min-height:0;padding:6px 4px;border:1px solid var(--line);border-radius:6px;background:#0d110e}
#aimf-booth .bt-strip[data-d="1"]{--acc:var(--cyan)}
#aimf-booth .bt-strip h3,#aimf-booth .bt-mixc h3{margin:0;font:800 12px var(--mono);letter-spacing:.06em;color:var(--acc)}
#aimf-booth .bt-strip .bt-b{width:100%}
#aimf-booth .bt-fm{flex:1;min-height:90px;display:flex;gap:6px;justify-content:center;width:100%}
#aimf-booth .bt-fm .bt-fader.v{flex:none;width:40px;min-height:0}
#aimf-booth .bt-mixc{--acc:var(--lime);display:flex;flex-direction:column;align-items:center;gap:6px;min-height:0;padding:6px 2px}
#aimf-booth .bt-mixc h3{color:var(--sub)}
#aimf-booth .bt-mm{flex:1;min-height:70px;display:flex;gap:4px;align-items:stretch}
#aimf-booth .bt-mm .bt-meter{width:9px}
#aimf-booth .bt-note{font-size:11px;color:var(--muted);text-align:center;line-height:1.3}
#aimf-booth .bt-xf{--acc:#fff;display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:6px;background:#0d110e}
#aimf-booth .bt-xf .ab{font:900 13px var(--mono)}
#aimf-booth .bt-xf .ab.a{color:var(--lime)}
#aimf-booth .bt-xf .ab.b{color:var(--cyan)}
#aimf-booth .bt-curves{display:flex;gap:4px}
#aimf-booth .bt-curves .bt-b{width:34px;min-height:34px;padding:0}
#aimf-booth .bt-curvep{display:none}
#aimf-booth .bt-fxd{--acc:var(--lime);display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--line);border-radius:6px;background:#0d110e}
#aimf-booth .bt-fxrow{display:grid;gap:4px}
#aimf-booth .bt-fxrow.t{grid-template-columns:repeat(4,minmax(0,1fr))}
#aimf-booth .bt-fxrow.bt6{grid-template-columns:repeat(6,minmax(0,1fr))}
#aimf-booth .bt-fxhead{display:flex;align-items:center;gap:6px}
#aimf-booth .bt-fxhead .bt-lbl{color:var(--text)}
#aimf-booth .bt-fxhead .bt-b{min-width:34px}
#aimf-booth .bt-fxfoot{display:flex;align-items:center;gap:8px}
#aimf-booth .bt-fxfoot .bt-mono{flex:1;font-size:13px;font-weight:700;color:var(--text);text-align:center;white-space:nowrap}
#aimf-booth .bt-fxfoot .bt-b{min-height:40px;padding:0 12px}

/* loader sheet */
#aimf-booth .bt-modal{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;padding:16px;background:#000b}
#aimf-booth .bt-modal[hidden]{display:none}
#aimf-booth .bt-sheet{width:100%;max-width:460px;max-height:100%;display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--line2);border-radius:10px;background:var(--panel);box-shadow:0 20px 60px #000c}
#aimf-booth .bt-sheet h2{margin:0;font-size:18px}
#aimf-booth .bt-sheet p{margin:0;font-size:12px;color:var(--sub)}
#aimf-booth .bt-filebtn{position:relative;overflow:hidden;min-height:48px;font-size:13px;--acc:var(--lime);border-color:var(--lime);color:var(--lime)}
#aimf-booth .bt-filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer;font-size:0}
#aimf-booth .bt-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0;max-height:46vh}
#aimf-booth .bt-list .bt-b{justify-content:space-between;min-height:44px;text-transform:none;letter-spacing:0;font-size:13px;font-weight:700;color:var(--text)}
#aimf-booth .bt-list .bt-b span{overflow:hidden;text-overflow:ellipsis}
#aimf-booth .bt-list .bt-b small{flex:none;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
#aimf-booth .bt-sheet .bt-close2{min-height:44px}

/* iPhone portrait and narrow windows: stacked waveforms, tabs, crossfader always visible */
@media (max-width:760px){
  #aimf-booth .bt-top{height:50px;gap:8px;padding:0 10px}
  #aimf-booth .bt-logo small,#aimf-booth .bt-top .bt-msg{display:none}
  #aimf-booth .bt-logo{font-size:14px;gap:6px}
  #aimf-booth .bt-top .bt-sp0{flex:1}
  #aimf-booth .bt-kv{flex-direction:column;align-items:flex-end;gap:0;margin-left:auto}
  #aimf-booth .bt-kv b{font-size:14px}
  #aimf-booth .bt-top .bt-b{padding:0 8px}
  #aimf-booth .bt-top .bt-b{min-height:44px;min-width:44px}
  #aimf-booth .bt-kv .bt-lbl{font-size:11px}
  #aimf-booth .bt-main{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto minmax(0,1fr) auto;
    grid-template-areas:"sa" "sb" "tabs" "panel" "xf";gap:6px;padding:6px 8px 8px}
  #aimf-booth .bt-deck,#aimf-booth .bt-mixer{display:contents}
  #aimf-booth .bt-deck[data-d="0"] .bt-screen{grid-area:sa}
  #aimf-booth .bt-deck[data-d="1"] .bt-screen{grid-area:sb}
  #aimf-booth .bt-screen{--acc:inherit;padding:6px;border:1px solid var(--line);border-radius:7px;background:#0f1310;gap:4px}
  #aimf-booth .bt-deck[data-d="0"] .bt-screen{--acc:var(--lime)}
  #aimf-booth .bt-deck[data-d="1"] .bt-screen{--acc:var(--cyan)}
  #aimf-booth .bt-dnum{width:26px;height:26px;font-size:15px;line-height:26px}
  #aimf-booth .bt-dtitle .a,#aimf-booth .bt-screen .bt-tag,#aimf-booth .bt-reads.bt-dsk{display:none}
  #aimf-booth .bt-dtitle .t{font-size:13px}
  #aimf-booth .bt-hmeta{display:block}
  #aimf-booth .bt-load{min-height:44px;min-width:56px}
  #aimf-booth .bt-well{padding:3px;gap:3px}
  #aimf-booth .bt-wfz{height:54px}
  #aimf-booth .bt-wfo{height:16px}
  #aimf-booth .bt-ph .bt-reads{display:none}
  #aimf-booth .bt-dsk,#aimf-booth .bt-mixd,#aimf-booth .bt-fxd{display:none}
  #aimf-booth .bt-fader.h{height:44px}
  #aimf-booth .bt-tabs{grid-area:tabs;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#0d110e}
  #aimf-booth .bt-tabs .bt-b{min-height:44px;font-size:13px;border-color:transparent;background:none;box-shadow:none}
  #aimf-booth .bt-tabs .bt-b i{width:7px;height:7px;border-radius:50%;background:var(--acc)}
  #aimf-booth .bt-tabs .bt-b[data-v="0"]{--acc:var(--lime)}
  #aimf-booth .bt-tabs .bt-b[data-v="1"]{--acc:var(--cyan)}
  #aimf-booth .bt-tabs .bt-b[data-v="m"]{--acc:var(--lime)}
  #aimf-booth .bt-tabs .bt-b.on{background:var(--acc);color:#0b0e0c;border-color:var(--acc)}
  #aimf-booth .bt-tabs .bt-b.on i{background:#0b0e0c}
  #aimf-booth .bt-ctl.bt-ph,#aimf-booth .bt-mixbody{grid-area:panel;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:none;flex-direction:column;gap:5px}
  #aimf-booth[data-tab="0"] .bt-deck[data-d="0"] .bt-ph,#aimf-booth[data-tab="1"] .bt-deck[data-d="1"] .bt-ph,#aimf-booth[data-tab="m"] .bt-mixbody{display:flex}
  #aimf-booth .bt-ph .bt-b,#aimf-booth .bt-mixbody .bt-b{min-height:44px;font-size:12px}
  #aimf-booth .bt-ph .bt-reads{grid-template-columns:1.5fr 1.1fr 1fr .7fr}
  #aimf-booth .bt-ph .bt-r b{font-size:19px}
  #aimf-booth .bt-pads{grid-template-columns:repeat(4,minmax(0,1fr))}
  #aimf-booth .bt-pad{min-height:44px;flex-direction:row;gap:6px}
  #aimf-booth .bt-pad .n{margin:0}
  #aimf-booth .bt-g5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
  #aimf-booth .bt-g5 .bt-b{padding:0 2px;font-size:11px;letter-spacing:.02em}
  #aimf-booth .bt-g5.k{grid-template-columns:repeat(4,minmax(0,1fr)) 96px}
  #aimf-booth .bt-g6{display:grid;grid-template-columns:1.1fr repeat(5,minmax(0,1fr));gap:5px;align-items:center}
  #aimf-booth .bt-g6 .bt-lbl{white-space:normal;line-height:1.1}
  #aimf-booth .bt-key2{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line2);border-radius:6px;overflow:hidden;position:relative}
  #aimf-booth .bt-key2 .bt-b{border:0;border-radius:0;box-shadow:none;font-size:16px}
  #aimf-booth .bt-key2 em{position:absolute;left:0;right:0;top:2px;font:800 11px var(--mono);font-style:normal;color:var(--muted);text-align:center;pointer-events:none}
  #aimf-booth .bt-trow{display:flex;align-items:center;gap:8px;padding:0 8px;min-height:48px;border:1px solid var(--line);border-radius:6px;background:#0d110e}
  #aimf-booth .bt-trow .bt-mono{font-size:14px;font-weight:700;min-width:66px;text-align:right}
  #aimf-booth .bt-trow .bt-chip{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:12px}
  #aimf-booth .bt-trow{min-height:50px}
  #aimf-booth .bt-prow{display:grid;grid-template-columns:64px 64px minmax(0,1fr);gap:8px;align-items:center}
  #aimf-booth .bt-prow .bt-round{width:56px;height:56px;font-size:13px}
  #aimf-booth .bt-nudge{position:relative;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;border:1px solid var(--line);border-radius:6px;touch-action:none;
    background:repeating-linear-gradient(90deg,#1b221d 0 2px,#0f1310 2px 8px)}
  #aimf-booth .bt-nudge .bt-b{width:44px;min-height:44px;background:#111512}
  #aimf-booth .bt-nudge span{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--sub);background:#0d110e;padding:3px 6px;border-radius:4px;pointer-events:none}
  #aimf-booth .bt-nudge::after{content:"";position:absolute;left:calc(50% + var(--nx,0px));top:8px;bottom:8px;width:3px;margin-left:-1px;background:var(--acc);box-shadow:0 0 6px var(--acc);pointer-events:none}
  #aimf-booth .bt-mixp{display:grid;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);gap:6px;flex:none}
  #aimf-booth .bt-mixp .bt-strip{padding:6px}
  #aimf-booth .bt-k2{display:grid;grid-template-columns:1fr 1fr;gap:6px 4px;width:100%;justify-items:center}
  #aimf-booth .bt-k2 .bt-b{width:44px;min-width:44px}
  #aimf-booth .bt-knob{--ks:44px}
  #aimf-booth .bt-mixp .bt-fm{min-height:124px}
  #aimf-booth .bt-fm .bt-fader.v{width:44px}
  #aimf-booth .bt-mixp .bt-mixc{gap:4px}
  #aimf-booth .bt-fxp{display:flex;flex-direction:column;gap:6px;flex:none}
  #aimf-booth .bt-fxp .bt-r5{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:5px}
  #aimf-booth .bt-fxp .bt-r4{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto 1.2fr;gap:5px;align-items:center}
  #aimf-booth .bt-xf{grid-area:xf;min-height:56px}
  #aimf-booth .bt-curves{display:none}
  #aimf-booth .bt-curvep{display:flex;width:48px;min-height:44px;--acc:var(--lime)}
  #aimf-booth .bt-modal{align-items:flex-end;padding:8px}
  #aimf-booth .bt-mixbody .bt-note{display:block;margin:0;flex:none}
}
/* phone landscape: three columns, compact controls, columns scroll if needed */
@media (max-height:520px) and (min-width:761px){
  #aimf-booth .bt-top{height:40px}
  #aimf-booth .bt-top .bt-msg{display:none}
  #aimf-booth .bt-main{grid-template-columns:minmax(0,1fr) 272px minmax(0,1fr);gap:6px;padding:4px 6px 6px}
  #aimf-booth .bt-lbl{letter-spacing:.02em}
  #aimf-booth .bt-reads .bt-chip{display:none}
  #aimf-booth .bt-deck,#aimf-booth .bt-mixer{overflow-y:auto;overscroll-behavior:contain;padding:6px;gap:6px}
  #aimf-booth .bt-dsk{display:none}
  #aimf-booth .bt-ctl.bt-ph{display:flex;flex-direction:column;gap:5px;flex:none}
  #aimf-booth .bt-g5.k{grid-template-columns:repeat(3,minmax(0,1fr))}
  #aimf-booth .bt-g5.k .bt-key2{grid-column:span 2}
  #aimf-booth .bt-g5 .bt-b{padding:0 2px;font-size:11px;letter-spacing:0}
  #aimf-booth .bt-ph .bt-reads{display:none}
  #aimf-booth .bt-wfz{height:58px}
  #aimf-booth .bt-wfo{height:18px}
  #aimf-booth .bt-reads.bt-dsk{display:grid}
  #aimf-booth .bt-r b{font-size:13px}
  #aimf-booth .bt-r{padding:4px 5px}
  #aimf-booth .bt-r .bt-lbl{display:none}
  #aimf-booth .bt-dtitle .a{display:none}
  #aimf-booth .bt-pads{grid-template-columns:repeat(4,minmax(0,1fr))}
  #aimf-booth .bt-ph .bt-b{min-height:40px}
  #aimf-booth .bt-g5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  #aimf-booth .bt-g6{display:grid;grid-template-columns:1.1fr repeat(5,minmax(0,1fr));gap:4px;align-items:center}
  #aimf-booth .bt-g6 .bt-lbl{white-space:normal;line-height:1.1}
  #aimf-booth .bt-key2{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line2);border-radius:6px;overflow:hidden;position:relative}
  #aimf-booth .bt-key2 .bt-b{border:0;border-radius:0;box-shadow:none}
  #aimf-booth .bt-key2 em{display:none}
  #aimf-booth .bt-trow{display:flex;align-items:center;gap:6px}
  #aimf-booth .bt-trow .bt-mono{font-size:12px;font-weight:700}
  #aimf-booth .bt-prow{display:grid;grid-template-columns:56px 56px minmax(0,1fr);gap:6px;align-items:center}
  #aimf-booth .bt-prow .bt-round{width:54px;height:54px;font-size:12px}
  #aimf-booth .bt-nudge{position:relative;height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;border:1px solid var(--line);border-radius:6px;touch-action:none;
    background:repeating-linear-gradient(90deg,#1b221d 0 2px,#0f1310 2px 8px)}
  #aimf-booth .bt-nudge .bt-b{width:40px}
  #aimf-booth .bt-nudge span{font-size:11px;font-weight:800;color:var(--sub)}
  #aimf-booth .bt-mixbody{display:flex;flex-direction:column;gap:6px}
  #aimf-booth .bt-mixd,#aimf-booth .bt-fxd{display:none}
  #aimf-booth .bt-mixp{display:grid;grid-template-columns:minmax(0,1fr) 66px minmax(0,1fr);gap:4px}
  #aimf-booth .bt-mixp .bt-strip{padding:5px 3px}
  #aimf-booth .bt-k2{display:grid;grid-template-columns:1fr 1fr;gap:4px;justify-items:center;width:100%}
  #aimf-booth .bt-knob{--ks:34px}
  #aimf-booth .bt-mixp .bt-fm{min-height:110px}
  #aimf-booth .bt-fxp{display:flex;flex-direction:column;gap:5px}
  #aimf-booth .bt-fxp .bt-r5{display:grid;grid-template-columns:1.4fr repeat(4,minmax(0,1fr));gap:4px}
  #aimf-booth .bt-fxp .bt-r4{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto 1.2fr;gap:4px;align-items:center}
  #aimf-booth .bt-fxp .bt-b,#aimf-booth .bt-mixp .bt-b{min-height:38px;padding:0 3px}
  #aimf-booth .bt-mixer .bt-xf{order:-1}
  #aimf-booth .bt-curves{display:none}
  #aimf-booth .bt-curvep{display:flex;width:40px;min-height:38px;--acc:var(--lime)}
}
