/* ============================================================
   McCluster Music V2 — MOBILE FIRST

   Canonical viewport: iPhone-size portrait.
   Product model: Apple Music iOS hierarchy, McCluster identity.
   Tablet/desktop styles only expand the mobile product; they do not
   introduce a second layout grammar.
   ============================================================ */

body.music-v2{
  --music-bg:#050506;
  --music-bg-raised:#101013;
  --music-surface:#17171a;
  --music-surface-2:#202024;
  --music-border:rgba(255,255,255,.09);
  --music-text:#f7f7f8;
  --music-muted:#a1a1a7;
  --music-faint:#6f7076;
  --music-accent:#e5383b;
  --music-accent-soft:rgba(229,56,59,.17);
  --music-good:#77d892;
  --music-shell:calc(100vw - 24px);
  --music-card:min(45vw,11.5rem);
  --music-radius:12px;

  /* Force the music product to stay dark even when the wider site is light. */
  --cream:#f7f7f8;
  --cream-dim:#a1a1a7;
  --ink:#050506;
  --bone:#f7f7f8;

  margin:0;
  background:
    radial-gradient(110% 36% at 50% -8%,rgba(229,56,59,.085),transparent 67%),
    var(--music-bg)!important;
  color:var(--music-text)!important;
  font-family:var(--ui,system-ui,-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",sans-serif);
  -webkit-font-smoothing:antialiased;
}
body.music-v2 a{color:inherit}

/* ---------- MOBILE MUSIC HEADER ---------- */
.music-contextbar{
  position:relative;
  z-index:34;
  width:var(--music-shell);
  margin:0 auto;
  padding:calc(env(safe-area-inset-top,0px) + 10px) 0 7px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  background:transparent;
}
.music-contextbar__brand{
  display:flex;align-items:center;gap:8px;
  color:var(--music-text);text-decoration:none;
}
.music-contextbar__brand img{width:30px;height:30px;border-radius:50%;object-fit:cover}
.music-contextbar__brand span{font-size:14px;font-weight:760;letter-spacing:-.015em}
.music-contextbar__nav{display:flex;align-items:center;gap:4px}
.music-contextbar__nav a{
  display:none;
  color:var(--music-muted);text-decoration:none;
  font-size:11px;font-weight:720;
  padding:7px 8px;border-radius:999px;
}
.music-contextbar__nav a[aria-current="page"]{color:var(--music-text)}
.music-contextbar__nav a[href="creator.html"]{
  display:inline-flex;
  color:var(--music-text);
  background:rgba(255,255,255,.075);
}
.music-contextbar__icon{
  width:32px;height:32px;border-radius:50%;
  border:0;background:rgba(255,255,255,.075);
  color:var(--music-text);display:grid;place-items:center;cursor:pointer;
}
.music-contextbar__icon svg{
  width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;
}

/* ---------- LISTEN / HOME ---------- */
.music-v2.music-room--listen .ls{
  width:var(--music-shell);
  max-width:none;
  margin:0 auto;
  padding:5px 0 calc(150px + env(safe-area-inset-bottom,0px));
}
.music-v2.music-room--listen .ls__top{margin:0}
.music-v2.music-room--listen .ls__ava{display:none}
.music-v2.music-room--listen .ls__circle{
  width:34px;height:34px;
  border:0;box-shadow:none;
  background:rgba(255,255,255,.075);
  color:var(--music-text);
}
.music-v2.music-room--listen .ls__circle svg{width:16px;height:16px}

.music-v2.music-room--listen .greet{
  margin-top:13px;
  color:var(--music-text);
  font-size:clamp(2.25rem,11vw,3.4rem);
  font-weight:850;
  line-height:.97;
  letter-spacing:-.055em;
}
.music-v2.music-room--listen .greet__sub{
  max-width:33rem;
  margin:8px 0 17px;
  color:var(--music-muted);
  font-size:13px;
  font-weight:540;
  line-height:1.45;
}

.music-v2 .ls__find{position:relative;margin:0 0 12px}
.music-v2 .ls__find>svg{left:13px;width:16px;height:16px}
.music-v2 #q{
  width:100%;
  border:0;
  border-radius:10px;
  padding:11px 38px 11px 38px;
  background:var(--music-surface);
  color:var(--music-text);
  box-shadow:none;
  font-size:14px;font-weight:560;
}
.music-v2 #q::placeholder{color:#7d7e84;font-weight:520}
.music-v2 #q:focus{
  outline:0;
  box-shadow:0 0 0 2px rgba(229,56,59,.3);
}
.music-v2 #qClear{
  right:6px;width:29px;height:29px;
  background:rgba(255,255,255,.08);color:var(--music-muted)
}
.music-v2 .ls__count{font-size:10px;color:var(--music-muted);margin:7px 2px 0}

