/* BASIC LAYOUT
----------------------------------------------- */

.wrapper {
    min-width: 320px;
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px;
}

.wrapper-container {
    max-width: var(--max-width);
    margin: 0 auto;
    position: relative;
    z-index: 20;
}

.wrapper-main {
    min-height: 100vh;
    background-color: var(--bg-2);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.9);
    border-radius: 10px;
}

.header {
    padding: 0 var(--indent);
    background-color: #242121;
    position: relative;
    z-index: 100;
    border-radius: 10px 10px 0 0;
    border-bottom: 1px solid #2d2d2d;
}

.header__logo {
    max-width: 200px;
}

.content {
    padding: 39px var(--indent);
    padding-bottom: 60px;
    min-height: 80vh;
}

.cols {
    display: grid;
    gap: 40px;
    grid-template-columns: minmax(0, 1fr) 360px;
}

.footer {
    padding: 8px var(--indent);
    background-color: #1c1c1c;
    color: var(--tt-dark);
    border-radius: 0 0 10px 10px;
}

.footer__bottom {
    margin-top: 5px;
    gap: 20px;
}

#scrolltop {
    position: fixed;
    width: 60px;
    height: 60px;
    line-height: 60px;
    right: 10px;
    bottom: 10px;
    z-index: 990;
    display: none;
    background-color: var(--bg);
    color: var(--tt-2);
    cursor: pointer;
    font-size: 24px;
    border-radius: 50%;
    text-align: center;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}


/* HEADER, NAV
----------------------------------------------- */

.logo {
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 22px;
    margin-right: 40px;
    color: #e50914 !important;
}

.header__btn-login {
    height: 30px;
    border-radius: 4px;
    font-size: 12px;
    margin-left: 10px;
    font-weight: 500;
    padding: 0 10px;
}

.theme-toggle {
    margin-left: 10px;
    font-size: 16px;
    display: grid;
    place-items: center;
    height: 30px;
    width: 30px;
    border-radius: 4px;
    box-shadow: 0 0 0 1px var(--bdc);
    padding: 0;
    color: var(--tt);
    background-color: var(--bg);
}

.dt-is-active .theme-toggle .fal::before {
    content: "\f186";
}

.header__menu {
    gap: 20px;
    position: relative;
}

.header__menu>li>a {
    font-weight: 600;
    color: var(--tt-3);
    height: 100px;
    display: flex;
    align-items: center;
}

.header__menu>li.header__menu--fw400>a {
    font-weight: 400;
}

.header__menu-hidden {
    position: absolute;
    top: 80%;
    left: 0;
    z-index: 100;
    border-radius: 6px;
    background-color: var(--bg);
    box-shadow: 0 30px 60px rgba(0, 0, 0, 0.2);
    width: 100%;
    padding: 15px 20px;
    display: grid;
    gap: 5px 20px;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    display: none;
}

.header__menu-hidden a {
    display: block;
    padding: 5px 10px;
    border-radius: 4px;
}

.header__menu>li:hover .header__menu-hidden {
    display: grid;
}

.header__menu>li:hover>a {
    color: var(--accent-red);
}

.header__menu-hidden a:hover,
.theme-toggle:hover {
    background-color: var(--accent-red);
    color: #fff;
}

.header__menu-hidden a:hover:active,
.theme-toggle:hover:active {
    background-color: #c1030c;
}

.header__search {
    width: 210px;
    position: relative;
}

.header__search input,
.header__search input:focus {
    padding: 0 30px 0 10px;
    border-radius: 4px;
    background: var(--bg-2);
    box-shadow: 0 0 0 1px #2d2d2d;
    color: var(--tt);
    height: 30px;
    line-height: 30px;
}

.header__search input:not(:focus)::placeholder {
    color: var(--tt-3);
    opacity: 1;
    font-size: 12px;
}

.header__search button {
    position: absolute;
    right: 0;
    top: 0;
    padding: 0;
    width: 30px;
    height: 30px;
    background: none;
    color: var(--tt-3);
    font-size: 12px;
}


/* CAROU TOP ITEM, COLLECTION ITEM
----------------------------------------------- */

.carou {
    background-color: #161616;
    padding: 40px 60px;
}

.carou__content:not(.owl-carousel) {
    display: flex;
    overflow: hidden;
}

.carou__content>.poster {
    width: calc((100% - 120px)/7);
    flex-shrink: 0;
    margin-right: 20px;
}

.carou .poster__title {
    font-size: 13px;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.carou .poster__subtitle {
    font-size: 10px;
    font-weight: 400;
}

.carou .has-overlay__icon {
    padding: 0;
}

.carou .poster__fav {
    top: 94px;
}

.carou .poster__label {
    background-color: #e50914;
    color: #ffffff;
}

.carou .poster__series {
    left: 5px;
    bottom: 5px;
    border-radius: 3px;
    height: 20px;
    padding: 0 6px;
    font-size: 10px;
    display: flex;
    align-items: center;
}

.carou .poster__series div {
    display: inline;
    margin-left: 6px;
}

.grid-collectons {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 0;
}

.coll {
    display: block;
    padding-top: 0;
    height: 160px;
    text-align: center;
}

.coll__title {
    position: absolute;
    inset: 0;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 20px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 15px;
    z-index: 5;
}

.coll__title:hover {
    background-color: var(--accent-red);
    color: #fff;
}

.grid-items>.coll,
#dle-content>.coll {
    grid-column: span 2;
}


/* SECTION
----------------------------------------------- */

.sect {
    margin-bottom: 32px;
}

.sect__header {
    margin-bottom: 20px;
    gap: 10px;
}

.sect__title {
    font-size: 23px;
    font-weight: 700;
}

.sect__ctrl {
    margin-top: -6px;
    gap: 10px;
}

.sect__ctrl-menu {
    gap: 20px 20px;
    font-size: 13px;
}

.sect__ctrl-menu--main {
    font-weight: 600;
}

.sect__ctrl-menu label {
    position: relative;
    display: block;
}

.sect__ctrl-menu label input {
    display: block;
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.sect__ctrl-menu a,
.sect__ctrl-menu label div {
    height: 30px;
    display: flex;
    align-items: center;
}

.sect__ctrl-menu a.is-active,
.sect__ctrl-menu label input:checked+div {
    background-color: var(--bg-dark);
    color: var(--tt-dark);
    border-radius: 4px;
    padding: 0 10px;
}

.sect__ctrl-menu a:not(.is-active):hover,
.sect__ctrl-menu label div:hover {
    color: var(--accent-red);
}

.sect__link {
    display: flex;
    align-items: center;
    height: 30px;
    border-radius: 4px;
    padding: 0 10px;
    font-size: 12px;
    background-color: var(--bg);
    color: var(--tt-2);
    gap: 10px;
}

.sect__content--carousel:not(.owl-carousel) {
    display: flex;
    overflow: hidden;
}

.sect__content--carousel:not(.owl-carousel)>.poster {
    flex-shrink: 0;
    margin-right: 20px;
    width: calc((100% - 100px)/6);
}

.sect--carou .sect__header {
    padding-right: 80px;
}

.descr {
    display: grid;
    grid-gap: 20px;
    line-height: 1.7;
    color: var(--tt);
    padding-top: 60px;
}

.descr h1,
.descr h2,
.descr h3 {
    font-weight: 500;
    font-size: 18px;
    color: var(--tt);
    line-height: 1.3;
}

.descr a {
    text-decoration: underline;
    color: #e50914;
}

.descr ul li {
    position: relative;
    padding-left: 25px;
    margin-left: 25px;
}

.descr ul li::before {
    content: "\f00c";
    font-weight: 300;
    font-family: 'Font Awesome 5 Pro';
    color: #e50914;
    position: absolute;
    left: 0;
    top: 0;
}

.speedbar {
    font-size: 13px;
    color: var(--tt-2);
    margin-top: 20px;
    margin-bottom: -20px;
}

.speedbar .fal {
    margin-right: 8px;
    color: #e50914;
}

.speedbar a:hover {
    text-decoration: underline;
}

#gr1 img {
    float: left;
    margin: 0 20px 10px 0;
    width: 320px;
    border-radius: 3px;
    opacity: 0.95;
}


/* POSTER ITEM
----------------------------------------------- */

.poster {
    position: relative;
}

.poster__img {
    border-radius: 5px;
    margin-bottom: 15px;
    height: 160px;
}

.poster__label {
    position: absolute;
    left: 6px;
    top: 5px;
    border-radius: 3px;
    height: 22px;
    display: flex;
    align-items: center;
    padding: 2px 10px;
    font-size: 11px;
    background-color: var(--bg-dark);
    color: var(--tt-dark);
    z-index: 10;
    pointer-events: none;
}

.poster__label--white {
    background-color: #e50914;
    color: #ffffff;
}

.poster__series {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #2d2d2d;
    padding: 5px 8px;
    font-size: 11px;
    font-weight: 500;
    border-top-right-radius: 5px;
    color: #fff;
}

.has-overlay__icon {
    position: absolute;
    z-index: 3;
    inset: 0;
    display: flex;
    flex-direction: column;
    padding-bottom: 50px;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.has-overlay__icon::before {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fff url(../images/play.svg) center center / 14px no-repeat;
    content: '';
}

.poster__ratings {
    color: #fff;
    font-size: 11px;
    text-align: center;
    line-height: 1.6;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
}

.poster__btn-info,
.poster__fav a {
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    border-radius: 3px;
    background-color: var(--accent-red);
    color: #fff;
    gap: 5px;
    font-size: 12px;
    white-space: nowrap;
}

.poster__fav a {
    background-color: #fff;
    color: #000;
}

.poster__btn-info,
.poster__fav {
    position: absolute;
    left: 50%;
    top: 50px;
    z-index: 11;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -30px);
    transition: all 0.2s ease-in-out;
}

.poster__fav {
    top: 146px;
    transform: translate(-50%, 30px);
}

.poster:hover .poster__fav,
.poster:hover .poster__btn-info {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0px);
}

.poster:hover .poster__btn-info {
    transition-delay: 0.2s;
}

.poster__fav a::before {
    content: '';
    background: url(../images/heart.svg) 0 0 / contain no-repeat;
    width: 16px;
    height: 16px;
}

.has-overlay:hover .has-overlay__icon {
    opacity: 1;
}

.poster:hover .poster__series {
    opacity: 0;
}

.poster__fav a:hover {
    background-color: var(--bg-dark);
    color: #fff;
}

.poster__btn-info:hover {
    background-color: #c1030c;
}

.poster__link {
    display: block;
}

.poster__link::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 5;
}

.poster__title {
    font-size: 14px;
    font-weight: 600;
    color: #ffffff;
}

.poster__subtitle {
    color: var(--tt-2);
    font-size: 11px;
    font-weight: 500;
    margin-top: 6px;
}

.th-active {
    z-index: 100;
}

.th-text {
    display: none;
    background-color: var(--bg);
    cursor: auto;
    padding: 20px;
    text-align: left;
    position: absolute;
    z-index: 1000;
    left: 100%;
    top: 0;
    width: 460px;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
    border-radius: 4px;
    min-height: 100px;
}

.th-text::after {
    content: "";
    border: 10px solid var(--bg);
    position: absolute;
    top: 24px;
    right: 100%;
    border-left-color: transparent;
    border-bottom-color: transparent;
}

.pop-left .th-text::after {
    border: 10px solid var(--bg);
    border-right-color: transparent;
    border-bottom-color: transparent;
    left: 100%;
    right: auto;
}

.pop-left .th-text {
    left: auto;
    right: 100%;
}

.th-text-loader {
    text-align: center;
    font-size: 18px;
    color: #ffffff;
    padding-top: 20px;
}

.th-text-header {
    display: block;
    text-decoration: underline;
    font-weight: 500;
    font-size: 18px;
    color: #ffffff;
}

.th-text .not-shown-ajax,
.th-text .pmovie__header h1 a {
    display: none;
}

