.music-toggle {
  position: fixed;
  right: 28px;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
  z-index: 40;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  padding: 0 17px;
  border: 1px solid #676251;
  border-radius: 999px;
  background: #1c1d1a;
  color: var(--accent, #d8c9a4);
  box-shadow: 0 4px 20px #0002;
  font: inherit;
  font-size: 11px;
  letter-spacing: .08em;
  cursor: pointer;
  transition: border-color .2s, background .2s;
}
.music-toggle[hidden] { display: none; }
.music-toggle:hover { border-color: #d8c9a4; background: #292a24; }
.music-toggle:focus-visible { outline: 2px solid #d8c9a4; outline-offset: 4px; }
.music-toggle svg { width: 17px; height: 17px; flex: 0 0 auto; }
.music-toggle[data-state="playing"] .music-slash { display: none; }
.music-toggle[data-state="playing"] { border-color: #a49b81; }
.music-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-footer { flex-wrap: wrap; padding-bottom: 94px; }
.music-credit { flex-basis: 100%; margin: 0; color: var(--muted, #a7aaa1); font-size: 10px; line-height: 1.8; }
.music-credit a { text-decoration: underline; text-decoration-color: #696b61; text-underline-offset: 3px; }
@media (max-width: 600px) {
  .music-toggle { right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); padding: 0 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .music-toggle { transition: none; }
}