.music-v2 .chips{
  display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;
  margin:10px -12px 24px;padding:0 12px;
}
.music-v2 .chips::-webkit-scrollbar{display:none}
.music-v2 .chips button{
  flex:none;border:0;border-radius:999px;
  padding:7px 11px;
  background:var(--music-surface);
  box-shadow:none;color:var(--music-muted);
  font-size:11px;font-weight:700;
}
.music-v2 .chips button.on{
  background:#f5f5f6;color:#08080a;box-shadow:none
}

.music-launch{
  margin:0 0 30px;
  padding:15px;
  border:0;border-radius:12px;
  background:linear-gradient(135deg,rgba(229,56,59,.16),rgba(255,255,255,.045));
  display:grid;gap:13px;
}
.music-launch div{display:grid;gap:4px}
.music-launch span{
  color:#ff8588;font-size:9px;font-weight:820;
  letter-spacing:.1em;text-transform:uppercase
}
.music-launch strong{font-size:13px;line-height:1.35;letter-spacing:-.01em}
.music-launch a{
  display:block;text-align:center;
  padding:10px 12px;border-radius:9px;
  text-decoration:none;background:#fff;color:#09090b;
  font-size:11px;font-weight:820
}
/* The room-wide reset `body.music-v2 a{color:inherit}` is (0,1,2) and outranks
   `.music-launch a` at (0,1,1), so this pill inherited the page's cream text
   onto its own white fill and the label vanished — a button you could only
   find by guessing where it was. Scoped to the one rule it has to beat. */
