.register-suggest{max-width:600px;margin:2rem auto;padding:1.5rem;background:var(--ui-bg);border:1px solid var(--bdc);border-radius:var(--bdrs);text-align:center;box-shadow:var(--bsh);color:var(--tt);}
.register-suggest p{font-size:1rem;line-height:1.6;margin-bottom:1.2rem;color:var(--tt-fade-0);}
.register-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:var(--ui-elem-gap);}
.register-actions .btn{min-width:150px;font-weight:var(--ui-fw-bolder);text-transform:uppercase;}

/* BASIC LAYOUT
----------------------------------------------- */
.wrapper {min-width: 320px; position: relative; overflow: hidden; overflow: clip; padding: 40px 0;}
.wrapper__container {max-width: var(--max-width); margin: 0 auto; position: relative; z-index: 20;}
.wrapper__container--main {background-color: var(--bg-darker); 
	box-shadow: 0 20px 40px rgba(0,0,0,0.1); border-radius: 20px 20px 0 0;}
.header {padding: 0 var(--indent); padding-left: calc(260px + var(--indent)); 
	position: relative; z-index: 100; height: 110px;}
.cols {display: grid; grid-template-columns: 260px minmax(0,1fr); min-height: 100vh; grid-template-areas: "sidebar content";}
.cols__content {grid-area: content; padding: 0 var(--indent); padding-bottom: 40px;}
.cols__sidebar {grid-area: sidebar; padding: 105px 20px 40px 20px; gap: 40px; position: relative; z-index: 50;
	background-color: #000000; margin-top: -110px; --tt: #afb8c5; color: #afb8c5; border-radius: 20px 20px 0 0;}
.cols__sidebar-sticky {position: sticky; left: 0; top: 15px;}
.footer {padding: 20px var(--indent); background-color: var(--bg-darkest);}
.footer__two {border-top: 1px solid var(--bdc); padding-top: 20px; margin-top: 20px;}

.scrolltop {position: fixed; width: 40px; height: 40px; right: 10px; bottom: 10px; padding: 0;
	z-index: 990; border-radius: var(--bdrs); font-size: 18px; opacity: 0; scale: 0 0;}
.scrolltop.is-active {scale: 1 1; opacity: 1;}
.overlay {position: fixed; z-index: 998; left: 0; top: 0; width: 100%; height: 100%; 
	opacity: 0.8; background-color: #1d1924; cursor: pointer; display: none;}


/* HEADER, TOPMENU, CAROU
----------------------------------------------- */
.logo {display: flex; align-items: center; padding-left: 43px; position: relative; background: url(../images/logo.svg) 0 center / 26px no-repeat; height: 50px;}
.logo:has(img) {background: none; min-width: 160px;}
.logo img { position: absolute; left: 0; top: 50%; transform: translateY(-50%); max-height: 100%; max-width: 160px;  /* sau ce valoare vrei */ width: auto; }
.header .header__logo {position: absolute; left: 30px; top: 50%; translate: -7px -50%;}
.dt .header__theme-select::before {content:"\f755";}
.header__btn-login, .header__btn-link {border-radius: var(--bdrs);}
.header__btn-login {background-color: var(--accent-2);}
.header__btn-login::before {display: none !important;}
@media screen and (min-width: 1220px) {
	.header .header__logo {color: #fff;}
}

.header__user {position: relative; padding-left: 50px; padding-right: 15px; cursor: pointer;}
.header__user::before {position: absolute; right: 0; bottom: 2px; color: var(--tt-fade);}
.header__user-ava {width: 40px; position: absolute; left: 0; top: 50%; translate: 0 -50%;}
.header__user-name {font-weight: 600;}
.header__user-group, .header__user-group * {color: var(--tt-fade) !important; font-size: 12px; font-weight: 400 !important;}
.header__btn1 {color: var(--tt-fade); font-size: 24px; position: relative;}
.header__btn1 span {position: absolute; left: 50%; top: -20px; translate: -50% 0;
	padding: 0 8px; font-size: 10px; border-radius: 10px; background-color: var(--accent-fade); color: var(--accent); 
	display: grid; place-items: center; height: 20px; min-width: 30px;}
.c-0 span {display: none;}

.search-block {position: relative; width: 400px;}
.search-block__input, .search-block__input:focus {padding: 0 50px 0 15px; box-shadow: none; 
	border-radius: var(--bdrs); border-width: 0px;}
.search-block__input:not(:focus)::placeholder {color: var(--tt); opacity: 0.66;}
.search-block__btn {position: absolute; right: 0; top: 0; font-size: 18px; width: 50px; border-radius: var(--bdrs);}

/* Stil pentru dropdown personalizat */
.dropdown {display: inline-block;padding: 10px;width: 350px;background-color: var(--accent-2);border: 1px solid #ccc;border-radius: 5px;cursor: pointer;position: relative;color: var(--ui-tt-btn);}
.dropdown::after {content: "▼";position: absolute;right: 10px;top: 12px;font-size: 12px;pointer-events: none;}
.dropdown-menu {display: none;position: absolute;width: 350px;background-color: #fff;border: 1px solid #ccc;border-radius: 5px;z-index: 100;max-height: 150px;overflow-y: auto;}
.dropdown-menu.show {display: block;}
.dropdown-option {padding: 10px;cursor: pointer;color: #1a1a1a;}
.dropdown-option:hover {background-color: var(--ui-bg-btn);color: #fff;}
/* Stil pentru etichetele categoriilor selectate */
.selected-categories {margin-top: 10px;display: flex;flex-wrap: wrap;}
.category-tag {background-color: var(--ui-bg-btn);color: var(--ui-tt-btn);padding: 5px 10px;margin-right: 5px;margin-bottom: 5px;border-radius: 5px;font-size: 12px;display: inline-flex;align-items: center;}
.remove-category {margin-left: 10px;color: white; cursor: pointer; font-weight: bold;font-size: 14px;}
.remove-category:hover {color: red;}    

/* SECTION
----------------------------------------------- */
.sect {counter-reset: n;}
.sect:not(:last-child) {margin-bottom: 40px;}
.sect__header {margin-bottom: 20px;}
.sect__title {font-size: 28px; font-weight: 800; line-height: 1.2; gap: 5px; display: flex; flex-direction: column-reverse;}
.sect__title span {color: var(--tt-fade); font-size: 15px; font-weight: 500;}
.playlist__title { font-weight: 700; line-height: 1.2; gap: 5px; display: flex; flex-direction: column-reverse; font-size: clamp(28px, 6vw, 60px); }
.playlist__title span { color: var(--tt-fade); font-size: 15px; font-weight: 500; }
.sect__link {height: 34px; border-radius: var(--bdrs); padding: 0 15px; font-size: 10px; text-transform: uppercase;
	background-color: var(--bg-darkest); color: var(--tt);}
.sect__right {width: 360px;}

/* ===================== Lista Topuri - Sect Genres ===================== */
.sect-genres {
    position: relative;
}

.genres-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
    overflow-x: auto;
    white-space: nowrap;
    padding: 0 10px;
    margin: 0;
    list-style: none;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;

    /* Firefox scrollbar - inițial transparent */
    scrollbar-width: thin;
    scrollbar-color: transparent transparent;
}

/* Când hover peste LISTA, scrollbar devine vizibil */
.genres-list:hover {
    scrollbar-color: #007dcd transparent;
}

.genres-list a {
    position: relative;
    flex-shrink: 0;
    display: inline-block;
    border-radius: 8px;
    padding: 20px 40px;
    font-size: 22px;
    font-weight: 500;
    background: #007dcd;
    color: #fff;
    text-decoration: none;
    transition: background-color 0.3s, color 0.3s;
    cursor: pointer;
}

.genres-list a:hover {
    background-color: var(--ui-bg-btn);
}

.genres-list a.active {
    pointer-events: none;
    background-color: var(--ui-bg-btn);
    color: #fff;
    opacity: 1;
    cursor: default;
}
/* Elimină padding-ul doar pentru sectiunea genres */
.sect-genres .sect__content.genres-list {
    margin-left: calc(-1 * var(--indent)) !important;
    margin-right: calc(-1 * var(--indent)) !important;
}

/* Subtext / iconiță mică din colțul dreapta-jos */
.genres-list a .subtext {
    position: absolute;
    right: 8px;
    bottom: 8px;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.85);
    opacity: 0.9;
    pointer-events: none;
    display: flex;
    align-items: center;
    gap: 4px; /* mic spațiu între icon și text */
}

/* Iconița se aliniază frumos și are dimensiune mai mică */
.genres-list a .subtext i {
    font-size: 11px;
    opacity: 0.9;
}


/* ===================== SCROLLBAR STYLES ===================== */

/* Scrollbar pentru Chrome/Safari/Edge */
.genres-list::-webkit-scrollbar {
    height: 2px !important;
    background: transparent !important;
}

.genres-list::-webkit-scrollbar-track {
    background: transparent !important;
    border-radius: 1px;
    margin: 0 10px;
}

/* Scrollbar thumb - inițial invizibil */
.genres-list::-webkit-scrollbar-thumb {
    background-color: #007dcd !important;
    border-radius: 1px;
    opacity: 0;
    transition: opacity 0.8s ease-in-out !important;
}

/* Scrollbar devine vizibil la hover peste LISTA */
.genres-list:hover::-webkit-scrollbar-thumb {
    opacity: 0.7;
    transition: opacity 0.4s ease-out !important;
}

/* Scrollbar mai intens la hover direct peste el */
.genres-list::-webkit-scrollbar-thumb:hover {
    opacity: 1;
    transition: opacity 0.2s ease-out !important;
}

/* Asigură că scrollbar-ul dispare lent când părăsești hover */
.genres-list:not(:hover)::-webkit-scrollbar-thumb {
    transition: opacity 0.6s ease-in-out !important;
}

/* ===================== MOBIL ===================== */
@media (max-width: 768px) {
    .genres-list {
        padding: 0 10px 8px 10px;
        /* Pe mobil, scrollbar-ul este mereu vizibil */
        scrollbar-color: #007dcd transparent;
    }
    
    .genres-list::-webkit-scrollbar {
        height: 3px !important;
    }
    
    .genres-list::-webkit-scrollbar-track {
        background: transparent !important;
        border-radius: 2px;
        margin: 0 10px;
    }
    
    .genres-list::-webkit-scrollbar-thumb {
        background: #007dcd !important;
        border-radius: 2px;
        opacity: 0.6 !important; /* Mereu vizibil pe mobil */
        transition: none !important; /* Fără animație pe mobil */
    }

    .genres-list::-webkit-scrollbar-thumb:hover {
        opacity: 1 !important;
    }

    .genres-list {
        -ms-overflow-style: auto;
        scrollbar-width: thin;
    }
}

.sect__content--bg {background-color: var(--bg); box-shadow: var(--bsh); border-radius: var(--bdrs); overflow: hidden;}

.speedbar {color: var(--tt-fade); font-size: 14px; padding: 20px 40px;
	border-bottom: 4px dotted var(--bdc); margin: -30px -40px; margin-bottom: 20px;}
.speedbar a {color: var(--tt);}
.speedbar::before {color: var(--blue); margin-right: 10px;}

.descr {color: var(--tt-fade); display: grid; gap: 10px; padding-top: 35px; 
	line-height: 1.6; border-top: 5px dotted var(--bdc);}
.descr :is(h1,h2,h3) {font-size: 16px; font-weight: 700; line-height: 1.3;}
.descr a {text-decoration: underline; color: var(--tt-fade);}
.descr ul li {position: relative; padding-left: 25px; margin-left: 25px;}
.descr ul li::before {content:"\f00c"; color: #007dcd; position: absolute; left: 0; top: 0;}


/* GRIDS
----------------------------------------------- */
.grid-items {display: grid; gap: 10px; grid-template-columns: repeat(auto-fill,minmax(min(60vw,460px),1fr));}
.grid-items > *:not(.grid-items__item), #dle-content > *:not(.grid-items__item) {grid-column: 1 / -1;}
.grid-items > #dle-content {display: inherit; gap: inherit; grid-template-columns: inherit;}
.grid-items:has(.album-item) {gap: 15px; grid-template-columns: repeat(auto-fill,minmax(180px,1fr));}
.grid-items:has(.podcast-item) {gap: 15px; grid-template-columns: repeat(auto-fill,minmax(220px,1fr));}
.grid-items:has(.collection-item) {gap: 20px; grid-template-columns: repeat(auto-fill,minmax(280px,1fr));}
.grid-items:has(.artist-item) {gap: 20px; grid-template-columns: repeat(auto-fill,minmax(160px,1fr));}
.grid-items:has(.collection-main) {gap: 15px 15px; grid-template-columns: minmax(0,1fr) 300px; 
	padding: 15px; grid-auto-flow: row dense;}
.grid-items.sect__content--bg:has(.album-item) {gap: 0 !important;}


/* TRACK
----------------------------------------------- */
.track-item {background-color: var(--bg); box-shadow: var(--bsh); border-radius: var(--bdrs); padding: 15px; gap: 15px;}
.track-item__img {width: 40px; border-radius: var(--bdrs);}
.track-item__btn-play {height: 40px; border-radius: 50%; padding-left: 3px; font-size: 12px;
	border: 2px solid #007dcd; color: #007dcd}
.track-item__title {font-weight: 500; font-size: 15px;}
.track-item__subtitle {font-size: 13px; color: var(--tt-fade); margin-top: 2px;}
.track-item__time {color: var(--tt-fade); font-size: 11px;}
.track-item__btn-ctrl {font-size: 16px; color: var(--tt-fade-0); background-color: var(--bg-darker-1);
	height: 40px; border-radius: var(--bdrs);}
.track-item__fav a {display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--ui-elem-bdrs); color: var(--tt-fade); font-size: 20px;}
.track-item__fav a:has(.added) {color: #007dcd;}
.track-item2::before {content: counter(n,decimal-leading-zero)'.'; counter-increment: n; font-size: 18px; 
	color: var(--tt-fade); opacity: 0.66; font-weight: 500; width: 40px; text-align: center;}
.track-item2 .track-item__subtitle {font-size: 15px; margin: 0;}
.track-item2 .track-item__title {width: 240px;}
.track-item__rating {width: 60px; color: var(--tt-fade); margin-left: 20px;}
.track-item__desc:hover {
  text-decoration: none; /* dezactivează underline-ul implicit pe link */
}
.big-titleh1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  font-weight: 800;
  line-height: 1.1;
  padding: 0 10px;
  margin: 0;
}

.big-titleh1 span {
  font-size: 1rem;
  font-weight: 500;
  margin-bottom: 0.5em;
  display: block;
}

/* --- doar pe telefoane --- */
@media (max-width: 768px) {
  .big-titleh1 {
    display: inline-block;
    white-space: nowrap;
    width: calc(100vw - 20px); /* margini fixe */
    font-size: 10vw; /* punct de pornire */
    transform-origin: center center; /* schimbat din left → center */
    text-align: center;
    position: relative;
    left: 50%;
    transform: translateX(-50%); /* aliniere vizuală perfectă pe centru */
  }

  /* opțional, dacă vrei totuși să existe limitare de font */
  .big-titleh1 {
    font-size: min(18vw, calc((100vw - 20px) / 10));
  }
}

/* --- pe desktop --- */
@media (min-width: 769px) {
  .big-titleh1 {
    font-size: 2.5rem;
    white-space: normal;
    transform: none;
    left: auto;
  }
}

.track-item__desc:hover .track-item__title {
  text-decoration: underline;
}

.js-trc--is-current .track-item__btn-play:not(:hover), .js-trc--is-playing .track-item__btn-play, 
.js-trc--is-playing .page__play {background-color: #007dcd; color: #fff;}
.js-trc--is-playing .track-item__btn-play::before, 
.js-trc--is-playing .page__play::before {content:"\f04c";}
.js-trc--is-playing .track-item__btn-play::before {padding-left: 0;}
.track-item.js-trc--is-playing {box-shadow: 0 0 0 1px #007dcd;}

/* Ascunde implicit */
.track-item__fav,
.track-item .btn-nobg.fas.fa-ellipsis-v {
}

/* Arată când piesa e în redare SAU la hover */
.track-item.js-trc--is-playing .track-item__fav,
.track-item.js-trc--is-playing .btn-nobg.fas.fa-ellipsis-v,
.track-item:hover .track-item__fav,
.track-item:hover .btn-nobg.fas.fa-ellipsis-v {
    display: flex;   /* ori inline-flex, după layout-ul tău */
}

/* Ascunde durata și rating la hover sau când melodia e în redare */
.track-item:hover .track-item__time,
.track-item.js-trc--is-playing .track-item__time, {
    display: none;
}
@media screen and (max-width: 590px) {
.track-item:hover .track-item__time
    {display:flex;}
.track-item.js-trc--is-playing .track-item__time
    {display:none;}
.track-item:hover .track-item__fav
    {display:none;}
.track-item.js-trc--is-playing .track-item__fav
    {display:flex;}
}    

/* BARA DE PROGRES PENTRU TRACK ITEM */
.track-item {
    position: relative;
}

.track-item__progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 0 0 var(--bdrs) var(--bdrs);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 10;
    cursor: pointer;
}

.track-item__progress-bar {
    position: relative;
    width: 100%;
    height: 100%;
    background: #007dcd;
    border-radius: 0 0 var(--bdrs) var(--bdrs);
    transform-origin: left;
    transform: scaleX(0);
    transition: transform 0.1s ease;
}

/* CONTAINER PENTRU MINGIUȚĂ - FIX POZIȚIONAT */
.track-item__progress-thumb {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%); /* Centrat perfect */
    width: 12px;
    height: 12px;
    background: white;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 11;
    pointer-events: none; /* Nu interferează cu click-urile */
}

/* AFIȘEAZĂ BARA DE PROGRES ȘI MINGIUȚA CÂND PIESA E ÎN REDARE */
.track-item.js-trc--is-playing .track-item__progress {
    opacity: 1;
    visibility: visible;
}

.track-item.js-trc--is-playing .track-item__progress-thumb {
    opacity: 1;
}

/* HOVER EFFECTS PENTRU MINGIUȚĂ */
.track-item__progress:hover .track-item__progress-thumb {
    transform: translate(-50%, -50%) scale(1.2);
}
.no-text-cursor {
    cursor: default !important;
}
/* COLLECTION
----------------------------------------------- */
.collection-main {grid-column: 1 / 2; grid-row: 1 / 4; min-height: 280px; border-radius: var(--bdrs);}
.collection-item__img {border-radius: var(--bdrs); height: 180px;}
.grid-items:has(.collection-main) .collection-item__img {height: 110px;}
.collection-item__desc {position: absolute; left: 0; bottom: 0; padding: 15px; padding-right: 100px;}
.collection-item__title {display: inline; background-color: #fff; box-decoration-break: clone; 
	box-shadow: 0 0 0 5px #fff; padding: 0 5px; color: #000;}
.collection-main__desc {position: absolute; left: 0; top: 0; bottom: 0; width: 50%; z-index: 3; padding: 30px; color: #fff;}
.collection-main::after {background: linear-gradient(to right, #000 0%, transparent 100%);}
.collection-main__title {font-size: 28px; font-weight: 500; line-height: 1.3; text-wrap: balance;}
.collection-main__subtitle {font-size: 12px; text-transform: uppercase; opacity: 0.9;}
.collection-main__meta {font-size: 16px; font-weight: 500;}
.collection-main__meta span {text-transform: uppercase; font-size: 12px; opacity: 0.8; font-weight: 400; margin-bottom: 3px;}
.collection-main__btn {align-self: flex-start; border-radius: var(--bdrs);}


/* ALBUM ITEM
----------------------------------------------- */
.album-item {background-color: var(--bg); box-shadow: var(--bsh); border-radius: var(--bdrs); padding: 15px;}
.album-item__img {border-radius: var(--bdrs);}
.album-item:has(.album-item__meta) .album-item__img {border-radius: var(--bdrs) var(--bdrs) 0 0;}
.album-item__desc {margin-top: 15px;}
.album-item__title {font-weight: 500;}
.album-item__meta {font-size: 12px; text-transform: uppercase;}
.album-item__year {width: 50px; padding: 3px 0; text-align: center; 
	background-color: var(--bg-darker-1); color: var(--tt-fade-0);}
.album-item__subtitle {max-width: calc(100% - 50px); padding: 3px 10px; background-color: var(--accent-2); color: white;}
.sect__content--bg .album-item {border: 1px solid var(--bdc); border-radius: 0; border-right: 0; margin: -1px 0 0 -1px;}


/* PODCAST ITEM
----------------------------------------------- */
.podcast-item {border-radius: var(--bdrs);}
.podcast-item__title {position: absolute; left: 0; right: 0; bottom: 0; z-index: 5; padding: 25px 30px; color: #fff;}


/* SIDEBAR
----------------------------------------------- */
.side-menu__list li + li {margin-top: 5px;}
.side-menu__caption {text-transform: uppercase; font-weight: 500; font-size: 12px; margin-bottom: 10px;}
.side-menu__list li {position: relative; white-space: nowrap;}
.side-menu__list a, .side-menu__list span {display: flex; align-items: center; gap: 10px; border-radius: var(--bdrs);
	padding-left: 60px; position: relative; height: 40px; cursor: pointer; margin: 0 -10px;}
.side-menu__list li::before {width: 1.4em; font-size: 22px; z-index: 1;
	position: absolute; left: 0; top: 50%; translate: 0 -50%; pointer-events: none;}
.cols__sidebar .side-menu__list li:has(span) {--tt: #fff; color: #fff;}
.side-menu__list li:has(span)::after {content: ''; height: 100%; width: 5px; background-color: #fff; 
	position: absolute; left: -20px; top: 0;}
.gnr {background-color: var(--bg); padding: 40px; box-shadow: var(--bsh); width: 600px; display: none;
	position: fixed; left: 50%; top: 50%; translate: -50% -50%; z-index: 998; border-radius: var(--bdrs);}
.gnr__close {position: absolute; right: 10px; top: 10px; border-radius: var(--bdrs); font-size: 18px; background-color: var(--red);}


/* FOOTER, PAGINATION
----------------------------------------------- */
.footer__logo {min-width: 190px;}
.footer__notify {border-left: 1px solid var(--bdc); padding-left: 20px; color: var(--tt-fade); font-size: 13px;}
.footer__copyright {font-size: 12px; text-transform: uppercase;}

.pagination {gap: 20px 10px; padding-top: 25px;}
.pagination__pages a, .pagination__pages span, .pagination > a, .pagination > span 
{display: grid; place-items: center; color: var(--tt-fade);
	height: 40px; min-width: 40px; padding: 0 10px; border-radius: var(--bdrs); 
	background-color: var(--bg-darkest);}
.pagination__pages {gap: 10px; font-size: 14px;}
.pagination__pages span:not(.nav_ext) {color: #fff; background: #007dcd;}
.pagination__btns {height: 40px; border-radius: var(--bdrs); overflow: hidden; background-color: var(--bg); box-shadow: var(--bsh);}
.pagination__btns > * {width: 40px; display: grid; place-items: center; color: #007dcd; font-size: 18px;}
.pagination__btns > span {color: var(--tt-fade);}

/* ===== SEE MORE BUTTON ===== */
.see-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding-top: 25px;
  text-align: center;
}

.see-more__line {
  flex: 2;
  height: 1px;
  background: var(--tt-fade);
  opacity: 0.3;
}

/* butonul principal */
.see-more__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 38px;
  font-size: 15px;
  font-weight: 500;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  transition: all 0.25s ease;

  background: var(--bg-darkest);
  color: var(--tt);
  box-shadow: var(--bsh);
  border: 1px solid var(--bdc);

  text-transform: none;
}

/* span interior cu icon */
.see-more__btn span {
  display: inline-flex;
  align-items: center;          /* aliniere perfectă pe verticală */
  justify-content: center;
  gap: 8px;                     /* distanță între text și icon */
  letter-spacing: 0.3px;
}

.see-more__btn i {
  font-size: 15px;
  position: relative;
  top: 1px;                     /* ajustează verticala pentru centrul optic */
  transition: transform 0.25s ease;
}

/* hover */
.see-more__btn:hover {
  background: var(--ui-bg-btn);
  color: var(--ui-tt-btn);
  border-color: #007dcd;
  box-shadow: 0 0 15px rgba(0,0,0,0.2);
}

.see-more__btn:hover i {
  transform: translateX(3px);   /* mică mișcare la hover, ca în Google */
}


/* INNER PAGE
----------------------------------------------- */
.page__main {background-color: var(--bg); box-shadow: var(--bsh); border-radius: var(--bdrs); 
	padding: var(--indent); gap: var(--indent);}
.page__main > *:not(.page__main-bg) {position: relative; z-index: 10;}
.page__main-bg, .page__main-bg::after {position: absolute; inset: 0;}
.page__main-bg::after {backdrop-filter: blur(30px) grayscale(0.5); background-color: rgba(0,0,0,0.15); content: '';}
.page__img {border-radius: var(--bdrs); width: 200px; box-shadow: var(--bsh); align-self: start; overflow: hidden;}
.page__img > a {display: block; padding: 1px 10px; font-size: 15px; border-radius: var(--bdrs);
	position: absolute; right: 10px; top: 10px; color: var(--ui-accent);}
.page__img > a:hover {background-color: var(--bg);}
.page__rating{border-radius:var(--bdrs);overflow:hidden;display:flex; box-shadow: var(--bsh);}
.page__rating a{background-color:#007dcd;color:#fff;flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:10px;padding:6px 20px;position:relative;overflow:hidden;transition:background .3s ease,box-shadow .3s ease;}
.page__rating a+a{background-color:var(--ui-bg-darkest);color:var(--tt);}
.page__rating a:hover{box-shadow:inset 0 0 8px rgba(255,255,255,.15),0 0 8px rgba(255,255,255,.2);}
.page__rating a .fas{position:relative;z-index:2;transition:transform .3s ease;}
.page__rating a::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(255,255,255,.35) 0%,transparent 70%);opacity:0;transform:scale(.5);transition:opacity .4s ease,transform .4s ease;z-index:1;}
.page__rating a:active::after{opacity:1;transform:scale(1.8);}
.page__rating a:first-child:active .fas{animation:pulseUp .45s ease;}
.page__rating a:last-child:active .fas{animation:pulseDown .45s ease;}
@keyframes pulseUp{0%{transform:translateY(0) scale(1);color:#fff;}30%{transform:translateY(-5px) scale(1.4);color:#9effb5;text-shadow:0 0 10px #00ff84;}100%{transform:translateY(0) scale(1);color:#fff;text-shadow:none;}}
@keyframes pulseDown{0%{transform:translateY(0) scale(1);color:#fff;}30%{transform:translateY(5px) scale(1.4);color:#ff9a9a;text-shadow:0 0 10px #ff4b4b;}100%{transform:translateY(0) scale(1);color:#fff;text-shadow:none;}}

.page-collection .page__img {width: 300px; aspect-ratio: 3 / 2;}

.page__tech li {display: block; padding: 5px 13px; font-size: 12px; 
	text-transform: uppercase; border-radius: var(--bdrs); background-color: var(--bg-darker);}
.page__header h1 { font-weight: 800; line-height: 1.2; margin: 0; font-size: clamp(28px, 4vw, 46px); }
.page__header h1 span { display: block; font-weight: 500; font-size: clamp(15px, 2vw, 16px); }
.page__meta a { margin-top: 5px; font-weight: 500; color: #007dcd; font-size: clamp(14px, 2vw, 16px); }
.page__caption {color: var(--tt-fade);}
.page__play, .page__dl, .page__share, .page__fav a, .page__btn-ctrl1 
{height: 50px; border-radius: var(--bdrs); padding: 0 30px;}
.page__fav a, .page__share, .page__btn-ctrl1 {display: grid; place-items: center; width: 50px; font-size: 18px; padding: 0;}
.page__fav a, .page__share, .page__btn-ctrl1 {color: var(--tt-fade-0); background-color: var(--bg-darker-1);}
a.fav-active span {color: #e74c3c; /* roșu când e favorit */}

.page__clip-btn {width: 100%; position: relative; background: #000; cursor: pointer; 
	aspect-ratio: 3 / 1.6; border-radius: var(--bdrs);}
.page__clip-btn img {opacity: 0.6;}
.page__clip-btn::before {background-color: rgba(0,0,0,0.3); color: #fff; backdrop-filter: blur(10px); 
	position: relative; z-index: 10; width: 100px; height: 100px; border-radius: 50%; box-sizing: border-box; 
	font-size: 24px; padding-left: 5px; box-shadow: var(--bsh);}
.page__text {overflow-x: hidden; overflow-y: auto; position: relative;}
.sliced::after {content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 50%; z-index: 1; 
	background: linear-gradient(to top, var(--bg-darker) 0%, transparent 100%);}
.show-text {position: absolute; left: 50%; bottom: 3px; z-index: 2; translate: -50% 0;}


/* TEXT BLOCK, TYPOGRAPHY, VIDEO BLOCK
----------------------------------------------- */
.page__title {margin-bottom: 30px; font-size: 24px;}
.full-text {line-height: 1.6; font-size: 15px; word-wrap: break-word; color: var(--tt-fade-0);}
.full-text a {text-decoration: underline; color: var(--ui-accent);}
.full-text img:not(.emoji), .full-text p, .full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5, 
.full-text > ul, .full-text > ol, .full-text table {margin-bottom: 25px;}
.full-text > img[style*="left"], .full-text > .highslide img[style*="left"] {margin:0 10px 10px 0;}
.full-text > img[style*="right"], .full-text > .highslide img[style*="right"] {margin:0 0 10px 10px;}
.full-text > ul li, .full-text > ol li {padding-left: 60px; position: relative;}
.full-text > ul li:before {content: ''; width: 8px; height: 8px; border-radius: 50%; 
	border: 3px solid var(--accent); position: absolute; top: 6px; left: 34px;}
.full-text > ol {counter-reset: num;}
.full-text > ol li:before {content: counter(num); counter-increment: num; background-color: var(--accent); color: #fff; 
	position: absolute; top: -3px; left: 17px; width: 24px; height: 30px; font-size: 14px; font-weight: 500;
	display: flex; justify-content: flex-end; align-items: center; padding-right: 6px; box-sizing: border-box;}
.full-text > ol li:after {content: ''; border: 10px solid transparent; border-left-color: var(--accent); 
	position: absolute; left: 41px; top: -3px; transform: scale(0.66,1.5); transform-origin: 0 0;}
.full-text > ul li + li, .full-text > ol li + li {margin-top: 10px;}
.full-text table, .video-inside > * {width:100%;}
.full-text > *:last-child {margin-bottom: 0;}
.video-responsive {padding-top: 60%; position: relative; background-color: #000;}
.video-responsive > iframe, .video-responsive > video {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5 {font-size: 21px; margin-bottom: 20px;}


/* COMMENTS
----------------------------------------------- */
.page__comments {margin-top: 0px;}
.page__comments-info {color: var(--tt-fade); display: block; margin: 5px 0 20px; font-size: 14px; padding-left: 23px; position: relative;}
.page__comments-info::before {color: var(--red); position: absolute; left: 0; top: 2px;}
.page__ac {margin-bottom: 40px;}

.ac-form__header, .ac-form__editor, .ac-form .message-info {gap: 10px; margin-bottom: 10px;}
.ac-form__btn {padding: 0 60px;}
.ac-form__bottom {gap: 25px;}
.confidential-check {font-size: 14px;}
.ac-form__header > span {margin-left: 15px;}
.ac-form .comments_subscribe {margin-top: 0px;}

.ac-toggle.ac-form {cursor: pointer;}
.ac-form__header input, .ac-form__editor textarea {background-color: rgba(0,0,0,0.02);}
.ac-toggle, .ac-toggle .ac-form__editor {position: relative;}
.ac-toggle .ac-form__bottom button {position: absolute; bottom: 20px; right: 10px; z-index: 10; pointer-events: none;}
.ac-form .bb-btn {display: none;}
.ac-form .bb-pane {background: none; box-shadow: none; border: 0; position: absolute; left: 0; bottom: 0; right: 0;}
.ac-form #b_emo, .ac-form #b_leech, .ac-form #b_quote, .ac-form #b_spoiler, 
.ac-form #b_b, .ac-form #b_u, .ac-form #b_s, .ac-form #b_color, .ac-form #b_hide {display: grid;}
.ac-toggle .bb-btn {pointer-events: none;}
.ac-toggle .ac-form__editor .bb-editor textarea {height: 120px; resize: none;}
.ac-form__editor .bb-editor textarea {height: 200px; line-height: 1.4; padding-bottom: 40px;}
.comments_subscribe + br, .ac-form .bb-editor + br {display: none;}
.ac-toggle .has-checkbox {display: none;}

.mass_comments_action {display: none; align-items: center; flex-wrap: wrap; gap: 10px;}
.mass_comments_action select {flex: 1 1 0; margin: 0 -28px 0 0; border-radius: 0; box-shadow: none; min-width: 60%;}
.mass_comments_action .bbcodes {border-radius: 0; padding: 0 10px;}

.comm__title {font-size: 18px; margin-bottom: 20px;}

.comm {margin-bottom: 40px; position: relative; padding-left: 90px;}
.comm::before {content: ''; background-color: var(--accent); height: 100%; width: 2px; position: absolute; top: 0; left: 70px;}
.comm__img {width: 50px; height: 50px; border-radius: 50%; position: absolute; left: 0px; top: 0px;}
.comm__letter {width: 100%; height: 100%; text-transform: uppercase; border-radius: inherit;
	position: absolute; left: 0; top: 0; color: #fff; font-size: 18px; font-weight: 500;}
.comm__author, .comm__author a {color: var(--accent); font-weight: 500; font-size: 14px;}
.comm__date {color: var(--tt-fade); font-size: 12px;}
.comm__rating a {color: var(--green); font-size: 18px;}
.comm__rating a:last-child {color: var(--red);}
.comm__rating span {font-size: 14px;}
.comm__rating span .ratingplus {color: var(--green);}
.comm__rating span .ratingminus {color: var(--red);}
.comm__text {margin: 8px 0;}
.comm__action {font-size: 12px; --tt: var(--tt-fade);}
.comm__ctrl-btn {font-size: 18px; height: 30px; --tt: var(--tt-fade);}
.comm__ctrl-menu li + li {margin-top: 10px;}
body:has(.pwidget) #dropmenudiv {z-index: 1000 !important;}

/* POPUP WIDGET
----------------------------------------------- */
.pwidget {background-color: var(--bg); color: var(--tt); 
	border-radius: 20px; overflow: hidden; z-index: 999; padding: 20px; padding-top: 24px; 
	position: fixed; left: 20px; bottom: 20px; right: 20px; box-shadow: 0 0 60px rgba(0,0,0,0.5);}
.pwidget::before {content: ''; position: absolute; top: 10px; left: 50%; transform: translateX(-50%); 
	background-color: rgba(0,0,0,0.2); height: 4px; width: 40px; border-radius: 2px;}
.pwidget .wctrl__content {display: block; margin-bottom: 20px;}
@media screen and (min-width: 760px) {
	.pwidget {left: 50%; bottom: 50%; right: auto; translate: -50% 50%; width: 400px;}
	.pwidget::before {display: none;}
}

/* ================== PWIDGET POPUP ================== */

.pwidget-popup {
  position: fixed;
  inset: 0;
  z-index: 999;                 
  display: none;                
  align-items: center;
  justify-content: center;
}

.pwidget-popup.active { display: flex; }

.pwidget-popup__overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0,0,0,0.5);
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.pwidget-popup__container {
  position: relative;
  z-index: 1;
  background-color: var(--bg);
  color: var(--tt-fade-0);
  box-shadow: var(--bsh-long);
  border-radius: 0;
  border: none;
  width: 500px;
  max-width: calc(100% - 40px);
  padding: 30px 60px;

  /* animație „clasica”: mic slide-up + fade */
  animation: pwidgetSlideIn .28s ease-out both;
}

.pwidget-popup__header {
  position: relative;
  padding-left: 80px;             
  margin-bottom: 15px;
  border-bottom: none;
  background: transparent;
}

.pwidget-popup__img {
  width: 60px; height: 60px;
  background-color: var(--bg-darker);
  color: var(--tt-fade);
  position: absolute; left: 0; top: 50%; transform: translateY(-50%);
  border-radius: 5%;
  overflow: hidden;
  display: grid; place-items: center;
  box-shadow: none;                
  border: none;
}
.pwidget-popup__img img { width: 100%; height: 100%; object-fit: cover; }

/* Titluri ca .lgn */
.pwidget-popup__title { min-width: 0; overflow: hidden; }
.pwidget-popup__song-title { font-weight: 500; font-size: 19px; color: var(--tt); margin: 0 0 5px; }
.pwidget-popup__song-artist { font-size: 14px; color: var(--tt-fade); }

/* Conținutul listei */
.pwidget-popup__content { padding: 10px 0 0; display: block; }
.pwidget-popup__item {
  padding: 12px 0;
  border-bottom: 1px solid var(--bdc);
}
.pwidget-popup__item:last-child { border-bottom: none; }
.pwidget-popup__item a {
  color: inherit; text-decoration: none; display: flex; align-items: center; gap: 10px;
}
.pwidget-popup__item a:hover {
  text-decoration: underline;
  color: var(--ui-accent-hover, darken(var(--ui-accent), 10%));
}
.pwidget-popup__item span {
  cursor: pointer;
}

.pwidget-popup__item span:hover {
  color: var(--ui-accent-hover, darken(var(--ui-accent), 10%));
  text-decoration: underline;
}

/* Butonul principal = ca .lgn__btn button */
.pwidget-popup__btn {
  margin-top: 20px;
  width: 100%;
  display: block;
  background: linear-gradient(135deg, #007AFF 0%, #0051D5 100%);
  color: #fff; border: none; border-radius: 0;   /* lgn avea dreptunghiular */
  height: 50px; line-height: 50px;
  font-size: 16px; font-weight: 500;
  cursor: pointer;
  box-shadow: none;
  transition: transform .15s ease;
}
.pwidget-popup__btn:hover  { transform: translateY(-1px); }
.pwidget-popup__btn:active { transform: translateY(0) scale(.98); }

.pwidget-popup__close-btn {
  position: absolute;
  right: -40px;
  top: 0;
  font-size: 30px;
  color: var(--ui-accent-hover, darken(var(--ui-accent), 10%));
  line-height: 1;
  background: transparent;
  border: none;
  cursor: pointer;
}
.pwidget-popup__close-btn:hover {
  color: var(--ui-accent);
  background: transparent;
  box-shadow: none;
  transform: none;
}


@keyframes pwidgetSlideIn {
  0% {
    opacity: 0;
    transform: translateY(18px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ===== Responsive ca la lgn ===== */
@media screen and (max-width: 590px) {
  .pwidget-popup__container { padding: 30px 20px; width: calc(100% - 40px); }
  .pwidget-popup__header { padding-left: 60px; }
  .pwidget-popup__img { width: 50px; height: 50px; }
  .pwidget-popup__song-title { font-size: 17px; }
  .pwidget-popup__song-artist { font-size: 14px; }
  .pwidget-popup__close-btn { display: none;}
}

/* Motion redus */
@media (prefers-reduced-motion: reduce) {
  .pwidget-popup__container { animation: none; }
}


/* LOGIN
----------------------------------------------- */
.lgn {position: fixed; z-index: 999; left: 50%; top: 50%; translate: -50% -50%; width: 500px; max-width: calc(100% - 40px);}
.lgn__content {background-color: var(--bg); box-shadow: var(--bsh-long); padding: 30px 60px; position: relative;}
.lgn__ctrl > * {color: #fff !important; font-size: 19px; font-weight: 500; height: 45px; position: relative; text-transform: uppercase;}
.lgn__ctrl span::before {content: ''; border: 10px solid transparent; border-bottom-color: var(--bg); 
	position: absolute; left: 50%; bottom: 0; margin-left: -10px; z-index: 5;}
.lgn__btn-close {font-size: 40px; color: #fff; position: absolute; right: -50px; top: 0; z-index: 10;}
.lgn__header {position: relative; padding-left: 80px; margin-bottom: 15px;}
.lgn__avatar {width: 60px; background-color: var(--bg-darker); color: var(--tt-fade); font-size: 24px; 
	position: absolute; left: 0; top: 50%; translate: 0 -50%; overflow: hidden; border-radius: 50%;}
.lgn__title {font-size: 19px; font-weight: 500;}
.lgn__caption {color: var(--tt-fade); margin-top: 5px;}
.lgn__input input {height: 50px; line-height: 50px; border-radius: 0; padding: 0 30px;}
.lgn__input input::placeholder {font-size: 16px;}
.lgn__input input + input {margin-top: -1px;} 
.lgn__input input:focus {position: relative; z-index: 5;}
.lgn__btn button {height: 50px;}
.lgn__cell a {color: var(--ui-accent);}
.lgn__social-caption {font-size: 13px; color: var(--tt-fade); margin-top: 5px;}
.lgn__social-caption::before, .lgn__social-caption::after {content: ''; flex-grow: 1; background: var(--bdc); height: 1px;}
.lgn__social a {border-radius: 50%; width: 34px; height: 34px; display: grid; place-items: center;}
.lgn__social a img {height: 18px; width: 18px; display: block; filter: invert(1);}
.lgn__social-vk {background-color: #587ba1;}
.lgn__social-ok {background-color: #ff9800;}
.lgn__social-fb {background-color: #3b5998;}
.lgn__social-ml {background-color: #2196f3;}
.lgn__social-gg {background-color: #f44336;}
.lgn__social-ya {background-color: #fc3f1d;}
.lgn__social:not(:has(a)) {display: none;}
.lgn--logged {width: 400px;}
.lgn__menu a {display: flex; align-items: center; gap: 10px;}


/* plr
----------------------------------------------- */
.plr {position: fixed; left: 0; bottom: 0; width: 100%; z-index: 990; 
	background-color: var(--bg); box-shadow: 0 -20px 40px rgba(0,0,0,0.1);}
.plr__inner {padding: 15px var(--indent); }
.plr__middle {width: 600px;}
.plr__left {position: relative; padding-left: 60px;}
.plr__img {width: 50px; border-radius: var(--bdrs); box-shadow: var(--bsh); 
	position: absolute; left: 0; top: 50%; translate: 0 -50%;}
.plr__title {font-weight: 500; font-size: 15px;}
.plr__subtitle {color: var(--tt-fade); font-size: 14px; margin-top: 1px;}
.plr__top {padding: 0 60px;}
.plr__next-info {max-width: 100%; font-weight: 500; font-size: 15px;}
.plr__next-info span {font-size: 10px; text-transform: uppercase; color: var(--tt-fade); margin-bottom: 3px;}
.plr__time {width: 40px; font-weight: 500; font-size: 12px;}
.plr__time-total {text-align: right;}
.plr__bar {height: 6px; border-radius: 3px; position: relative; background-color: rgba(0,0,0,0.1);}
.plr__bar input {height: 100%; width: 100%; position: absolute; left: 0; top: 0; opacity: 0; cursor: pointer;}
.plr__bar::before {content: ''; position: absolute; left: 0; top: 0; height: 100%;
	width: var(--range-progress,0%); border-radius: inherit; background-color: var(--accent);}
.plr__bar-vol {height: 4px; border-radius: 2px;}
.plr__bar-vol::before {background-color: rgba(0,0,0,0.3);}
.plr__prev, .plr__next {border-radius: 50%; color: var(--accent); font-size: 16px; height: 32px;}
.plr__shuffle, .plr__repeat, .plr__mute, .plr__playlist {border-radius: 50%; color: var(--tt-fade); font-size: 14px; height: 30px;}
.plr__play {border-radius: 50%; color: var(--accent); 
	padding-left: 3px; font-size: 20px; height: 40px;}
.plr__playlist span {font-size: 12px;}

.plr__playlist-list {position: absolute; left: 50%; bottom: 100%; translate: -50% 0; margin-bottom: 10px; width: 600px; 
	background-color: var(--bg); box-shadow: var(--bsh-long); border-radius: var(--bdrs); padding-bottom: 30px; display: none;}
.plr__playlist-list::before {content: ''; border: 10px solid transparent; border-top-color: var(--bg); 
	position: absolute; top: 100%; left: 50%; translate: -50% 0; z-index: 5;}
.plr__playlist-list-title {height: 80px; font-size: 18px; font-weight: 500; padding: 0 30px; cursor: pointer;}
.plr__playlist-list-content {overflow-x: hidden; overflow-y: auto; height: 400px;}
.plr__trc {border-top: 1px solid var(--bdc); padding: 15px 30px; cursor: pointer; gap: 15px;}
.plr__trc-img {width: 50px; border-radius: 10px; overflow: hidden;}
.plr__trc-img::before {position: absolute; inset: 0; z-index: 3; background-color: var(--accent); color: #fff; 
	display: grid; place-items: center; font-size: 12px; opacity: 0;}
.plr__trc-title {font-weight: 500;}
.plr__trc-subtitle {color: var(--tt-fade); margin-top: 3px;}
.plr__trc-time {color: var(--tt-fade);}
.plr__trc:hover, .plr__trc.is-active {background-color: var(--bg-darker);}
.plr__trc.is-active .plr__trc-img::before {opacity: 1;}
.plr__playlist-holder.is-active .plr__playlist-list {display: block;}
.plr__playlist-holder.is-active .plr__playlist {color: var(--accent);}

.plr--is-muted .plr__mute::before {content:"\f6a9";}
.plr--is-playing .plr__play::before {content:"\f04c";}
.plr--is-playing .plr__play {padding-left: 0;}
.plr--is-repeated .plr__btn-repeat:not(:hover), .plr--is-shuffled .plr__btn-repeat:not(:hover) 
{color: var(--accent);}
.plr--is-repeated .plr__repeat, .plr--is-shuffled .plr__shuffle {color: var(--accent);}
.plr--not-loaded button:not(.plr__play), .plr--not-loaded .plr__bar {pointer-events: none;}

.wrapper {padding-bottom: 128px;}
@media screen and (max-width: 1220px) {
	.plr__middle {width: 500px;}
	.plr__top {padding: 0;}
	.plr__playlist-holder {position: static;}
	.plr__playlist-list {width: 100vw; left: 0; translate: 0 0;
		height: calc(100vh - 88px); height: calc(100dvh - 88px); border-radius: 0; margin: 0;}
	.plr__playlist-list::before {display: none;}
	.plr__playlist-list-content {height: calc(100% - 110px);}
	.scrolltop {bottom: 100px; display: none !important;}
}
@media screen and (max-width: 950px) {
	.plr__middle {width: 100%;}
	.plr__left, .plr__right {display: none;}
}
@media screen and (max-width: 590px) {
	.wrapper {padding-bottom: 85px;}
	.plr__top {gap: 10px;}
	.plr__middle {display: block;}
	.plr__ctrl {gap: 10px;}
	.plr__vol {justify-content: flex-end;}
	.plr__bar-vol {display: none;}
	.plr__bottom {position: absolute; left: 0; right: 0; bottom: 100%;}
	.plr__time {position: absolute; left: var(--indent); height: 15px; font-weight: 400; font-size: 10px; z-index: 3;
		display: flex; align-items: center; width: auto; pointer-events: none;}
	.plr__time-total {left: auto; right: var(--indent);}
	.plr__bar-progress {height: 15px; border-radius: 0; background-color: var(--bg-darker);}
	.plr__playlist-list {height: calc(100vh - 60px); height: calc(100dvh - 60px);}
}

.trc__ctrl li {margin-bottom: 10px; cursor: pointer; height: 30px;}
.trc__ctrl li:hover span, .trc__ctrl li:hover a {text-decoration: underline;}
/*
.cols__sidebar-sticky, .plr {position: static;}
.wrapper {padding-bottom: 40px;}
body {background-repeat: repeat; background-attachment: scroll;}
*/
.fa-pull-right {float: none !important;}
.toasts {position: fixed; right: 10px; top: 20px; z-index: 990; display: grid; gap: 20px;}
.toast {background-color: #fff; color: #000; border-radius: 6px; overflow: hidden;
	position: relative; width: 400px; display: flex; align-items: center; gap: 20px; 
	padding: 16px 20px; box-shadow: 0 5px 20px rgba(0,0,0,0.2); --accent: #00a2ff; 
	animation: showToast 0.5s ease forwards; max-width: calc(100vw - 40px);}
.toast__icon {font-size: 28px; color: var(--accent);}
.toast__title {font-weight: 500;}
.toast__text {font-size: 14px;}
.toast__close {font-size: 18px; margin: 0 -10px; display: grid; place-items: center; 
	cursor: pointer; opacity: 0.6; width: 40px; height: 40px;}
.toast::after {content: ''; width: 100%; height: 3px; background-color: var(--accent); 
	position: absolute; left: 0; bottom: 0; animation: progressToast var(--toast-timer) linear forwards}
.toast--success {--accent: #41b92f;}
.toast--warning {--accent: #f4bd00;}
.toast--error {--accent: #dd3954;}
.toast--is-hiding {animation: hideToast 0.5s ease forwards;}
@keyframes progressToast {
	100% {width: 0}
}
@keyframes showToast {
	0% {transform: translateX(calc(100% + 20px));}
	40% {transform: translateX(-5%);}
	80% {transform: translateX(0%);}
	100% {transform: translateX(-10px);}
}
@keyframes hideToast {
	0% {transform: translateX(-10px);}
	40% {transform: translateX(0%);}
	80% {transform: translateX(-5%);}
	100% {transform: translateX(calc(100% + 20px));}
}
