*{box-sizing:border-box}:root{--bg:#0b0814;--panel:#15101f;--panel2:#1d1630;--line:#2c2242;--text:#ece8f5;--muted:#9a90b3;--gold:#d4af37;--purple:#7c3aed}body{background:radial-gradient(circle at top, #1f1338, var(--bg) 60%);color:var(--text);min-height:100vh;margin:0;font-family:Inter,system-ui,sans-serif}button,input,select{font:inherit;color:inherit}button{cursor:pointer}.app{max-width:1400px;margin:0 auto;padding:18px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.brand{align-items:center;gap:12px;display:flex}.crown{color:var(--gold);text-shadow:0 0 18px #d4af3780;font-size:34px}.brand h1{letter-spacing:.12em;background:linear-gradient(90deg, #f6e27a, var(--gold), #b8860b);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-family:Cinzel,serif;font-size:22px;font-weight:800}.brand p{color:var(--muted);letter-spacing:.08em;margin:2px 0 0;font-size:12px}.transport{background:var(--panel);border:1px solid var(--line);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.btn{border:1px solid var(--line);background:var(--panel2);border-radius:10px;padding:8px 14px;font-weight:600;transition:all .15s}.btn:hover{border-color:var(--purple)}.btn:disabled{opacity:.6;cursor:wait}.btn.play{background:var(--purple);border-color:var(--purple);min-width:92px}.btn.play.on{background:#4c1d95}.btn.gold{background:linear-gradient(135deg, #f6e27a, var(--gold));color:#1a1205;border:none}.btn.ghost{background:0 0}.ctl{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;font-size:12px;display:flex}.ctl input[type=number]{background:var(--panel2);border:1px solid var(--line);border-radius:8px;width:62px;padding:6px}input[type=range]{accent-color:var(--gold);width:90px}.notice{color:var(--muted);background:#7c3aed1f;border:1px solid #7c3aed59;border-radius:10px;margin-bottom:14px;padding:8px 12px;font-size:13px}.layout{grid-template-columns:250px 1fr;align-items:start;gap:14px;display:grid}.main-col{flex-direction:column;gap:14px;min-width:0;display:flex}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px}.panel h2{text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin:0 0 10px;font-size:13px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;display:flex}.hint{color:var(--muted);font-size:12px}.dot{background:var(--c,var(--gold));width:9px;height:9px;box-shadow:0 0 8px var(--c);border-radius:50%;flex:none}.cats{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip{border:1px solid var(--c,var(--line));color:var(--muted);background:0 0;border-radius:999px;padding:4px 9px;font-size:11px}.chip.active{background:var(--c,var(--gold));color:#120c1c;font-weight:700}.inst-list{flex-direction:column;gap:4px;max-height:68vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.inst-list li{gap:4px;display:flex}.inst-name{background:var(--panel2);text-align:left;border:1px solid #0000;border-radius:9px;flex:1;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.inst-name:hover{border-color:var(--c)}.inst-name small{color:var(--muted);margin-left:auto;font-size:10px}.add{border:1px solid var(--line);width:32px;color:var(--gold);background:0 0;border-radius:9px;font-size:18px}.add:hover{background:var(--gold);color:#120c1c}.rows{flex-direction:column;gap:8px;display:flex;overflow-x:auto}.empty{color:var(--muted)}.row{grid-template-columns:210px 1fr;align-items:center;gap:10px;min-width:760px;display:grid}.track-info{background:var(--panel2);border-left:3px solid var(--c);border-radius:10px;padding:7px 9px}.track-top{align-items:center;gap:7px;font-size:13px;display:flex}.track-top .x{color:var(--muted);background:0 0;border:none;margin-left:auto;font-size:16px}.track-ctl{align-items:center;gap:5px;margin-top:6px;display:flex}.track-ctl select{background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:2px;font-size:11px}.track-ctl input[type=range]{width:70px}.ms{border:1px solid var(--line);background:var(--bg);border-radius:5px;width:24px;height:22px;font-size:11px;font-weight:700}.ms.m-on{background:#ef4444;border-color:#ef4444}.ms.s-on{background:var(--gold);color:#120c1c;border-color:var(--gold)}.steps{grid-template-columns:repeat(16,1fr);gap:4px;display:grid}.cell{border:1px solid var(--line);color:#120c1c;background:#120d1d;border-radius:7px;height:38px;font-size:9px;font-weight:700;transition:transform 80ms}.cell.beat{background:#1a1329}.cell:nth-child(4n+1):not(:first-child){margin-left:4px}.cell.on{background:var(--c);border-color:var(--c);box-shadow:0 0 10px var(--c)}.cell.now{outline:2px solid var(--gold);transform:scale(1.06)}.booth-ctl{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.btn.rec{background:#b91c1c;border-color:#b91c1c}.btn.rec.live{animation:1s infinite pulse}@keyframes pulse{50%{box-shadow:0 0 0 6px #ef444440}}.check{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.upload{cursor:pointer}.error{color:#f87171;font-size:13px}.take{background:var(--panel2);border-left:3px solid var(--gold);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;display:flex}.take-info{flex-direction:column;display:flex}.take-info small{color:var(--muted);font-size:12px}.take audio{height:34px}@media (width<=900px){.layout{grid-template-columns:1fr}.inst-list{max-height:240px}}
