/* CoalaRadioPage fidelity layer - original white-label implementation */
:root{
  --radio-page:90rem;
  --radio-stage-ink:#fdf2f1;
  --radio-stage-muted:#d0b7b3;
  --radio-on-highlight:#1a0f00;
  --radio-ease:cubic-bezier(.22,1,.36,1);
  --radio-spring:cubic-bezier(.34,1.4,.64,1);
  --radio-safe-left:env(safe-area-inset-left,0px);
  --radio-safe-right:env(safe-area-inset-right,0px);
  --radio-safe-bottom:env(safe-area-inset-bottom,0px);
}
html{background:var(--radio-bg);scrollbar-width:none}
html::-webkit-scrollbar,body::-webkit-scrollbar{display:none}
body{overflow-x:hidden;background:var(--radio-bg)}
.radio-icon-sprite{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important}
.radio-page-width{position:relative;z-index:1;width:min(100%,var(--radio-page));margin-inline:auto;padding-inline:1rem}
@media(min-width:640px){.radio-page-width{padding-inline:2rem}}
@media(min-width:1024px){.radio-page-width{padding-inline:3rem}}

/* floating top navigation */
.radio-topbar{position:sticky;top:0;z-index:80;height:0;display:flex;justify-content:center;padding:.75rem .75rem 0;pointer-events:none}
.radio-topbar-cluster{pointer-events:auto;display:flex;align-items:center;justify-content:center;max-width:calc(100vw - 1.5rem)}
.radio-topbar-logo{position:relative;z-index:3;display:grid;width:4rem;height:4rem;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:999px;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff;box-shadow:0 10px 28px -10px rgba(0,0,0,.62),0 0 0 1px rgba(255,255,255,.28);transition:transform .3s var(--radio-ease)}
.radio-topbar-logo:hover{transform:scale(1.05)}
.radio-topbar-logo img{width:100%;height:100%;object-fit:cover}
.radio-topbar-logo span{font-family:"Unbounded",system-ui,sans-serif;font-size:.8rem;font-weight:900;letter-spacing:-.05em}
.radio-nav-glass{position:relative;display:none;height:3.5rem;align-items:center;margin-left:-2rem;padding:.375rem .375rem .375rem 2.75rem;border-radius:999px;color:var(--radio-stage-ink);background:color-mix(in oklab,var(--radio-stage) 78%,transparent);box-shadow:inset 0 1px rgba(255,255,255,.15),inset 0 0 0 1px rgba(255,255,255,.08),0 24px 60px -18px rgba(0,0,0,.65);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%)}
.radio-nav-indicator{position:absolute;z-index:0;left:0;top:.375rem;height:2.75rem;width:0;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.05));box-shadow:inset 0 1px rgba(255,255,255,.28),inset 0 0 0 1px color-mix(in oklab,var(--radio-highlight) 40%,transparent),0 0 22px -6px var(--radio-highlight);transition:transform .5s cubic-bezier(.2,.8,.2,1),width .5s cubic-bezier(.2,.8,.2,1),opacity .25s;opacity:0}
.radio-nav-link{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.5rem .875rem;color:rgba(255,255,255,.84);font-size:.94rem;font-weight:800;transition:color .25s,transform .25s}
.radio-nav-link:hover,.radio-nav-link.is-active{color:#fff;background:transparent;box-shadow:none}
.radio-nav-link:hover{transform:translateY(-1px)}
.radio-nav-link svg{width:1.15rem;height:1.15rem;opacity:.64;transition:opacity .25s,color .25s,transform .25s}
.radio-nav-link:hover svg,.radio-nav-link.is-active svg{opacity:1;color:var(--radio-highlight)}
.radio-admin-shortcut{display:none;margin-left:.6rem;border-radius:999px;padding:.7rem 1rem;background:color-mix(in oklab,var(--radio-stage) 70%,transparent);color:#fff;font-size:.8rem;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);backdrop-filter:blur(18px)}
@media(min-width:640px){.radio-topbar{padding-top:1rem}.radio-topbar-logo{width:4.5rem;height:4.5rem}}
@media(min-width:1024px){.radio-nav-glass{display:flex}.radio-admin-shortcut{display:inline-flex}}

/* homepage live stage */
.radio-live-stage{position:relative;isolation:isolate;color:var(--radio-stage-ink)}
.radio-live-backdrop{position:absolute;z-index:-10;inset:0 0 auto;height:88%;overflow:hidden;background:radial-gradient(120% 90% at 50% 0,transparent 40%,var(--radio-brand-deep) 100%),linear-gradient(165deg,var(--radio-brand),var(--radio-brand-deep))}
.radio-live-backdrop:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 58%,var(--radio-brand-deep));opacity:.55}
.radio-live-studio{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 72%;mix-blend-mode:luminosity;opacity:.72;filter:blur(2px) contrast(1.08);transform:scale(1.03)}
.radio-live-blob{position:absolute;border-radius:999px;opacity:.5;filter:blur(3px);background:radial-gradient(closest-side,var(--radio-glow),transparent);animation:radio-fidelity-drift 18s ease-in-out infinite alternate}
.radio-live-blob.blob-a{left:-8rem;top:2rem;width:26rem;height:26rem}
.radio-live-blob.blob-b{right:-6rem;top:-6rem;width:22rem;height:22rem;background:radial-gradient(closest-side,var(--radio-highlight),transparent);opacity:.27;animation-delay:-6s;animation-duration:24s}
.radio-live-blob.blob-c{left:50%;bottom:-10rem;width:24rem;height:24rem;animation-delay:-10s}
@keyframes radio-fidelity-drift{to{transform:translate3d(2rem,1.5rem,0) scale(1.08);opacity:.72}}
.radio-stage-floor{position:absolute;z-index:-20;inset:auto 0 0;height:50%;opacity:.7;mask-image:linear-gradient(transparent,#000 60%);-webkit-mask-image:linear-gradient(transparent,#000 60%)}
.radio-stage-floor span{position:absolute;inset:0;background-image:radial-gradient(color-mix(in oklab,var(--radio-ink) 18%,transparent) 1px,transparent 1.4px);background-size:22px 22px;mask-image:linear-gradient(90deg,#000,transparent 22% 78%,#000);-webkit-mask-image:linear-gradient(90deg,#000,transparent 22% 78%,#000)}
.radio-live-shell{width:min(100%,var(--radio-page));margin-inline:auto;padding:6rem .75rem .5rem}
.radio-live-card{position:relative;isolation:isolate;aspect-ratio:4/5;overflow:hidden;border-radius:2rem;background:var(--radio-stage);box-shadow:0 50px 100px -40px rgba(0,0,0,.75),0 0 48px -14px var(--radio-highlight);outline:1px solid rgba(255,255,255,.1)}
.radio-cover-wall{position:absolute;inset:-25%;display:flex;flex-direction:column;justify-content:center;gap:1rem;opacity:.48;transform:rotate(-8deg);transition:opacity 1.2s}
.radio-cover-wall-row{display:flex;width:max-content;gap:1rem;animation:radio-wall 90s linear infinite}
.radio-cover-wall-row.reverse{animation-duration:110s;animation-direction:reverse}
.radio-cover-wall-row img{width:6rem;height:6rem;flex:0 0 auto;border-radius:1rem;object-fit:cover;filter:saturate(.75) contrast(1.05)}
@keyframes radio-wall{to{transform:translateX(-35%)}}
.radio-live-wash{position:absolute;inset:0;background:linear-gradient(90deg,var(--radio-brand-deep) 0%,color-mix(in oklab,var(--radio-brand-deep) 84%,transparent) 42%,color-mix(in oklab,var(--radio-brand-deep) 35%,transparent) 100%),linear-gradient(0deg,color-mix(in oklab,var(--radio-brand-deep) 86%,transparent),transparent 62%)}
.radio-live-spot{position:absolute;inset:0;opacity:0;background:radial-gradient(520px circle at 70% 40%,rgba(255,255,255,.14),transparent 45%);transition:opacity .5s}
.radio-live-card:hover .radio-live-spot{opacity:1}
.radio-live-badge{position:absolute;z-index:12;left:1rem;top:1rem;display:flex;align-items:center;height:2.5rem;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.28);box-shadow:inset 0 1px rgba(255,255,255,.08),0 10px 24px -14px rgba(0,0,0,.6)}
.radio-live-badge span{display:inline-flex;height:2rem;align-items:center;gap:.5rem;margin-left:.25rem;border-radius:999px;padding:0 .85rem;background:linear-gradient(#ef4444,#dc2626);font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;box-shadow:inset 0 1px rgba(255,255,255,.28),0 6px 16px -6px rgba(220,38,38,.9)}
.radio-live-badge span i{width:.38rem;height:.38rem;border-radius:999px;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.14);animation:radio-pulse 1.6s ease-in-out infinite}
.radio-live-badge b{max-width:0;opacity:0;padding:0;color:rgba(255,255,255,.78);font-size:.72rem;white-space:nowrap;transition:max-width .5s var(--radio-ease),opacity .35s,padding .5s}
.radio-live-card:hover .radio-live-badge b{max-width:9rem;opacity:1;padding:0 .9rem 0 .6rem}
@keyframes radio-pulse{50%{opacity:.45;transform:scale(.75)}}
.radio-stage-record{position:absolute;left:50%;top:16%;width:40%;aspect-ratio:1;transform:translateX(-70%);transition:transform 1.1s var(--radio-ease)}
.radio-stage-vinyl{position:absolute;inset:3%;border-radius:999px;transform:translateX(14%);transition:transform 1.1s var(--radio-ease);box-shadow:0 20px 34px -10px rgba(0,0,0,.6)}
.radio-vinyl-grooves{position:absolute;inset:0;border-radius:999px;background:repeating-radial-gradient(circle,#15110f 0 3px,#241d1a 4px 7px,#171210 8px 10px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.radio-vinyl-grooves:after{content:"";position:absolute;inset:29%;border-radius:999px;background:linear-gradient(145deg,var(--radio-highlight),color-mix(in oklab,var(--radio-highlight) 70%,var(--radio-brand)));box-shadow:0 0 0 .45rem #15110f}
.radio-vinyl-label{position:absolute;z-index:2;inset:31%;display:grid;place-items:center;overflow:hidden;border-radius:999px;color:#1a0f00}
.radio-vinyl-label img{width:100%;height:100%;object-fit:cover}
.radio-vinyl-label svg{width:28%;height:28%;position:relative;z-index:3}
.radio-stage-sleeve{position:absolute;inset:0;overflow:hidden;border-radius:1.5rem;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));box-shadow:0 30px 60px -20px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.15);transition:transform 1.1s var(--radio-ease)}
.radio-stage-sleeve img{width:100%;height:100%;object-fit:cover}
.radio-stage-sleeve-empty{display:grid;width:100%;height:100%;place-items:center;color:rgba(255,255,255,.25)}
.radio-stage-sleeve-empty svg{width:30%;height:30%}
body[data-live-state="playing"] .radio-stage-vinyl,body[data-live-state="connecting"] .radio-stage-vinyl{transform:translateX(46%)}
.radio-stage-info{position:absolute;z-index:10;inset:auto 1.25rem 4rem;color:#fff;transition:opacity .3s,transform .6s var(--radio-ease)}
.radio-stage-info h1{margin:.5rem 0 0;max-width:48rem;font-size:clamp(1.75rem,7.5vw,3.5rem);font-weight:900;line-height:.95;letter-spacing:-.045em;text-wrap:balance}
.radio-stage-description{display:none;margin-top:1rem;max-width:34rem;color:rgba(255,255,255,.72);font-size:1rem;line-height:1.65;text-wrap:pretty}
.radio-stage-host{display:inline-flex;max-width:100%;align-items:center;gap:.75rem;margin-top:1.15rem}
.radio-host-photo{display:grid;width:2.55rem;height:2.55rem;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:999px;padding:3px;background:linear-gradient(145deg,var(--radio-highlight),rgba(255,255,255,.3));box-shadow:0 8px 20px -10px rgba(0,0,0,.7)}
.radio-host-photo img,.radio-host-photo b{width:100%;height:100%;border-radius:999px;object-fit:cover}
.radio-host-photo b{display:grid;place-items:center;background:var(--radio-stage);font-size:.82rem}
.radio-stage-host>span:last-child{min-width:0;display:grid;line-height:1.1}
.radio-stage-host small{color:rgba(255,255,255,.56);font-size:.66rem;text-transform:uppercase;letter-spacing:.14em}
.radio-stage-host strong{overflow:hidden;margin-top:.2rem;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}
.radio-live-playerbar{position:relative;z-index:20;display:flex;width:calc(100% - 1.5rem);max-width:50rem;align-items:center;gap:.85rem;margin:-2.5rem auto 0;padding:.375rem 1rem .375rem .375rem;border-radius:999px;background:color-mix(in oklab,var(--radio-stage) 82%,transparent);color:var(--radio-stage-ink);box-shadow:inset 0 1px rgba(255,255,255,.16),inset 0 0 0 1px rgba(255,255,255,.09),0 24px 60px -18px rgba(0,0,0,.7);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);transition:transform .5s var(--radio-ease),max-width .7s var(--radio-ease)}
.radio-live-playerbar:hover{transform:translateY(-2px) scale(1.01)}
.radio-live-play{position:relative;display:grid;width:4rem;height:4rem;flex:0 0 auto;place-items:center;border:0;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:0 10px 24px -10px rgba(0,0,0,.7),inset 0 1px rgba(255,255,255,.35);cursor:pointer;transition:transform .25s}
.radio-live-play:hover{transform:scale(1.05)}
.radio-live-play svg{position:absolute;width:1.8rem;height:1.8rem}
.radio-live-play .pause{display:none}
body[data-live-state="playing"] .radio-live-play .play{display:none}
body[data-live-state="playing"] .radio-live-play .pause{display:block}
.radio-live-track-cover{display:grid;width:3rem;height:3rem;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:.8rem;background:rgba(255,255,255,.08);box-shadow:0 8px 18px -8px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.15)}
.radio-live-track-cover img{width:100%;height:100%;object-fit:cover}
.radio-live-track-cover>span{display:grid;width:100%;height:100%;place-items:center}
.radio-live-track-cover svg{width:1.2rem;height:1.2rem}
.radio-live-track-copy{min-width:0;flex:1;line-height:1.08}
.radio-live-track-copy small{display:block;color:rgba(255,255,255,.55);font-size:.61rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.radio-live-track-copy b,.radio-live-track-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.radio-live-track-copy b{margin-top:.18rem;font-size:.88rem}.radio-live-track-copy em{margin-top:.14rem;color:rgba(255,255,255,.6);font-size:.74rem;font-style:normal}
.radio-live-votes{display:none;gap:.25rem}.radio-live-votes button,.radio-live-full{display:grid;width:2.45rem;height:2.45rem;place-items:center;border:0;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.76);cursor:pointer;transition:.25s}.radio-live-votes button:hover,.radio-live-full:hover{background:rgba(255,255,255,.14);color:#fff;transform:scale(1.05)}.radio-live-votes svg,.radio-live-full svg{width:1.1rem;height:1.1rem}.radio-live-full{display:none}
@media(min-width:640px){
  .radio-live-backdrop{height:82%}.radio-live-shell{padding:7rem 1.5rem .5rem}.radio-live-card{aspect-ratio:16/10}.radio-cover-wall-row{gap:1.25rem}.radio-cover-wall-row img{width:8rem;height:8rem;border-radius:1rem}
  .radio-stage-record{left:auto;right:10%;top:45%;width:auto;height:72%;transform:translateY(-50%)}
  body[data-live-state="playing"] .radio-stage-record,body[data-live-state="connecting"] .radio-stage-record{transform:translate(-20%,-50%)}
  .radio-stage-info{inset:0 auto 0 0;display:flex;width:56%;flex-direction:column;align-items:flex-start;justify-content:center;padding:5rem 0 2rem 2rem}.radio-stage-info h1{font-size:clamp(2.3rem,4.4vw,4.25rem)}.radio-stage-description{display:block;max-height:3.2em;overflow:hidden;mask-image:linear-gradient(#000 55%,transparent);-webkit-mask-image:linear-gradient(#000 55%,transparent);transition:max-height .6s var(--radio-ease),mask-image .4s}.radio-stage-info:hover .radio-stage-description{max-height:12em;mask-image:none;-webkit-mask-image:none}.radio-live-badge{left:1.5rem;top:1.5rem}.radio-live-votes{display:flex}.radio-live-full{display:grid}.radio-live-playerbar{padding-right:2rem}
}
@media(min-width:1024px){.radio-live-backdrop{height:77%}.radio-live-shell{padding:7.75rem 2.5rem .5rem}.radio-live-card{aspect-ratio:auto;height:min(36rem,64vh);min-height:31rem;border-radius:2.75rem}.radio-stage-info{padding-left:3rem;padding-bottom:3rem}.radio-live-playerbar{margin-top:-2.75rem;max-width:53.5rem}}

/* ambient home canvas and sections */
.radio-home-ambient{position:relative;isolation:isolate}
.radio-home-ambient:before{content:"";position:absolute;z-index:-2;inset:0;background-image:radial-gradient(color-mix(in oklab,var(--radio-ink) 12%,transparent) 1px,transparent 1.4px);background-size:22px 22px;opacity:.28;mask-image:linear-gradient(90deg,#000,transparent 20% 80%,#000);-webkit-mask-image:linear-gradient(90deg,#000,transparent 20% 80%,#000)}
.radio-ambient-rings{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none}.radio-ambient-rings i{position:absolute;width:45rem;height:45rem;border:1px solid color-mix(in oklab,var(--radio-brand) 20%,transparent);border-radius:999px;box-shadow:0 0 0 7rem transparent,0 0 0 7.1rem color-mix(in oklab,var(--radio-brand) 10%,transparent),0 0 0 14rem transparent,0 0 0 14.1rem color-mix(in oklab,var(--radio-brand) 7%,transparent)}.radio-ambient-rings i:first-child{right:-27rem;top:5rem}.radio-ambient-rings i:last-child{left:-29rem;top:52rem}
.radio-section{width:100%;max-width:none;margin:0;padding:4rem 0 0}
.radio-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}
.radio-section-head h2{margin:.28rem 0 0;font-size:clamp(1.65rem,2.4vw,2.6rem);font-weight:900;line-height:1.05;letter-spacing:-.035em}
.radio-eyebrow{font-size:.64rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.radio-more{display:inline-flex;align-items:center;gap:.45rem;flex:0 0 auto;border-radius:999px;padding:.68rem .85rem;color:var(--radio-accent);font-size:.82rem;font-weight:850;transition:.25s}
.radio-more svg{width:1rem;height:1rem}.radio-more:hover{background:color-mix(in oklab,var(--radio-accent) 8%,transparent);text-decoration:none;transform:translateY(-1px)}
.radio-empty{width:100%;border:1px dashed var(--radio-line);border-radius:1.5rem;padding:2rem;color:var(--radio-muted);text-align:center;background:color-mix(in oklab,var(--radio-surface) 60%,transparent)}
.radio-reveal{animation:radio-reveal .65s var(--radio-ease) both}@keyframes radio-reveal{from{opacity:.55;transform:translateY(10px)}to{opacity:1;transform:none}}

/* schedule rail */
.radio-rail-now{height:1.2rem;margin:-.55rem 0 .1rem .25rem;color:var(--radio-accent);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.radio-schedule-rail{display:flex;gap:1rem;margin-inline:-1rem;padding:.25rem 1rem 2.5rem;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;mask-image:linear-gradient(90deg,transparent,#000 1.25rem calc(100% - 4rem),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 1.25rem calc(100% - 4rem),transparent)}
.radio-schedule-rail::-webkit-scrollbar{display:none}.radio-schedule-slot{position:relative;width:19rem;flex:0 0 auto;scroll-snap-align:start}.radio-slot-time{position:relative;height:1.4rem;margin:0 .65rem .5rem;padding-left:.2rem;color:var(--radio-muted);font-size:.7rem}.radio-slot-time:before{content:"";position:absolute;left:0;bottom:-.5rem;width:100%;height:1px;background:var(--radio-line)}.radio-slot-time b{color:var(--radio-ink);font-weight:900}.radio-slot-time span{margin-left:.4rem}.radio-schedule-slot article{position:relative;display:flex;min-height:5.6rem;align-items:center;gap:.9rem;border-radius:1.2rem;padding:.75rem;transition:.3s}.radio-schedule-slot article:hover{background:rgba(255,255,255,.58);transform:translateY(-2px)}.radio-schedule-slot .thumb{display:grid;width:4rem;height:4rem;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:1rem;background:var(--radio-surface);color:var(--radio-accent);box-shadow:0 10px 24px -18px rgba(0,0,0,.55),0 0 0 1px var(--radio-line);transition:transform .45s var(--radio-ease)}.radio-schedule-slot article:hover .thumb{transform:translateY(-4px) scale(1.02)}.radio-schedule-slot .thumb img{width:100%;height:100%;object-fit:cover}.radio-schedule-slot .thumb svg{width:1.2rem;height:1.2rem}.radio-schedule-slot .copy{min-width:0;flex:1}.radio-schedule-slot .copy b,.radio-schedule-slot .copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-schedule-slot .copy b{font-size:.92rem}.radio-schedule-slot .copy small{margin-top:.25rem;color:var(--radio-muted);font-size:.75rem}.radio-schedule-slot em{position:absolute;right:.75rem;top:.55rem;border-radius:999px;padding:.25rem .48rem;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:.58rem;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 6px 16px -10px var(--radio-highlight)}.radio-schedule-slot.is-live article{background:color-mix(in oklab,var(--radio-highlight) 7%,var(--radio-surface));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-highlight) 55%,transparent)}
@media(min-width:640px){.radio-schedule-rail{margin-inline:-1.5rem;padding-inline:1.5rem}.radio-schedule-slot{width:21rem}}

/* recently played */
.radio-played-rail{--radio-across:6;display:flex;gap:1.5rem;margin-inline:-1rem;padding:.25rem 1rem 2.5rem;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}.radio-played-rail::-webkit-scrollbar{display:none}.radio-played-item{width:10rem;min-width:10rem;scroll-snap-align:start}.radio-liquid-cover{position:relative;display:block;aspect-ratio:1;padding:5px;border-radius:1.35rem;background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(255,255,255,.16));box-shadow:inset 0 1px 1px rgba(255,255,255,.95),inset 0 -1px 1px rgba(0,0,0,.08),0 0 0 1px rgba(255,255,255,.4),0 12px 26px -16px rgba(0,0,0,.4);backdrop-filter:blur(10px) saturate(1.6);transition:transform .45s var(--radio-ease)}.radio-played-item:hover .radio-liquid-cover{transform:translateY(-5px) scale(1.015)}.radio-liquid-cover:after{content:"";position:absolute;inset:5px;border-radius:1rem;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.42),rgba(255,255,255,.08) 34%,transparent 52%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}.radio-liquid-cover>img,.radio-liquid-cover>span{width:100%;height:100%;border-radius:1rem;object-fit:cover}.radio-liquid-cover>span{display:grid;place-items:center;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff}.radio-liquid-cover>span svg{width:2rem;height:2rem}.radio-liquid-cover .live-dot{position:absolute;z-index:3;left:.65rem;top:.65rem;border-radius:999px;padding:.3rem .52rem;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:.58rem;font-style:normal;font-weight:900;text-transform:uppercase;box-shadow:0 7px 16px -8px rgba(0,0,0,.7)}.radio-played-item>small{display:block;margin-top:.85rem;color:var(--radio-muted);font-size:.68rem}.radio-played-item>b{display:block;margin-top:.22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.radio-played-item>span{display:block;margin-top:.15rem;overflow:hidden;color:var(--radio-muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}
@media(min-width:640px){.radio-played-rail{margin-inline:-2rem;padding-inline:2rem}.radio-played-item{width:calc((100% - (var(--radio-across) - 1)*1.5rem)/var(--radio-across));min-width:9rem}}

/* promotion ticket rail */
.radio-promo-rail{display:flex;gap:1.25rem;margin-inline:-1rem;padding:.25rem 1rem 1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.radio-promo-rail::-webkit-scrollbar{display:none}.radio-promo-slide{width:82%;flex:0 0 auto;scroll-snap-align:center}.radio-ticket{--stub:3.25rem;position:relative;display:grid;height:100%;overflow:hidden;border-radius:1.45rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line),0 22px 40px -28px rgba(0,0,0,.5);transition:transform .5s var(--radio-ease),box-shadow .4s}.radio-ticket:hover{transform:translateY(-6px);box-shadow:0 0 0 1px color-mix(in oklab,var(--radio-accent) 28%,var(--radio-line)),0 30px 48px -28px rgba(0,0,0,.5)}.radio-ticket:before,.radio-ticket:after{content:"";position:absolute;z-index:5;right:calc(var(--stub) - .7rem);width:1.4rem;height:1.4rem;border-radius:999px;background:var(--radio-bg);box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-ticket:before{top:-.7rem}.radio-ticket:after{bottom:-.7rem}.radio-ticket-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep))}.radio-ticket-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--radio-ease)}.radio-ticket:hover .radio-ticket-media img{transform:scale(1.04)}.radio-ticket-media>span{display:grid;width:100%;height:100%;place-items:center;color:rgba(255,255,255,.55)}.radio-ticket-media svg{width:3rem;height:3rem}.radio-ticket-copy{position:relative;min-height:10.5rem;padding:1.1rem calc(var(--stub) + .7rem) 1.15rem 1.15rem}.radio-ticket-copy:after{content:"";position:absolute;top:1rem;right:var(--stub);bottom:1rem;border-left:1px dashed var(--radio-line)}.radio-ticket-copy small{color:var(--radio-accent);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.radio-ticket-copy h3{margin:.35rem 0 0;font-size:1.05rem;line-height:1.14}.radio-ticket-copy p{margin:.48rem 0 0;color:var(--radio-muted);font-size:.8rem;line-height:1.35}.radio-ticket-copy>span{display:inline-flex;align-items:center;gap:.4rem;margin-top:.9rem;color:var(--radio-accent);font-size:.78rem;font-weight:900}.radio-ticket-copy>span svg{width:.9rem;height:.9rem}
@media(min-width:640px){.radio-promo-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin:0;padding:.25rem 0 1rem;overflow:visible}.radio-promo-slide{width:auto}.radio-ticket{--stub:4.2rem}}
@media(min-width:1280px){.radio-promo-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.75rem}}

/* ranking */
.radio-ranking-stage{position:relative;isolation:isolate;display:grid;overflow:hidden;border-radius:1.75rem;background:radial-gradient(55% 75% at 88% 8%,color-mix(in oklab,var(--radio-glow) 42%,transparent),transparent 72%),radial-gradient(45% 60% at 0 100%,color-mix(in oklab,var(--radio-glow) 20%,transparent),transparent 70%),var(--radio-stage);color:var(--radio-stage-ink);box-shadow:0 40px 80px -44px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.1)}.radio-rank-top{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.radio-rank-top-cover{position:relative;width:min(14rem,64vw);aspect-ratio:1;align-self:center;border:0;border-radius:1.35rem;padding:5px;background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,.12));box-shadow:inset 0 1px rgba(255,255,255,.8),0 18px 36px -20px rgba(0,0,0,.7);cursor:pointer;transition:transform .45s var(--radio-ease),rotate .45s var(--radio-ease)}.radio-rank-top:hover .radio-rank-top-cover{transform:scale(1.05);rotate:-1.5deg}.radio-rank-top-cover>img,.radio-rank-top-cover>span{width:100%;height:100%;border-radius:1rem;object-fit:cover}.radio-rank-top-cover>span{display:grid;place-items:center;background:rgba(255,255,255,.08)}.radio-rank-top-cover>span svg{width:2.5rem;height:2.5rem}.radio-rank-top-cover>i{position:absolute;right:.8rem;bottom:.8rem;display:grid;width:2.8rem;height:2.8rem;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:0 10px 24px -10px #000}.radio-rank-top-cover>i svg{width:1.2rem;height:1.2rem}.radio-rank-top>div{min-width:0}.radio-rank-top small{color:var(--radio-highlight);font-size:.65rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.radio-rank-top h3{margin:.45rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:900;line-height:1.02}.radio-rank-top p{margin:.45rem 0 0;color:var(--radio-stage-muted)}.radio-preview-pill{margin-top:1rem;border:0;border-radius:999px;padding:.65rem 1rem;background:rgba(255,255,255,.1);color:#fff;font-size:.78rem;font-weight:900;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);cursor:pointer}.radio-rank-list{display:grid;align-content:center;gap:.55rem;border-top:1px solid rgba(255,255,255,.1);padding:1rem}.radio-rank-list li{display:grid;grid-template-columns:2rem 3rem 1fr 2.5rem;align-items:center;gap:.75rem;min-width:0;border-radius:1rem;padding:.45rem;transition:.3s}.radio-rank-list li:hover{background:rgba(255,255,255,.07);transform:translateY(-1px)}.radio-rank-list li>strong{font-family:"Unbounded",system-ui,sans-serif;color:rgba(255,255,255,.55);text-align:center}.radio-rank-list .rank-cover{display:grid;width:3rem;height:3rem;place-items:center;overflow:hidden;border-radius:.78rem;background:rgba(255,255,255,.08)}.radio-rank-list .rank-cover img{width:100%;height:100%;object-fit:cover}.radio-rank-list .rank-cover svg{width:1.1rem;height:1.1rem}.radio-rank-list .copy{min-width:0;line-height:1.1}.radio-rank-list .copy b,.radio-rank-list .copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-rank-list .copy b{font-size:.82rem}.radio-rank-list .copy small{margin-top:.25rem;color:var(--radio-stage-muted);font-size:.7rem}.radio-rank-list li>button{display:grid;width:2.35rem;height:2.35rem;place-items:center;border:0;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.radio-rank-list li>button svg{width:.9rem;height:.9rem}
@media(min-width:640px){.radio-rank-top{flex-direction:row;align-items:center;padding:2rem}.radio-rank-top-cover{width:12.5rem;flex:0 0 auto}}
@media(min-width:1024px){.radio-ranking-stage{grid-template-columns:1fr 1fr}.radio-rank-list{border-top:0;border-left:1px solid rgba(255,255,255,.1);padding:1.5rem}.radio-rank-top{padding:2rem}}

/* news */
.radio-news-layout{display:grid;gap:2.25rem}.radio-news-feature a{display:grid;gap:1rem}.radio-news-feature-media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:1.4rem;background:var(--radio-stage);box-shadow:0 24px 44px -30px rgba(0,0,0,.7),0 0 0 1px color-mix(in oklab,var(--radio-ink) 6%,transparent)}.radio-news-feature-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--radio-ease)}.radio-news-feature a:hover .radio-news-feature-media img{transform:scale(1.035)}.radio-news-feature-media span{position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.22))}.radio-news-feature .copy small{color:var(--radio-accent);font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.radio-news-feature .copy h3{margin:.45rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:clamp(1.35rem,2.4vw,2.2rem);font-weight:900;line-height:1.08}.radio-news-feature .copy p{margin:.8rem 0 0;color:var(--radio-muted);line-height:1.55}.radio-news-feature .copy>span{display:block;margin-top:.8rem;color:var(--radio-muted);font-size:.74rem}.radio-news-recent{display:flex;flex-direction:column;border-top:1px solid var(--radio-line);padding-top:1.25rem}.radio-news-recent>h3{margin:0 0 .55rem;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--radio-muted)}.radio-news-row{display:grid;grid-template-columns:4.25rem 1fr 1.4rem;align-items:center;gap:.9rem;padding:.75rem .25rem;border-radius:1rem;transition:background .25s,transform .25s}.radio-news-row+.radio-news-row{border-top:1px solid var(--radio-line)}.radio-news-row:hover{background:rgba(255,255,255,.62);transform:translateX(2px)}.radio-news-row img{width:4.25rem;height:3.4rem;border-radius:.8rem;object-fit:cover}.radio-news-row div{min-width:0}.radio-news-row small,.radio-news-row b{display:block}.radio-news-row small{color:var(--radio-muted);font-size:.65rem}.radio-news-row b{margin-top:.18rem;font-size:.83rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.radio-news-row>svg{width:1rem;height:1rem;color:var(--radio-muted)}
@media(min-width:1024px){.radio-news-layout{grid-template-columns:7fr 5fr;gap:3rem}.radio-news-recent{border-top:0;border-left:1px solid var(--radio-line);padding:0 0 0 3rem}}

/* video area */
.radio-video-stage{position:relative;isolation:isolate;display:grid;overflow:hidden;border-radius:1.75rem;background:radial-gradient(55% 75% at 88% 8%,color-mix(in oklab,var(--radio-glow) 42%,transparent),transparent 72%),var(--radio-stage);color:var(--radio-stage-ink);box-shadow:0 40px 80px -44px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.1)}.radio-video-lead{display:grid;gap:1.25rem;padding:1.25rem}.radio-video-screen{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:1.4rem;padding:6px;background:linear-gradient(145deg,rgba(255,255,255,.55),rgba(255,255,255,.12));box-shadow:0 24px 44px -28px rgba(0,0,0,.65)}.radio-video-screen img{width:100%;height:100%;border-radius:1rem;object-fit:cover;transition:transform .9s var(--radio-ease)}.radio-video-veil{position:absolute;inset:6px;border-radius:1rem;background:linear-gradient(transparent 45%,rgba(0,0,0,.5));opacity:.6;transition:opacity .4s}.radio-video-screen>i{position:absolute;left:50%;top:50%;display:grid;width:4rem;height:4rem;place-items:center;border-radius:999px;background:color-mix(in oklab,var(--radio-stage) 72%,transparent);color:#fff;opacity:.2;transform:translate(-50%,-50%) scale(.82);box-shadow:inset 0 1px rgba(255,255,255,.3),0 16px 32px -14px rgba(0,0,0,.7);transition:.45s var(--radio-ease);backdrop-filter:blur(14px)}.radio-video-screen>i svg{width:1.5rem;height:1.5rem}.radio-video-lead:hover .radio-video-screen img{transform:scale(1.05)}.radio-video-lead:hover .radio-video-screen>i{opacity:1;transform:translate(-50%,-50%) scale(1)}.radio-video-lead>div:last-child small{color:var(--radio-highlight);font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.radio-video-lead h3{margin:.42rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:1.25rem;line-height:1.1}.radio-video-lead p{margin:.6rem 0 0;color:var(--radio-stage-muted);font-size:.8rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.radio-video-lead>div:last-child>span{display:block;margin-top:.55rem;color:var(--radio-stage-muted);font-size:.7rem}.radio-video-list{display:grid;align-content:center;gap:.55rem;border-top:1px solid rgba(255,255,255,.1);padding:1rem}.radio-video-list li a{display:grid;grid-template-columns:5.25rem 1fr 2.5rem;align-items:center;gap:.8rem;border-radius:1rem;padding:.45rem;transition:.3s}.radio-video-list li a:hover{background:rgba(255,255,255,.07);transform:translateY(-1px)}.radio-video-list img{width:5.25rem;height:3.25rem;border-radius:.7rem;object-fit:cover}.radio-video-list span{min-width:0}.radio-video-list b,.radio-video-list small{display:block}.radio-video-list b{font-size:.78rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.radio-video-list small{margin-top:.25rem;color:var(--radio-stage-muted);font-size:.66rem}.radio-video-list a>svg{width:1rem;height:1rem;justify-self:center}.radio-subsection-title{margin:2rem 0 1rem;font-family:"Unbounded",system-ui,sans-serif;font-size:1rem;font-weight:900}.radio-shorts-rail{display:flex;gap:1.25rem;overflow-x:auto;padding:.25rem 0 1rem;scrollbar-width:none}.radio-shorts-rail::-webkit-scrollbar{display:none}.radio-shorts-rail a{width:10.5rem;flex:0 0 auto}.radio-shorts-rail a>span{position:relative;display:block;aspect-ratio:9/16;overflow:hidden;border-radius:1.25rem;background:var(--radio-stage);box-shadow:0 18px 34px -26px rgba(0,0,0,.65)}.radio-shorts-rail img{width:100%;height:100%;object-fit:cover}.radio-shorts-rail i{position:absolute;right:.7rem;bottom:.7rem;display:grid;width:2.4rem;height:2.4rem;place-items:center;border-radius:999px;background:rgba(0,0,0,.58);color:#fff;backdrop-filter:blur(10px)}.radio-shorts-rail i svg{width:1rem;height:1rem}.radio-shorts-rail b{display:block;margin-top:.65rem;font-size:.76rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media(min-width:1024px){.radio-video-stage{grid-template-columns:8fr 5fr}.radio-video-lead{padding:2rem}.radio-video-list{border-top:0;border-left:1px solid rgba(255,255,255,.1);padding:1.5rem}.radio-shorts-rail a{width:calc((100% - 5*1.25rem)/6);min-width:9.5rem}}

/* commercial */
.radio-commercial-wrap{padding-bottom:0}.radio-commercial-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:2rem;padding:1.5rem;background:linear-gradient(160deg,var(--radio-brand),var(--radio-brand-deep) 72%);color:var(--radio-stage-ink);box-shadow:0 50px 100px -50px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.1)}.radio-commercial-hero:after{content:"";position:absolute;z-index:-1;inset:0;opacity:.15;background-image:radial-gradient(rgba(255,255,255,.7) .8px,transparent .8px);background-size:18px 18px;mask-image:linear-gradient(90deg,transparent,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000)}.radio-commercial-copy{max-width:48rem}.radio-commercial-copy h2{margin:.65rem 0 0;font-size:clamp(1.8rem,3.4vw,3.3rem);font-weight:900;line-height:1.02}.radio-commercial-copy p{margin:1rem 0 0;max-width:42rem;color:var(--radio-stage-muted);line-height:1.6}.radio-commercial-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem}.radio-audience-panel{margin-top:2rem;border-top:1px solid rgba(255,255,255,.15);padding-top:1.2rem}.radio-audience-panel>small{font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--radio-stage-muted)}.radio-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:.75rem}.radio-audience-grid>div{border-radius:1rem;padding:.85rem;background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.radio-audience-grid strong,.radio-audience-grid span{display:block}.radio-audience-grid strong{font-family:"Unbounded",system-ui,sans-serif;font-size:clamp(1rem,2vw,1.55rem)}.radio-audience-grid span{margin-top:.25rem;color:var(--radio-stage-muted);font-size:.66rem}.radio-contact-panel{display:grid;overflow:hidden;margin-top:1rem;border-radius:2rem;background:color-mix(in oklab,var(--radio-stage) 86%,black);color:var(--radio-stage-ink);box-shadow:0 36px 70px -46px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.08)}.radio-contact-intro{position:relative;isolation:isolate;padding:1.5rem;background:linear-gradient(160deg,var(--radio-brand),var(--radio-brand-deep))}.radio-contact-intro:after{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(100% 80% at 100% 0,color-mix(in oklab,var(--radio-glow) 42%,transparent),transparent 70%)}.radio-contact-intro h3{margin:.6rem 0 0;font-size:1.55rem;font-weight:900;line-height:1.08}.radio-contact-intro ol{display:grid;gap:.8rem;margin-top:1.5rem}.radio-contact-intro li{display:flex;align-items:flex-start;gap:.75rem}.radio-contact-intro li>strong{display:grid;width:2rem;height:2rem;flex:0 0 auto;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);font-family:"Unbounded",system-ui,sans-serif;font-size:.72rem}.radio-contact-intro li span{display:grid}.radio-contact-intro li b{font-size:.8rem}.radio-contact-intro li small{margin-top:.12rem;color:var(--radio-stage-muted);font-size:.68rem}.radio-contact-form{padding:1.5rem}.radio-contact-form>h3{font-family:"Unbounded",system-ui,sans-serif;font-size:1.2rem;font-weight:900}.radio-contact-form>p{margin:.25rem 0 1rem;color:var(--radio-stage-muted);font-size:.78rem}.radio-contact-form form{display:grid;gap:1rem}.radio-form-grid{display:grid;gap:.8rem}.radio-contact-form label,.radio-contact-form legend{display:grid;gap:.35rem;color:var(--radio-stage-muted);font-size:.72rem;font-weight:700}.radio-contact-form input:not([type=checkbox]),.radio-contact-form textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:.9rem;padding:.78rem .9rem;background:rgba(0,0,0,.2);color:#fff;outline:0}.radio-contact-form input:focus,.radio-contact-form textarea:focus{border-color:color-mix(in oklab,var(--radio-highlight) 70%,transparent);box-shadow:0 0 0 3px color-mix(in oklab,var(--radio-highlight) 14%,transparent)}.radio-contact-form .radio-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.radio-contact-form .radio-check-grid label{display:flex;align-items:center;gap:.45rem;border-radius:.8rem;padding:.65rem;background:rgba(255,255,255,.06);cursor:pointer}.radio-contact-form label.checkbox{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:.55rem}.radio-contact-form input[type=checkbox]{margin-top:.1rem;border-color:rgba(255,255,255,.25);background:rgba(0,0,0,.2);color:var(--radio-highlight)}.radio-form-errors{margin:.6rem 0;border-radius:.8rem;padding:.65rem .8rem;background:rgba(239,68,68,.13);color:#fecaca;font-size:.75rem}.radio-contact-form .radio-submit{justify-self:start}
@media(min-width:640px){.radio-commercial-hero{padding:2.5rem}.radio-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-contact-intro,.radio-contact-form{padding:2rem}}
@media(min-width:1024px){.radio-commercial-hero{padding:3rem;border-radius:2.5rem}.radio-contact-panel{grid-template-columns:21rem 1fr}.radio-contact-intro{padding:2rem}.radio-contact-form{padding:2rem 2.5rem}}