.th-text .pmovie__text {
    font-size: 13px;
    line-height: 1.4;
    margin: 15px 0;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.th-text .pmovie__list {
    background: none;
    padding: 0;
    font-size: 13px;
}

.th-text .pmovie__list li+li {
    margin-top: 5px;
}

.th-text button {
    width: 100%;
    margin-top: 15px;
    gap: 10px;
}


/* CARD SHORTSTORY, TOP SHORTSTORY
----------------------------------------------- */

.card {
    padding: 20px;
    border-radius: 5px;
    background-color: var(--bg);
    display: grid;
    gap: 15px 20px;
    grid-template-columns: 200px minmax(0, 1fr);
    grid-template-rows: min-content 1fr min-content;
    grid-template-areas: "cimg ctitle" "cimg cdesc" "cimg cbtm";
    position: relative;
}

.card__img {
    display: block;
    height: 300px;
    border-radius: 5px;
    grid-area: cimg;
    border: 1px solid var(--bdc);
}

.card .has-overlay__icon {
    padding: 0;
}

.card .poster__fav {
    left: auto;
    right: 20px;
    top: 20px;
    opacity: 1;
    visibility: visible;
    transform: none;
}

.card .poster__fav a:not(:hover) {
    background-color: var(--bg-2);
}

.card__title {
    display: block;
    grid-area: ctitle;
    margin-right: 130px;
}

a.card__title:hover {
    text-decoration: underline;
}

.card__title h3 {
    font-size: 18px;
    font-weight: 600;
}

.card__desc {
    grid-area: cdesc;
}

.card__list {
    display: grid;
    grid-gap: 6px 0;
    font-size: 13px;
}

.card__list li>span:first-child {
    font-weight: 500;
    margin-right: 3px;
}

.card__list a {
    text-decoration: underline;
    color: #e50914;
}

.card__text {
    margin-top: 15px;
    -webkit-line-clamp: 4;
    line-height: 1.5;
}

.card__bottom {
    font-size: 12px;
    grid-area: cbtm;
    gap: 10px 20px;
}

.card__meta .fal {
    margin-right: 5px;
    opacity: 0.66;
}

.card__btn {
    height: 30px;
    padding: 0 10px;
}

.card__fav {
    position: absolute;
    right: 0;
    top: 0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    font-size: 18px;
    overflow: hidden;
    color: var(--tt-lighter);
}

.card__fav .fas {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: flex !important;
    justify-content: center;
    align-items: center;
    padding: 0 0 25px 25px;
}

.card__fav .fas::after {
    content: '';
    background: var(--gradient);
    box-shadow: var(--bsh-2);
    z-index: -1;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: skew(45deg);
    transform-origin: 0 0;
}

.card__fav .fas.added::after {
    background: var(--gradient-accent);
}

.card__rating-ext {
    font-size: 14px;
    font-weight: 500;
    color: var(--tt);
    gap: 3px;
    position: relative;
    display: flex;
    align-items: center;
    line-height: 1;
    white-space: nowrap;
}

.card__rating-ext>span {
    font-size: 11px;
    font-weight: 400;
}

.card__rating-ext::before {
    content: attr(data-text);
    display: inline-flex;
    height: 24px;
    align-items: center;
    border-radius: 3px;
    padding: 0 5px;
    font-size: 11px;
    margin-right: 3px;
}

.card__rating-ext.kp::before {
    background-color: #ff6600;
    color: #fff;
}

.card__rating-ext.imdb::before {
    background-color: #ffc107;
    color: #000;
}

.card__meta.flex-grow-1 {
    align-self: center;
    text-align: right;
    margin-right: -10px;
}

.linek {
    background-color: var(--bg);
    border-radius: 5px;
    padding: 10px 20px;
    gap: 0 !important;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
    display: flex !important;
}

.linek__img {
    width: 80px;
    height: 120px;
    margin: -10px -20px;
    margin-right: 20px;
}

.linek__title {
    color: #ffffff;
    font-weight: 500;
    font-size: 15px;
    padding-right: 120px;
}

.linek__meta {
    margin-top: 10px;
    color: var(--tt-2);
    font-size: 12px;
}

.linek .card__bottom {
    margin-top: 10px;
}

.linek .poster__fav {
    right: 5px;
    top: 5px;
}

.count-items {
    counter-reset: num;
}

.count-items .linek::before {
    content: counter(num);
    counter-increment: num;
    color: var(--tt-2);
    opacity: 0.3;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -10px;
    transform: translateY(-50%);
    font-size: 40px;
    font-weight: 700;
}


/* SIDEBAR
----------------------------------------------- */

.sb {
    background-color: #1e1e1e;
}

.sb__title {
    font-weight: 600;
    font-size: 16px;
    padding: 15px 20px;
}

.upd__date {
    background: var(--accent-red);
    color: var(--tt-dark);
    padding: 10px 20px;
    font-weight: 500;
    font-size: 13px;
    cursor: pointer;
}

.upd__date:hover {
    background: #c1030c;
}

.updli {
    position: relative;
}

.updli__link {
    padding: 10px 20px;
    border-bottom: 1px solid #2d2d2d;
}

.updli__img {
    width: 50px;
    height: 50px;
    border-radius: 3px;
    margin-right: 10px;
}

.updli__title {
    font-weight: 500;
    font-size: 13px;
}

.updli__season {
    margin-top: 6px;
    border-radius: 3px;
    background-color: #2d2d2d;
    padding: 3px 6px;
    font-size: 11px;
    display: inline-block;
    color: #fff;
}

.updli__meta {
    border-radius: 3px;
    background-color: #2d2d2d;
    margin-left: 10px;
    padding: 6px 10px;
    font-size: 11px;
    text-align: center;
    width: 80px;
    font-weight: 500;
    color: #fff;
}

.updli__voice {
    font-weight: 400;
    color: var(--tt-2);
    margin-top: 3px;
}

.upd.is-active .upd__items {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.upd:not(.is-active)+.upd {
    margin-top: 5px;
}

.updli__fav {
    width: 50px;
    height: 50px;
    border-radius: 3px;
    inset: 10px auto auto 20px;
    color: #fff;
    font-size: 10px;
    z-index: 10;
    white-space: nowrap;
}

.updli__fav a {
    color: #fff;
    width: 100%;
    height: 100%;
    display: block;
    text-align: center;
}

.updli__fav a::before {
    content: '';
    background: #fff url(../images/heart.svg) center center / 12px no-repeat;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: block;
    margin: 0 auto;
    margin-bottom: 2px;
}

.updli:hover .updli__meta,
.updli:hover .updli__voice,
.upd__date:hover {
    background-color: var(--accent-red);
    color: #fff;
}

.upd__items {
    max-height: 460px;
    overflow-x: hidden;
    overflow-y: auto;
}

.upd__items::-webkit-scrollbar {
    width: 4px;
}

.upd__items::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.2);
}

.upd__items::-webkit-scrollbar-thumb {
    background-color: #e50914;
    border-radius: 4px;
}

.upd__items::-webkit-scrollbar-thumb:hover {
    background-color: #c1030c;
}

.sb+.sb {
    border-top: 1px solid var(--bdc);
}


/* Стили для новых блоков sidebar */

.sb__tags {
    list-style: none;
    padding: 0 20px 20px;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sb__tags li {
    margin: 0;
}

.sb__tags a {
    display: inline-block;
    padding: 6px 12px;
    background-color: #2d2d2d;
    color: #b3b3b3;
    font-size: 13px;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.3s ease;
    font-weight: 400;
}

.sb__tags a:hover {
    background-color: #e50914;
    color: #fff;
    transform: translateY(-1px);
}

.sb__links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sb__links li {
    margin: 0;
    border-bottom: 1px solid #2d2d2d;
}

.sb__links li:last-child {
    border-bottom: none;
}

.sb__links a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    color: #b3b3b3;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.sb__links a:hover {
    color: #e50914;
    background-color: rgba(229, 9, 20, 0.05);
    padding-left: 25px;
}

.sb__links a .fal {
    width: 18px;
    text-align: center;
    font-size: 16px;
    color: #808080;
    transition: color 0.3s ease;
}

.sb__links a:hover .fal {
    color: #e50914;
}

.sb__stats {
    padding: 0 20px 20px;
}

.sb__stats-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #2d2d2d;
}

.sb__stats-item:last-child {
    border-bottom: none;
}

.sb__stats-label {
    font-size: 14px;
    color: #b3b3b3;
    font-weight: 400;
}

.sb__stats-value {
    font-size: 16px;
    color: #fff;
    font-weight: 600;
    background-color: #2d2d2d;
    padding: 4px 12px;
    border-radius: 4px;
    min-width: 50px;
    text-align: center;
}


/* Адаптивность для новых блоков sidebar */

@media (max-width: 768px) {
    .sb__tags {
        padding: 0 15px 15px;
        gap: 6px;
    }
    .sb__tags a {
        padding: 5px 10px;
        font-size: 12px;
    }
    .sb__links a {
        padding: 10px 15px;
        font-size: 13px;
    }
    .sb__stats {
        padding: 0 15px 15px;
    }
    .sb__stats-item {
        padding: 8px 0;
    }
    .sb__stats-label {
        font-size: 13px;
    }
    .sb__stats-value {
        font-size: 14px;
        padding: 3px 10px;
    }
}


/* Custom Series Styles */

.custom-series-item {
    display: flex;
    gap: 10px;
    padding: 10px 20px;
    border-bottom: 1px solid #2d2d2d;
    transition: background-color 0.2s;
}

.custom-series-item:hover {
    background-color: rgba(229, 9, 20, 0.05);
}

.custom-series-item:last-child {
    border-bottom: none;
}

.series-image {
    flex-shrink: 0;
    width: 50px;
    height: 70px;
    border-radius: 3px;
    overflow: hidden;
    background-color: #2d2d2d;
}

.series-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.series-image .no-image {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: var(--tt-2);
    text-align: center;
    padding: 5px;
}

.series-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.series-info h3 {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
    margin: 0;
}

.series-info h3 a {
    color: var(--tt-3);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.series-info h3 a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.series-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    font-size: 11px;
    align-items: center;
}

.series-meta .series-news {
    flex: 1 1 100%;
    min-width: 0;
}

.series-meta .series-news a {
    color: var(--tt-2);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.series-meta .series-news a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.series-meta .series-season,
.series-meta .series-episode {
    border-radius: 3px;
    background-color: #2d2d2d;
    padding: 3px 6px;
    color: #fff;
    white-space: nowrap;
}

.custom-series-item:hover .series-meta .series-season,
.custom-series-item:hover .series-meta .series-episode {
    background-color: var(--accent-red);
}

.series-story {
    font-size: 11px;
    color: var(--tt-2);
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: 2px;
}

.series-link {
    margin-top: 4px;
}

.series-link .btn-view {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    padding: 0 10px;
    font-size: 11px;
    background-color: var(--accent-red);
    color: #fff;
    border-radius: 3px;
    font-weight: 500;
    transition: background-color 0.2s;
}

.series-link .btn-view:hover {
    background-color: #c1030c;
    color: #fff;
}

.no-series {
    padding: 20px;
    text-align: center;
    color: var(--tt-2);
    font-size: 13px;
}


/* Upcoming Series Row (main page "Скоро выйдут") */

.upcoming-series-row {
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr) 120px;
    gap: 10px 20px;
    align-items: center;
    padding: 10px 20px;
    background-color: #1e1e1e;
    border-radius: 5px;
    margin-bottom: 8px;
    border: 1px solid #1f1f1f;
}

.upcoming-series-row:hover {
    background-color: #1f1f1f;
    border-color: #2d2d2d;
}

.main-series-grid .upcoming-series-row:last-child {
    margin-bottom: 0;
}

.upcoming-series-cell {
    min-width: 0;
}

.upcoming-series-poster .series-image {
    width: 70px;
    height: 100px;
}

.upcoming-series-poster .series-image-link {
    display: block;
    height: 100%;
}

.upcoming-series-main .upcoming-series-title {
    font-size: 15px;
    margin: 0 0 6px 0;
    font-weight: 600;
}

.upcoming-series-main .upcoming-series-title a {
    color: #ffffff;
}

.upcoming-series-main .upcoming-series-title a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.upcoming-series-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    font-size: 12px;
    color: var(--tt-2);
    align-items: center;
}

.upcoming-series-meta .meta-label {
    opacity: 0.7;
}

.upcoming-series-meta .series-news a {
    color: var(--tt-2);
}

.upcoming-series-meta .series-news a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.upcoming-series-meta .series-season,
.upcoming-series-meta .series-episode {
    border-radius: 4px;
    background-color: #2d2d2d;
    padding: 3px 8px;
    color: #fff;
    font-size: 11px;
    white-space: nowrap;
}

.upcoming-series-row:hover .upcoming-series-meta .series-season,
.upcoming-series-row:hover .upcoming-series-meta .series-episode {
    background-color: var(--accent-red);
}

.upcoming-series-main .series-story {
    margin-top: 6px;
    font-size: 12px;
    line-height: 1.5;
    color: var(--tt-2);
    -webkit-line-clamp: 2;
}

.upcoming-series-action {
    text-align: right;
}

.btn-view--upcoming {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 100px;
    height: 30px;
    padding: 0 14px;
    border-radius: 4px;
    background: var(--accent-red);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.5);
}

.btn-view--upcoming:hover {
    background-color: #c1030c;
    color: #fff;
}

@media screen and (max-width: 760px) {
    .upcoming-series-row {
        grid-template-columns: 60px minmax(0, 1fr);
        grid-template-rows: auto auto;
        grid-template-areas: "poster title" "poster action";
        align-items: flex-start;
    }
    .upcoming-series-poster {
        grid-area: poster;
    }
    .upcoming-series-main {
        grid-area: title;
    }
    .upcoming-series-action {
        grid-area: action;
        text-align: left;
        margin-top: 6px;
    }
}

.sblogin {
    padding: 20px;
}

.sblogin__img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    margin-right: 10px;
    background-color: #2d2d2d;
}

.sblogin__name {
    font-weight: 600;
}

.sblogin__name div:last-child {
    font-weight: 400;
    color: var(--tt-2);
    font-size: 11px;
    margin-top: 2px;
}

.sblogin__ctrl {
    gap: 10px;
    font-weight: 500;
    font-size: 11px;
    margin-left: 10px;
}

.sblogin__desc-btm {
    gap: 6px;
    margin-top: 6px;
}

.sblogin__desc-btm a,
.sblogin__desc-btm a span {
    border-radius: 3px;
    background-color: var(--bg-2);
    display: flex;
    align-items: center;
    padding: 0 6px;
    font-size: 11px;
    height: 20px;
    overflow: hidden;
}

.sblogin__desc-btm a span {
    margin-right: -6px;
    margin-left: 6px;
    background-color: var(--accent-red);
    color: #fff;
    border-radius: 0;
    font-size: 10px;
}

