/* Nikimix — lecteur global (barre fixe en bas de page) */
.nkp {
	--nkp-bg: rgba(12, 16, 26, .96);
	--nkp-line: rgba(255, 255, 255, .08);
	--nkp-txt: #e8eaf0;
	--nkp-dim: #8b92a8;
	--nkp-accent: #2290d4;
	position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
	background: var(--nkp-bg);
	-webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	border-top: 1px solid var(--nkp-line);
	color: var(--nkp-txt);
	font-family: Inter, system-ui, -apple-system, sans-serif;
	padding-bottom: env(safe-area-inset-bottom, 0);
	box-shadow: 0 -8px 30px rgba(0, 0, 0, .35);
}
.nkp[hidden] { display: none; }
body.has-nkp { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0)); }

.nkp__in { display: flex; align-items: center; gap: 12px; max-width: 1200px; margin: 0 auto; padding: 10px 16px; min-height: 64px; box-sizing: border-box; }

/* Barre de progression : sur le bord haut, épaisse au doigt, fine à l'œil */
.nkp__seek {
	-webkit-appearance: none; appearance: none;
	position: absolute; left: 0; right: 0; top: -7px; width: 100%; height: 14px; margin: 0;
	background: transparent; cursor: pointer;
}
.nkp__seek::-webkit-slider-runnable-track { height: 3px; background: linear-gradient(var(--nkp-accent), var(--nkp-accent)) 0 / var(--p, 0%) 100% no-repeat, rgba(255, 255, 255, .14); border-radius: 2px; }
.nkp__seek::-moz-range-track { height: 3px; background: rgba(255, 255, 255, .14); border-radius: 2px; }
.nkp__seek::-moz-range-progress { height: 3px; background: var(--nkp-accent); border-radius: 2px; }
.nkp__seek::-webkit-slider-thumb { -webkit-appearance: none; width: 13px; height: 13px; margin-top: -5px; border-radius: 50%; background: #fff; box-shadow: 0 0 0 3px rgba(34, 144, 212, .45); }
.nkp__seek::-moz-range-thumb { width: 13px; height: 13px; border: 0; border-radius: 50%; background: #fff; }

.nkp__cover { flex: 0 0 auto; width: 48px; height: 48px; border-radius: 8px; overflow: hidden; background: rgba(255, 255, 255, .06); display: block; }
.nkp__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nkp__cover.is-empty img { display: none; }

.nkp__info { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.nkp__title { color: var(--nkp-txt) !important; font-weight: 700; font-size: .95rem; text-decoration: none !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nkp__time { color: var(--nkp-dim); font-size: .78rem; font-variant-numeric: tabular-nums; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.nkp__ctrl { display: flex; align-items: center; gap: 4px; flex: 0 0 auto; }
.nkp__btn {
	-webkit-appearance: none; appearance: none; border: 0; background: transparent; color: var(--nkp-txt);
	width: 40px; height: 40px; padding: 8px; border-radius: 50%; cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
	margin: 0; min-height: 0; line-height: 1; box-shadow: none; text-transform: none;
}
.nkp__btn svg { width: 100%; height: 100%; display: block; }
.nkp__btn:hover { background: rgba(255, 255, 255, .08); }
.nkp__btn:focus-visible { outline: 2px solid var(--nkp-accent); outline-offset: 2px; }
.nkp__play { width: 46px; height: 46px; padding: 11px; background: var(--nkp-accent); color: #fff; }
.nkp__play:hover { background: #2a9fe6; }
.nkp__close { width: 34px; height: 34px; padding: 9px; color: var(--nkp-dim); }

@media (max-width: 600px) {
	.nkp__in { gap: 10px; padding: 9px 12px; }
	.nkp__cover { width: 42px; height: 42px; }
	.nkp__back, .nkp__fwd { width: 36px; height: 36px; padding: 7px; }
	.nkp__title { font-size: .88rem; }
}
@media (max-width: 380px) {
	.nkp__back { display: none; }
}

/* Boutons « Écouter » reliés au lecteur */
[data-nk-play].is-playing { box-shadow: 0 0 0 2px rgba(34, 144, 212, .5); }

/* Page émission : icônes propres à la place des emojis 📅 ⏱ */
.nk-show-meta-row .nk-show-date::before,
.nk-show-meta-row .nk-show-duration::before,
.nk-episode-meta .nk-episode-date::before,
.nk-episode-meta .nk-episode-duration::before {
	content: '' !important;
	display: inline-block; width: 14px; height: 14px; margin-right: 6px; vertical-align: -2px;
	background: currentColor; opacity: .7;
	-webkit-mask: var(--nk-ico) center / contain no-repeat; mask: var(--nk-ico) center / contain no-repeat;
}
.nk-show-meta-row .nk-show-date::before, .nk-episode-meta .nk-episode-date::before {
	--nk-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}
.nk-show-meta-row .nk-show-duration::before, .nk-episode-meta .nk-episode-duration::before {
	--nk-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

/* Ligne « S'abonner » sous les boutons de la page émission */
.nk-show-subscribe { margin: -12px 0 24px; color: #8b92a8; font-size: .88rem; }
.nk-show-subscribe a { color: #3ab4f0 !important; font-weight: 600; text-decoration: none; }
.nk-show-subscribe a:hover { text-decoration: underline; }
