.radio-grid{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	align-items:stretch;
}

.radio-card{
	width:calc((100% - 36px) / 4);
	border:1px solid rgba(0,0,0,0.05);
	border-radius:16px;
	overflow:hidden;
	background:rgba(255,255,255,0.65);
	display:flex;
	flex-direction:column;
}


.radio-card__cover{
	position:relative;
	width:100%;
	height:140px;
	background:rgba(0,0,0,0.03);
}

.radio-card__cover img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

.radio-card__play{
	position:absolute;
	left:10px;
	bottom:10px;
	width:44px;
	height:44px;
	border-radius:14px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.45);
	color:#fff;
	cursor:pointer;
}

.radio-card.js-item-played .radio-card__play .fa-play-circle:before{
	content:'\f04c';
	font-size:14px;
	position:relative;
	top:0;
}
.radio-card__play.js-item-played .fa-play-circle:before{
	content:'\f04c';
	font-size:14px;
	position:relative;
	top:0;
}

.radio-card__info{
	padding:12px 12px 10px;
	text-decoration:none;
	color:inherit;
	display:block;
}

.radio-card__artist{
	font-size:15px;
	line-height:1.2;
	font-weight:700;
}

.radio-card__title{
	margin-top:4px;
	font-size:13px;
	line-height:1.25;
	opacity:0.85;
}

.radio-card__meta{
	padding:0 12px 12px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
}

.radio-card__time{
	font-size:12px;
	opacity:0.75;
	white-space:nowrap;
}

.radio-card__fav{
	width:36px;
	height:36px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	cursor:pointer;
}

.radio-card__fav--active{
	background:rgba(231,76,60,0.12);
}



.radio-page{
}

.radio-hero{
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:rgba(255,255,255,0.65);
	overflow:hidden;
}

.radio-hero__head{
	padding:14px 14px 0;
}

.radio-hero__title{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
}

.radio-hero__name{
	margin:0;
	font-size:20px;
	line-height:1.2;
	font-weight:800;
}

.radio-hero__edit{
	width:34px;
	height:34px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
	cursor:pointer;
}

.radio-hero__body{
	padding:14px;
	display:flex;
	gap:14px;
  align-items: center;
  justify-content: center;
	align-items:stretch;
}

.radio-hero__cover{
	width:260px;
	min-width:260px;
	height:260px;
	border-radius:16px;
	overflow:hidden;
	background:rgba(0,0,0,0.03);
}

.radio-hero__cover img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

.radio-hero__panel{
	flex:1;
	display:flex;
	flex-direction:column;
	gap:10px;
	min-width:0;
}

.radio-stats{
	margin:0;
	padding:0;
	list-style:none;
	border:1px solid rgba(0,0,0,0.06);
	border-radius:16px;
	background:rgba(255,255,255,0.55);
	overflow:hidden;
}

.radio-stats__row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:10px 12px;
	border-top:1px solid rgba(0,0,0,0.06);
}

.radio-stats__row:first-child{
	border-top:0;
}

.radio-stats__k{
	font-size:13px;
	opacity:0.72;
	white-space:nowrap;
}

.radio-stats__v{
	font-size:13px;
	font-weight:700;
	white-space:nowrap;
}

.radio-stats__v--live{
	color:#1f8a4c;
}


.radio-player__btn{
	width:100%;
	border:1px solid rgba(0,0,0,0.02);
	padding:14px 16px;
	border-radius: 10px;
	background:#55ff0015;
	color:#111;
	cursor:pointer;
	display:flex;
	align-items:center;
	gap:14px;
	transition:all .25s ease;
	position:relative;
	overflow:hidden;
}

.radio-player__btn:hover{
	transform:translateY(-2px);
	box-shadow:0 12px 28px rgba(0,0,0,0.12);
	background:#42c7003d;
}

.radio-player__btn:active{
	transform:translateY(0);
	box-shadow:0 6px 14px rgba(0,0,0,0.10);
}

.radio-player__icon{
	width:40px;
	height:40px;
	border-radius:16px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#111;
	color:#fff;
	font-size:18px;
	flex:0 0 auto;
	transition:all .25s ease;
}

.radio-player__btn:hover .radio-player__icon{
	background:#0087ff;
}

.radio-player.js-item-played .radio-player__icon{
	background:#eb4d4b;
}

.radio-player.js-item-played .radio-player__label{
	color:#eb4d4b;
}
.radio-player.js-item-played .fa-play-circle:before{
	top:-1px;
}