.sblogin a:hover {
    text-decoration: underline;
}

.pmovie__quote {
    padding: 5px 8px;
    border-radius: 3px;
    text-align: center;
    margin-bottom: 4px;
    background-color: #2d2d2d;
    width: 100%;
    font-size: 13px;
    display: block;
    color: #fff;
}

.ftop-item__title {
    padding-right: 40px;
}


/* FOOTER, PAGINATION
----------------------------------------------- */

.footer__menu {
    gap: 20px 40px;
    font-weight: 400;
}

.footer__menu a {
    color: #b3b3b3;
}

.footer__menu a:hover {
    color: #e50914;
}

.footer__menu--fw600 {
    font-weight: 600;
}

.footer__text,
.footer__copyright {
    font-size: 13px;
}

.footer__soc {
    gap: 20px 15px;
}

.footer__soc img {
    display: block;
    height: 16px;
    opacity: 0.5;
}

.footer__menu a:hover {
    text-decoration: underline;
}

.footer__soc a:hover img {
    opacity: 1;
}


/* Новые стили для улучшенного footer */

.footer__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px var(--indent) 20px;
}

.footer__top {
    margin-bottom: 40px;
}

.footer__columns {
    gap: 40px;
    flex-wrap: wrap;
}

.footer__column {
    flex: 1;
    min-width: 200px;
}

.footer__column-title {
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: block;
}

.footer__links {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer__links li {
    margin: 0;
}

.footer__links a {
    color: #b3b3b3;
    font-size: 14px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer__links a:hover {
    color: #e50914;
    text-decoration: underline;
}

.footer__middle {
    padding: 30px 0;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    margin-bottom: 30px;
    text-align: center;
}

.footer__logo {
    margin-bottom: 15px;
}

.footer__logo-link {
    display: inline-block;
}

.footer__logo-link img {
    height: 40px;
    width: auto;
}

.footer__description {
    max-width: 600px;
    margin: 0 auto;
    color: #b3b3b3;
    font-size: 14px;
    line-height: 1.6;
}

.footer__description p {
    margin: 0;
}

.footer__social {
    margin-top: 20px;
}

.footer__social-title {
    display: block;
    font-size: 13px;
    color: #b3b3b3;
    margin-bottom: 12px;
}

.footer__social-links {
    gap: 15px;
}

.footer__social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #333;
    color: #b3b3b3;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 18px;
}

.footer__social-link:hover {
    background-color: #e50914;
    color: #fff;
    transform: translateY(-2px);
}

.footer__bottom {
    text-align: center;
}

.footer__copyright {
    margin-bottom: 15px;
}

.footer__copyright p {
    margin: 0;
    color: #b3b3b3;
    font-size: 14px;
}

.footer__legal {
    max-width: 900px;
    margin: 0 auto;
}

.footer__legal-text {
    margin: 0;
    color: #808080;
    font-size: 12px;
    line-height: 1.6;
}


/* Адаптивность для footer */

@media (max-width: 768px) {
    .footer__container {
        padding: 30px var(--indent) 20px;
    }
    .footer__columns {
        gap: 30px;
    }
    .footer__column {
        min-width: 100%;
        flex: none;
    }
    .footer__column-title {
        font-size: 15px;
        margin-bottom: 15px;
    }
    .footer__middle {
        padding: 25px 0;
        margin-bottom: 25px;
    }
    .footer__logo-link img {
        height: 35px;
    }
    .footer__description {
        font-size: 13px;
    }
    .footer__social-links {
        justify-content: center;
    }
}

.pagination__pages {
    text-align: center;
    padding-top: 40px;
    gap: 20px;
}

.pagination__pages>a,
.pagination__pages>span,
.pagination__pages-btn>a,
.pagination__pages-btn>span {
    height: 36px;
    font-weight: 600;
    color: var(--tt-3);
    font-size: 14px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pagination__pages-btn {
    font-size: 30px;
}

.pagination__pages>span:not(.nav_ext) {
    background: var(--accent-red);
    color: #fff;
    min-width: 36px;
    padding: 0 10px;
}

.pagination__pages>span:not(.nav_ext):hover {
    background: #c1030c;
}

.pagination__pages a:hover {
    color: var(--accent-red);
}


/* INNER PAGE
----------------------------------------------- */

.pmovie {
    background-color: var(--bg);
    border-radius: 5px;
    padding: 20px;
}

.pmovie__main {
    display: grid;
    gap: 20px;
    grid-template-columns: 200px minmax(0, 1fr);
    grid-template-areas: "pimg pheader" "pimg plist";
    margin-bottom: 20px;
}

.pmovie__img {
    height: 300px;
    width: 200px;
    border-radius: 5px;
    border: 1px solid var(--bdc);
}

.pmovie__poster {
    grid-area: pimg;
    position: relative;
}

.pmovie__header {
    position: relative;
    padding-right: 148px;
    grid-area: pheader;
}

.pmovie__list {
    grid-area: plist;
}

.pmovie__header h1 {
    font-weight: 600;
    font-size: 19px;
}

.pmovie__header h1 a {
    font-size: 14px;
    margin-left: 10px;
    color: var(--tt-2);
}

.pmovie__main-info {
    font-weight: 500;
    font-size: 12px;
    color: var(--tt-2);
    margin-top: 4px;
}

.pmovie__header .poster__fav {
    left: auto;
    right: 0px;
    top: 0px;
    opacity: 1;
    visibility: visible;
    transform: none;
}


/* .pmovie__header .poster__fav a:not(:hover) {
    background-color: var(--bg-2);
} */

.pmovie__subtitle {
    font-weight: 600;
    font-size: 18px;
    margin-bottom: 10px;
}

.pmovie__descr+.pmovie__subtitle {
    margin-bottom: 20px;
    margin-top: 20px;
}

.pmovie__list {
    line-height: 1.5;
    font-size: 13px;
    word-wrap: break-word;
}

.pmovie__list li {
    position: relative;
    padding-left: 160px;
    padding-bottom: 3px;
    border-bottom: 1px dotted #2d2d2d;
}

.pmovie__list li b {
    text-transform: uppercase;
}

.pmovie__list li+li {
    margin-top: 6px;
}

.pmovie__list li>span:first-child {
    font-weight: 600;
    position: absolute;
    left: 0;
    top: 0;
}

.pmovie__list li a {
    color: var(--tt-accent);
    text-decoration: underline;
}

.pmovie__list li a:hover {
    text-decoration: none;
}

.poster__rating {
    position: absolute;
    top: 5px;
    right: 6px;
    z-index: 10;
    font-size: 11px;
    border-radius: 3px;
    padding: 2px 6px;
    height: 22px;
    background-color: #e50914;
    display: flex;
    align-items: center;
    gap: 3px;
    color: #fff;
    font-weight: 500;
}

.poster__rating-star {
    color: #fff;
    font-size: 12px;
    line-height: 1;
}

.poster__rating-value {
    font-size: 11px;
}

.poster__rating.clrrating-0 {
    display: none;
}

.poster__status {
    position: absolute;
    left: 6px;
    top: 5px;
    z-index: 10;
    font-size: 11px;
    border-radius: 3px;
    padding: 2px 8px;
    height: 22px;
    display: flex;
    align-items: center;
    font-weight: 500;
    text-transform: uppercase;
    pointer-events: none;
}

.poster__status--on-air,
.poster__status--ON AIR {
    background-color: #28a745;
    color: #fff;
}

.poster__status--pause,
.poster__status--PAUSE,
.poster__status--ended,
.poster__status--ENDED {
    background-color: #6c757d;
    color: #fff;
}

.poster__title-en {
    font-size: 13px;
    color: var(--tt-2);
    margin-top: 4px;
    font-weight: 400;
    line-height: 1.4;
}

.poster__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin-top: 8px;
    font-size: 12px;
    color: var(--tt-2);
    line-height: 1.5;
}

.poster__meta-item {
    display: inline-block;
}

.poster__meta-item:not(:last-child)::after {
    content: ' • ';
    margin: 0 4px;
    color: var(--tt-3);
}

.pmovie__rating {
    position: relative;
    margin-top: 16px;
    font-size: 13px;
}

.pmovie__rating-caption {
    font-weight: 600;
    margin-bottom: 6px;
}

.pmovie__rating-votes {
    font-size: 12px;
    color: var(--tt-2);
    position: absolute;
    right: 0;
    top: 1px;
}

.pmovie__rating-score {
    position: absolute;
    right: 0;
    top: 25px;
    height: 28px;
    width: 28px;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 500;
    background-color: var(--bg-dark);
    color: #fff;
    display: grid;
    place-items: center;
}

.pmovie__player {
    position: relative;
    margin-bottom: 20px;
    background-color: #1e1e1e;
}

.tabs-block__select {
    gap: 10px;
    margin-bottom: 10px;
}

.tabs-block__select button {
    height: 30px;
    padding: 0 10px;
    border-radius: 3px;
    gap: 10px;
    background-color: var(--bg-2);
    color: var(--tt-2);
    font-weight: 500;
}

.tabs-block__select button.is-active,
.tabs-block__select button:hover {
    background: var(--bg-dark);
    color: #fff;
}

.pmovie__player-bottom {
    padding: 14px;
    border: 2px dashed #2d2d2d;
    border-top: 0;
    color: #fff;
}

.pmovie__share-caption {
    margin-bottom: 8px;
}

.ya-share2 {
    height: 24px;
    margin-left: 10px;
}

.ya-share2 a:not(:hover) {
    filter: grayscale(1);
    opacity: 0.66;
}

.pmovie__complaint a {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    font-size: 24px;
    background: var(--accent-red);
    color: #fff;
}

.pmovie__related {
    padding: 0 !important;
    background: none;
}

@media screen and (min-width: 760px) {
    .pmovie__related .grid-items {
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 16px;
    }
    .pmovie__related .poster__img {
        margin-bottom: 8px;
    }
    .pmovie__related .has-overlay__icon {
        padding-bottom: 0;
        padding-top: 55px;
    }
    .pmovie__related .poster__btn-info {
        top: 32px;
        padding: 0 7px;
    }
}

.pactor .pmovie__header .poster__fav {
    position: static;
}

.pactor .pmovie__header .pmovie__btn-scroll {
    margin: 0;
    height: 40px;
    padding: 0 20px;
    margin-top: 20px;
    font-size: 16px;
    gap: 20px;
}

.pactor .poster .poster__ratings,
.pactor .poster .poster__fav {
    display: none;
}

.pactor .card,
.pactor .linek {
    padding: 0;
    background: none;
}


/* TEXT BLOCK, TYPOGRAPHY, VIDEO BLOCK
----------------------------------------------- */

.video-box embed,
.video-box object,
.video-box video,
.video-box iframe,
.video-box frame {
    width: 100%;
    max-width: 100% !important;
    height: 400px;
    display: block;
    margin: 0 auto;
}

.mejs-container {
    max-width: 100% !important;
}

.full-text {
    line-height: 1.7;
}

.full-text img:not(.emoji) {
    max-width: 100%;
    margin: 10px 0;
}

.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 a {
    text-decoration: underline;
    color: linear-gradient(77deg, #1f314f, #306e93);
}

.full-text a:hover {
    text-decoration: none;
}

.full-text h2,
.full-text h3,
.full-text h4,
.full-text h5 {
    margin: 10px 0;
    font-size: 16px;
    font-weight: 550;
}

.full-text p {
    margin-bottom: 10px;
}

.full-text>ul,
.full-text>ol {
    margin: 10px 0;
}

.full-text>ul li {
    list-style: disc;
    margin-left: 40px;
    display: block;
    position: relative;
}

.full-text>ol li {
    list-style: decimal;
    margin-left: 40px;
}

.full-text table {
    width: 100%;
    text-align: left;
    margin: 10px 0;
}

.full-text table tr td {
    padding: 10px;
    border: 2px solid #e3e3e3;
}

.full-text table tr:nth-child(2n+1) {
    background-color: #e3e3e3;
}

.full-text table img {
    display: block;
    margin: 0;
    border: 0;
    max-width: 350px
}

.attach {
    line-height: 40px;
    background-color: #e3e3e3;
    padding: 0 15px 0 0;
    border-radius: 4px;
    margin: 10px 0;
    overflow: hidden;
}

.attach .download-link {
    color: #FFF !important;
    text-decoration: none !important;
    margin-right: 15px;
    float: left;
    display: inline-block;
    padding: 0 15px;
    background: #1cbc9a;
}

.attach-info {
    float: right;
}

.attach i {
    margin-right: 5px;
}

.full-taglist a {}

.fscreens+.full-taglist {
    margin-top: 20px;
}

@media screen and (max-width: 470px) {
    .center22 {
        max-width: 320px;
    }
    .search-wrap {
        width: 120px;
    }
    .short-bottom div[id] {
        display: none;
    }
    .short-bottom .button {
        width: 100%;
        text-align: center;
    }
    .header {
        height: 60px;
    }
    .search-wrap,
    .login-btns {
        margin-top: 10px;
    }
    .logotype {
        height: 60px;
        padding-top: 10px;
    }
    .video-box embed,
    .video-box object,
    .video-box video,
    .video-box iframe,
    .video-box frame {
        height: 210px;
    }
}


/* COMMENTS
----------------------------------------------- */

.page__comments {
    margin: 20px 0 0 0;
    border: 2px solid var(--bg-2);
    background: #1e1e1e;
}

.page__comments-psform {
    padding: 15px;
    background-color: #1e1e1e;
}

.page__comments-psform-title {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 15px;
}

.page__comments-psform-form {
    background-color: var(--bg);
    cursor: pointer;
    color: var(--tt-2);
    font-size: 13px;
    padding: 15px;
}

.page__comments-title {
    font-size: 13px;
    color: var(--tt-2);
    padding: 15px;
}

.page__comments-title span {
    font-weight: 600;
    color: var(--tt-3);
}


/* #dle-comments-list .comments-tree-list:first-child,
#dle-comments-list #comment:first-child+.comments-tree-list {
    margin-top: -15px;
} */

.page__comments-list {
    padding: 0;
}

.page__comments-list--not-comments {
    padding: 0;
    border: 0;
}

.add-comments-form.form {
    padding: 0;
    margin-bottom: 0px;
}

.add-comments-form .form__input,
.add-comments-form__input,
.add-comments-form .form__textarea-inside textarea,
.mass_comments_action select {
    box-shadow: inset 0 0 0 1px #2d2d2d;
    border-radius: 0;
    background-color: var(--bg-2);
    color: var(--tt);
}

.add-comments-form__input {
    margin-left: 20px;
}

.add-comments-form .d-none,
.comments_subscribe+br {
    display: none;
}

.mass_comments_action {
    display: flex;
    align-items: center;
    max-width: 800px;
    white-space: nowrap;
    padding: 15px;
}

.mass_comments_action select {
    flex: 1 1 0;
    margin: 0 -8px 0 20px;
}

.mass_comments_action .bbcodes {
    border-radius: 0;
    padding: 0 10px;
}

.show-comms a {
    padding: 15px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--bg-2);
    color: var(--tt-3);
    font-size: 13px;
}

.comment-item__title {
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 20px;
}

.comment-item {
    border-bottom: 2px solid var(--bdc);
    padding: 15px;
    padding-bottom: 10px;
}

.comment-item__header,
.comment-item__main {
    position: relative;
    padding-left: 60px;
}

.comment-item__img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: -6px;
}

