/* Approved audio wireframes: headline above media, or media only; popup playback. */
.cp-mixed .cp-mx-audio { display: block; background: #fff; color: #1a1a1a; padding: 18px; }
.cp-mixed .cp-mx-audio .cp-mx-audio-heading { font-family: var(--cp-font); font-weight: 700; margin: 0 0 18px; color: #1a1a1a; }
.cp-mixed .cp-mx-audio .cp-mx-media { aspect-ratio: 1 / 1 !important; min-height: 0; background: #f2f2f2; border-radius: 0; }
.cp-mx-audio-placeholder { width: 100%; height: 100%; background: #f2f2f2; }
.cp-mixed .cp-mx-audio button.cp-mx-play { top: auto; right: auto; bottom: 12px; left: 12px; transform: none; width: 42px; height: 42px; }
.cp-mixed .cp-mx-audio button.cp-mx-play:hover { transform: none; }
.cp-mixed .cp-mx-audio button.cp-mx-play svg { width: 20px; height: 20px; }
.cp-mx-audio-dialog .cp-mx-lb-panel { max-width: 560px; min-height: 340px; padding: 50px 28px 28px; display: flex; flex-direction: column; background: #fff; color: #1a1a1a; }
.cp-mx-audio-dialog .cp-mx-lb-headline { font-family: "Inter", sans-serif; font-size: 20px; line-height: 1.4; margin: 0 0 30px; padding-right: 28px; }
.cp-mx-audio-controls { margin-top: auto; padding-top: 40px; }
.cp-mx-audio-timeline { display: flex; gap: 12px; align-items: center; font-size: 12px; font-variant-numeric: tabular-nums; }
.cp-mx-audio-timeline input { flex: 1; min-width: 0; width: auto; accent-color: #F82228; margin: 0; padding: 0; }
.cp-mx-audio-dialog button.cp-mx-audio-toggle { display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; margin: 24px auto 0; padding: 0; border: 0; border-radius: 50%; background: #F82228 !important; color: #fff !important; cursor: pointer; }
.cp-mx-audio-toggle svg { width: 22px; height: 22px; }
.cp-mx-audio-error { font-size: 13px; margin: 16px 0 0; }
@media (max-width: 600px) { .cp-mx-audio-dialog { padding: 24px 16px; align-items: center; } .cp-mx-audio-dialog .cp-mx-lb-panel { min-height: 320px; border-radius: 14px; } }