/**
 * נגן רדיו צף — שפת מותג המנגן
 * #20215a / #26235a / #cb1e53 / פולין
 * כל הכפתורים עם !important נגד דריסת תבנית
 */

.cmp-radio-root {
	--cmp-r-brand: #cb1e53;
	--cmp-r-brand-glow: rgba(203, 30, 83, 0.35);
	--cmp-r-navy: #20215a;
	--cmp-r-navy-deep: #26235a;
	--cmp-r-surface: #ffffff;
	--cmp-r-surface-soft: #f7f6ff;
	--cmp-r-text: #20215a;
	--cmp-r-muted: #666666;
	--cmp-r-border: rgba(32, 33, 90, 0.14);
	--cmp-r-font: "פולין", "Polin", sans-serif;
	--cmp-r-radius: 16px;
	--cmp-r-shadow: 0 12px 36px rgba(32, 33, 90, 0.18);
	position: fixed !important;
	inset: 0 !important;
	pointer-events: none !important;
	z-index: 99997 !important;
}

.cmp-radio-root[hidden] {
	display: none !important;
}

html[data-hm-theme="dark"] .cmp-radio-root {
	--cmp-r-surface: #1e1e32;
	--cmp-r-surface-soft: rgba(255, 255, 255, 0.05);
	--cmp-r-text: #f5f5f7;
	--cmp-r-muted: rgba(245, 245, 247, 0.65);
	--cmp-r-border: rgba(255, 255, 255, 0.12);
	--cmp-r-brand: #fa8504;
	--cmp-r-brand-glow: rgba(250, 133, 4, 0.35);
	--cmp-r-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
}

/* ========== FAB ========== */
button.cmp-radio-fab,
.cmp-radio-root button.cmp-radio-fab {
	appearance: none !important;
	-webkit-appearance: none !important;
	position: fixed !important;
	right: max(16px, env(safe-area-inset-right, 0px)) !important;
	left: auto !important;
	bottom: calc(max(16px, env(safe-area-inset-bottom, 0px)) + 56px + 12px) !important;
	z-index: 99998 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 56px !important;
	height: 56px !important;
	min-width: 56px !important;
	min-height: 56px !important;
	max-width: 56px !important;
	max-height: 56px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--cmp-r-border) !important;
	border-radius: var(--cmp-r-radius) !important;
	background: var(--cmp-r-surface) !important;
	background-color: var(--cmp-r-surface) !important;
	background-image: none !important;
	color: var(--cmp-r-brand) !important;
	box-shadow: var(--cmp-r-shadow) !important;
	font-family: var(--cmp-r-font) !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-transform: none !important;
	text-shadow: none !important;
	text-decoration: none !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	overflow: visible !important;
	box-sizing: border-box !important;
	filter: none !important;
	transform: none !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease, color 0.18s ease !important;
	-webkit-tap-highlight-color: transparent !important;
}

button.cmp-radio-fab:hover,
button.cmp-radio-fab:focus-visible,
.cmp-radio-root button.cmp-radio-fab:hover,
.cmp-radio-root button.cmp-radio-fab:focus-visible {
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 40px rgba(32, 33, 90, 0.24) !important;
	color: var(--cmp-r-navy) !important;
	background: var(--cmp-r-surface) !important;
	outline: none !important;
}

html[data-hm-theme="dark"] button.cmp-radio-fab:hover,
html[data-hm-theme="dark"] button.cmp-radio-fab:focus-visible {
	color: #fff !important;
	box-shadow: 0 14px 40px rgba(0, 0, 0, 0.5) !important;
}

button.cmp-radio-fab:active,
.cmp-radio-root button.cmp-radio-fab:active {
	transform: translateY(0) !important;
}

button.cmp-radio-fab[hidden],
.cmp-radio-root button.cmp-radio-fab[hidden] {
	display: none !important;
}

button.cmp-radio-fab svg,
.cmp-radio-root button.cmp-radio-fab svg {
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	fill: currentColor !important;
	pointer-events: none !important;
}