.comment-item__letter {
    width: 100%;
    height: 100%;
    text-transform: uppercase;
    font-weight: 500;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    color: #fff;
    font-size: 18px;
}

.comment-item__author,
.comment-item__author a {
    font-weight: 600;
    font-size: 14px;
    color: var(--tt-3);
}

.comment-item__date {
    color: var(--tt-2);
    font-size: 12px;
}

.comment-item__main {
    margin: 6px 0 13px 0;
    font-size: 13px;
}

.comment-item__footer,
.comment-item__controls {
    gap: 10px;
    font-size: 12px;
}

.comment-item__rating a {
    color: var(--tt-3);
}

.comment-item__rating a>span {
    font-weight: 600;
}

.comment-item__rating a::before {
    content: '';
    background: url(../images/heart.svg) 0 0 / contain no-repeat;
    width: 14px;
    height: 14px;
    display: inline-block;
    vertical-align: top;
    margin-right: 5px;
}


/* Best comment highlighting */

.comment-item--best {
    border: 1px solid #ffc857;
    box-shadow: 0 0 0 1px rgba(255, 200, 87, 0.3), 0 4px 12px rgba(0, 0, 0, 0.25);
    background: radial-gradient(circle at top left, rgba(255, 200, 87, 0.15), transparent 60%), #141414;
    position: relative;
}

.comment-item--best::before {
    content: 'Лучший комментарий';
    position: absolute;
    top: -10px;
    left: 16px;
    background: linear-gradient(135deg, #ffc857, #ff9f1c);
    color: #000;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.comment-item__controls a {
    color: var(--tt-2);
}

.comment-item__footer a:hover,
.comment-item__controls a:hover,
.show-comms a:hover,
.page__comments-psform-form:hover {
    text-decoration: underline;
}

.comment-item__controls .checkbox {
    transform: scale(0.8, 0.8);
    margin-right: -10px;
}

.comments-tree-list {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

.comments-tree-list .comments-tree-list {
    padding-left: 50px;
    position: relative;
}

.comments-tree-item {
    display: block;
    margin: 0;
    padding: 0;
}


/* Comments Advanced Features */

.page__comments-filters {
    display: flex;
    gap: 6px;
    padding: 15px;
    background-color: #1e1e1e;
    border-bottom: 1px solid #2d2d2d;
    flex-wrap: wrap;
}

.comments-filter {
    display: flex;
    align-items: center;
    gap: 8px;
}

.comments-filter label {
    font-size: 13px;
    color: var(--tt-2);
    white-space: nowrap;
}

.comments-filter select {
    padding: 5px 10px;
    background-color: var(--bg);
    border: 1px solid #2d2d2d;
    color: var(--tt-3);
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
}

.comments-filter select:hover {
    border-color: #3d3d3d;
}

.comment-item--pinned {
    border-left: 3px solid #ffa500;
    background-color: rgba(255, 165, 0, 0.05);
}

.comment-item__actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.comment-spoiler-btn,
.comment-pin-btn {
    cursor: pointer;
    font-size: 14px;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.comment-spoiler-btn:hover,
.comment-pin-btn:hover {
    opacity: 1;
}

.comment-spoiler-wrapper {
    position: relative;
}

.comment-spoiler-placeholder {
    padding: 20px;
    background-color: rgba(255, 165, 0, 0.1);
    border: 1px dashed rgba(255, 165, 0, 0.5);
    border-radius: 4px;
    text-align: center;
}

.comment-spoiler-warning {
    color: #ffa500;
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 14px;
}

.comment-spoiler-show-btn {
    padding: 8px 20px;
    background-color: #ffa500;
    color: #000;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-weight: 600;
    font-size: 13px;
    transition: background-color 0.2s;
}

.comment-spoiler-show-btn:hover {
    background-color: #ff8c00;
}

.comment-spoiler-hidden {
    display: none;
}


/* LOGIN
----------------------------------------------- */

.login {
    position: fixed;
    z-index: 999;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    overflow: hidden;
    background-color: var(--ui-bg);
    border-radius: 4px;
    width: 400px;
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0.2), 0 15px 45px rgba(0, 0, 0, 1);
}

.login__header {
    padding: 20px 40px;
    background-color: var(--ui-bg-darker);
}

.login__title {
    font-size: 17px;
    font-weight: 600;
    padding: 1px 0;
    text-transform: capitalize;
}

.login__close {
    cursor: pointer;
    font-size: 24px;
    opacity: 0.6;
    margin-left: 20px;
}

.login__title a {
    border-bottom: 1px dotted var(--tt-2);
    margin-left: 10px;
    font-weight: 400;
    color: var(--tt-2);
}

.login__content {
    padding: 20px 40px;
}

.login__row {
    margin-bottom: 20px;
    position: relative;
    display: block;
    font-size: 14px;
    color: var(--tt-2);
}

.login__caption {
    font-size: 14px;
    color: var(--tt);
    margin-bottom: 10px;
}

.login__caption a {
    text-decoration: underline;
    margin-left: 6px;
    color: #000000;
}

.login__input input {
    padding-left: 40px;
}

.login__row .fal {
    opacity: 0.5;
    position: absolute;
    left: 0;
    bottom: 0;
    line-height: 40px;
    width: 40px;
    text-align: center;
}

.login__row button {
    width: 100%;
}

.login__social {
    background-color: var(--ui-bg-darker);
    padding: 20px 40px;
    text-align: center;
}

.login__social-caption {
    font-size: 11px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.login__social-btns a {
    display: inline-block;
    margin: 0 3px;
    vertical-align: top;
}

.login__social-btns img {
    display: block;
    width: 30px;
    height: 30px;
    border-radius: 50%;
}

.login__avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-right: 10px;
}

.login__menu {
    padding-left: 35px;
    padding-right: 35px;
    margin-bottom: -10px;
}

.login__menu li {
    flex: 1 1 0;
    min-width: auto;
    max-width: 100%;
    margin: 0 5px 10px 5px;
}

.login__menu a {
    display: block;
    border-radius: 6px;
    padding: 10px;
    text-align: center;
    white-space: nowrap;
    background-color: var(--ui-bg-darker);
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
    font-size: 13px;
}

.login__menu .fal {
    display: block;
    height: 30px;
    font-size: 24px;
    opacity: 0.3;
}


/*PreTimer */

.pretimer {
    display: table;
    width: 100%;
    overflow: hidden;
    padding: 0;
    background: linear-gradient(120deg, #363851 0%, #363851 50%, #f2f2f2 50%, #ccc 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffffff', GradientType=1);
    border-bottom: 1px solid #1f1f1f;
    margin: 20px 0 10px;
    border-top: 1px solid #202020;
}

.pretimer .lt {
    vertical-align: top;
    width: 55%;
    display: table-cell;
    padding: 20px 20px;
}

.pretimer .countdown-title {
    margin: 0px;
    text-transform: uppercase;
    font-size: 15px;
    display: inline-block;
    padding: 0 0 5px;
    line-height: 22px;
    color: #79c142;
}

.pretimer .countdown-text {
    font-size: 13px;
    color: #f7f7f7;
    line-height: 16px;
}

.pretimer .countdown-text span {
    font-weight: bold;
}

.pretimer .rt {
    vertical-align: top;
    width: 45%;
    display: table-cell;
    padding: 22px 0;
}

.pretimer li,
.pretimer ul {
    padding: 0px;
    margin: 0px;
}

.precountdown li {
    display: inline-block;
    text-align: center;
}

.precountdown li:first-child .value {
    color: #79c142;
}

.precountdown .value {
    font-size: 32px;
    width: 60px;
    line-height: 30px;
}

.precountdown .unit {
    margin: 8px 0 0;
}


/*cat-img */

.cat-img {
    float: left;
    margin: 0 20px 10px 0;
    width: 240px;
    border-radius: 3px;
    opacity: 0.85;
}


/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */

.owl-carousel {
    width: 100%;
    position: relative;
    z-index: 1;
}

.owl-carousel .owl-stage {
    position: relative;
    display: flex;
    justify-content: flex-start;
}

.owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    transform: translate3d(0px, 0px, 0px);
}

.owl-carousel .owl-item {
    position: relative;
    min-height: 10px;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled,
.owl-carousel.owl-refresh .owl-item {
    display: none;
}

.owl-carousel.owl-loaded,
.owl-carousel.owl-loading,
.no-js .owl-carousel {
    display: block;
    opacity: 1;
}

.owl-carousel.owl-drag .owl-item {
    user-select: none;
}

.owl-carousel.owl-grab {
    cursor: move;
    cursor: grab;
}

.owl-carousel .animated {
    animation-duration: 1000ms;
    animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
    z-index: 0;
}

.owl-carousel .owl-animated-out {
    z-index: 1;
}

.owl-carousel .fadeOut {
    animation-name: fadeOut;
}

@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

.owl-height {
    transition: height 500ms ease-in-out;
}

.owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d;
}

.owl-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
}

.owl-prev,
.owl-next {
    display: flex;
    cursor: pointer;
    box-shadow: none;
    width: 40px;
    height: 40px;
    border-radius: 5px;
    background: none;
    color: var(--tt);
    position: absolute;
    top: 0;
    font-size: 28px;
    margin-top: -40px;
}

.owl-prev {
    left: -50px;
}

.owl-next {
    right: -50px;
}

.owl-prev:hover,
.owl-next:hover {
    background: var(--bg-dark) !important;
    color: #fff !important;
}

.owl-dots {
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -37px;
}

.owl-dot {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    cursor: pointer;
    background: var(--bg);
    margin: 0 5px;
    box-shadow: var(--bsh-2);
}

.owl-dot.active,
.owl-dot:hover {
    background: var(--accent-red);
}

.sect--carou .owl-nav {
    left: auto;
    top: -10px;
    display: flex;
    gap: 10px;
}

.sect--carou .owl-prev,
.sect--carou .owl-next {
    position: static;
    width: 30px;
    height: 30px;
    border-radius: 4px;
    font-size: 18px;
    background-color: var(--accent-red);
    color: #fff;
}

.sect--carou .owl-prev:hover,
.sect--carou .owl-next:hover {
    background-color: #c1030c;
}


/* ADAPTIVE, MOBILE MENU
----------------------------------------------- */

.overlay {
    position: fixed;
    z-index: 998;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    background-color: #000;
    cursor: pointer;
    display: none;
}

.mobile-menu {
    width: 280px;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0px 0;
    z-index: 999;
    position: fixed;
    left: -320px;
    top: 0;
    transition: left .4s;
    background: var(--bg);
}

.mobile-menu.is-active {
    left: 0;
}

.mobile-menu-close {
    cursor: pointer;
    display: block;
    left: 280px;
    top: -40px;
    position: fixed;
    z-index: 999;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 18px;
    opacity: 0;
    background-color: #e84e36;
    color: #fff;
    transition: top .4s, opacity .4s;
}

.mobile-menu-close.is-active {
    top: 0px;
    opacity: 1;
}

body.mobile-menu-is-opened {
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.mobile-menu .header__menu {
    margin: 0;
    display: block;
}

.mobile-menu .header__menu>li>a {
    height: 50px;
    border-bottom: 1px solid #2d2d2d;
    padding: 0 20px;
}

.mobile-menu .header__menu-hidden a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 5px 0;
}

.mobile-menu .header__menu-hidden {
    background-color: var(--bg-2);
    position: static;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    border: 0;
    width: 100%;
    display: grid;
    border-radius: 0;
    gap: 5px 10px;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    padding: 10px 20px;
    font-size: 12px;
}

.page_series__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.page_series__card {
    display: flex;
    flex-direction: column;
    padding: 15px;
    border-radius: 6px;
    background-color: #1e1e1e;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.page_series__card:hover {
    color: unset;
    border-color: var(--accent-red);
    box-shadow: 0 0 10px rgba(229, 9, 20, 0.2);
}

.page_series__card:hover .page_series__card__left img {
    transform: scale(1.05);
}

.page_series__card__left {
    margin-bottom: 12px;
    height: 220px;
    border-radius: 6px;
    overflow: hidden;
    background-color: #2d2d2d;
    position: relative;
}

.page_series__card__left img {
    pointer-events: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

.page_series__card__badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.85);
    color: #fff;
    padding: 8px 16px;
    border-radius: 6px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    z-index: 5;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    border: 2px solid rgba(255, 255, 255, 0.3);
    transition: opacity 0.3s ease, visibility 0.3s ease;
    pointer-events: none;
    white-space: nowrap;
}