body.music-v2 .music-launch a{color:#09090b}
/* The one tap (owner, 2026-10-20): Become a creator, with the terms the tap
   accepts written beside it. The pill is a thumb-sized target; the links in
   the line under it are words in a sentence, not pills. */
.music-launch .music-launch__go{display:grid;gap:8px;min-width:0;max-width:24rem}
.music-launch .music-launch__go > a{min-height:44px;display:flex;align-items:center;justify-content:center;font-size:13px}
.music-launch__terms{color:var(--music-muted,#a1a1a7);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
body.music-v2 .music-launch .music-launch__terms a{display:inline;padding:0;border-radius:0;background:none;color:var(--music-text,#f7f7f8);font:inherit;text-decoration:underline;text-underline-offset:2px}

/* Section rhythm matches Apple Music's vertically stacked shelves. */
.music-v2 .ls__sec{margin:0 0 28px}
.music-v2 .lib__k{
  margin:0 0 3px;
  color:var(--music-text);
  font-size:20px;font-weight:820;
  letter-spacing:-.03em
}
.music-v2 .lib__why{
  margin:0 0 11px;color:var(--music-muted);
  font-size:11px;font-weight:540;line-height:1.35
}

/* ---------- COVER-ART RAILS ---------- */
.music-v2 .feat{
  display:flex;gap:12px;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  scroll-snap-type:x proximity;scrollbar-width:none;
  margin:0 -12px;padding:0 12px 4px;
}
.music-v2 .feat::-webkit-scrollbar{display:none}
.music-v2 .feat__card{
  --c:var(--music-card);
  flex:none;
  width:var(--c);
  min-height:calc(var(--c) + 3.6rem);
  padding:calc(var(--c) + 8px) 0 0;
  position:relative;overflow:visible;
  border-radius:0;background:transparent!important;
  box-shadow:none!important;color:var(--music-text);
  scroll-snap-align:start;text-decoration:none;
}
.music-v2 .feat__bg{
  position:absolute;left:0;top:0;z-index:0;
  width:var(--c);height:var(--c);
  object-fit:cover;border-radius:10px;
  box-shadow:none;
}
.music-v2 .feat__smoke,.music-v2 .feat__card::after{display:none!important}
.music-v2 .feat__why{
  position:absolute;left:6px;top:calc(var(--c) - 25px);z-index:3;
  display:block;max-width:calc(var(--c) - 54px);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  margin:0;padding:4px 6px;border:0;border-radius:5px;
  color:#fff;background:rgba(5,5,6,.72);
  box-shadow:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  font-size:7px;font-weight:800;letter-spacing:.07em
}
.music-v2 .feat__card>b{
  display:block;color:var(--music-text);
  font-size:13px;font-weight:720;line-height:1.22;
  text-shadow:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.music-v2 .feat__card>small{
  display:block;min-height:0;margin-top:3px;
  color:var(--music-muted);
  font-size:10.5px;font-weight:530;
  letter-spacing:0;text-transform:none;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.music-v2 .feat__acts{
  position:absolute;right:6px;top:calc(var(--c) - 42px);z-index:4;
  display:block;margin:0
}
.music-v2 .feat__play{
  width:36px;height:36px;border-radius:50%;
  border:0;background:rgba(245,245,246,.95);color:#09090b;
  box-shadow:0 4px 13px rgba(0,0,0,.3)
}
.music-v2 .feat__play svg{width:15px;height:15px}
.music-v2 .feat__play.is-playing{background:var(--music-accent);color:#fff}
.music-v2 .feat__n{display:none!important}

/* ---------- TRACK ROWS ---------- */
.music-v2 .tr{list-style:none;margin:3px 0 0;padding:0}
.music-v2 .tr li{
  min-height:56px;
  display:flex;align-items:center;gap:10px;
  margin:0;padding:7px 2px;
  border-radius:0;
  border-top:1px solid rgba(255,255,255,.06);
  background:transparent!important;
}
.music-v2 .tr li:first-child{border-top:0}
.music-v2 .tr li:hover{background:rgba(255,255,255,.035)!important}
.music-v2 .tr a.row{gap:10px}
.music-v2 .tr .th{width:46px;height:46px;border-radius:7px;box-shadow:none}
.music-v2 .tr .n{display:none}
.music-v2 .tr .t{
  color:var(--music-text);font-size:13.5px;font-weight:690;line-height:1.18
}
.music-v2 .tr .t small{
  margin-top:3px;color:var(--music-muted);
  font-size:10.5px;font-weight:520
}
.music-v2 .tr .d{color:var(--music-faint);font-size:10px}
.music-v2 .tr .hrt{
  width:31px;height:31px;
  border:0;background:transparent!important;box-shadow:none!important;
  color:var(--music-faint)
}
.music-v2 .tr .hrt.on{color:var(--music-accent)}
.music-v2 .music-inline-play{
  left:10px;top:50%;width:28px;height:28px;
  border:0;background:rgba(6,6,7,.74);color:#fff
}
.music-v2 .music-inline-play svg{width:11px;height:11px}
.music-v2 .music-inline-play.is-playing{background:var(--music-accent)}
.music-v2 .ls__note{
  margin:30px 0 0;padding:19px 0 0;
  border-top:1px solid var(--music-border);
  color:var(--music-faint);font-size:10.5px
}

/* ---------- MINI PLAYER: iOS-style bar directly above app tabs ---------- */
.music-v2 .music-mini{
  position:fixed;z-index:78;
  left:8px;right:8px;width:auto;
  transform:none;
  bottom:calc(var(--appbar-h,76px) + env(safe-area-inset-bottom,0px) + 5px);
  overflow:hidden;
  color:var(--music-text);
  background:rgba(35,35,39,.97);
  border:0;border-radius:11px;
  box-shadow:0 7px 28px rgba(0,0,0,.44);
  backdrop-filter:blur(28px) saturate(1.2);
  -webkit-backdrop-filter:blur(28px) saturate(1.2);
}
.music-v2 .music-mini__seek{height:3px;padding:0;cursor:pointer}
.music-v2 .music-mini__seek i{display:block;height:2px;background:rgba(255,255,255,.13)}
.music-v2 .music-mini__seek b{display:block;height:100%;width:0;background:rgba(255,255,255,.8)}
.music-v2 .music-mini__row{
  display:grid;grid-template-columns:minmax(0,1fr) 39px;
  align-items:center;gap:6px;padding:6px 7px
}
.music-v2 .music-mini__open{
  min-width:0;border:0;background:none;color:inherit;padding:0;
  display:grid;grid-template-columns:43px minmax(0,1fr);
  align-items:center;gap:9px;text-align:left;cursor:pointer
}
.music-v2 .music-mini__art{width:43px;height:43px;border-radius:6px;object-fit:cover}
.music-v2 .music-mini__meta{min-width:0}
.music-v2 .music-mini__meta>b{
  display:block;color:var(--music-text);
  font-size:12.5px;font-weight:700;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.music-v2 .music-mini__meta>span{
  display:flex;align-items:center;gap:6px;margin-top:3px;
  color:var(--music-muted);font-size:9.5px;font-weight:520
}
.music-v2 .music-mini__access{
  font-style:normal;border:0;padding:0;
  text-transform:none;letter-spacing:0;font-size:9px
}
.music-v2 .music-mini__access.is-preview{color:#ffc887}
.music-v2 .music-mini__access.is-full{color:var(--music-muted)}
.music-v2 .music-mini__time{display:none}
.music-v2 .music-mini__play{
  width:39px;height:39px;border:0;border-radius:50%;
  background:transparent;color:var(--music-text)
}
.music-v2 .music-mini__play svg{width:21px;height:21px}

/* ---------- FULL-SCREEN NOW PLAYING ---------- */
.music-now{
  position:fixed;inset:0;z-index:140;
  display:block;pointer-events:none;opacity:0;
  background:#0d0d10;
  transition:opacity .18s ease
}
.music-now.is-open{pointer-events:auto;opacity:1}
.music-now__ambient{position:absolute;inset:0;overflow:hidden;background:#0d0d10}
.music-now__ambient img{
  position:absolute;inset:-12%;
  width:124%;height:124%;object-fit:cover;
  opacity:.64;filter:blur(65px) saturate(1.15) brightness(.4)
}
.music-now__ambient::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,8,10,.18),rgba(8,8,10,.62) 58%,rgba(8,8,10,.92))
}
.music-now__sheet{
  position:relative;z-index:2;
  width:100%;height:100%;
  box-sizing:border-box;
  padding:calc(env(safe-area-inset-top,0px) + 5px) 22px calc(env(safe-area-inset-bottom,0px) + 18px);
  display:flex;flex-direction:column;
  transform:translateY(18px);
  transition:transform .28s cubic-bezier(.2,.8,.2,1)
}
.music-now.is-open .music-now__sheet{transform:none}
.music-now__head{
  flex:none;height:46px;
  display:grid;grid-template-columns:60px minmax(0,1fr) 60px;align-items:center;
  color:rgba(255,255,255,.74);
  font-size:10px;font-weight:720;text-align:center
}
.music-now__close{
  justify-self:start;width:32px;height:32px;border:0;border-radius:50%;
  background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center
}
.music-now__close svg{width:17px;fill:none;stroke:currentColor;stroke-width:2}
.music-now__detail{
  justify-self:end;color:#fff;text-decoration:none;font-size:10px;font-weight:700
}
.music-now__stage{
  flex:1;min-height:0;
  display:flex;flex-direction:column;justify-content:center;
  max-width:430px;width:100%;margin:0 auto
}
.music-now__artwrap{
  width:min(78vw,355px);aspect-ratio:1;
  margin:0 auto 25px
}
.music-now__art{
  width:100%;height:100%;object-fit:cover;border-radius:10px;
  box-shadow:0 24px 55px rgba(0,0,0,.42)
}
.music-now__meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.music-now__meta h2{
  margin:0;color:#fff;font-size:19px;font-weight:770;letter-spacing:-.025em;line-height:1.08
}
.music-now__meta p{margin:5px 0 0;color:rgba(255,255,255,.58);font-size:12px}
.music-now__access{
  flex:none;font-style:normal;
  color:rgba(255,255,255,.56);
  font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em
}
.music-now__access.is-preview{color:#ffc887}
.music-now__access.is-full{color:#a9e9b8}
.music-now__seek{width:100%;height:31px;border:0;background:none;padding:16px 0 11px}
.music-now__seek i{display:block;height:4px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden}
.music-now__seek b{display:block;height:100%;width:0;border-radius:inherit;background:#fff}
.music-now__times{
  display:flex;justify-content:space-between;
  color:rgba(255,255,255,.44);font-size:9px;font-variant-numeric:tabular-nums
}
.music-now__controls{
  width:min(300px,92%);margin:17px auto 11px;
  display:grid;grid-template-columns:minmax(0,1fr) 78px minmax(0,1fr);align-items:center
}
.music-now__controls button{
  height:56px;border:0;background:none;color:#fff;display:grid;place-items:center
}
.music-now__controls button svg{width:29px;height:29px;fill:currentColor}
.music-now__controls .music-now__play{
  justify-self:center;width:68px;height:68px;border-radius:50%;
  background:#fff;color:#09090b
}
.music-now__controls .music-now__play svg{width:29px;height:29px}
.music-now__context{
  display:flex;justify-content:center;gap:7px;
  color:rgba(255,255,255,.44);font-size:9px
}
.music-now__context span+span::before{content:"·";margin-right:7px}
body.music-now-open{overflow:hidden}

/* ---------- CREATOR / ARTIST SURFACES: MOBILE FIRST ---------- */
.music-v2 .creator-shell{
  width:var(--music-shell);max-width:none;margin:0 auto;
  padding:8px 0 calc(130px + env(safe-area-inset-bottom,0px))
}
.music-v2 .creator-head{
  display:block;margin:13px 0 22px
}
.music-v2 .creator-kicker{
  color:var(--music-accent);font-size:8px;font-weight:830;
  letter-spacing:.1em;text-transform:uppercase
}
.music-v2 .creator-head h1{
  margin:5px 0 0;color:var(--music-text);
  font-size:clamp(2.3rem,11vw,3.4rem);
  line-height:.96;letter-spacing:-.055em
}
.music-v2 .creator-head p{
  margin:10px 0 0;max-width:34rem;
  color:var(--music-muted);font-size:12px;line-height:1.45
}
.music-v2 .creator-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:11px}
.music-v2 .creator-card{
  grid-column:auto!important;
  background:var(--music-surface);
  border:0;border-radius:12px;
  padding:15px;box-shadow:none
}
.music-v2 .creator-card h2{margin:0 0 5px;font-size:16px;letter-spacing:-.02em}
.music-v2 .creator-card>p{margin:0 0 14px;color:var(--music-muted);font-size:11px;line-height:1.45}
.music-v2 .creator-form,.music-v2 .creator-form.two{display:grid;grid-template-columns:minmax(0,1fr);gap:11px}
.music-v2 .creator-field.wide,.music-v2 .creator-actions.wide,.music-v2 .creator-status.wide,.music-v2 .creator-check.wide{grid-column:auto}
.music-v2 .creator-field{display:grid;gap:5px}
/* Same exclusions as css/music-creator.css: a `.creator-check` is a <label>
   around an <input>, so the caption and text-control rules must not claim it. */
.music-v2 .creator-field label:not(.creator-check),.music-v2 .creator-label{
  color:var(--music-muted);font-size:8.5px;font-weight:800;letter-spacing:.07em
}
.music-v2 .creator-field input:not([type="checkbox"]):not([type="radio"]),.music-v2 .creator-field textarea,.music-v2 .creator-field select{
  width:100%;box-sizing:border-box;
  border:0;border-radius:9px;
  background:#0d0d10;color:var(--music-text);
  /* 16px or more: iOS zooms the page into any smaller field on focus */
  padding:11px;font-size:max(16px,13px)
}
.music-v2 .creator-field input:focus,.music-v2 .creator-field textarea:focus,.music-v2 .creator-field select:focus{
  outline:0;box-shadow:0 0 0 2px rgba(229,56,59,.36)
}
.music-v2 .creator-check{font-size:10.5px;line-height:1.4;color:var(--music-muted)}
.music-v2 .creator-actions{gap:8px}
.music-v2 .creator-btn{
  border:0;border-radius:9px;padding:10px 12px;
  background:#f4f4f5;color:#09090b;
  font-size:10.5px;font-weight:820;letter-spacing:0
}
.music-v2 .creator-btn.primary{background:#db3538;color:#fff}
.music-v2 .creator-btn.quiet{background:rgba(255,255,255,.07);color:var(--music-text)}
.music-v2 .creator-btn.good{background:var(--music-good);color:#061109}
.music-v2 .creator-status{font-size:10.5px;color:var(--music-muted)}
.music-v2 .creator-item{padding:10px 0;gap:8px;border-top:1px solid rgba(255,255,255,.065)}
.music-v2 .creator-item b{font-size:12.5px}
.music-v2 .creator-item small{font-size:9.5px}
.music-v2 .creator-pill{font-size:7px;padding:4px 6px}

.music-v2 .creator-hero{
  min-height:390px;padding:22px;
  border:0;border-radius:13px;background:var(--music-surface)
}
.music-v2 .creator-hero__banner{opacity:.48}
.music-v2 .creator-hero::after{background:linear-gradient(180deg,rgba(5,5,6,.04),rgba(5,5,6,.94))}
.music-v2 .creator-avatar{
  width:72px;height:72px;border:0;
  border-radius:50%;margin-bottom:12px
}
.music-v2 .creator-hero__copy h1{
  color:#fff;font-size:clamp(2.6rem,13vw,4.5rem);line-height:.93;letter-spacing:-.055em
}
.music-v2 .creator-hero__copy p{color:rgba(255,255,255,.66);font-size:11px}
.music-v2 .creator-tracks{margin-top:10px;gap:0}
.music-v2 .creator-track{
  grid-template-columns:52px minmax(0,1fr) 38px;
  gap:10px;padding:9px 0;
  border:0;border-top:1px solid rgba(255,255,255,.065);
  border-radius:0;background:transparent
}
.music-v2 .creator-track:first-child{border-top:0}
.music-v2 .creator-track img{width:52px;height:52px;border-radius:7px}
.music-v2 .creator-track h3{font-size:12.5px}
.music-v2 .creator-track p{font-size:9.5px}
.music-v2 .creator-play{
  width:38px;height:38px;background:transparent;color:var(--music-text)
}
.music-v2 .creator-offers{gap:5px}
.music-v2 .creator-offer{
  border:0;border-radius:999px;
  background:rgba(255,255,255,.07);color:var(--music-text);
  font-size:8.5px;padding:6px 8px
}
.music-v2 .creator-admin-row{
  display:grid;grid-template-columns:minmax(0,1fr);gap:9px;
  padding:12px 0;border-top:1px solid rgba(255,255,255,.065)
}
.music-v2 .creator-admin-row .creator-actions{justify-content:flex-start}

/* ---------- LEGACY ALBUM DETAIL, RESTYLED AS THE SAME MOBILE PRODUCT ---------- */
body.music-v2 .hr{
  width:var(--music-shell);max-width:none;
  margin:0 auto;padding:8px 0 calc(160px + env(safe-area-inset-bottom,0px))
}
body.music-v2 .room video{filter:blur(60px) saturate(1.04) brightness(.28)}
body.music-v2 .room__scrim{
  background:linear-gradient(180deg,rgba(5,5,6,.34),rgba(5,5,6,.88) 52%,#050506)
}
body.music-v2 .alb{
  display:flex;flex-direction:column;align-items:center;gap:14px;
  text-align:center;margin-top:12px
}
body.music-v2 .alb__art{
  width:min(72vw,290px);border-radius:10px;box-shadow:0 20px 48px rgba(0,0,0,.38)
}
body.music-v2 .alb__k{font-size:8px;letter-spacing:.12em;color:var(--music-muted)}
body.music-v2 .alb h1{
  margin:4px 0 3px;
  color:var(--music-text);
  font-family:var(--ui);
  font-size:clamp(2rem,10vw,3.1rem);
  font-weight:830;text-transform:none;line-height:.95;letter-spacing:-.05em
}
body.music-v2 .alb__by{font-size:11px;color:var(--music-muted)}
body.music-v2 .alb__play{
  margin-top:10px;padding:10px 19px;border-radius:9px;
  background:var(--ruby-fill, var(--music-accent));box-shadow:none;
  font-size:12px
}
body.music-v2 .mode{
  margin:18px 0 8px;border:0;
  background:var(--music-surface);box-shadow:none
}
body.music-v2 .mode button{font-size:9px;padding:8px 11px;letter-spacing:.04em}
body.music-v2 .mode button.on,body.music-v2 .chips button.on{
  background:#fff!important;color:#09090b!important;box-shadow:none!important
}
body.music-v2 .top__circle,body.music-v2 .tr .hrt,body.music-v2 .tr .reclock .dl{
  background:transparent!important;box-shadow:none!important;border:0!important
}
body.music-v2 .tr li.on{
  background:rgba(255,255,255,.055)!important;box-shadow:none!important
}
body.music-v2 .tr li.on::before{display:none}
body.music-v2 .deckbar{
  left:8px;right:8px;width:auto;transform:none;
  bottom:calc(var(--appbar-h,76px) + env(safe-area-inset-bottom,0px) + 5px);
  border:0;border-radius:11px;
  background:rgba(35,35,39,.97);box-shadow:0 7px 28px rgba(0,0,0,.44)
}
body.music-v2 .deckbar[data-off="1"]{transform:translateY(12px)}
body.music-v2 .deckbar button.tp--play{background:transparent;color:#fff;box-shadow:none}

/* ---------- APP BAR ---------- */
body.music-v2 .appbar{
  background:rgba(14,14,16,.96)!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)
}
body.music-v2 .appbar__tab{color:#77787e}
body.music-v2 .appbar__tab[aria-current="page"],
body.music-v2 .appbar__tab.is-active{color:#fff}

/* ---------- ONLY NOW DO WE ENHANCE LARGER SCREENS ---------- */
@media(min-width:700px){
  body.music-v2{
    --music-shell:min(46rem,calc(100vw - 40px));
    --music-card:12.75rem;
  }
  .music-contextbar{padding-top:calc(env(safe-area-inset-top,0px) + 16px)}
  .music-contextbar__brand img{width:34px;height:34px}
  .music-contextbar__brand span{font-size:16px}
  .music-contextbar__nav a{display:inline-flex}
  .music-v2.music-room--listen .greet{font-size:3.8rem}
  .music-v2 .feat{margin-left:0;margin-right:0;padding-left:0;padding-right:0}
  .music-v2 .chips{margin-left:0;margin-right:0;padding-left:0;padding-right:0}
  .music-launch{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .music-launch a{width:auto}
  .music-v2 .creator-head{display:flex;align-items:flex-start;justify-content:space-between;gap:26px}
  .music-v2 .creator-head p{margin-top:5px}
}

@media(min-width:980px){
  body.music-v2{--music-shell:min(68rem,calc(100vw - 64px));--music-card:13.5rem}
  .music-v2 .creator-grid{grid-template-columns:minmax(250px,.75fr) minmax(360px,1.25fr);gap:14px}
  .music-v2 .creator-card.wide{grid-column:1/-1!important}
  .music-v2 .creator-form.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .music-v2 .creator-field.wide,
  .music-v2 .creator-actions.wide,
  .music-v2 .creator-status.wide,
  .music-v2 .creator-check.wide{grid-column:1/-1}
  .music-v2 .creator-admin-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .music-v2 .creator-admin-row .creator-actions{justify-content:flex-end}
}

@media(prefers-reduced-motion:reduce){
  .music-now,.music-now__sheet{transition:none}
}


/* ---------- LIVE VIDEO ARTWORK IN NOW PLAYING ----------
   Video is a first-class artwork mode, not a separate destination.
   The cover remains mounted underneath as the instant fallback/poster. */
.music-v2 .music-now__artwrap{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:#111114;
}
.music-v2 .music-now__art,
.music-v2 .music-now__film{
  width:100%;
  height:100%;
  display:block;
  border-radius:inherit;
  object-fit:cover;
}
.music-v2 .music-now__art{
  position:relative;
  z-index:1;
  opacity:1;
  transition:opacity .22s ease;
}
.music-v2 .music-now__film{
  position:absolute;
  inset:0;
  z-index:2;
  opacity:0;
  pointer-events:none;
  background:#0a0a0c;
  transition:opacity .22s ease;
}
.music-v2 .music-now__artwrap.has-video .music-now__film{opacity:1}
.music-v2 .music-now__artwrap.has-video .music-now__art{opacity:0}
.music-v2 .music-now__artwrap.has-video::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055);
  border-radius:inherit;
}

@media (prefers-reduced-motion: reduce){
  .music-v2 .music-now__artwrap.has-video .music-now__film{opacity:0}
  .music-v2 .music-now__artwrap.has-video .music-now__art{opacity:1}
}
