:root{
	--gold:#d4af37;
	--gold-bright:#e8c14a;
	--black:#0a0a0a;
	--cover-bg:#f4f2ee;
	--olive-dark:#3c3f34;
	--olive-mid:#5c6152;
	--olive-light:#8a9078;
	--text-muted:#c9c9c0;
  }
 
#player {
	display:flex;
	width:100%;
	max-width:1200px;
	left: 50%;
	transform: translateX(-50%);
	bottom: 20px;
	background: rgba(133, 136, 114, 0.7);
	overflow:hidden;
	box-shadow:0 10px 30px rgba(0,0,0,.5);
	font-family:Arial,Helvetica,sans-serif !important;
	z-index: 2000;
	position: fixed;
	border: 2px solid #a5b4ac;
	border-radius: 10px;
	backdrop-filter: blur(10px) saturate(180%);
	  -webkit-backdrop-filter: blur(10px) saturate(180%);
  }
  
  #player p {
	  font-family:Arial,Helvetica,sans-serif !important;
  }

  /* ---- Logo block ---- */
#player .logo{
	background:var(--black);
	display:flex;
	align-items:center;
	gap:12px;
	padding:0 10px;
  }
#player .logo svg{ width:30px; height:70px; flex-shrink:0; }
#player .logo-text{ font-family:Georgia,serif; color:#fff; line-height:1.05; }
#player .logo-text .brand{ font-size:22px; font-weight:700; }
#player .logo-text .tagline{
	font-family:Arial,sans-serif;
	font-size:9px;
	letter-spacing:1px;
	color:#c9c9c9;
	margin-top:6px;
  }

  /* ---- Cover block ---- */
#player .cover{
	background:var(--cover-bg);
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
  }
#player .cover-art{
	width:120px;
	height:120px;
	background:linear-gradient(135deg,#2b2b2b,#050505);
	display:flex;
	align-items:center;
	justify-content:center;
  }
 #player .cover-art img {
	 width: 100%;
	 height: auto;
 }
#player .cover-art svg{ width:42px; height:42px; opacity:.55; }
#player .cover-label{
	position:absolute;
	bottom:8px;
	left:10px;
	font-size:8px;
	letter-spacing:1px;
	color:#8a8a8a;
	font-weight:bold;
  }

  /* ---- Info + controls block ---- */
#player .stage{
	flex:1 1 auto;
	position:relative;
	align-items:center;
	gap:24px;
	padding:0 12px;	
	min-width:0;
  }

#player .info{ position:relative; min-width:0; width: 100%; }
#player .info .on-air{
	color:var(--gold-bright);
	font-weight:700;
	font-size:11px;
	letter-spacing:1.5px;
	margin:0 0 4px;
  }
#player .info .track{
	color:#fff;
	font-style:italic;
	font-weight:700;
	font-size:13px;
	margin:0 0 2px;
	overflow:hidden;
	text-overflow:ellipsis;
  }
#player .info .artist{
	color:#f2f2f2;
	font-size:13px;
	margin:0 0 6px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
  }
#player .info .credit{
	color:var(--text-muted);
	font-size:11px;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
  }

#player .controls{
	position:relative;
	min-width:0;
	flex: 0 0 225px;
  }
  
  #player .controls-top{
	  position:relative;
	  display:flex;
	  align-items:center;
	  gap:22px;
	  min-width:0;
	  margin-bottom: 10px;
	  justify-content: center;
	}

#player .btn-circle{
	border:none;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	flex-shrink:0;
  }
#player .play-btn{
	width:52px; height:52px;
	background:rgba(0,0,0,.45);
	transition:transform .12s ease, background .2s ease;
  }
#player .play-btn:hover{ background:var(--gold-bright); transform:scale(1.05); }

#player .play-btn:hover svg {
  fill: rgba(0,0,0,.45);
  transition: fill 0.3s ease;
}

#player .play-btn svg{ width:20px; height:20px; }

#player .live-btn{
	width:52px; height:52px;
	background:rgba(0,0,0,.45);
  }
#player .live-btn svg{ width:20px; height:20px; opacity:.85; }
#player .live-btn.pulsing svg{ animation:pulse 1.4s ease-in-out infinite; }
  @keyframes pulse{
	0%,100%{ opacity:.55; }
	50%{ opacity:1; }
  }

#player .badge{
	background:var(--gold);
	color:#1a1a1a;
	font-weight:800;
	font-size:12px;
	letter-spacing:.5px;
	padding:6px 14px;
	border-radius:4px;
	flex-shrink:0;
	white-space:nowrap;
  }

#player .volume{
	display:flex;
	align-items:center;
	gap:10px;
	min-width:160px;
  }
#player .volume svg{ width:18px; height:18px; color:#eee; flex-shrink:0; }
#player .volume input[type="range"]{
	-webkit-appearance:none;
	appearance:none;
	width:100%;
	height:3px;
	border-radius:2px;
	background: linear-gradient(90deg, var(--gold) 0%, var(--gold) var(--val,70%), rgba(255,255,255,.35) var(--val,70%), rgba(255,255,255,.35) 100%);
	cursor:pointer;
  }
#player .volume input[type="range"]::-webkit-slider-thumb{
	-webkit-appearance:none;
	width:14px; height:14px;
	border-radius:50%;
	background:var(--gold);
	box-shadow:0 0 0 3px rgba(0,0,0,.15);
	cursor:pointer;
  }
#player .volume input[type="range"]::-moz-range-thumb{
	width:14px; height:14px;
	border:none;
	border-radius:50%;
	background:var(--gold);
	cursor:pointer;
  }

  /* ---- Right action block ---- */
#player .action{
	flex:0 0 74px;
	background:var(--black);
	display:flex;
	align-items:center;
	justify-content:center;
  }
#player .action button{
	background:none;
	border:none;
	cursor:pointer;
	padding:10px;
  }
  
  #player .minimize {
	  position: absolute;
	  top: 5px;
	  right: 10px;
	  
  }
  
  #player .minimize button {
	color: var(--gold);  
	background-color: var(--olive-dark);
	border-radius: 4px;
	font-size: 14px;
	line-height: 14px;
	padding: 5px;
  }
  
  #player .minimize button:hover {
	  background-color: var(--gold);  
	  color: var(--olive-dark);
	}
  
  
#player .action svg{ width:26px; height:26px; }

#player .minimize-panel, #player:not(.mini) .fw-off {
	display: none;
}

#player.mini .fw-on {
	display: none;
}
#player.mini .minimize-panel {
	display: block;
}

#player.mini {
	width:120px;
	height: 120px;
	left: auto;
	transform: none;
	right:20px;	
}

#player.mini .logo-cover, #player.mini .stage {
	display: none !important;
}

  @media (max-width: 760px){
	#player{ height:auto; flex-wrap:wrap; }
	#player .logo, #player .cover, #player.action { flex:0 0 auto; }
	#player .stage{ flex-wrap:wrap; padding:16px; }
	#player .controls{ justify-content:flex-start; }
	#player .logo-cover {width: 100%}
	#player .controls { gap: 20px; }
  }