.page_series__card:hover .page_series__card__badge {
    opacity: 0;
    visibility: hidden;
}

.page_series__card__right {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

@media screen and (max-width: 1220px) {
    body {
        background-image: none;
    }
    .wrapper {
        padding: 0;
        background-image: none;
        overflow: hidden;
    }
    .wrapper-container,
    .header,
    .footer {
        max-width: 1000px;
        border-radius: 0;
    }
    .header .header__menu,
    .has-overlay__icon,
    .poster .poster__fav,
    .poster__btn-info {
        display: none;
    }
    .header {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .header__btn-menu {
        display: flex;
        margin-left: 10px;
        padding: 0;
        width: 40px;
        font-size: 18px;
    }
    .header__btn-login {
        background-color: var(--accent-red);
        color: #ffffff;
        box-shadow: 0 0 0 1px var(--bdc);
    }
    .header__btn-login:hover {
        background-color: #c1030c;
    }
    .header__search {
        flex: 1 1 0;
        max-width: 100%;
        min-width: 50px;
    }
    #scrolltop {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 18px;
    }
    .carou__content>.poster,
    .sect__content--carousel:not(.owl-carousel)>.poster {
        width: calc((100% - 100px)/6);
    }
    .sect__ctrl-menu {
        min-width: 100%;
    }
    .cols {
        display: block;
    }
    .cols__right {
        margin-top: 60px;
    }
}

@media screen and (max-width: 950px) {
    .wrapper-container {
        max-width: 768px;
    }
    .carou__content>.poster,
    .sect__content--carousel:not(.owl-carousel)>.poster {
        width: calc((100% - 80px)/5);
    }
    .card__bottom .btn {
        width: 100%;
    }
    .card__meta.flex-grow-1 {
        margin: 0;
    }
    .card__text {
        -webkit-line-clamp: 3;
    }
    .linek__img {
        margin: 0px;
        margin-right: 10px;
    }
    .linek {
        padding: 10px;
    }
    .count-items .linek::before {
        right: 10px;
        margin-top: -20px;
    }
}

@media screen and (max-width: 760px) {
    .wrapper-container {
        max-width: 640px;
    }
    .carou__content>.poster,
    .sect__content--carousel:not(.owl-carousel)>.poster {
        width: calc((100% - 40px)/3);
    }
    .header__search {
        order: 10;
        min-width: 100%;
        margin: 0;
        margin-top: 20px;
    }
    .logo {
        flex: 1 1 0;
        min-width: 50px;
        max-width: 100%;
        margin-right: 20px;
    }
    .sect__ctrl-menu li,
    .sect__ctrl-menu li a,
    .sect__ctrl-menu label,
    .sect__ctrl-menu label div {
        justify-content: center;
        flex-grow: 1;
        text-align: center;
    }
    .footer__top,
    .footer__bottom,
    .footer__menu,
    .footer__text {
        justify-content: center;
        min-width: 100%;
        text-align: center;
    }
    .footer__menu {
        gap: 20px;
        margin-bottom: 20px;
    }
    .sect__ctrl-menu {
        gap: 10px;
    }
    .sect__ctrl-menu a,
    .sect__ctrl-menu label div {
        background-color: var(--bg);
        color: var(--tt);
        border-radius: 4px;
        padding: 0 10px;
    }
    .card {
        grid-template-columns: 120px minmax(0, 1fr);
        grid-template-rows: min-content min-content 1fr;
        grid-template-areas: "cimg ctitle" "cimg cbtm" "cdesc cdesc";
        gap: 15px 10px;
    }
    .card__img {
        height: 180px;
    }
    .card__bottom {
        align-self: flex-end;
    }
    .card .poster__fav {
        right: auto;
        top: 100px;
        left: 150px;
    }
    .card__rating-ext span {
        display: none;
    }
    .card__title {
        padding: 0;
        margin: 0;
    }
    .linek {
        align-items: flex-start;
    }
    .linek .poster__fav {
        position: static;
        margin-top: 10px;
    }
    .linek__title {
        padding: 0;
    }
    .linek__meta {
        margin-top: 5px;
    }
    .linek .card__btn {
        margin-left: -90px;
        width: calc(100% + 90px);
    }
    .count-items .linek::before {
        right: 10px;
        margin-top: -5px;
        top: 10px;
        transform: none;
    }
    .pmovie {
        border-radius: 0;
        margin: 0 var(--indent-negative);
        margin-top: 10px;
    }
    .pmovie__main {
        grid-template-areas: "pimg pheader" "plist plist";
        grid-template-columns: 120px minmax(0, 1fr);
        gap: 15px 10px;
    }
    .pmovie__header h1 {
        font-size: 15px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .pmovie__list li {
        padding-left: 130px;
    }
    .pmovie__img {
        width: 120px;
        height: 180px;
    }
    .pmovie__rating {
        position: absolute;
        left: 100%;
        bottom: 0;
        margin: 0 0 0 10px;
        width: 190px;
    }
    .pmovie__rating--10-stars {
        bottom: 13px;
        width: 200px;
    }
    .pmovie__header {
        padding: 0;
    }
    .pmovie__header .poster__fav {
        position: static;
        margin-top: 20px;
        display: inline-flex;
    }
    .tabs-block__select button {
        flex-grow: 1;
    }
    .page__text .quote {
        margin-left: var(--indent-negative);
        margin-right: var(--indent-negative);
        padding-right: var(--indent);
    }
    .full-text h1,
    .full-text h2,
    .full-text h3,
    .full-text h4,
    .full-text h5 {
        font-size: 18px;
    }
    .comments-tree-list .comments-tree-list {
        padding-left: 15px;
    }
    .show-comms a {
        margin: 0 var(--indent);
        margin-top: 15px;
        margin-bottom: -5px;
    }
    .page__comments {
        border: 0;
        margin-left: var(--indent-negative);
        margin-right: var(--indent-negative);
    }
    .page__comments-psform,
    .comment-item,
    .page__comments-title {
        padding-left: var(--indent);
        padding-right: var(--indent);
    }
    .add-comments-form__input {
        min-width: 100%;
        margin: 0 0 10px 0;
    }
    .add-comments-form__btn {
        width: 100%;
        order: 10;
    }
    .add-comments-form .form__row--protect .form__caption {
        width: 100%;
        margin: 0 0 10px 0;
    }
    .mass_comments_action,
    .comment-item__controls {
        display: none;
    }
    .page_series__items {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    .page_series__card__left {
        height: 180px;
    }
    .page_series__card__badge {
        font-size: 14px;
        padding: 6px 12px;
        border-width: 1px;
    }
}

@media screen and (max-width: 590px) {
    .wrapper-container {
        max-width: 480px;
    }
    .login {
        max-width: 90%;
        max-height: 90%;
        overflow-x: hidden;
        overflow-y: auto;
    }
    .login__header,
    .login__content,
    .login__social,
    .pages-bg {
        padding-left: 20px;
        padding-right: 20px;
    }
    .grid-items,
    #dle-content {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    }
    .sect--carou .sect__title {
        min-width: calc(100% + 80px);
        margin-right: -80px;
    }
    .pmovie__subtitle {
        font-size: 16px;
    }
    .pmovie__share-caption {
        display: none;
    }
    .pmovie__player-bottom,
    .tabs-block__content {
        margin-left: var(--indent-negative);
        margin-right: var(--indent-negative);
    }
}

@media screen and (max-width: 470px) {
    .wrapper-container123 {
        max-width: 320px;
    }
    .carou__content>.poster,
    .sect__content--carousel:not(.owl-carousel)>.poster {
        width: calc((100% - 20px)/2);
    }
    .header__logo {
        font-size: 18px;
    }
    .header {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .header__search {
        margin-top: 10px;
    }
    .coll {
        height: 140px;
    }
    .cols__right {
        margin: 0 var(--indent-negative);
        margin-top: 40px;
    }
    .descr {
        padding-top: 40px;
    }
    .pagination__pages {
        padding-top: 20px;
    }
    .card__meta.flex-grow-1 {
        display: none;
    }
    .card__title h3 {
        font-size: 16px;
        padding: 0;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }
    .speedbar {
        margin-bottom: -20px;
    }
    .comment-item__date {
        width: 100%;
    }
}


/* BUG FIXES 
----------------------------------------------- */


/* выше изменено 507 строка. 1fr --> minmax(0,1fr) */


/* UPDATES
----------------------------------------------- */

@media screen and (min-width: 1220px) {
    .cols--no-cols {
        display: block;
    }
    .cols--no-cols .cols__right {
        margin-top: 60px;
    }
    .cols--no-cols .sb__grid,
    .cols--no-cols .upd.is-active .upd__items {
        grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    }
}

.sb__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    counter-reset: num;
}

.sb--mt {
    margin-top: 20px;
}

.sb--mt .sb__title {
    border-bottom: 1px solid #2d2d2d;
}

.ftop-item .has-overlay__icon {
    padding: 0;
}

.ftop-item {
    border-bottom: 1px solid #2d2d2d;
    padding: 15px;
}

.ftop-item,
.ftop-item__desc {
    position: relative;
    z-index: 5;
}

.ftop-item__img {
    width: 60px;
    height: 60px;
    border-radius: 4px;
    margin-right: 15px;
    z-index: 5;
}

.ftop-item::before {
    content: counter(num);
    counter-increment: num;
    color: var(--tt-2);
    opacity: 0.3;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 40px;
    font-weight: 700;
}

.lcomm {
    font-size: 13px;
    border-bottom: 1px solid #2d2d2d;
    padding: 15px;
}

.lcomm__link {
    display: block;
    font-size: 12px;
    color: var(--tt-3);
    padding-left: 1px;
    font-weight: 500;
}

.lcomm__date {
    font-size: 12px;
    color: var(--tt-2);
    margin-left: 10px;
}

.lcomm__text {
    margin: 8px 0 10px 0;
    opacity: 0.66;
    -webkit-line-clamp: 3;
}

.lcomm__author {
    font-weight: 500;
}

.lcomm__av {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    margin-right: 10px;
}

.pmovie__franchise .sect__title {
    font-size: 18px;
    font-weight: 600;
}

.fr-list {
    counter-reset: num;
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: -30px;
}

.fr::before {
    content: counter(num);
    counter-increment: num;
    width: 40px;
    text-align: center;
    margin-top: -1px;
    color: var(--tt-accent);
    font-weight: 600;
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
}

.fr {
    cursor: pointer;
    position: relative;
    padding: 6px 10px;
    padding-left: 40px;
    border-radius: 4px;
}

.fr:nth-child(2n) {
    background-color: var(--bg-2);
}

.fr__title {
    display: inline-block;
    max-width: 100%;
    line-height: 20px;
    height: 20px;
    font-weight: 400;
}

.fr:hover {
    box-shadow: 0 0 0 1px var(--bdc);
    z-index: 3;
}

.fr__year {
    color: var(--tt-2);
    margin: 0 10px;
    font-size: 13px;
}

.fr__rating {
    background: var(--accent-gray);
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    width: 30px;
    height: 30px;
    border-radius: 15px;
}

.clrrating-1,
.clrrating-2,
.clrrating-3,
.clrrating-4 {
    background-color: var(--accent-red);
}

.clrrating-7,
.clrrating-8 {
    background-color: var(--accent-green);
}

.clrrating-9,
.clrrating-10 {
    background-color: var(--accent-gold);
}

.is-active .fr__title {
    font-weight: 600;
    color: var(--tt-3);
}

.fr.is-active::before {
    content: "";
    display: block;
    left: 13px;
    background-size: 13px 15px;
    background-repeat: no-repeat;
    width: 13px;
    height: 15px;
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='13px' height='15px' viewBox='0 0 13 15' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='sprite' transform='translate(-170.000000, -111.000000)' fill='%23000000' fill-rule='nonzero'%3E%3Cg id='play_black' transform='translate(170.000000, 111.000000)'%3E%3Cpath d='M12.508581,8.36085 L1.50873,14.86076 C1.033253,15.14173 0.420037,14.98404 0.139074,14.50857 C0.048028,14.35449 0,14.1788 0,13.99984 L0,1 C0,0.44772 0.447715,0 1,0 C1.178966,0 1.354653,0.04803 1.50873,0.13908 L12.508581,6.63899 C12.984057,6.91996 13.141741,7.53317 12.860778,8.00865 C12.774963,8.15388 12.653806,8.27503 12.508581,8.36085 Z' id='Triangle'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.dt-is-active .fr.is-active::before {
    filter: invert(0.8);
}

.pmovie__btn-scroll {
    margin-top: 6px;
    padding: 0 10px;
    height: 24px;
    gap: 5px;
    font-size: 12px;
    border-radius: 3px;
}

.pmovie__rating-likes {
    gap: 10px;
    padding-top: 2px;
}

.pmovie__rating-likes>* {
    display: flex;
    align-items: center;
    height: 30px;
    border-radius: 4px;
    background-color: var(--bg-2);
    color: var(--tt-3);
    padding: 0 10px 0 0;
    border-radius: 4px;
    overflow: hidden;
}

.pmovie__rating-likes>* .fal {
    font-size: 16px;
    margin-right: 10px;
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    background-color: var(--accent-green);
    color: #fff;
}

.pmovie__rating-likes>*+* .fal {
    background-color: var(--accent-red);
}

.pmovie__rating-likes>a:hover {
    background-color: var(--bg-dark);
    color: #fff;
}

[data-actorimg] {
    position: relative;
    z-index: 999;
}

.actor-preview {
    position: absolute;
    left: 50%;
    bottom: 100%;
    margin-left: -100px;
    width: 200px;
    background-color: var(--bg);
    border-radius: 6px;
    padding: 10px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

.bottom .actor-preview {
    top: 100%;
    bottom: auto;
}

@media screen and (max-width: 760px) {
    .pmovie .poster__fav {
        display: flex;
        justify-content: space-between;
        gap: 10px;
    }
    .pmovie__btn-scroll {
        margin: 0;
        flex-grow: 1;
        padding: 10;
    }
    .pmovie__btn-scroll span {
        display: none;
    }
    .pmovie__btn-scroll::before {
        content: attr(data-mobtext);
        display: inline;
    }
}

@media screen and (max-width: 590px) {
    .fr {
        margin: 0 var(--indent-negative);
        padding-right: 20px;
    }
}

.filter-block-toggle {
    border-radius: 0;
    width: 100%;
    gap: 10px;
    margin-bottom: 40px;
}

.filter-block {
    margin-bottom: 40px;
    background-color: #1e1e1e;
    padding: 20px;
}

.filter-block__form {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    grid-gap: 10px 20px;
}

.filter-block__cell--full-width {
    grid-column: 1 / -1;
}

.filter-block__cell-caption {
    margin-bottom: 10px;
}

.filter-block__cell-content>* {
    width: 100%;
    display: block;
}

.filter-block__cell-content--two-columns {
    display: flex;
    justify-content: space-between;
}

.filter-block__cell-content--two-columns>* {
    width: calc((100% - 10px)/2) !important;
}

.filter-block__cell-content select,
.filter-block__cell-content input[type="text"],
.filter-block__cell-content--check-group {
    height: 36px;
    line-height: 34px;
    background-position: right 8px top 50%;
    background-color: var(--bg);
    color: var(--tt-2);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    box-shadow: none;
    font-size: 14px;
    padding: 0 7px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-block__cell-content select {
    padding: 0 20px 0 4px;
}

.filter-block__cell-content input[type="text"]::placeholder {
    opacity: 1;
    color: var(--tt-2);
    font-size: 14px;
}

.filter-block__cell-content input[type="text"]:focus::placeholder {
    opacity: 0;
}

.filter-block__cell-content label {
    position: relative;
    padding-left: 50px;
    cursor: pointer;
    height: 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 14px;
}

.filter-block__cell-content label input {
    display: inline-block;
    appearance: none;
    -webkit-appearance: none;
    height: 20px;
    width: 40px;
    border-radius: 10px;
    background-color: var(--bg-2);
    cursor: pointer;
    transition: all .2s linear;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.1);
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -10px;
}

.filter-block__cell-content label input::before {
    content: '';
    width: 18px;
    height: 18px;
    border-radius: 10px;
    position: absolute;
    left: 1px;
    top: 1px;
    background-color: var(--bg);
    transition: all .2s linear;
}

.filter-block__cell-content label input:checked {
    background-color: #6ab04c;
}

.filter-block__cell-content label input:checked::before {
    left: 21px;
}

.filter-block__cell-content input[type="button"],
.filter-block__cell-content button,
.filter-block__cell-content .btn {
    cursor: pointer;
    height: 36px;
    display: inline-flex;
    justify-content: center;
    padding: 0 10px;
    box-shadow: none;
    border-radius: 4px;
}

.filter-block__cell-content input[type="button"][data-dlefilter="reset"] {
    background: var(--bg-2);
    color: var(--tt-2);
}

.filter-block__cell-content--check-group label {
    padding: 0;
    text-align: center;
    white-space: nowrap;
    flex: 1 1 0;
    min-width: 30px;
    max-width: 100%;
}

.filter-block__cell-content--check-group label input {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 5;
}

.filter-block__cell-content--check-group {
    display: flex;
    justify-content: center;
    overflow: hidden;
    padding: 0;
}

.filter-block__cell-content--check-group label+label {
    border-left: 1px solid var(--bg-2);
}

.filter-block__cell-content--check-group label div {
    height: 36px;
    font-size: 13px;
}

.filter-block__cell-content--check-group label input:checked+div {
    background-color: var(--bg-2);
    color: var(--tt);
}

@media screen and (max-width: 1220px) {
    .filter-block-toggle {
        display: flex;
        margin-bottom: 40px;
    }
}

.grid-collectons {
    display: flex;
    flex-wrap: wrap;
    margin: 32px 0;
    gap: 24px;
}

.grid-collectons .block_collection {
    flex: 0 0 calc((100% - 72px) / 3);
    max-width: calc((100% - 72px) / 3);
}

.block_collection {
    position: relative;
}

.block_collection__img {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
}

.block_collection__img img {
    pointer-events: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 250ms ease;
}

.block_collection__img .count {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 2;
    border-radius: 4px;
    padding: 4px 9px;
    background-color: #e50914;
    color: #fff;
}

.block_collection__title {
    margin-top: 12px;
    font-size: 16px;
}

.block_collection:hover .block_collection__img img {
    transform: scale(1.1);
}

.block_collection:hover .block_collection__title {
    color: #e50914;
}

@media (max-width:1024px) {
    .grid-collectons .block_collection {
        flex: 0 0 calc((100% - 48px) / 2);
        max-width: calc((100% - 48px) / 2);
    }
}

@media (max-width:540px) {
    .grid-collectons .block_collection {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.series_title {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 4px;
}

.series_title b {
    font-size: 16px;
    font-weight: 600;
    color: var(--tt-3);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.series_title span {
    opacity: 0.6;
    font-size: 13px;
    color: var(--tt-2);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.page_series__card__right ul {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 12px;
    color: var(--tt-2);
}

.page_series__card__right ul li {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    line-height: 1.4;
}

.page_series__card__right ul li span {
    font-weight: 500;
    color: var(--tt-3);
    flex-shrink: 0;
}

.page_series__card__right ul li a {
    color: var(--accent-red);
    text-decoration: underline;
    position: relative;
    z-index: 10;
    pointer-events: auto;
}

.page_series__card__right ul li a:hover {
    text-decoration: none;
    color: #c1030c;
}

.series_descr {
    font-size: 13px;
    margin-top: 4px;
    color: var(--tt-2);
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.page_series__speedbar {
    margin-bottom: 20px;
    font-size: 13px;
    color: var(--tt-2);
}

.page_series__sect {
    margin-bottom: 40px;
}


/* Select2 стили в цветовой теме сайта - переопределение дефолтных стилей */

.select2-container {
    width: 100% !important;
    font-family: 'Inter', sans-serif;
}


/* Переопределение дефолтных цветов из select2.min.css */

.select2-container--default .select2-selection--single {
    background-color: var(--bg) !important;
    border-color: var(--bdc) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--tt-2) !important;
}

.select2-dropdown {
    background-color: var(--bg) !important;
    border-color: var(--bdc) !important;
}


/* Основной контейнер селекта */

.select2-container--default .select2-selection--single {
    height: 36px;
    line-height: 34px;
    background-color: var(--bg);
    color: var(--tt-2);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px var(--bdc), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
    outline: none;
}

.select2-container--default .select2-selection--single:hover {
    border-color: var(--accent-red);
    box-shadow: inset 0 0 0 1px var(--accent-red), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--accent-red);
    box-shadow: inset 0 0 0 1px var(--accent-red), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
}


/* Текст в селекте */

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--tt-2);
    line-height: 34px;
    padding-left: 10px;
    padding-right: 30px;
    font-size: 14px;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: var(--tt-2);
    opacity: 0.6;
}


/* Стрелка */

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 34px;
    right: 10px;
    width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: var(--tt-2) transparent transparent transparent;
    border-width: 5px 4px 0 4px;
    margin-top: -2px;
    transition: all 0.2s ease;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
    border-color: transparent transparent var(--tt-2) transparent;
    border-width: 0 4px 5px 4px;
    margin-top: -2px;
}


/* Кнопка очистки */

.select2-container--default .select2-selection--single .select2-selection__clear {
    cursor: pointer;
    float: right;
    font-weight: bold;
    height: 26px;
    margin-right: 25px;
    padding-right: 0;
    color: var(--tt-2);
    opacity: 0.6;
    transition: opacity 0.2s ease;
}

.select2-container--default .select2-selection--single .select2-selection__clear:hover {
    opacity: 1;
    color: var(--accent-red);
}


/* Выпадающий список */

.select2-dropdown {
    background-color: var(--bg);
    border: 1px solid var(--bdc);
    border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(229, 9, 20, 0.1);
    margin-top: 4px;
    overflow: hidden;
}

.select2-container--open .select2-dropdown {
    border-color: var(--accent-red);
}


/* Поле поиска */

.select2-search--dropdown {
    padding: 10px;
    background-color: var(--bg-2);
    border-bottom: 1px solid var(--bdc);
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    background-color: var(--bg);
    color: var(--tt-2);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    padding: 8px 12px;
    font-size: 14px;
    height: 36px;
    line-height: 20px;
    box-shadow: inset 0 0 0 1px var(--bdc), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: var(--accent-red);
    box-shadow: inset 0 0 0 1px var(--accent-red), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
    outline: none;
}

.select2-container--default .select2-search--dropdown .select2-search__field::placeholder {
    color: var(--tt-2);
    opacity: 0.5;
}


/* Результаты */

.select2-results {
    max-height: 400px;
    overflow-y: auto;
}

.select2-results::-webkit-scrollbar {
    width: 6px;
}

.select2-results::-webkit-scrollbar-track {
    background: var(--bg-2);
}

.select2-results::-webkit-scrollbar-thumb {
    background-color: var(--accent-red);
    border-radius: 3px;
}

.select2-results::-webkit-scrollbar-thumb:hover {
    background-color: #c1030c;
}

.select2-results__options {
    padding: 4px 0;
}

.select2-container--default .select2-results__option {
    background-color: transparent;
    color: var(--tt-2);
    padding: 10px 14px;
    font-size: 14px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.select2-container--default .select2-results__option[aria-disabled=true] {
    color: var(--tt-2);
    opacity: 0.4;
    cursor: not-allowed;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--accent-red);
    color: #fff;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--bg-2);
    color: var(--tt);
    font-weight: 500;
}

.select2-container--default .select2-results__option[aria-selected=true]:hover {
    background-color: rgba(229, 9, 20, 0.2);
}

.select2-container--default .select2-results__option--loading {
    color: var(--tt-2);
    padding: 20px;
    text-align: center;
}


/* Группы результатов */

.select2-container--default .select2-results__group {
    padding: 10px 14px;
    font-weight: 600;
    font-size: 13px;
    color: var(--tt);
    background-color: var(--bg-2);
    border-bottom: 1px solid var(--bdc);
    cursor: default;
}


/* Множественный выбор */

.select2-container--default .select2-selection--multiple {
    min-height: 36px;
    background-color: var(--bg);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px var(--bdc), inset 1px 2px 5px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
}

.select2-container--default .select2-selection--multiple:hover {
    border-color: var(--accent-red);
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: var(--accent-red);
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: var(--bg-2);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    color: var(--tt);
    padding: 4px 8px;
    margin: 4px 4px 4px 0;
    font-size: 13px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: var(--tt-2);
    margin-right: 6px;
    cursor: pointer;
    transition: color 0.2s ease;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: var(--accent-red);
}


/* Disabled состояние */

.select2-container--default.select2-container--disabled .select2-selection--single {
    background-color: var(--bg-2);
    opacity: 0.6;
    cursor: not-allowed;
    border-color: var(--bdc);
}

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__rendered {
    color: var(--tt-2);
    opacity: 0.6;
}


/* Анимации и переходы */

.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.select2-container--default .select2-results__option {
    transition: background-color 0.15s ease, color 0.15s ease;
}


/* Улучшенный скроллбар для результатов */

.select2-results__options::-webkit-scrollbar {
    width: 6px;
}

.select2-results__options::-webkit-scrollbar-track {
    background: var(--bg-2);
}

.select2-results__options::-webkit-scrollbar-thumb {
    background-color: var(--accent-red);
    border-radius: 3px;
}

.select2-results__options::-webkit-scrollbar-thumb:hover {
    background-color: #c1030c;
}


/* Дополнительные улучшения */

.select2-container--default .select2-selection--single:focus {
    outline: none;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    user-select: none;
}


/* Улучшенный placeholder */

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: var(--tt-2) !important;
    opacity: 0.6;
}


/* Состояние загрузки */

.select2-container--default .select2-results__option--loading {
    background-color: transparent !important;
}

.select2-container--default .select2-results__option--loading::before {
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid var(--accent-red);
    border-top-color: transparent;
    border-radius: 50%;
    animation: select2-spin 0.6s linear infinite;
    margin-right: 8px;
    vertical-align: middle;
}

@keyframes select2-spin {
    to {
        transform: rotate(360deg);
    }
}


/* Улучшение для мобильных устройств */

@media screen and (max-width: 760px) {
    .select2-container--default .select2-selection--single {
        height: 40px;
        line-height: 38px;
    }
    .select2-container--default .select2-selection--single .select2-selection__rendered {
        line-height: 38px;
        font-size: 15px;
        padding-left: 12px;
    }
    .select2-dropdown {
        border-radius: 6px;
        margin-top: 6px;
    }
    .select2-container--default .select2-results__option {
        padding: 12px 14px;
        font-size: 15px;
    }
    .select2-search--dropdown {
        padding: 12px;
    }
    .select2-container--default .select2-search--dropdown .select2-search__field {
        height: 40px;
        font-size: 15px;
    }
}


/* Кастомное форматирование результатов поиска новостей */

.select2-news-result {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 2px 0;
    min-height: 70px;
}

.select2-news-poster {
    width: 50px;
    height: 70px;
    object-fit: cover;
    border-radius: 4px;
    flex-shrink: 0;
    background-color: var(--bg-2);
    border: 1px solid var(--bdc);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.select2-news-poster-empty {
    background-color: var(--bg-2);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bdc);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.select2-news-poster-empty::before {
    content: '📽️';
    font-size: 24px;
    opacity: 0.4;
}

.select2-news-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.select2-news-title {
    font-weight: 500;
    font-size: 14px;
    color: var(--tt);
    margin: 0;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.select2-news-year {
    font-size: 12px;
    color: var(--tt-2);
    opacity: 0.8;
    margin: 0;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] .select2-news-result {
    background-color: transparent;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] .select2-news-title {
    color: #fff;
    font-weight: 600;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] .select2-news-year {
    color: rgba(255, 255, 255, 0.85);
}

.select2-container--default .select2-results__option--highlighted[aria-selected] .select2-news-poster {
    border-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 2px 6px rgba(229, 9, 20, 0.3);
}


/* Episode Page Styles */

.episode-page {
    background-color: #1e1e1e;
    border-radius: 5px;
    padding: 20px;
}


/* Future Episode Notice */

.episode__future-notice {
    background: linear-gradient(135deg, rgba(229, 9, 20, 0.15) 0%, rgba(229, 9, 20, 0.05) 100%);
    border: 2px solid var(--accent-red);
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}

.episode__future-notice-content {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.episode__future-notice-icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--accent-red);
    border-radius: 50%;
    color: #fff;
    font-size: 24px;
}

.episode__future-notice-info {
    flex: 1;
    min-width: 0;
}

.episode__future-notice-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--tt);
    margin-bottom: 12px;
}

.episode__future-notice-text {
    font-size: 14px;
    line-height: 1.6;
    color: var(--tt-2);
    margin-bottom: 20px;
}

.episode__future-notice-text p {
    margin: 0 0 10px 0;
}

.episode__future-notice-text p:last-child {
    margin-bottom: 0;
}

.episode__future-notice-text strong {
    color: var(--accent-red);
    font-weight: 600;
}

.episode__future-notice-translation {
    font-size: 13px;
    color: var(--tt-2);
    opacity: 0.9;
    font-style: italic;
    margin-top: 8px;
}


/* Countdown Timer */

.episode__countdown {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 20px;
    background-color: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    margin-top: 15px;
}

.episode__countdown-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-width: 60px;
}

.episode__countdown-value {
    font-size: 32px;
    font-weight: 700;
    color: var(--accent-red);
    line-height: 1;
    font-variant-numeric: tabular-nums;
}

.episode__countdown-label {
    font-size: 11px;
    color: var(--tt-2);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.episode__countdown-separator {
    font-size: 24px;
    font-weight: 700;
    color: var(--accent-red);
    margin: 0 -4px;
    opacity: 0.6;
}


/* Episode Header */

.episode__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--bdc);
}

.episode__header-content {
    flex: 1;
    min-width: 0;
}

.episode__breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--tt-2);
    margin-bottom: 12px;
}

