  /* ---------- Music toggle ---------- */
  .music-toggle{
    position:fixed; left:22px; bottom:22px; z-index:60;
    width:62px; height:62px; border-radius:50%; cursor:pointer;
    display:flex; align-items:center; justify-content:center;
    background:radial-gradient(circle at 35% 30%, rgba(157,92,255,.35), rgba(5,3,11,.9) 70%);
    border:1px solid rgba(214,182,115,.35);
    box-shadow:0 0 0 rgba(214,182,115,0), 0 8px 24px -8px rgba(0,0,0,.6);
    transition:box-shadow .5s ease, border-color .5s ease, transform .3s ease;
  }
  .music-toggle:hover{ transform:translateY(-2px); border-color:var(--gold-bright); }
  .music-toggle.playing{ box-shadow:0 0 26px rgba(157,92,255,.55), 0 8px 24px -8px rgba(0,0,0,.6); border-color:var(--gold); }
  .music-toggle .disc{
    width:100%; height:100%; border-radius:50%;
    animation:disc-spin 6s linear infinite;
    animation-play-state:paused;
  }
  .music-toggle.playing .disc{ animation-play-state:running; }
  @keyframes disc-spin{ to{ transform:rotate(360deg); } }
  .music-toggle .disc svg{ width:100%; height:100%; display:block; }
  .music-toggle .glyph-icon{
    position:absolute; width:20px; height:20px; pointer-events:none;
    color:var(--gold-bright); opacity:.95;
    filter:drop-shadow(0 0 4px rgba(0,0,0,.5));
  }
  .music-toggle .ring-pulse{
    position:absolute; inset:-6px; border-radius:50%; border:1px solid rgba(157,92,255,.5);
    opacity:0; pointer-events:none;
  }
  .music-toggle.playing .ring-pulse{ animation:ring-pulse 2.4s ease-out infinite; }
  @keyframes ring-pulse{
    0%{ opacity:.55; transform:scale(1); }
    100%{ opacity:0; transform:scale(1.35); }
  }
  @media(max-width:600px){
    .music-toggle{ left:16px; bottom:16px; width:52px; height:52px; }
    .music-toggle .glyph-icon{ width:17px; height:17px; }
  }
  @media (prefers-reduced-motion: reduce){
    .music-toggle .disc{ animation:none; }
    .music-toggle.playing .ring-pulse{ animation:none; }
  }