/* reusable glass buttons */
.radio-glass-button{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;border:0;border-radius:999px;padding:.72rem 1.1rem;background:color-mix(in oklab,var(--radio-stage) 68%,transparent);color:var(--radio-stage-ink);font-size:.8rem;font-weight:900;box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 0 0 1px rgba(255,255,255,.1),0 14px 30px -16px rgba(0,0,0,.6);backdrop-filter:blur(18px);transition:.3s;cursor:pointer}.radio-glass-button:hover{transform:translateY(-2px);background:color-mix(in oklab,var(--radio-stage) 84%,transparent)}.radio-glass-accent{background:linear-gradient(180deg,rgba(255,255,255,.28),transparent 55%),var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:inset 0 1px rgba(255,255,255,.55),0 14px 32px -12px var(--radio-highlight)}.radio-glass-accent:hover{background:linear-gradient(180deg,rgba(255,255,255,.34),transparent 55%),var(--radio-highlight)}

/* persistent PiP player */
.radio-player{--player-side:.75rem;--player-bottom:4.75rem;position:fixed;z-index:70;right:var(--player-side);bottom:calc(var(--player-bottom) + var(--radio-safe-bottom));width:min(23rem,calc(100vw - 1.5rem));overflow:hidden;border-radius:1.25rem;background:color-mix(in oklab,var(--radio-brand) 55%,var(--radio-brand-deep));color:var(--radio-stage-ink);box-shadow:0 40px 90px -30px rgba(0,0,0,.7),0 14px 30px -16px rgba(0,0,0,.45),0 0 44px -18px var(--radio-highlight),inset 0 1px rgba(255,255,255,.18);touch-action:none;transition:opacity .35s,transform .6s var(--radio-spring),box-shadow .5s,visibility 0s linear 0s,width .55s var(--radio-ease),height .55s var(--radio-ease)}
body[data-hero-visible="true"] .radio-player{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(1.25rem) scale(.96);transition:opacity .35s,transform .6s var(--radio-spring),visibility 0s linear .6s}
body[data-hero-visible="false"] .radio-player{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.radio-player-field{position:absolute;inset:0;overflow:hidden;pointer-events:none}.radio-player-field img{width:100%;height:100%;object-fit:cover;object-position:right center;mix-blend-mode:luminosity;opacity:.28;filter:brightness(.4)}.radio-player-field:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in oklab,var(--radio-brand-deep) 90%,transparent) 15%,color-mix(in oklab,var(--radio-brand-deep) 55%,transparent) 65%,transparent),linear-gradient(0deg,var(--radio-brand-deep),transparent 58%)}
.radio-player-body{position:relative;z-index:2;padding:.9rem}.radio-player-main{display:flex;align-items:center;gap:.8rem}.radio-player-art{position:relative;width:4rem;height:4rem;flex:0 0 auto;overflow:visible}.radio-player-art>img,.radio-player-art-fallback{position:absolute;z-index:2;left:0;top:0;width:3.45rem;height:3.45rem;border-radius:.9rem;object-fit:cover;box-shadow:0 10px 20px -10px rgba(0,0,0,.8),0 0 0 1px rgba(255,255,255,.15)}.radio-player-art-fallback{display:grid;place-items:center;background:var(--radio-stage);color:rgba(255,255,255,.7)}.radio-player-art-fallback svg{width:1.3rem;height:1.3rem}.radio-player-vinyl{position:absolute;z-index:1;left:1.55rem;top:.2rem;width:3.1rem;height:3.1rem;border-radius:999px;background:repeating-radial-gradient(circle,#15110f 0 2px,#28201d 3px 5px);box-shadow:0 8px 16px -6px rgba(0,0,0,.7);transition:transform .8s var(--radio-ease)}.radio-player[data-state="playing"] .radio-player-vinyl,.radio-player[data-state="connecting"] .radio-player-vinyl{transform:translateX(34%)}.radio-player-copy{min-width:0;flex:1;line-height:1.08}.radio-player-kicker{display:block;color:var(--radio-highlight);font-size:.6rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.radio-player-copy strong,.radio-player-copy>span:last-child{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-player-copy strong{margin-top:.22rem;font-size:.9rem}.radio-player-copy>span:last-child{margin-top:.18rem;color:var(--radio-stage-muted);font-size:.72rem}.radio-player-actions{display:flex;align-items:center;gap:.35rem;margin-top:.85rem}.radio-player-primary{position:relative;display:grid;width:2.85rem;height:2.85rem;flex:0 0 auto;place-items:center;border:0;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:0 10px 22px -10px rgba(0,0,0,.6),inset 0 1px rgba(255,255,255,.45);cursor:pointer}.radio-player-primary svg{position:absolute;width:1.25rem;height:1.25rem}.radio-player-primary .pause{display:none}.radio-player[data-state="playing"] .radio-player-primary .play{display:none}.radio-player[data-state="playing"] .radio-player-primary .pause{display:block}.radio-player-button{display:grid;width:2.35rem;height:2.35rem;flex:0 0 auto;place-items:center;border:0;border-radius:999px;background:rgba(0,0,0,.22);color:var(--radio-stage-ink);box-shadow:inset 0 1px rgba(255,255,255,.08),inset 0 0 0 1px rgba(255,255,255,.07);cursor:pointer;transition:.25s}.radio-player-button:hover,.radio-player-button.is-active{background:rgba(255,255,255,.12);color:#fff;transform:scale(1.05)}.radio-player-button svg{width:1rem;height:1rem}.radio-player-button .muted{display:none}.radio-player[data-muted="true"] .radio-player-button .sound{display:none}.radio-player[data-muted="true"] .radio-player-button .muted{display:block}.radio-volume{position:relative;width:4.5rem;height:1.8rem;display:flex;align-items:center}.radio-volume:before{content:"";position:absolute;left:0;right:0;height:.36rem;border-radius:999px;background:rgba(255,255,255,.14)}.radio-volume-fill{position:absolute;left:0;width:100%;height:.36rem;border-radius:999px;background:var(--radio-highlight);transform-origin:left center;transform:scaleX(var(--radio-volume,.999))}.radio-volume input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.radio-player-bubble{display:none}.radio-eq{display:flex;align-items:end;gap:2px;height:1rem}.radio-eq i{width:2px;border-radius:2px;background:currentColor;animation:radio-eq .8s ease-in-out infinite alternate}.radio-eq i:nth-child(1){height:45%}.radio-eq i:nth-child(2){height:85%;animation-delay:-.3s}.radio-eq i:nth-child(3){height:60%;animation-delay:-.6s}@keyframes radio-eq{to{height:25%}}
.radio-player.is-folded{width:3.75rem;height:3.75rem;border-radius:1.1rem;cursor:pointer}.radio-player.is-folded .radio-player-body{display:none}.radio-player.is-folded .radio-player-bubble{position:absolute;z-index:4;inset:0;display:grid;place-items:center;border:0;background:transparent;color:var(--radio-highlight);cursor:pointer}.radio-player-bubble>svg{position:absolute;width:1.25rem;height:1.25rem;opacity:.35}.radio-player-bubble .radio-eq{position:relative;z-index:2}.radio-player.is-dragging{transition:none;cursor:grabbing}
@media(min-width:1024px){.radio-player{--player-side:1.5rem;--player-bottom:1.5rem;width:26.5rem}.radio-player.is-folded{width:4.25rem;height:4.25rem}.radio-player-body{padding:1rem}.radio-player:hover{box-shadow:0 50px 100px -30px rgba(0,0,0,.75),0 18px 36px -16px rgba(0,0,0,.5),0 0 60px -14px var(--radio-highlight),inset 0 1px rgba(255,255,255,.22)}}

/* mobile tab bar */
.radio-mobile-nav{position:fixed;z-index:60;inset:auto 0 0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:.38rem .25rem max(.5rem,var(--radio-safe-bottom));border-top:1px solid var(--radio-line);background:color-mix(in oklab,var(--radio-surface) 95%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.radio-mobile-nav a{display:grid;justify-items:center;gap:.12rem;padding:.25rem;color:var(--radio-muted);font-size:.68rem;font-weight:700}.radio-mobile-nav a svg{width:1.45rem;height:1.45rem}.radio-mobile-nav a.is-active{color:var(--radio-accent)}.radio-mobile-nav a.is-active svg{color:var(--radio-accent)}

/* footer refinement */
.radio-footer{position:relative;isolation:isolate;margin-top:6rem;background:radial-gradient(70% 100% at 75% 0,color-mix(in oklab,var(--radio-glow) 18%,transparent),transparent 65%),var(--radio-stage);color:var(--radio-stage-ink)}.radio-footer:after{content:"";position:absolute;z-index:-1;inset:0;background-image:var(--footer-bg,none);background-size:cover;background-position:80% 100%;opacity:.17;mix-blend-mode:luminosity;mask-image:linear-gradient(transparent,#000 40%);-webkit-mask-image:linear-gradient(transparent,#000 40%)}.radio-footer a{transition:color .2s,transform .2s}.radio-footer a:hover{color:#fff;transform:translateX(2px)}.radio-store{display:inline-flex;border-radius:.75rem;padding:.65rem .85rem;background:#000;color:#fff;font-size:.72rem;font-weight:800;box-shadow:0 8px 18px -12px rgba(0,0,0,.7)}

/* ads */
.radio-ad-slot{padding-top:3rem}.radio-ad-slot>span{display:block;margin-bottom:.45rem;color:var(--radio-muted);font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.radio-ad-slot a,.radio-ad-slot>img{display:block;overflow:hidden;border-radius:1rem;box-shadow:0 22px 40px -34px rgba(0,0,0,.55),0 0 0 1px var(--radio-line)}.radio-ad-slot img{display:block;width:100%;height:auto;object-fit:cover}

/* internal listener pages */
.radio-app-page{min-height:70vh}.radio-page-hero{position:relative;overflow:hidden;padding:7.25rem 1rem 2.5rem;background:radial-gradient(80% 100% at 80% 0,color-mix(in oklab,var(--radio-glow) 28%,transparent),transparent 70%),linear-gradient(160deg,var(--radio-brand),var(--radio-brand-deep));color:var(--radio-stage-ink);border-radius:0 0 1.75rem 1.75rem;box-shadow:0 30px 50px -34px rgba(0,0,0,.75)}.radio-page-hero:after{content:"";position:absolute;inset:0;opacity:.1;background-image:radial-gradient(#fff .8px,transparent .8px);background-size:18px 18px}.radio-page-hero-inner{position:relative;z-index:1;width:min(100%,42rem);margin-inline:auto}.radio-page-hero-inner h1{margin:.5rem 0 0;font-size:clamp(2rem,6vw,3.4rem);font-weight:900;line-height:1.02}.radio-page-hero-inner p{margin:1rem 0 0;max-width:36rem;color:var(--radio-stage-muted);line-height:1.55}.radio-app-page>.radio-section{width:min(calc(100% - 2rem),42rem);margin-inline:auto;padding-top:2rem}.radio-day-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;overflow-x:auto;padding:.2rem 0 .85rem}.radio-day-tabs a{display:grid;min-width:3.4rem;justify-items:center;border-radius:1rem;padding:.65rem .25rem;color:var(--radio-muted);background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line);font-size:.68rem}.radio-day-tabs a b,.radio-day-tabs a span{display:block}.radio-day-tabs a span{margin-top:.18rem}.radio-day-tabs a.active{background:var(--radio-stage);color:#fff;box-shadow:0 12px 26px -18px #000}.radio-current-program{display:grid;grid-template-columns:4.5rem 1fr;align-items:center;gap:1rem;margin:1rem 0 2rem;border-radius:1.5rem;padding:1rem;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff;box-shadow:0 24px 44px -30px rgba(0,0,0,.7)}.radio-current-program .image{display:grid;width:4.5rem;height:4.5rem;place-items:center;overflow:hidden;border-radius:1rem;background:rgba(255,255,255,.08)}.radio-current-program .image img{width:100%;height:100%;object-fit:cover}.radio-current-program small{color:var(--radio-highlight);font-size:.6rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.radio-current-program h2{margin:.2rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:1.1rem;font-weight:900}.radio-current-program p{margin:.2rem 0 0;color:var(--radio-stage-muted);font-size:.72rem}.radio-current-program strong{display:block;margin-top:.4rem;font-size:.7rem}.radio-current-program .radio-hero-play{grid-column:1/-1;justify-self:start}.radio-schedule-period{margin-top:2rem}.period-title{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.period-title h2{font-size:1.35rem}.period-title span{color:var(--radio-muted);font-size:.7rem;font-weight:700}.radio-schedule-list{display:grid}.radio-schedule-row{position:relative;display:grid;grid-template-columns:3.2rem 3.8rem 1fr;align-items:center;gap:.8rem;min-width:0;padding:.72rem .4rem}.radio-schedule-row+.radio-schedule-row{border-top:1px solid var(--radio-line)}.radio-schedule-row.is-live{border-radius:1rem;background:color-mix(in oklab,var(--radio-highlight) 8%,var(--radio-surface));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-highlight) 45%,transparent)}.radio-schedule-row .time{display:grid;font-size:.68rem}.radio-schedule-row .time span{color:var(--radio-muted)}.radio-schedule-row .thumb{display:grid;width:3.8rem;height:3.8rem;place-items:center;overflow:hidden;border-radius:.9rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line)}.radio-schedule-row .thumb img{width:100%;height:100%;object-fit:cover}.radio-schedule-row .copy{min-width:0}.radio-schedule-row .copy b,.radio-schedule-row .copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-schedule-row .copy b{font-size:.82rem}.radio-schedule-row .copy span{margin-top:.2rem;color:var(--radio-muted);font-size:.7rem}.radio-schedule-row em{position:absolute;right:.6rem;top:.45rem;border-radius:999px;padding:.25rem .45rem;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:.55rem;font-style:normal;font-weight:900;text-transform:uppercase}
.radio-search{display:flex;align-items:center;gap:.45rem;border-radius:999px;padding:.35rem .45rem .35rem .8rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line),0 12px 30px -24px rgba(0,0,0,.45)}.radio-search>span{font-size:1.2rem;color:var(--radio-muted)}.radio-search input{min-width:0;flex:1;border:0;background:transparent!important;box-shadow:none!important;outline:0;font-size:.82rem}.radio-search button,.radio-search a{border:0;border-radius:999px;padding:.58rem .85rem;background:var(--radio-stage);color:#fff;font-size:.7rem;font-weight:900}.radio-search a{background:transparent;color:var(--radio-accent)}.radio-promo-filters,.radio-category-pills{display:flex;gap:.45rem;margin-top:1rem;overflow-x:auto;padding:.15rem 0 .35rem;scrollbar-width:none}.radio-promo-filters::-webkit-scrollbar,.radio-category-pills::-webkit-scrollbar{display:none}.radio-promo-filters a,.radio-category-pills a{white-space:nowrap;border-radius:999px;padding:.58rem .8rem;background:var(--radio-surface);color:var(--radio-muted);font-size:.7rem;font-weight:800;box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-promo-filters a.active,.radio-category-pills a.active{background:var(--radio-stage);color:#fff;box-shadow:none}.radio-promo-filters small,.radio-category-pills small{opacity:.65}.radio-winner-banner{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;border-radius:1.25rem;padding:.85rem;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff}.radio-winner-icon{display:grid;width:2.8rem;height:2.8rem;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight)}.radio-winner-banner span:last-child{display:grid}.radio-winner-banner strong{font-size:.78rem}.radio-winner-banner em{margin-top:.15rem;color:var(--radio-stage-muted);font-size:.68rem;font-style:normal}.radio-app-page .radio-promo-grid{grid-template-columns:1fr}.radio-app-page .radio-promo-card{border-radius:1.35rem}.radio-how{margin-top:3rem}.radio-how h2{margin:.4rem 0 1.2rem;font-size:1.6rem}.radio-how article{position:relative;border-radius:1.25rem;padding:1rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line)}.radio-how article strong{display:block;color:var(--radio-accent);font-family:"Unbounded",system-ui,sans-serif;font-size:.8rem}.radio-how article b{display:block;margin-top:.55rem;font-size:.88rem}.radio-how article p{margin:.25rem 0 0;color:var(--radio-muted);font-size:.75rem}.radio-post-featured-grid,.radio-post-grid{display:grid;gap:1rem}.radio-post-card{display:grid;overflow:hidden;border-radius:1.3rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line),0 18px 34px -28px rgba(0,0,0,.5)}.radio-post-card .media{aspect-ratio:16/9;overflow:hidden;background:var(--radio-stage)}.radio-post-card .media img{width:100%;height:100%;object-fit:cover}.radio-post-card .copy{padding:1rem}.radio-post-card .copy small{color:var(--radio-accent);font-size:.65rem;font-weight:900;text-transform:uppercase}.radio-post-card .copy h2{margin:.35rem 0 0;font-size:1rem;line-height:1.2}.radio-post-card .copy p{margin:.5rem 0 0;color:var(--radio-muted);font-size:.75rem}.radio-post-card .copy span{display:block;margin-top:.65rem;color:var(--radio-muted);font-size:.66rem}.radio-article,.radio-article-card,.radio-form-card{width:min(calc(100% - 2rem),42rem);margin:2rem auto 0;border-radius:1.5rem;padding:1rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line),0 22px 42px -34px rgba(0,0,0,.5)}.radio-article-cover,.radio-detail-cover{width:100%;border-radius:1.15rem}.radio-form-card label{display:grid;gap:.35rem;font-size:.75rem;font-weight:700}.radio-form-card input,.radio-form-card textarea,.radio-form-card select{width:100%;border:1px solid var(--radio-line);border-radius:.9rem;padding:.75rem .85rem;background:var(--radio-surface)}

/* dialogs, cookie, push, FAB refinements */
.radio-dialog::backdrop{background:rgba(28,8,6,.72);backdrop-filter:blur(8px)}.radio-dialog-card{border-radius:1.75rem!important;background:color-mix(in oklab,var(--radio-stage) 90%,black)!important;color:var(--radio-stage-ink)!important;box-shadow:0 30px 70px -25px rgba(0,0,0,.8)!important}.radio-dialog-card input,.radio-dialog-card textarea{border-color:rgba(255,255,255,.12)!important;background:rgba(0,0,0,.2)!important;color:#fff!important}.radio-consent,.radio-push-panel{background:color-mix(in oklab,var(--radio-stage) 92%,transparent)!important;box-shadow:inset 0 1px rgba(255,255,255,.2),inset 0 0 0 1px rgba(255,255,255,.09),0 30px 60px -28px rgba(0,0,0,.75)!important;backdrop-filter:blur(26px) saturate(160%)!important}.radio-fab-whatsapp{box-shadow:0 12px 30px -8px rgba(18,140,126,.7)!important}.radio-scroll-thumb{z-index:90!important}

@media(min-width:640px){.radio-app-page>.radio-section{width:min(calc(100% - 3rem),42rem)}.radio-page-hero{padding-top:8rem}.radio-post-featured-grid,.radio-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-post-featured-lead{grid-column:1/-1}.radio-app-page .radio-promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* QA fixes: keep the persistent mobile tab bar inside the viewport at every label length. */
.radio-mobile-nav{width:100%;max-width:100vw;grid-auto-columns:minmax(0,1fr)}
.radio-mobile-nav a{min-width:0;overflow:hidden}
.radio-mobile-nav a small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}
.radio-footer .max-w-7xl{max-width:var(--radio-page)}
.radio-footer{overflow:hidden}
.radio-current-program .radio-hero-play{display:inline-flex;align-items:center;gap:.45rem;border:0;border-radius:999px;padding:.65rem .9rem;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:.72rem;font-weight:900;cursor:pointer}.radio-current-program .radio-hero-play svg{width:.9rem;height:.9rem}.radio-up-next{margin:-.7rem 0 2rem;padding:0 .1rem}.radio-up-next>.radio-eyebrow{display:block;margin-bottom:.7rem}.radio-up-next-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.radio-up-next-list article{display:grid;grid-template-columns:3.1rem 1fr;align-items:center;gap:.65rem;min-width:0;border-radius:1rem;padding:.55rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-up-next-list img,.radio-up-next-list .image-fallback{display:grid;width:3.1rem;height:3.1rem;place-items:center;overflow:hidden;border-radius:.75rem;background:var(--radio-stage);color:#fff;object-fit:cover}.radio-up-next-list .image-fallback svg{width:1rem;height:1rem}.radio-up-next-list article>div{min-width:0}.radio-up-next-list b,.radio-up-next-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-up-next-list b{font-size:.74rem}.radio-up-next-list small{margin-top:.2rem;color:var(--radio-muted);font-size:.65rem}@media(max-width:639px){.radio-up-next-list{grid-template-columns:1fr}.radio-up-next-list article{grid-template-columns:3.4rem 1fr}.radio-up-next-list img,.radio-up-next-list .image-fallback{width:3.4rem;height:3.4rem}}
/* Playlist rows — mirrors the listener app's grouped playlist hierarchy while remaining white-label. */
.radio-playlist-sections{display:grid;gap:1.15rem;margin-top:1rem}.radio-playlist-block{border-radius:1.45rem;padding:1rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line),0 20px 40px -32px rgba(0,0,0,.5)}.radio-playlist-block>header{display:flex;align-items:end;justify-content:space-between;gap:1rem}.radio-playlist-block>header h3{margin:.2rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:1.05rem;font-weight:900}.radio-playlist-block>header>a{flex-shrink:0;color:var(--radio-accent);font-size:.7rem;font-weight:900}.radio-playlist-description{margin:.6rem 0 0;color:var(--radio-muted);font-size:.75rem}.radio-playlist-items{display:grid;gap:.5rem;margin-top:.85rem}.radio-playlist-items>a{display:grid;grid-template-columns:5.5rem 1fr;align-items:center;gap:.75rem;min-width:0;border-radius:1rem;padding:.5rem;transition:background-color .2s,transform .2s}.radio-playlist-items>a:hover{background:color-mix(in oklab,var(--radio-accent) 6%,transparent);transform:translateY(-1px)}.radio-playlist-items .media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:.75rem;background:var(--radio-stage)}.radio-playlist-items .media img{width:100%;height:100%;object-fit:cover}.radio-playlist-items .media>span{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-shadow:0 2px 10px #000}.radio-playlist-items .copy{min-width:0}.radio-playlist-items b,.radio-playlist-items small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-playlist-items b{font-size:.78rem}.radio-playlist-items small{margin-top:.2rem;color:var(--radio-muted);font-size:.65rem}.radio-playlist-empty{display:block;margin-top:.8rem;border-radius:1rem;padding:.8rem;background:var(--radio-background);color:var(--radio-accent);font-size:.72rem;font-weight:900}@media(min-width:640px){.radio-playlist-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
.radio-category-tools{display:flex;align-items:center;gap:.7rem;margin-top:1rem}.radio-category-search{display:flex;align-items:center;gap:.45rem;min-width:0;flex:1;border-radius:999px;padding:.45rem .75rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-category-search span{color:var(--radio-muted)}.radio-category-search input{min-width:0;width:100%;border:0;background:transparent;outline:0;font-size:.72rem}.radio-category-count{flex-shrink:0;color:var(--radio-muted);font-size:.66rem;font-weight:800}.radio-filter-heading{display:flex;align-items:center;gap:.35rem;margin-top:1rem;color:var(--radio-muted);font-size:.7rem}.radio-filter-heading strong{color:var(--radio-ink)}.radio-winners-link{margin-top:1rem}.radio-winners-link a{display:grid;grid-template-columns:2.5rem 1fr;align-items:center;gap:0 .75rem;border-radius:1.15rem;padding:.8rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-winners-link a>span{grid-row:1/3;display:grid;width:2.5rem;height:2.5rem;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight)}.radio-winners-link b{font-size:.78rem}.radio-winners-link em{color:var(--radio-muted);font-size:.66rem;font-style:normal}
.radio-consent-essential em{flex-shrink:0;color:var(--radio-highlight);font-size:.62rem;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.radio-category-select{margin-top:1rem}.radio-category-select label{display:flex;align-items:center;gap:.5rem;border-radius:1rem;padding:.7rem .85rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line)}.radio-category-select label>span{flex-shrink:0;color:var(--radio-muted);font-size:.7rem;font-weight:800}.radio-category-select select{min-width:0;flex:1;border:0;background:transparent;color:var(--radio-ink);font-size:.72rem;font-weight:900;outline:0}.radio-category-empty{margin-top:.5rem;border-radius:1rem;padding:.8rem;background:color-mix(in oklab,var(--radio-accent) 5%,var(--radio-surface));color:var(--radio-muted);font-size:.72rem;font-weight:800}

/* Detail pages: article and promotion */
.radio-detail-page{padding-bottom:2rem}.radio-detail-header{position:relative;isolation:isolate;padding:7.4rem 1rem 2.2rem;overflow:hidden}.radio-detail-header:before{content:"";position:absolute;z-index:-2;inset:0 0 auto;height:20rem;background:radial-gradient(60% 75% at 82% 5%,color-mix(in oklab,var(--radio-glow) 20%,transparent),transparent 72%),linear-gradient(160deg,color-mix(in oklab,var(--radio-brand) 11%,var(--radio-bg)),var(--radio-bg) 70%)}.radio-detail-header:after{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:20rem;background-image:radial-gradient(color-mix(in oklab,var(--radio-ink) 9%,transparent) .8px,transparent .9px);background-size:20px 20px;-webkit-mask-image:linear-gradient(#000,transparent 82%);mask-image:linear-gradient(#000,transparent 82%)}.radio-detail-header-inner{width:min(100%,60rem);margin-inline:auto}.radio-detail-back{display:inline-flex;align-items:center;gap:.45rem;min-height:2.5rem;border-radius:999px;padding:.4rem .8rem;background:color-mix(in oklab,var(--radio-surface) 78%,transparent);box-shadow:inset 0 0 0 1px var(--radio-line),0 10px 24px -20px #000;color:var(--radio-accent);font-size:.76rem;font-weight:850;backdrop-filter:blur(14px);transition:transform .25s,background-color .25s}.radio-detail-back:hover{transform:translateY(-1px);background:var(--radio-surface)}.radio-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:1.45rem;color:var(--radio-muted);font-size:.7rem;font-weight:750}.radio-breadcrumb a:hover{color:var(--radio-accent)}.radio-detail-title{max-width:58rem;margin:.85rem 0 0;font-family:"Unbounded",system-ui,sans-serif;font-size:clamp(2rem,5.2vw,4.35rem);font-weight:900;letter-spacing:-.04em;line-height:.99;text-wrap:balance}.radio-detail-deck{max-width:50rem;margin:1rem 0 0;color:var(--radio-muted);font-size:clamp(.95rem,1.6vw,1.15rem);line-height:1.6;text-wrap:pretty}.radio-author-line{display:flex;align-items:center;gap:.8rem;margin-top:1.5rem}.radio-author-avatar{display:grid;width:2.75rem;height:2.75rem;flex:none;place-items:center;border-radius:999px;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff;font-family:"Unbounded",system-ui,sans-serif;font-size:.68rem;font-weight:850;box-shadow:0 8px 22px -12px var(--radio-brand)}.radio-author-copy{display:grid;min-width:0;gap:.14rem}.radio-author-copy b{font-size:.78rem}.radio-author-copy span{color:var(--radio-muted);font-size:.69rem}.radio-share-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.5rem;margin-left:auto;border:0;border-radius:999px;padding:.45rem .85rem;background:var(--radio-stage);color:var(--radio-stage-ink);font-size:.72rem;font-weight:850;box-shadow:inset 0 1px #ffffff30,inset 0 0 0 1px #ffffff16,0 12px 25px -18px #000;cursor:pointer;transition:transform .25s,box-shadow .25s}.radio-share-button:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff3d,inset 0 0 0 1px #ffffff22,0 16px 30px -18px #000}.radio-share-button svg{width:1rem;height:1rem}.radio-share-button.is-done{background:var(--radio-accent)}.radio-share-button-light{margin-left:0;background:var(--radio-surface);color:var(--radio-accent);box-shadow:inset 0 0 0 1px var(--radio-line),0 10px 20px -18px #000}.radio-detail-article{width:min(calc(100% - 2rem),60rem);margin:0 auto;padding-bottom:1rem}.radio-detail-cover-wrap{margin:0 0 2.2rem}.radio-detail-cover{display:block;width:100%;max-height:none;aspect-ratio:16/9;object-fit:cover;border-radius:1.6rem;box-shadow:0 32px 54px -38px #000,0 0 0 1px color-mix(in oklab,var(--radio-ink) 6%,transparent)}.radio-prose{color:var(--radio-ink);font-size:clamp(1rem,1.45vw,1.13rem);line-height:1.78;overflow-wrap:break-word;text-wrap:pretty}.radio-prose :where(p,ul,ol,blockquote,figure,pre){margin-block:0 1.45em}.radio-prose :where(h2,h3,h4){margin:1.8em 0 .65em;font-family:"Unbounded",system-ui,sans-serif;letter-spacing:-.025em;line-height:1.18;text-wrap:balance}.radio-prose h2{font-size:1.55em}.radio-prose h3{font-size:1.25em}.radio-prose ul,.radio-prose ol{padding-left:1.5rem}.radio-prose li+li{margin-top:.45rem}.radio-prose a{color:var(--radio-accent);font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.radio-prose blockquote{border-left:3px solid var(--radio-highlight);padding:.9rem 0 .9rem 1.2rem;color:var(--radio-muted);font-family:Georgia,serif;font-size:1.08em;font-style:italic}.radio-prose img{max-width:100%;height:auto;border-radius:1.2rem}.radio-detail-share-end{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2.6rem;border-top:1px solid var(--radio-line);border-bottom:1px solid var(--radio-line);padding:1rem 0}.radio-detail-share-end>span{font-family:"Unbounded",system-ui,sans-serif;font-size:.76rem;font-weight:850}.radio-detail-latest,.radio-detail-related{width:min(calc(100% - 2rem),90rem)!important}.radio-latest-list{display:grid;border-top:1px solid var(--radio-line)}.radio-latest-item{display:grid;grid-template-columns:5rem minmax(0,1fr) 2rem;align-items:center;gap:1rem;border-bottom:1px solid var(--radio-line);padding:.85rem .2rem;transition:background-color .25s,transform .25s}.radio-latest-item:hover{transform:translateX(3px);background:color-mix(in oklab,var(--radio-surface) 65%,transparent)}.radio-latest-thumb{width:5rem;aspect-ratio:16/10;overflow:hidden;border-radius:.9rem;background:var(--radio-stage)}.radio-latest-thumb img{width:100%;height:100%;object-fit:cover}.radio-latest-copy{display:grid;min-width:0;gap:.25rem}.radio-latest-copy small{color:var(--radio-muted);font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.radio-latest-copy b{font-size:.86rem;line-height:1.25;text-wrap:balance}.radio-latest-arrow{color:var(--radio-accent);font-size:1.1rem;font-weight:900}.radio-related-grid{display:grid;gap:1rem;margin-top:1.2rem}.radio-related-card{display:grid;overflow:hidden;border-radius:1.35rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line),0 22px 38px -32px #000;transition:transform .3s,box-shadow .3s}.radio-related-card:hover{transform:translateY(-4px);box-shadow:0 0 0 1px var(--radio-line),0 30px 46px -30px #000}.radio-related-card .media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--radio-stage)}.radio-related-card .media img{width:100%;height:100%;object-fit:cover;transition:scale .7s cubic-bezier(.22,1,.36,1)}.radio-related-card:hover .media img{scale:1.04}.radio-related-card .copy{display:grid;gap:.55rem;padding:1rem}.radio-related-card b{font-size:1rem;line-height:1.22;text-wrap:balance}.radio-related-card p{margin:0;color:var(--radio-muted);font-size:.78rem;line-height:1.4}.radio-related-card small{color:var(--radio-muted);font-size:.67rem}.radio-media-fallback{display:grid;width:100%;height:100%;place-items:center;color:#fff;font-size:1.3rem;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep))}

.radio-promo-detail-header .radio-eyebrow{display:block;margin-top:1.3rem;color:var(--radio-accent)}.radio-promo-meta{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.2rem 0 0;padding:0;list-style:none}.radio-promo-meta li{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;padding:.55rem .75rem;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line),0 10px 22px -20px #000}.radio-promo-meta li span{color:var(--radio-accent)}.radio-promo-meta li b{font-size:.72rem}.radio-promo-detail-layout{display:grid;width:min(calc(100% - 2rem),72rem);margin:0 auto;gap:1.5rem;align-items:start}.radio-promo-story{min-width:0}.radio-promo-about{padding:0 .1rem}.radio-promo-about>h2{margin:.35rem 0 1rem;font-size:clamp(1.5rem,3vw,2.25rem)}.radio-promo-copy{white-space:normal}.radio-rules{margin-top:2rem;border-top:1px solid var(--radio-line);border-bottom:1px solid var(--radio-line)}.radio-rules summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;cursor:pointer;font-weight:850;list-style:none}.radio-rules summary::-webkit-details-marker{display:none}.radio-rules summary span{display:grid;width:1.8rem;height:1.8rem;place-items:center;border-radius:999px;background:var(--radio-surface);box-shadow:inset 0 0 0 1px var(--radio-line);transition:rotate .25s}.radio-rules[open] summary span{rotate:45deg}.radio-rules .radio-prose{padding:.1rem 0 1.2rem}.radio-promo-form-card{position:sticky;top:6.4rem;padding:1.25rem}.radio-form-errors{margin-top:1rem;border-radius:1rem;padding:.8rem 1rem;background:#fff2f1;color:#9b1c1c;font-size:.76rem;box-shadow:inset 0 0 0 1px #efc9c5}.radio-form-errors ul{margin:.4rem 0 0;padding-left:1rem}.radio-form-feedback{margin:0;color:#9b1c1c;font-size:.74rem}.radio-promo-privacy{margin:.9rem 0 0;color:var(--radio-muted);font-size:.68rem;line-height:1.5}.radio-promo-privacy a{color:var(--radio-accent);font-weight:800;text-decoration:underline;text-underline-offset:2px}.radio-promo-closed{display:grid;gap:.3rem;margin-top:1rem;border-radius:1rem;padding:1rem;background:color-mix(in oklab,var(--radio-highlight) 12%,var(--radio-surface));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-highlight) 35%,var(--radio-line))}.radio-promo-closed b{font-size:.82rem}.radio-promo-closed span{color:var(--radio-muted);font-size:.73rem}

@media(min-width:720px){.radio-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-latest-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}.radio-latest-item:nth-child(2){border-top:1px solid var(--radio-line)}}
@media(min-width:960px){.radio-promo-detail-layout{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);gap:2rem}.radio-promo-detail-layout>.radio-promo-story{padding-bottom:2rem}}
@media(max-width:639px){.radio-detail-header{padding-top:6.4rem}.radio-detail-title{font-size:clamp(1.75rem,9vw,2.55rem)}.radio-author-line{align-items:flex-start}.radio-share-button>span{display:none}.radio-share-button{width:2.5rem;padding:0}.radio-share-button-light{width:auto;padding:.45rem .75rem}.radio-share-button-light>span{display:inline}.radio-detail-cover{border-radius:1.25rem}.radio-detail-share-end{align-items:center}.radio-related-grid{grid-template-columns:1fr}.radio-promo-form-card{position:static}.radio-promo-meta{display:grid}.radio-promo-meta li{width:max-content;max-width:100%}}

/* Fidelity pass 2026-11-03 — viewport geometry aligned to the reference */
.radio-topbar{position:fixed;inset:0 0 auto;top:0;height:0;padding-top:.75rem}
.radio-live-shell{width:100%;max-width:none;margin:0;padding:0 0 .5rem}
.radio-live-card{width:100%;border-radius:0 0 2rem 2rem;outline:0;box-shadow:0 30px 50px -34px rgba(0,0,0,.78),0 18px 40px -30px var(--radio-highlight)}
.radio-live-backdrop{height:100%}
.radio-live-badge{top:5.65rem;left:max(1rem,var(--radio-safe-left))}
.radio-live-playerbar{width:min(calc(100% - 2rem),53.5rem)}
@media(max-width:639px){
  .radio-live-card{aspect-ratio:auto;min-height:36rem}
  .radio-stage-record{top:18%;width:42%;transform:translateX(-70%)}
  .radio-stage-info{inset:auto 1.5rem 5.5rem}
  .radio-stage-info h1{font-size:clamp(2rem,9vw,3rem)}
  .radio-live-playerbar{margin-top:-2.75rem}
}
@media(min-width:640px){
  .radio-topbar{padding-top:1rem}
  .radio-live-shell{padding:0 0 .5rem}
  .radio-live-card{aspect-ratio:auto;min-height:38rem;border-radius:0 0 2rem 2rem}
  .radio-live-badge{top:6.25rem;left:2rem}
  .radio-stage-record{right:8%;top:48%;height:64%}
  .radio-stage-info{padding:6rem 0 3rem max(2rem,calc((100vw - 80rem)/2))}
}
@media(min-width:1024px){
  .radio-live-shell{padding:0 0 .5rem}
  .radio-live-card{height:min(42rem,72vh);min-height:36rem;border-radius:0 0 2rem 2rem}
  .radio-stage-record{right:max(8%,calc((100vw - 80rem)/2));height:68%}
  .radio-stage-info{padding-left:max(3rem,calc((100vw - 80rem)/2));padding-bottom:3.75rem}
  .radio-live-playerbar{margin-top:-2.75rem}
}

/* Fidelity pass 2: mobile navigation and commercial audience note */
.radio-audience-source{margin:.8rem 0 0;color:var(--radio-stage-muted);font-size:.68rem;line-height:1.4}
@media(max-width:639px){
  .radio-mobile-nav{padding-inline:.05rem}
  .radio-mobile-nav a{gap:.08rem;padding:.22rem .05rem;font-size:.625rem}
  .radio-mobile-nav a small{font-size:.625rem;letter-spacing:-.018em;text-overflow:clip}
  .radio-mobile-nav a svg{width:1.35rem;height:1.35rem}
}

/* Motion fidelity pass 0.4.0 — scroll, transitions and micro-interactions */
:root{
  --radio-scroll-progress:0;
  --radio-scroll-y:0px;
  --radio-tilt-x:0deg;
  --radio-tilt-y:0deg;
}

/* The reference keeps the floating navigation visually attached to the stage,
   then makes it denser as the page gains distance from the hero. */
.radio-topbar-cluster{transition:transform .5s var(--radio-ease),filter .45s var(--radio-ease)}
.radio-nav-glass{transition:background-color .45s var(--radio-ease),box-shadow .45s var(--radio-ease),transform .45s var(--radio-ease)}
.radio-topbar.is-grounded .radio-topbar-cluster{transform:translateY(-.08rem) scale(.985)}
.radio-topbar.is-grounded .radio-nav-glass{background:color-mix(in oklab,var(--radio-stage) 90%,transparent);box-shadow:inset 0 1px rgba(255,255,255,.18),inset 0 0 0 1px rgba(255,255,255,.1),0 20px 48px -20px rgba(0,0,0,.72)}
.radio-topbar.is-grounded .radio-topbar-logo{transform:scale(.94)}
.radio-topbar.is-grounded .radio-topbar-logo:hover{transform:scale(.99)}

/* Hero scroll linger / parallax. Values are set by app.js on rAF. */
.radio-live-stage{--hero-p:var(--radio-scroll-progress,0)}
.radio-live-studio{will-change:transform,opacity;transform:translate3d(0,calc(var(--hero-p) * 5.5vh),0) scale(calc(1.03 + var(--hero-p) * .025));opacity:calc(.72 - var(--hero-p) * .16);transition:opacity .2s linear}
.radio-cover-wall{will-change:transform,opacity;transform:translate3d(0,calc(var(--hero-p) * 2.5rem),0) rotate(-8deg);opacity:calc(.48 - var(--hero-p) * .15)}
.radio-stage-record{will-change:transform,opacity;filter:saturate(calc(1 - var(--hero-p) * .08));opacity:calc(1 - var(--hero-p) * .12)}
.radio-stage-info{will-change:transform,opacity;transform:translate3d(0,calc(var(--hero-p) * -1rem),0);opacity:calc(1 - var(--hero-p) * .28)}
.radio-live-badge{will-change:transform,opacity;transform:translate3d(0,calc(var(--hero-p) * -.65rem),0);opacity:calc(1 - var(--hero-p) * .35)}
.radio-live-playerbar{will-change:transform,opacity;opacity:calc(1 - var(--hero-p) * .18)}

/* Actual intersection reveal instead of an animation that runs immediately. */
.radio-reveal{opacity:0;transform:translate3d(0,1rem,0);filter:blur(2px);transition:opacity .65s var(--radio-ease),transform .75s var(--radio-ease),filter .55s ease;animation:none!important}
.radio-reveal.is-visible{opacity:1;transform:none;filter:none}
.radio-reveal>.radio-section-head,.radio-reveal>.radio-ranking-stage,.radio-reveal>.radio-news-layout,.radio-reveal>.radio-video-stage,.radio-reveal>.radio-commercial-hero,.radio-reveal>.radio-contact-panel{transition:transform .75s var(--radio-ease),opacity .65s var(--radio-ease)}
.radio-reveal:not(.is-visible)>.radio-section-head{transform:translateY(.4rem);opacity:.7}
.radio-reveal:not(.is-visible)>.radio-ranking-stage,.radio-reveal:not(.is-visible)>.radio-news-layout,.radio-reveal:not(.is-visible)>.radio-video-stage,.radio-reveal:not(.is-visible)>.radio-commercial-hero,.radio-reveal:not(.is-visible)>.radio-contact-panel{transform:translateY(.7rem);opacity:.55}

/* Subtle pointer tilt used on the large visual cards. */
.radio-tilt{transform-style:preserve-3d;will-change:transform;transform:perspective(900px) rotateX(var(--radio-tilt-x,0deg)) rotateY(var(--radio-tilt-y,0deg)) translateZ(0);transition:transform .45s var(--radio-ease),box-shadow .4s var(--radio-ease)}
.radio-tilt.is-tilting{transition:transform .08s linear,box-shadow .3s var(--radio-ease)}

/* PIP morph: keep body alive long enough to visually collapse into the bubble. */
.radio-player-body{transform-origin:bottom right;transition:opacity .22s ease,transform .45s var(--radio-spring)}
.radio-player.is-folded .radio-player-body{display:block!important;opacity:0;transform:scale(.88);pointer-events:none}
.radio-player-bubble{transition:opacity .25s ease,transform .5s var(--radio-spring)}
.radio-player:not(.is-folded) .radio-player-bubble{opacity:0;transform:scale(.72);pointer-events:none}
.radio-player.is-folded .radio-player-bubble{opacity:1;transform:scale(1);animation:radio-pip-pop .5s var(--radio-spring) .12s both}
@keyframes radio-pip-pop{0%{transform:scale(.72);opacity:0}70%{transform:scale(1.08);opacity:1}100%{transform:scale(1)}}

/* Edge veils match the soft top/bottom atmospheric treatment while scrolling. */
.radio-edge-veil{position:fixed;z-index:45;left:0;right:0;pointer-events:none;opacity:0;transition:opacity .35s ease;will-change:opacity}
.radio-edge-veil-top{top:0;height:4.75rem;background:linear-gradient(180deg,color-mix(in oklab,var(--radio-stage) 24%,transparent),transparent)}
.radio-edge-veil-bottom{bottom:0;height:5rem;background:linear-gradient(0deg,color-mix(in oklab,var(--radio-stage) 12%,transparent),transparent)}
body[data-scrolled="true"] .radio-edge-veil-top{opacity:.42}
body[data-near-bottom="false"] .radio-edge-veil-bottom{opacity:.22}

/* Scroll thumb becomes interactive, as in the reference. */
.radio-scroll-thumb{pointer-events:auto;cursor:grab;touch-action:none}
.radio-scroll-thumb.is-dragging{opacity:1!important;width:9px;cursor:grabbing;background:var(--radio-accent);transition:none}

/* AJAX/view transition. The audio/player are outside #app-content and never recreated. */
::view-transition-old(radio-content){animation:radio-page-out .22s ease both}
::view-transition-new(radio-content){animation:radio-page-in .42s var(--radio-ease) both}
#app-content{view-transition-name:radio-content}
@keyframes radio-page-out{to{opacity:0;transform:translateY(-.3rem)}}
@keyframes radio-page-in{from{opacity:0;transform:translateY(.55rem)}to{opacity:1;transform:none}}
html[data-loading] #app-content{cursor:progress}

/* Rails gain the same grab feedback used by the reference. */
.radio-schedule-rail,.radio-played-rail,.radio-promo-rail,.radio-shorts-rail{cursor:grab;overscroll-behavior-inline:contain}
:is(.radio-schedule-rail,.radio-played-rail,.radio-promo-rail,.radio-shorts-rail).is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}

/* Hover lift is slightly springy rather than abrupt. */
.radio-ticket,.radio-news-row,.radio-video-list a,.radio-shorts-rail a,.radio-rank-list li{transition-timing-function:var(--radio-ease)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .radio-live-studio,.radio-cover-wall,.radio-stage-info,.radio-live-badge,.radio-live-playerbar{transform:none!important;opacity:1!important}
  .radio-reveal{opacity:1!important;transform:none!important;filter:none!important}
}


/* Motion fidelity pass 0.4.0b — navigation hover, long-title marquee, desktop/mobile hard bounds */
@media(min-width:1024px){
  .radio-mobile-nav{display:none!important}
  body{padding-bottom:0!important}
}
[data-marquee]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-marquee].is-marquee{--radio-marquee-shift:0px;--radio-marquee-duration:7s;text-overflow:clip;animation:radio-marquee var(--radio-marquee-duration) linear 1s infinite alternate both}
@keyframes radio-marquee{
  0%,12%{text-indent:0}
  88%,100%{text-indent:var(--radio-marquee-shift)}
}
.radio-nav-indicator{transition:width .42s var(--radio-ease),transform .5s var(--radio-spring),opacity .22s ease}
@media(prefers-reduced-motion:reduce){[data-marquee].is-marquee{animation:none!important;text-indent:0!important}}

/* Reference-sized audio PiP on phones: narrow right-anchored capsule above tab bar. */
.radio-player{--player-bottom:4.5rem}
@media(max-width:639px){
  .radio-player{width:min(23rem,calc(100vw - 6rem))}
  .radio-player-body{padding:.8rem}
  .radio-player-actions{gap:.25rem}
  .radio-player-actions [data-song-request-open],.radio-player-actions #player-fullscreen{display:none}
  .radio-volume{width:3.75rem;min-width:2.75rem}
}

/* PiP dimensions/control density aligned to the reference audio-player state. */
.radio-player{width:min(23rem,calc(100vw - 6rem))}
.radio-player-actions [data-song-request-open],.radio-player-actions #player-fullscreen{display:none}
@media(min-width:1024px){
  .radio-player{width:23rem}
  .radio-player.is-folded{width:3.75rem;height:3.75rem}
}

/* Clear legacy player grid so the reference PiP body owns the full capsule. */
.radio-player{display:block;grid-template-columns:none;align-items:initial;gap:0;padding:0}
.radio-player.is-folded{padding:0}

/* Consent / push motion parity: liquid panels expand and leave instead of popping. */
.radio-consent,.radio-push-panel{transition:opacity .5s ease,translate .7s var(--radio-ease),scale .7s var(--radio-ease),visibility .5s}
@starting-style{
  .radio-consent:not([hidden]),.radio-push-panel:not([hidden]){opacity:0;translate:0 2.5rem;scale:.97}
}
.radio-consent[data-leaving="true"],.radio-push-panel[data-leaving="true"]{opacity:0;translate:0 2rem;scale:.97;pointer-events:none}
.radio-consent-choices{grid-template-rows:0fr;transition:grid-template-rows .55s var(--radio-ease)}
.radio-consent-choices-inner{min-height:0;overflow:hidden}
.radio-consent[data-choosing="true"] .radio-consent-choices{grid-template-rows:1fr}
.radio-consent-save{display:none}
.radio-consent[data-choosing="true"] .radio-consent-save{display:inline-flex}
.radio-consent[data-choosing="true"] .radio-consent-quick{display:none}
.radio-consent-customize{display:inline-flex;align-items:center;gap:.25rem;border:0;background:transparent;cursor:pointer}
.radio-consent-chevron{display:inline-block;font-size:1.25rem;line-height:1;rotate:-90deg;transition:rotate .4s var(--radio-ease)}
.radio-consent[data-choosing="true"] .radio-consent-chevron{rotate:90deg}
.radio-switch{appearance:none!important;position:relative!important;width:2.75rem!important;height:1.6rem!important;flex:0 0 auto!important;border:0!important;border-radius:999px!important;background:rgba(255,255,255,.14)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)!important;cursor:pointer!important;transition:background-color .3s,box-shadow .3s!important}
.radio-switch:after{content:"";position:absolute;left:.2rem;top:.2rem;width:1.2rem;height:1.2rem;border-radius:999px;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.28);transition:translate .32s var(--radio-spring)}
.radio-switch:checked{background:var(--radio-highlight)!important;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-highlight) 65%,white)!important}
.radio-switch:checked:after{translate:1.15rem 0}
@media(min-width:1024px){.radio-push-panel{right:6.75rem;bottom:1.5rem}}

/* Visual fidelity pass 0.5.0 — two-layer live stage derived from the approved reference capture. */
@media(min-width:1024px){
  .radio-live-stage{
    min-height:40.25rem;
    padding:0;
    background:var(--radio-bg);
  }
  .radio-live-backdrop{
    inset:.15rem .25rem auto;
    width:auto;
    height:29.75rem;
    border-radius:.85rem;
    overflow:hidden;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
  }
  .radio-live-backdrop:before{
    content:"";
    position:absolute;
    z-index:2;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(180deg,rgba(80,4,3,.06),rgba(80,4,3,.14) 58%,rgba(80,4,3,.45)),
      linear-gradient(90deg,rgba(107,9,7,.16),transparent 48%,rgba(84,25,4,.18));
  }
  .radio-live-backdrop:after{
    z-index:3;
    opacity:.5;
    background:linear-gradient(180deg,transparent 58%,color-mix(in oklab,var(--radio-brand-deep) 70%,transparent));
  }
  .radio-live-studio{
    z-index:1;
    object-position:center 61%;
    mix-blend-mode:normal;
    opacity:.76;
    filter:saturate(.86) contrast(1.03) brightness(.72);
    transform:translate3d(0,calc(var(--hero-p) * 4vh),0) scale(calc(1.025 + var(--hero-p) * .02));
  }
  .radio-live-blob{z-index:2;opacity:.3}

  .radio-stage-floor{
    z-index:-1;
    inset:28.2rem 0 0;
    height:auto;
    opacity:.64;
    background:var(--radio-bg);
    -webkit-mask-image:none;
    mask-image:none;
  }
  .radio-stage-floor:before{
    content:"";
    position:absolute;
    left:0;right:0;top:-2rem;height:3rem;
    background:var(--radio-bg);
    clip-path:polygon(0 68%,12% 48%,24% 60%,37% 43%,50% 58%,63% 43%,75% 61%,88% 48%,100% 67%,100% 100%,0 100%);
  }
  .radio-stage-floor span{
    opacity:.22;
    background-size:20px 20px;
  }

  .radio-live-shell{
    position:relative;
    z-index:5;
    width:100%;
    padding:7.25rem 0 .65rem;
  }
  .radio-live-card{
    width:min(calc(100% - 5.5rem),80rem);
    height:30rem;
    min-height:30rem;
    margin-inline:auto;
    border-radius:2.7rem;
    overflow:hidden;
    outline:1px solid color-mix(in oklab,var(--radio-highlight) 26%,transparent);
    background:#4d0807;
    box-shadow:
      inset 0 1px rgba(255,255,255,.07),
      inset 0 0 0 1px rgba(251,186,40,.09),
      0 32px 54px -33px rgba(40,7,4,.88),
      0 12px 30px -22px color-mix(in oklab,var(--radio-highlight) 38%,transparent);
  }
  .radio-cover-wall{
    inset:-21% -13% -20% 34%;
    gap:1rem;
    opacity:.42;
    transform:translate3d(0,calc(var(--hero-p) * 2rem),0) rotate(-7deg);
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 21%,#000 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 21%,#000 100%);
  }
  .radio-cover-wall-row{gap:1.1rem}
  .radio-cover-wall-row img{
    width:7.25rem;height:7.25rem;
    border-radius:.92rem;
    filter:saturate(.82) contrast(1.02) brightness(.86);
    box-shadow:0 14px 26px -18px rgba(0,0,0,.8);
  }
  .radio-live-wash{
    background:
      linear-gradient(90deg,#5b0908 0%,rgba(91,9,8,.98) 37%,rgba(91,9,8,.82) 55%,rgba(91,9,8,.40) 82%,rgba(91,9,8,.66) 100%),
      linear-gradient(0deg,rgba(54,5,5,.92),rgba(74,7,6,.10) 58%);
  }
  .radio-live-spot{
    background:radial-gradient(520px circle at 72% 38%,rgba(255,255,255,.105),transparent 48%);
  }
  .radio-live-badge{
    left:1.5rem;
    top:1.35rem;
    height:2.45rem;
    transform:translate3d(0,calc(var(--hero-p) * -.5rem),0);
  }
  .radio-live-badge span{
    height:2.05rem;
    padding-inline:.9rem;
    font-size:.66rem;
    background:linear-gradient(180deg,#ff2b38,#ef1426 58%,#d90c1c);
    box-shadow:inset 0 1px rgba(255,255,255,.42),0 6px 18px -8px rgba(238,20,38,.95),0 0 0 1px rgba(255,44,60,.45);
  }

  .radio-stage-info{
    inset:6.75rem auto auto 2.8rem;
    display:block;
    width:43.5%;
    padding:0;
    transform:translate3d(0,calc(var(--hero-p) * -.8rem),0);
  }
  .radio-stage-info h1{
    max-width:35rem;
    margin:.5rem 0 0;
    font-size:clamp(3.15rem,4.6vw,4.1rem);
    line-height:.94;
    letter-spacing:-.05em;
  }
  .radio-stage-description{
    display:block;
    max-width:34rem;
    max-height:3.15em;
    margin-top:1.05rem;
    overflow:hidden;
    color:rgba(255,255,255,.74);
    font-size:1rem;
    line-height:1.55;
    -webkit-mask-image:linear-gradient(#000 58%,transparent);
    mask-image:linear-gradient(#000 58%,transparent);
  }
  .radio-stage-info:hover .radio-stage-description{max-height:9em;-webkit-mask-image:none;mask-image:none}
  .radio-stage-host{margin-top:1.25rem;gap:.72rem}
  .radio-host-photo{
    width:3.05rem;height:3.05rem;
    padding:3px;
    box-shadow:0 9px 20px -10px rgba(0,0,0,.78),0 0 0 1px rgba(255,255,255,.1);
  }
  .radio-stage-host>span:last-child{display:flex;align-items:baseline;gap:.28rem}
  .radio-stage-host small{font-size:.76rem;text-transform:none;letter-spacing:0;color:rgba(255,255,255,.65)}
  .radio-stage-host strong{margin:0;font-size:.82rem;text-transform:uppercase}

  .radio-stage-record{
    left:auto;
    right:7.7rem;
    top:2.6rem;
    width:22rem;
    height:22rem;
    transform:none!important;
    opacity:calc(1 - var(--hero-p) * .10);
  }
  body[data-live-state="playing"] .radio-stage-record,
  body[data-live-state="connecting"] .radio-stage-record{transform:none!important}
  .radio-stage-vinyl{
    inset:.3rem;
    transform:translateX(13%);
  }
  body[data-live-state="playing"] .radio-stage-vinyl,
  body[data-live-state="connecting"] .radio-stage-vinyl{transform:translateX(17%)}
  .radio-stage-sleeve{
    border-radius:1.85rem;
    box-shadow:0 30px 56px -21px rgba(0,0,0,.82),0 0 0 1px rgba(255,255,255,.12);
  }

  .radio-live-playerbar{
    width:min(calc(100% - 5.5rem),50rem);
    max-width:50rem;
    min-height:4.7rem;
    margin:-2.6rem auto 0;
    gap:.78rem;
    padding:.35rem 1.15rem .35rem .35rem;
    border-radius:999px;
    background:color-mix(in oklab,#45150f 91%,transparent);
    box-shadow:
      inset 0 1px rgba(255,255,255,.14),
      inset 0 0 0 1px rgba(255,255,255,.07),
      0 24px 42px -20px rgba(0,0,0,.78);
  }
  .radio-live-play{width:4.25rem;height:4.25rem;border:3px solid color-mix(in oklab,var(--radio-highlight) 72%,#9e6510);box-shadow:inset 0 1px rgba(255,255,255,.44),0 10px 24px -12px rgba(0,0,0,.78)}
  .radio-live-play svg{width:1.7rem;height:1.7rem}
  .radio-live-track-cover{width:3.1rem;height:3.1rem;border-radius:.7rem}
  .radio-live-track-copy small{font-size:.58rem}
  .radio-live-track-copy b{font-size:.9rem}
  .radio-live-track-copy em{font-size:.73rem}
  .radio-live-votes{display:none}
  .radio-live-full{display:none}
}

@media(min-width:1024px) and (max-width:1199px){
  .radio-live-card{width:calc(100% - 3rem)}
  .radio-stage-record{right:4rem;width:20rem;height:20rem;top:3.5rem}
  .radio-stage-info{left:2.3rem;width:46%}
  .radio-stage-info h1{font-size:3.35rem}
}

/* Capture alignment corrections: keep the navigation fully inside the viewport and darken the dock. */
@media(min-width:1024px){
  .radio-topbar{
    height:5rem;
    align-items:flex-start;
    padding-top:.8rem;
  }
  .radio-topbar-cluster{height:4.5rem;align-items:center}
  .radio-live-playerbar{background:rgba(56,16,12,.965)}
}


/* Capture-calibrated fidelity pass 0.6.0 — geometry matched to 1440×803 approved reference. */
@media(min-width:1024px){
  .radio-topbar{
    padding-top:2.15rem;
    height:0;
    align-items:flex-start;
  }
  .radio-topbar-cluster{height:4.5rem;align-items:center}
  .radio-topbar-logo{width:4.5rem;height:4.5rem}
  .radio-nav-glass{
    height:3.35rem;
    border-radius:1.7rem;
    background:rgba(48,10,8,.91);
    box-shadow:inset 0 1px rgba(255,255,255,.14),inset 0 0 0 1px rgba(255,255,255,.08),0 18px 38px -18px rgba(0,0,0,.72);
  }
  .radio-nav-link{min-height:2.65rem;padding-inline:.9rem}
  .radio-nav-link:first-of-type{padding-inline:1rem}

  .radio-live-stage{min-height:42.25rem}
  .radio-live-backdrop{
    inset:1.25rem .25rem auto;
    height:29.75rem;
    border-radius:.8rem;
  }
  .radio-live-backdrop:not(:has(.radio-live-studio)){
    background:
      radial-gradient(38rem 20rem at 48% 40%,rgba(160,23,13,.34),transparent 64%),
      linear-gradient(90deg,rgba(113,9,7,.72),rgba(126,13,8,.42) 52%,rgba(103,34,5,.42)),
      repeating-linear-gradient(90deg,#7d1711 0 4.5rem,#9a2619 4.5rem 7.2rem,#5f130f 7.2rem 10rem),
      linear-gradient(165deg,#7b0f0b,#481006 64%,#361004);
  }
  .radio-live-backdrop:not(:has(.radio-live-studio)):before{
    background:
      linear-gradient(180deg,rgba(56,4,3,.06),rgba(56,4,3,.18) 55%,rgba(56,4,3,.50)),
      radial-gradient(28rem 16rem at 82% 40%,rgba(255,114,15,.20),transparent 70%);
  }

  .radio-live-shell{padding:8.6rem 0 .65rem}
  .radio-live-card{
    width:min(calc(100% - 5.25rem),80rem);
    height:30rem;
    min-height:30rem;
    border-radius:2.55rem;
    outline-color:color-mix(in oklab,var(--radio-highlight) 30%,transparent);
  }
  .radio-live-badge{left:1.55rem;top:1.45rem}
  .radio-stage-info{left:2.85rem;top:6.95rem;width:43.5%}
  .radio-stage-info h1{font-size:clamp(3.25rem,4.7vw,4.18rem)}
  .radio-stage-description{margin-top:1rem;max-width:35.5rem}
  .radio-stage-host{margin-top:1.25rem}
  .radio-stage-record{right:7.85rem;top:2.72rem;width:22rem;height:22rem}
  .radio-stage-sleeve{border-radius:1.85rem}

  .radio-live-playerbar{
    width:min(calc(100% - 5.25rem),50rem);
    max-width:50rem;
    min-height:4.7rem;
    margin:-2.55rem auto 0;
    padding:.35rem 1.08rem .35rem .35rem;
    gap:.72rem;
    background:rgba(57,17,13,.97);
  }
  .radio-live-volume{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:.55rem;
    min-width:9.5rem;
    color:#fff;
  }
  .radio-live-volume button{
    display:grid;
    place-items:center;
    width:2rem;height:2rem;
    flex:0 0 auto;
    border:0;background:transparent;color:inherit;cursor:pointer;
  }
  .radio-live-volume button svg{width:1.15rem;height:1.15rem}
  .radio-live-volume button .muted{display:none}
  .radio-live-volume[data-muted="true"] button .sound{display:none}
  .radio-live-volume[data-muted="true"] button .muted{display:block}
  .radio-live-volume-track{position:relative;width:6.5rem;height:1.1rem;display:flex;align-items:center}
  .radio-live-volume-track:before{content:"";position:absolute;left:0;right:0;height:.28rem;border-radius:999px;background:rgba(255,255,255,.18)}
  .radio-live-volume-fill{position:absolute;left:0;width:calc(var(--radio-hero-volume,1) * 100%);height:.28rem;border-radius:999px;background:var(--radio-highlight);pointer-events:none}
  .radio-live-volume input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
  .radio-live-track-copy{max-width:21rem}
}

@media(min-width:1024px) and (max-width:1199px){
  .radio-live-card{width:calc(100% - 3rem)}
  .radio-stage-record{right:4.15rem;width:20rem;height:20rem;top:3.65rem}
  .radio-stage-info{left:2.35rem;width:46%}
}


/* Final desktop calibration against the 1440×803 approved capture. */
@media(min-width:1024px){
  .radio-topbar-cluster{position:relative;left:.55rem}
  .radio-live-card{width:min(calc(100% - 5.5rem),79.75rem)}
  .radio-stage-info{top:6.45rem}
  .radio-stage-info h1{margin-top:.3rem}
  .radio-stage-host{margin-top:.85rem}
  .radio-live-playerbar{
    min-height:4.58rem;
    padding:.25rem 1.08rem .25rem .25rem;
  }
  .radio-live-play{width:4.15rem;height:4.15rem}
}

/* Hero volume is a desktop affordance; mobile keeps volume inside the floating player. */
.radio-live-volume{display:none}
@media(min-width:1024px){.radio-live-volume{display:flex}}

/* v0.6.6 mobile hero reconstruction — compact stage, no overlap, reference-like order. */
@media(max-width:639px){
  .radio-topbar{
    position:absolute;
    top:0;left:0;right:0;
    height:auto;
    padding:.8rem .75rem 0;
    align-items:flex-start;
  }
  .radio-topbar-cluster{max-width:100%;height:auto}
  .radio-topbar-logo{width:3.75rem;height:3.75rem;box-shadow:0 10px 28px -12px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.22)}

  .radio-live-stage{min-height:0;background:var(--radio-bg)}
  .radio-live-backdrop{inset:0;height:20rem;border-radius:0;overflow:hidden}
  .radio-live-backdrop:after{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(75,5,5,.42) 62%,var(--radio-brand-deep));opacity:.75}
  .radio-live-studio{object-position:center 62%;filter:saturate(.9) contrast(1.04) brightness(.68);opacity:.78}
  .radio-stage-floor{display:none}
  .radio-live-shell{padding:5.2rem 0 0;width:100%;max-width:none}
  .radio-live-card{
    width:100%;
    height:34.5rem;
    min-height:34.5rem;
    aspect-ratio:auto;
    border-radius:0 0 2rem 2rem;
    outline:0;
    box-shadow:0 24px 42px -30px rgba(0,0,0,.75);
  }
  .radio-cover-wall{inset:-20% -50% 42% -35%;opacity:.26;transform:rotate(-7deg)}
  .radio-cover-wall-row img{width:5rem;height:5rem;border-radius:.85rem}
  .radio-live-wash{background:linear-gradient(180deg,rgba(95,8,7,.26) 0%,rgba(91,8,7,.66) 46%,#640706 72%,#4a0505 100%)}
  .radio-live-spot{display:none}

  .radio-live-badge{left:1rem;top:8.5rem;height:2.4rem;z-index:20}
  .radio-live-badge span{height:2.05rem;padding-inline:.9rem;font-size:.65rem}
  .radio-live-badge b{display:none}

  .radio-stage-record{
    left:50%;right:auto;top:2.4rem;
    width:15.5rem;height:15.5rem;
    transform:translateX(-50%)!important;
  }
  body[data-live-state="playing"] .radio-stage-record,
  body[data-live-state="connecting"] .radio-stage-record{transform:translateX(-50%)!important}
  .radio-stage-vinyl{transform:translateX(15%)}
  body[data-live-state="playing"] .radio-stage-vinyl,
  body[data-live-state="connecting"] .radio-stage-vinyl{transform:translateX(19%)}
  .radio-stage-sleeve{border-radius:1.65rem}

  .radio-stage-info{
    position:absolute;
    left:1rem;right:1rem;bottom:6.45rem;top:auto;
    width:auto;
    padding:0;
    display:block;
    transform:none!important;
    opacity:1!important;
  }
  .radio-stage-info .radio-eyebrow{font-size:.66rem;letter-spacing:.18em;color:var(--radio-highlight)}
  .radio-stage-info h1{
    margin:.42rem 0 0;
    max-width:100%;
    font-size:clamp(2.45rem,12vw,3.55rem);
    line-height:.94;
    letter-spacing:-.055em;
    text-wrap:balance;
  }
  .radio-stage-description{display:none!important}
  .radio-stage-host{margin-top:.85rem;gap:.6rem}
  .radio-host-photo{width:2.4rem;height:2.4rem}
  .radio-stage-host small{font-size:.6rem}.radio-stage-host strong{font-size:.78rem}

  .radio-live-playerbar{
    width:calc(100% - 1rem);
    max-width:none;
    min-height:4.65rem;
    margin:-4.9rem .5rem 0;
    padding:.35rem .75rem .35rem .35rem;
    gap:.65rem;
    border-radius:2.35rem;
    background:rgba(63,14,11,.97);
    box-shadow:inset 0 1px rgba(255,255,255,.13),inset 0 0 0 1px rgba(255,255,255,.07),0 18px 34px -18px rgba(0,0,0,.82);
  }
  .radio-live-play{width:3.95rem;height:3.95rem}
  .radio-live-track-cover{width:3rem;height:3rem;border-radius:.8rem}
  .radio-live-track-copy small{font-size:.58rem}
  .radio-live-track-copy b{font-size:.9rem}
  .radio-live-track-copy em{font-size:.72rem}
  .radio-live-votes,.radio-live-full,.radio-live-volume{display:none!important}

  .radio-home-ambient{padding-top:1.8rem}
  .radio-section{padding-top:3rem}
  .radio-section-head{align-items:flex-start;margin-bottom:1.2rem}
  .radio-section-head h2{font-size:1.72rem}
  .radio-more{padding:.45rem .15rem;font-size:.72rem}
  .radio-page-width{padding-inline:1rem}
}

@media(max-width:380px){
  .radio-live-card{height:33rem;min-height:33rem}
  .radio-stage-record{width:14rem;height:14rem}
  .radio-live-badge{top:7.9rem}
  .radio-stage-info{bottom:6.25rem}
  .radio-stage-info h1{font-size:2.35rem}
}


/* v0.6.7 mobile viewport safety — prevent any decorative/transformed child from widening the page. */
html,body{max-width:100%;overflow-x:hidden}
@supports (overflow:clip){html,body{overflow-x:clip}}
#app-content,.radio-app-page,.radio-live-stage,.radio-live-shell,.radio-home-ambient,.radio-page-width{max-width:100%;min-width:0}
@media(max-width:639px){
  #app-content,.radio-app-page,.radio-live-stage,.radio-live-shell,.radio-live-card,.radio-home-ambient{width:100%;max-width:100%;min-width:0;overflow-x:hidden}
  @supports (overflow:clip){#app-content,.radio-app-page,.radio-live-stage,.radio-live-shell,.radio-home-ambient{overflow-x:clip}}
  .radio-live-card{overflow:hidden}
  .radio-topbar{max-width:100%;overflow:hidden}
  .radio-topbar-cluster{left:0!important;width:100%;max-width:100%;min-width:0}
  .radio-live-playerbar{box-sizing:border-box;max-width:calc(100% - 1rem);min-width:0}
  .radio-live-track-copy{min-width:0;max-width:calc(100% - 8rem)}
  .radio-cover-wall{pointer-events:none}
  .radio-mobile-nav,.radio-player,.radio-consent,.radio-push-panel{max-width:100vw}
}

/* v0.6.8 hard mobile viewport containment.
   The page itself never pans horizontally; horizontal rails keep their own gesture. */
html,body{
  width:100%;
  max-width:100vw;
  overflow-x:hidden!important;
  overscroll-behavior-x:none;
}
@supports (overflow:clip){html,body{overflow-x:clip!important}}
body{position:relative;touch-action:pan-y pinch-zoom}
#app-content,.radio-app-page,.radio-live-stage,.radio-live-shell,.radio-home-ambient{
  width:100%;
  max-width:100%;
  min-width:0;
}
#app-content,.radio-app-page,.radio-live-stage{overflow-x:hidden!important}
@supports (overflow:clip){#app-content,.radio-app-page,.radio-live-stage{overflow-x:clip!important}}
.radio-live-stage{contain:paint}
.radio-rail,.radio-shorts,[class*="overflow-x-auto"]{touch-action:pan-x pan-y}
@media(max-width:639px){
  .radio-topbar{left:0!important;right:0!important;width:100%!important;overflow:visible!important}
  .radio-topbar-cluster{width:auto!important;max-width:calc(100% - 1.5rem)!important;margin-inline:auto!important}
  .radio-live-shell{padding-left:0!important;padding-right:0!important}
  .radio-live-card{margin-left:0!important;margin-right:0!important}
  .radio-live-playerbar{width:calc(100% - 1rem)!important;max-width:calc(100% - 1rem)!important;margin-left:.5rem!important;margin-right:.5rem!important}
  .radio-mobile-nav{width:100%;max-width:100%;left:0;right:0}
}

/* v0.7.0 — mobile-first home composition calibrated against the live reference. */
.radio-mobile-stationbar,.radio-mobile-program-copy,.radio-mobile-shortcuts{display:none}
@media(max-width:639px){
  body{padding-bottom:7.25rem!important}
  .radio-topbar{display:none!important}
  .radio-live-shell{padding-top:0!important}
  .radio-live-backdrop{height:100%!important}
  .radio-live-card{
    height:41.5rem!important;min-height:41.5rem!important;
    border-radius:0 0 2.1rem 2.1rem!important;
    background:var(--radio-stage)!important;
    box-shadow:0 28px 48px -30px rgba(0,0,0,.8)!important;
  }
  .radio-mobile-stationbar{
    position:absolute;z-index:25;left:1.25rem;right:1.25rem;top:1.15rem;
    display:flex;align-items:center;justify-content:space-between;gap:1rem
  }
  .radio-mobile-station-brand{display:flex;align-items:center;min-width:0;gap:.72rem;color:#fff;text-decoration:none}
  .radio-mobile-station-logo{display:grid;width:3.35rem;height:3.35rem;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:999px;background:var(--radio-brand);box-shadow:0 12px 26px -12px #000,0 0 0 1px rgba(255,255,255,.28)}
  .radio-mobile-station-logo img{width:100%;height:100%;object-fit:cover}
  .radio-mobile-station-logo b{font-size:.75rem}.radio-mobile-station-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:"Unbounded",sans-serif;font-size:1.12rem;letter-spacing:-.035em}
  .radio-mobile-hero-menu{position:relative;flex:0 0 auto}.radio-mobile-hero-menu summary{display:grid;width:3.15rem;height:3.15rem;place-items:center;list-style:none;border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:1.45rem;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);backdrop-filter:blur(12px)}
  .radio-mobile-hero-menu summary::-webkit-details-marker{display:none}.radio-mobile-hero-menu>div{position:absolute;z-index:40;right:0;top:3.55rem;display:grid;min-width:10.5rem;padding:.45rem;border-radius:1rem;background:rgba(45,8,7,.96);box-shadow:0 18px 50px -20px #000,inset 0 0 0 1px rgba(255,255,255,.1);backdrop-filter:blur(18px)}.radio-mobile-hero-menu>div a{padding:.7rem .8rem;border-radius:.7rem;color:#fff;font-size:.75rem;font-weight:800}.radio-mobile-hero-menu>div a:active{background:rgba(255,255,255,.1)}
  .radio-live-badge{display:none!important}
  .radio-cover-wall{inset:-7rem -10rem 7rem -10rem!important;opacity:.48!important;transform:rotate(-7deg)!important}
  .radio-cover-wall-row img{width:6rem!important;height:6rem!important}
  .radio-live-wash{background:linear-gradient(180deg,rgba(95,8,7,.24) 0%,rgba(75,6,6,.48) 50%,#520805 80%,#3f0907 100%)!important}
  .radio-stage-record{
    left:50%!important;right:auto!important;top:8.5rem!important;
    width:min(78vw,21.5rem)!important;height:min(78vw,21.5rem)!important;
    transform:translateX(-50%)!important
  }
  .radio-stage-vinyl{display:none!important}
  .radio-stage-sleeve{inset:0!important;border-radius:1.65rem!important;box-shadow:0 24px 48px -20px rgba(0,0,0,.85),0 0 0 1px rgba(255,255,255,.12)!important}
  .radio-stage-info{display:none!important}
  .radio-live-playerbar{
    position:absolute!important;z-index:30!important;left:1rem!important;right:1rem!important;bottom:1.2rem!important;
    width:auto!important;max-width:none!important;min-height:5.25rem!important;margin:0!important;
    display:grid!important;grid-template-columns:4.75rem minmax(0,1fr) auto!important;align-items:center!important;gap:.75rem!important;
    padding:.28rem .25rem .28rem .28rem!important;border-radius:2.7rem!important;
    background:rgba(58,13,10,.92)!important;box-shadow:none!important;backdrop-filter:blur(16px)!important
  }
  .radio-live-play{width:4.45rem!important;height:4.45rem!important;box-shadow:0 12px 24px -12px #000,inset 0 0 0 .2rem rgba(255,255,255,.32)!important}
  .radio-mobile-program-copy{display:block;min-width:0;line-height:1.06;color:#fff}.radio-mobile-program-copy>b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:"Unbounded",sans-serif;font-size:1.26rem;font-weight:900;letter-spacing:-.045em;text-transform:uppercase}.radio-mobile-program-copy>span{display:flex;align-items:baseline;min-width:0;gap:.32rem;margin-top:.42rem;overflow:hidden;color:rgba(255,255,255,.85)}.radio-mobile-program-copy i{color:var(--radio-highlight);font-style:normal;font-weight:900;letter-spacing:.08em}.radio-mobile-program-copy strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.radio-mobile-program-copy em{display:none;font-style:normal;color:rgba(255,255,255,.58);font-size:.68rem}
  .radio-live-track-cover,.radio-live-track-copy{display:none!important}
  .radio-live-votes{display:flex!important;align-items:center;gap:.35rem}.radio-live-votes button{width:3.25rem!important;height:3.25rem!important;border-radius:999px!important;background:rgba(255,255,255,.08)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)!important}.radio-live-votes button svg{width:1.35rem!important;height:1.35rem!important}
  .radio-live-full,.radio-live-volume{display:none!important}
  .radio-home-ambient{padding-top:1.25rem!important}
  .radio-mobile-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:.2rem auto 2.2rem;width:min(100%,26rem);padding:0 .8rem}
  .radio-mobile-shortcuts a{display:grid;justify-items:center;gap:.55rem;color:var(--radio-ink);text-decoration:none;font-size:.85rem}.radio-mobile-shortcuts a>span{display:grid;width:5.5rem;height:5.5rem;place-items:center;border-radius:1.55rem;color:#fff;font-size:1.8rem;font-weight:900;box-shadow:0 18px 28px -18px rgba(0,0,0,.55),inset 0 1px rgba(255,255,255,.32)}.radio-mobile-shortcuts a>span svg{width:2rem;height:2rem}.radio-mobile-shortcuts a>b{font-size:.8rem}.radio-mobile-shortcuts .is-winners>span{background:linear-gradient(145deg,#ffbd2e,#dc5b00)}.radio-mobile-shortcuts .is-videos>span{background:linear-gradient(145deg,#ff6969,#c80013)}.radio-mobile-shortcuts .is-whatsapp>span{background:linear-gradient(145deg,#48dd84,#05a846)}
  .radio-section{padding-top:2.1rem!important}.radio-section-head h2{font-size:2rem!important;line-height:1.03}.radio-section-head .radio-eyebrow{font-size:.62rem;letter-spacing:.18em}

  .radio-mobile-nav{
    inset:auto 1rem calc(.65rem + var(--radio-safe-bottom)) 1rem!important;
    width:auto!important;max-width:none!important;height:5.3rem!important;
    padding:.4rem .45rem!important;border:0!important;border-radius:2rem!important;
    background:color-mix(in oklab,var(--radio-stage) 88%,transparent)!important;color:#fff!important;
    box-shadow:0 20px 50px -18px rgba(0,0,0,.72),inset 0 1px rgba(255,255,255,.18),inset 0 0 0 1px rgba(255,255,255,.1)!important;
    backdrop-filter:blur(22px) saturate(140%)!important;overflow:visible!important
  }
  .radio-mobile-nav>a,.radio-mobile-more>summary{display:grid!important;place-items:center!important;align-content:center!important;gap:.22rem!important;min-width:0!important;padding:.3rem .1rem!important;border-radius:1.35rem!important;color:rgba(255,255,255,.68)!important;font-weight:800!important;list-style:none!important}
  .radio-mobile-nav>a svg{width:1.65rem!important;height:1.65rem!important}.radio-mobile-nav a small,.radio-mobile-more small{font-size:.62rem!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .radio-mobile-nav>a.is-active{color:var(--radio-highlight)!important;background:rgba(255,255,255,.08)!important}.radio-mobile-nav>a.is-active svg{color:var(--radio-highlight)!important}
  .radio-mobile-more{position:relative;min-width:0}.radio-mobile-more summary::-webkit-details-marker{display:none}.radio-mobile-more-dots{font-size:1.55rem;line-height:1;letter-spacing:.08em}.radio-mobile-more-sheet{position:absolute;right:0;bottom:5.65rem;display:grid;width:12rem;padding:.55rem;border-radius:1.2rem;background:rgba(52,12,9,.97);box-shadow:0 22px 60px -22px #000,inset 0 0 0 1px rgba(255,255,255,.12);backdrop-filter:blur(20px)}.radio-mobile-more-sheet a{display:grid;grid-template-columns:2.1rem 1fr;align-items:center;gap:.65rem;padding:.7rem;border-radius:.75rem;color:#fff;font-size:.78rem;font-weight:800}.radio-mobile-more-sheet a svg{width:1.25rem;height:1.25rem}.radio-mobile-more-sheet a>b{display:grid;width:1.5rem;height:1.5rem;place-items:center;border-radius:999px;background:#10b981;font-size:.7rem}.radio-mobile-more-sheet a:active{background:rgba(255,255,255,.1)}

  body[data-hero-visible="false"] .radio-player{
    left:1rem!important;right:1rem!important;bottom:calc(6.35rem + var(--radio-safe-bottom))!important;
    width:auto!important;max-width:none!important;height:4.35rem!important;border-radius:2.2rem!important;touch-action:pan-y!important
  }
  .radio-player-body{display:flex!important;align-items:center!important;gap:.55rem!important;height:100%!important;padding:.4rem .5rem!important}.radio-player-main{flex:1!important;min-width:0!important;gap:.55rem!important}.radio-player-art{width:3.2rem!important;height:3.2rem!important}.radio-player-art>img,.radio-player-art-fallback{width:2.9rem!important;height:2.9rem!important;border-radius:.78rem!important}.radio-player-vinyl{display:none!important}.radio-player-copy strong{font-size:.8rem!important}.radio-player-copy>span:last-child{font-size:.66rem!important}.radio-player-actions{flex:0 0 auto!important;margin:0!important;gap:.25rem!important}.radio-player-actions #player-mute,.radio-player-actions .radio-volume,.radio-player-actions [data-song-request-open],.radio-player-actions .player-vote,.radio-player-actions #player-fullscreen{display:none!important}.radio-player-primary{width:2.75rem!important;height:2.75rem!important}.radio-player-button#player-fold{display:grid!important;width:2.45rem!important;height:2.45rem!important}.radio-player-field{display:none!important}
  .radio-player.is-folded{left:auto!important;right:1rem!important;width:3.5rem!important;height:3.5rem!important;border-radius:1.2rem!important}
}
@media(max-width:380px){
  .radio-live-card{height:39rem!important;min-height:39rem!important}.radio-stage-record{top:8rem!important;width:17.75rem!important;height:17.75rem!important}.radio-live-playerbar{left:.65rem!important;right:.65rem!important;grid-template-columns:4.2rem minmax(0,1fr) auto!important}.radio-live-play{width:3.9rem!important;height:3.9rem!important}.radio-live-votes button{width:2.8rem!important;height:2.8rem!important}.radio-mobile-program-copy>b{font-size:1.05rem}.radio-mobile-shortcuts{gap:.8rem}.radio-mobile-shortcuts a>span{width:4.8rem;height:4.8rem}.radio-mobile-nav{left:.6rem!important;right:.6rem!important}
}


/* v0.7.2 — motion fidelity + real previews in Tocou agora */
.radio-played-preview{appearance:none;border:0;cursor:pointer;text-align:inherit;color:inherit}
.radio-preview-icon{position:absolute;z-index:6;right:.62rem;bottom:.62rem;display:grid;width:2.65rem;height:2.65rem;place-items:center;border-radius:999px;background:color-mix(in oklab,var(--radio-stage) 82%,transparent);color:#fff;box-shadow:0 10px 24px -10px rgba(0,0,0,.75),inset 0 0 0 1px rgba(255,255,255,.22);backdrop-filter:blur(12px);transition:transform .42s var(--radio-spring),background .25s,box-shadow .3s}
.radio-preview-icon svg{width:1.05rem;height:1.05rem}.radio-preview-icon .preview-pause{display:none}.radio-played-preview[data-previewing] .preview-play{display:none}.radio-played-preview[data-previewing] .preview-pause{display:block}.radio-played-preview[data-previewing] .radio-preview-icon{transform:scale(1.08);background:var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:0 0 0 .22rem color-mix(in oklab,var(--radio-highlight) 18%,transparent),0 12px 30px -10px rgba(0,0,0,.72)}
.radio-played-item.is-previewing .radio-liquid-cover{transform:translateY(-5px) scale(1.025)}
.radio-played-item.is-previewing>b{color:var(--radio-accent)}
.radio-played-item.has-preview .radio-liquid-cover:active{transform:scale(.975)}

.radio-schedule-rail,.radio-played-rail,.radio-promo-rail,.radio-shorts-rail{-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scrollbar-width:none;touch-action:pan-x pan-y}
.radio-schedule-rail,.radio-played-rail{scroll-snap-type:x mandatory}
.radio-schedule-slot,.radio-played-item{scroll-snap-stop:normal}

.radio-player,.radio-mobile-nav,.radio-mobile-stationbar,.radio-live-playerbar,.radio-stage-record{will-change:transform,opacity}
.radio-player{transition:opacity .35s,transform .62s var(--radio-spring),box-shadow .5s,visibility 0s linear 0s,width .55s var(--radio-ease),height .55s var(--radio-ease),left .55s var(--radio-spring),right .55s var(--radio-spring),bottom .55s var(--radio-spring),border-radius .5s var(--radio-ease)}
.radio-player.is-track-changing .radio-player-art,.radio-player.is-track-changing .radio-player-copy{animation:radio-track-swap .58s var(--radio-ease)}
#live-hero.is-track-changing .radio-stage-sleeve,#live-hero.is-track-changing .radio-mobile-program-copy{animation:radio-track-swap .58s var(--radio-ease)}
#recently-played.is-track-changing{animation:radio-track-rail .62s var(--radio-ease)}
@keyframes radio-track-swap{0%{opacity:1;transform:none}35%{opacity:.35;transform:translateY(.3rem) scale(.985)}100%{opacity:1;transform:none}}
@keyframes radio-track-rail{0%{opacity:.7;transform:translateX(.35rem)}100%{opacity:1;transform:none}}

@media(max-width:767px){
  .radio-mobile-stationbar{transform:translate3d(0,calc(var(--radio-scroll-progress,0) * -7px),0);opacity:calc(1 - var(--radio-scroll-progress,0) * .12);transition:opacity .15s linear}
  .radio-stage-record{transform:translate3d(-50%,calc(var(--radio-scroll-progress,0) * -10px),0) scale(calc(1 - var(--radio-scroll-progress,0) * .025))!important;transition:filter .35s ease}
  .radio-live-playerbar{transform:translate3d(0,calc(var(--radio-scroll-progress,0) * -4px),0);transition:transform .16s linear,background .35s ease,box-shadow .35s ease}
  .radio-mobile-shortcuts a>span{transition:transform .42s var(--radio-spring),box-shadow .35s ease,filter .3s ease}.radio-mobile-shortcuts a:active>span{transform:scale(.93);filter:saturate(1.08)}
  .radio-mobile-nav{transition:transform .55s var(--radio-spring),opacity .35s,background .35s,box-shadow .35s}.radio-mobile-nav a,.radio-mobile-more>summary{transition:transform .28s var(--radio-spring),background .25s,color .25s}.radio-mobile-nav a:active,.radio-mobile-more>summary:active{transform:scale(.9)}
  body[data-near-bottom="true"] .radio-mobile-nav{transform:translateY(-.15rem)}
  body[data-preview-active="true"] .radio-player{box-shadow:0 22px 55px -20px rgba(0,0,0,.8),0 0 0 1px color-mix(in oklab,var(--radio-highlight) 40%,transparent)!important}
}
@media(prefers-reduced-motion:reduce){.radio-preview-icon,.radio-player,.radio-mobile-nav,.radio-mobile-stationbar,.radio-live-playerbar,.radio-stage-record{transition:none!important;animation:none!important}}

/* v0.8.0 — mobile fidelity pass: geometry, motion continuity and lighter rendering */
@media(max-width:639px){
  /* Performance first: keep movement where the listener perceives it. */
  .radio-live-blob{display:none!important}
  .radio-cover-wall-row{animation:none!important}
  .radio-reveal{filter:none!important;transition:opacity .48s var(--radio-ease),transform .56s var(--radio-ease)!important}
  .radio-reveal:not(.is-visible){transform:translate3d(0,.65rem,0)!important;opacity:.35!important}
  .radio-reveal.is-visible{transform:none!important;opacity:1!important}

  body{padding-bottom:5.85rem!important}
  .radio-live-stage{min-height:0!important;contain:layout paint}
  .radio-live-shell{padding-top:0!important}
  .radio-live-backdrop{height:100%!important;filter:none!important}
  .radio-live-studio{filter:saturate(.92) brightness(.58)!important;transform:scale(calc(1.035 - var(--hero-p)*.018)) translate3d(0,calc(var(--hero-p)*-.35rem),0)!important}

  /* The reference fits the entire hero in roughly one viewport band, not two. */
  .radio-live-card{
    height:23.75rem!important;min-height:23.75rem!important;
    border-radius:0 0 1.8rem 1.8rem!important;
    overflow:hidden!important;
  }
  .radio-live-wash{background:linear-gradient(180deg,rgba(66,8,7,.2) 0%,rgba(68,7,6,.43) 52%,rgba(61,8,6,.9) 82%,#390806 100%)!important}
  .radio-cover-wall{inset:-4rem -5rem 3.6rem -5rem!important;opacity:calc(.43 - var(--hero-p)*.09)!important;transform:translate3d(calc(var(--hero-p)*-.45rem),calc(var(--hero-p)*.4rem),0) rotate(-6deg)!important}
  .radio-cover-wall-row{gap:.7rem!important}.radio-cover-wall-row img{width:4.3rem!important;height:4.3rem!important;border-radius:.72rem!important;filter:saturate(.7) contrast(1.03)!important}

  /* Compact fixed identity bar. */
  .radio-mobile-stationbar{
    position:fixed!important;z-index:58!important;left:.9rem!important;right:.9rem!important;top:.7rem!important;
    padding:.16rem .2rem!important;border-radius:1.55rem;
    transition:background .32s ease,box-shadow .32s ease,backdrop-filter .32s ease,transform .4s var(--radio-spring)!important
  }
  body[data-scrolled="true"] .radio-mobile-stationbar{
    padding:.24rem .32rem!important;background:color-mix(in oklab,var(--radio-stage) 80%,transparent)!important;
    box-shadow:0 12px 34px -20px rgba(0,0,0,.78),inset 0 0 0 1px rgba(255,255,255,.08)!important;
    backdrop-filter:blur(12px) saturate(125%)!important;-webkit-backdrop-filter:blur(12px) saturate(125%)!important
  }
  .radio-mobile-station-logo{width:2.65rem!important;height:2.65rem!important;box-shadow:0 8px 20px -12px #000,0 0 0 1px rgba(255,255,255,.2)!important}
  .radio-mobile-station-brand{gap:.55rem!important}.radio-mobile-station-brand strong{font-size:.94rem!important;letter-spacing:-.035em!important}
  .radio-mobile-hero-menu summary{width:2.65rem!important;height:2.65rem!important;font-size:1.12rem!important;backdrop-filter:blur(9px)!important}

  /* Artwork: about half the viewport width, matching the reference's visual weight. */
  .radio-stage-record{
    top:4.35rem!important;left:50%!important;right:auto!important;
    width:min(50vw,12rem)!important;height:min(50vw,12rem)!important;
    transform:translate3d(-50%,calc(var(--hero-p)*-.45rem),0) scale(calc(1 - var(--hero-p)*.025))!important;
    transition:filter .35s ease!important
  }
  .radio-stage-sleeve{border-radius:1.35rem!important;box-shadow:0 18px 38px -18px rgba(0,0,0,.82),0 0 0 1px rgba(255,255,255,.1)!important}
  .radio-stage-vinyl{display:block!important;left:52%!important;top:7%!important;width:90%!important;height:90%!important;opacity:.92!important;transform:translateX(0)!important}
  .radio-stage-record .radio-stage-vinyl{z-index:0!important}.radio-stage-sleeve{z-index:2!important;position:absolute!important}
  .radio-stage-info{display:none!important}

  /* Hero control bar: compact, integrated, no dead space. */
  .radio-live-playerbar{
    left:.55rem!important;right:.55rem!important;bottom:.45rem!important;
    min-height:4.05rem!important;height:4.05rem!important;
    grid-template-columns:3.65rem minmax(0,1fr) auto!important;gap:.48rem!important;
    padding:.22rem .28rem!important;border-radius:2.2rem!important;
    background:color-mix(in oklab,var(--radio-stage) 91%,transparent)!important;
    box-shadow:0 14px 28px -20px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.08)!important;
    backdrop-filter:blur(10px) saturate(120%)!important;-webkit-backdrop-filter:blur(10px) saturate(120%)!important;
    transform:translate3d(0,calc(var(--hero-p)*.5rem),0) scale(calc(1 - var(--hero-p)*.018))!important;
    opacity:calc(1 - var(--hero-p)*.48)!important
  }
  .radio-live-play{width:3.5rem!important;height:3.5rem!important;box-shadow:0 10px 18px -12px #000,inset 0 0 0 .14rem rgba(255,255,255,.3)!important}
  .radio-live-play svg{width:1.32rem!important;height:1.32rem!important}
  .radio-mobile-program-copy>b{font-size:.93rem!important;line-height:1.02!important}.radio-mobile-program-copy>span{margin-top:.28rem!important;gap:.22rem!important}.radio-mobile-program-copy strong{font-size:.69rem!important}.radio-mobile-program-copy i{font-size:.7rem!important}
  .radio-live-votes{gap:.22rem!important}.radio-live-votes button{width:2.7rem!important;height:2.7rem!important}.radio-live-votes button svg{width:1.14rem!important;height:1.14rem!important}

  .radio-home-ambient{padding-top:.75rem!important}
  .radio-mobile-shortcuts{gap:.85rem!important;margin:.1rem auto 1.25rem!important;width:min(100%,22rem)!important;padding:0 .65rem!important}
  .radio-mobile-shortcuts a{gap:.35rem!important}.radio-mobile-shortcuts a>span{width:4.15rem!important;height:4.15rem!important;border-radius:1.22rem!important;font-size:1.35rem!important;box-shadow:0 12px 22px -16px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.26)!important}.radio-mobile-shortcuts a>span svg{width:1.55rem!important;height:1.55rem!important}.radio-mobile-shortcuts a>b{font-size:.72rem!important}

  .radio-ad{margin-top:.2rem!important;margin-bottom:.7rem!important}
  .radio-section{padding-top:1.35rem!important;padding-bottom:1.2rem!important}.radio-section-head{margin-bottom:.65rem!important}.radio-section-head h2{font-size:1.72rem!important;line-height:1.02!important}.radio-section-head .radio-eyebrow{font-size:.56rem!important;letter-spacing:.17em!important}.radio-more{font-size:.7rem!important}

  /* Schedule: compact rail; show the next card as an affordance. */
  .radio-schedule-rail{gap:.72rem!important;margin-inline:-1rem!important;padding:.15rem 1rem 1rem!important;scroll-padding-inline:1rem!important}
  .radio-schedule-slot{width:8.8rem!important;min-width:8.8rem!important;scroll-snap-align:start!important}
  .radio-slot-time{height:1.05rem!important;margin:0 .18rem .35rem!important;font-size:.58rem!important;padding-left:.08rem!important}.radio-slot-time:before{bottom:-.35rem!important}
  .radio-schedule-slot article{display:grid!important;grid-template-columns:3rem minmax(0,1fr)!important;gap:.5rem!important;min-height:4.05rem!important;padding:.48rem!important;border-radius:1rem!important;cursor:pointer!important;background:color-mix(in oklab,var(--radio-surface) 74%,transparent)!important;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-line) 75%,transparent)!important}
  .radio-schedule-slot .thumb{width:3rem!important;height:3rem!important;border-radius:.78rem!important}.radio-schedule-slot .copy b{font-size:.72rem!important;line-height:1.08!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;white-space:normal!important}.radio-schedule-slot .copy small{font-size:.6rem!important;margin-top:.18rem!important}.radio-schedule-slot em{right:.38rem!important;top:.32rem!important;font-size:.48rem!important;padding:.2rem .35rem!important}
  .radio-schedule-rail>.radio-empty{min-width:calc(100vw - 2rem)!important;min-height:4.5rem!important;padding:1rem!important;border-radius:1rem!important;font-size:.78rem!important}

  /* Tocou agora: image-led cards, ~2.7 cards visible, time badge over artwork. */
  .radio-played-rail{gap:.78rem!important;margin-inline:-1rem!important;padding:.1rem 1rem 1.15rem!important;scroll-padding-inline:1rem!important}
  .radio-played-item{position:relative!important;width:7.35rem!important;min-width:7.35rem!important;scroll-snap-align:start!important}
  .radio-liquid-cover{padding:0!important;border-radius:1.08rem!important;background:transparent!important;box-shadow:0 10px 22px -16px rgba(0,0,0,.52)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .radio-liquid-cover:after{display:none!important}.radio-liquid-cover>img,.radio-liquid-cover>span{border-radius:1.08rem!important}
  .radio-liquid-cover .live-dot{display:none!important}
  .radio-played-item>small{position:absolute!important;z-index:7!important;left:.42rem!important;top:.42rem!important;margin:0!important;max-width:calc(100% - .84rem)!important;padding:.24rem .42rem!important;border-radius:999px!important;background:rgba(30,10,9,.72)!important;color:#fff!important;font-size:.5rem!important;font-weight:850!important;line-height:1!important;backdrop-filter:blur(6px)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .radio-played-item:first-child>small{background:var(--radio-highlight)!important;color:var(--radio-on-highlight)!important;text-transform:uppercase!important}
  .radio-played-item>b{margin-top:.5rem!important;font-size:.73rem!important;line-height:1.08!important}.radio-played-item>span{font-size:.62rem!important;margin-top:.12rem!important}
  .radio-preview-icon{right:.42rem!important;bottom:.42rem!important;width:2.25rem!important;height:2.25rem!important;backdrop-filter:blur(8px)!important}.radio-preview-icon svg{width:.9rem!important;height:.9rem!important}

  /* Persistent mini-player: visibly the same component as the hero bar, just compressed. */
  body[data-hero-visible="true"] .radio-player{
    visibility:visible!important;pointer-events:none!important;
    opacity:calc((var(--radio-scroll-progress) - .5) * 2.25)!important;
    transform:translate3d(0,calc((1 - var(--radio-scroll-progress))*1rem),0) scale(calc(.965 + var(--radio-scroll-progress)*.035))!important;
    transition:none!important
  }
  body[data-hero-visible="false"] .radio-player{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}
  body[data-hero-visible="false"] .radio-player,
  body[data-hero-visible="true"] .radio-player{
    left:.75rem!important;right:.75rem!important;bottom:calc(4.85rem + var(--radio-safe-bottom))!important;
    width:auto!important;max-width:none!important;height:3.65rem!important;border-radius:1.85rem!important;
    background:color-mix(in oklab,var(--radio-stage) 91%,transparent)!important;
    box-shadow:0 14px 36px -20px rgba(0,0,0,.7),inset 0 0 0 1px rgba(255,255,255,.08)!important;
    backdrop-filter:blur(10px) saturate(120%)!important;-webkit-backdrop-filter:blur(10px) saturate(120%)!important
  }
  .radio-player-body{padding:.32rem .4rem!important;gap:.42rem!important}.radio-player-main{gap:.42rem!important}.radio-player-art{width:2.75rem!important;height:2.75rem!important}.radio-player-art>img,.radio-player-art-fallback{width:2.55rem!important;height:2.55rem!important;border-radius:.72rem!important}.radio-player-vinyl{display:block!important;width:2.3rem!important;height:2.3rem!important;left:1.1rem!important;top:.12rem!important}.radio-player-copy strong{font-size:.72rem!important}.radio-player-copy>span:last-child{font-size:.59rem!important}.radio-player-kicker{font-size:.5rem!important}.radio-player-primary{width:2.35rem!important;height:2.35rem!important}.radio-player-button#player-fold{width:2rem!important;height:2rem!important}.radio-player-actions{gap:.12rem!important}
  .radio-player.is-folded{right:.75rem!important;left:auto!important;width:3.25rem!important;height:3.25rem!important;border-radius:1.1rem!important}

  /* Bottom navigation: lower, thinner and lighter than the previous implementation. */
  .radio-mobile-nav{
    inset:auto .75rem calc(.45rem + var(--radio-safe-bottom)) .75rem!important;
    height:4.15rem!important;padding:.3rem .38rem!important;border-radius:1.55rem!important;
    background:color-mix(in oklab,var(--radio-stage) 80%,transparent)!important;
    box-shadow:0 14px 34px -20px rgba(0,0,0,.75),inset 0 1px rgba(255,255,255,.12),inset 0 0 0 1px rgba(255,255,255,.075)!important;
    backdrop-filter:blur(12px) saturate(122%)!important;-webkit-backdrop-filter:blur(12px) saturate(122%)!important
  }
  .radio-mobile-nav>a,.radio-mobile-more>summary{gap:.1rem!important;padding:.2rem .08rem!important;border-radius:1rem!important}.radio-mobile-nav>a svg{width:1.35rem!important;height:1.35rem!important}.radio-mobile-nav a small,.radio-mobile-more small{font-size:.55rem!important}.radio-mobile-more-dots{font-size:1.25rem!important}.radio-mobile-nav>a.is-active{background:radial-gradient(circle at 50% 35%,color-mix(in oklab,var(--radio-highlight) 22%,transparent),transparent 70%)!important;box-shadow:none!important}
  .radio-mobile-more-sheet{bottom:4.55rem!important}

  /* Program detail is a bottom sheet so the Home stays in context. */
  .radio-program-sheet[hidden]{display:none!important}.radio-program-sheet{position:fixed;z-index:95;inset:0;display:grid;align-items:end;pointer-events:none}.radio-program-sheet.is-open{pointer-events:auto}
  .radio-program-sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(18,5,4,.02);backdrop-filter:blur(0);opacity:0;transition:opacity .42s ease,background .42s ease,backdrop-filter .42s ease}
  .radio-program-sheet.is-open .radio-program-sheet-backdrop{opacity:1;background:rgba(18,5,4,.46);backdrop-filter:blur(6px)}
  .radio-program-sheet-panel{position:relative;z-index:2;display:grid;grid-template-columns:6rem minmax(0,1fr);gap:1rem;width:100%;max-height:min(74dvh,34rem);overflow:auto;padding:1rem 1rem calc(1.2rem + var(--radio-safe-bottom));border-radius:1.6rem 1.6rem 0 0;background:color-mix(in oklab,var(--radio-surface) 97%,transparent);box-shadow:0 -26px 70px -32px rgba(0,0,0,.65);transform:translate3d(0,105%,0);transition:transform .52s var(--radio-spring);will-change:transform}
  .radio-program-sheet.is-open .radio-program-sheet-panel{transform:none}.radio-program-sheet-handle{position:absolute;top:.42rem;left:50%;width:2.7rem;height:.24rem;border-radius:999px;background:var(--radio-line);transform:translateX(-50%)}.radio-program-sheet-close{position:absolute;right:.75rem;top:.75rem;display:grid;width:2rem;height:2rem;place-items:center;border:0;border-radius:999px;background:var(--radio-bg);color:var(--radio-ink);font-size:1.2rem}
  .radio-program-sheet-media{display:grid;width:6rem;height:6rem;place-items:center;overflow:hidden;border-radius:1.2rem;background:var(--radio-bg);color:var(--radio-accent);box-shadow:0 12px 28px -20px rgba(0,0,0,.55)}.radio-program-sheet-media img{width:100%;height:100%;object-fit:cover}.radio-program-sheet-media svg{width:1.8rem;height:1.8rem}.radio-program-sheet-copy{padding-top:.7rem}.radio-program-sheet-copy h3{margin:.2rem 2rem 0 0;font-size:1.12rem;line-height:1.08}.radio-program-sheet-copy p{margin:.38rem 0 0;color:var(--radio-muted);font-size:.72rem}.radio-program-sheet-description{grid-column:1/-1}.radio-program-sheet-listen{display:inline-flex;align-items:center;gap:.45rem;margin-top:.7rem;padding:.58rem .78rem;border:0;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:.72rem;font-weight:900}.radio-program-sheet-listen svg{width:.85rem;height:.85rem}
}

@media(max-width:380px){
  .radio-live-card{height:22.7rem!important;min-height:22.7rem!important}
  .radio-stage-record{top:4.1rem!important;width:11rem!important;height:11rem!important}
  .radio-live-playerbar{left:.42rem!important;right:.42rem!important;grid-template-columns:3.35rem minmax(0,1fr) auto!important}.radio-live-play{width:3.2rem!important;height:3.2rem!important}.radio-live-votes button{width:2.45rem!important;height:2.45rem!important}
  .radio-mobile-program-copy>b{font-size:.84rem!important}.radio-mobile-shortcuts a>span{width:3.8rem!important;height:3.8rem!important}
  .radio-mobile-nav{left:.55rem!important;right:.55rem!important}
}

@media(prefers-reduced-motion:reduce){
  .radio-program-sheet-backdrop,.radio-program-sheet-panel,.radio-live-playerbar,.radio-stage-record{transition:none!important}
}
@media(max-width:639px){body[data-program-sheet-open="true"]{overflow:hidden!important;touch-action:none!important}}
@media(max-width:639px){
  body[data-hero-visible="true"] .radio-player.is-folded,
  body[data-hero-visible="false"] .radio-player.is-folded{
    left:auto!important;right:.75rem!important;width:3.25rem!important;max-width:3.25rem!important;height:3.25rem!important;border-radius:1.1rem!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important
  }
}

/* v0.8.1 — Liquid Glass motion layer, persistent brand, Top 12 and listener area */
:root{
  --radio-glass-bg:color-mix(in oklab,var(--radio-stage) 72%,transparent);
  --radio-glass-line:rgba(255,255,255,.16);
  --radio-glass-hi:rgba(255,255,255,.25);
  --radio-glass-shadow:0 18px 46px -24px rgba(0,0,0,.78);
}
.radio-liquid-functional,
.radio-mobile-stationbar,
.radio-program-sheet-panel,
.radio-listener-panel,
.radio-mobile-more-sheet,
.radio-listener-trigger{
  position:relative;
  isolation:isolate;
}
/* Player and bottom navigation keep their fixed positioning; Liquid Glass must never break persistence. */
.radio-player,.radio-mobile-nav{isolation:isolate}
.radio-liquid-functional:before,
.radio-player:after,
.radio-mobile-nav:before,
.radio-mobile-stationbar:before,
.radio-program-sheet-panel:before,
.radio-listener-panel:before,
.radio-mobile-more-sheet:before,
.radio-listener-trigger:before{
  content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(155deg,rgba(255,255,255,.18),rgba(255,255,255,.035) 36%,transparent 58%);
  box-shadow:inset 0 1px rgba(255,255,255,.18),inset 0 0 0 1px rgba(255,255,255,.07);
}
.radio-listener-trigger,.radio-mobile-listener{
  display:grid;place-items:center;width:2.75rem;height:2.75rem;border:0;border-radius:999px;
  background:color-mix(in oklab,var(--radio-stage) 70%,transparent);color:#fff;
  box-shadow:var(--radio-glass-shadow),inset 0 0 0 1px var(--radio-glass-line);backdrop-filter:blur(14px) saturate(135%);-webkit-backdrop-filter:blur(14px) saturate(135%);
  transition:transform .28s var(--radio-spring),background .25s,box-shadow .25s;
}
.radio-listener-trigger svg,.radio-mobile-listener svg{width:1.25rem;height:1.25rem}
.radio-listener-trigger:active,.radio-mobile-listener:active{transform:scale(.91);background:color-mix(in oklab,var(--radio-highlight) 18%,var(--radio-stage))}
.radio-topbar-actions,.radio-mobile-station-actions{display:flex;align-items:center;gap:.42rem}

/* Logo shape follows the actual asset instead of forcing every station into a circle. */
.radio-topbar-logo,.radio-mobile-station-logo{overflow:visible!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}
.radio-topbar-logo img,.radio-mobile-station-logo img{width:100%;height:100%;object-fit:contain!important;border-radius:0!important;filter:drop-shadow(0 9px 14px rgba(0,0,0,.28))}
.radio-topbar-logo span,.radio-mobile-station-logo b{display:grid;width:100%;height:100%;place-items:center;border-radius:1rem;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));box-shadow:0 10px 24px -14px rgba(0,0,0,.7)}

/* Brand remains present across inner pages and becomes part of the background rather than disappearing. */
.radio-brand-atmosphere{position:fixed;z-index:-2;inset:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .5s ease;background:radial-gradient(80% 50% at 88% 5%,color-mix(in oklab,var(--radio-brand) 15%,transparent),transparent 72%),linear-gradient(180deg,color-mix(in oklab,var(--radio-bg) 96%,var(--radio-brand) 4%),var(--radio-bg))}
body[data-page-kind="inner"] .radio-brand-atmosphere{opacity:1}
.radio-brand-atmosphere img{position:absolute;right:-3.5rem;top:5rem;width:min(46vw,24rem);height:min(46vw,24rem);object-fit:contain;opacity:.055;filter:grayscale(.12);transform:rotate(-9deg)}
.radio-brand-atmosphere i{position:absolute;width:22rem;height:22rem;border-radius:999px;filter:blur(72px);opacity:.09;background:var(--radio-brand)}
.radio-brand-atmosphere i:nth-of-type(1){right:-5rem;top:15rem}.radio-brand-atmosphere i:nth-of-type(2){left:-8rem;bottom:6rem;background:var(--radio-highlight);opacity:.045}

/* Schedule record peeks out from behind program artwork like the reference. */
.radio-slot-art{position:relative;flex:0 0 auto;width:4.55rem;height:4rem;display:flex;align-items:center}
.radio-slot-art .thumb{position:relative;z-index:2;flex:0 0 auto}
.radio-slot-vinyl{position:absolute;z-index:1;left:2rem;top:.42rem;width:3.25rem;height:3.25rem;border-radius:999px;background:repeating-radial-gradient(circle,#161616 0 2px,#232323 2px 4px);box-shadow:0 8px 18px -10px #000;transform:translateX(-.85rem) rotate(-22deg) scale(.92);transition:transform .55s var(--radio-spring),opacity .35s;opacity:.72}
.radio-slot-vinyl:after{content:"";position:absolute;inset:35%;border-radius:999px;background:var(--radio-highlight);box-shadow:inset 0 0 0 2px rgba(0,0,0,.25)}
.radio-slot-vinyl i{position:absolute;inset:12%;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.radio-schedule-slot article:hover .radio-slot-vinyl,.radio-schedule-slot.is-live .radio-slot-vinyl,.radio-schedule-row:hover .radio-slot-vinyl,.radio-schedule-row.is-live .radio-slot-vinyl{transform:translateX(.15rem) rotate(8deg) scale(1);opacity:1}

/* Real playback progress: ring around play controls + a fine execution line on media cards. */
.radio-preview-icon,.radio-top12-row-play,.radio-top12-feature-play{background:conic-gradient(var(--radio-highlight) calc(var(--radio-preview-progress,0)*1turn),color-mix(in oklab,var(--radio-stage) 76%,transparent) 0)!important;padding:3px}
.radio-preview-icon:before,.radio-top12-row-play:before,.radio-top12-feature-play:before{content:"";position:absolute;inset:3px;border-radius:inherit;background:color-mix(in oklab,var(--radio-stage) 92%,transparent);z-index:-1}
.radio-preview-progress-line{position:absolute!important;z-index:8;left:.55rem!important;right:.55rem!important;bottom:.38rem!important;height:3px!important;border-radius:99px!important;background:rgba(255,255,255,.2)!important;overflow:hidden!important;pointer-events:none!important}
.radio-preview-progress-line>i{display:block;width:calc(var(--radio-preview-progress,0)*100%);height:100%;border-radius:inherit;background:var(--radio-highlight);box-shadow:0 0 8px color-mix(in oklab,var(--radio-highlight) 70%,transparent);transition:width .12s linear}
.radio-player-progress{position:absolute;z-index:8;left:1.05rem;right:1.05rem;bottom:.22rem;height:2px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden;opacity:0;transition:opacity .25s}
.radio-player-progress i{display:block;height:100%;width:calc(var(--radio-preview-progress,0)*100%);border-radius:inherit;background:var(--radio-highlight);box-shadow:0 0 8px var(--radio-highlight);transition:width .11s linear}
.radio-player[data-mode="preview"] .radio-player-progress{opacity:1}
.radio-player[data-state="connecting"] .radio-player-progress{opacity:1}.radio-player[data-state="connecting"] .radio-player-progress i{width:36%;animation:radio-buffer-line 1.15s ease-in-out infinite}
@keyframes radio-buffer-line{0%{transform:translateX(-110%)}100%{transform:translateX(310%)}}

/* Play and reaction controls flex/light up on touch, like a Liquid Glass control. */
.radio-player-primary,.radio-player-button,.radio-live-votes button,.radio-live-play,.radio-top12-row-play,.radio-top12-feature-play{position:relative;overflow:visible;transition:transform .3s var(--radio-spring),background .25s,color .25s,box-shadow .32s,filter .25s}
.radio-player-primary:active,.radio-player-button:active,.radio-live-votes button:active,.radio-live-play:active,.radio-top12-row-play:active,.radio-top12-feature-play:active{transform:scale(.88)}
.radio-player.is-play-tap .radio-player-primary,.radio-live-playerbar:has([data-player-play]:active) .radio-live-play{animation:radio-play-flex .42s var(--radio-spring)}
@keyframes radio-play-flex{0%{transform:scale(1)}42%{transform:scale(.86)}72%{transform:scale(1.08)}100%{transform:scale(1)}}
[data-reaction].is-active,[data-hero-reaction].is-active{background:var(--radio-highlight)!important;color:var(--radio-on-highlight)!important;box-shadow:0 0 0 .22rem color-mix(in oklab,var(--radio-highlight) 18%,transparent),0 12px 25px -16px rgba(0,0,0,.7)!important}
[data-reaction].is-liquid-pop,[data-hero-reaction].is-liquid-pop{animation:radio-like-pop .46s var(--radio-spring)}
@keyframes radio-like-pop{0%{transform:scale(1)}38%{transform:scale(.83)}68%{transform:scale(1.16)}100%{transform:scale(1)}}
[data-reaction].is-reacting,[data-hero-reaction].is-reacting{filter:brightness(1.15)}

/* Player morph: content never just disappears; it collapses into the bubble. */
.radio-player-body,.radio-player-bubble,.radio-player-art,.radio-player-copy,.radio-player-actions{transition:opacity .34s ease,transform .58s var(--radio-spring),filter .35s ease}
.radio-player-bubble{opacity:0;transform:scale(.6) rotate(-8deg);pointer-events:none}
.radio-player.is-folded .radio-player-bubble{opacity:1;transform:scale(1) rotate(0);pointer-events:auto}
.radio-player.is-folded .radio-player-body{display:flex!important;opacity:0;transform:scale(.72) translate3d(1.2rem,.6rem,0);filter:blur(6px);pointer-events:none}
.radio-player:not(.is-folded) .radio-player-body{opacity:1;transform:none;filter:none}
.radio-player.is-morphing{overflow:visible!important}
.radio-player.is-morphing:before{animation:radio-glass-flash .62s ease}
@keyframes radio-glass-flash{0%,100%{opacity:.35}50%{opacity:.95}}

/* Slowly moving cover wall returns, using only transforms so it stays GPU-friendly. */
@media(max-width:639px){
  .radio-cover-wall-row{animation:radio-wall-mobile 150s linear infinite!important;will-change:transform;transform:translate3d(0,0,0)}
  .radio-cover-wall-row.reverse{animation-duration:180s!important;animation-direction:reverse!important}
  .radio-cover-wall-row img{filter:saturate(.78) contrast(1.02)!important}
  @keyframes radio-wall-mobile{to{transform:translate3d(-28%,0,0)}}
}

/* Automatic Top 12 — one dominant item and compact animated rows. */
.radio-home-top12-grid,.radio-ranking-stage{display:grid;gap:1rem}
.radio-home-top12-feature,.radio-top12-feature{position:relative;display:grid;grid-template-columns:minmax(7.5rem,11rem) minmax(0,1fr);align-items:center;gap:1.2rem;min-height:11rem;padding:1rem;border-radius:1.6rem;background:linear-gradient(135deg,color-mix(in oklab,var(--radio-brand) 88%,#2c0b08),color-mix(in oklab,var(--radio-stage) 95%,#000));color:#fff;overflow:hidden;box-shadow:0 24px 48px -34px rgba(0,0,0,.72)}
.radio-home-top12-cover,.radio-top12-feature-cover{position:relative;z-index:2;display:block;aspect-ratio:1;border:0;padding:0;border-radius:1.25rem;overflow:hidden;background:rgba(255,255,255,.08);color:#fff;box-shadow:0 18px 32px -20px #000;cursor:pointer}
.radio-home-top12-cover img,.radio-top12-feature-cover img,.radio-home-top12-cover>span,.radio-top12-feature-cover>span{width:100%;height:100%;object-fit:cover;display:grid;place-items:center}
.radio-top12-vinyl{position:absolute;z-index:1;left:7.6rem;top:50%;width:8.5rem;height:8.5rem;border-radius:999px;background:repeating-radial-gradient(circle,#141414 0 3px,#252525 3px 5px);transform:translate3d(-32%,-50%,0) rotate(-18deg);box-shadow:0 16px 30px -18px #000;transition:transform .62s var(--radio-spring)}
.radio-home-top12-feature.is-previewing .radio-top12-vinyl,.radio-top12-feature.is-previewing .radio-top12-vinyl{transform:translate3d(-12%,-50%,0) rotate(12deg)}
.radio-top12-vinyl:after{content:"";position:absolute;inset:38%;border-radius:999px;background:var(--radio-highlight)}
.radio-home-top12-feature>div:last-child,.radio-top12-feature-copy{position:relative;z-index:3;min-width:0}.radio-home-top12-feature small,.radio-top12-feature-copy small{text-transform:uppercase;letter-spacing:.12em;color:var(--radio-highlight);font-weight:900}.radio-home-top12-feature h3,.radio-top12-feature-copy h2{margin:.32rem 0 .15rem;font-family:"Unbounded",sans-serif;font-size:1.45rem;line-height:1.05}.radio-home-top12-feature p,.radio-top12-feature-copy p{margin:0;color:rgba(255,255,255,.76)}.radio-home-top12-feature span,.radio-top12-feature-copy span{display:block;margin-top:.5rem;color:rgba(255,255,255,.55);font-size:.72rem}
.radio-top12-feature-play{position:absolute;right:.65rem;bottom:.65rem;z-index:7;display:grid;width:3rem;height:3rem;place-items:center;border-radius:999px;color:#fff}.radio-top12-feature-play svg{width:1rem;height:1rem}.radio-top12-feature-play .preview-pause,.radio-top12-row-play .preview-pause{display:none}[data-previewing] .radio-top12-feature-play .preview-play,[data-previewing].radio-top12-row-play .preview-play{display:none}[data-previewing] .radio-top12-feature-play .preview-pause,[data-previewing].radio-top12-row-play .preview-pause{display:block}
.radio-home-top12-list,.radio-top12-list{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}.radio-home-top12-list li,.radio-top12-row{display:grid;grid-template-columns:2rem 3rem minmax(0,1fr) auto auto;align-items:center;gap:.65rem;min-height:4rem;padding:.5rem .65rem;border-radius:1rem;background:color-mix(in oklab,var(--radio-surface) 90%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-line) 72%,transparent);transition:transform .3s var(--radio-spring),background .25s}.radio-home-top12-list li:active,.radio-top12-row:active{transform:scale(.985)}.radio-home-top12-list li>strong,.radio-top12-row>strong{font-family:"Unbounded";color:var(--radio-accent)}.radio-home-top12-list .rank-cover,.radio-top12-row-art{display:grid;width:3rem;height:3rem;place-items:center;overflow:hidden;border-radius:.72rem;background:var(--radio-bg)}.radio-home-top12-list img,.radio-top12-row-art img{width:100%;height:100%;object-fit:cover}.radio-home-top12-list .copy,.radio-top12-row-copy{min-width:0}.radio-home-top12-list .copy b,.radio-home-top12-list .copy small,.radio-top12-row-copy b,.radio-top12-row-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.radio-home-top12-list .copy small,.radio-top12-row-copy small{color:var(--radio-muted);font-size:.68rem;margin-top:.13rem}.radio-top12-row>em{font-style:normal;color:var(--radio-muted);font-size:.65rem}.radio-home-top12-list button,.radio-top12-row-play{position:relative;display:grid;width:2.25rem;height:2.25rem;place-items:center;border:0;border-radius:999px;color:#fff;cursor:pointer}.radio-home-top12-list button svg,.radio-top12-row-play svg{width:.8rem;height:.8rem}.radio-home-top12-list button i,.radio-top12-row-play i{position:absolute;inset:3px;border-radius:inherit;background:color-mix(in oklab,var(--radio-stage) 92%,transparent);z-index:-1}
.radio-top12-page{padding-top:0}.radio-top12-wrap{padding-top:2rem}.radio-top12-rank{position:absolute;right:1rem;top:.7rem;font-family:"Unbounded";font-size:4rem;font-weight:900;color:rgba(255,255,255,.08)}

/* Listener sheet — Liquid Glass is reserved for navigation/functional controls, not the content canvas. */
.radio-listener-sheet[hidden]{display:none!important}.radio-listener-sheet{position:fixed;z-index:120;inset:0;display:grid;align-items:end;pointer-events:none}.radio-listener-sheet.is-open{pointer-events:auto}.radio-listener-backdrop{position:absolute;inset:0;border:0;background:rgba(17,5,4,0);backdrop-filter:blur(0);transition:background .46s ease,backdrop-filter .46s ease}.radio-listener-sheet.is-open .radio-listener-backdrop{background:rgba(17,5,4,.55);backdrop-filter:blur(9px)}
.radio-listener-panel{position:relative;z-index:2;width:min(100%,31rem);max-height:88dvh;overflow:auto;margin-inline:auto;padding:1.2rem 1rem calc(1.35rem + var(--radio-safe-bottom));border-radius:2rem 2rem 0 0;background:color-mix(in oklab,var(--radio-stage) 86%,transparent);color:#fff;box-shadow:0 -34px 80px -35px rgba(0,0,0,.82),inset 0 0 0 1px rgba(255,255,255,.11);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);transform:translate3d(0,105%,0);transition:transform .58s var(--radio-spring)}.radio-listener-sheet.is-open .radio-listener-panel{transform:none}.radio-listener-handle{display:block;width:2.8rem;height:.24rem;margin:-.55rem auto .85rem;border-radius:999px;background:rgba(255,255,255,.32)}.radio-listener-close{position:absolute;right:.75rem;top:.7rem;display:grid;width:2.15rem;height:2.15rem;place-items:center;border:0;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font-size:1.2rem}.radio-listener-brand{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}.radio-listener-brand img{width:2.85rem;height:2.85rem;object-fit:contain}.radio-listener-brand small,.radio-listener-brand strong{display:block}.radio-listener-brand small{color:rgba(255,255,255,.58);font-size:.63rem;text-transform:uppercase;letter-spacing:.12em}.radio-listener-brand strong{font-family:"Unbounded";font-size:.88rem}.radio-listener-stepper{display:flex;align-items:center;gap:.4rem;margin:.5rem 0 1.15rem}.radio-listener-stepper span{display:flex;align-items:center;gap:.3rem;color:rgba(255,255,255,.4);font-size:.62rem}.radio-listener-stepper span:before{content:"";width:.5rem;height:.5rem;border-radius:999px;background:rgba(255,255,255,.25)}.radio-listener-stepper span.is-active{color:#fff}.radio-listener-stepper span.is-active:before{background:var(--radio-highlight);box-shadow:0 0 0 .2rem color-mix(in oklab,var(--radio-highlight) 18%,transparent)}.radio-listener-stepper i{height:1px;flex:1;background:rgba(255,255,255,.15)}.radio-listener-step{display:none}.radio-listener-step.is-active{display:block;animation:radio-sheet-in .44s var(--radio-ease)}@keyframes radio-sheet-in{from{opacity:0;transform:translateY(.55rem)}to{opacity:1;transform:none}}.radio-listener-panel h2{margin:.3rem 0 .45rem;font-family:"Unbounded";font-size:1.65rem;line-height:1.05}.radio-listener-panel p{margin:0 0 1rem;color:rgba(255,255,255,.68);font-size:.78rem;line-height:1.5}.radio-listener-panel label{display:grid;gap:.35rem;margin-top:.7rem;color:rgba(255,255,255,.82);font-size:.72rem;font-weight:800}.radio-listener-panel input{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:1rem;background:rgba(255,255,255,.08);color:#fff;padding:.78rem .85rem;outline:none;box-shadow:inset 0 1px rgba(255,255,255,.05)}.radio-listener-panel input:focus{border-color:color-mix(in oklab,var(--radio-highlight) 72%,white);box-shadow:0 0 0 3px color-mix(in oklab,var(--radio-highlight) 15%,transparent)}.radio-listener-grid{display:grid;gap:.2rem}.radio-listener-consent{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:.55rem!important}.radio-listener-consent input{width:auto;margin-top:.12rem}.radio-listener-primary,.radio-listener-secondary{width:100%;margin-top:1rem;border:0;border-radius:999px;padding:.82rem 1rem;font-weight:900;transition:transform .3s var(--radio-spring),filter .25s}.radio-listener-primary{background:var(--radio-highlight);color:var(--radio-on-highlight);box-shadow:0 14px 28px -18px var(--radio-highlight)}.radio-listener-secondary{background:rgba(255,255,255,.08);color:#fff}.radio-listener-primary:active,.radio-listener-secondary:active{transform:scale(.97)}.radio-listener-feedback{margin:.75rem 0 -.2rem;border-radius:.8rem;background:rgba(210,46,46,.18);padding:.65rem;color:#ffd8d8;font-size:.72rem}.radio-listener-ready{text-align:center}.radio-listener-check{display:grid;width:4rem;height:4rem;margin:0 auto 1rem;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);font-size:1.8rem;box-shadow:0 0 0 .45rem color-mix(in oklab,var(--radio-highlight) 12%,transparent)}.radio-listener-profile h2{margin-top:.4rem}.radio-listener-profile-actions{display:grid;gap:.55rem;margin-top:1rem}.radio-listener-profile-actions a{display:flex;align-items:center;gap:.7rem;padding:.8rem;border-radius:1rem;background:rgba(255,255,255,.07);color:#fff}.radio-listener-profile-actions svg{width:1.2rem;height:1.2rem;color:var(--radio-highlight)}

/* Mobile inner-page header keeps the station identity present. */
@media(max-width:639px){
  body[data-page-kind="inner"]{padding-top:4.5rem!important}
  body[data-page-kind="inner"] .radio-topbar{display:flex!important;height:4.2rem!important;padding:.6rem .8rem!important;align-items:center!important;background:linear-gradient(180deg,color-mix(in oklab,var(--radio-stage) 78%,transparent),color-mix(in oklab,var(--radio-stage) 52%,transparent));backdrop-filter:blur(16px) saturate(130%);-webkit-backdrop-filter:blur(16px) saturate(130%);box-shadow:0 8px 30px -24px #000;pointer-events:auto!important}
  body[data-page-kind="inner"] .radio-topbar-cluster{width:100%!important;max-width:100%!important;display:flex!important;justify-content:space-between!important;gap:.6rem!important}
  body[data-page-kind="inner"] .radio-topbar-logo{display:grid!important;width:2.9rem!important;height:2.9rem!important;flex:0 0 auto!important}
  body[data-page-kind="inner"] #radio-desktop-nav{display:none!important}
  body[data-page-kind="inner"] .radio-topbar-actions{margin-left:auto}
  .radio-admin-shortcut{display:none!important}
  body[data-page-kind="home"] .radio-topbar{display:none!important}
  .radio-mobile-station-logo{width:2.8rem!important;height:2.8rem!important}
  .radio-mobile-station-actions{display:flex!important}
  .radio-mobile-listener{width:2.65rem;height:2.65rem}
  .radio-mobile-more-sheet button{display:grid;grid-template-columns:2.1rem 1fr;align-items:center;gap:.65rem;width:100%;border:0;background:transparent;color:#fff;text-align:left;padding:.7rem;border-radius:.75rem;font-size:.78rem;font-weight:800}.radio-mobile-more-sheet button svg{width:1.25rem;height:1.25rem}
  .radio-slot-art{width:3.65rem!important;height:3rem}.radio-slot-vinyl{left:1.65rem!important;top:.28rem!important;width:2.55rem!important;height:2.55rem!important;transform:translateX(-.6rem) rotate(-20deg) scale(.9)!important}.radio-schedule-slot.is-live .radio-slot-vinyl,.radio-schedule-row.is-live .radio-slot-vinyl{transform:translateX(.05rem) rotate(7deg) scale(1)!important}
  .radio-home-top12-feature,.radio-top12-feature{grid-template-columns:6.6rem minmax(0,1fr);min-height:8rem;padding:.75rem;border-radius:1.35rem;gap:.8rem}.radio-home-top12-cover,.radio-top12-feature-cover{border-radius:1rem}.radio-top12-vinyl{left:5.6rem;width:6.2rem;height:6.2rem}.radio-home-top12-feature h3,.radio-top12-feature-copy h2{font-size:1rem}.radio-home-top12-feature p,.radio-top12-feature-copy p{font-size:.68rem}.radio-home-top12-list li,.radio-top12-row{grid-template-columns:1.5rem 2.65rem minmax(0,1fr) auto auto;min-height:3.45rem;padding:.4rem .5rem;gap:.45rem}.radio-home-top12-list .rank-cover,.radio-top12-row-art{width:2.65rem;height:2.65rem}.radio-top12-row>em{display:none}.radio-home-top12-list button,.radio-top12-row-play{width:2rem;height:2rem}
  .radio-player[data-mode="preview"]{box-shadow:0 18px 48px -24px rgba(0,0,0,.8),0 0 0 1px color-mix(in oklab,var(--radio-highlight) 35%,transparent),inset 0 1px rgba(255,255,255,.13)!important}
}

@media(min-width:640px){.radio-listener-panel{align-self:center;margin:auto;border-radius:2rem;padding:1.4rem}.radio-listener-sheet{align-items:center}.radio-listener-grid{grid-template-columns:1fr 1fr;gap:.55rem}.radio-top12-wrap{width:min(100% - 2rem,64rem);margin-inline:auto}.radio-home-top12-grid{grid-template-columns:1.1fr .9fr}}

@media(prefers-reduced-motion:reduce){
  .radio-cover-wall-row,.radio-player-progress i,.radio-listener-step,.radio-player.is-play-tap .radio-player-primary,[data-reaction].is-liquid-pop,[data-hero-reaction].is-liquid-pop{animation:none!important}
  .radio-slot-vinyl,.radio-listener-panel,.radio-listener-backdrop,.radio-player-body,.radio-player-bubble{transition:none!important}
}
.radio-topbar-station-name{display:none}
@media(max-width:639px){body[data-page-kind="inner"] .radio-topbar-station-name{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:auto;color:#fff;font-family:"Unbounded",sans-serif;font-size:.88rem;letter-spacing:-.035em}}

/* A preview without a real history identity must never cast a reaction on the live song. */
.radio-player[data-mode="preview"][data-reaction-available="false"] [data-reaction]{opacity:.38;pointer-events:none;filter:saturate(.4)}


/* v0.8.1 final touch feedback — immediate, subtle and compositor-friendly. */
.radio-is-pressed{transform:scale(.965)!important;transition-duration:90ms!important}
/* Listener entry is a persistent part of the station chrome. */
.radio-topbar-brand{display:flex;align-items:center;gap:.55rem;color:#fff;min-width:0}
.radio-topbar-name{display:none;max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:"Unbounded",sans-serif;font-size:.85rem;letter-spacing:-.035em;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.radio-listener-entry{display:flex;min-width:var(--radio-touch);height:2.9rem;align-items:center;gap:.42rem;border:0;border-radius:999px;padding:.28rem .62rem .28rem .3rem;background:color-mix(in oklab,var(--radio-stage) 78%,transparent);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 14px 28px -22px #000;backdrop-filter:blur(12px) saturate(125%);cursor:pointer;transition:transform var(--radio-liquid-fast) var(--radio-liquid-spring),background .28s}
.radio-listener-entry>span{display:grid;width:2.3rem;height:2.3rem;place-items:center;border-radius:999px;background:rgba(255,255,255,.10);font-size:.75rem;font-weight:900}.radio-listener-entry span svg{width:1.05rem;height:1.05rem}.radio-listener-entry span.is-authenticated{background:var(--radio-highlight);color:var(--radio-on-highlight)}
.radio-listener-entry>b{display:none;font-size:.68rem;max-width:5.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Listener area — liquid bottom sheet, kept outside #app-content so it survives Ajax navigation. */
.radio-listener-sheet[hidden]{display:none!important}
.radio-listener-sheet{position:fixed;z-index:120;inset:0;display:grid;align-items:end;pointer-events:none}
.radio-listener-sheet.is-open{pointer-events:auto}
.radio-listener-backdrop{position:absolute;inset:0;border:0;background:rgba(27,5,4,0);opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .48s var(--radio-liquid-ease),background .48s,backdrop-filter .48s}
.radio-listener-sheet.is-open .radio-listener-backdrop{opacity:1;background:rgba(25,5,4,.52);backdrop-filter:blur(8px) saturate(.92);-webkit-backdrop-filter:blur(8px) saturate(.92)}
.radio-listener-panel{position:relative;z-index:2;width:min(100%,42rem);max-height:min(88dvh,49rem);margin-inline:auto;overflow:auto;overscroll-behavior:contain;padding:1.25rem 1.2rem calc(1.4rem + env(safe-area-inset-bottom));border-radius:2rem 2rem 0 0;background:linear-gradient(180deg,color-mix(in oklab,var(--radio-stage) 96%,#fff 4%),color-mix(in oklab,var(--radio-brand-deep) 97%,#000 3%));color:#fff;box-shadow:0 -32px 90px -36px rgba(0,0,0,.85),inset 0 1px rgba(255,255,255,.16),inset 0 0 0 1px rgba(255,255,255,.08);transform:translate3d(0,104%,0) scale(.985);transform-origin:50% 100%;opacity:.82;transition:transform .58s var(--radio-liquid-ease),opacity .38s ease;will-change:transform,opacity}
.radio-listener-sheet.is-open .radio-listener-panel{transform:none;opacity:1}
.radio-listener-handle{position:absolute;left:50%;top:.5rem;width:2.9rem;height:.27rem;border-radius:999px;background:rgba(255,255,255,.28);transform:translateX(-50%)}
.radio-listener-close{position:absolute;z-index:4;right:.85rem;top:.8rem;display:grid;width:2.5rem;height:2.5rem;place-items:center;border:0;border-radius:999px;background:rgba(255,255,255,.09);color:#fff;font-size:1.35rem;cursor:pointer;transition:transform .2s var(--radio-liquid-spring),background .2s}.radio-listener-close:hover{background:rgba(255,255,255,.15)}
.radio-listener-head{padding-top:1rem}.radio-listener-brand{display:flex;align-items:center;gap:.7rem}.radio-listener-brand>span{display:grid;width:3.2rem;height:3.2rem;place-items:center;overflow:hidden;border-radius:999px;background:var(--radio-brand);box-shadow:0 12px 30px -18px #000,0 0 0 1px rgba(255,255,255,.22)}.radio-listener-brand img{width:100%;height:100%;object-fit:cover}.radio-listener-brand svg{width:1.25rem;height:1.25rem}.radio-listener-brand small,.radio-listener-brand b{display:block}.radio-listener-brand small{color:rgba(255,255,255,.58);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.radio-listener-brand b{margin-top:.15rem;font-family:"Unbounded",sans-serif;font-size:.85rem;letter-spacing:-.025em}
.radio-listener-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin:1.15rem 0 1.55rem;padding:0;list-style:none}.radio-listener-steps li{display:flex;align-items:center;justify-content:center;gap:.32rem;border-radius:999px;padding:.4rem .35rem;background:rgba(255,255,255,.055);color:rgba(255,255,255,.48);font-size:.58rem;font-weight:800;transition:background .3s,color .3s,transform .3s var(--radio-liquid-ease)}.radio-listener-steps li b{display:grid;width:1.25rem;height:1.25rem;place-items:center;border-radius:999px;background:rgba(255,255,255,.08);font-size:.53rem}.radio-listener-steps li.is-active{background:color-mix(in oklab,var(--radio-highlight) 14%,transparent);color:#fff}.radio-listener-steps li.is-active b{background:var(--radio-highlight);color:var(--radio-on-highlight)}
.radio-listener-view{animation:radio-listener-view .42s var(--radio-liquid-ease) both}@keyframes radio-listener-view{from{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:none}}
.radio-listener-view>h2{margin:.45rem 0 0;font-family:"Unbounded",sans-serif;font-size:clamp(1.55rem,7vw,2.25rem);line-height:1.04;letter-spacing:-.05em}.radio-listener-view>p{margin:.65rem 0 1rem;color:rgba(255,255,255,.68);font-size:.82rem;line-height:1.45}
.radio-listener-view form{display:grid;gap:.85rem}.radio-listener-view label{display:grid;gap:.35rem;color:rgba(255,255,255,.72);font-size:.66rem;font-weight:800}.radio-listener-view input{width:100%;min-height:3.25rem;border:1px solid rgba(255,255,255,.12);border-radius:1rem;padding:.72rem .85rem;background:rgba(255,255,255,.075);color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.05);outline:none;transition:border-color .22s,background .22s,box-shadow .22s}.radio-listener-view input::placeholder{color:rgba(255,255,255,.35)}.radio-listener-view input:focus{border-color:color-mix(in oklab,var(--radio-highlight) 72%,white);background:rgba(255,255,255,.1);box-shadow:0 0 0 3px color-mix(in oklab,var(--radio-highlight) 15%,transparent)}
.radio-listener-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.radio-listener-primary{display:flex;min-height:3.35rem;align-items:center;justify-content:space-between;border:0;border-radius:1.05rem;padding:.65rem 1rem;background:var(--radio-highlight);color:var(--radio-on-highlight);font-weight:950;box-shadow:0 15px 28px -20px var(--radio-highlight),inset 0 1px rgba(255,255,255,.5);cursor:pointer;transition:transform .22s var(--radio-liquid-spring),box-shadow .25s}.radio-listener-primary:hover{box-shadow:0 18px 30px -17px var(--radio-highlight),inset 0 1px rgba(255,255,255,.55)}.radio-listener-alt{justify-self:start;border:0;padding:.5rem 0;background:none;color:rgba(255,255,255,.72);font-size:.7rem;font-weight:800;cursor:pointer}.radio-listener-legal{display:block;margin-top:1rem;color:rgba(255,255,255,.42);font-size:.58rem;line-height:1.35}.radio-listener-check{grid-template-columns:auto 1fr!important;align-items:start!important}.radio-listener-check input{width:1rem!important;min-height:1rem!important;margin-top:.1rem}.radio-listener-feedback{margin:.8rem 0 0;border-radius:.8rem;padding:.65rem .75rem;background:rgba(255,255,255,.08);font-size:.7rem}.radio-listener-feedback.is-error{background:rgba(255,91,91,.13);color:#ffd1d1}
.radio-listener-profile-hero{display:flex;align-items:center;gap:.85rem}.radio-listener-profile-hero>span{display:grid;width:4.2rem;height:4.2rem;place-items:center;border-radius:999px;background:var(--radio-highlight);color:var(--radio-on-highlight);font-family:"Unbounded",sans-serif;font-size:1.35rem;font-weight:900}.radio-listener-profile-hero small{color:rgba(255,255,255,.56);font-size:.6rem}.radio-listener-profile-hero h2{margin:.1rem 0;font-family:"Unbounded",sans-serif;font-size:1.45rem;line-height:1}.radio-listener-profile-hero p{margin:.25rem 0 0;color:rgba(255,255,255,.58);font-size:.7rem}.radio-listener-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem;margin:1rem 0}.radio-listener-stats article{border-radius:1rem;padding:.8rem;background:rgba(255,255,255,.065)}.radio-listener-stats strong,.radio-listener-stats span{display:block}.radio-listener-stats strong{font-family:"Unbounded",sans-serif;font-size:1.2rem}.radio-listener-stats span{margin-top:.2rem;color:rgba(255,255,255,.52);font-size:.58rem}.radio-listener-profile-links{display:grid;gap:.45rem;margin-top:1rem}.radio-listener-profile-links a,.radio-listener-profile-links button{display:flex;min-height:var(--radio-touch);align-items:center;justify-content:space-between;border:0;border-radius:.9rem;padding:.65rem .75rem;background:rgba(255,255,255,.065);color:#fff;font-size:.72rem;font-weight:850;text-align:left}.radio-listener-profile-links button{color:#ffb7b7}
@media(min-width:640px){.radio-listener-entry>b{display:block}.radio-listener-panel{align-self:center;margin:auto;border-radius:2rem;padding:1.4rem}.radio-listener-sheet{align-items:center}}


/* Native station-logo aspect is preserved everywhere, including listener account. */
.radio-listener-brand>span.has-logo{overflow:visible!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.radio-listener-brand>span.has-logo img{width:100%;height:100%;object-fit:contain!important;border-radius:0!important;filter:drop-shadow(0 8px 14px rgba(0,0,0,.28))}

/* Preview feedback also covers the optional editorial ranking fallback. */
.radio-rank-top-cover .preview-pause,.radio-rank-list button .preview-pause{display:none}
.radio-rank-top-cover[data-previewing] .preview-play,.radio-rank-list button[data-previewing] .preview-play{display:none}
.radio-rank-top-cover[data-previewing] .preview-pause,.radio-rank-list button[data-previewing] .preview-pause{display:block}
.radio-rank-list li>button[data-preview-url]{position:relative;background:conic-gradient(var(--radio-highlight) calc(var(--radio-preview-progress,0)*1turn),rgba(255,255,255,.1) 0)}
.radio-rank-list li>button[data-preview-url]:before{content:"";position:absolute;inset:3px;border-radius:inherit;background:color-mix(in oklab,var(--radio-stage) 94%,transparent);z-index:0}
.radio-rank-list li>button[data-preview-url] svg{position:relative;z-index:2}
.radio-rank-top-cover[data-preview-url] .radio-preview-progress-line{display:block}


/* v0.8.2 — video-reference motion + music surface fidelity */
#live-hero.is-track-changing .radio-stage-sleeve{
  animation:radio-v082-cover-swap .64s cubic-bezier(.16,1,.3,1) both!important;
}
#live-hero.is-track-changing .radio-vinyl-grooves{
  animation:radio-v082-vinyl-swap .78s cubic-bezier(.16,1,.3,1) both;
}
#live-hero.is-track-changing .radio-vinyl-label{
  animation:radio-v082-label-pulse .58s ease both;
}
@keyframes radio-v082-cover-swap{
  0%{opacity:1;filter:none;transform:translate3d(0,0,0) scale(1)}
  34%{opacity:.18;filter:blur(2px);transform:translate3d(-.7rem,.18rem,0) scale(.975)}
  58%{opacity:.4;filter:blur(1px);transform:translate3d(.45rem,0,0) scale(.985)}
  100%{opacity:1;filter:none;transform:translate3d(0,0,0) scale(1)}
}
@keyframes radio-v082-vinyl-swap{
  0%{transform:rotate(0deg);filter:brightness(1)}
  48%{transform:rotate(26deg);filter:brightness(1.12)}
  100%{transform:rotate(42deg);filter:brightness(1)}
}
@keyframes radio-v082-label-pulse{0%,100%{opacity:1;transform:scale(1)}45%{opacity:.45;transform:scale(.88)}}

@media(max-width:639px){
  /* The reference exposes the ranking as two compact columns under the #1 card. */
  .radio-home-top12-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem!important}
  .radio-home-top12-list li{grid-template-columns:1.25rem 2.15rem minmax(0,1fr) 1.75rem!important;gap:.36rem!important;min-height:3rem!important;padding:.34rem .38rem!important;border-radius:.78rem!important}
  .radio-home-top12-list .rank-cover{width:2.15rem!important;height:2.15rem!important;border-radius:.55rem!important}
  .radio-home-top12-list li>strong{font-size:.72rem!important}
  .radio-home-top12-list .copy b{font-size:.63rem!important}.radio-home-top12-list .copy small{font-size:.54rem!important}
  .radio-home-top12-list button{width:1.75rem!important;height:1.75rem!important}
  .radio-home-top12-list li>span:last-of-type{display:none}
}
@media(max-width:360px){.radio-home-top12-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  #live-hero.is-track-changing .radio-stage-sleeve,
  #live-hero.is-track-changing .radio-vinyl-grooves,
  #live-hero.is-track-changing .radio-vinyl-label{animation:none!important}
}


/* v0.8.3 — reference polish: slow bidirectional copy, readable ranking controls, sticky opaque brand */
[data-marquee].is-marquee{
  animation-name:radio-marquee-v083!important;
  animation-timing-function:ease-in-out!important;
  animation-delay:1.25s!important;
  animation-iteration-count:infinite!important;
  animation-direction:alternate!important;
}
@keyframes radio-marquee-v083{
  0%,16%{text-indent:0}
  84%,100%{text-indent:var(--radio-marquee-shift)}
}
.radio-stage-info h1[data-marquee]{
  display:block;max-width:min(48rem,100%);overflow:hidden!important;text-overflow:clip!important;white-space:nowrap!important;text-wrap:nowrap!important;
}
.radio-mobile-program-copy>b[data-marquee]{text-overflow:clip!important}

/* Play must be legible before the first tap, not only while previewing. */
.radio-home-top12-list button[data-preview-url],
.radio-top12-row-play[data-preview-url]{
  position:relative;isolation:isolate;overflow:hidden;
  background:conic-gradient(var(--radio-highlight) calc(var(--radio-preview-progress,0)*1turn),color-mix(in oklab,var(--radio-stage) 86%,#000 14%) 0)!important;
  color:#fff!important;
  box-shadow:0 7px 18px -12px rgba(0,0,0,.78),inset 0 0 0 1px rgba(255,255,255,.13)!important;
}
.radio-home-top12-list button[data-preview-url] i,
.radio-top12-row-play[data-preview-url] i{
  position:absolute!important;inset:3px!important;z-index:0!important;border-radius:inherit!important;
  background:color-mix(in oklab,var(--radio-stage) 94%,#000 6%)!important;
}
.radio-home-top12-list button[data-preview-url] svg,
.radio-top12-row-play[data-preview-url] svg{
  position:relative!important;z-index:2!important;color:#fff!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.4));
}
.radio-home-top12-list button[data-preview-url]:hover,
.radio-top12-row-play[data-preview-url]:hover{transform:translateY(-1px) scale(1.035)}
.radio-home-top12-list button[data-preview-url]:active,
.radio-top12-row-play[data-preview-url]:active{transform:scale(.94)}
.radio-home-top12-list button[data-previewing],
.radio-top12-row-play[data-previewing]{box-shadow:0 0 0 3px color-mix(in oklab,var(--radio-highlight) 16%,transparent),0 8px 18px -11px rgba(0,0,0,.8)!important}

/* Vox-style behavior: identity starts over the hero and becomes a fixed, opaque station bar after scrolling. */
@media(max-width:639px){
  body[data-page-kind="home"][data-scrolled="true"] .radio-mobile-stationbar{
    background:var(--radio-stage)!important;
    box-shadow:0 12px 30px -18px rgba(0,0,0,.75),inset 0 -1px rgba(255,255,255,.06)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  body[data-page-kind="home"][data-scrolled="true"] .radio-mobile-station-logo img{
    filter:drop-shadow(0 4px 8px rgba(0,0,0,.18))!important;
  }
}

.radio-listener-feedback{position:relative;z-index:2;margin:.2rem 0 1rem!important}
.radio-listener-primary[disabled]{cursor:wait;opacity:.82;transform:none!important}
.radio-listener-spinner{display:inline-block;width:1rem;height:1rem;border:2px solid currentColor;border-right-color:transparent;border-radius:999px;animation:radio-listener-spin .7s linear infinite}
@keyframes radio-listener-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  [data-marquee].is-marquee{animation:none!important;text-indent:0!important}
  .radio-listener-spinner{animation:none!important}
}

/* v0.8.4 — Top 12 reference flow + persistent player art layering */
@media(max-width:639px){
  /* Reference behavior: four ranking rows per horizontal page, with the next group peeking in. */
  .radio-home-top12-list,
  .radio-top12-list{
    display:grid!important;
    grid-template-rows:repeat(4,minmax(4.15rem,auto))!important;
    grid-auto-flow:column!important;
    grid-auto-columns:calc(100% - 3.25rem)!important;
    gap:0 1rem!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory;
    scroll-padding-inline:.15rem;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    padding:.05rem 3.25rem .45rem 0!important;
    scrollbar-width:none;
  }
  .radio-home-top12-list::-webkit-scrollbar,
  .radio-top12-list::-webkit-scrollbar{display:none}

  .radio-home-top12-list li,
  .radio-top12-row{
    scroll-snap-align:start;
    grid-template-columns:1.45rem 3rem minmax(0,1fr) 2.2rem!important;
    align-items:center!important;
    gap:.58rem!important;
    min-height:4.15rem!important;
    padding:.48rem .25rem!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-bottom:1px solid color-mix(in oklab,var(--radio-line) 82%,transparent)!important;
  }
  .radio-home-top12-list .rank-cover,
  .radio-top12-row-art{width:3rem!important;height:3rem!important;border-radius:.72rem!important}
  .radio-home-top12-list li>strong,
  .radio-top12-row>strong{font-size:1.05rem!important;line-height:1!important}

  /* v0.8.3 accidentally hid this span because it was the last span child. */
  .radio-home-top12-list li>span.copy,
  .radio-home-top12-list li>span:last-of-type,
  .radio-top12-row-copy{display:block!important;min-width:0!important}
  .radio-home-top12-list .copy b,
  .radio-top12-row-copy b{display:block!important;font-size:.82rem!important;line-height:1.08!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .radio-home-top12-list .copy small,
  .radio-top12-row-copy small{display:block!important;margin-top:.22rem!important;font-size:.68rem!important;line-height:1.05!important;color:var(--radio-muted)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .radio-home-top12-list button,
  .radio-top12-row-play{width:2.2rem!important;height:2.2rem!important;justify-self:end!important}
  .radio-top12-row>em{display:none!important}

  /* Persistent mini player: artwork/vinyl live on a lower visual layer; copy always stays above them. */
  .radio-player-main{position:relative!important;min-height:3.85rem;gap:0!important;isolation:isolate}
  .radio-player-art{position:absolute!important;left:0;top:50%;z-index:1!important;width:4.15rem!important;height:3.85rem!important;transform:translateY(-50%);pointer-events:none}
  .radio-player-art>img,
  .radio-player-art-fallback{z-index:1!important;width:3.45rem!important;height:3.45rem!important}
  .radio-player-vinyl{z-index:0!important}
  .radio-player-copy{position:relative!important;z-index:3!important;flex:1!important;min-width:0!important;padding-left:4.05rem!important;padding-right:.25rem!important}
  .radio-player-copy:before{content:"";position:absolute;z-index:-1;left:3.35rem;right:-.25rem;top:-.38rem;bottom:-.38rem;border-radius:.8rem;background:linear-gradient(90deg,color-mix(in oklab,var(--radio-brand-deep) 36%,transparent),transparent 68%);pointer-events:none}
}

@media(max-width:330px){
  .radio-home-top12-list,
  .radio-top12-list{grid-auto-columns:calc(100% - 1.5rem)!important;padding-right:1.5rem!important}
}


/* v0.8.5 — Vox-style fixed mobile station chrome + current-track folded artwork + unobstructed back-to-top. */
.radio-player-bubble{overflow:hidden!important;border-radius:inherit!important}
.radio-player-folded-art,.radio-player-folded-fallback{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit}
.radio-player-folded-art{z-index:1;display:block;object-fit:cover;object-position:center;filter:saturate(.96) contrast(1.03)}
.radio-player-folded-art[hidden]{display:none!important}
.radio-player-folded-fallback{z-index:1;display:grid;place-items:center;background:linear-gradient(145deg,var(--radio-brand),var(--radio-brand-deep));color:#fff}
.radio-player-folded-fallback[hidden]{display:none!important}
.radio-player-folded-fallback svg{width:1.35rem;height:1.35rem}
.radio-player-folded-live{position:absolute;z-index:3;right:.32rem;bottom:.32rem;width:.72rem;height:.72rem;border-radius:999px;background:rgba(20,8,7,.72);box-shadow:0 2px 8px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.22);backdrop-filter:blur(6px)}
.radio-player-folded-live i{position:absolute;inset:.2rem;border-radius:999px;background:var(--radio-highlight);box-shadow:0 0 7px var(--radio-highlight)}
.radio-player[data-state="playing"] .radio-player-folded-live i{animation:radio-pulse 1.6s ease-in-out infinite}

@media(max-width:639px){
  /* The station identity never drifts/fades with page progress. It stays pinned like the reference. */
  body[data-page-kind="home"] .radio-mobile-stationbar{
    position:fixed!important;z-index:86!important;
    left:.72rem!important;right:.72rem!important;
    top:calc(.5rem + env(safe-area-inset-top,0px))!important;
    transform:none!important;opacity:1!important;
    will-change:auto!important;
    padding:.22rem .3rem!important;border-radius:1.45rem!important;
    transition:background-color .32s ease,box-shadow .32s ease,backdrop-filter .32s ease!important;
  }
  body[data-page-kind="home"][data-scrolled="false"] .radio-mobile-stationbar{
    background:transparent!important;box-shadow:none!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  body[data-page-kind="home"][data-scrolled="true"] .radio-mobile-stationbar{
    background:color-mix(in oklab,var(--radio-brand-deep) 94%,#120706 6%)!important;
    box-shadow:0 10px 30px -18px rgba(0,0,0,.78),inset 0 -1px rgba(255,255,255,.08)!important;
    backdrop-filter:blur(14px) saturate(122%)!important;-webkit-backdrop-filter:blur(14px) saturate(122%)!important;
  }
  body[data-page-kind="home"] .radio-mobile-station-brand strong{opacity:1!important;transform:none!important}

  /* Back-to-top/WhatsApp float above the persistent player instead of hiding behind it. */
  body[data-hero-visible="false"] .radio-fab{
    right:.82rem!important;
    bottom:calc(11.25rem + var(--radio-safe-bottom))!important;
    z-index:72!important;
    transition:bottom .42s var(--radio-spring),transform .32s ease!important;
  }
  body[data-hero-visible="false"][data-player-folded="true"] .radio-fab{
    bottom:calc(10.35rem + var(--radio-safe-bottom))!important;
  }
  body[data-hero-visible="true"] .radio-fab{bottom:calc(6.15rem + var(--radio-safe-bottom))!important}
  .radio-fab-small{background:color-mix(in oklab,var(--radio-stage) 92%,transparent)!important;box-shadow:0 10px 26px -12px rgba(0,0,0,.72),inset 0 0 0 1px rgba(255,255,255,.12)!important;backdrop-filter:blur(12px)}
}

/* v0.8.6 — persistent player artwork is a true outer layer (not clipped by the dark body). */
.radio-player:not(.is-folded){
  overflow:visible!important;
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.radio-player:not(.is-folded):before,
.radio-player:not(.is-folded):after{display:none!important}
.radio-player:not(.is-folded) .radio-player-body{
  position:relative!important;
  z-index:2!important;
  overflow:hidden!important;
  margin-left:1.55rem!important;
  width:calc(100% - 1.55rem)!important;
  border-radius:2.2rem!important;
  background:color-mix(in oklab,var(--radio-brand) 55%,var(--radio-brand-deep))!important;
  color:var(--radio-stage-ink)!important;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.7),0 14px 30px -16px rgba(0,0,0,.45),0 0 44px -18px var(--radio-highlight),inset 0 1px rgba(255,255,255,.18)!important;
  isolation:isolate;
}
.radio-player:not(.is-folded)>.radio-player-art{
  position:absolute!important;
  z-index:5!important;
  left:0!important;
  top:50%!important;
  width:4.7rem!important;
  height:4.7rem!important;
  transform:translateY(-50%)!important;
  overflow:visible!important;
  pointer-events:none!important;
}
.radio-player:not(.is-folded)>.radio-player-art>img,
.radio-player:not(.is-folded)>.radio-player-art>.radio-player-art-fallback{
  z-index:3!important;
  left:0!important;
  top:50%!important;
  width:4.35rem!important;
  height:4.35rem!important;
  transform:translateY(-50%)!important;
  border-radius:1.15rem!important;
  object-fit:cover!important;
  box-shadow:0 14px 28px -12px rgba(0,0,0,.82),0 0 0 1px rgba(255,255,255,.18)!important;
}
.radio-player:not(.is-folded)>.radio-player-art>.radio-player-vinyl{
  z-index:1!important;
  left:2.45rem!important;
  top:50%!important;
  width:3.65rem!important;
  height:3.65rem!important;
  transform:translateY(-50%)!important;
}
.radio-player:not(.is-folded)[data-state="playing"]>.radio-player-art>.radio-player-vinyl,
.radio-player:not(.is-folded)[data-state="connecting"]>.radio-player-art>.radio-player-vinyl{
  transform:translate(34%,-50%)!important;
}
.radio-player:not(.is-folded) .radio-player-main{
  position:relative!important;
  z-index:4!important;
  min-height:3.85rem!important;
  display:flex!important;
  align-items:center!important;
}
.radio-player:not(.is-folded) .radio-player-copy{
  position:relative!important;
  z-index:6!important;
  min-width:0!important;
  flex:1!important;
  padding-left:3.55rem!important;
  padding-right:.25rem!important;
}
.radio-player:not(.is-folded) .radio-player-copy:before{
  content:"";
  position:absolute;
  z-index:-1;
  left:2.85rem;
  right:-.25rem;
  top:-.45rem;
  bottom:-.45rem;
  border-radius:.9rem;
  background:linear-gradient(90deg,color-mix(in oklab,var(--radio-brand-deep) 42%,transparent),transparent 75%);
  pointer-events:none;
}
.radio-player:not(.is-folded) .radio-player-field{z-index:0!important}
.radio-player:not(.is-folded) .radio-player-actions{position:relative!important;z-index:7!important}
.radio-player:not(.is-folded) .radio-player-progress{z-index:9!important}

/* Folded mode remains a self-contained artwork bubble. */
.radio-player.is-folded{
  overflow:hidden!important;
  background:color-mix(in oklab,var(--radio-brand) 55%,var(--radio-brand-deep))!important;
  box-shadow:0 24px 50px -22px rgba(0,0,0,.72),0 0 32px -16px var(--radio-highlight),inset 0 1px rgba(255,255,255,.18)!important;
}
.radio-player.is-folded>.radio-player-art{opacity:0!important;pointer-events:none!important}

@media(max-width:639px){
  body[data-hero-visible="false"] .radio-player:not(.is-folded){
    left:.75rem!important;
    right:.75rem!important;
    width:auto!important;
    height:4.55rem!important;
  }
  .radio-player:not(.is-folded) .radio-player-body{
    margin-left:1.35rem!important;
    width:calc(100% - 1.35rem)!important;
    height:100%!important;
    padding:.35rem .45rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art{
    left:.02rem!important;
    width:4.45rem!important;
    height:4.45rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art>img,
  .radio-player:not(.is-folded)>.radio-player-art>.radio-player-art-fallback{
    width:4.05rem!important;
    height:4.05rem!important;
    border-radius:1.05rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art>.radio-player-vinyl{
    left:2.2rem!important;
    width:3.35rem!important;
    height:3.35rem!important;
  }
  .radio-player:not(.is-folded) .radio-player-main{min-height:3.8rem!important;gap:0!important}
  .radio-player:not(.is-folded) .radio-player-copy{
    padding-left:3.25rem!important;
    padding-right:.15rem!important;
  }
  .radio-player:not(.is-folded) .radio-player-copy strong{font-size:.8rem!important}
  .radio-player:not(.is-folded) .radio-player-copy>span:last-child{font-size:.66rem!important}
}


/* v0.8.8 — correção de regressão: Top 12 em páginas reais e player com artwork externo. */
.radio-home-top12-page,
.radio-top12-page-group{
  margin:0;
  padding:0;
  list-style:none;
}
@media(min-width:640px){
  .radio-home-top12-list,
  .radio-top12-list{
    display:grid!important;
    gap:.55rem!important;
    overflow:visible!important;
  }
  .radio-home-top12-page,
  .radio-top12-page-group{display:contents!important}
}

@media(max-width:639px){
  .radio-home-top12-grid{display:block!important}
  .radio-home-top12-feature{
    grid-template-columns:6.15rem minmax(0,1fr)!important;
    min-height:8.15rem!important;
    gap:.78rem!important;
    padding:.72rem!important;
    margin-bottom:.9rem!important;
    border-radius:1.35rem!important;
  }
  .radio-home-top12-cover{
    width:6.15rem!important;
    height:6.15rem!important;
    aspect-ratio:1!important;
    border-radius:1rem!important;
  }
  .radio-home-top12-feature>div:last-child{
    min-width:0!important;
    align-self:center!important;
  }
  .radio-home-top12-feature h3{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
    margin:.38rem 0 .18rem!important;
    font-size:1.02rem!important;
    line-height:1.06!important;
    overflow-wrap:anywhere!important;
  }
  .radio-home-top12-feature p{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.72rem!important;
  }
  .radio-home-top12-feature>div:last-child>span{
    margin-top:.35rem!important;
    font-size:.62rem!important;
  }
  .radio-top12-vinyl{
    left:5.15rem!important;
    width:5.5rem!important;
    height:5.5rem!important;
  }

  .radio-home-top12-list,
  .radio-top12-list{
    display:flex!important;
    gap:1rem!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    overscroll-behavior-inline:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:0 3.35rem .45rem 0!important;
    margin:0!important;
    scrollbar-width:none!important;
  }
  .radio-home-top12-list::-webkit-scrollbar,
  .radio-top12-list::-webkit-scrollbar{display:none!important}

  .radio-home-top12-page,
  .radio-top12-page-group{
    display:grid!important;
    grid-template-rows:repeat(4,minmax(4.15rem,auto))!important;
    flex:0 0 calc(100% - 3.35rem)!important;
    min-width:calc(100% - 3.35rem)!important;
    gap:0!important;
    scroll-snap-align:start!important;
    scroll-snap-stop:always!important;
  }

  .radio-home-top12-page>li,
  .radio-top12-page-group>.radio-top12-row{
    display:grid!important;
    grid-template-columns:1.5rem 3.2rem minmax(0,1fr) 2.35rem!important;
    align-items:center!important;
    gap:.58rem!important;
    min-height:4.15rem!important;
    padding:.45rem .15rem!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    border-bottom:1px solid color-mix(in oklab,var(--radio-line) 84%,transparent)!important;
  }
  .radio-home-top12-page .rank-cover,
  .radio-top12-page-group .radio-top12-row-art{
    width:3.2rem!important;
    height:3.2rem!important;
    border-radius:.72rem!important;
  }
  .radio-home-top12-page>li>strong,
  .radio-top12-page-group>.radio-top12-row>strong{
    font-size:1.08rem!important;
    line-height:1!important;
  }
  .radio-home-top12-page .copy,
  .radio-top12-page-group .radio-top12-row-copy{
    display:block!important;
    min-width:0!important;
  }
  .radio-home-top12-page .copy b,
  .radio-top12-page-group .radio-top12-row-copy b{
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.82rem!important;
    line-height:1.08!important;
  }
  .radio-home-top12-page .copy small,
  .radio-top12-page-group .radio-top12-row-copy small{
    display:block!important;
    margin-top:.2rem!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    color:var(--radio-muted)!important;
    font-size:.68rem!important;
  }
  .radio-home-top12-page button,
  .radio-top12-page-group .radio-top12-row-play{
    width:2.35rem!important;
    height:2.35rem!important;
    justify-self:end!important;
  }
  .radio-top12-page-group .radio-top12-row>em{display:none!important}

  body[data-hero-visible="false"] .radio-player:not(.is-folded){
    left:.75rem!important;
    right:.75rem!important;
    width:auto!important;
    height:4.08rem!important;
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
    border-radius:0!important;
  }
  .radio-player:not(.is-folded) .radio-player-body{
    z-index:2!important;
    height:3.88rem!important;
    margin-left:2.15rem!important;
    width:calc(100% - 2.15rem)!important;
    overflow:hidden!important;
    border-radius:1.95rem!important;
    padding:.28rem .42rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art{
    z-index:5!important;
    left:-.08rem!important;
    top:50%!important;
    width:4.28rem!important;
    height:4.28rem!important;
    transform:translateY(-50%)!important;
    overflow:visible!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art>img,
  .radio-player:not(.is-folded)>.radio-player-art>.radio-player-art-fallback{
    width:3.92rem!important;
    height:3.92rem!important;
    border-radius:1rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-art>.radio-player-vinyl{
    left:2.05rem!important;
    width:3.25rem!important;
    height:3.25rem!important;
  }
  .radio-player:not(.is-folded) .radio-player-main{
    z-index:4!important;
    min-height:3.32rem!important;
    gap:0!important;
  }
  .radio-player:not(.is-folded) .radio-player-copy{
    z-index:7!important;
    padding-left:1.38rem!important;
    padding-right:.18rem!important;
  }
  .radio-player:not(.is-folded) .radio-player-copy:before{
    left:.72rem!important;
    right:-.18rem!important;
    top:-.35rem!important;
    bottom:-.35rem!important;
    background:linear-gradient(90deg,color-mix(in oklab,var(--radio-brand-deep) 58%,transparent),color-mix(in oklab,var(--radio-brand-deep) 22%,transparent) 48%,transparent 84%)!important;
  }
  .radio-player:not(.is-folded) .radio-player-copy strong{
    font-size:.8rem!important;
    line-height:1.05!important;
  }
  .radio-player:not(.is-folded) .radio-player-copy>span:last-child{font-size:.65rem!important}
}

@media(max-width:330px){
  .radio-home-top12-page,
  .radio-top12-page-group{
    flex-basis:calc(100% - 2.25rem)!important;
    min-width:calc(100% - 2.25rem)!important;
  }
  .radio-home-top12-list,
  .radio-top12-list{padding-right:2.25rem!important}
}

/* v0.8.9 — Área do Ouvinte OTP + conta + promoções */
.radio-listener-sheet{--listener-gold:var(--radio-highlight);--listener-panel:color-mix(in oklab,var(--radio-brand-deep) 82%,#160805);}
.radio-listener-sheet .radio-listener-backdrop{background:color-mix(in oklab,var(--radio-brand-deep) 52%,transparent);backdrop-filter:blur(22px) saturate(1.25)}
.radio-listener-panel{background:linear-gradient(165deg,color-mix(in oklab,var(--radio-brand) 30%,#33100d),var(--listener-panel) 56%,#32100d);color:#fff;border:1px solid rgba(255,255,255,.24);box-shadow:0 -28px 80px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.12);border-radius:2rem 2rem 0 0!important;padding:2.6rem 1.35rem calc(2rem + env(safe-area-inset-bottom))!important;max-height:min(88dvh,880px)!important;overflow-y:auto!important}
.radio-listener-handle{width:4.1rem!important;height:.42rem!important;background:rgba(255,255,255,.35)!important}
.radio-listener-close{width:3.8rem!important;height:3.8rem!important;border:1px solid rgba(255,255,255,.18)!important;background:rgba(20,4,3,.23)!important;font-size:2.1rem!important;color:#fff!important}
.radio-listener-head{margin-bottom:1.7rem!important}
.radio-listener-kicker{display:flex;align-items:center;gap:.8rem;margin-bottom:1.55rem;color:var(--listener-gold);font-family:"Unbounded";font-size:.82rem;letter-spacing:.19em;text-transform:uppercase}
.radio-listener-kicker>span{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:999px;background:linear-gradient(#ffd65b,#f5ae17);color:#251308;box-shadow:0 12px 34px color-mix(in oklab,var(--listener-gold) 60%,transparent)}
.radio-listener-kicker svg{width:1.35rem;height:1.35rem}
.radio-listener-steps{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:.55rem!important;margin:0!important}
.radio-listener-steps li{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:.45rem;min-width:0;color:rgba(255,255,255,.55);font-weight:750;font-size:.82rem;position:relative}
.radio-listener-steps li:not(:last-child):after{content:"";position:absolute;right:-.35rem;top:1.5rem;width:1.35rem;height:1px;background:rgba(255,255,255,.16)}
.radio-listener-steps li b{display:grid!important;place-items:center;width:3rem!important;height:3rem!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:999px!important;background:rgba(255,255,255,.04)!important;font-size:.95rem!important}
.radio-listener-steps li.is-active,.radio-listener-steps li.is-complete{color:#fff!important}
.radio-listener-steps li.is-active b{background:linear-gradient(#ffd55b,#f6ae17)!important;color:#2b1607!important;border-color:transparent!important;box-shadow:0 0 0 .45rem rgba(251,186,40,.13),0 0 28px rgba(251,186,40,.34)}
.radio-listener-steps li.is-complete b{color:var(--listener-gold)!important;border-color:color-mix(in oklab,var(--listener-gold) 65%,transparent)!important}
.radio-listener-steps li.is-complete b:before{content:"✓"}.radio-listener-steps li.is-complete b{font-size:0!important}.radio-listener-steps li.is-complete b:before{font-size:1rem}
.radio-listener-view h2{font-family:"Unbounded"!important;font-size:clamp(1.85rem,8vw,3rem)!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:.4rem 0 .8rem!important;color:#fff!important}
.radio-listener-view>p{font-size:1.05rem!important;line-height:1.6!important;color:rgba(255,255,255,.64)!important;margin-bottom:1.35rem!important}
.radio-listener-view label{display:block;color:#ffd04b!important;font-weight:800!important;font-size:.78rem!important;letter-spacing:.02em}
.radio-listener-view input,.radio-listener-view select,.radio-listener-view textarea{width:100%;margin-top:.25rem;border:1px solid rgba(255,255,255,.14)!important;background:rgba(30,5,4,.42)!important;color:#fff!important;border-radius:1.25rem!important;min-height:4.15rem;padding:.8rem 1rem!important;font-size:1rem!important;box-shadow:none!important}
.radio-listener-view input:focus,.radio-listener-view select:focus,.radio-listener-view textarea:focus{border-color:var(--listener-gold)!important;box-shadow:0 0 0 .42rem rgba(251,186,40,.16),0 0 28px rgba(251,186,40,.16)!important}
.radio-listener-primary{display:flex!important;align-items:center!important;justify-content:center!important;gap:1rem!important;width:100%!important;min-height:4rem!important;margin-top:1rem!important;border-radius:999px!important;background:linear-gradient(#ffd15a,#f5ac17)!important;color:#241507!important;font-weight:900!important;font-size:1rem!important;box-shadow:0 18px 35px rgba(248,177,23,.26)!important}
.radio-listener-primary-link{text-decoration:none!important}
.radio-listener-button-icon{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;border:1px solid rgba(80,40,0,.22);background:rgba(255,255,255,.14);font-size:1.35rem}
.radio-listener-alt{margin-top:1.5rem!important;color:#fff!important;background:none!important;border:0!important;border-bottom:2px solid var(--listener-gold)!important;border-radius:0!important;padding:.2rem 0!important;font-weight:800!important;font-size:.9rem!important}
.radio-listener-legal{display:block;margin-top:1.8rem;color:rgba(255,255,255,.55);font-size:.78rem;line-height:1.55}.radio-listener-legal a{color:#fff;text-decoration:underline;text-decoration-color:var(--listener-gold);text-underline-offset:.28rem}
.radio-listener-feedback{position:sticky;top:0;z-index:5;border-radius:1rem;padding:.7rem .9rem;background:rgba(255,255,255,.12);color:#fff;margin:-.6rem 0 .9rem}.radio-listener-feedback.is-error{background:rgba(255,80,80,.18);color:#ffd0d0}
.radio-listener-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:.8rem!important}.radio-listener-wide{grid-column:1/-1}.radio-listener-check{display:flex!important;align-items:flex-start;gap:.7rem;margin-top:1rem;color:rgba(255,255,255,.72)!important}.radio-listener-check input{width:1rem!important;min-height:0!important;margin:.15rem 0 0!important}
.radio-listener-code-dev{display:block;margin-top:1rem;color:var(--listener-gold);font-size:.72rem}.radio-listener-profile-copy{color:rgba(255,255,255,.7)}

.radio-me-page{padding-top:0}.radio-me-hero{min-height:25rem;padding:7rem max(1.25rem,calc((100vw - 80rem)/2)) 3rem;color:#fff;background:linear-gradient(165deg,color-mix(in oklab,var(--radio-brand-deep) 70%,transparent),color-mix(in oklab,var(--radio-brand) 80%,#35100c)),var(--radio-brand);border-radius:0 0 2.5rem 2.5rem;position:relative;overflow:hidden}.radio-me-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 15%,rgba(255,190,50,.26),transparent 35%),radial-gradient(circle at 24% 70%,rgba(255,255,255,.08),transparent 42%);pointer-events:none}.radio-me-hero>*{position:relative;z-index:1}.radio-me-hero-top{display:flex;align-items:center;gap:.8rem}.radio-me-back{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:1.5rem}.radio-me-station{display:flex;align-items:center;gap:.7rem;font-family:"Unbounded";font-size:1.15rem}.radio-me-station img{width:3rem;height:3rem;border-radius:.8rem;object-fit:contain}.radio-me-avatar{margin-left:auto;display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:linear-gradient(#ffd45a,#f6ae17);color:#2a1608;font-weight:900;box-shadow:0 0 0 .35rem rgba(255,190,50,.13)}.radio-me-hero h1{font-family:"Unbounded";font-size:clamp(2.6rem,9vw,5rem);line-height:1.03;letter-spacing:-.06em;margin:4rem 0 .8rem}.radio-me-hero p{color:rgba(255,255,255,.62);font-size:1.15rem}.radio-me-content{padding-top:3rem}.radio-me-empty{font-size:1.05rem;color:var(--radio-muted);margin-top:1rem}.radio-me-link{display:inline-flex;margin-top:1rem;color:var(--radio-accent);font-weight:900;gap:.5rem}.radio-me-promotions{display:grid;gap:.8rem;margin-top:1.2rem}.radio-me-promo{display:grid;grid-template-columns:4rem 1fr auto;align-items:center;gap:.9rem;padding:.75rem;border-radius:1.25rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line)}.radio-me-promo img{width:4rem;height:4rem;border-radius:.9rem;object-fit:cover}.radio-me-promo span b,.radio-me-promo span small{display:block}.radio-me-promo span small{margin-top:.25rem;color:var(--radio-muted)}.radio-me-promo em{font-style:normal;font-size:1.4rem;color:var(--radio-accent)}
.radio-me-push-card{margin-top:2.4rem;padding:1.2rem;border-radius:2rem;background:linear-gradient(160deg,color-mix(in oklab,var(--radio-brand) 52%,#35100e),var(--radio-brand-deep));color:#fff;box-shadow:0 24px 50px -30px #000}.radio-me-push-preview{display:grid!important;grid-template-columns:3.5rem 1fr!important;gap:.8rem!important;background:#fff!important;color:#231816!important;border-radius:1.25rem!important;padding:.7rem!important}.radio-me-push-preview>span{display:grid;place-items:center;width:3.5rem;height:3.5rem;border-radius:999px;background:var(--radio-bg)}.radio-me-push-preview img{width:2.7rem;height:2.7rem;object-fit:contain}.radio-me-push-preview div{display:grid;grid-template-columns:1fr auto;gap:.1rem .6rem}.radio-me-push-preview p{grid-column:1/-1;margin:0;color:#665a56;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.radio-me-push-copy{display:grid;grid-template-columns:3rem 1fr;gap:1rem;margin:1.5rem 0}.radio-me-bell{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:var(--radio-highlight);color:#2b1607}.radio-me-push-copy h2{font-family:"Unbounded";font-size:1.45rem;line-height:1.15}.radio-me-push-copy p{margin-top:.65rem;color:rgba(255,255,255,.65);line-height:1.65}.radio-me-push-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.radio-me-push-actions>span{font-weight:800;color:rgba(255,255,255,.8)}.radio-me-push-actions button{border:0;border-radius:999px;background:linear-gradient(#ffd45b,#f5ad17);color:#281706;padding:.9rem 1.3rem;font-weight:900;box-shadow:0 14px 30px rgba(251,186,40,.25)}.radio-me-logout{display:flex;width:100%;align-items:center;gap:1rem;margin-top:1rem;padding:.9rem 1.2rem;border-radius:1.2rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line)}.radio-me-logout span{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.85rem;background:var(--radio-accent);color:#fff;font-size:1.4rem}.radio-me-guest{padding-top:8rem;padding-bottom:8rem;min-height:65vh}

.radio-promo-index-hero,.radio-promo-show-hero{padding:7rem max(1.25rem,calc((100vw - 80rem)/2)) 3rem;color:#fff;background:linear-gradient(155deg,color-mix(in oklab,var(--radio-brand) 78%,#5a120d),var(--radio-brand-deep));border-radius:0 0 2.6rem 2.6rem;position:relative;overflow:hidden}.radio-promo-index-hero:after,.radio-promo-show-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 10%,rgba(255,188,50,.18),transparent 32%),radial-gradient(circle at 22% 90%,rgba(255,255,255,.08),transparent 35%);pointer-events:none}.radio-promo-index-hero>* ,.radio-promo-show-hero>*{position:relative;z-index:1}.radio-promo-index-brand,.radio-promo-show-brand{display:flex;align-items:center;gap:.8rem;font-family:"Unbounded";font-size:1.25rem}.radio-promo-index-brand img,.radio-promo-show-brand img{width:3.3rem;height:3.3rem;border-radius:.9rem;object-fit:contain}.radio-promo-index-hero h1,.radio-promo-show-hero h1{font-family:"Unbounded";font-size:clamp(2.7rem,9vw,5rem);line-height:1;letter-spacing:-.055em;margin:3.5rem 0 1rem}.radio-promo-index-hero>p{max-width:40rem;color:rgba(255,255,255,.66);font-size:1.15rem;line-height:1.6}.radio-promo-open-count{display:flex;gap:.7rem;align-items:center;margin-top:1.3rem;color:rgba(255,255,255,.72)}.radio-promo-open-count span{color:var(--radio-highlight);font-size:1.8rem}.radio-promo-winner-strip{display:flex;align-items:center;gap:.8rem;margin-top:1.2rem;padding:.75rem 1rem;border-radius:999px;background:rgba(25,4,3,.23);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px)}.radio-promo-winner-bubbles{display:flex}.radio-promo-winner-bubbles i{display:grid;place-items:center;width:2.5rem;height:2.5rem;margin-left:-.45rem;border-radius:999px;background:var(--radio-highlight);color:#321a08;font-style:normal;font-weight:900;border:2px solid color-mix(in oklab,var(--radio-brand-deep) 80%,#000)}.radio-promo-winner-bubbles i:first-child{margin-left:0}.radio-promo-winner-strip strong{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.radio-promo-winner-strip em{font-style:normal;color:var(--radio-highlight);font-weight:900}.radio-promotions-content{padding-top:2rem}.radio-promo-search{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:.55rem .7rem;border-radius:999px;background:color-mix(in oklab,var(--radio-brand) 17%,var(--radio-surface));box-shadow:0 0 0 1px color-mix(in oklab,var(--radio-brand) 15%,var(--radio-line)),inset 0 1px rgba(255,255,255,.4)}.radio-promo-search>span{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:999px;background:rgba(255,255,255,.18);color:var(--radio-highlight);font-size:1.4rem}.radio-promo-search input,.radio-promo-search select{border:0!important;background:transparent!important;box-shadow:none!important;color:var(--radio-ink)!important}.radio-promo-search select{font-weight:800}.radio-promo-grid-list{margin-top:2.2rem;grid-template-columns:1fr!important;gap:1.5rem}.radio-promo-ticket{border-radius:1.7rem!important;overflow:hidden}.radio-promo-ticket-media{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,var(--radio-brand),var(--radio-brand-deep));overflow:hidden}.radio-promo-ticket-media img{width:100%;height:100%;object-fit:cover}.radio-promo-placeholder{display:grid;place-items:center;width:100%;height:100%;font-family:"Unbounded";font-size:2rem;color:#fff}.radio-promo-ticket-copy{padding:1.2rem 1.35rem}.radio-promo-ticket-copy h2{font-family:"Unbounded";font-size:1.25rem;line-height:1.2}.radio-promo-ticket-copy p{margin-top:.5rem;color:var(--radio-muted)}.radio-promo-ticket-copy small{display:block;margin-top:.5rem;color:var(--radio-muted)}.radio-promo-ticket-stub{display:flex;justify-content:center;padding:1rem 1.2rem 1.25rem;border-top:2px dotted var(--radio-line);position:relative}.radio-promo-ticket-stub:before,.radio-promo-ticket-stub:after{content:"";position:absolute;top:-.7rem;width:1.3rem;height:1.3rem;border-radius:999px;background:var(--radio-bg)}.radio-promo-ticket-stub:before{left:-.65rem}.radio-promo-ticket-stub:after{right:-.65rem}.radio-promo-ticket-stub a{display:inline-flex;align-items:center;gap:.65rem;border:1px solid color-mix(in oklab,var(--radio-accent) 40%,var(--radio-line));border-radius:999px;padding:.72rem 1.2rem;color:var(--radio-accent);font-weight:900}
.radio-promo-show-brand>a{display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);font-size:1.5rem}.radio-promo-show-meta{display:flex;flex-wrap:wrap;gap:.7rem}.radio-promo-show-meta span{display:inline-flex;align-items:center;gap:.5rem;border-radius:999px;padding:.62rem .9rem;background:rgba(25,4,3,.28);border:1px solid rgba(255,255,255,.14)}.radio-promo-show-content{padding-top:2.6rem}.radio-promo-show-cover{overflow:hidden;border-radius:1.8rem;background:var(--radio-surface);box-shadow:0 24px 50px -34px #000}.radio-promo-show-cover img{display:block;width:100%;max-height:35rem;object-fit:cover}.radio-promo-main-cta{display:flex;align-items:center;justify-content:center;gap:.65rem;width:min(100%,17rem);min-height:4rem;margin:0 auto;border:0;border-radius:999px;background:linear-gradient(#ffd45a,#f5ac17);color:#2c1808;font-weight:900;font-size:1.05rem;box-shadow:0 18px 36px rgba(251,186,40,.3);transform:translateY(-1.6rem)}.radio-promo-join-form{max-width:38rem;margin:1.5rem auto 0;padding:1.1rem;border-radius:1.5rem;background:var(--radio-surface);box-shadow:0 0 0 1px var(--radio-line)}.radio-promo-join-form label{display:block;margin-bottom:.85rem;font-weight:800}.radio-promo-join-form input,.radio-promo-join-form textarea,.radio-promo-join-form select{width:100%;margin-top:.3rem;border-radius:1rem}.radio-promo-joined{margin:-1rem auto 1.5rem;width:min(100%,34rem);border-radius:999px;padding:.9rem 1.2rem;background:color-mix(in oklab,var(--radio-highlight) 25%,var(--radio-surface));color:var(--radio-accent);font-weight:900;text-align:center}.radio-promo-show-about{margin-top:1.4rem}.radio-promo-show-about .radio-prose{font-size:clamp(1rem,3vw,1.25rem);line-height:1.8}.radio-promo-share-row{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:2rem;padding-top:1.3rem;border-top:1px solid var(--radio-line)}.radio-promo-share-row>span{margin-right:auto;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.68rem;color:var(--radio-muted)}.radio-promo-share-row a,.radio-promo-share-row button{display:grid;place-items:center;min-width:3rem;height:3rem;border-radius:999px;border:1px solid var(--radio-line);background:var(--radio-surface);font-weight:800}.radio-promo-bottom-cta{display:flex;justify-content:center;margin-top:1.8rem}.radio-promo-bottom-cta button{border:0;border-radius:999px;background:linear-gradient(#ffd45a,#f5ac17);padding:1rem 1.8rem;font-weight:900;color:#2c1808}
@media(min-width:700px){.radio-promo-grid-list{grid-template-columns:repeat(2,minmax(0,1fr))!important}.radio-me-promotions{grid-template-columns:repeat(2,minmax(0,1fr))}.radio-listener-panel{max-width:44rem!important;left:50%!important;right:auto!important;transform:translate(-50%,100%)!important}.radio-listener-sheet.is-open .radio-listener-panel{transform:translate(-50%,0)!important}}
@media(max-width:520px){.radio-listener-panel{padding-left:1.15rem!important;padding-right:1.15rem!important}.radio-listener-steps li span{font-size:.72rem}.radio-listener-grid{grid-template-columns:1fr 1fr!important}.radio-me-hero{padding-top:6.4rem;min-height:24rem}.radio-me-hero h1{margin-top:3.2rem}.radio-promo-index-hero,.radio-promo-show-hero{padding-top:6.4rem}.radio-promo-index-hero h1,.radio-promo-show-hero h1{margin-top:3rem}.radio-promo-search{grid-template-columns:auto minmax(0,1fr) auto}.radio-promo-search select{max-width:7.4rem}.radio-promo-winner-strip{font-size:.8rem}.radio-me-push-actions button{font-size:.82rem;padding:.85rem 1rem}}

/* v0.9.1 — mini player: artwork, clipped body and text are independent layers. */
.radio-player:not(.is-folded){isolation:isolate!important}
.radio-player:not(.is-folded)>.radio-player-art{z-index:5!important}
.radio-player:not(.is-folded)>.radio-player-body{z-index:2!important}
.radio-player:not(.is-folded)>.radio-player-copy-layer{
  position:absolute!important;
  z-index:8!important;
  left:3.55rem!important;
  right:6.8rem!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  min-width:0!important;
  padding:0!important;
  pointer-events:none!important;
  isolation:isolate!important;
}
.radio-player:not(.is-folded)>.radio-player-copy-layer:before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-1.15rem;
  right:-.4rem;
  top:-.48rem;
  bottom:-.48rem;
  border-radius:1rem;
  background:linear-gradient(90deg,color-mix(in oklab,var(--radio-brand-deep) 72%,transparent),color-mix(in oklab,var(--radio-brand-deep) 36%,transparent) 58%,transparent 100%);
  backdrop-filter:blur(2px);
}
.radio-player:not(.is-folded)>.radio-player-copy-layer strong,
.radio-player:not(.is-folded)>.radio-player-copy-layer>span:last-child{
  position:relative!important;
  z-index:2!important;
}
.radio-player:not(.is-folded)>.radio-player-body .radio-player-main-spacer{flex:1!important;min-width:0!important}
.radio-player:not(.is-folded)>.radio-player-body .radio-player-actions{margin-left:auto!important;z-index:9!important}
.radio-player.is-folded>.radio-player-copy-layer{display:none!important}

@media(max-width:639px){
  .radio-player:not(.is-folded)>.radio-player-copy-layer{
    left:3.35rem!important;
    right:5.65rem!important;
  }
  .radio-player:not(.is-folded)>.radio-player-copy-layer strong{font-size:.8rem!important;line-height:1.05!important}
  .radio-player:not(.is-folded)>.radio-player-copy-layer>span:last-child{font-size:.65rem!important}
  .radio-player:not(.is-folded)>.radio-player-copy-layer:before{left:-1.05rem!important;right:-.25rem!important}
}

/* v0.9.1 — organização refinada contra a referência atual, sem alterar dados/conteúdo. */
.radio-section-action{display:flex;justify-content:center;margin-top:1.35rem}
.radio-section-action .radio-more{min-height:2.75rem;padding:.65rem 1rem;border-radius:999px;background:color-mix(in oklab,var(--radio-surface) 72%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--radio-line) 70%,transparent)}
.radio-more-short{display:none}

/* Ranking preview controls are light before tap, with brand-colored play like the reference. */
.radio-home-top12-list button[data-preview-url],
.radio-top12-row-play[data-preview-url]{
  background:conic-gradient(var(--radio-highlight) calc(var(--radio-preview-progress,0)*1turn),color-mix(in oklab,#fff 94%,var(--radio-bg)) 0)!important;
  color:var(--radio-accent)!important;
  box-shadow:0 8px 18px -12px rgba(0,0,0,.42),inset 0 0 0 1px color-mix(in oklab,var(--radio-line) 75%,transparent)!important;
}
.radio-home-top12-list button[data-preview-url] i,
.radio-top12-row-play[data-preview-url] i{background:color-mix(in oklab,#fff 96%,var(--radio-bg))!important}
.radio-home-top12-list button[data-preview-url] svg,
.radio-top12-row-play[data-preview-url] svg{color:var(--radio-accent)!important;filter:none!important}

@media(max-width:639px){
  /* Full-width adaptive station bar; no floating capsule after scroll. */
  body[data-page-kind="home"] .radio-mobile-stationbar{
    left:0!important;right:0!important;top:0!important;
    padding:calc(.55rem + env(safe-area-inset-top,0px)) 1rem .55rem!important;
    border-radius:0!important;
  }
  body[data-page-kind="home"][data-scrolled="true"] .radio-mobile-stationbar{
    background:color-mix(in oklab,var(--radio-brand-deep) 94%,#120706 6%)!important;
    box-shadow:0 10px 28px -18px rgba(0,0,0,.8),inset 0 -1px rgba(255,255,255,.1)!important;
  }
  .radio-more-long{display:none}.radio-more-short{display:inline}
}
/* v0.9.1 — account push prompt matches the optional card behavior of the reference. */
.radio-me-push-dismiss{border:0;background:transparent;color:rgba(255,255,255,.82);font-weight:800;padding:.6rem .15rem;text-decoration:underline;text-decoration-color:var(--radio-highlight);text-underline-offset:.3rem}
/* v0.9.1 — promotion reference parity: how-to section and real success confirmation. */
.radio-promo-how{margin-top:3.2rem;padding:2rem 0 1rem}.radio-promo-how>p{margin-top:.7rem;color:var(--radio-muted)}.radio-promo-how ol{display:grid;gap:.9rem;margin:1.5rem 0}.radio-promo-how li{display:grid;grid-template-columns:3rem 1fr;gap:.85rem;align-items:start;padding:1rem;border-radius:1.25rem;background:color-mix(in oklab,var(--radio-surface) 92%,transparent);box-shadow:0 0 0 1px var(--radio-line)}.radio-promo-how li>b{font-family:"Unbounded";color:var(--radio-accent);font-size:1.1rem}.radio-promo-how li span{display:grid;gap:.2rem}.radio-promo-how li strong{font-weight:900}.radio-promo-how li small{color:var(--radio-muted);line-height:1.4}.radio-promo-how>.radio-more{display:inline-flex;margin-top:.2rem}
.radio-promo-success-overlay{position:fixed;inset:0;z-index:160;display:flex;align-items:flex-end;justify-content:center;background:rgba(19,4,3,.56);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.radio-promo-success-sheet{position:relative;width:min(100%,44rem);max-height:92dvh;overflow:auto;border-radius:2.4rem 2.4rem 0 0;padding:2.8rem 1.35rem calc(2rem + env(safe-area-inset-bottom));background:linear-gradient(160deg,color-mix(in oklab,var(--radio-brand) 60%,#3b100c),var(--radio-brand-deep));color:#fff;box-shadow:0 -28px 70px -36px #000}.radio-promo-sheet-handle{position:absolute;top:.9rem;left:50%;width:4rem;height:.38rem;transform:translateX(-50%);border-radius:999px;background:rgba(255,255,255,.32)}.radio-promo-success-close{position:absolute;right:1rem;top:1.35rem;display:grid;place-items:center;width:3rem;height:3rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(27,5,4,.28);color:#fff;font-size:2rem}.radio-promo-success-steps{display:flex;align-items:center;justify-content:space-between;gap:.55rem;margin:2rem 0 1.6rem}.radio-promo-success-steps li{display:flex;align-items:center;gap:.38rem;color:rgba(255,255,255,.75);font-weight:800}.radio-promo-success-steps .is-complete{color:var(--radio-highlight)}.radio-promo-success-steps span{color:#fff}.radio-promo-success-check{display:grid;place-items:center;width:5rem;height:5rem;border-radius:999px;background:linear-gradient(#ffd45a,#f5ac17);color:#2a1606;font-size:2.4rem;box-shadow:0 16px 30px rgba(251,186,40,.25)}.radio-promo-success-sheet h2{margin-top:1.4rem;font-family:"Unbounded";font-size:clamp(2rem,8vw,3.1rem);line-height:1.05}.radio-promo-success-sheet>p{margin-top:.75rem;color:rgba(255,255,255,.7);font-size:1.05rem;line-height:1.65}.radio-promo-success-share{display:grid;gap:.45rem;margin-top:1.8rem;padding:1.2rem;border-radius:1.4rem;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06)}.radio-promo-success-share>span{color:rgba(255,255,255,.66)}.radio-promo-success-share>div{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.45rem}.radio-promo-success-share a,.radio-promo-success-share button{border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:.7rem .9rem;font-weight:800}.radio-promo-success-more{display:inline-flex;margin-top:1.4rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.85rem 1.1rem;color:#fff;font-weight:900}

/* v0.9.1 — account access aligned across promotion pages. */
.radio-promo-index-top,.radio-promo-show-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.radio-promo-account{display:grid;place-items:center;width:3.35rem;height:3.35rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(22,5,4,.18);color:#fff;backdrop-filter:blur(12px)}
.radio-promo-account>span{display:grid;place-items:center;width:100%;height:100%;font-family:"Unbounded";font-weight:900}.radio-promo-account svg{width:1.3rem;height:1.3rem}
.radio-promo-account .is-authenticated{background:linear-gradient(#ffd45a,#f5ac17);color:#2a1606;border-radius:inherit}

/* v0.9.3 — hero player behavior measured from the approved video reference. */
.radio-stage-sleeve>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.radio-stage-sleeve-current{z-index:2;opacity:1;filter:blur(0);transform:scale(1);transition:opacity .68s ease,filter .68s ease,transform .78s var(--radio-ease)}
.radio-stage-sleeve-previous{z-index:3;opacity:1;filter:blur(0);transform:scale(1);transition:opacity .68s ease,filter .68s ease,transform .78s var(--radio-ease)}
.radio-stage-sleeve-empty{position:absolute;z-index:1;inset:0}
.radio-stage-sleeve.is-art-transitioning .radio-stage-sleeve-current{opacity:0;filter:blur(12px);transform:scale(.985)}
.radio-stage-sleeve.is-art-transitioning.is-art-loaded .radio-stage-sleeve-current{opacity:1;filter:blur(0);transform:scale(1)}
.radio-stage-sleeve.is-art-transitioning.is-art-loaded .radio-stage-sleeve-previous{opacity:0;filter:blur(12px);transform:scale(1.025)}
.radio-vinyl-label .radio-vinyl-station-logo{width:100%;height:100%;object-fit:contain!important;padding:8%;background:transparent}

[data-hero-music-line][hidden],
[data-hero-host-line][hidden],
[data-hero-music-votes][hidden]{display:none!important}

@media(max-width:639px){
  /* The controls belong to the hero itself; there is no second capsule behind them. */
  .radio-live-playerbar{
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    border-radius:0!important;
    left:.82rem!important;right:.82rem!important;bottom:.68rem!important;
    min-height:4.45rem!important;height:4.45rem!important;
    grid-template-columns:3.65rem minmax(0,1fr) auto!important;
    gap:.58rem!important;padding:0!important;
  }
  .radio-mobile-program-copy{display:block!important;min-width:0!important;overflow:hidden!important;line-height:1.02!important}
  .radio-mobile-program-copy>b{
    font-size:1.13rem!important;line-height:1.02!important;letter-spacing:-.05em!important;
    overflow:hidden!important;white-space:nowrap!important;text-overflow:clip!important
  }
  .radio-mobile-program-copy>span{margin-top:.34rem!important;min-width:0!important;overflow:hidden!important}
  .radio-mobile-music-line{display:flex!important;align-items:center!important;gap:.28rem!important;white-space:nowrap!important;color:rgba(255,255,255,.86)!important}
  .radio-mobile-music-line strong{display:block!important;min-width:0!important;max-width:58%!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:clip!important;font-size:.72rem!important;color:#fff!important}
  .radio-mobile-music-line em{display:block!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;font-size:.69rem!important;color:rgba(255,255,255,.66)!important;font-style:normal!important}
  .radio-mobile-music-line em:not(:empty)::before{content:"· ";color:rgba(255,255,255,.45)}
  .radio-mobile-eq{display:flex!important;flex:0 0 .85rem!important;height:.78rem!important;align-items:flex-end!important;gap:2px!important;color:var(--radio-highlight)!important}
  .radio-mobile-eq>b{display:block!important;width:2px!important;border-radius:2px!important;background:currentColor!important;animation:radio-v093-eq .72s ease-in-out infinite alternate!important}
  .radio-mobile-eq>b:nth-child(1){height:42%!important}.radio-mobile-eq>b:nth-child(2){height:92%!important;animation-delay:-.28s!important}.radio-mobile-eq>b:nth-child(3){height:63%!important;animation-delay:-.52s!important}
  @keyframes radio-v093-eq{to{height:25%}}

  .radio-mobile-host-line{display:flex!important;align-items:center!important;gap:.34rem!important;color:rgba(255,255,255,.78)!important;white-space:nowrap!important}
  .radio-mobile-host-avatar{position:relative;display:grid!important;flex:0 0 1.22rem!important;width:1.22rem!important;height:1.22rem!important;place-items:center!important;overflow:hidden!important;border-radius:999px!important;background:color-mix(in oklab,var(--radio-highlight) 42%,var(--radio-brand))!important;box-shadow:0 0 0 1px rgba(255,255,255,.24)!important;font-style:normal!important}
  .radio-mobile-host-avatar img{width:100%!important;height:100%!important;object-fit:cover!important}
  .radio-mobile-host-avatar>b{font-size:.56rem!important;line-height:1!important;color:#fff!important}
  .radio-mobile-host-line>span{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:.72rem!important}
  .radio-mobile-host-line small{font-size:.69rem!important;color:rgba(255,255,255,.62)!important}
  .radio-mobile-host-line strong{font-size:.72rem!important;color:#fff!important;font-weight:850!important}
  .radio-mobile-host-line em{font-size:.69rem!important;color:rgba(255,255,255,.62)!important;font-style:normal!important}

  #live-hero[data-content-kind="program"] .radio-mobile-program-copy>b{max-width:100%!important}
  #live-hero[data-content-kind="music"] .radio-live-votes{display:flex!important}
  #live-hero[data-content-kind="program"] .radio-live-votes{display:none!important}
  #live-hero[data-content-kind="program"] .radio-mobile-program-copy{padding-right:.25rem!important}
}

@media(max-width:360px){
  .radio-mobile-program-copy>b{font-size:1.01rem!important}
  .radio-mobile-music-line strong{max-width:52%!important;font-size:.67rem!important}
  .radio-mobile-music-line em,.radio-mobile-host-line>span,.radio-mobile-host-line small,.radio-mobile-host-line strong,.radio-mobile-host-line em{font-size:.64rem!important}
}

@media(prefers-reduced-motion:reduce){
  .radio-stage-sleeve-current,.radio-stage-sleeve-previous{transition:none!important}
  .radio-mobile-eq>b{animation:none!important}
}

/* v0.9.4 — frame-accurate hero-player timing and presenter handoff. */
.radio-stage-sleeve-current,
.radio-stage-sleeve-previous{
  transition:opacity .46s ease,filter .46s ease,transform .50s var(--radio-ease)!important;
}
.radio-stage-sleeve.is-art-transitioning .radio-stage-sleeve-current{
  opacity:0!important;filter:blur(14px)!important;transform:scale(.988)!important;
}
.radio-stage-sleeve.is-art-transitioning.is-art-loaded .radio-stage-sleeve-current{
  opacity:1!important;filter:blur(0)!important;transform:scale(1)!important;
}
.radio-stage-sleeve.is-art-transitioning.is-art-loaded .radio-stage-sleeve-previous{
  opacity:0!important;filter:blur(14px)!important;transform:scale(1.018)!important;
}
.radio-mobile-host-avatar img{opacity:0;transition:opacity .18s ease!important}
.radio-mobile-host-avatar img.is-loaded{opacity:1}

@media(max-width:639px){
  /* Program is always the primary title. Reactions only reduce its available width while music is playing. */
  #live-hero[data-content-kind="music"] .radio-mobile-program-copy{padding-right:.1rem!important}
}


/* v0.9.5 — player parity: program fallback, vinyl rotation and measured ping-pong copy. */
@keyframes radio-v095-vinyl-spin{to{transform:rotate(360deg)}}
#live-hero .radio-vinyl-grooves,
#live-hero .radio-vinyl-label{
  transform-origin:50% 50%;
  animation:radio-v095-vinyl-spin 9.5s linear infinite;
}
/* Track-swap pulse temporarily owns transform, then continuous spin resumes. */
#live-hero.is-track-changing .radio-vinyl-grooves,
#live-hero.is-track-changing .radio-vinyl-label{animation-duration:.78s!important}

/* Persistent player reactions are musical controls; hide them for station material/program state. */
#radio-player[data-content-kind="program"] .player-vote{display:none!important}

/* The program title travels slowly between two measured endpoints only when it overflows. */
@media(max-width:639px){
  #live-hero .radio-mobile-program-copy>b.is-marquee{
    animation-name:radio-v095-program-pingpong!important;
    animation-timing-function:ease-in-out!important;
    animation-direction:alternate!important;
    animation-iteration-count:infinite!important;
    animation-delay:.9s!important;
  }
}
@keyframes radio-v095-program-pingpong{
  0%,14%{text-indent:0}
  86%,100%{text-indent:var(--radio-marquee-shift)}
}
@media(max-width:639px){
  /* In program mode the wider copy usually fits and naturally stops. If it still
     overflows, keep the same two-point motion instead of clipping the title. */
  #live-hero[data-content-kind="program"] .radio-mobile-program-copy>b.is-marquee{
    animation-name:radio-v095-program-pingpong!important;
    animation-timing-function:ease-in-out!important;
    animation-direction:alternate!important;
    animation-iteration-count:infinite!important;
    animation-delay:.9s!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #live-hero .radio-vinyl-grooves,#live-hero .radio-vinyl-label,
  #live-hero .radio-mobile-program-copy>b.is-marquee{animation:none!important}
}
