#final-music-dialog { color: #f8f5ee; background: #223323; border: 1px solid #c8a45d; border-radius: 20px; width: min(630px, calc(100vw - 24px)); max-height: calc(100dvh - 32px); padding: 24px; box-sizing: border-box; overflow: auto; box-shadow: 0 24px 90px #0009; font: 16px/1.5 system-ui, sans-serif; }
#final-music-dialog::backdrop { background: #111b13c9; }
#final-music-dialog h2 { margin: 0; color: #f1d58e; font-size: 28px; }
.final-music-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
#final-music-dialog button { color: #f8f5ee; background: #384b34; border: 1px solid #c8a45d; padding: 10px 14px; border-radius: 8px; font: inherit; cursor: pointer; }
#final-music-dialog button:focus-visible, #final-music-dialog input:focus-visible { outline: 3px solid #f1d58e; outline-offset: 3px; }
#final-music-dialog button:disabled, #final-music-dialog input:disabled { opacity: .55; }
.final-music-track { display: grid; gap: 8px; background: #16251a; padding: 16px; border-radius: 12px; margin: 16px 0; }
.final-music-track strong { font-size: 21px; overflow-wrap: anywhere; }
.final-music-track small { color: #e0d7bf; }
.final-music-track audio { width: 100%; max-width: 100%; }
.final-music-file { display: grid; gap: 8px; font-weight: 700; }
.final-music-file input { width: 100%; font: inherit; min-width: 0; }
.final-music-file input::file-selector-button { border: 0; border-radius: 8px; padding: 12px; margin-right: 8px; background: #c8a45d; color: #17241a; font: inherit; cursor: pointer; }
.final-music-offset { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 18px; }
.final-music-offset input { width: 85px; padding: 10px; border-radius: 8px; border: 1px solid #c8a45d; color: #f8f5ee; background: #16251a; font: inherit; }
.final-music-hint, .final-music-credit { font-size: 13px; color: #dedacd; }
#final-music-dialog [role="status"] { min-height: 24px; color: #f1d58e; }
.final-music-credit { margin-top: 20px; }
.final-music-credit a { color: #f1d58e; }
.final-music-credit summary { cursor: pointer; }
@media (max-width: 600px) {
  #final-music-dialog { padding: 16px; }
  .replay-audio-controls { right: 8px; max-width: calc(100vw - 16px); box-sizing: border-box; gap: 6px; padding: 7px; }
  #replay-volume { width: 60px; }
  .replay-audio-controls label { font-size: 0; gap: 0; }
}