.radio-player__text{
	display:flex;
	flex-direction:column;
	gap:3px;
	min-width:0;
}

.radio-player__label{
	font-size:16px;
	font-weight:800;
	line-height:1.2;
}

.radio-player__sub{
	font-size:13px;
	opacity:0.7;
	line-height:1.2;
}

.radio-share{
	border:1px solid rgba(0,0,0,0.06);
	border-radius:16px;
	background:rgba(255,255,255,0.55);
	padding:10px 12px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
}

.radio-share__label{
	font-size:13px;
	opacity:0.72;
	white-space:nowrap;
}

.radio-share__list{
	display:flex;
	gap:8px;
	align-items:center;
}

.radio-share__btn{
	width:34px;
	height:34px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
}

.radio-about{
	margin-top:14px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:rgba(255,255,255,0.65);
	padding:14px;
}

.radio-about__title{
	margin:0 0 8px;
	font-size:16px;
	line-height:1.25;
	font-weight:800;
}

.radio-about__text{
	font-size:14px;
	line-height:1.55;
	opacity:0.9;
}

.radio-section{
	margin-top:14px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:rgba(255,255,255,0.65);
	overflow:hidden;
}

.radio-section__head{
	padding:14px 14px 0;
}

.radio-section__title{
	margin:0;
	font-size:16px;
	line-height:1.25;
	font-weight:800;
}

.radio-section__body{
	padding:12px 14px 14px;
}

.radio-section__more{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	margin-top:12px;
	padding:10px 12px;
	border-radius:14px;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
}



/* song */

.song-hero{
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#f7faff;
	overflow:hidden;
}

.song-hero__head{
	padding:14px 14px 0;
}

.song-hero__title{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
}

.song-hero__name{
	margin:0;
	font-size:20px;
	line-height:1.2;
	font-weight:800;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
}

.song-hero__artist{
	font-weight:700;
    padding-left: 6px;
    color: #0087ff;
}

.song-hero__track{
	display:inline-block;
	padding-left:6px;
}

.song-hero__edit{
	width:34px;
	height:34px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
	cursor:pointer;
}

.song-hero__body{
	padding:14px;
	display:flex;
	gap:14px;
	align-items:stretch;
}

.song-hero__cover{
	width:260px;
	min-width:260px;
	height:260px;
	border-radius:16px;
	overflow:hidden;
	background:rgba(0,0,0,0.03);
}

.song-hero__cover img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

.song-hero__panel{
	flex:1;
	display:flex;
	flex-direction:column;
	gap:8px;
	min-width:0;
}

.song-stats{
	margin:0;
	padding:0;
	list-style:none;
	border:1px solid rgba(0,0,0,0.06);
	border-radius:16px;
	background:#fff;
	overflow:hidden;
}

.song-stats__row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:10px 12px;
	border-top:1px solid rgba(0,0,0,0.06);
}

.song-stats__row:first-child{
	border-top:0;
}

.song-stats__k{
	font-size:13px;
	opacity:0.72;
	white-space:nowrap;
}

.song-stats__v{
	font-size:13px;
	font-weight:700;
	white-space:nowrap;
}

.song-stats__link{
	color:inherit;
	text-decoration:none;
	border-bottom:1px dotted rgba(0,0,0,0.35);
}

.song-actions{
	/* border:1px solid rgba(0,0,0,0.06);
	border-radius:16px;
	background:rgba(0,0,0,0.03);
	padding:10px; */
}

.song-actions__row{
	display:flex;
	gap:10px;
	align-items:stretch;
}

.song-actions__btn{
	border:1px solid rgba(0,0,0,0.05);
	border-radius: 10px;
	background:#fff;
	color:#111;
	cursor:pointer;
	text-decoration:none;
	display:flex;
	align-items:center;
	gap:10px;
	padding:12px 14px;
	flex:1;
	transition:all .25s ease;
	overflow:hidden;
}

.song-actions__btn:hover{
	transform:translateY(-2px);
	box-shadow:0 12px 28px rgba(0,0,0,0.10);
}

.song-actions__btn:active{
	transform:translateY(0);
	box-shadow:0 6px 14px rgba(0,0,0,0.08);
}

.song-actions__icon{
	width:40px;
	height:40px;
	border-radius:16px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#111;
	color:#fff;
	font-size:18px;
	flex:0 0 auto;
}

.song-actions__btn--download .song-actions__icon{
	background:#0f6fff;
}

