/**
 * WP-Player front-end skin.
 * Follows the theme tokens so the card matches light and dark mode.
 */

.wp-player {
	--wp-player-accent: var(--focus-color, #f04494);
	box-sizing: border-box;
	width: min(100%, 720px);
	max-width: 100%;
	margin: 16px auto;
	overflow: hidden;
	background: var(--main-bg-color, #fff);
	color: var(--main-color, #4e5358);
	border: 1px solid var(--main-border-color, rgba(50, 50, 50, 0.06));
	border-radius: var(--main-radius, 8px) var(--main-radius, 8px) 0 0;
	box-shadow: 0 0 10px var(--main-shadow, rgba(116, 116, 116, 0.08));
	font-family: inherit;
	font-size: 13px;
	line-height: 1.4;
	text-align: left;
}

.wp-player *,
.wp-player *::before,
.wp-player *::after {
	box-sizing: border-box;
}

.wp-player .wp-player-box {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 96px;
	padding: 14px;
}

.wp-player .wp-player-thumb {
	position: relative;
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	overflow: hidden;
	border-radius: calc(var(--main-radius, 8px) - 2px);
	background: var(--muted-bg-color, #eee);
}

.wp-player .wp-player-thumb img {
	display: block;
	width: 72px !important;
	height: 72px !important;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	object-fit: cover;
}

.wp-player .wp-player-playing {
	display: none;
	position: absolute;
	z-index: 2;
	inset: 0;
	background: rgba(0, 0, 0, 0.35);
}

.wp-player .wp-player-playing span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 3;
	width: 11px;
	height: 11px;
	margin: -5px 0 0 -5px;
	background: url(../images/playing.gif) no-repeat center !important;
}

.wp-player .wp-player-panel {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.wp-player .wp-player-title,
.wp-player .wp-player-author {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.wp-player .wp-player-title {
	height: 22px;
	margin: 0 0 2px;
	color: var(--key-color, #333);
	font-size: 15px;
	font-weight: 650;
	line-height: 22px;
}

.wp-player .wp-player-author {
	margin: 0 0 8px;
	color: var(--muted-color, #777);
	font-size: 12px;
	line-height: 1.4;
}

.wp-player .wp-player-progress {
	height: 4px;
	margin: 0 0 10px;
	overflow: visible;
	background: var(--muted-bg-color, #eee);
	border-radius: 999px;
}

.wp-player .wp-player-seek-bar,
.wp-player .wp-player-play-bar {
	height: 100%;
	border-radius: inherit;
}

.wp-player .wp-player-seek-bar {
	width: 0;
	background: color-mix(in srgb, var(--wp-player-accent) 28%, var(--muted-bg-color, #eee));
	cursor: pointer;
}

.wp-player .wp-player-play-bar {
	position: relative;
	width: 0;
	background: var(--wp-player-accent);
}

.wp-player .wp-player-play-current {
	display: block;
	position: absolute;
	top: 50%;
	right: -5px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	background: var(--wp-player-accent) !important;
	border: 2px solid var(--main-bg-color, #fff);
	border-radius: 50%;
	box-shadow: 0 0 0 1px color-mix(in srgb, var(--wp-player-accent) 35%, transparent);
}

.wp-player .wp-player-controls-holder {
	position: relative;
	height: 28px;
}

.wp-player .wp-player-time {
	position: absolute;
	top: 0;
	left: 0;
	width: 52px;
	height: 28px;
	color: var(--muted-2-color, #999);
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	line-height: 28px;
}

.wp-player .wp-player-controls {
	position: absolute;
	top: 0;
	left: 50%;
	width: 108px;
	height: 28px;
	margin: 0 0 0 -54px;
}

.wp-player .wp-player-controls a,
.wp-player .wp-player-list-btn,
.wp-player .wp-player-lyrics-btn {
	background: url(../images/wp_player_bg.png) -9999px -9999px no-repeat !important;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 2dppx) {
	.wp-player .wp-player-controls a,
	.wp-player .wp-player-list-btn,
	.wp-player .wp-player-lyrics-btn {
		background-image: url(../images/wp_player_bg2x.png) !important;
		background-size: 58px auto !important;
	}
}

.dark-theme .wp-player .wp-player-controls a,
.dark-theme .wp-player .wp-player-list-btn,
.dark-theme .wp-player .wp-player-lyrics-btn {
	filter: brightness(1.45);
}

.wp-player .wp-player-controls a {
	position: absolute;
	display: block;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
}

.wp-player a.wp-player-previous,
.wp-player a.wp-player-next {
	top: 9px;
	left: 0;
	width: 16px;
	height: 10px;
	background-position: 0 -6px !important;
}

.wp-player a.wp-player-next {
	right: 0;
	left: auto;
	background-position: -42px -6px !important;
}

.wp-player a.wp-player-play,
.wp-player a.wp-player-stop {
	top: 0;
	left: 40px;
	width: 28px;
	height: 28px;
	background-position: 0 -21px !important;
}

.wp-player a.wp-player-stop {
	display: none;
	background-position: -30px -21px !important;
}

.wp-player .wp-player-lyrics-btn,
.wp-player .wp-player-list-btn {
	position: absolute;
	cursor: pointer;
}

.wp-player .wp-player-lyrics-btn {
	top: 7px;
	right: 26px;
	width: 14px;
	height: 14px;
	background-position: -20px -56px !important;
}

.wp-player .wp-player-list-btn {
	top: 9px;
	right: 0;
	width: 18px;
	height: 10px;
	background-position: -40px -57px !important;
}

.wp-player .wp-player-main {
	position: relative;
}

.wp-player .wp-player-list {
	height: auto !important;
	max-height: 330px;
	overflow: auto;
	border-top: 1px solid var(--main-border-color, rgba(50, 50, 50, 0.06));
	-webkit-overflow-scrolling: touch;
}

.wp-player .wp-player-list.wp-player-list-hide {
	height: 0 !important;
	max-height: 0 !important;
	border-top: 0 !important;
	overflow: hidden;
}

.wp-posts-content .wp-player .wp-player-list ul,
.wp-posts-content .wp-player .wp-player-lyrics ul,
.wp-player .wp-player-list ul,
.wp-player .wp-player-lyrics ul {
	margin: 0 !important;
	padding: 0 !important;
	border: 0;
	list-style: none !important;
}

.wp-player .wp-player-list ul li,
.wp-player .wp-player-list ul li.odd {
	display: block;
	height: auto;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: var(--main-bg-color, #fff);
	list-style: none !important;
	cursor: pointer;
}

.wp-player .wp-player-list ul li::before,
.wp-player .wp-player-list ul li::after,
.wp-player .wp-player-lyrics ul li::before,
.wp-player .wp-player-lyrics ul li::after {
	content: none !important;
}

.wp-player .wp-player-list ul li a {
	display: block;
	height: 36px;
	margin: 0;
	padding: 0 14px;
	overflow: hidden;
	border: 0;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--main-color, #4e5358);
	font-size: 13px;
	line-height: 36px;
	text-decoration: none;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.wp-player .wp-player-list ul li:hover a,
.wp-player .wp-player-list ul li.current a {
	color: var(--key-color, #333);
}

.wp-player .wp-player-list ul li.current {
	background: color-mix(in srgb, var(--wp-player-accent) 12%, var(--main-bg-color, #fff));
	box-shadow: inset 4px 0 0 var(--wp-player-accent);
}

.wp-player .wp-player-list-order,
.wp-player .wp-player-list-title,
.wp-player .wp-player-list-author {
	line-height: 36px;
}

.wp-player .wp-player-list-order {
	float: left;
	width: 28px;
	color: var(--muted-2-color, #999);
}

.wp-player .wp-player-list-author {
	float: right;
	max-width: 46%;
	padding-left: 12px;
	overflow: hidden;
	color: var(--muted-color, #777);
	text-overflow: ellipsis;
}

.wp-player .wp-player-lyrics {
	max-height: 330px;
	overflow: hidden;
	border-top: 1px solid var(--main-border-color, rgba(50, 50, 50, 0.06));
}

.wp-player .wp-player-lyrics ul {
	display: none;
	transition: margin-top 0.3s linear;
}

.wp-player .wp-player-lyrics ul li {
	height: 28px;
	margin: 0 !important;
	padding: 0 16px !important;
	overflow: hidden;
	border: 0 !important;
	background: var(--main-bg-color, #fff);
	color: var(--muted-color, #777);
	font-size: 13px;
	line-height: 28px !important;
	list-style: none !important;
	text-align: center;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.wp-player .wp-player-lyrics ul li.current {
	color: var(--wp-player-accent);
	font-size: 14px;
}

.wp-player .wp-player-list::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

.wp-player .wp-player-list::-webkit-scrollbar-thumb {
	background: color-mix(in srgb, var(--muted-color, #777) 35%, transparent);
	border-radius: 999px;
}

@media screen and (max-width: 640px) {
	.wp-player {
		width: 100%;
	}

	.wp-player .wp-player-box {
		gap: 10px;
		padding: 12px;
	}

	.wp-player .wp-player-thumb,
	.wp-player .wp-player-thumb img {
		width: 64px !important;
		height: 64px !important;
	}

	.wp-player .wp-player-thumb {
		flex-basis: 64px;
	}

	.wp-player .wp-player-lyrics ul,
	.wp-player .wp-player-lyrics-btn {
		display: none;
	}
}
