/*
Theme Name:	 23-1-25 V3 player script 
Version:	 4.19 - Cleaned
*/

@font-face {
	font-family:Manrope;
	src:url('/fonts/Manrope-VariableFont_wght.woff2') format('woff2');
}

html {
	box-sizing:border-box;
	font-family:Manrope,sans-serif; 
	background: white;
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust:100%;
	-webkit-font-smoothing:antialiased 
}

/* Media queries (preserved) */
@media screen and (min-width:200px) {

body {
	margin:0;
	font-size:15px;
	letter-spacing: .2px;
	background-color: #f3f3f3;
}

*,:after,:before {
	box-sizing:inherit;
}

/* Basic layout containers from your HTML */
#content,
.site-content {
	max-width:1100px;
	margin-left:auto;
	margin-right:auto;
	padding: 0.25em;
	background: white;
}

.content-area {
	width: 100%;
	margin-top: 3em;
}

.logo {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 2px;
	font-family: Arial;
	margin-right: auto;
	color: #444;
}
.widget_search {
	margin: .5em 0 .5em;
}
.widget-logo {
	text-align: center;
	margin: .3em 0;
}

.search-form{
	flex: 1;
	margin-left: .5em;
	max-width: 250px;
}

input[type="search"] {
	width: 100%;
	padding: .1em 1em;
	border: 1px solid #aaa;
	border-radius: 5px;
	color: #585858;
	background-color: #fefefe;
	box-shadow: none;
	font-size: 1em;
	line-height: 20px;
}

select, input, button, textarea {
    outline: none !important;  /* Removes the bright blue focus border/glow in Safari*/
	-webkit-appearance: none;
}
/* Autocomplete hints */
.btm-search-hints {
	position: absolute;
	width: 263px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	max-height: 200px;
	overflow-y: auto;
	z-index: 1000;
	display: none;
	box-sizing: border-box;
}

.btm-search-hints div {
	padding: 8px 10px;
	font-size: 14px;
	font-family: Arial, sans-serif;
	cursor: pointer;
}

.btm-search-hints div:hover {
	background: #f0f0f0;
}

#help-button {
	height: 28px;
	margin: 0 0 0 1em;
}
/* Widget title and select (categories) */
h4.widget-title {
	color: #1e1e1e;
	font-weight: 400;
	line-height: 1.125;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-align: center;
	margin: .8em 0;
}


li h4.widget-title {
    display: none;
    margin-top:.5em;
}

li:nth-child(2) h4.widget-title,
li:nth-child(3) h4.widget-title,
li:nth-child(4) h4.widget-title,
li:nth-child(6) h4.widget-title {
    display: none;
    margin-top:.5em;
}
li:nth-child(2),
li:nth-child(3), 
li:nth-child(4), 
li:nth-child(6) {
    margin-top:.5em;
}
select > option:nth-child(1) {
  display: none;
}
.postform option {
	font-size: 1.3em;
}
select {
    display:inline-block;
	height:1.9em;
	border:2px solid #aaa;
	border-radius:5px;
	color:#585858;
	background-color:snow;
	font-size:1em;
	text-align:left;
	vertical-align:middle;
	white-space:nowrap;
	text-overflow:ellipsis;
	width: 100%;
	padding: 0 0 0 .3em;
	cursor: pointer;
	/* Custom V arrow on the right */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M2 2L7 7L12 2' stroke='%23666' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 10px;
}

/* Active dropdown (the one that was just selected) */
.cat-select.active {
    background-color: #eee !important; 
    font-weight: 500;
}
/* 
 * .cat-select:hover {
    background-color: #f1f1f1;
} */
.widget-area {
	margin-top: 1em;
}

#cat-list {
	padding: 0;
}
#cat-list li {
	list-style: none;
	max-width: 400px;
	margin: .65em auto;
}

ol, ul {
	margin: 0;
	/* padding: 0 0 0 1em; */
}

a {
	color: #9a9a9a;
	text-decoration: none;
}

/* Player core */
.audio-player, 
.player {
	width:100%;
	border-radius:5px;
}

.player-logo {
	text-align:left;
	font-size:.6em;
	margin-bottom:.5em;
}

.player-logo a {
	color: brown;
	text-decoration:none;
}

.cut-on-v1,
.cut-on-mobile {
	display: none;
}

.wpcode-player button {
	font-weight: normal;
	border-radius: 5px;
	padding: 0;
	width: 35px;
	height: 20px;
	background: transparent;
}

.btn, button {
	display: inline-block;
	margin: 0;
	padding: .4em 1.5em;
	border: 1px solid transparent;
	border-color: #9d9b9b;
	border-radius: 3px;
	color: #333;
	background-color: #fafafa;
	background-image: none;
	font-size: 1em;
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
	text-decoration: none;
	cursor: pointer;
	-ms-touch-action: manipulation;
	touch-action: manipulation;
}

.player-speed .btn-speed-minus {
	margin-right: .5em;
}

.player-top,
.spinner-centering {
	font-size: .95em;
	position:relative;
}

.loading-spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 40px;
	height: 40px;
	border: 4px solid #ccc;
	border-top-color: #ff0000;
	border-radius: 50%;
	animation: spin 1s linear infinite;
}

