.shelf{--closed-w:19px;--active-size:140px;--rec-h:140px;--spine-h:140px;--gap:7px;--anim:0.9s;--hover-anim:180ms;--disc-peek:46px;--ease:cubic-bezier(0.33,0,0.18,1);display:flex;align-items:flex-end;justify-content:center;gap:var(--gap);padding:44px 0 4px}.vinyl{appearance:none;border:0;background:none;padding:0;font:inherit;cursor:pointer;outline:none;position:relative;flex:0 0 auto;width:var(--closed-w);height:var(--spine-h);margin-right:0;transform-origin:bottom center;transform:rotate(var(--lean,0deg));transition:width var(--anim) var(--ease),height var(--anim) var(--ease),margin-right var(--anim) var(--ease),transform var(--anim) var(--ease)}.vinyl.is-open{width:var(--active-size);height:var(--active-size);margin-right:calc(var(--disc-peek) + 6px);transform:rotate(0deg);z-index:20}.vinyl:focus-visible{outline:2px solid rgba(0,0,0,.45);outline-offset:4px}.vinyl__lift{position:relative;display:block;width:100%;height:100%;transform-origin:bottom center;transition:transform var(--hover-anim) ease}.vinyl.is-hover:not(.is-open) .vinyl__lift{transform:translateY(-9px) scale(1.03)}.vinyl__spine{position:absolute;inset:0;border-radius:2px;background:var(--gray-bg,#0d1b2a);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),inset -2px 0 5px rgba(0,0,0,.45),inset 1px 0 0 rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:filter var(--hover-anim) ease}.vinyl__spine:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent,#888);transition:width var(--hover-anim) ease,filter var(--hover-anim) ease}.vinyl.is-hover:not(.is-open) .vinyl__spine{filter:brightness(1.04)}.vinyl.is-hover:not(.is-open) .vinyl__spine:before{width:4px;filter:brightness(1.15) saturate(1.25)}.vinyl__cover-wrap{position:absolute;inset:0;perspective:1100px;visibility:hidden;transition:visibility 0s linear var(--anim)}.vinyl.is-open .vinyl__cover-wrap{visibility:visible;transition:visibility 0s}.vinyl__cover{position:absolute;left:0;bottom:0;width:var(--active-size);height:var(--rec-h);object-fit:cover;border-radius:2px;transform-origin:left center;transform:rotateY(90deg);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 14px 28px -12px rgba(0,0,0,.45),0 6px 22px -14px var(--accent-soft);z-index:2;transition:transform var(--anim) var(--ease)}.vinyl.is-open .vinyl__cover{transform:rotateY(0deg)}.vinyl__disc{position:absolute;top:50%;right:calc(-1 * var(--disc-peek));width:calc(var(--active-size) * .85);height:calc(var(--active-size) * .85);border-radius:50%;background:radial-gradient(circle,#3a3a3a 0 15%,#0d0d0d 15% 18%,#1c1c1c 18% 100%);box-shadow:0 8px 18px -10px rgba(0,0,0,.5);z-index:1;visibility:hidden;transform:translateY(-50%) translateX(calc(-1 * (var(--disc-peek) + 14px)));transition:transform 0s,visibility 0s;pointer-events:none}.vinyl.is-open .vinyl__disc{visibility:visible;transform:translateY(-50%) translateX(0);transition:transform calc(var(--anim) * .22) var(--ease) calc(var(--anim) * .76),visibility 0s linear calc(var(--anim) * .76)}.vinyl__tooltip{position:absolute;bottom:calc(var(--spine-h) + 12px);left:50%;transform:translateX(-50%) translateY(4px);background:#111;color:#fff;font-size:11px;line-height:1.3;padding:5px 9px;border-radius:7px;white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis;opacity:0;pointer-events:none;z-index:50;transition:opacity var(--hover-anim) ease,transform var(--hover-anim) ease}.vinyl.is-hover:not(.is-open) .vinyl__tooltip{opacity:1;transform:translateX(-50%) translateY(0)}.shelf-line{height:1px;margin:12px auto 0;max-width:72%;background:linear-gradient(90deg,transparent,rgba(0,0,0,.14),transparent);box-shadow:0 8px 16px -12px rgba(0,0,0,.4)}.shelf-caption{margin-top:24px;text-align:center;font-size:.875rem;color:hsl(var(--muted-foreground));animation:shelf-caption-in .32s ease}@keyframes shelf-caption-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.vinyl,.vinyl__lift{transition-duration:.2s}.vinyl__cover{transform:none!important;transition:none}.vinyl__disc{transform:translateY(-50%) translateX(0)!important;transition:none}.vinyl.is-hover:not(.is-open) .vinyl__lift{transform:translateY(-6px)}.shelf-caption{animation:none}}@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/8fc8dccb033fe656-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/9bc9b770bf3ad301-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Newsreader;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/283946f895707bec-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e40e5ab8daee7a5c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e10edf7cb901ff1a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e699fbf9329167c0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Newsreader Fallback;src:local("Times New Roman");ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.00%;size-adjust:105.48%}.__className_97178e{font-family:Newsreader,Newsreader Fallback;font-weight:400}.__variable_97178e{--font-newsreader:"Newsreader","Newsreader Fallback"}