.episode__breadcrumb a {
    color: var(--tt-2);
    text-decoration: none;
    transition: color 0.2s;
}

.episode__breadcrumb a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.episode__breadcrumb-separator {
    color: var(--tt-2);
    opacity: 0.5;
}

.episode__breadcrumb-current {
    color: var(--tt);
    font-weight: 500;
}

.episode__title {
    font-size: 23px;
    font-weight: 700;
    color: var(--tt);
    margin: 0 0 12px 0;
    line-height: 1.3;
}

.episode__meta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.episode__meta-item {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    background-color: var(--bg-2);
    color: var(--tt);
}

.episode__meta-season {
    background-color: var(--accent-red);
    color: #fff;
}

.episode__meta-date {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.episode__meta-date .fal {
    font-size: 12px;
    opacity: 0.7;
}

.episode__meta-date-text {
    font-size: 13px;
}

.episode__btn-watch {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 24px;
    background-color: var(--accent-red);
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.episode__btn-watch:hover {
    background-color: var(--bg-btn-hover);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(229, 9, 20, 0.3);
}

.episode__btn-watch .fal {
    font-size: 16px;
}

.episode__btn-text {
    display: inline;
}


/* Episode Main Content */

.episode__main {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 25px;
    margin-bottom: 30px;
    align-items: start;
}


/* Episode Poster */

.episode__poster {
    position: relative;
}

.episode__poster-img {
    width: 100%;
    height: 352px;
    border-radius: 6px;
    overflow: hidden;
    background-color: var(--bg-2);
    border: 1px solid var(--bdc);
    position: relative;
}

.episode__poster-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.episode__poster-badge {
    position: absolute;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    z-index: 5;
}

.episode__poster-badge--season {
    top: 10px;
    left: 10px;
    background-color: var(--accent-red);
}

.episode__poster-badge--episode {
    bottom: 10px;
    left: 10px;
    background-color: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(4px);
}

.episode__rating {
    margin-top: 16px;
    padding: 16px;
    background-color: var(--bg-2);
    border-radius: 6px;
    border: 1px solid var(--bdc);
}

.episode__rating-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--tt-2);
    margin-bottom: 10px;
}

