.playground-timeline{margin:1.5rem 0}
.timeline-track{position:relative;height:4px;background:color-mix(in srgb,var(--as-text) 25%,transparent);border-radius:4px;margin:2rem 0}
.timeline-orb{position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:var(--as-accent);transform:translate(-50%,-50%);cursor:grab;box-shadow:0 0 16px color-mix(in srgb,var(--as-accent) 60%,transparent)}
.timeline-markers{display:flex;justify-content:space-between;font-size:.75rem;opacity:.7}
.playground-list{display:grid;gap:.5rem}
.playground-list button{text-align:left;background:transparent;border:1px solid color-mix(in srgb,var(--as-text) 20%,transparent);color:inherit;padding:.5rem;border-radius:8px;cursor:pointer}
.vinyl-shelf{display:grid;grid-template-columns:1fr minmax(280px,360px);gap:1.5rem;align-items:start}
@media(max-width:900px){.vinyl-shelf{grid-template-columns:1fr}}
.shelf-stage{perspective:900px;min-height:320px;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}
.media-item{width:140px;height:140px;border-radius:50%;background:linear-gradient(145deg,#333,#111);border:4px solid #444;position:relative;cursor:pointer;transition:transform .25s}
.media-item.cassette{width:160px;height:100px;border-radius:6px}
.media-item.active{transform:scale(1.08) translateY(-6px);border-color:var(--as-accent)}
.media-item .mini-player{position:absolute;inset:auto 8px 8px 8px;display:flex;gap:.35rem;align-items:center;font-size:.7rem}
.gear-masonry{columns:2 260px;gap:1rem}
.gear-masonry .gear-item{break-inside:avoid;margin-bottom:1rem;border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--as-text) 6%,transparent)}
.gear-shelf{display:flex;flex-wrap:wrap;gap:1rem}
.gear-shelf .gear-item{width:180px;padding:.75rem;border-radius:10px;background:color-mix(in srgb,var(--as-text) 8%,transparent)}
.gear-spotlight .spotlight-main{aspect-ratio:4/3;border-radius:12px;overflow:hidden;margin-bottom:1rem}
.gear-catalog .gear-row{display:grid;grid-template-columns:200px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid color-mix(in srgb,var(--as-text) 12%,transparent)}
@media(max-width:700px){.gear-catalog .gear-row{grid-template-columns:1fr}}
.dial-stage{min-height:360px;display:grid;place-items:center}
.dial-ring{width:min(360px,90vw);aspect-ratio:1;border-radius:50%;border:2px solid color-mix(in srgb,var(--as-accent) 50%,transparent);position:relative}
