/* VNF post audio player. Light card in the VNF magenta and purple palette. */
.vnf-audio-wrap { margin: 0 0 26px; }
.vnf-audio { --vnf-magenta: #a71493; --vnf-purple: #7b2d8e; --vnf-tint: #f5eaf8; --vnf-ink: #101010; --vnf-muted: #4a4a55;
	display: flex; align-items: center; gap: 14px; max-width: 560px; padding: 10px 14px 10px 10px; border-radius: 999px;
	background: var(--vnf-tint); box-shadow: inset 0 0 0 1px rgba(123, 45, 142, .22); color: var(--vnf-ink); box-sizing: border-box; }
.vnf-audio audio { display: none; }
.vnf-audio-btn { flex: none; width: 44px; height: 44px; border-radius: 50%; border: 0; padding: 0; cursor: pointer;
	background: linear-gradient(135deg, var(--vnf-magenta), var(--vnf-purple)); color: #fff;
	display: flex; align-items: center; justify-content: center; transition: transform .15s, box-shadow .15s; }
.vnf-audio-btn:hover, .vnf-audio-btn:focus-visible { transform: scale(1.05); box-shadow: 0 4px 12px rgba(167, 20, 147, .35); }
.vnf-audio-btn svg { width: 18px; height: 18px; }
.vnf-audio-pause, .vnf-audio.is-playing .vnf-audio-play { display: none; }
.vnf-audio.is-playing .vnf-audio-pause { display: block; }
.vnf-audio-main { flex: 1; min-width: 0; }
.vnf-audio-label { display: block; font-size: 12px; line-height: 1; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
	color: var(--vnf-magenta); margin: 0 0 8px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vnf-audio-bar { display: block; height: 6px; border-radius: 6px; background: rgba(123, 45, 142, .18); overflow: hidden; cursor: pointer; }
.vnf-audio-fill { display: block; height: 100%; width: 0; border-radius: 6px; background: linear-gradient(90deg, #c13fae, var(--vnf-magenta)); }
.vnf-audio-time { flex: none; font-size: 13px; line-height: 1; font-weight: 600; color: var(--vnf-muted); font-variant-numeric: tabular-nums; }
.vnf-audio-speed { flex: none; min-width: 44px; border: 0; cursor: pointer; padding: 8px 10px; border-radius: 999px;
	background: #fff; color: var(--vnf-purple); font-size: 12px; line-height: 1; font-weight: 800; box-shadow: inset 0 0 0 1px rgba(123, 45, 142, .25); }
.vnf-audio-speed:hover { background: var(--vnf-magenta); color: #fff; }
@media (max-width: 480px) {
	.vnf-audio { gap: 10px; }
	.vnf-audio-label { font-size: 11px; letter-spacing: .08em; }
	.vnf-audio-time { font-size: 12px; }
}