.song-actions__text{
	display:flex;
	flex-direction:column;
	gap:3px;
	min-width:0;
}

.song-actions__label{
	font-size:16px;
	font-weight:800;
	line-height:1.2;
}

.song-actions__sub{
	font-size:13px;
	opacity:0.7;
	line-height:1.2;
}

.song-share{
	margin-top:10px;
	display:flex;
	gap:8px;
	flex-wrap:wrap;
}

.song-share__btn{
	width:36px;
	height:36px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
}

.song-telegram{
	margin:15px 0px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#00a6e6;
	padding:14px;
    color: #fff;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
}

.song-telegram__text{
	font-size:14px;
	line-height:1.4;
    color: #fff;
	opacity:0.9;
}

.song-telegram__btn{
	display:inline-flex;
	align-items:center;
	gap:8px;
    color: #fff;
    border: 1px solid #ffffff34;
	padding:10px 12px;
	border-radius:14px;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
	white-space:nowrap;
}

.song-telegram__btn:hover {
    transform: translateY(-1px);
    transition: .2s ease-in-out;
    color: #fff !important;
}

.song-section{
	margin-top:14px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#f7faff;
	overflow:hidden;
}

.song-section__head{
	padding:14px 14px 0;
}

.song-section__title{
	margin:0;
	font-size:16px;
	line-height:1.25;
	font-weight:800;
}

.song-section__body{
	padding:12px 14px 14px;
}

.song-section__more{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	margin-top:12px;
	padding:10px 12px;
	border-radius:14px;
	background:rgba(0,0,0,0.06);
	color:inherit;
	text-decoration:none;
}

.song-about{
	margin-top:14px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#fff;
	padding:14px;
}

.song-about__title{
	margin:0 0 8px;
	font-size:16px;
	line-height:1.25;
	font-weight:800;
}

.song-about__text{
	font-size:14px;
	line-height:1.55;
	opacity:0.9;
}

.song-comments{
	margin-top:14px;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#fff;
	overflow:hidden;
}

.song-comments__head{
	padding:14px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	border-bottom:1px solid rgba(0,0,0,0.06);
}

.song-comments__title{
	font-size:16px;
	line-height:1.25;
	font-weight:800;
}

.song-comments__add--link{
	padding:10px 12px;
	border-radius:14px;
	background:rgba(0,0,0,0.06);
	white-space:nowrap;
}

.song-comments__form{
	padding:14px;
}

@media (max-width:900px){
	.song-hero__body{
		flex-direction:column;
	}
	.song-hero__cover{
		width:100%;
		min-width:0;
		height:220px;
	}
	.song-actions__row{
		flex-direction:column;
	}
}


/* short  */


.songlist-item{
	border:1px solid rgba(0,0,0,0.05);
	border-radius: 10px;
	background:#ffffffa6;
	padding:6px;
	display:flex;
	align-items:center;
	gap:10px;
    margin-bottom: 6px;
}

.songlist-item:hover {
    background-color: #ecf2fb;
    border: 1px solid #cccccc59;
    transition: all .2s ease;
    transform: scale(1.01);
}

.songlist-item__cover{
	position:relative;
	width:48px;
	height:48px;
	border-radius:16px;
	overflow:hidden;
	background:rgba(0,0,0,0.03);
	flex:0 0 auto;
}


.songlist-item__cover img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

.songlist-item__play{
	position:absolute;
	right:6px;
	bottom:6px;
	width:34px;
	height:34px;
	border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.55);
	color:#fff;
	cursor:pointer;
}



.songlist-item__info{
	min-width:0;
	flex:1;
	text-decoration:none;
	color:inherit;
}

.songlist-item__title{
	font-size:14px;
	line-height:1.2;
	font-weight:800;
}

.songlist-item__artist{
	margin-top:3px;
	font-size:12px;
	line-height:1.2;
	opacity:0.75;
}

.songlist-item__right{
	display:flex;
	align-items:center;
	gap:8px;
	flex:0 0 auto;
}

.songlist-item__time{
	font-size:12px;
	opacity:0.75;
	white-space:nowrap;
}

.songlist-item__btn{
	width:34px;
	height:34px;
    font-size: 18px;
    color: #0f6fff;
    border-radius:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	background:rgba(0,0,0,0.06);
	color:inherit;
	cursor:pointer;
}

.songlist-item__btn--fav{
	background:#eb4d4b;
	color:#fff;
}

.songlist-item__btn--fav-active{
	background:#eb4d4b;
	color:#fff;
}

