
/* BASIC LAYOUT
----------------------------------------------- */
.wrapper {min-width: 320px; position: relative; padding-bottom: 70px;}
.wrapper__container {max-width: var(--max-width); margin: 0 auto; position: relative; z-index: 20; padding: 0 20px;}
.header {padding: 30px 0; gap: 20px 40px; border-bottom: 1px solid var(--bdc);}
.cols {display: grid; grid-template-columns: 260px minmax(0,1fr) 280px; 
	grid-template-areas: "sidebar1 content sidebar"; gap: 30px;}
.content {min-height: 80vh; grid-area: content; padding: 30px 0;}
.sidebar {grid-area: sidebar; gap: 10px; border-left: 1px solid var(--bdc); border-right: 1px solid var(--bdc);}
.sidebar1 {grid-area: sidebar1; gap: 10px; padding: 30px 0;}
.footer {border-top: 1px solid var(--bdc); padding: 30px 0; gap: 20px;}


/* HEADER
----------------------------------------------- */
.logo {display: flex; align-items: center; height: 40px; color: var(--tt);
	padding-left: 55px; font-weight: 700; font-size: 24px;
	background: url(../images/logo.svg) 0 center / 40px no-repeat;}
.logo span {color: var(--accent);}

.header__menu {gap: 10px 0;}
.header__menu a {display: flex; align-items: center; height: 30px; border-radius: 4px; padding: 0 15px;}
.header__menu a.is-active {background-color: var(--accent); color: #fff;}

.share {position: fixed; z-index: 991; left: 50%; top: 50%; transform: translate(-50%,-50%); 
	width: 460px; max-width: calc(100vw - 40px);}
.share__title {font-size: 20px; font-weight: 700; margin-bottom: 15px; cursor: pointer; color: #fff;}
.share__content {padding: 30px; background-color: var(--bg); box-shadow: var(--bsh); border-radius: 10px;}
.ya-share2__list {display: flex !important; flex-wrap: wrap; gap: 10px; justify-content: center;}
.header__soc {gap: 10px;}
.header__soc-item {display: grid; place-items: center;
	height: 40px; width: 40px; border-radius: 50%; background-color: #2daae1;}
.vk {background-color: #1877f2;}
.yt {background-color: #df1111;}
.header__soc img {width: 18px; height: 18px; filter: invert(1);}
	
.search-block {position: relative; width: 300px; margin-left: auto;}
.search-block__input, .search-block__input:focus {border-radius: 6px; padding: 0 50px 0 20px; 
	border: 1px solid var(--bdc); box-shadow: none; color: var(--tt);}
.search-block__input:not(:focus)::placeholder {color: var(--tt-fade); opacity: 1; font-size: 14px;}
.search-block__btn {position: absolute; right: 0; top: 0; width: 50px; 
	border-radius: 20px; font-size: 18px; background: none; color: var(--tt);}


/* SECTION
----------------------------------------------- */
.sect {margin-bottom: 30px;}
.sect__header {margin-bottom: 30px;}
.sect__title {font-size: 24px; font-weight: 700;}
.sect__link {color: var(--accent);}
.speedbar {color: var(--tt-fade); font-size: 12px; margin-bottom: 30px;}
.speedbar::before {margin-right: 6px; color: var(--accent);}


/* TRACK ITEM
----------------------------------------------- */
.trc {gap: 15px; position: relative;}
.trc__title {font-weight: 700; font-size: 16px;}
.trc__subtitle {margin-top: 1px;}
.trc__play {padding: 0; width: 40px; height: 40px; font-size: 16px; border-radius: 6px; padding-left: 2px;}
.trc__time {color: var(--tt-fade); font-size: 13px;}
.trc::before {font-size: 24px; color: var(--accent);}

.js-trc--is-playing .trc__play::before, .js-trc--is-playing .page__play::before {content:"\e90c"; margin-left: -1px; color: #fff;}
.js-trc--is-playing .trc__play {background-color: var(--accent);}


/* SIDEBAR
----------------------------------------------- */
.sb {border-bottom: 1px solid var(--bdc);}
.sb__title {font-size: 20px; font-weight: 700; padding: 20px; background-color: var(--bg-darker);}
.sb__items {display: grid; grid-template-columns: repeat(auto-fill,minmax(240px,1fr));}

.side-item {position: relative; padding: 20px; padding-left: 60px; border-top: 1px solid var(--bdc);}
.side-item__title {font-weight: 700; font-size: 15px;}
.side-item__subtitle {margin-top: 5px;}
.side-item__time {color: var(--tt-fade);}
.side-item .grid-item__counter {display: grid; place-items: center; height: 100%; width: 40px; 
	color: var(--tt); border-right: 1px solid var(--bdc); position: absolute; left: 0; top: 0%;}
.sb__items li:nth-child(2n+1) .grid-item__counter {background: var(--accent); color: #fff;}

.sb1 {background-color: var(--bg-darker); border-radius: 8px; padding: 30px; position: sticky; top: 30px; left: 0;}
.sb1__title {font-size: 20px; font-weight: 700; margin-bottom: 30px;}
.sb1__menu li::before {position: absolute; left: 0; top: 0; pointer-events: none; 
	height: 40px; width: 40px; display: grid; place-items: center; font-size: 18px;}
.sb1__menu li {position: relative; font-size: 15px;}
.sb1__menu li a {display: flex; align-items: center; height: 40px; border-radius: 6px;  padding-left: 50px;}
.sb1__menu li a.is-active {background-color: var(--accent); color: #fff;}
.sb1__menu li:has(.is-active, a:hover)::before {color: #fff;}


/* FOOTER, PAGINATION
----------------------------------------------- */
.footer__menu {gap: 10px 30px;}
.footer__text {font-size: 12px;}
.footer__text span {text-decoration: underline; color: var(--accent);}

.pagination {gap: 20px 60px; padding-top: 40px;}
.pagination a, .pagination span {display: grid; place-items: center; 
	height: 36px; min-width: 36px; padding: 0 10px; border-radius: 18px; border: 1px solid var(--bdc);}
.pagination__pages {gap: 10px 10px; font-size: 14px;}
.pagination__pages span:not(.nav_ext) {background-color: var(--accent); color: #fff; border-color: var(--accent);}


/* INNER PAGE
----------------------------------------------- */
.page__main {display: grid; grid-template-columns: 160px 1fr; gap: 16px 30px; grid-auto-flow: row dense; 
	grid-template-rows: 1fr auto; position: relative;}
.page__img {width: 160px; height: 160px; grid-column: 1 / 2; grid-row: 1 / 3; border-radius: 10px; overflow: hidden;}
.page__img a {position: absolute; left: 0; top: 0; background-color: #000; color: #fff; padding: 5px 10px;}
.page h1 {font-size: 24px; font-weight: 700;}
.page h1 span {color: var(--accent); font-size: 20px; display: block;}

.page__ctrl {gap: 10px 10px;}
.page__btn {background: none; border: 1px solid var(--bdc); color: var(--tt-fade); 
	width: 40px; height: 40px; padding: 0; font-size: 18px; border-radius: 6px; display: grid; place-items: center;}
.page__play {border-radius: 6px;}
.js-trc--is-playing .page__play {background-color: var(--accent); color: #fff;}

.page__caption {font-size: 12px;}
.page__tech {display: grid; gap: 5px 20px;grid-template-columns: repeat(auto-fill,minmax(260px,1fr)); margin-top: 10px;}
.page__tech li {display: flex; align-items: center; gap: 10px;}
.page__tech li > span:first-child {flex-grow: 1; display: flex; align-items: center; gap: 10px;}
.page__tech li > span:first-child::after {content: ''; flex-grow: 1; border-bottom: 1px solid var(--bdc);}

.page__clip {position: absolute; left: 0; top: 0; width: 100%; height: 100%; 
	padding-top: 0; background-color: #000; border-radius: 0;}
.page__clip::before {position: relative; z-index: 5; font-size: 40px; background-color: var(--accent); 
	padding-left: 5px; box-sizing: border-box; color: #fff; width: 100px; height: 100px; border-radius: 50%;}
.js-hide-text {max-height: 150px; overflow: auto;}
.show-text {position: absolute; z-index: 2; left: 0; bottom: 0px; height: 30px;
	padding: 0 10px; background-color: var(--accent); 
	border-radius: 6px; font-weight: 400; color: #fff;}
.js-hide-text[style]::before {content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 50%; 
	background: linear-gradient(to top, var(--bg) 0%, transparent 100%); z-index: 1;}


/* TEXT BLOCK, TYPOGRAPHY, VIDEO BLOCK
----------------------------------------------- */
.page__title {margin-bottom: 30px; font-size: 24px;}
.full-text {line-height: 1.5; font-size: 15px; word-wrap: break-word;}
.full-text a {text-decoration: underline; color: var(--blue);}
.video-responsive {padding-top: 60%; position: relative;}
.video-responsive > iframe, .video-responsive > video {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.full-text iframe {width: 100%; height: 400px; margin-bottom: 20px;}


/* ADAPTIVE, MOBILE MENU
----------------------------------------------- */
.overlay {position: fixed; z-index: 988; left: 0; top: 0; width: 100%; height: 100%; 
	opacity: 0.6; background-color: #000; cursor: pointer; display: none;}
.mobile-menu {width: 300px; height: 100%; overflow-x: hidden; overflow-y: auto;
	z-index: 999; position: fixed; left: -360px; top: 0; transition: left 0.4s; background-color: var(--bg);}
.mobile-menu.is-active {left: 0;}
body.mobile-menu-is-opened {overflow: hidden; width: 100%; height: 100%;}
.mobile-menu__header {padding: 20px 20px; gap: 10px;}
.mobile-menu__btn-close {font-size: 24px; width: 40px; height: 40px; margin-right: 0px;}
.mobile-menu__content {padding: 0px;}
.mobile-menu__content .sb1 {position: static;}

@media screen and (max-width: 1220px) {
	:root {--indent-negative: -20px; --indent: 20px;}
	body {background-image: none;}
	.wrapper {padding-top: 0;}
	.wrapper__container {max-width:1000px;}
	.header .header__menu, .sidebar1 {display: none;}
	.header {gap: 20px;}
	.header__btn-menu {display: flex; padding: 0; width: 40px; border-radius: 6px; font-size: 18px;}
	.cols {display: block;}
	.sidebar {margin: 0 -20px; border: 0; border-top: 1px solid var(--bdc);}
}

@media screen and (max-width: 950px) {
	.wrapper__container {max-width:768px;}
	.pagination {gap: 10px;}
	.pagination__btn-loader a, .pagination__btn-loader span {width: 100%;}
	.pagination > a, .pagination > span {flex-grow: 1; order: 10;}
	.pagination__pages {width: 100%;}
	.pagination__pages a, .pagination__pages span {flex-grow: 1;}
	.search-block {min-width: 100%; order: 10;}
	.header__logo {flex-grow: 1;}
}

@media screen and (max-width: 760px) {
	.wrapper__container {max-width:640px;}
	
	.page__main {display: flex; flex-direction: column; gap: 20px;}
	.page__img {margin: 0 auto;}
	.page h1 {text-align: center;}
	.page__play {flex-grow: 1;}
}

@media screen and (max-width: 590px) {
	.wrapper__container {max-width:480px;}
}

@media screen and (max-width: 470px) {
	.wrapper__container123 {max-width:360px;}
	
	.full-text iframe {width: calc(100% + 40px); max-width: calc(100% + 40px); height: 260px; margin-left: -20px; margin-right: -20px;}
}


/* PLAYER 
----------------------------------------------- */
.player {position: fixed; z-index: 980; left: 0; bottom: 0; background-color: var(--bg);   
	box-shadow: 0 0 30px rgba(0,0,0,0.3); width: 100%; border-top: 1px solid var(--bdc);}
.player__main {gap: 10px 20px; padding: 15px var(--indent); position: static;}
.player__left, .player__right {gap: 0 20px;}
.player__img {width: 40px; height: 40px; margin-right: 20px; display: none;}
.player__title {font-weight: 700; font-size: 15px;}
.player__subtitle {font-size: 14px; color: var(--tt-fade);}
.player__btns {gap: 0 20px;}
.player__btn-repeat, .player__btn-prev, .player__btn-next, .player__btn-playlist, .player__dl {color: var(--tt-fade); 
	background: none; font-size: 18px; width: 30px; height: 30px; border-radius: 15px; padding: 0;}
.player__btn-play {border-radius: 50%; font-size: 24px; padding: 0; width: 40px; height: 40px; 
	color: var(--tt-fade); background: none;}
.player__volume {gap: 10px; font-size: 16px;}
.player__volume .player__range {width: 100px;}
.player__volume-value {font-size: 12px; width: 21px;}
.player__time {font-size: 12px; gap: 5px; min-width: 30px;}
.player__time-current:after {content: '/'; display: inline; margin-left: 5px;}
.player audio {display: none;}
.player__bar {position: absolute; left: 0; right: 0; bottom: 100%; margin-bottom: -8px;}
.player__bar::before {content: ''; background-color: #000; height: 1px; width: var(--loaded-progress,0%); 
	position: absolute; left: 0; bottom: 7px; opacity: 0.2; pointer-events: none; z-index: -1;}

.player__range input[type="range"] {-webkit-appearance: none; appearance: none; justify-content: center;
	background: none; height: 20px; padding: 0; width: 100%; cursor: pointer; display: flex; flex-direction: column;}
.player__range input[type="range"]::-webkit-slider-thumb {-webkit-appearance: none; appearance: none; cursor: pointer;
	width: 20px; height: 20px; margin-top: -8px; border-radius: 50%; box-sizing: border-box;
	background-color: var(--bg); border: 2px solid var(--accent);}
.player__range input[type="range"]::-webkit-slider-runnable-track {width: 100%; height: 4px; cursor: pointer;
	background: linear-gradient(to right, var(--accent) 0%, var(--accent) var(--range-progress), 
	var(--bdc) var(--range-progress), var(--bdc) 100%); border-radius: 2px;}
.player__range input[type="range"]::-moz-range-thumb {-webkit-appearance: none; appearance: none; cursor: pointer;
	width: 20px; height: 20px; margin-top: -8px; border-radius: 50%; box-sizing: border-box;
	background-color: var(--bg); border: 2px solid var(--accent);}
.player__range input[type="range"]::-moz-range-track {width: 100%; height: 4px; cursor: pointer;
	background: linear-gradient(to right, var(--accent) 0%, var(--accent) var(--range-progress), 
	var(--bdc) var(--range-progress), var(--bdc) 100%); border-radius: 2px;}

.player__equalizer {width: 28px; gap: 2px; height: 80px; margin: -20px 0;}
.player__equalizer li {background: var(--accent); height: 10%; border-radius: 3px; flex-grow: 1;}
.player--is-playing .player__equalizer li {animation: equalizer .5s forwards ease-in-out infinite; animation-direction: alternate;}
.player__equalizer li:nth-child(1) {animation-duration: 2s;}
.player__equalizer li:nth-child(2) {animation-duration: 1.6s;}
.player__equalizer li:nth-child(3) {animation-duration: 1.9s;}
.player__equalizer li:nth-child(4) {animation-duration: 1.5s;}
.player__equalizer li:nth-child(5) {animation-duration: 1.7s;}
@keyframes equalizer {0% {height: 5%;} 12% {height: 10%;} 24% {height: 40%;} 36% {height: 15%;} 48% {height: 25%;} 
60% {height: 30%;} 72% {height: 20%;} 84% {height: 35%;} 100% {height: 5%;} }
	
.player--is-muted .player__volume::before {content:"\e912";}
.player--is-playing .player__btn-play::before {content:"\e90c";}
.player--is-repeated .player__btn-repeat:not(:hover), .player--is-shuffled .player__btn-repeat:not(:hover) 
{color: var(--accent);}
.player--is-repeated .player__btn-repeat::before {content:"\e914";}
.player--is-shuffled .player__btn-repeat::before {content:"\e915";}

.player__playlist {width: 100%; position: absolute; right: 0; bottom: 100%; display: none;
	box-shadow: var(--bsh); padding: 20px; background-color: var(--bg); z-index: -1;}
.player__playlist.is-active {display: block;}
.player__btn-playlist.is-active {background-color: var(--bg-darker);}
.player__playlist-title {max-width: 500px; margin: 0 auto; font-size: 18px; margin-bottom: 20px; font-weight: 700; cursor: pointer;}
.player__playlist-list {overflow-x: hidden; overflow-y: auto; max-width: 500px; margin: 0 auto;
	height: calc(100vh - 150px); height: calc(100dvh - 150px);}
.player__playlist-item {padding: 10px 20px; border-bottom: 1px solid var(--bdc); cursor: pointer; gap: 20px;}
.player__playlist-item-img {width: 40px; height: 40px;}
.player__playlist-item-title {font-weight: 700; font-size: 14px;}
.player__playlist-item-subtitle {font-size: 13px; color: var(--tt-fade); margin-top: 3px;}
.player__playlist-item-duration {font-size: 12px;}
.player__playlist-item-dl {font-size: 18px; display: block; margin-left: 10px;}
.player__playlist-item:last-child {margin-bottom: 0; border-bottom: 0;}
.player__playlist-item.is-playing {background-color: var(--bg-darker); cursor: default;}
.player__playlist-item.is-playing .player__playlist-item-desc {pointer-events: none;}
.player__playlist-item:hover {background-color: var(--bg-darker);}

.player--not-loaded button:not(.player__btn-play), .player--not-loaded .player__dl, 
.player--not-loaded .player__bar {pointer-events: none;}
	
@media screen and (max-width: 1220px) {
	.player__main {gap: 10px 10px; padding: 15px 20px;}
	.player__btns {gap: 10px;}
}
@media screen and (max-width: 950px) {
	.player__equalizer {display: none;}
}
@media screen and (max-width: 760px) {
	.player__volume {display: none;}
	.player__info {position: absolute; left: 0; right: 0; bottom: 100%; box-shadow: 0 -5px 5px rgba(0,0,0,0.03);
		background-color: var(--bg); padding: 10px 60px 10px 20px; gap: 10px; margin-bottom: 4px;}
	.player__img {margin-right: 0;}
	.player__dl {position: absolute; right: 10px; bottom: 100%; margin-bottom: 20px;}
	.player__left > * {display: none;}
	.player__time-current {position: absolute; left: 20px; top: 50%; transform: translateY(-50%);}
	.player__time-duration {position: absolute; right: 20px; top: 50%; transform: translateY(-50%);}
	.player__time-current:after {display: none;}
	.player__left, .player__right {min-width: 0;}
}


/* INFO MESSAGES, ERRORS */
.message-info {line-height: 1.5; margin-bottom: 20px; 
	background-color: var(--ui-bg-attention); box-shadow: 0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);
	border: 1px solid var(--ui-bd-attention); position: relative; padding: 15px 20px 15px 64px;}
.message-info__title {font-weight: var(--ui-fw-bolder);}
.message-info::before {content:"\e910"; font-family:'fa-custom'; font-weight: var(--ui-fw-fa); font-size: 22px;
	color: #fff; background-color: var(--ui-bd-attention); position: absolute; left: 0; top: 0; 
	width: 44px; height: 100%; display: grid; place-items: center;}
	

/*--- DROP NENU ---*/
#dropmenudiv {font: 13px Arial; padding: 10px; display: none; background: var(--ui-bg); 
	border-radius: 8px;  box-shadow: 0 0 50px 0 rgba(0,0,0,0.22); z-index:200 !important;}
#dropmenudiv a {display: block; text-decoration: none; padding: 5px 8px; width: 154px;}


/*--- UI DIALOG ---*/
.ui-front {z-index: 1000;}
.ui-widget-overlay {background: #000; opacity: 0.6; left: 0; top: 0; right: 0; bottom: 0; position: fixed;}
.ui-dialog {background-color: var(--ui-bg); border-radius: 10px; max-width: 100% !important;
	box-shadow: var(--ui-bsh); width: 600px; position: absolute;}
.ui-dialog-titlebar {padding: 15px 30px; border-radius: 10px 10px 0 0;
	display: flex; align-items: center; gap: 10px; background-color: var(--ui-bg-black); color: #fff;}
.ui-dialog-title {font-size: 19px; font-weight: var(--ui-fw-bolder);}
.ui-dialog-titlebar-close {color: #fff; font-size: 24px; width: 40px; height: 40px; 
	overflow: hidden; text-indent: -200px; position: relative; margin-right: -10px; border-radius: 6px;}
.ui-icon-closethick {display: grid; place-items: center; position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.ui-icon-closethick::before {content:"\e913"; font-family:'fa-custom'; font-weight: var(--ui-fw-fa); text-indent: 0;}
.ui-dialog-content {padding: 20px 30px;}
.ui-dialog-buttonpane {padding: 0 30px 20px 30px;}
.ui-dialog-buttonset, .save-buttons {display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px;}
.ui-dialog-buttonset button, .save-buttons input.bbcodes {height: 36px; padding: 0 15px; font-size: 14px; 
	flex: 1 1 0; max-width: 100%; min-width: auto; white-space: nowrap;}
.ui-dialog .ui-resizable-se {bottom: 3px; height: 14px; right: 3px; width: 14px;}
.ui-draggable .ui-dialog-titlebar {cursor: move;}
.dle-popup-complaint .ui-dialog-content textarea, .dle-popup-sendpm .ui-dialog-content textarea {margin: 10px 0 20px 0; height: 100px !important;}
.dle-popup-complaint .ui-dialog-content textarea:last-child {margin-bottom: 0;}
.ui-dialog-content br + input, .ui-dialog-content br + select {margin-top: 10px; width: 100% !important;}
@media screen and (max-width: 760px) {
	.ui-dialog-titlebar, .ui-dialog-content, .ui-dialog-buttonpane {padding-left: 20px; padding-right: 20px;}
}

