#uf-audio-controls { position:fixed; right:1.4rem; bottom:1.2rem; z-index:45; display:flex; align-items:stretch; max-width:calc(100vw - 2.8rem); border:1px solid var(--line,#555); color:var(--muted,#b9b3a8); background:var(--ink,#090908); }
#uf-audio-controls button { display:flex; align-items:center; justify-content:center; gap:14px; padding:10px 13px; border:0; color:inherit; background:transparent; font:inherit; font-size:12px; cursor:pointer; min-height:42px; }
#uf-soundscape-toggle { min-width:0; }
#uf-soundscape-toggle [data-audio-title] { max-width:min(260px,55vw); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#uf-audio-controls [data-audio-transport] { display:flex; flex-shrink:0; }
#uf-audio-controls #uf-audio-mute { border-left:1px solid var(--line,#555); flex-shrink:0; }
#uf-audio-controls button:hover,#uf-audio-controls button:focus-visible { color:var(--gold,#b98a4a); }
#uf-audio-controls button:focus-visible { outline:1px solid currentColor; outline-offset:-4px; }
#album-audio[hidden] { display:none!important; }

/* A quiet floating island: soften passing dividers before they reach the player. */
#uf-audio-controls {
  right: max(1.4rem, env(safe-area-inset-right));
  bottom: max(1.2rem, env(safe-area-inset-bottom));
  isolation: isolate;
  border-color: rgba(185,138,74,.3);
}
#uf-audio-controls::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -12px;
  border-radius: 8px;
  background: var(--ink,#090908);
  box-shadow: 0 0 18px 12px var(--ink,#090908);
  pointer-events: none;
}
/* Leave the final footer content clear of the persistent controls. */
body:has(#uf-audio-controls) .site-footer { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom)); }
