.hain-playlists{margin:3rem 0;padding:clamp(1rem,3vw,2rem);border:1px solid #62502d;background:linear-gradient(135deg,#202123,#161719);scroll-margin-top:120px}.hain-playlists h2{color:#dec38a}.hain-playlists form{display:grid;gap:1rem;max-width:650px;margin:1.5rem 0}.hain-playlists [hidden]{display:none!important}.hain-playlists label{display:grid;gap:.5rem;color:#dec38a}.hain-playlists input{box-sizing:border-box;width:100%;min-height:46px;background:#151618;border:1px solid #61533a;color:#f2e8d6;padding:.75rem;font:inherit;border-radius:3px}.hain-playlists input:focus-visible,.hain-playlists button:focus-visible,.hain-playlists a:focus-visible{outline:2px solid #dab76b;outline-offset:4px}.hain-playlists small{line-height:1.6;color:#b6b8a9}.playlist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}.playlist-card{padding:1.3rem;border:1px solid #4d4733;background:#1a1b1d;overflow-wrap:anywhere}.playlist-card h3{margin:0 0 .7rem}.playlist-card p{color:#bdb9a7;font-size:.9rem}.playlist-card a{display:inline-flex;align-items:center;gap:.6rem;min-height:44px}.playlist-remove{display:block;margin-top:1rem;padding:.5rem;background:none;border:0;color:#c8b487;text-decoration:underline;cursor:pointer;min-height:44px}#playlist-status{min-height:1.5em;color:#dec38a}
.playlist-page{padding-top:clamp(2rem,6vw,5rem);padding-bottom:4rem}.playlist-hero{display:grid;grid-template-columns:1fr 200px;gap:3rem;align-items:center;padding-bottom:3rem}.playlist-hero h1{font-family:var(--font-display,Georgia,serif);font-size:clamp(2.5rem,6vw,4.8rem);line-height:1.08;margin:.5rem 0 1rem}.playlist-lead{color:#dec38a;font-size:1.3rem}.playlist-hero p{max-width:650px}.playlist-mark{display:grid;place-items:center;height:200px;color:#d4b571;font-size:5rem;border:1px solid #79613a;background:radial-gradient(ellipse,#49371f55,#191a1c 70%);border-radius:50%;box-shadow:inset 0 0 32px #0009}.playlist-mark span{font-size:.8rem;letter-spacing:.1em}.playlist-rules{border-left:3px solid #d0af6a;padding:1rem 1.5rem;background:#202123}.playlist-rules strong{color:#e3c88c}.playlist-rules p{margin:.5rem 0}.playlist-heading{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;margin-bottom:1.5rem}.playlist-heading select{background:#1a1b1d;color:#e7d6b2;border:1px solid #6b5938;padding:.7rem;font:inherit;min-height:44px}.playlist-badge{display:block;color:#d6b773;letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;margin-bottom:1rem}.playlist-song{border-left:2px solid #89703f;padding-left:.8rem}.playlist-submit{margin-top:3rem;padding-top:2rem;border-top:1px solid #514930;scroll-margin-top:130px}.playlist-card label{margin-top:1rem;font-size:.9rem}.playlist-confirm{display:flex!important;align-items:flex-start;gap:.6rem!important}.playlist-confirm input{width:20px;min-height:20px;height:20px;flex-shrink:0}.playlist-card button:disabled{opacity:.5;cursor:default}.playlist-card:hover{border-color:#9c7a40;box-shadow:0 0 16px #d4a04c0a}.playlist-card{transition:border-color .2s,box-shadow .2s}.playlist-empty{color:#bdb9a7;padding:1.5rem 0}#playlist-pending{margin-top:2rem}@media(max-width:650px){.playlist-hero{grid-template-columns:1fr;gap:1rem}.playlist-mark{display:none}.playlist-heading{align-items:flex-start;flex-direction:column}.playlist-heading select{width:100%}}

/* Playlist-Hain: alpine evening, aged wood and Heid’n-Ruaf gold. */
@font-face{font-family:HainRocker;src:url('assets/fonts/new-rocker-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
.playlist-hain-body{background:#121315}
.playlist-page{--hain-gold:#d6b16a;--hain-light:#f1dbab;max-width:1200px;padding-top:0;padding-bottom:3rem}
.playlist-page h1,.playlist-page h2,.playlist-page h3{font-family:HainRocker,Cinzel,Georgia,serif!important;font-weight:400;letter-spacing:.01em;color:var(--hain-light)}
.playlist-page h2{font-size:clamp(1.8rem,3vw,2.55rem);line-height:1.2}
.playlist-page .eyebrow{font-family:Cinzel,Georgia,serif;font-size:.8rem;letter-spacing:.13em;color:var(--hain-gold)}
.playlist-page .playlist-hero{position:relative;display:block;width:100vw;margin-inline:calc(50% - 50vw);min-height:430px;padding:0;background:linear-gradient(90deg,#121315e8 0%,#151618b0 35%,#12131530 75%),linear-gradient(0deg,#121315 0%,transparent 48%),url('assets/playlist-hain/berge.webp') center 50%/cover no-repeat;border-bottom:1px solid #9f7d3f55}
.playlist-page .playlist-hero-copy{max-width:1200px;margin:auto;padding:3rem clamp(1.5rem,4vw,3rem) 4rem}
.playlist-page .playlist-hero h1{font-size:clamp(3rem,6.4vw,5.3rem);max-width:760px;margin:.7rem 0 1rem;line-height:1.08;color:#eed3a0;text-shadow:0 3px 0 #101113,0 5px 26px #000}
.playlist-page .playlist-hero p{font-size:1.05rem;line-height:1.75;color:#ddd7c8;margin-bottom:1.25rem}
.playlist-page .playlist-hero .eyebrow{font-size:.8rem;color:#e0bc75}
.playlist-page .playlist-hero .playlist-lead{font-family:Cinzel,Georgia,serif;font-size:1.25rem;color:#e1c384;margin:0 0 .8rem}
.playlist-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.playlist-page .button,.playlist-page details>summary{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:48px;padding:.8rem 1.35rem;border:1px solid #8d6a36;border-radius:2px;background:linear-gradient(180deg,#ab834022,transparent 28%,#0007),url('assets/menu-wood.svg') center/260px 65px #271e16;color:#edd39a;font:400 1.08rem/1.25 HainRocker,Cinzel,Georgia,serif;text-decoration:none;letter-spacing:.035em;box-shadow:inset 0 1px #e2c78a33,inset 0 -3px #080706a6,0 4px 12px #0005;transition:color .2s,border-color .2s,box-shadow .2s,transform .2s;cursor:pointer}
.playlist-page .button-gold{border-color:#b58c48;background:linear-gradient(180deg,#d5a95e30,#704d2020 50%,#0008),url('assets/menu-wood.svg') center/260px 65px #34271b}
.playlist-page .button:hover,.playlist-page details>summary:hover{color:#ffebbd;border-color:#dab679;box-shadow:inset 0 1px #e2c78a66,0 0 18px #d89a3020;transform:translateY(-1px)}
.playlist-page :is(a,button,input,select,summary):focus-visible{outline:2px solid #e5bf77;outline-offset:4px}
.playlist-page .playlist-rules{display:flex;align-items:center;gap:1.2rem;margin:1.4rem 0 2.5rem;padding:1.1rem 1.4rem;border:1px solid #6c56323d;border-left:3px solid #b58b46;background:linear-gradient(90deg,#33271766,#1c1d1f55)}
.playlist-rules>span{color:#c59c57;font-size:2.2rem}.playlist-page .playlist-rules strong{font:400 1.25rem HainRocker,Georgia,serif;color:#e2c589}.playlist-page .playlist-rules p{font-size:1rem;line-height:1.6;margin:.35rem 0 0;color:#c8c6b6}
.playlist-page .hain-playlists{padding:0;margin:0;border:0;background:none;scroll-margin-top:130px}
.playlist-page .playlist-heading{margin:0 0 1.5rem;padding-bottom:1.2rem;border-bottom:1px solid #94754055;align-items:flex-end}
.playlist-page .playlist-heading h2{margin:.4rem 0 .7rem}.playlist-page .playlist-heading p:last-child{font-size:.9rem;color:#b4b7a6;margin:0}
.playlist-page .playlist-heading label{font-size:.9rem;color:#c2ae87;min-width:180px;gap:.4rem}.playlist-page .playlist-heading select{background:#1b1c1e;font:400 1rem Cinzel,Georgia,serif;border:1px solid #705b37;cursor:pointer}
.playlist-page .playlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem}
.playlist-page .playlist-card{padding:0 0 1.6rem;border:1px solid #8b6b394f;background:linear-gradient(150deg,#2c2518b0,#1e1f21 38%,#191a1c);box-shadow:inset 0 0 0 5px #151618,0 8px 22px #0005;overflow:hidden}
.playlist-card-art{height:145px;position:relative;background:linear-gradient(0deg,#1e1f21,#1a1b1d33),url('assets/playlist-hain/berge.webp') 30% 50%/cover;border-bottom:1px solid #8b6b393d;display:flex;align-items:center;justify-content:center}
.playlist-card:nth-child(even) .playlist-card-art{background-position:70% 50%}.playlist-card-art img{width:42px;height:42px;opacity:.95;padding:16px;box-sizing:content-box;background:#111214bb;border:1px solid #cba45c77;border-radius:50%;box-shadow:0 4px 22px #0009}
.playlist-page .playlist-card>:not(.playlist-card-art){margin-left:1.6rem;margin-right:1.6rem}
.playlist-page .playlist-badge{margin-top:1.3rem;margin-bottom:.6rem;font:400 .8rem Cinzel,Georgia,serif;color:#c6a361;letter-spacing:.1em}
.playlist-page .playlist-card h3{font-size:1.8rem;line-height:1.3;margin-bottom:.75rem}.playlist-page .playlist-card p{font-size:.95rem;line-height:1.7;color:#bfc0b0}
.playlist-page .playlist-song{padding:.7rem .9rem;border-left:2px solid #a78443;background:#b9924120;color:#e0d1ad!important;margin-top:1.2rem;margin-bottom:1.3rem}
.playlist-page .playlist-card:hover{border-color:#b28b4b;box-shadow:inset 0 0 0 5px #151618,0 8px 24px #0006,0 0 18px #c38a2020}
.playlist-page .playlist-empty{grid-column:1/-1;padding:2.8rem 2rem;border:1px solid #7d653a60;position:relative;background:linear-gradient(90deg,#1a1b1dea,#1a1b1dc7),url('assets/playlist-hain/berge.webp') center/cover;text-align:center;color:#c9c5b4}
.playlist-page .playlist-empty-title{font:400 clamp(1.6rem,3vw,2.2rem) HainRocker,Georgia,serif;color:#e7ca92;margin:0 0 1rem}.playlist-page .playlist-empty p:not(.playlist-empty-title){margin:0 auto 1.5rem;max-width:510px;font-size:1rem;line-height:1.7}
.playlist-page .playlist-submit{display:grid;grid-template-columns:250px minmax(0,1fr);gap:2.6rem;align-items:start;margin-top:3rem;padding:2.4rem;border:1px solid #94754055;background:linear-gradient(145deg,#2a221880,#1a1b1d 50%);box-shadow:inset 0 0 0 6px #151618}
.playlist-submit-brand{text-align:center;padding:.6rem}.playlist-submit-brand img{display:block;width:100%;height:auto;border-radius:50%;box-shadow:0 8px 30px #0009}.playlist-submit-brand .eyebrow{margin:1.4rem 0 0}
.playlist-submit-copy>p:not(.eyebrow){color:#c8c6b8;font-size:1rem;line-height:1.7;max-width:560px}.playlist-page details{margin-top:1.5rem}.playlist-page details>summary{list-style:none;min-width:200px}.playlist-page details>summary::-webkit-details-marker{display:none}.playlist-page details[open]>summary{border-color:#cba564}
.playlist-page form{margin:1.5rem 0 0;max-width:none}.playlist-page label{font-size:1rem}.playlist-page input{padding:.9rem;background:#151618dd;border:1px solid #6f5a35;border-radius:1px;font-size:1rem;color:#f2e6cc}.playlist-page input::placeholder{color:#979887}.playlist-page small{font-size:.875rem;line-height:1.7}.playlist-page #playlist-login small{display:block;margin-top:1rem}
.playlist-page #playlist-status{padding:1rem 0;font-size:1rem;line-height:1.6}.playlist-page #playlist-status:empty{display:none}.playlist-page #playlist-pending{padding-top:2rem;border-top:1px solid #80633755}.playlist-page .playlist-remove{font-size:.875rem}.playlist-page .playlist-confirm{font-size:.9rem}.playlist-page .playlist-confirm input{padding:0}.playlist-page .playlist-card label{margin-bottom:1rem}
@media(max-width:700px){.playlist-page .playlist-hero{min-height:390px;background-position:65% center}.playlist-page .playlist-hero-copy{padding:2.5rem 1.5rem 3rem;background:linear-gradient(90deg,#1213158c,#12131540)}.playlist-page .playlist-hero h1{font-size:clamp(2.6rem,9vw,4rem)}.playlist-page .playlist-hero-actions{gap:.6rem}.playlist-page .playlist-hero-actions .button{font-size:1rem;padding:.8rem 1rem}.playlist-page .playlist-rules{margin-bottom:2rem;padding:1rem;align-items:flex-start}.playlist-page .playlist-heading{gap:1rem;align-items:stretch}.playlist-page .playlist-heading label{width:100%}.playlist-page .playlist-grid{grid-template-columns:1fr}.playlist-page .playlist-submit{grid-template-columns:1fr;padding:1.5rem;gap:1.5rem}.playlist-submit-brand{max-width:180px;margin:auto}.playlist-page .playlist-empty{padding:2rem 1rem}.playlist-page .playlist-card h3{font-size:1.7rem}.playlist-page .playlist-card>:not(.playlist-card-art){margin-left:1.2rem;margin-right:1.2rem}}
@media(prefers-reduced-motion:reduce){.playlist-page .button,.playlist-page .playlist-card,.playlist-page details>summary{transition:none}.playlist-page .button:hover,.playlist-page details>summary:hover{transform:none}}