/* תווית קופצת — כמו מפת המוזיקה */
.cmp-radio-fab__label,
button.cmp-radio-fab .cmp-radio-fab__label {
	position: absolute !important;
	right: calc(100% + 10px) !important;
	left: auto !important;
	top: 50% !important;
	transform: translateY(-50%) translateX(8px) scale(0.94) !important;
	transform-origin: right center !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	white-space: nowrap !important;
	padding: 0.45rem 0.75rem !important;
	border-radius: 999px !important;
	background: var(--cmp-r-navy) !important;
	color: #fff !important;
	font-family: var(--cmp-r-font) !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	box-shadow: 0 8px 24px rgba(32, 33, 90, 0.22) !important;
	transition: opacity 0.2s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.2s ease !important;
}

html[data-hm-theme="dark"] .cmp-radio-fab__label,
html[data-hm-theme="dark"] button.cmp-radio-fab .cmp-radio-fab__label {
	background: var(--cmp-r-surface) !important;
	color: var(--cmp-r-text) !important;
	border: 1px solid var(--cmp-r-border) !important;
}

button.cmp-radio-fab:hover .cmp-radio-fab__label,
button.cmp-radio-fab:focus-visible .cmp-radio-fab__label,
.cmp-radio-root button.cmp-radio-fab:hover .cmp-radio-fab__label,
.cmp-radio-root button.cmp-radio-fab:focus-visible .cmp-radio-fab__label {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(-50%) translateX(0) scale(1) !important;
}

@media (prefers-reduced-motion: reduce) {
	.cmp-radio-fab__label {
		transition: none !important;
	}
}

button.cmp-radio-fab.is-playing,
.cmp-radio-root button.cmp-radio-fab.is-playing {
	color: var(--cmp-r-brand) !important;
	border-color: var(--cmp-r-brand) !important;
}

button.cmp-radio-fab.is-playing::after,
.cmp-radio-root button.cmp-radio-fab.is-playing::after {
	content: "" !important;
	position: absolute !important;
	top: 8px !important;
	right: 8px !important;
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: var(--cmp-r-brand) !important;
	box-shadow: 0 0 0 0 var(--cmp-r-brand-glow) !important;
	animation: cmp-radio-pulse 1.6s ease-out infinite !important;
}

@keyframes cmp-radio-pulse {
	0% { box-shadow: 0 0 0 0 var(--cmp-r-brand-glow); }
	70% { box-shadow: 0 0 0 8px transparent; }
	100% { box-shadow: 0 0 0 0 transparent; }
}

