.beat-lab-status{align-self:center;padding:7px 10px;border:1px solid #39d0ff55;background:#07131a;color:#7ee6ff;font:800 11px/1 ui-monospace,Consolas,monospace;letter-spacing:.12em}
.beat-lab-intro{display:grid;grid-template-columns:minmax(220px,1fr) minmax(300px,1.2fr);gap:16px}
.beat-lab-controls{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:8px}
.beat-lab-controls label,.beat-track label{display:grid;gap:5px;color:#8fa3b2;font:700 10px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.06em;text-transform:uppercase}
.beat-lab-controls select,.beat-track select,.beat-track input{width:100%;min-height:36px;border:1px solid #324958;background:#071117;color:#edf8ff;padding:7px}
.beat-lab-controls button{min-height:38px}
.beat-lab-route{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:4px 10px;padding:10px;border:1px solid #243a47;background:#071117}
.beat-lab-route small{grid-row:1/3;color:#39d0ff;font:800 9px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.14em}
.beat-lab-route code{overflow-wrap:anywhere;color:#d9f5ff}
.beat-lab-route span{color:#78909c;font-size:11px}
.beat-lab-preview{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,.7fr);align-items:center;gap:14px}
.beat-lab-preview audio{width:100%}
.beat-lab-stage{position:relative;min-height:150px;overflow:hidden;border:1px solid #315164;background:radial-gradient(circle at 50% 65%,#17465c44,transparent 34%),linear-gradient(#071117,#020608);isolation:isolate}
.beat-lab-grid{position:absolute;inset:0;background:linear-gradient(#39d0ff12 1px,transparent 1px),linear-gradient(90deg,#39d0ff12 1px,transparent 1px);background-size:26px 26px;perspective:300px;transform:scale(1.1)}
.beat-lab-operator{position:absolute;z-index:2;left:50%;bottom:22px;width:46px;height:92px;transform:translateX(-50%);background:linear-gradient(100deg,#101b20,#4a6069 46%,#0a1114);clip-path:polygon(35% 0,65% 0,73% 18%,83% 28%,78% 62%,68% 100%,54% 100%,50% 65%,46% 100%,30% 100%,22% 62%,17% 28%,27% 18%);filter:drop-shadow(0 0 8px #39d0ff55)}
.beat-lab-impact{position:absolute;z-index:1;left:50%;bottom:43px;width:24px;height:24px;border:1px solid #39d0ff;border-radius:50%;transform:translate(-50%,50%) scale(.1);opacity:0}
.beat-lab-stage strong,.beat-lab-stage small{position:absolute;z-index:3;left:10px;font-family:ui-monospace,Consolas,monospace}
.beat-lab-stage strong{top:10px;color:#eefaff;letter-spacing:.1em}.beat-lab-stage small{top:32px;color:#62cee9}
.beat-lab-stage[data-event="subdivision"] .beat-lab-grid{filter:brightness(1.12)}
.beat-lab-stage[data-event="beat"] .beat-lab-operator{animation:mapperBeat 140ms ease-out}
.beat-lab-stage[data-event="downbeat"] .beat-lab-operator{animation:mapperDownbeat 190ms ease-out}
.beat-lab-stage[data-event="accent"] .beat-lab-impact{animation:mapperImpact 220ms ease-out}
.beat-lab-stage[data-event="phrase"] .beat-lab-grid{animation:mapperPhrase 360ms linear}
.beat-lab-stage[data-event="drop"]{animation:mapperDrop 520ms ease-out}
.beat-track-list{display:grid;gap:9px}
.beat-track{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(155px,.8fr) 100px 100px auto;align-items:end;gap:9px;padding:11px;border:1px solid #273c49;background:#071117}
.beat-track__identity{align-self:center;min-width:0}.beat-track__identity small,.beat-track__identity strong,.beat-track__identity span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.beat-track__identity small{color:#39d0ff;font:800 9px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.12em}.beat-track__identity strong{margin-top:3px;color:#f3fbff}.beat-track__identity span{margin-top:2px;color:#8196a3;font-size:11px}
.beat-track__actions{display:flex;gap:5px}.beat-track__actions button{min-height:36px}
.beat-track__result{grid-column:1/-1;padding-top:7px;border-top:1px solid #1f313c;color:#8296a1;font:700 10px/1.2 ui-monospace,Consolas,monospace}
.beat-track__result[data-kind="working"]{color:#f4c35c}.beat-track__result[data-kind="complete"]{color:#71e5a4}.beat-track__result[data-kind="error"]{color:#ff7a7a}
.beat-lab-help code{color:#7ee6ff}
@keyframes mapperBeat{40%{transform:translate(-50%,-3px)}}
@keyframes mapperDownbeat{35%{transform:translate(-52%,-5px) scale(1.04)}}
@keyframes mapperImpact{0%{opacity:1;transform:translate(-50%,50%) scale(.1)}100%{opacity:0;transform:translate(-50%,50%) scale(5)}}
@keyframes mapperPhrase{50%{filter:brightness(1.7);transform:translateX(8px) scale(1.1)}}
@keyframes mapperDrop{20%{filter:brightness(1.65);box-shadow:inset 0 0 40px #39d0ff88}55%{filter:brightness(1.1)}}
@media(max-width:900px){.beat-lab-intro,.beat-lab-preview{grid-template-columns:1fr}.beat-track{grid-template-columns:1fr 1fr}.beat-track__identity,.beat-track__actions,.beat-track__result{grid-column:1/-1}}
@media(max-width:560px){.beat-lab-controls,.beat-track{grid-template-columns:1fr}.beat-lab-route{grid-template-columns:1fr}.beat-lab-route small{grid-row:auto}}
@media(prefers-reduced-motion:reduce){.beat-lab-stage *,.beat-lab-stage{animation:none!important;transition:none!important}}

