/* Force dark ER theme — never inherit light-mode washout */
html{color-scheme:dark only;background:#05080a!important}
:root{color-scheme:dark only;--bg:#05080a;--pan:#0c1316;--red:#ff2a3d;--teal:#00f0d0;--tx:#e8f4f2;--mu:#9bb5b2}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{
  background-color:#05080a!important;
  background-image:radial-gradient(circle at 80% -10%,#00f0d01a,transparent 50%),radial-gradient(circle at 0 40%,#ff2a3d14,transparent 40%);
  color:#e8f4f2!important;
  font:16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;
  min-height:100dvh;
  padding-bottom:0;
}
body.entered,body.entered-done{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px) + 40px)}
a{color:var(--teal)}
h1,h2,h3,b,p,small,label,li,span{color:inherit}
@media (prefers-color-scheme:light){
  html,body{background-color:#05080a!important;color:#e8f4f2!important}
}

/* —— Landing gate —— */
.landing{
  position:fixed;inset:0;z-index:100;
  display:flex;align-items:center;justify-content:center;
  background:#05080a;
  background-image:radial-gradient(circle at 80% -10%,#00f0d022,transparent 50%),radial-gradient(circle at 0 50%,#ff2a3d18,transparent 45%);
  padding:1.25rem;overflow:hidden;
  transition:opacity .55s ease,visibility .55s;
}
.landing.landing-admin{overflow-y:auto;-webkit-overflow-scrolling:touch;align-items:flex-start;padding-top:max(1.25rem, env(safe-area-inset-top));padding-bottom:max(2rem, env(safe-area-inset-bottom))}
.landing.landing-admin .landing-inner{margin:auto 0;padding:.5rem 0 2rem}
.landing-inner{position:relative;z-index:2;width:min(100%,520px)}
body.entered .landing,body.entered-done .landing{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  display:none!important;
}
body.gate .top,body.gate .site-inner,body.gate #site-foot{display:none!important}
body.gate{overflow:hidden}
body.entered,body.entered-done{
  background-color:#05080a!important;
}

.landing h1{
  font-size:clamp(3.6rem,16vw,7.5rem);line-height:.82;font-weight:900;letter-spacing:-.04em;
  color:#ffffff!important;-webkit-text-fill-color:#ffffff;
  text-shadow:0 0 40px #ff2a3d88,0 0 2px #fff;
  margin:.2rem 0 1.4rem;
}
.landing h1 em{
  color:transparent!important;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:2px var(--teal);font-style:normal;
  text-shadow:0 0 30px #00f0d099;
}
.tag{color:var(--teal)!important;font-family:monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;margin-bottom:.8rem}
.brand-atm{color:var(--teal);font-weight:800;letter-spacing:.14em}
.about-brand{margin:0 0 1rem}
footer .brand-atm{color:var(--teal)}
.ekg{position:absolute;inset:auto 0 auto 0;top:22%;height:72px;opacity:.22;z-index:0;pointer-events:none}
.ekg svg{width:100%;height:100%}
.ekg polyline{fill:none;stroke:var(--red);stroke-width:2;stroke-dasharray:1200;animation:ekg 3s linear infinite;filter:drop-shadow(0 0 6px var(--red))}
@keyframes ekg{from{stroke-dashoffset:1200}to{stroke-dashoffset:0}}
/* Flow / CTAs sit above the decorative heartbeat */
.landing-inner .cta,
.landing-inner #now-strip,
.landing-inner #hero-video,
.landing-inner .social-row,
.landing-inner #featured-week{position:relative;z-index:2}
#now-strip{isolation:isolate}
@media(max-width:520px){
  .ekg{opacity:.12;top:18%;height:56px}
  /* keep line away from Flow cards near the lower third */
  .landing-inner #now-strip .nw-post{position:relative;z-index:2}
}
.cta{display:flex;flex-direction:column;gap:.7rem;position:relative;z-index:2;max-width:320px}
.patient-cta{border-color:#ffffff44!important;color:#e8f4f2!important;background:#ffffff0a;letter-spacing:.04em;font-weight:800}
.patient-cta:hover{border-color:var(--teal)!important;color:var(--teal)!important}
.rg .role-grid{display:grid;gap:.55rem;margin:.6rem 0 1rem;text-align:left}
.rg .role-card{border:1px solid #00f0d044;border-radius:12px;padding:.65rem .75rem;background:#0006;cursor:pointer;display:block}
.rg .role-card:has(input:checked),.rg .role-card.on{border-color:var(--teal);box-shadow:0 0 0 1px var(--teal),0 0 20px #00f0d022}
.rg .role-card b{display:block;color:#e8f4f2;margin-bottom:.2rem}
.rg .role-card small{display:block;color:#7d9a97;font-size:.78rem;line-height:1.35}
.rg .role-card input{accent-color:var(--teal);margin-right:.4rem}
.cta .btn{text-align:center}

/* Door open animation */
.doors{position:absolute;inset:0;z-index:3;display:flex;pointer-events:none;opacity:0}
body.doors-anim .doors{opacity:1}
.door{flex:1;background:#05080a;box-shadow:inset 0 0 40px #00f0d022}
body.doors-anim .door.L{animation:doorL .7s ease forwards}
body.doors-anim .door.R{animation:doorR .7s ease forwards}
@keyframes doorL{from{transform:translateX(0)}to{transform:translateX(-105%)}}
@keyframes doorR{from{transform:translateX(0)}to{transform:translateX(105%)}}
body.doors-anim .landing-inner{animation:fadeUp .45s ease forwards}
@keyframes fadeUp{to{opacity:0;transform:translateY(-12px)}}

.btn{display:inline-block;padding:.85rem 1.4rem;border:2px solid;border-radius:4px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;cursor:pointer;background:transparent;font-size:.9rem;font-family:inherit}
.btn.red{color:#fff!important;background:var(--red);border-color:var(--red);box-shadow:0 0 24px #ff2a3d66}
.btn.teal{color:var(--teal)!important;border-color:var(--teal);background:#05080a}
.btn.big{font-size:clamp(1rem,4vw,1.4rem);word-break:break-all}

/* —— Chrome —— */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#05080af2;backdrop-filter:blur(10px);border-bottom:1px solid #00f0d033}
.logo{font-weight:900;letter-spacing:.08em;color:#e8f4f2!important;text-decoration:none}.logo span{color:var(--red)}
.burger{background:none;border:0;color:var(--teal);font-size:1.6rem;cursor:pointer}
nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--pan);flex-direction:column;max-height:70vh;overflow:auto}
.nav-open nav{display:flex}
nav a{padding:.85rem 1rem;text-decoration:none;color:#e8f4f2!important;border-top:1px solid #ffffff10;text-transform:uppercase;font-size:.8rem;letter-spacing:.1em}
nav a:hover{color:var(--teal)!important}
@media(min-width:960px){.burger{display:none}nav{display:flex;position:static;flex-direction:row;background:none;max-height:none;overflow:visible}nav a{border:0;padding:.35rem .55rem;font-size:.72rem}}

.site-inner{max-width:720px;margin:0 auto;padding:1rem 1rem 2rem;background:transparent;position:relative;z-index:1}
.hub-lead{color:var(--mu);font-size:.9rem;margin:0 0 .8rem;font-family:monospace;letter-spacing:.08em;text-transform:uppercase}

/* Accordion hub */
.hub{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
@media(min-width:700px){.hub{grid-template-columns:repeat(3,1fr)}}
.panel{background:var(--pan);border:1px solid #ffffff14;border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s;min-height:0}
.panel.open{grid-column:1/-1;border-color:#00f0d055;box-shadow:0 0 0 1px #00f0d022,0 12px 40px #0008}
.panel-head{min-height:92px}
.panel:not(.open) .ph-txt b{font-size:.92rem}
.panel:not(.open) .ph-txt small{font-size:.7rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.panel-head{width:100%;display:flex;align-items:center;gap:.85rem;padding:1rem 1.1rem;background:transparent;border:0;color:#e8f4f2!important;cursor:pointer;text-align:left;font:inherit}
.panel-head:hover{background:#00f0d00a}
.ico{font-size:1.55rem;width:2.2rem;text-align:center;flex-shrink:0}
.ico-img{width:2.5rem;height:2.5rem;padding:0;display:grid;place-items:center}
.ico-img picture,.ico-img img{width:2.5rem;height:2.5rem;border-radius:10px;object-fit:cover;display:block;box-shadow:0 0 0 1px #00f0d044,0 0 12px #00f0d022}

.ph-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}
.ph-txt b{font-size:1.05rem;color:#fff!important;letter-spacing:.02em}
.ph-txt small{color:var(--mu)!important;font-size:.8rem}
.chev{font-size:1.4rem;font-weight:300;color:var(--teal);width:1.5rem;text-align:center;transition:transform .25s}
.panel.open .chev{transform:rotate(45deg)}
.panel-body{padding:0 1rem 1.1rem;border-top:1px solid #ffffff10;animation:panelIn .28s ease}
.panel-body[hidden]{display:none!important}
@keyframes panelIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

.lead{color:var(--mu)!important;font-size:1rem;margin:.8rem 0 1rem}
.tabs{display:flex;gap:.5rem;margin:.4rem 0 1rem}
.tabs button{flex:1;max-width:160px;padding:.65rem;background:#05080a;color:var(--mu);border:1px solid #ffffff1a;font-weight:800;text-transform:uppercase;cursor:pointer;border-radius:4px}
.tabs .on{color:#05080a!important;background:var(--teal);border-color:var(--teal)}

/* Compact horizontal album row */
.grid.hscroll{display:flex;gap:.7rem;overflow-x:auto;padding:0 0 .4rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.grid.hscroll::-webkit-scrollbar{height:4px}.grid.hscroll::-webkit-scrollbar-thumb{background:#00f0d044;border-radius:4px}
.grid.hscroll .alb{flex:0 0 132px;scroll-snap-align:start;background:#05080a;border:1px solid #ffffff12;cursor:pointer;text-align:left;color:#e8f4f2;padding:0;border-radius:8px;overflow:hidden;transition:.2s}
.grid.hscroll .alb:hover{border-color:var(--red);transform:translateY(-2px)}
.alb img{width:100%;aspect-ratio:1;object-fit:cover;display:block}
.alb div{padding:.45rem .5rem}.alb b{display:block;font-size:.75rem;line-height:1.2;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.alb small{color:var(--mu)!important;font-size:.68rem}

dialog{background:var(--pan);color:var(--tx);border:1px solid var(--teal);max-width:900px;width:94vw;padding:0;max-height:90vh}
dialog::backdrop{background:#000c}
.x{position:sticky;top:0;float:right;background:var(--red);color:#fff;border:0;width:40px;height:40px;cursor:pointer;z-index:2}
.ahead{display:grid;gap:1rem;padding:1rem}@media(min-width:700px){.ahead{grid-template-columns:220px 1fr}}
.ahead img{width:100%}.meta{font-size:.85rem;color:var(--mu);font-family:monospace}
.trk{display:grid;grid-template-columns:2rem 1fr auto;gap:.5rem;padding:.6rem 1rem;border-top:1px solid #ffffff10;align-items:center;cursor:pointer;color:#e8f4f2}
.trk:hover{background:#00f0d00d}.trk .isrc{font-family:monospace;font-size:.72rem;color:var(--teal)}.trk .cs{font-size:.7rem;color:var(--red);text-transform:uppercase}

.vgrid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:560px){.vgrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}
.vgrid.vert{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.vgrid video{width:100%;background:#000;aspect-ratio:16/9;border-radius:6px}
.vert video{aspect-ratio:9/16}
.vcard{background:#05080a;border:1px solid #ffffff10;border-radius:8px;overflow:hidden;padding-bottom:.55rem}
.vcard b,.vcard p{padding:0 .65rem;display:block;color:#e8f4f2!important}
.vcard p{color:var(--mu)!important;font-size:.82rem}
.empty{border:1px dashed #00f0d055;padding:1.5rem;text-align:center;color:var(--mu);grid-column:1/-1;border-radius:8px}

.stage-wrap{display:grid;gap:1.4rem}
@media(min-width:800px){.stage-wrap{grid-template-columns:1fr 1fr}}
.steps{padding-left:1.2rem;margin-bottom:1rem;color:#e8f4f2}.steps li{margin:.45rem 0}.steps li::marker{color:var(--red);font-weight:900}
.screen{aspect-ratio:16/9;background:#000 repeating-linear-gradient(0deg,#ffffff05 0 2px,transparent 2px 4px);display:grid;place-items:center;text-align:center;color:var(--mu);border:1px solid #ffffff1a;border-radius:6px}
.screen video{width:100%;height:100%}.live-head{display:flex;gap:.5rem;align-items:center;font-family:monospace;margin-bottom:.4rem;color:var(--mu)}
.dot{width:10px;height:10px;border-radius:50%;background:#555}.dot.on{background:var(--red);box-shadow:0 0 10px var(--red);animation:p 1s infinite}@keyframes p{50%{opacity:.3}}
.card{background:#05080a;border:1px solid #ffffff14;padding:1.1rem;border-radius:8px;color:#e8f4f2}
form label{display:block;margin:.65rem 0;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mu)!important}
input,textarea{display:block;width:100%;margin-top:.3rem;background:#0c1316;border:1px solid #ffffff22;color:#e8f4f2;padding:.7rem;font:inherit;border-radius:4px}
input:focus,textarea:focus{outline:2px solid var(--teal)}
.songlist{max-height:160px;overflow:auto}.songlist button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #ffffff0d;color:#e8f4f2;padding:.45rem;cursor:pointer}
.picked{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0}.picked span{background:var(--red);padding:.2rem .55rem;border-radius:20px;font-size:.78rem;cursor:pointer;color:#fff}
.small{font-size:.85rem;color:var(--teal);margin-top:.6rem}
.about p{margin-bottom:1rem;max-width:70ch;color:#e8f4f2!important}
.about-hl-h{margin:1.25rem 0 .55rem;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.about-hl{margin:0 0 1rem;padding:0 0 0 1.1rem;max-width:70ch;color:#e8f4f2}
.about-hl li{margin:.45rem 0;line-height:1.45}
.about-hl b{color:#fff}
footer{text-align:center;color:var(--mu);font-size:.78rem;padding:1.5rem 1rem 0}
.foot-bookings{margin:0 0 .35rem;font-size:.85rem;color:#9bb}
.foot-bookings a{text-decoration:none;font-weight:700}
.foot-bookings a:hover{text-decoration:underline}
footer p{margin:.2rem 0}

/* Compact player — sits above Netlify badge */
.player{
  position:fixed;left:0;right:0;bottom:0;z-index:40;
  display:flex;align-items:center;gap:.4rem;flex-wrap:nowrap;
  padding:.4rem .65rem calc(.4rem + env(safe-area-inset-bottom,0px));
  background:#0c1316f5;border-top:2px solid var(--red);backdrop-filter:blur(10px);
  box-shadow:0 -4px 24px #000a;max-height:64px;
}
.player[hidden]{display:none!important}
.player img{width:40px;height:40px;object-fit:cover;background:#000;border-radius:4px;flex-shrink:0}
.p-meta{flex:1;min-width:0;display:flex;flex-direction:column}
.p-meta b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.82rem;color:#fff!important}
.p-meta small{color:var(--mu)!important;font-size:.68rem}
.player button{background:none;border:0;color:#e8f4f2;font-size:1.15rem;cursor:pointer;padding:.2rem;flex-shrink:0}
#p-play{color:var(--teal);font-size:1.4rem}
#p-seek{position:absolute;left:0;right:0;bottom:100%;margin:0;height:3px;padding:0;border:0;accent-color:var(--red);background:transparent;width:100%}
.player{flex-wrap:wrap}
#p-seek{flex-basis:100%;order:-1;position:static;height:3px;margin:0 0 .15rem}

/* Hide / dodge Netlify badge under player */
a[href*="netlify.com"]:has(img),#netlify-badge,.nf-badge{opacity:.35;transform:scale(.85);transform-origin:bottom right}

.ost-card{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin:0 0 1.1rem;padding:.75rem .9rem;background:linear-gradient(135deg,#ff2a3d33,#00f0d022);border:1px solid var(--teal);border-radius:12px;text-decoration:none;color:#e8f4f2!important;transition:.2s;position:relative}
.ost-art{flex:none;width:72px;height:72px;border-radius:10px;overflow:hidden;box-shadow:0 0 16px #00f0d022,0 4px 14px #0008;border:1px solid #00f0d044}
.ost-art img{width:100%;height:100%;object-fit:cover;display:block;background:#000}
.ost-card:hover{transform:translateY(-2px);box-shadow:0 8px 28px #00f0d033;border-color:var(--red)}
.ost-badge{font:700 .68rem/1 monospace;letter-spacing:.12em;color:#05080a;background:var(--teal);padding:.35rem .5rem;border-radius:3px}
.ost-body{flex:1;min-width:160px}.ost-body b{display:block;font-size:1rem;color:#fff!important}.ost-body small{color:var(--mu)!important}
.ost-go{font-weight:800;color:var(--teal)!important;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}
.vgrid .embed{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:6px}
.vgrid .embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vert .embed{aspect-ratio:9/16}
.yr-tag{display:inline-block;background:var(--red);color:#fff!important;font:700 .68rem/1 monospace;padding:.2rem .35rem;border-radius:3px;margin-right:.3rem}

/* Netlify free badge — tuck away so it never covers UI */
body > div:has(> a[href*="netlify"]),a[href="https://www.netlify.com"]{display:none!important}
.panel-link{display:block;text-decoration:none;color:inherit}

.yt-facade{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#000;cursor:pointer;border-radius:6px;overflow:hidden}
.yt-facade img{width:100%;height:100%;object-fit:cover;display:block}
.yt-facade .yt-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border-radius:50%;background:#ff2a3dee;color:#fff;font-size:1.6rem;display:grid;place-items:center;box-shadow:0 0 24px #ff2a3d88;pointer-events:none}
.yt-facade:hover .yt-play{transform:scale(1.06);background:var(--red)}
.vgrid video{background:#000 center/cover no-repeat}
.vgrid video[poster]{object-fit:contain}

.sp-all{margin:0 0 .8rem}.sp-all iframe,.sp-alb iframe{width:100%;border:0;border-radius:12px;display:block;background:#121212}
.sp-alb{padding:.6rem 1rem}
.trk .pv{background:transparent;border:1px solid var(--teal);color:var(--teal);border-radius:999px;font-size:.72rem;padding:.25rem .55rem;cursor:pointer;margin-right:.4rem;white-space:nowrap}
.trk .pv.on{background:var(--teal);color:#000}

#p-vol{width:72px;flex-shrink:0;accent-color:var(--teal);height:4px;margin:0 .15rem}
#p-mute{font-size:1rem}
.player .tap-sound{position:absolute;right:.6rem;top:-1.7rem;background:#ff2a3d;color:#fff;border:0;border-radius:999px;padding:.25rem .7rem;font:800 .72rem system-ui;cursor:pointer;letter-spacing:.04em;box-shadow:0 0 16px #ff2a3d66;animation:rgf .3s}
body.gate .player{z-index:50}

.pc-votes{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin-top:.4rem}
.pc-votes button{background:#000a;border:1px solid #ffffff22;color:#e8f4f2;border-radius:999px;padding:.35rem .75rem;cursor:pointer}

/* audience: no catalog dump in music UI */
body:not(.admin-meta) .isrc{display:none!important}

label.role-card{display:block}
label.role-card input{accent-color:var(--teal);margin-right:.35rem}

.patient-hub-cta{border-color:var(--teal)!important;color:var(--teal)!important}

.ico-img--light img,.ico-img--light picture{background:#fafafa}

#site-foot{padding-bottom:5.5rem}

/* Front n Center hub section */
.fnc{margin:2.5rem auto 1rem;padding:0 1rem 1rem;max-width:920px}
.fnc-card{border:1px solid #00f0d044;border-radius:18px;background:linear-gradient(165deg,#0c1316ee,#05080af2);padding:1.25rem 1.15rem 1.5rem;box-shadow:0 0 40px #00f0d014}
.fnc-head{margin:0 0 1.1rem;text-align:center}
.fnc-head h2{margin:0;font-size:1.45rem;letter-spacing:.04em;text-transform:uppercase}
.fnc-sub{margin:.35rem 0 0;color:#7d9a97;font-size:.88rem}
.fnc-player-wrap{margin:0 0 1.25rem}
.fnc-screen{min-height:200px;border-radius:14px}
.fnc-rx{margin-top:.55rem;gap:.4rem;align-items:center}
.fnc-rules{border:1px solid #ffffff14;border-radius:12px;padding:.55rem .85rem;margin:0 0 1.25rem;background:#0006}
.fnc-rules summary{cursor:pointer;font-weight:800;color:#e8f4f2;list-style:none}
.fnc-rules summary::-webkit-details-marker{display:none}
.fnc-rules summary::before{content:'▸ ';color:var(--teal)}
.fnc-rules[open] summary::before{content:'▾ '}
.fnc-rules ol{margin:.55rem 0 .2rem;padding-left:1.15rem;color:#9bb;font-size:.88rem;line-height:1.45}
.fnc-rules li{margin:.25rem 0}
.fnc-cal-nav{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem}
.fnc-cal-nav b{flex:1;text-align:center}
.fnc-list{margin:.75rem 0;font-size:.9rem}
.fnc-list a{color:var(--teal);text-decoration:none}
.fnc-prop{margin-top:1rem;padding-top:1rem;border-top:1px solid #ffffff12}
.fnc-prop h3{margin:0 0 .35rem;font-size:1rem}
.fnc-prop-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:.5rem 0}
.fnc-prop-row label{flex:1;min-width:140px}
@media(max-width:560px){.fnc{padding:0 .65rem 1rem}.fnc-card{padding:1rem .85rem 1.25rem}.fnc-screen{min-height:160px}}

.fnc-teaser{text-align:center;padding:.5rem .25rem 0.2rem;max-width:28rem;margin:0 auto}
.fnc-teaser p{color:#9bb;font-size:.95rem;line-height:1.45;margin:0 0 1rem}
.fnc-teaser .btn{min-width:12rem}

.fnc-slots{display:grid;gap:.65rem;margin:0 0 1rem}
.fnc-slot{border:1px solid #00f0d033;border-radius:12px;padding:.75rem .85rem;background:#0007}
.fnc-slot h3{margin:0 0 .25rem;font-size:.98rem}
.fnc-slot .bar{height:8px;background:#ffffff14;border-radius:8px;margin:.4rem 0}
.fnc-slot .bar>i{display:block;height:100%;border-radius:8px;background:var(--red)}
.fnc-slot.confirmed .bar>i{background:var(--teal)}
.fnc-slot .acts{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}
.fnc-slot .acts .btn{padding:.35rem .7rem;font-size:.82rem}
.fnc-prop-box{margin:0 0 1rem;border:0;padding:0}
.fnc-prop-sum{display:inline-block;list-style:none;cursor:pointer;margin-bottom:.5rem}
.fnc-prop-sum::-webkit-details-marker{display:none}
.fnc-prop-box[open] .fnc-prop{display:block}
.fnc-cal-wrap{margin:.5rem 0 0;border:1px solid #ffffff12;border-radius:12px;padding:.5rem .75rem;background:#0005}
.fnc-cal-wrap summary{cursor:pointer}
.fnc-join{margin-top:.65rem;padding-top:.65rem;border-top:1px solid #ffffff14}
.fnc-join label{display:block;margin:.35rem 0;font-size:.85rem}
.fnc-credit{margin:0 0 .75rem}

.fnc-player-wrap{position:relative}
.fnc-lock{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;background:rgba(5,8,10,.78);backdrop-filter:blur(6px);border-radius:inherit;pointer-events:none}
.fnc-lock-card{text-align:center;padding:1rem 1.2rem;max-width:16rem}
.fnc-lock-ico{font-size:1.6rem;margin:0 0 .35rem}
.fnc-player-wrap.is-locked #fnc-player{filter:grayscale(1) brightness(.45);pointer-events:none}
.fnc-player-wrap.is-locked .fnc-lock{display:flex}
.fnc-dim{opacity:.45;filter:grayscale(.4);pointer-events:none}
.fnc-dim summary,.fnc-dim button,.fnc-dim input{pointer-events:none}

.rg-fab{display:none!important}
body.entered #site-foot{padding-bottom:5.5rem}

/* —— Launch polish: social, notable, newsletter, a11y —— */
.social-row{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin:.85rem 0 0;position:relative;z-index:2}
.social-row a{
  width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  border:1px solid #00f0d044;background:#0008;color:#e8f4f2;text-decoration:none;
  transition:border-color .15s, background .15s, transform .15s;
}
.social-row a:hover,.social-row a:focus-visible{border-color:var(--teal);background:#00f0d018;outline:none;transform:translateY(-1px)}
.social-row a svg{width:20px;height:20px;fill:currentColor}
.social-row a[aria-label*="Spotify"]{color:#1DB954}
.social-row a[aria-label*="Apple"]{color:#fc3c44}
.social-row a[aria-label*="YouTube"]{color:#ff2a3d}
.social-row a[aria-label*="TikTok"]{color:#e8f4f2}
.social-row a[aria-label*="Instagram"]{color:#e1306c}
.landing .social-row{margin-top:.9rem;margin-bottom:.15rem}
.foot-social{margin:.75rem 0 .5rem}
.notable{margin:0 0 1.2rem}
.notable-h{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0 0 .6rem;padding:0 .05rem}
.notable-h b{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#00f0d0;font-family:monospace}
.notable-hint{font-size:.68rem;color:#7d9a97;letter-spacing:.04em;font-weight:600;opacity:.85;white-space:nowrap}
.notable-row{
  display:flex;gap:.75rem;overflow-x:auto;padding:.15rem .05rem .55rem;
  scroll-snap-type:x mandatory;scroll-padding-inline:.15rem;
  -webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;
}
.notable-row::-webkit-scrollbar{display:none}
.notable-card{
  flex:0 0 158px;width:158px;max-width:158px;scroll-snap-align:start;scroll-snap-stop:normal;
  text-decoration:none;color:#e8f4f2!important;
  border:1px solid #00f0d033;border-radius:14px;overflow:hidden;
  background:linear-gradient(165deg,#0e1619 0%,#080c0e 100%);
  display:flex;flex-direction:column;
  box-shadow:0 0 0 1px #00f0d00a,0 8px 28px #0008,0 0 22px #00f0d012;
  transition:border-color .18s,transform .18s,box-shadow .18s;
  -webkit-tap-highlight-color:transparent;
}
.notable-card:hover,.notable-card:focus-visible{
  border-color:#00f0d088;transform:translateY(-3px);
  box-shadow:0 0 0 1px #00f0d022,0 12px 32px #000a,0 0 28px #00f0d028;
  outline:none;
}
.notable-card .nc-art{
  position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:#05080a;
  border-radius:13px 13px 0 0;
}
.notable-card .nc-art::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,transparent 55%,#05080acc 100%);
  opacity:.55;
}
.notable-card .nc-art img{
  width:100%;height:100%;object-fit:cover;object-position:center;display:block;
}
.notable-card .nc-body{
  display:flex;flex-direction:column;align-items:flex-start;gap:.22rem;
  padding:.55rem .6rem .7rem;min-width:0;
}
.notable-card .nc-tag{
  display:block;font-size:.58rem;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;color:var(--red);line-height:1.2;
}
.notable-card .nc-title{
  display:block;font-size:.82rem;font-weight:800;line-height:1.25;
  color:#e8f4f2;letter-spacing:.01em;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;
}
.notable-card .nc-meta{
  display:block;font-size:.68rem;color:#7d9a97;line-height:1.3;font-weight:600;
}
.notable-card .nc-cta{
  display:inline-block;margin-top:.28rem;padding:.18rem .5rem;
  font-size:.62rem;font-weight:800;letter-spacing:.04em;
  color:#00f0d0;border:1px solid #00f0d055;border-radius:999px;
  background:#00f0d014;line-height:1.3;
}
.notable-card:hover .nc-cta,.notable-card:focus-visible .nc-cta{
  border-color:#00f0d0;background:#00f0d022;
}
@media(min-width:700px){
  .notable-hint{display:none}
  .notable-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;overflow:visible;padding:.1rem 0 .2rem}
  .notable-card{flex:none;width:auto;max-width:none}
}
.news-box{max-width:420px;margin:1rem auto .6rem;padding:1rem;border:1px solid #00f0d033;border-radius:14px;background:#00f0d00a;text-align:left}
.news-box h3{margin:0 0 .25rem;font-size:.95rem}
.news-box p{margin:0 0 .65rem;color:#7d9a97;font-size:.82rem;line-height:1.4}
.news-box form{display:flex;gap:.4rem;flex-wrap:wrap}
.news-box input[type=email]{
  flex:1;min-width:160px;min-height:44px;box-sizing:border-box;background:#000a;border:1px solid #00f0d044;
  color:#e8f4f2;border-radius:10px;padding:.65rem .75rem;font:inherit
}
.news-box .btn{min-height:44px}
.news-box .hp{position:absolute;left:-9999px}
.ost-card{min-height:44px}
.ost-go{display:inline-flex;align-items:center;min-height:44px;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--teal);color:var(--teal)!important;font-weight:800;font-size:.82rem;margin-left:auto}
.burger{min-width:44px;min-height:44px;display:grid;place-items:center}
.player button{min-width:44px;min-height:44px}
.cta .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center}
.panel-head{min-height:96px}
nav a{min-height:44px;display:flex;align-items:center}
.fnc-slot .acts .btn{min-height:44px;padding:.45rem .85rem}
@media(prefers-reduced-motion:reduce){.notable-card:hover,.social-row a:hover{transform:none}}