/* ========== Panel ========== */
.cmp-radio-root .cmp-radio,
div.cmp-radio {
	position: fixed !important;
	right: max(16px, env(safe-area-inset-right, 0px)) !important;
	bottom: max(24px, calc(16px + env(safe-area-inset-bottom, 0px))) !important;
	z-index: 99999 !important;
	width: min(340px, calc(100vw - 24px)) !important;
	margin: 0 !important;
	padding: 1.05rem 1.1rem 0.9rem !important;
	border: 1px solid var(--cmp-r-border) !important;
	border-radius: 20px !important;
	background: var(--cmp-r-surface) !important;
	background-image: none !important;
	color: var(--cmp-r-text) !important;
	box-shadow: var(--cmp-r-shadow) !important;
	font-family: var(--cmp-r-font) !important;
	pointer-events: auto !important;
	user-select: none !important;
	touch-action: none !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.cmp-radio-root .cmp-radio[hidden],
div.cmp-radio[hidden] {
	display: none !important;
}

.cmp-radio-root .cmp-radio.is-dragging,
div.cmp-radio.is-dragging {
	opacity: 0.97 !important;
	cursor: grabbing !important;
	box-shadow: 0 18px 48px rgba(32, 33, 90, 0.28) !important;
}

/* מיקום אחרי גרירה — מבטל right/bottom כדי לא למתוח את החלון */
.cmp-radio-root .cmp-radio.is-positioned,
div.cmp-radio.is-positioned {
	right: auto !important;
	bottom: auto !important;
	left: var(--cmp-radio-left, 16px) !important;
	top: var(--cmp-radio-top, 16px) !important;
}

/* Close */
.cmp-radio-root button.cmp-radio__close,
div.cmp-radio button.cmp-radio__close {
	appearance: none !important;
	-webkit-appearance: none !important;
	position: absolute !important;
	top: 8px !important;
	left: 8px !important;
	right: auto !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 30px !important;
	height: 30px !important;
	min-width: 30px !important;
	min-height: 30px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	color: var(--cmp-r-muted) !important;
	box-shadow: none !important;
	cursor: pointer !important;
	opacity: 0.75 !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-transform: none !important;
	filter: none !important;
	transform: none !important;
	transition: opacity 0.15s ease, background-color 0.15s ease, color 0.15s ease !important;
}

.cmp-radio-root button.cmp-radio__close:hover,
.cmp-radio-root button.cmp-radio__close:focus-visible,
div.cmp-radio button.cmp-radio__close:hover,
div.cmp-radio button.cmp-radio__close:focus-visible {
	opacity: 1 !important;
	background: var(--cmp-r-surface-soft) !important;
	background-color: var(--cmp-r-surface-soft) !important;
	color: var(--cmp-r-navy) !important;
	outline: none !important;
	box-shadow: none !important;
}

html[data-hm-theme="dark"] .cmp-radio-root button.cmp-radio__close:hover,
html[data-hm-theme="dark"] .cmp-radio-root button.cmp-radio__close:focus-visible {
	color: #fff !important;
}

.cmp-radio-root button.cmp-radio__close svg,
div.cmp-radio button.cmp-radio__close svg {
	display: block !important;
	width: 14px !important;
	height: 14px !important;
	fill: currentColor !important;
	pointer-events: none !important;
}

/* Drag handle */
.cmp-radio-root .cmp-radio__drag,
div.cmp-radio .cmp-radio__drag {
	position: absolute !important;
	top: 10px !important;
	right: 14px !important;
	display: grid !important;
	grid-template-columns: repeat(3, 4px) !important;
	gap: 3px !important;
	padding: 6px !important;
	cursor: grab !important;
	opacity: 0.4 !important;
}

.cmp-radio-root .cmp-radio__drag span,
div.cmp-radio .cmp-radio__drag span {
	display: block !important;
	width: 4px !important;
	height: 4px !important;
	border-radius: 50% !important;
	background: var(--cmp-r-navy) !important;
	opacity: 0.45 !important;
}

html[data-hm-theme="dark"] .cmp-radio-root .cmp-radio__drag span {
	background: #f5f5f7 !important;
}

.cmp-radio-root .cmp-radio.is-dragging .cmp-radio__drag {
	cursor: grabbing !important;
	opacity: 0.7 !important;
}

/* Top row */
.cmp-radio-root .cmp-radio__top,
div.cmp-radio .cmp-radio__top {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 0.75rem !important;
	padding-inline-start: 1.5rem !important;
	min-width: 0 !important;
}

.cmp-radio-root .cmp-radio__meta,
div.cmp-radio .cmp-radio__meta {
	min-width: 0 !important;
	flex: 1 !important;
}

.cmp-radio-root .cmp-radio__live,
div.cmp-radio .cmp-radio__live {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.4rem !important;
	margin: 0 0 0.25rem !important;
	padding: 0 !important;
}

.cmp-radio-root .cmp-radio__live-text,
div.cmp-radio .cmp-radio__live-text {
	font-family: var(--cmp-r-font) !important;
	font-size: 0.82rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	color: var(--cmp-r-brand) !important;
	letter-spacing: 0.02em !important;
}

.cmp-radio-root .cmp-radio__live-dot,
div.cmp-radio .cmp-radio__live-dot {
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: var(--cmp-r-muted) !important;
	flex-shrink: 0 !important;
}

.cmp-radio-root .cmp-radio.is-playing .cmp-radio__live-dot,
div.cmp-radio.is-playing .cmp-radio__live-dot {
	background: var(--cmp-r-brand) !important;
	animation: cmp-radio-pulse 1.6s ease-out infinite !important;
}

.cmp-radio-root .cmp-radio__title,
div.cmp-radio .cmp-radio__title {
	font-family: var(--cmp-r-font) !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	color: var(--cmp-r-text) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Play button — מותג */
.cmp-radio-root button.cmp-radio__play,
div.cmp-radio button.cmp-radio__play {
	appearance: none !important;
	-webkit-appearance: none !important;
	flex-shrink: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 56px !important;
	height: 56px !important;
	min-width: 56px !important;
	min-height: 56px !important;
	max-width: 56px !important;
	max-height: 56px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--cmp-r-brand) !important;
	background-color: var(--cmp-r-brand) !important;
	background-image: none !important;
	color: #fff !important;
	box-shadow: 0 6px 20px var(--cmp-r-brand-glow) !important;
	cursor: pointer !important;
	font-size: 0 !important;
	line-height: 1 !important;
	text-transform: none !important;
	text-shadow: none !important;
	filter: none !important;
	transform: none !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease !important;
	-webkit-tap-highlight-color: transparent !important;
}

.cmp-radio-root button.cmp-radio__play:hover,
.cmp-radio-root button.cmp-radio__play:focus-visible,
div.cmp-radio button.cmp-radio__play:hover,
div.cmp-radio button.cmp-radio__play:focus-visible {
	transform: scale(1.05) !important;
	filter: brightness(1.06) !important;
	box-shadow: 0 8px 24px var(--cmp-r-brand-glow) !important;
	background: var(--cmp-r-brand) !important;
	background-color: var(--cmp-r-brand) !important;
	outline: none !important;
}

.cmp-radio-root button.cmp-radio__play:active,
div.cmp-radio button.cmp-radio__play:active {
	transform: scale(0.97) !important;
	filter: brightness(0.96) !important;
}

.cmp-radio-root .cmp-radio__play-ic,
div.cmp-radio .cmp-radio__play-ic {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	pointer-events: none !important;
}

.cmp-radio-root .cmp-radio__play-ic--play,
div.cmp-radio .cmp-radio__play-ic--play {
	display: block !important;
	margin-inline-start: 3px !important;
	border-style: solid !important;
	border-width: 9px 0 9px 15px !important;
	border-color: transparent transparent transparent #fff !important;
	background: transparent !important;
	background-image: none !important;
	box-sizing: border-box !important;
}

.cmp-radio-root .cmp-radio__play-ic--pause,
div.cmp-radio .cmp-radio__play-ic--pause {
	width: 14px !important;
	height: 16px !important;
	border: 0 !important;
	background:
		linear-gradient(#fff, #fff) left / 4px 100% no-repeat,
		linear-gradient(#fff, #fff) right / 4px 100% no-repeat !important;
}

.cmp-radio-root .cmp-radio.is-playing .cmp-radio__play-ic--play,
div.cmp-radio.is-playing .cmp-radio__play-ic--play {
	display: none !important;
}

.cmp-radio-root .cmp-radio.is-playing .cmp-radio__play-ic--pause,
div.cmp-radio.is-playing .cmp-radio__play-ic--pause {
	display: block !important;
}

/* Divider */
.cmp-radio-root .cmp-radio__divider,
div.cmp-radio .cmp-radio__divider {
	height: 1px !important;
	margin: 0.85rem 0 0.75rem !important;
	padding: 0 !important;
	border: 0 !important;
	background: var(--cmp-r-border) !important;
}

/* Volume */
.cmp-radio-root .cmp-radio__vol,
div.cmp-radio .cmp-radio__vol {
	display: flex !important;
	align-items: center !important;
	gap: 0.65rem !important;
	padding: 0 0.1rem !important;
	margin: 0 !important;
}

.cmp-radio-root .cmp-radio__vol-pct,
div.cmp-radio .cmp-radio__vol-pct {
	flex-shrink: 0 !important;
	min-width: 2.5em !important;
	font-family: var(--cmp-r-font) !important;
	font-size: 0.85rem !important;
	font-weight: 800 !important;
	color: var(--cmp-r-brand) !important;
	font-variant-numeric: tabular-nums !important;
	line-height: 1 !important;
}

.cmp-radio-root .cmp-radio__vol-slider,
div.cmp-radio input.cmp-radio__vol-slider {
	flex: 1 !important;
	min-width: 0 !important;
	width: auto !important;
	height: 4px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	background: transparent !important;
	background-color: transparent !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

.cmp-radio-root .cmp-radio__vol-slider::-webkit-slider-runnable-track,
div.cmp-radio input.cmp-radio__vol-slider::-webkit-slider-runnable-track {
	height: 4px !important;
	border-radius: 999px !important;
	background: linear-gradient(
		to right,
		var(--cmp-r-navy) 0%,
		var(--cmp-r-navy) var(--cmp-vol, 40%),
		rgba(32, 33, 90, 0.16) var(--cmp-vol, 40%),
		rgba(32, 33, 90, 0.16) 100%
	) !important;
}

html[data-hm-theme="dark"] .cmp-radio-root .cmp-radio__vol-slider::-webkit-slider-runnable-track {
	background: linear-gradient(
		to right,
		var(--cmp-r-brand) 0%,
		var(--cmp-r-brand) var(--cmp-vol, 40%),
		rgba(255, 255, 255, 0.18) var(--cmp-vol, 40%),
		rgba(255, 255, 255, 0.18) 100%
	) !important;
}

.cmp-radio-root .cmp-radio__vol-slider::-webkit-slider-thumb,
div.cmp-radio input.cmp-radio__vol-slider::-webkit-slider-thumb {
	-webkit-appearance: none !important;
	appearance: none !important;
	width: 16px !important;
	height: 16px !important;
	margin-top: -6px !important;
	border-radius: 50% !important;
	border: 2px solid var(--cmp-r-brand) !important;
	background: #fff !important;
	box-shadow: 0 1px 4px rgba(32, 33, 90, 0.2) !important;
}

.cmp-radio-root .cmp-radio__vol-slider::-moz-range-track,
div.cmp-radio input.cmp-radio__vol-slider::-moz-range-track {
	height: 4px !important;
	border-radius: 999px !important;
	background: rgba(32, 33, 90, 0.16) !important;
	border: 0 !important;
}

.cmp-radio-root .cmp-radio__vol-slider::-moz-range-progress,
div.cmp-radio input.cmp-radio__vol-slider::-moz-range-progress {
	height: 4px !important;
	border-radius: 999px !important;
	background: var(--cmp-r-navy) !important;
}

html[data-hm-theme="dark"] .cmp-radio-root .cmp-radio__vol-slider::-moz-range-progress {
	background: var(--cmp-r-brand) !important;
}

.cmp-radio-root .cmp-radio__vol-slider::-moz-range-thumb,
div.cmp-radio input.cmp-radio__vol-slider::-moz-range-thumb {
	width: 16px !important;
	height: 16px !important;
	border-radius: 50% !important;
	border: 2px solid var(--cmp-r-brand) !important;
	background: #fff !important;
	box-shadow: 0 1px 4px rgba(32, 33, 90, 0.2) !important;
}

.cmp-radio-root .cmp-radio__vol-icon,
div.cmp-radio .cmp-radio__vol-icon {
	flex-shrink: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: var(--cmp-r-navy) !important;
}

html[data-hm-theme="dark"] .cmp-radio-root .cmp-radio__vol-icon {
	color: var(--cmp-r-brand) !important;
}

.cmp-radio-root .cmp-radio__vol-icon svg,
div.cmp-radio .cmp-radio__vol-icon svg {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	fill: currentColor !important;
}

.cmp-radio-root .cmp-radio__yt,
div.cmp-radio .cmp-radio__yt {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 480px) {
	.cmp-radio-root .cmp-radio,
	div.cmp-radio {
		width: min(320px, calc(100vw - 20px)) !important;
		padding: 0.95rem 1rem 0.8rem !important;
		border-radius: 18px !important;
	}

	.cmp-radio-root button.cmp-radio__play,
	div.cmp-radio button.cmp-radio__play {
		width: 52px !important;
		height: 52px !important;
		min-width: 52px !important;
		min-height: 52px !important;
		max-width: 52px !important;
		max-height: 52px !important;
	}
}

/* מובייל — מעל שורת ניווט; רדיו מעל מפת המוזיקה */
@media (max-width: 1023px) {
	body.hm-header-v2-active button.cmp-radio-fab,
	body.hm-header-v2-active .cmp-radio-root button.cmp-radio-fab {
		bottom: calc(var(--hm-h-mob-bar-h, 90px) + 16px + 56px + 12px) !important;
	}
}
