.spru-radio-button {
	padding: 5px;
	border-radius: 5px;
	border: 1px solid #CFCFCF;
	background-color: #F5F5F5;
}

.spru-radio-status {
	display: flex;
	flex-wrap: wrap;
	/* перенос строк включен */
	gap: 8px;
	align-items: center;
	font-size: 12px;
}

.spru-radio-artist-image {
	padding: 6px;
	border-radius: 5px;
	border: 1px solid #CFCFCF;
	background-color: #F5F5F5;
	flex: 0 0 auto;
	/* НЕ сжимать */
	width: 120px;
	height: 120px;
}

.spru-radio-artist-image img {
	width: 120px;
	height: 120px;
	border-radius: 5px;
}

/**/

/* 2) центральный блок */
.spru-radio-player {
	max-width: 100%;
	/* чтобы на очень узких не вылезал */
	flex: 0 0 auto;
	/* НЕ сжимать => если не влезает, переносится */
}

.spru-radio-player-main {
	display: flex;
	gap: 9px;
	align-items: center;
	position: relative;

	padding: 4px 50px 4px 4px;
	border-radius: 5px;
	border: 1px solid #CFCFCF;
}

.spru-radio-play img {
	width: 68px;
	height: 68px;
}

.spru-radio-meta {
	font-family: 'Oswald';
	line-height: 18px;
	position: relative;
}

.spru-radio-song-title {
	font-size: 15px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	min-width: 0;
}