.episode__rating-stars {
    margin-top: 8px;
    position: relative;
}


/* Episode Info */

.episode__info {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.episode__description {
    background-color: var(--bg-2);
    border-radius: 6px;
    padding: 12px;
    border: 1px solid var(--bdc);
}

.episode__description-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    margin-bottom: 8px;
}

.episode__description-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--tt);
    margin: 0;
}

.episode__description-date {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--tt-2);
}

.episode__description-date .fal {
    font-size: 14px;
    opacity: 0.7;
}

.episode__description-date-label {
    opacity: 0.8;
}

.episode__description-date-value {
    font-weight: 500;
    color: var(--tt);
}

.episode__description-text {
    font-size: 14px;
    line-height: 1.7;
    color: var(--tt-2);
}

.episode__description-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.episode__description-list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    border-bottom: 1px solid var(--bdc);
    font-size: 13px;
    line-height: 1.5;
    color: var(--tt-2);
    padding-bottom: 4px;
}

.episode__description-list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.episode__description-list li span:first-child {
    font-weight: 500;
    color: var(--tt);
    flex-shrink: 0;
    font-size: 13px;
}

.episode__list-value {
    flex: 1;
    word-wrap: break-word;
    overflow-wrap: break-word;
    line-height: 1.6;
}

.episode__list-item--long {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.episode__list-item--long span:first-child {
    min-width: auto;
    margin-bottom: 2px;
}

.episode__description-list li:not(.episode__list-item--important) {
    opacity: 0.85;
}


/* Важные данные - выделение */

.episode__list-item--important {
    background: linear-gradient(90deg, rgba(229, 9, 20, 0.05) 0%, transparent 100%);
    padding: 6px 10px;
    border-radius: 4px;
    border-bottom: 1px solid rgba(229, 9, 20, 0.1) !important;
    margin: 0;
}

.episode__list-item--important span {
    color: var(--tt);
    font-weight: 600;
}

.episode__list-value--highlight {
    color: var(--accent-red);
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
    padding: 2px 6px;
    background: rgba(229, 9, 20, 0.1);
    border-radius: 3px;
    margin-left: 4px;
}

.episode__list-value--rating {
    background: linear-gradient(135deg, rgba(229, 9, 20, 0.15) 0%, rgba(229, 9, 20, 0.05) 100%);
    padding: 3px 8px;
    border: 1px solid rgba(229, 9, 20, 0.2);
    font-size: 14px;
    box-shadow: 0 2px 4px rgba(229, 9, 20, 0.1);
}

.episode__list-item--important:first-child {
    margin-top: 0;
}

.episode__list-item--important:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .episode__description-list li {
        flex-direction: column;
        gap: 4px;
        font-size: 12px;
    }
    .episode__description-list li span:first-child {
        min-width: auto;
        font-size: 12px;
    }
    .episode__list-item--important {
        padding: 6px 8px;
    }
    .episode__list-value--highlight {
        font-size: 13px;
        margin-left: 0;
        margin-top: 2px;
    }
}


/* Episode Navigation */

.episode__navigation {
    display: flex;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 30px;
    padding: 20px;
    background-color: var(--bg-2);
    border-radius: 6px;
    border: 1px solid var(--bdc);
}

.episode__navigation a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    background-color: var(--bg);
    color: var(--tt);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.2s;
    flex: 1;
    max-width: 300px;
}

.episode__navigation a:hover {
    background-color: var(--accent-red);
    color: #fff;
    border-color: var(--accent-red);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(229, 9, 20, 0.2);
}

.episode__nav-btn {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    height: 100%;
}

.episode__navigation a:first-child {
    justify-content: flex-start;
}

.episode__navigation a:last-child {
    justify-content: flex-end;
    margin-left: auto;
}

.episode__navigation a .fal {
    font-size: 16px;
    flex-shrink: 0;
}

.episode__nav-btn-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.episode__nav-btn-label {
    font-size: 12px;
    color: var(--tt-2);
    opacity: 0.8;
}

.episode__nav-btn:hover .episode__nav-btn-label {
    color: rgba(255, 255, 255, 0.9);
}

.episode__nav-btn-episode {
    font-size: 14px;
    font-weight: 600;
}

.episode__navigation-empty {
    text-align: center;
    padding: 20px;
    color: var(--tt-2);
    font-size: 14px;
}


/* Episode Player */

.episode__player {
    background-color: var(--bg-2);
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid var(--bdc);
    margin-bottom: 30px;
}

.episode__player-header {
    padding: 16px 20px;
    background-color: #2d2d2d;
    border-bottom: 1px solid var(--bdc);
}

.episode__player-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tt);
    margin: 0;
}

.episode__player-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    background-color: #000;
}

.episode__video-box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.episode__video-box iframe {
    width: 100%;
    height: 100%;
    border: none;
}

.episode__player-footer {
    display: flex;
    flex-direction: column;
    padding: 16px 20px;
    background-color: var(--bg);
    border-top: 1px solid var(--bdc);
    gap: 20px;
    flex-wrap: wrap;
}

.episode__share {
    display: flex;
    flex-direction: column;
    gap: 15px;
    flex: 1;
    min-width: 0;
}

.episode__share-label {
    font-size: 13px;
    color: var(--tt-2);
    white-space: nowrap;
}

.episode__complaint {
    flex-shrink: 0;
}

.episode__complaint-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background-color: transparent;
    color: var(--tt-2);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s;
}

.episode__complaint-btn:hover {
    background-color: var(--bg-2);
    color: var(--tt);
    border-color: var(--accent-red);
}

.episode__complaint-text {
    display: inline;
}


/* Responsive Styles */

