.music-discovery { overflow: visible; }
.music-lock-note { align-self: start; background: #0b1018; border: 1px solid var(--arcade-rule); padding: 1.2rem; }
.music-lock-note span,.music-lock-note small { color: var(--arcade-muted); display: block; font: .62rem var(--arcade-display); letter-spacing: .1em; }
.music-lock-note strong { color: var(--arcade-yellow); display: block; font: 1.2rem var(--arcade-display); margin: .4rem 0; }
.music-layout { align-items: start; display: grid; gap: 2rem; grid-template-columns: minmax(0,1fr) minmax(260px,.32fr); }
.music-filters { display: grid; gap: .8rem; grid-template-columns: 1.5fr repeat(3,1fr); margin-bottom: 1.5rem; }
.music-filters label { color: var(--arcade-muted); font: .67rem var(--arcade-display); letter-spacing: .08em; }
.music-filters input,.music-filters select { background: #0b1018; border: 1px solid var(--arcade-rule); color: var(--arcade-ink); display: block; margin-top: .35rem; min-height: 46px; padding: .65rem; width: 100%; }
.music-results-head { align-items: center; border-block: 1px solid var(--arcade-rule); display: flex; justify-content: space-between; margin-bottom: 1rem; padding: .8rem 0; }
.music-results-head span { color: var(--arcade-muted); font-size: .75rem; }
.music-grid { display: grid; gap: 1rem; grid-template-columns: repeat(2,minmax(0,1fr)); max-height: 760px; overflow: auto; padding-right: .4rem; }
.music-card { background: #0c1018; border: 1px solid var(--arcade-rule); display: grid; grid-template-columns: 110px 1fr; min-width: 0; }
.music-card__art { align-items: center; background: var(--arcade-cyan); color: #071017; display: flex; flex-direction: column; justify-content: space-between; min-height: 190px; padding: 1rem .65rem; }
.music-card__art span { font: .55rem var(--arcade-pixel); overflow-wrap: anywhere; }.music-card__art strong { font: 2.3rem var(--arcade-display); }
.music-card--coral .music-card__art { background: var(--arcade-coral); }.music-card--yellow .music-card__art { background: var(--arcade-yellow); }.music-card--violet .music-card__art { background: #b79cff; }.music-card--green .music-card__art { background: var(--arcade-green); }
.music-card__body { min-width: 0; padding: 1rem; }.music-card__body>p { color: var(--arcade-muted); font-size: .72rem; }.music-card__body h3 { font-size: 1.15rem; margin: .2rem 0 .7rem; }
.music-tags { display: flex; flex-wrap: wrap; gap: .3rem; margin-bottom: .7rem; }.music-tags span { border: 1px solid var(--arcade-rule); color: var(--arcade-muted); font-size: .62rem; padding: .25rem .4rem; }
.music-rating { margin: .65rem 0; }.music-rating button { background: none; border: 0; color: var(--arcade-yellow); cursor: pointer; font-size: 1rem; padding: .15rem; }
.music-card__actions { display: flex; flex-wrap: wrap; gap: .4rem; }.music-card__actions .button { font-size: .7rem; min-height: 36px; padding: .5rem .65rem; }
.music-shortlist { background: var(--arcade-panel); border: 1px solid var(--arcade-rule); padding: 1.2rem; position: sticky; top: 1rem; }.music-shortlist>div:first-child { align-items: center; display: flex; justify-content: space-between; }.music-shortlist>p { color: var(--arcade-muted); font-size: .8rem; margin: .7rem 0; }
.music-shortlist ol { list-style: none; }.music-shortlist li { align-items: center; border-top: 1px solid var(--arcade-rule); display: flex; gap: .5rem; justify-content: space-between; padding: .8rem 0; }.music-shortlist li span { color: var(--arcade-muted); display: block; font-size: .67rem; }.music-shortlist li button { background: none; border: 0; color: var(--arcade-coral); cursor: pointer; }
.music-editor-lock { border-top: 1px dashed #465165; color: var(--arcade-muted); display: grid; gap: .35rem; margin-top: 1rem; padding-top: 1rem; }.music-editor-lock i { color: var(--arcade-yellow); }.music-editor-lock span { font-size: .72rem; }.music-status { color: var(--arcade-cyan); font-size: .8rem; margin-top: 1rem; }

.music-lab-main { margin: 0 auto; max-width: 1500px; padding: clamp(2rem,5vw,5rem); }.music-lab-hero { align-items: end; display: grid; gap: 3rem; grid-template-columns: 1fr auto; margin-bottom: 3rem; }.music-lab-hero h1 { font-size: clamp(3rem,7vw,7rem); }.music-lab-hero p:not(.section-label) { color: var(--arcade-muted); line-height: 1.6; max-width: 55ch; }.music-lab-steps { display: grid; gap: .5rem; }.music-lab-steps span { border-bottom: 1px solid var(--arcade-rule); color: var(--arcade-muted); font: .65rem var(--arcade-display); padding: .6rem; }
.music-lab-layout { display: grid; gap: 1.5rem; grid-template-columns: minmax(280px,.35fr) minmax(0,1fr); }.music-lab-library,.loop-editor { background: var(--arcade-panel); border: 1px solid var(--arcade-rule); padding: 1.2rem; }.music-tabs { display: grid; grid-template-columns: 1fr 1fr; }.music-tabs button { background: #090c12; border: 1px solid var(--arcade-rule); color: var(--arcade-muted); min-height: 46px; }.music-tabs button.is-active { background: var(--arcade-yellow); color: #080a0f; }.music-lab-library .music-filters { grid-template-columns: 1fr; margin-top: 1rem; }
.lab-track { align-items: center; background: transparent; border: 0; border-top: 1px solid var(--arcade-rule); color: var(--arcade-ink); display: grid; gap: .7rem; grid-template-columns: 48px 1fr auto; padding: .75rem 0; text-align: left; width: 100%; }.lab-track.is-selected { color: var(--arcade-yellow); }.lab-track small { color: var(--arcade-muted); display: block; }.lab-track__art { align-items: center; background: var(--arcade-cyan); color: #080a0f; display: flex; font: .65rem var(--arcade-pixel); height: 48px; justify-content: center; }.lab-track__art--coral{background:var(--arcade-coral)}.lab-track__art--yellow{background:var(--arcade-yellow)}.lab-track__art--violet{background:#b79cff}.lab-track__art--green{background:var(--arcade-green)}
.loop-editor__empty { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 560px; text-align: center; }.loop-editor__empty i { color: var(--arcade-yellow); height: 64px; width: 64px; }.loop-editor__empty p { color: var(--arcade-muted); }.loop-editor__heading { align-items: start; display: flex; justify-content: space-between; }.loop-editor__heading h2 { font-size: 2.4rem; }.loop-editor__heading p:last-child { color: var(--arcade-muted); }
#music-waveform { background: #080b10; border: 1px solid var(--arcade-rule); margin: 1.4rem 0; max-height: 230px; width: 100%; }.music-choice { display: grid; gap: 1rem; grid-template-columns: 1fr 1fr; }.music-choice .choice-card { background: #0a0e15; color: var(--arcade-ink); text-align: left; }.music-choice .choice-card.is-selected { border-color: var(--arcade-yellow); box-shadow: inset 0 -4px var(--arcade-yellow); }.music-choice small { color: var(--arcade-muted); display: block; margin-top: .4rem; }
.loop-controls,.loop-gain { border-top: 1px solid var(--arcade-rule); display: grid; gap: .8rem; margin-top: 1rem; padding-top: 1rem; }.loop-controls label,.loop-gain { color: var(--arcade-muted); font: .72rem var(--arcade-display); }.loop-controls input,.loop-gain input { display: block; margin-top: .5rem; width: 100%; }.loop-controls output,.loop-gain output { color: var(--arcade-yellow); float: right; }.loop-nudges { display: flex; flex-wrap: wrap; gap: .4rem; }.loop-nudges button { background: #0a0e15; border: 1px solid var(--arcade-rule); color: var(--arcade-muted); padding: .45rem; }.loop-transport,.loop-use { align-items: center; display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.2rem; }.loop-use { border-top: 2px dashed #465165; justify-content: space-between; padding-top: 1.2rem; }.loop-use p { color: var(--arcade-muted); font-size: .78rem; }.music-handoff { border-top: 1px solid var(--arcade-rule); margin-top: 4rem; padding-top: 3rem; }.music-handoff h2 { font-size: clamp(2rem,4vw,4rem); }.music-handoff>p:last-child { color: var(--arcade-muted); line-height: 1.6; max-width: 70ch; }
.music-empty { color: var(--arcade-muted); padding: 1.5rem 0; }
@media(max-width:1000px){.music-layout,.music-lab-layout,.music-lab-hero{grid-template-columns:1fr}.music-shortlist{position:static}.music-grid{max-height:none}.music-filters{grid-template-columns:1fr 1fr}.music-lab-steps{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.music-grid,.music-choice,.music-filters{grid-template-columns:1fr}.music-card{grid-template-columns:82px 1fr}.music-card__art{min-height:210px}.music-lab-main{padding:1.25rem}.loop-editor__heading{gap:1rem;flex-direction:column}.music-lab-steps{grid-template-columns:1fr}}