@keyframes spin {
	0% { transform: translate(-50%, -50%) rotate(0deg); }
	100% { transform: translate(-50%, -50%) rotate(360deg); }
}

.player-face {
	padding: .3em .5em;
	background: gray;
	color: #eee;
	margin: 0 0 .3em;
	border-radius: 5px;
}

.player-face > * {
	margin: 0 .25em;
	color: #ddd;
}

.player-face .flex-right,
.player-speed .flex-right {
	margin: 0 0 0 auto;
}

.play-pause .play-button {
	border: none;
	color:#eee;
	width: 25px;
	height: auto;
	font-size: 1.6em;
	transform: rotateZ(90deg);
	font-weight: 700;
}

.player-speed {
	margin: .6em 0 .5em;
}

.player-speed > * {
	margin: 0 .35em 0 0;
}

.tracks-counter *,
.lpf * {
	margin-left: .25em;
}

.flex {
	display: flex;
	align-items: center;
}

.arial {
	font-family: Arial, sans-serif;
	color:#444;
}

.a-seek {
	max-width: 140px;
}

.flex-right .hpf {
	margin: 0 .5em 0 0;
}
.flex-right .hpf,
.flex-right .lpf {
	font-size: .8em;
	padding: .2em;
	width: 35px;
	height:20px;
}
input[type="range"] {
	width: 100%;
	height: 4px;
	background: #aaa;
	border-radius: 2px;
}
input[type="range"]::-webkit-slider-runnable-track {
    background: #aaa;
    height: 4px;
    border-radius: 2px;
}
input[type="range"]::-webkit-slider-thumb {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    margin-top: -6px;
}
.lpf input[type="range"] {
	max-width: 60px;
	margin: 0 0 0 .5em;
}
.track-length {
	display: none;
}

/* Playlist area */
.playlist-area {
	background: #fff;
}

.playlist {
	list-style-type: none;
	scroll-behavior: smooth;
	transition: max-height .3s ease-in-out;
}

.playlist a {
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width:100%;
}
.post-link {
	font-size: 0.8em;
	text-align: right;
	width: 100%;
    display: block;
}

a.active + span.post-link a {
    padding: 0 .5em 0;
    vertical-align: middle;
    width: max-content;
}
a:not(.active) + span.post-link a {
    display: none;
}

.playlist a:hover {
	color:black;
}

.playlist a.active,
.playlist .active:hover {
	color: #333;
	background: #f3f3f3;
	white-space: normal;
	text-decoration: none;
	display: inline;
}

.playlist li {
	padding:5px;
	margin:0;
}

.playlist li:has(a.active) {
	background: #f3f3f3; 
}

a.apple {
	display: none;
}

a.apple:has(+a.active) {
	width: 63px;
	margin: 0.2em .5em 0 .2em;
	border-radius: 50%;
}

.plEllipsis {
	text-align: center;
	transition: opacity .5s;
	font-size: 1.2em;
	cursor: pointer;
	color:#bababa;
	transform: rotateX(202.5deg);
	margin:.5em 0 0;
}
.flash {
	animation: flash 3s infinite;
}
@keyframes flash {
	0%, 75% { opacity: 1; }
	87% { opacity: .3; }
	100% { opacity: 1; }
}
#tracksCounter2 {
	margin: 0 0 0 .75em;
}
#tracks-bottom {
	position: absolute;
    display: flex;
    align-items: baseline;
    gap: 0.4em;
}
#nav_footer {
	margin: 1em 0 1.5em;
}

/* ==================== GLOBAL FOOTER - Bottom Right of Screen ==================== */

.footer {
    text-align: right;
    font-size: 13px;
    color: #666;
    margin: 1.5em 1em 0;
}

/* Make the whole page structure support sticky footer */
#content,
.site-content {
    min-height: 95vh;          /* important: allows margin-top:auto to work */
}

/* Push the main content area to grow and push footer down */
#primary {
    flex: 1;                    /* grows to fill available space */
}



}


@media screen and (min-width:520px) { 
	.wpcode-player .cut-on-mobile {
		display:inline;
	}

}

@media screen and (min-width:620px) { 
	.lpf input[type="range"] {
		max-width: 160px;
	}
	.a-seek {
		max-width: 300px;
	}
}

@media screen and (min-width:800px) {
	#helpTxt {
	border: 1px solid gray;
	border-radius: 5px;
	padding: .75em;
	}
	.postform option {
		font-size: 1em;
	}
	.footer {
    margin: auto 0 0;
    clear: both;
	}
	#nav_footer {
	margin: .5em;
	}
	.content-area {
	width:75%;
	float:left;
	border: none;
	margin-top:0;
	padding: 0 1em 0 0;
	}
	.widget-area {
	float:right;
	width:25%;
	margin: 0 auto;
	border:0;
	}
	body {
	font-size: 17px;
	}
	.site-content {
	padding: 0.5em 1em;
	}

	.play-button {
		width: 30px;
	}
	.lpf input[type="range"] {
		max-width: 80px;
	}


@media screen and (min-width:950px) { 
	.lpf input[type="range"] {
		max-width: 120px;
	}
}


}
