/* Ambient music toggle — landing page only (body.site-home + index.html). */
body.site-home .siteAmbientAudioToggle.is-route-hidden {
  display: none !important;
  pointer-events: none;
}

body.site-home .siteAmbientAudioToggle {
  position: fixed;
  z-index: 150;
  left: max(0.85rem, env(safe-area-inset-left, 0px));
  bottom: max(0.85rem, env(safe-area-inset-bottom, 0px));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  margin: 0;
  padding: 0.45rem 0.55rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 999px;
  background: rgba(10, 10, 10, 0.78);
  color: rgba(255, 255, 255, 0.82);
  cursor: pointer;
  font-family: "Inter", system-ui, sans-serif;
  font-size: 0.6875rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1;
  -webkit-tap-highlight-color: transparent;
  backdrop-filter: blur(8px);
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease,
    opacity 0.2s ease;
}

/* Muted / idle: dim icon + label; audible: full strength */
body.site-home .siteAmbientAudioToggle.is-off .siteAmbientAudioToggle-icon,
body.site-home .siteAmbientAudioToggle.is-off .siteAmbientAudioToggle-text,
body.site-home .siteAmbientAudioToggle.is-silent .siteAmbientAudioToggle-icon,
body.site-home .siteAmbientAudioToggle.is-silent .siteAmbientAudioToggle-text {
  opacity: 0.68;
}

body.site-home .siteAmbientAudioToggle.is-playing .siteAmbientAudioToggle-icon,
body.site-home .siteAmbientAudioToggle.is-playing .siteAmbientAudioToggle-text {
  opacity: 1;
}

body.site-home .siteAmbientAudioToggle:hover,
body.site-home .siteAmbientAudioToggle:focus-visible {
  color: rgba(255, 255, 255, 0.92);
  border-color: rgba(255, 255, 255, 0.38);
  background: rgba(18, 18, 18, 0.88);
  outline: none;
}

body.site-home .siteAmbientAudioToggle:focus-visible {
  box-shadow:
    0 0 0 2px #0a0a0a,
    0 0 0 4px rgba(255, 255, 255, 0.45);
}

body.site-home .siteAmbientAudioToggle.is-playing {
  color: rgba(255, 255, 255, 0.92);
  border-color: rgba(255, 255, 255, 0.36);
}

body.site-home .siteAmbientAudioToggle.is-silent {
  color: rgba(255, 255, 255, 0.78);
  border-color: rgba(255, 200, 120, 0.35);
}

/* User chose off (SOUND OFF) — calmer than “tap for sound” */
body.site-home .siteAmbientAudioToggle.is-user-off {
  color: rgba(255, 255, 255, 0.55);
  border-color: rgba(255, 255, 255, 0.18);
}

body.site-home .siteAmbientAudioToggle.is-error {
  border-color: rgba(255, 120, 100, 0.45);
  color: rgba(255, 160, 140, 0.9);
}

body.site-home .siteAmbientAudioToggle-icon {
  display: block;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  body.site-home .siteAmbientAudioToggle {
    transition: none;
  }

}

/* Longer labels (TAP FOR SOUND, ENABLE SOUND) */
body.site-home .siteAmbientAudioToggle .siteAmbientAudioToggle-text {
  max-width: 11.5rem;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
