#musemoss-ritual-music {
  --mm-music-ink: #25382c;
  --mm-music-cream: #faf7ef;
  position: fixed;
  z-index: 60;
  left: max(20px, env(safe-area-inset-left));
  bottom: max(20px, env(safe-area-inset-bottom));
  width: min(384px, calc(100vw - 40px));
  color: var(--mm-music-ink);
  font: 14px/1.5 Arial, sans-serif;
  text-align: left;
  letter-spacing: normal;
}
#musemoss-ritual-music *, #musemoss-ritual-music *::before, #musemoss-ritual-music *::after { box-sizing: border-box; }
#musemoss-ritual-music[hidden], #musemoss-ritual-music [hidden] { display: none !important; }
#musemoss-ritual-music button { font: inherit; cursor: pointer; margin: 0; text-transform: none; }
#musemoss-ritual-music button:focus-visible, #musemoss-ritual-music a:focus-visible, #musemoss-ritual-music input:focus-visible {
  outline: 3px solid #b88d45;
  outline-offset: 3px;
}
#musemoss-ritual-music .mm-music-card {
  padding: 12px;
  border: 1px solid #ded8c8;
  border-radius: 16px;
  background: var(--mm-music-cream);
  box-shadow: 0 8px 40px #25382c26;
  max-height: calc(100dvh - 40px);
  overflow: auto;
}
#musemoss-ritual-music .mm-music-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 0 10px 4px; }
#musemoss-ritual-music .mm-music-kicker { display: block; font-size: 9px; letter-spacing: 2px; color: #766548; margin-bottom: 2px; }
#musemoss-ritual-music .mm-music-title { margin: 0; font: 24px/1.2 Georgia, serif; color: var(--mm-music-ink); }
#musemoss-ritual-music .mm-music-close { width: 44px; height: 44px; flex: 0 0 44px; padding: 0; border: 0; border-radius: 50%; color: var(--mm-music-ink); background: #eee9dc; display: grid; place-items: center; }
#musemoss-ritual-music .mm-music-close svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.5; }
#musemoss-ritual-music .mm-music-player { width: 100%; min-height: 200px; background: #1b211b; }
#musemoss-ritual-music iframe { display: block; width: 100%; height: max(200px, calc((min(384px, 100vw - 40px) - 26px) * .5625)); min-width: 200px; min-height: 200px; border: 0; margin: 0; padding: 0; }
#musemoss-ritual-music .mm-music-status { min-height: 21px; margin: 10px 4px 8px; font-size: 12px; color: #615d50; }
#musemoss-ritual-music .mm-music-controls { display: flex; align-items: center; gap: 12px; padding: 0 4px; }
#musemoss-ritual-music .mm-music-play { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 44px; padding: 10px 14px; border: 1px solid var(--mm-music-ink); border-radius: 30px; background: var(--mm-music-ink); color: #fff; white-space: nowrap; font-size: 12px; }
#musemoss-ritual-music .mm-music-play:disabled { opacity: .65; cursor: wait; }
#musemoss-ritual-music .mm-music-volume { display: flex; flex: 1; align-items: center; gap: 6px; min-width: 0; margin: 0; font-size: 11px; }
#musemoss-ritual-music .mm-music-volume input { width: 100%; min-width: 32px; height: 44px; margin: 0; padding: 0; accent-color: #4e6544; cursor: pointer; }
#musemoss-ritual-music .mm-music-credit { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 12px; margin: 10px 4px 0; font-size: 10px; color: #746e5e; }
#musemoss-ritual-music .mm-music-credit a { color: #4f6547; text-decoration: underline; text-underline-offset: 3px; }
#musemoss-ritual-music .mm-music-toggle { display: inline-flex; align-items: center; gap: 10px; padding: 12px 18px; min-height: 48px; border: 1px solid #cfc6b0; border-radius: 30px; background: var(--mm-music-cream); color: var(--mm-music-ink); box-shadow: 0 4px 20px #25382c1f; font-size: 13px; }
#musemoss-ritual-music .mm-music-toggle svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; }
@media (max-width: 480px) {
  #musemoss-ritual-music { left: max(12px, env(safe-area-inset-left)); bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); }
  #musemoss-ritual-music .mm-music-card { max-height: calc(100dvh - 24px); }
  #musemoss-ritual-music iframe { height: 200px; }
}
@media print { #musemoss-ritual-music { display: none !important; } }