.spru-radio-song-title-text {
	/* flex: 1 1 auto;  убрано из-за того, что не влезает иконка копирования текста */
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.spru-radio-song-artist {
	font-weight: 500;
	font-size: 18px;
}

.spru-radio-song-artist a {
	color: #28638f;
}

.spru-radio-elapsed {
	color: gray;
	font-size: 14px;
}


.sub {
	display: flex;
	gap: 10px;
	color: #666;
}

.spru-radio-listen {
	margin-top: 8px;
	display: flex;
	gap: 9px;
	flex-wrap: wrap;
}

.spru-radio-listen div {
	flex: 0 0 auto;
}

.spru-radio-listen div a img {
	width: 35px;
	height: 35px;
}

/* 3-й блок */
.spru-radio-online {
	width: 130px;
	height: 130px;
	border: 1px solid #CFCFCF;
	background-color: #F5F5F5;
	padding: 0;
	border-radius: 50%;
	flex: 0 0 auto;
	box-sizing: border-box;
	position: relative;
	font-family: 'Oswald';
	color: #1A6412;
}

.rp-online {
	position: absolute;
	top: 16px;
	left: 50%;
	transform: translateX(-50%);
	line-height: 1;
	font-size: 14px;
	color: #58a34e;
}

.rp-number {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 1;
	font-size: 55px;
}

.rp-emoji {
	position: absolute;
	top: 100px;
	left: 50%;
	transform: translateX(-50%);
	line-height: 1;
}


@keyframes blink-bg {
	0%   { background-color: #F5F5F5; }
	50%  { background-color: #cee8ce; }
	100% { background-color: #F5F5F5; }
}

.spru-radio-online.blink-bg {
	animation: blink-bg 2s ease-in-out 6s 2; 
}

@media (max-width: 650px) {
	.spru-radio-artist-image { order: 1; }
	.spru-radio-online       { order: 2; }
	.spru-radio-player       { order: 3; }
}

@media (max-width: 1094px) and (min-width: 896px) {
	.spru-radio-artist-image { order: 1; }
	.spru-radio-online       { order: 2; }
	.spru-radio-player       { order: 3; }
}


/***** Блоки с историей эфира *****/

.spru-radio-two-cols {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: flex-start;
	margin-top: 2px;
	font-size: 12px;
}

/* по умолчанию (мобилки) — 100% */
.spru-radio-two-cols>div {
	flex: 0 0 100%;
	width: 100%;
	min-width: 0;
}

/* начиная с десктопа — 60/40 */
@media (min-width: 901px) {
	.spru-radio-two-cols>.spru-radio-history {
		flex: 0 0 calc(45% - 5px);
		width: auto;
	}

	.spru-radio-two-cols>.spru-radio-requests {
		flex: 0 0 calc(55% - 5px);
		width: auto;
	}
}

.spru-radio-header {
	font-family: 'Oswald';
	font-size: 16px;
	margin: 12px;
}

.spru-radio-header img {
	width: 22px;
	margin-right: 10px;
}


/**** История эфира *****/

/* Один пункт истории */
.spru-radio-history ul li {
	position: relative;
	/* чтобы картинка/текст не налезали */
	box-sizing: border-box;

	display: flow-root;
	/* "clearfix" для float, современный вариант */

}

.spru-radio-history ul li,
.spru-radio-requests ul li,
.spru-radio-recent-orders ul li {
	padding: 5px;
	border-radius: 5px;
	border: 1px solid #CFCFCF;
	background-color: #F5F5F5;
	font-family: 'Scada';
	line-height: 18px;
	margin: 5px 0;
}

/* Картинка слева с обтеканием */
.spru-radio-item-image {
	float: left;
	margin: 0 7px 0 0;
	/* отступ справа от картинки */
	width: 38px;
	height: 38px;
}

.spru-radio-item-image img {
	width: 38px;
	height: 38px;
	border-radius: 5px;
	display: block;
}

/* Артист сверху, title ниже */
.spru-radio-artist {
	display: block;
	font-weight: 600;
	font-size: 15px;
}

.spru-radio-title,
.spru-radio-song {
	display: block;
	font-size: 14px;
}

/* Время — в правом нижнем углу */
.spru-radio-time {
	position: absolute;
	right: 6px;
	bottom: 6px;
	color: #777;
	white-space: nowrap;
}


/***** Блок с заказами *****/

/* Один пункт заявок */
.spru-radio-req-item {
	position: relative;
	padding: 8px 70px 8px 8px;
	/* справа место под дату */
	border-bottom: 1px solid #e5e5e5;
	box-sizing: border-box;
}

/* 1-я строка: FROM + FOR */
.spru-radio-req-who {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	align-items: center;
	font-size: 14px;
}

.spru-radio-req-from {
	font-weight: 600;
	color: #b54b2b;
}

.spru-radio-req-for {
	font-weight: 600;
	color: #b72222;
}

/* 2-я строка: COMMENT */
.spru-radio-req-comment {
	margin-bottom: 6px;
	color: #12225f;
	overflow-wrap: anywhere;
	font-size: 14px;
}

/* 3-й блок: картинка слева + текст справа */
.spru-radio-req-track {
	display: flow-root;
	/* чтобы float не ломал высоту */
	/* min-height: 52px; */
}

.spru-radio-req-image {
	float: left;
	width: 38px;
	height: 38px;
	margin: 0 7px 0 0;
}

.spru-radio-req-image img {
	width: 38px;
	height: 38px;
	border-radius: 5px;
	display: block;
}

.spru-radio-req-meta {
	overflow: hidden;
	/* чтобы текст не залезал под float */
}

.spru-radio-req-artist {
	display: block;
	font-weight: 600;
	font-size: 15px;
}

.spru-radio-req-title {
	display: block;
	overflow-wrap: anywhere;
	font-size: 14px;
}

/* Дата/время — внизу справа */
.spru-radio-req-date {
	position: absolute;
	right: 8px;
	bottom: 4px;
	color: #777;
	white-space: nowrap;
}

.spru-radio-req-status {
	font-size: 13px;
	font-weight: bold;
	text-align: right;
	clear: right;
}

.spru-radio-equalizer {
	background-image: url(./images/equalizer.gif);
	background-repeat: repeat-x;
	background-size: 90px 36px;
	background-position-y: 53px;
	background-color: rgba(245, 245, 245, .85);
	background-blend-mode: lighten;
}

.spru-radio-meta {
	position: relative;
}

.spru-radio-meta {
  position: relative;
}

/****** Копирование трека *****/

.spru-radio-copy {
	flex: 0 0 auto;
  position: static;
  transform: none;

  width: 22px;
  height: 22px;
  border-radius: 5px;
  border: 1px solid #CFCFCF;
  background: #F5F5F5;
  cursor: pointer;
  padding: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  
  font-size: 12px;
}

.spru-radio-copy i {
  font-size: 13px;
  color: #676778;
  pointer-events: none;
}


.spru-radio-copy.is-done i {
  color: #1A6412;
}

.spru-radio-copy:focus,
.spru-radio-copy:active {
  outline: none;
  box-shadow: none;
}



.spru-radio-favorite-corner {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 44px;
	height: 44px;
	border-radius: 8px;
	z-index: 1;
}

.spru-radio-favorite-corner i {
	font-size: 26px;
}

.spru-radio-favorite.is-active i {
  color: #c53a5c;
}

.spru-radio-favorite:hover i {
  color: #c53a5c;
}

.spru-radio-favorites-two-cols > div {
  flex: 0 0 100%;
  width: 100%;
  min-width: 0;
}

@media (min-width: 901px) {
  .spru-radio-favorites-two-cols > .spru-radio-favorites {
    flex: 0 0 calc(50% - 5px);
    width: auto;
  }
}

.spru-radio-favorites ul li {
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #CFCFCF;
  background-color: #F5F5F5;
  font-family: 'Scada';
  line-height: 18px;
  margin: 5px 0;
}

.spru-radio-fav-item {
  position: relative;
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  min-height: 50px;
  padding-right: 38px !important;
}

.spru-radio-fav-rank {
  flex: 0 0 34px;
  width: 34px;
  margin: 0;
  font-weight: 700;
  color: #6c5d90;
  line-height: 38px;
  text-align: center;
}

.spru-radio-fav-meta {
  flex: 1 1 auto;
  min-width: 0;
}

.spru-radio-fav-image {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  margin-right: 0;
}

.spru-radio-fav-image img {
  width: 38px;
  height: 38px;
  display: block;
}

.spru-radio-fav-artist,
.spru-radio-fav-title {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.spru-radio-fav-artist {
  font-weight: 600;
  font-size: 15px;
}

.spru-radio-fav-title {
  font-size: 14px;
}

.spru-radio-fav-count {
  position: absolute;
  right: 8px;
  bottom: 6px;
  min-width: 20px;
  text-align: right;
  font-weight: 700;
  color: #1A6412;
  white-space: nowrap;
}

.spru-radio-favorites .spru-radio-header .fa {
  margin-right: 10px;
  color: #c53a5c;
}


.spru-radio-listen .spru-radio-button .fa-heart {
  display: inline-block;
  font-size: 18px;
  line-height: 34px;
  width: 34px;
  text-align: center;
  color: #c53a5c;
}

#spru-radio-favorites {
  width: 100%;
  margin-top: 10px;
}

.spru-radio-fav-rank {
    font-size: 14px; /* или 18px, смотри по визуалу */
    font-weight: bold;
}

.spru-radio-fav-count {
    font-size: 14px; /* можно чуть меньше ранга */
    opacity: 0.8; /* чтобы не перебивал название */
}

.spru-radio-favorites-info {
  flex: 0 0 100%;
  width: 100%;
  box-sizing: border-box;
  margin: 6px 0 2px;
  padding: 10px 12px;
  border-radius: 5px;
  border: 1px solid #CFCFCF;
  background-color: #F5F5F5;
  font-family: 'Scada';
  font-size: 14px;
  line-height: 1.45;
}

.spru-radio-favorites-info a {
  font-weight: 700;
}

.spru-radio-ucp-search {
  margin: 10px 0 14px;
}

.spru-radio-ucp-search .fields1 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.spru-radio-ucp-summary {
  margin-bottom: 10px;
  font-size: 13px;
}

.spru-radio-ucp-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.spru-radio-ucp-item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 120px 8px 8px;
  border-radius: 5px;
  border: 1px solid #CFCFCF;
  background-color: #F5F5F5;
  font-family: 'Scada';
  margin: 0 0 6px;
}

.spru-radio-ucp-item-meta {
  flex: 1 1 auto;
  min-width: 0;
}

.spru-radio-ucp-item-date {
  position: absolute;
  right: 10px;
  bottom: 8px;
  color: #777;
  white-space: nowrap;
  font-size: 12px;
}

.spru-radio-ucp-sort {
  margin: 0 0 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 13px;
}

.spru-radio-ucp-sort strong {
  margin-right: 2px;
}


.spru-radio-ucp-root {
  position: relative;
}

.spru-radio-ucp-root.is-loading {
  opacity: .72;
  pointer-events: none;
}

.spru-radio-ucp-item {
  padding-right: 150px;
}

.spru-radio-ucp-delete {
  position: absolute;
  right: 10px;
  top: 8px;
  width: 30px;
  height: 30px;
  border: 1px solid #CFCFCF;
  border-radius: 5px;
  background: #F5F5F5;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.spru-radio-ucp-delete i {
  font-size: 14px;
}

.spru-radio-ucp-delete:hover {
  background: #fff;
}

.spru-radio-ucp-item-date {
  right: 48px;
}


.spru-radio-ucp-root .is-disabled {
	opacity: .55;
	cursor: default;
	pointer-events: none;
}

.spru-radio-ucp-delete.is-pending {
	opacity: 1;
	background: #fff;
}