.songlist-item.js-item-played .fa-play-circle:before{
	content:'\f04c';
	font-size:14px;
	position:relative;
	top:0;
}

.artist-head{
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	background:#fff;
	padding:14px;
}

.artist-head__label{
	font-size:12px;
	font-weight:800;
	letter-spacing:0.2px;
	opacity:0.65;
	text-transform:uppercase;
}

.artist-head__name{
	margin:6px 0 0;
	font-size:22px;
	line-height:1.15;
	font-weight:900;
}

.artist-subhead{
	margin: 10px 0 6px;
    font-size: 14px;
    font-weight: 600;
    padding: 5px 15px 5px 15px;
    opacity: 0.6;
}


/* side */

.side-panel .logo {
    margin-left: 0px;
}

.side-panel .side-menu {    margin: 15px -5px; border: 0; padding: 10px; }

.side-menu{
	/* border:1px solid rgba(0,0,0,0.02); */
	border-radius: 10px;
	background:#f7faff;
	padding:12px;
}

.side-menu__group{
	margin-top:20px;
}

.side-menu__group:first-child{
	margin-top:10px;
}

.side-menu__title{
	font-size:14px;
	font-weight:900;
	line-height:1.2;
    padding: 4px 0px 10px 0px;
    margin: 0 0 30px;
    opacity: 0.9;
    border-bottom: 1px solid #dae3ed;
	/* margin:0 0 10px;
	opacity:0.9; */
}

.side-menu__list{
	margin:0;
	padding:0;
	list-style:none;
	display:block;
	border:1px solid rgba(0,0,0,0.02);
	border-radius: 10px;
	overflow:hidden;
	background:#fff;
}

.side-menu__item{
	margin:0;
	padding:0;
}

.side-menu__link{
	display:flex;
	align-items:center;
	gap:7px;

	padding:12px 8px;

	border:0;
	border-bottom:1px solid #00000014;
	border-radius:0;

	background:#fff;
	color:#111;
	text-decoration:none;

	transition:background .2s ease, transform .2s ease;
}

.side-menu__item:last-child .side-menu__link{
	border-bottom:0;
}

.side-menu__item:first-child .side-menu__link{
	border-top-left-radius:18px;
	border-top-right-radius:18px;
}

.side-menu__item:last-child .side-menu__link{
	border-bottom-left-radius:18px;
	border-bottom-right-radius:18px;
}

/* .side-menu__link:hover{
	background:rgba(0,0,0,0.04);
} */

.side-menu__item.active .side-menu__link,
.side-menu__item.current .side-menu__link{
	background:#111;
	color:#fff;
}

.side-menu__link:hover{
	transform:translateY(-2px);
	/* box-shadow:0 14px 28px rgba(0,0,0,0.10); */
	border-color:rgba(0,0,0,0.14);
	background:rgba(0,0,0,0.02);
}

.side-menu__icon{
	width:10px;
	height:18px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	opacity:0.85;
}

.side-menu__icon .fa-circle{
	font-size:4px;
}

.side-menu__text{
	min-width:0;
	font-size:14px;
	font-weight:700;
	line-height:1.2;
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}

.side-years{
	margin:0;
	padding:0;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	gap:8px;
}

.side-years__item{
	margin:0;
	padding:0;
}

.side-years__link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:64px;
	height:34px;
	padding:0 12px;
	border-radius:16px;
	border:1px solid rgba(0,0,0,0.02);
	background:#fff;
	color:#222;
	text-decoration:none;
	font-size:14px;
	font-weight:700;
	transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
}

.side-years__link:hover{
	transform:translateY(-2px);
	box-shadow:0 14px 28px rgba(0,0,0,0.12);
	background:#111;
	color:#fff;
	border-color:#111;
}

@media (max-width:1100px){
	.radio-card{ width:calc((100% - 24px) / 3); }
}

@media (max-width:600px){
	.radio-card{ width:calc((100% - 12px) / 2); }
}


@media screen and (max-width: 550px) {
    .song-telegram  {
        flex-direction: column;
        margin: 10px;
    }
    .song-telegram__btn {
        width: 100%;
    }
}

@media (max-width:900px){
	.radio-hero__body{
		flex-direction:column;
	}
	.radio-hero__cover{
		width:100%;
		min-width:0;
		height:220px;
	}
}


@media screen and (max-width: 760px) {
    .songlist-item__cover {width: 42px; height: 42px; }    
    .songlist-item__play {right: 4px; bottom: 4px; }
}