@media screen and (max-width: 760px) {
    .episode__future-notice {
        padding: 20px;
    }
    .episode__future-notice-content {
        flex-direction: column;
        gap: 15px;
    }
    .episode__future-notice-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
    .episode__future-notice-title {
        font-size: 18px;
    }
    .episode__countdown {
        flex-wrap: wrap;
        gap: 6px;
        padding: 15px;
    }
    .episode__countdown-item {
        min-width: 50px;
    }
    .episode__countdown-value {
        font-size: 24px;
    }
    .episode__countdown-label {
        font-size: 10px;
    }
    .episode__countdown-separator {
        font-size: 18px;
    }
    .episode__header {
        flex-direction: column;
        gap: 15px;
    }
    .episode__title {
        font-size: 22px;
    }
    .episode__description-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    .episode__description-date {
        width: 100%;
    }
    .episode__btn-watch {
        width: 100%;
        justify-content: center;
    }
    .episode__main {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .episode__poster-img {
        height: 300px;
    }
    .episode__navigation {
        flex-direction: column;
        gap: 12px;
    }
    .episode__navigation a {
        max-width: 100%;
        justify-content: center;
    }
    .episode__navigation a:last-child {
        margin-left: 0;
    }
    .episode__player-footer {
        flex-direction: column;
        align-items: stretch;
    }
    .episode__share {
        flex-direction: column;
        align-items: flex-start;
    }
    .episode__complaint-btn {
        width: 100%;
        justify-content: center;
    }
    .episode__btn-text {
        display: none;
    }
    .episode__complaint-text {
        display: none;
    }
}

@media screen and (max-width: 470px) {
    .episode-page {
        padding: 15px;
        margin: 0 var(--indent-negative);
    }
    .episode__future-notice {
        padding: 15px;
        margin-bottom: 20px;
    }
    .episode__future-notice-title {
        font-size: 16px;
    }
    .episode__future-notice-text {
        font-size: 13px;
    }
    .episode__countdown {
        padding: 12px;
        gap: 4px;
    }
    .episode__countdown-item {
        min-width: 45px;
    }
    .episode__countdown-value {
        font-size: 20px;
    }
    .episode__countdown-label {
        font-size: 9px;
    }
    .episode__countdown-separator {
        font-size: 16px;
        margin: 0 -2px;
    }
    .episode__title {
        font-size: 18px;
    }
    .episode__poster-img {
        height: 240px;
    }
    .episode__description {
        padding: 15px;
    }
    .episode__player-header,
    .episode__player-footer {
        padding: 12px 15px;
    }
}


/* Season Page Styles */

.season-page {
    background-color: #1e1e1e;
    border-radius: 5px;
    padding: 20px;
}


/* Season Header */

.season__header {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--bdc);
}

.season__header-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.season__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--tt);
    margin: 0 0 12px 0;
    line-height: 1.3;
}

.season__meta {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.season__meta-item {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 500;
    background-color: var(--bg-2);
    color: var(--tt);
}

.season__meta-season {
    background-color: var(--accent-red);
    color: #fff;
}


/* Season Rating */

.season__rating {
    background-color: var(--bg-2);
    border-radius: 6px;
    padding: 20px;
    border: 1px solid var(--bdc);
    margin-bottom: 30px;
}

.season__rating-label {
    font-size: 16px;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 12px;
}

.season__rating-stars {
    margin-top: 8px;
}


/* Season Navigation */

.season__navigation {
    background-color: var(--bg-2);
    border-radius: 6px;
    padding: 20px;
    border: 1px solid var(--bdc);
    margin-bottom: 30px;
}

.season__navigation-header {
    margin-bottom: 15px;
}

.season__navigation-title {
    font-size: 18px;
    font-weight: 600;
    color: var(--tt);
    margin: 0;
}

.season__navigation-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.season__navigation-list a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    height: 40px;
    padding: 0 16px;
    background-color: var(--bg);
    color: var(--tt);
    border: 1px solid var(--bdc);
    border-radius: 4px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.2s;
}

.season__navigation-list a:hover {
    background-color: var(--bg-2);
    border-color: var(--accent-red);
    color: var(--accent-red);
    transform: translateY(-1px);
}

.season__navigation-list a.active {
    background-color: var(--accent-red);
    color: #fff;
    border-color: var(--accent-red);
    box-shadow: 0 2px 8px rgba(229, 9, 20, 0.3);
}

.season__navigation-list a.active:hover {
    background-color: var(--bg-btn-hover);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(229, 9, 20, 0.4);
}


/* Season Episodes */

.season__episodes {
    margin-bottom: 30px;
}

.season__episodes-header {
    margin-bottom: 20px;
}

.season__episodes-title {
    font-size: 22px;
    font-weight: 600;
    color: var(--tt);
    margin: 0;
}

.season__episodes-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
}


/* Season Episode Card */

.season-episode-card {
    background-color: var(--bg-2);
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid var(--bdc);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.season-episode-card:hover {
    border-color: var(--accent-red);
    box-shadow: 0 4px 12px rgba(229, 9, 20, 0.2);
    transform: translateY(-2px);
}

.season-episode-card__poster {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    overflow: hidden;
    background-color: var(--bg);
}

.season-episode-card__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    text-decoration: none;
}

.season-episode-card__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.season-episode-card__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.season-episode-card:hover .season-episode-card__img img {
    transform: scale(1.05);
}

.season-episode-card__overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
}

.season-episode-card__overlay .fal {
    font-size: 48px;
    color: #fff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.season-episode-card:hover .season-episode-card__overlay {
    opacity: 1;
}

.season-episode-card__badge {
    position: absolute;
    bottom: 10px;
    left: 10px;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    z-index: 3;
    background-color: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(4px);
}

.season-episode-card__badge--episode {
    background-color: var(--accent-red);
}

.season-episode-card__badge--future {
    background-color: var(--accent-red);
    top: 10px;
    right: 10px;
    bottom: unset;
    left: unset;
    background-color: #1cbc9a;
}

.season-episode-card__info {
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
}

.season-episode-card__title {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
}

.season-episode-card__title a {
    color: var(--tt);
    text-decoration: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s;
}

.season-episode-card__title a:hover {
    color: var(--accent-red);
    text-decoration: underline;
}

.season-episode-card__title--active a {
    color: var(--accent-red);
}

.season-episode-card__rating {
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid var(--bdc);
}


/* Empty state for episodes */

.season__episodes-grid:empty::after {
    content: 'Серии этого сезона пока не добавлены';
    display: block;
    text-align: center;
    padding: 40px 20px;
    color: var(--tt-2);
    font-size: 14px;
}


/* Responsive Styles for Season Page */

@media screen and (max-width: 760px) {
    .season-page {
        padding: 15px;
    }
    .season__title {
        font-size: 22px;
    }
    .season__header-content {
        flex-direction: column;
        gap: 15px;
    }
    .season__navigation {
        padding: 15px;
    }
    .season__navigation-title {
        font-size: 16px;
    }
    .season__navigation-list {
        gap: 8px;
    }
    .season__navigation-list a {
        min-width: 45px;
        height: 36px;
        padding: 0 12px;
        font-size: 13px;
    }
    .season__episodes-grid {
        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        gap: 15px;
    }
    .season-episode-card__info {
        padding: 12px;
    }
    .season-episode-card__title {
        font-size: 14px;
    }
}

@media screen and (max-width: 470px) {
    .season-page {
        padding: 15px;
        margin: 0 var(--indent-negative);
    }
    .season__title {
        font-size: 18px;
    }
    .season__navigation {
        padding: 12px;
    }
    .season__navigation-title {
        font-size: 15px;
        margin-bottom: 12px;
    }
    .season__navigation-list {
        gap: 6px;
    }
    .season__navigation-list a {
        min-width: 40px;
        height: 32px;
        padding: 0 10px;
        font-size: 12px;
    }
    .season__episodes-grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: 12px;
    }
    .season-episode-card__overlay .fal {
        font-size: 36px;
    }
}

.sect__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}


/* Anonse Calendar Page Styles */

.anonse-page {
    background-color: #1e1e1e;
    border-radius: 5px;
    padding: 20px;
}

.anonse-header {
    margin-bottom: 40px;
    padding-bottom: 30px;
    border-bottom: 1px solid var(--bdc);
    text-align: center;
}

.anonse-title {
    font-size: 32px;
    font-weight: 700;
    color: var(--tt);
    margin: 0 0 12px 0;
    line-height: 1.3;
}

.anonse-subtitle {
    font-size: 16px;
    color: var(--tt-2);
    margin-bottom: 24px;
}

.anonse-stats {
    display: flex;
    justify-content: center;
    gap: 40px;
    flex-wrap: wrap;
}

.anonse-stats__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.anonse-stats__value {
    font-size: 32px;
    font-weight: 700;
    color: var(--accent-red);
    line-height: 1;
}

.anonse-stats__label {
    font-size: 14px;
    color: var(--tt-2);
    text-transform: lowercase;
}

.anonse-content {
    display: flex;
    flex-direction: column;
    gap: 30px;
}


/* Month Block */

.anonse-month {
    background-color: var(--bg-2);
    border-radius: 8px;
    padding: 24px;
    border: 1px solid var(--bdc);
}

.anonse-month__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--accent-red);
}

.anonse-month__title {
    font-size: 24px;
    font-weight: 700;
    color: var(--tt);
    margin: 0;
}

.anonse-month__count {
    font-size: 14px;
    color: var(--tt-2);
    padding: 6px 12px;
    background-color: var(--bg);
    border-radius: 4px;
}

.anonse-month__content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}


/* Date Block */

.anonse-date {
    background-color: var(--bg);
    border-radius: 6px;
    padding: 20px;
    border: 1px solid var(--bdc);
    transition: all 0.2s;
}

.anonse-date:hover {
    border-color: var(--accent-red);
    box-shadow: 0 2px 8px rgba(229, 9, 20, 0.1);
}

.anonse-date__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--bdc);
}

.anonse-date__day {
    font-size: 48px;
    font-weight: 700;
    color: var(--accent-red);
    line-height: 1;
    min-width: 60px;
}

.anonse-date__info {
    flex: 1;
    margin-left: 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.anonse-date__weekday {
    font-size: 18px;
    font-weight: 600;
    color: var(--tt);
}

.anonse-date__month {
    font-size: 14px;
    color: var(--tt-2);
}

.anonse-date__count {
    font-size: 14px;
    color: var(--tt-2);
    padding: 6px 12px;
    background-color: var(--bg-2);
    border-radius: 4px;
    font-weight: 500;
}


/* Episodes List */

.anonse-episodes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}

.anonse-episode {
    background-color: var(--bg-2);
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid var(--bdc);
    transition: all 0.2s;
}

.anonse-episode:hover {
    border-color: var(--accent-red);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(229, 9, 20, 0.2);
}

.anonse-episode__link {
    display: flex;
    gap: 12px;
    padding: 12px;
    text-decoration: none;
    color: inherit;
}

.anonse-episode__poster {
    flex-shrink: 0;
    width: 80px;
    height: 120px;
    border-radius: 4px;
    overflow: hidden;
    background-color: var(--bg);
    position: relative;
}

.anonse-episode__poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.anonse-episode__badge {
    position: absolute;
    bottom: 6px;
    left: 6px;
    padding: 4px 8px;
    background-color: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(4px);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    border-radius: 3px;
}

.anonse-episode__info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.anonse-episode__title {
    font-size: 15px;
    font-weight: 600;
    color: var(--tt);
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.anonse-episode__meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.anonse-episode__season,
.anonse-episode__episode {
    font-size: 12px;
    padding: 4px 8px;
    border-radius: 3px;
    background-color: var(--bg);
    color: var(--tt-2);
    font-weight: 500;
}

.anonse-episode:hover .anonse-episode__season,
.anonse-episode:hover .anonse-episode__episode {
    background-color: var(--accent-red);
    color: #fff;
}

.anonse-episode__subtitle {
    font-size: 13px;
    font-weight: 500;
    color: var(--tt);
    margin-top: 4px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.anonse-episode__story {
    font-size: 12px;
    color: var(--tt-2);
    line-height: 1.5;
    margin-top: 4px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}


/* Empty State */

.anonse-empty {
    text-align: center;
    padding: 60px 20px;
    background-color: var(--bg-2);
    border-radius: 8px;
    border: 1px solid var(--bdc);
}

.anonse-empty__icon {
    font-size: 64px;
    color: var(--tt-2);
    opacity: 0.5;
    margin-bottom: 20px;
}

.anonse-empty__title {
    font-size: 24px;
    font-weight: 600;
    color: var(--tt);
    margin-bottom: 12px;
}

.anonse-empty__text {
    font-size: 14px;
    color: var(--tt-2);
    line-height: 1.6;
    max-width: 500px;
    margin: 0 auto;
}


/* Responsive Styles */

@media screen and (max-width: 760px) {
    .anonse-page {
        padding: 15px;
    }
    .anonse-title {
        font-size: 24px;
    }
    .anonse-subtitle {
        font-size: 14px;
    }
    .anonse-stats {
        gap: 30px;
    }
    .anonse-stats__value {
        font-size: 28px;
    }
    .anonse-month {
        padding: 20px;
    }
    .anonse-month__header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    .anonse-month__title {
        font-size: 20px;
    }
    .anonse-date {
        padding: 16px;
    }
    .anonse-date__day {
        font-size: 36px;
        min-width: 50px;
    }
    .anonse-date__weekday {
        font-size: 16px;
    }
    .anonse-episodes {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .anonse-episode__link {
        padding: 10px;
    }
    .anonse-episode__poster {
        width: 70px;
        height: 105px;
    }
}

@media screen and (max-width: 470px) {
    .anonse-page {
        padding: 15px;
        margin: 0 var(--indent-negative);
    }
    .anonse-title {
        font-size: 20px;
    }
    .anonse-stats {
        gap: 20px;
    }
    .anonse-stats__value {
        font-size: 24px;
    }
    .anonse-month {
        padding: 15px;
    }
    .anonse-date__header {
        flex-wrap: wrap;
        gap: 12px;
    }
    .anonse-date__day {
        font-size: 32px;
    }
    .anonse-episode__poster {
        width: 60px;
        height: 90px;
    }
    .anonse-episode__title {
        font-size: 14px;
    }
}