/* Proektor: components and responsive states; consolidated 2026-10-27. */
/* Анимация prHeroIn */
@keyframes prHeroIn {
    0% {
        opacity: 0;
        transform: translateY(7px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* Анимация prHeroOut */
@keyframes prHeroOut {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 0;
        transform: translateY(-4px);
    }
}
/* Анимация prHeroAccent */
@keyframes prHeroAccent {
    0% {
        transform: translateX(0);
        opacity: 0.5;
    }
    to {
        transform: translateX(212.5%);
        opacity: 1;
    }
}
/* Анимация prHeroArrowPulse */
@keyframes prHeroArrowPulse {
    0%,
    to {
        border-color: #393943;
        box-shadow:
            0 8px 22px #0006,
            0 0 0#ffb80000;
        color: #bdbdc9;
    }
    50% {
        border-color: #c39c456b;
        box-shadow:
            0 8px 22px #0006,
            0 0 17px #ffb80020;
        color: #e5c978;
    }
}
/* Анимация prMenuReveal */
@keyframes prMenuReveal {
    0% {
        opacity: 0;
        transform: translateY(-12px) scale(0.985);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
/* Анимация prMenuPanel */
@keyframes prMenuPanel {
    0% {
        opacity: 0.35;
        transform: translateY(7px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* Анимация prMenuDrawer */
@keyframes prMenuDrawer {
    0% {
        opacity: 0.5;
        transform: translateX(30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
/* Анимация prLoginIn */
@keyframes prLoginIn {
    0% {
        opacity: 0;
        transform: translateY(10px) scale(0.985);
    }
    to {
        opacity: 1;
        transform: none;
    }
}
/* Штатные компоненты и вспомогательные состояния */
.pr-addnews-style-1:where(:not([hidden])) {
    display: none;
}
.pr-addnews-style-2 {
    width: 100%;
}
.pr-addnews-style-3 {
    margin: 20px 0 0;
}
.pr-addnews-style-4 {
    color: #e85319;
}
.pr-categorymenu-style-1 {
    float: right;
}
/* Комментарии и голосование */
.pr-comments-style-1:where(:not([hidden])) {
    display: grid;
    gap: 14px;
    padding: 20px;
    border: 1px solid #1a1a22;
    border-radius: 16px;
    background: #0c0c11;
}
.pr-comments-style-2 {
    flex: 1;
    min-width: 0;
}
.pr-comments-style-3:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 12px;
}
.pr-comments-style-4 {
    font-size: 15px;
    font-weight: 700;
}
.pr-comments-style-5 {
    font-family: "JetBrains Mono", monospace;
    font-size: 12px;
    color: #62626d;
}
.pr-comments-style-6 {
    font-size: 13px;
    font-weight: 700;
    color: #ffb800;
}
/* Полная новость: элементы оформления */
.pr-fullstory-style-1 {
    position: relative;
    overflow: hidden;
}
.pr-fullstory-style-2 {
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        115deg,
        #16161d 0 14px,
        #101016 14px 28px
    );
}
.pr-fullstory-style-3:where(:not([hidden])) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pr-fullstory-style-4 {
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #34343d;
}
.pr-fullstory-style-5 {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(10, 10, 12, 0.62) 0,
        rgba(10, 10, 12, 0.88) 55%,
        #0a0a0c 100%
    );
}
.pr-fullstory-style-6:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #6b6b76;
    font-weight: 500;
}
.pr-fullstory-style-7 {
    color: #6b6b76;
}
.pr-fullstory-style-8:where(:not([hidden])) {
    position: relative;
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 44px;
    align-items: start;
    max-width: 1280px;
    margin: 0 auto;
    padding: 56px 40px 48px;
}
.pr-fullstory-style-9 {
    position: relative;
    aspect-ratio: 2/3;
    border-radius: 18px;
    overflow: hidden;
    background: repeating-linear-gradient(
        135deg,
        #17171e 0 9px,
        #101016 9px 18px
    );
    border: 1px solid rgba(255, 184, 0, 0.28);
    box-shadow:
        0 0 70px rgba(255, 184, 0, 0.2),
        0 30px 70px rgba(0, 0, 0, 0.75);
}
.pr-fullstory-style-10:where(:not([hidden])) {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pr-fullstory-style-11 {
    font-family: "JetBrains Mono", monospace;
    font-size: 10px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #3d3d47;
}
.pr-fullstory-style-12:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    min-width: 0;
}
.pr-fullstory-style-13 {
    margin: 0;
    line-height: 0.98;
    font-weight: 800;
    letter-spacing: -0.045em;
    text-wrap: balance;
}
.pr-fullstory-style-14:where(:not([hidden])) {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 18px 28px;
    width: 100%;
    max-width: 780px;
    padding-top: 6px;
}
.pr-fullstory-style-15:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.pr-fullstory-style-16 {
    font-size: 12px;
    color: #62626d;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
.pr-fullstory-style-17 {
    font-size: 15px;
    font-weight: 600;
}
.pr-fullstory-style-18:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 780px;
    padding-top: 6px;
}
.pr-fullstory-style-19:where(:not([hidden])) {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.pr-fullstory-style-20:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 8px;
}
.pr-fullstory-style-21 {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
}
.pr-fullstory-style-22 {
    position: relative;
    aspect-ratio: 16/9;
    border-radius: 20px;
    overflow: hidden;
    background: #050507;
    border: 1px solid #1e1e26;
    box-shadow: 0 30px 80px rgba(0, 0, 0, 0.8);
}
.pr-fullstory-style-23 {
    font-family: "JetBrains Mono", monospace;
    font-size: 12px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: #3a3a44;
}
.pr-fullstory-style-24:where(:not([hidden])) {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    border: 0;
    background: rgba(10, 10, 12, 0.45);
    cursor: pointer;
    font-family: Manrope, sans-serif;
}
.pr-fullstory-style-25:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 60px rgba(255, 184, 0, 0.55);
}
.pr-fullstory-style-26 {
    width: 0;
    height: 0;
    margin-left: 6px;
    border-left: 24px solid #0a0a0c;
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
}
.pr-fullstory-style-27 {
    font-size: 15px;
    font-weight: 700;
    color: #f2f2f4;
}
.pr-fullstory-style-28 {
    max-width: 1280px;
    margin: 0 auto;
    padding: 52px 40px 0;
}
.pr-fullstory-style-29 {
    margin: 0 0 22px;
    font-weight: 800;
    letter-spacing: -0.03em;
}
.pr-fullstory-style-30 {
    max-width: 1280px;
    margin: 0 auto;
    padding: 44px 40px 0;
}
.pr-fullstory-style-31:where(:not([hidden])) {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 26px;
}
.pr-fullstory-style-32 {
    margin: 0;
    font-weight: 800;
    letter-spacing: -0.03em;
}
.pr-fullstory-style-33:where(:not([hidden])) {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    padding: 14px 0 22px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-main-style-1 {
    max-width: 1400px;
    margin: 0 auto;
    padding: 62px 40px 0;
}
.pr-card-row-style-1:where(:not([hidden])) {
    flex: 0 0 auto;
    scroll-snap-align: start;
    color: #f2f2f4;
    display: block;
    width: 218px;
    transition: transform 0.25s ease;
}
.pr-card-row-style-2 {
    position: relative;
    width: 100%;
    aspect-ratio: 2/3;
    border-radius: 16px;
    overflow: hidden;
    background: repeating-linear-gradient(
        135deg,
        #17171e 0 9px,
        #101016 9px 18px
    );
    border: 1px solid #20202a;
    transition:
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6);
    border-color: #20202a;
}
.pr-card-row-style-3:where(:not([hidden])) {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    text-align: center;
}
.pr-card-row-style-4 {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(10, 10, 12, 0.92) 0,
        rgba(10, 10, 12, 0) 55%
    );
}
.pr-card-row-style-5:where(:not([hidden])) {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 10, 12, 0.45);
    transition: opacity 0.25s ease;
    opacity: 0;
}
.pr-card-row-style-6:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 34px rgba(255, 184, 0, 0.6);
}
.pr-card-row-style-7 {
    width: 0;
    height: 0;
    margin-left: 4px;
    border-left: 15px solid #0a0a0c;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
}
.pr-card-row-style-8 {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 8px;
    border-radius: 7px;
    background: rgba(10, 10, 12, 0.72);
    backdrop-filter: blur(6px);
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    font-weight: 500;
    color: #ffb800;
}
.pr-card-row-style-9 {
    padding: 14px 2px 0;
}
.pr-card-row-style-10 {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.pr-card-row-style-11 {
    margin-top: 5px;
    font-size: 13px;
    color: #75757f;
    font-weight: 500;
}
/* Карточки подборок */
.pr-collection-menu-style-1:where(:not([hidden])) {
    flex: 0 0 auto;
    width: 372px;
    color: #f2f2f4;
    display: block;
    transition: transform 0.25s ease;
}
.pr-collection-menu-style-2 {
    position: relative;
    aspect-ratio: 16/9;
    border-radius: 16px;
    overflow: hidden;
    background: repeating-linear-gradient(
        115deg,
        #17171e 0 12px,
        #101016 12px 24px
    );
    border: 1px solid #20202a;
    transition:
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6);
    border-color: #20202a;
}
.pr-collection-menu-style-3 {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(10, 10, 12, 0.95) 0,
        rgba(10, 10, 12, 0.1) 70%
    );
}
.pr-collection-menu-style-4 {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 20px;
}
.pr-collection-menu-style-5 {
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -0.025em;
}
.pr-collection-menu-style-6 {
    margin-top: 6px;
    font-family: "JetBrains Mono", monospace;
    font-size: 12px;
    color: #8a8a94;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-profilepopup-style-1 {
    color: #70bb39;
}
/* Рекомендуемые публикации */
.pr-relatednews-style-1:where(:not([hidden])) {
    flex: 0 0 auto;
    width: 208px;
    color: #f2f2f4;
    display: block;
    transition: transform 0.25s ease;
}
.pr-relatednews-style-2 {
    position: relative;
    aspect-ratio: 2/3;
    border-radius: 16px;
    overflow: hidden;
    background: repeating-linear-gradient(
        135deg,
        #17171e 0 9px,
        #101016 9px 18px
    );
    border: 1px solid #20202a;
    transition:
        box-shadow 0.3s ease,
        border-color 0.3s ease;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6);
    border-color: #20202a;
}
.pr-relatednews-style-3 {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(10, 10, 12, 0.9) 0,
        rgba(10, 10, 12, 0) 55%
    );
}
.pr-relatednews-style-4:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 34px rgba(255, 184, 0, 0.6);
}
.pr-relatednews-style-5 {
    width: 0;
    height: 0;
    margin-left: 4px;
    border-left: 14px solid #0a0a0c;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
}
.pr-relatednews-style-6 {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 8px;
    border-radius: 7px;
    background: rgba(10, 10, 12, 0.72);
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    color: #ffb800;
}
.pr-relatednews-style-7 {
    font-size: 16px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* Поиск и подсказки */
.pr-searchresult-style-1 {
    margin-top: 0;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-shortstory-style-1:where(:not([hidden])) {
    color: #f2f2f4;
    display: block;
    transition: transform 0.25s ease;
}
.pr-shortstory-style-2:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 34px rgba(255, 184, 0, 0.6);
}
.pr-shortstory-style-3 {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 8px;
    border-radius: 7px;
    background: rgba(10, 10, 12, 0.72);
    backdrop-filter: blur(6px);
    font-family: "JetBrains Mono", monospace;
    font-size: 11px;
    color: #ffb800;
}
/* Базовые стили и типографика */
html {
    margin: 0;
    padding: 0;
    background: #0a0a0c;
}
a:hover {
    color: #ffd166;
}
/* Штатные компоненты и вспомогательные состояния */
[data-row]::-webkit-scrollbar {
    height: 0;
}
[data-row] {
    scrollbar-width: none;
}
/* Базовые стили и типографика */
input::placeholder {
    color: #55555f;
}
/* Главная: слайдер и миниатюры */
.pr-hero-meta b,
.s88674fb4a:hover,
.sort > li.asc a,
.sort > li.desc a,
a {
    color: #ffb800;
}
/* Штатные компоненты и вспомогательные состояния */
.s9d2cefa25:hover {
    color: #f2f2f4;
    transform: translateY(-8px);
}
.s1af8c0303:hover {
    color: #f2f2f4;
    transform: translateY(-6px);
}
/* Локальный шрифт */
@font-face {
    font-family: Manrope;
    src: url(../assets/manrope-variable.ttf) format("truetype");
    font-weight: 200 800;
    font-style: normal;
    font-display: swap;
}
/* Базовые стили и типографика */
a {
    text-decoration: none;
    touch-action: manipulation;
}
button,
input,
summary {
    touch-action: manipulation;
}
button,
input,
select,
textarea {
    font-family: Manrope, Helvetica, Arial, sans-serif;
}
button {
    cursor: pointer;
}
/* Shared feedback for native and theme buttons. No geometry changes on hover. */
/* Основные жёлтые кнопки */
:where(
    button,
    input[type="button"],
    input[type="submit"],
    input[type="reset"],
    .btn,
    .btn-border,
    .outline-button,
    .primary-button,
    .login-button,
    a[role="button"]
) {
    transition:
        background-color 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease,
        filter 0.18s ease;
}
/* Адаптивность и настройки устройства: (hover: hover) and (pointer: fine) */
@media (hover: hover) and (pointer: fine) {
    :where(
            button,
            input[type="button"],
            input[type="submit"],
            input[type="reset"],
            .btn,
            .btn-border,
            .outline-button,
            .primary-button,
            .login-button,
            a[role="button"]
        ):not(:disabled):not([aria-disabled="true"]):hover {
        filter: brightness(1.16);
        box-shadow:
            0 0 0 1px #ffcf6840,
            0 5px 16px #0005;
    }
    .outline-button:not(:disabled):not([aria-disabled="true"]):hover {
        background: #ffb80019;
        border-color: #c39c45;
        color: #ffe3a2;
    }
}
/* Контурные кнопки */
.outline-button:not(:disabled):not([aria-disabled="true"]):focus-visible {
    background: #ffb80019;
    border-color: #c39c45;
    color: #ffe3a2;
}
/* Адаптивность и настройки устройства: (prefers-reduced-motion: reduce) */
@media (prefers-reduced-motion: reduce) {
    :where(
        button,
        input[type="button"],
        input[type="submit"],
        input[type="reset"],
        .btn,
        .btn-border,
        .outline-button,
        .primary-button,
        .login-button,
        a[role="button"]
    ) {
        transition-duration: 0s;
    }
}
/* Базовые стили и типографика */
a:focus-visible,
button:focus-visible,
summary:focus-visible {
    outline: 2px solid #ffb800;
    outline-offset: 5px;
}
img {
    max-width: 100%;
}
/* Штатные компоненты и вспомогательные состояния */
[hidden] {
    display: none;
}
/* Главная: слайдер и миниатюры */
.media-img,
.pr-hero-dock .hero-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* Карточки каталога */
.movie-card .media-img[data-poster-state] {
    transition: opacity 0.36s ease;
}
.movie-card .media-img[data-poster-state="pending"] {
    opacity: 0;
}
.movie-card .media-img[data-poster-state="ready"],
.movie-card .media-img[data-poster-state="error"] {
    opacity: 1;
}
/* Штатные компоненты и вспомогательные состояния */
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
/* Карточки каталога */
.movie-card:hover .poster-box {
    box-shadow:
        0 0 0 1px #ffb80059,
        0 0 44px #ffb8003d,
        0 22px 50px #000b;
    border-color: #ffb8008c;
}
.movie-card:focus-visible .poster-box {
    box-shadow:
        0 0 0 1px #ffb80059,
        0 0 44px #ffb8003d,
        0 22px 50px #000b;
    border-color: #ffb8008c;
}
.movie-card:hover .card-play-overlay {
    opacity: 1;
}
.movie-card:focus-visible .card-play-overlay {
    opacity: 1;
}
/* Главная: слайдер */
.hero-thumbs:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    overflow-x: auto;
    padding: 14px 10px;
    scrollbar-width: none;
}
.hero-thumb {
    position: relative;
    padding: 0;
    border: 0;
    background: 0 0;
    width: 74px;
    flex: 0 0 auto;
    border-radius: 10px;
    overflow: hidden;
    transition:
        transform 0.25s,
        box-shadow 0.3s;
}
.hero-thumb > span:where(:not([hidden])) {
    display: block;
    aspect-ratio: 2/3;
    background: repeating-linear-gradient(
        135deg,
        #1b1b23 0 8px,
        #121218 8px 16px
    );
    border: 1px solid #2a2a34;
    border-radius: 10px;
    opacity: 0.5;
}
.hero-thumb[aria-pressed="true"] {
    transform: scale(1.12);
    box-shadow: 0 0 30px #ffb80059;
}
.hero-thumb[aria-pressed="true"] > span {
    opacity: 1;
    border-color: #ffb800cc;
}
.hero-thumb img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}
.hero-slider:not(.initialized)
    > [data-hero-slide]:not(:first-child):where(:not([hidden])) {
    display: none;
}
/* Страницы каталога */
.catalog-grid > #dle-content:where(:not([hidden])) {
    display: contents;
}
.catalog-grid > .navigation,
.catalog-grid > .system-panel {
    grid-column: 1/-1;
}
.catalog-toolbar:where(:not([hidden])) {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
}
/* Штатные элементы DLE */
.native-sort select {
    background: #13131a;
    color: #ffb800;
    border: 1px solid #ffb80066;
    border-radius: 11px;
    padding: 9px 15px;
}
.native-sort form:where(:not([hidden])) {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
.native-pagination:where(:not([hidden])) {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    margin: 38px 0;
    flex-wrap: wrap;
}
/* Штатные компоненты и вспомогательные состояния */
.category-description {
    font-size: 18px;
    line-height: 1.65;
    color: #b8b8c2;
    text-wrap: pretty;
}
/* Контурные кнопки */
.outline-button:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 60px;
    padding: 0 26px;
    border-radius: 15px;
    border: 1px solid #2b2b35;
    background: #ffffff0a;
    color: #f2f2f4;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}
/* Полная новость: компоновка */
.film-actions > a {
    color: #f2f2f4;
}
.film-actions .outline-button {
    height: var(--pr-favorite-height);
    border-radius: 11px;
}
/* Штатные компоненты и вспомогательные состояния */
.account-dialog {
    box-sizing: border-box;
    width: min(480px, calc(100% - 32px));
    padding: 32px;
    background: #101016;
    color: #f2f2f4;
    border: 1px solid #2b2b35;
    border-radius: 18px;
    box-shadow: 0 30px 90px #000b;
}
.account-dialog::backdrop {
    background: #000c;
    backdrop-filter: blur(9px);
}
.account-dialog label:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.account-dialog form:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.account-dialog h2 {
    margin: 0 30px 28px 0;
}
/* Форма комментария */
.account-dialog input,
.account-dialog select,
.guest-fields input,
.native-comment-form input {
    box-sizing: border-box;
    width: 100%;
    background: #13131a;
    border: 1px solid #23232c;
    border-radius: 10px;
    color: #f2f2f4;
    padding: 12px;
}
/* Штатные компоненты и вспомогательные состояния */
.dialog-close {
    position: absolute;
    right: 16px;
    top: 12px;
    border: 0;
    background: 0 0;
    font-size: 28px;
    color: #9a9aa5;
}
.account-links:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 24px;
    font-size: 14px;
}
/* Плеер: контейнер и источники */
.player-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    z-index: 5;
    background: #050507;
}
.player-status {
    position: absolute;
    inset: 35% 8%auto;
    text-align: center;
    color: #9a9aa5;
    background: #050507;
    padding: 24px;
    border-radius: 12px;
    z-index: 10;
    font-size: 15px;
}
/* Форма комментария */
.native-comment-form:where(:not([hidden])) {
    display: flex;
    gap: 14px;
    padding: 18px;
    border: 1px solid #1d1d25;
    border-radius: 16px;
    background: #0e0e13;
    margin-bottom: 28px;
}
.comment-form-body:where(:not([hidden])) {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-direction: column;
    gap: 14px;
}
/* Штатные компоненты и вспомогательные состояния */
.guest-fields:where(:not([hidden])) {
    display: flex;
    gap: 12px;
}
.guest-fields label {
    flex: 1;
    color: #8a8a94;
    font-size: 13px;
}
/* Штатные элементы DLE */
.native-editor textarea {
    box-sizing: border-box;
    width: 100%;
    resize: vertical;
    min-height: 90px;
    padding: 12px 14px;
    color: #f2f2f4;
    background: #13131a;
    border: 1px solid #23232c;
    border-radius: 12px;
    font-size: 16px;
}
/* Форма комментария */
.comment-submit:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.comment-submit > span {
    font-size: 13px;
    color: #62626d;
}
/* Штатные компоненты и вспомогательные состояния */
.comments-list:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
/* Форма комментария */
.comment-tools:where(:not([hidden])) {
    font-size: 12px;
    display: flex;
    gap: 12px;
    margin-top: 10px;
}
/* Штатные компоненты и вспомогательные состояния */
.system-route {
    max-width: 1280px;
    margin: 0 auto;
    padding: 48px 40px;
}
.system-panel,
.system-route #dle-content > .box,
.system-route > .box {
    background: #0e0e13;
    border: 1px solid #1d1d25;
    border-radius: 16px;
    padding: 28px;
    margin-bottom: 24px;
}
.system-route h1 {
    letter-spacing: -0.03em;
}
.system-route input:not([type="checkbox"]):not([type="radio"]) {
    box-sizing: border-box;
    max-width: 100%;
    border-radius: 9px;
    border: 1px solid #2a2a34;
    background: #13131a;
    color: #f2f2f4;
    padding: 10px 14px;
}
.system-route select,
.system-route textarea {
    box-sizing: border-box;
    max-width: 100%;
    border-radius: 9px;
    border: 1px solid #2a2a34;
    background: #13131a;
    color: #f2f2f4;
    padding: 10px 14px;
}
.sort > li a,
.system-route label {
    color: #9a9aa5;
}
.system-route .bbcodes,
.system-route .btn {
    border: 0;
    border-radius: 10px;
    padding: 10px 18px;
    cursor: pointer;
    background: #ffb800;
    color: #0a0a0c;
}
.system-route .ui-form {
    list-style: none;
    padding: 0;
}
.system-route .form-group {
    margin: 20px 0;
}
.system-route .title_hide:where(:not([hidden])) {
    display: none;
}
.system-route svg.icon {
    width: 20px;
    height: 20px;
    fill: currentColor;
}
/* Карточки подборок */
.collection-card:hover > div {
    box-shadow: 0 0 44px #ffb8003d;
    border-color: #ffb8008c;
}
/* Карточки каталога */
.poster-row > .movie-card {
    width: 218px;
    flex: 0 0 auto;
    scroll-snap-align: start;
}
/* Штатные компоненты и вспомогательные состояния */
.main-nav {
    scrollbar-width: none;
}
.main-nav:where(:not([hidden]))::-webkit-scrollbar {
    display: none;
}
/* Локальный шрифт */
@font-face {
    font-family: "JetBrains Mono";
    src: url(../assets/JetBrainsMono-Regular.woff2) format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
/* Полная новость: компоновка */
.film-route {
    padding-bottom: 0;
}
/* Штатные компоненты и вспомогательные состояния */
.hide,
.quote,
.scriptcode,
.text_spoiler,
.title_quote,
.title_spoiler {
    background: #15151c;
    color: #b8b8c2;
    border-color: #2a2a34;
}
/* Штатные элементы DLE */
.native-sort .sort > li {
    margin: 0 0 0 14px;
}
/* Карточки каталога */
/* Штатные компоненты и вспомогательные состояния */
/* Главная: слайдер и миниатюры */
.film-info > .pr-film-badges > span:empty:where(:not([hidden])),
.pr-hero-meta > b:empty:where(:not([hidden])),
.pr-hero-meta > span:empty:where(:not([hidden])) {
    display: none;
}
/* Полная новость: компоновка */
.film-route .poster-row > .movie-card {
    width: 208px;
}
/* Плеер: контейнер и источники */
.player-source-controls:where(:not([hidden])) {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}
.player-source-controls > [aria-pressed="true"] {
    border-color: #ffb800;
    color: #ffb800;
}
/* Штатные элементы DLE */
.catalog-grid > .native-pagination {
    grid-column: 1/-1;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-type-link {
    padding: 0 0 5px;
    border-bottom: 2px solid transparent;
    color: #9a9aa5;
    font-weight: 650;
    transition:
        color 0.2s,
        border-color 0.2s;
}
.pr-category-navigation {
    margin-bottom: 22px;
    min-width: 0;
}
/* Жанры и прокрутка */
.pr-genre-links:where(:not([hidden])) {
    display: flex;
    gap: 8px;
    min-width: 0;
    flex: 1;
    overflow-x: auto;
    scrollbar-width: none;
    padding: 2px;
}
.pr-genre-chip:hover {
    color: #ffb800;
    border-color: #ffb80070;
    background: #ffb8000c;
}
/* Расширенный фильтр */
.pr-filter-open {
    flex-shrink: 0;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px dashed #353540;
    background: 0 0;
    color: #d2d2db;
    font-size: 13px;
    font-weight: 700;
    transition:
        border-color 0.2s,
        color 0.2s;
}
.pr-filter-open:hover {
    color: #ffb800;
    border-color: #ffb800;
}
.pr-filter-dialog {
    width: min(760px, calc(100% - 28px));
    max-height: 90dvh;
    overflow: auto;
}
.pr-filter-grid:where(:not([hidden])) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.pr-filter-grid label:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
    font-size: 13px;
    color: #a4a4b0;
}
.pr-filter-grid select {
    width: 100%;
    min-height: 48px;
    background: #15151d;
    color: #eeeef2;
    border: 1px solid #30303a;
    border-radius: 10px;
    padding: 10px 12px;
}
.pr-filter-actions:where(:not([hidden])) {
    display: flex;
    gap: 12px;
    margin-top: 24px;
}
.pr-filter-actions .outline-button {
    height: 46px;
    font-size: 14px;
    padding: 0 20px;
}
/* Главная: слайдер и миниатюры */
.pr-hero-slider {
    position: relative;
    height: 520px;
    overflow: hidden;
    background: #0a0a0c;
}
.pr-hero-slider .home-hero {
    inset: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    height: 100%;
    min-height: 0;
}
.pr-hero-slider .home-hero.is-active {
    opacity: 1;
    pointer-events: auto;
    z-index: 2;
    animation: prHeroIn 0.46s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
.pr-hero-slider .home-hero.is-leaving {
    opacity: 0;
    z-index: 1;
    animation: prHeroOut 0.46s ease both;
}
.pr-hero-backdrop {
    position: absolute;
    inset: -60px;
    filter: blur(64px) saturate(1.1) brightness(0.44);
    background: #16161c;
}
.pr-hero-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, #0a0a0c35, #0a0a0ca8 70%),
        linear-gradient(0deg, #0a0a0c 0, #0a0a0c75 100%);
}
.pr-hero-slider .hero-poster:where(:not([hidden])) {
    position: relative;
    display: block;
    width: 216px;
    aspect-ratio: 2/3;
    overflow: hidden;
    border-radius: 14px;
    border: 1px solid #ffb80040;
    box-shadow:
        0 0 45px #ffb80016,
        0 20px 50px #0008;
}
.pr-hero-slider .hero-copy > p:where(:not([hidden])) {
    color: #b3b3bd;
    margin: 0;
    max-width: 65ch;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 18px;
    line-height: 1.5;
}
.pr-hero-slider .pr-hero-actions:where(:not([hidden])) {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0;
    width: auto;
}
.pr-hero-actions > a:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-sizing: border-box;
    height: 50px;
    padding: 0 24px;
    font-size: 16px;
    border-radius: 12px;
}
.pr-hero-actions svg {
    width: 20px;
    height: 20px;
    stroke: none;
}
.pr-hero-actions .primary-button {
    box-shadow: 0 0 30px #ffb80025;
}
.pr-hero-actions .outline-button {
    background: #ffffff06;
}
.pr-hero-dock:where(:not([hidden])) {
    position: absolute;
    z-index: 5;
    right: max(48px, calc((100% - 1304px) / 2));
    bottom: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
}
.pr-hero-dock .hero-thumbs:where(:not([hidden])) {
    display: flex;
    width: 434px;
    max-width: calc(100vw - 140px);
    box-sizing: content-box;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-behavior: smooth;
    gap: 10px;
    padding: 10px 4px;
}
.pr-hero-dock .hero-thumb:where(:not([hidden])) {
    position: relative;
    flex: 0 0 64px;
    display: block;
    padding: 0;
    border: 0;
    border-radius: 9px;
    background: 0 0;
    transition:
        transform 0.3s,
        box-shadow 0.3s;
    width: 64px;
}
.pr-hero-dock .hero-thumb > span:where(:not([hidden])) {
    display: block;
    position: relative;
    aspect-ratio: 2/3;
    border-radius: 9px;
    overflow: hidden;
    opacity: 0.46;
    border: 1px solid #363640;
    transition:
        opacity 0.3s,
        border-color 0.3s;
}
.pr-hero-dock .hero-thumb[aria-pressed="true"] {
    transform: scale(1.06);
    box-shadow: 0 0 22px #ffb80030;
}
.pr-hero-dock .hero-thumb[aria-pressed="true"] > span {
    opacity: 1;
    border-color: #ffb800;
}
.pr-hero-arrow:where(:not([hidden])) {
    display: grid;
    place-items: center;
    padding: 0;
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    border: 1px solid #393943;
    border-radius: 50%;
    background: #111117da;
    color: #d4d4df;
    box-shadow: 0 8px 22px #0006;
    transition:
        color 0.2s,
        border-color 0.2s,
        background 0.2s,
        scale 0.25s;
}
.pr-hero-arrow svg,
.pr-row-arrow svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-hero-arrow:hover {
    color: #ffb800;
    border-color: #ffb80099;
    background: #1b1912;
    scale: 1.08;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-row-arrow:hover:not(:disabled) {
    color: #ffb800;
    border-color: #ffb80099;
    background: #1b1912;
    scale: 1.08;
}
.pr-row-arrow:disabled {
    opacity: 0;
    pointer-events: none;
}
/* Главная: разделы, табы и подборки */
.pr-home-section {
    padding: 48px 48px 0;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-section-head:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 26px;
    margin-bottom: 18px;
}
.pr-section-head h2 {
    margin: 0;
    letter-spacing: -0.03em;
    line-height: 1.2;
}
.pr-section-title-link {
    color: inherit;
    text-decoration: none;
    transition: color 0.2s;
}
.pr-section-title-link:hover,
.pr-section-title-link:focus-visible {
    color: #ffb800;
}
/* Главная: разделы, табы и подборки */
.pr-home-tabs:where(:not([hidden])) {
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid #25252e;
    background: #111117;
    border-radius: 12px;
}
.pr-home-tabs button {
    border: 0;
    background: 0 0;
    color: #81818f;
    padding: 9px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 650;
    transition:
        color 0.2s,
        background 0.2s;
}
.pr-home-tabs button:hover {
    color: #eeeef2;
}
.pr-home-tabs button[aria-selected="true"] {
    background: #ffb800;
    color: #111115;
    box-shadow: 0 3px 14px #ffb80018;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-all-link {
    margin-left: auto;
    font-size: 13px;
    color: #8b8b9a;
}
.pr-all-link:hover {
    color: #ffb800;
}
.pr-row-wrap {
    position: relative;
}
/* Главная: разделы, табы и подборки */
.pr-home-section .poster-row:where(:not([hidden])) {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
    padding: 12px 0 22px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-row-arrow:where(:not([hidden])) {
    display: grid;
    place-items: center;
    padding: 0;
    flex-shrink: 0;
    border: 1px solid #393943;
    border-radius: 50%;
    color: #d4d4df;
    box-shadow: 0 8px 22px #0006;
    transition:
        color 0.2s,
        border-color 0.2s,
        background 0.2s,
        scale 0.25s;
    position: absolute;
    z-index: 4;
    top: 39%;
    translate: 0-50%;
    width: 46px;
    height: 46px;
    border-color: #ffffff24;
    background: #13131ae8;
    backdrop-filter: blur(8px);
}
.pr-row-arrow.is-prev {
    left: -20px;
}
.pr-row-arrow.is-next {
    right: -20px;
}
.pr-section-status {
    font-size: 13px;
    color: #a0a0ae;
}
/* Постеры в каталоге */
.poster-row[aria-busy] {
    transition: opacity 0.2s;
}
.poster-row[aria-busy="true"] {
    opacity: 0.55;
}
/* Поиск и подсказки */
.pr-search-panel {
    grid-column: 1/-1;
    background: #101016;
    border: 1px solid #25252e;
    border-radius: 18px;
    padding: 30px;
    box-sizing: border-box;
    margin: 0 0 24px;
    min-width: 0;
}
.pr-search-panel h1 {
    margin: 0 0 10px;
    letter-spacing: -0.03em;
}
.pr-search-intro {
    margin: 0 0 24px;
    color: #858594;
    font-size: 14px;
    line-height: 1.6;
}
.pr-search-simple:where(:not([hidden])) {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.pr-search-simple > input[type="search"],
.pr-search-simple > input[type="text"] {
    flex: 1 1 260px;
    min-width: 0;
}
.pr-search-panel input:not([type="checkbox"]):not([type="radio"]) {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    background: #17171f;
    color: #ededf3;
    border: 1px solid #34343f;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 14px;
    min-height: 46px;
}
.pr-search-panel select,
.pr-search-panel textarea {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    background: #17171f;
    color: #ededf3;
    border: 1px solid #34343f;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 14px;
    min-height: 46px;
}
.pr-search-panel select[multiple] {
    min-height: 140px;
    padding: 8px;
}
.pr-search-panel option {
    background: #17171f;
    color: #d5d5df;
    padding: 7px;
}
.pr-search-panel input[type="checkbox"],
.pr-search-panel input[type="radio"] {
    accent-color: #ffb800;
}
.pr-search-field:where(:not([hidden])),
.pr-search-panel label:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: #a2a2af;
    font-size: 13px;
    min-width: 0;
}
.pr-search-grid:where(:not([hidden])) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
}
.pr-search-wide {
    grid-column: 1/-1;
}
.pr-search-check label:where(:not([hidden])),
.pr-search-extra label > span:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 7px;
}
.pr-search-extra {
    margin-top: 24px;
    border-top: 1px solid #25252e;
    padding-top: 18px;
}
.pr-search-extra summary {
    color: #b6b6c2;
    font-size: 14px;
    cursor: pointer;
    margin-bottom: 18px;
}
.pr-search-actions:where(:not([hidden])) {
    display: flex;
    gap: 12px;
    margin-top: 24px;
}
.pr-search-actions .outline-button,
.pr-search-simple .outline-button {
    height: 46px;
    font-size: 13px;
    padding: 0 20px;
}
.pr-search-result {
    color: #d3d3de;
    font-size: 14px;
    margin: 24px 0 0;
}
.pr-search-suggestions {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    z-index: 70;
    padding: 6px;
    background: #121219;
    border: 1px solid #34343f;
    border-radius: 14px;
    box-shadow: 0 18px 45px #000a;
    max-height: 360px;
    overflow: auto;
}
.pr-search-suggestions a:where(:not([hidden])) {
    display: block;
    padding: 12px 14px;
    color: #c8c8d3;
    font-size: 13px;
    line-height: 1.4;
    border-radius: 8px;
    transition:
        background 0.2s,
        color 0.2s;
}
.pr-search-suggestions a:hover {
    background: #ffb80010;
    color: #ffb800;
    outline: 0;
}
.pr-search-suggestions a:focus {
    background: #ffb80010;
    color: #ffb800;
    outline: 0;
}
/* Полная новость: сведения */
.pr-film-badges > span:empty:where(:not([hidden])) {
    display: none;
}
/* Полная новость: компоновка */
.film-meta > .pr-meta-quality:where(:not([hidden])),
.film-meta > .pr-meta-voice:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
/* Мобильное меню */
.pr-film-title-line .provider-score > small:where(:not([hidden])),
.pr-mobile-trigger:where(:not([hidden])) {
    display: none;
}
.pr-mobile-menu {
    box-sizing: border-box;
    position: fixed;
    inset: 0 0 0 auto;
    margin: 0;
    width: min(420px, 100vw);
    height: 100dvh;
    max-height: 100dvh;
    max-width: 100vw;
    padding: 24px;
    background: #101015;
    border: 0;
    border-left: 1px solid #30303b;
    color: #eeeef4;
    overflow: auto;
    box-shadow: -20px 0 80px #0008;
}
.pr-mobile-menu::backdrop {
    background: #000a;
    backdrop-filter: blur(6px);
}
/* Панели и их заголовки */
.pr-drawer-head:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 24px;
}
.pr-drawer-head h2 {
    margin: 0;
    letter-spacing: -0.03em;
}
.pr-drawer-head button:where(:not([hidden])) {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid #363640;
    border-radius: 50%;
    background: #1b1b23;
    color: #d4d4df;
    font-size: 26px;
}
/* Мобильное меню */
.pr-mobile-menu .search-wrap:where(:not([hidden])) {
    margin: 0 0 24px;
    width: 100%;
    display: block;
    position: relative;
}
.pr-mobile-menu .search-wrap input {
    height: 48px;
    font-size: 14px;
    padding-left: 48px;
}
.pr-mobile-menu .main-nav:where(:not([hidden])) {
    grid-template-columns: 1fr 1fr;
    min-height: 0;
    padding: 0;
    white-space: normal;
    display: grid;
    grid-column: auto;
    overflow: visible;
    gap: 10px;
    font-size: 13px;
}
.pr-mobile-menu .main-nav > .pr-type-link:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    text-align: center;
    border: 1px solid #30303b;
    border-radius: 10px;
    background: #181820;
    color: #aaaab7;
    padding: 9px 10px;
}
.pr-mobile-menu .main-nav > .pr-type-link.is-active {
    border-color: #ffb80090;
    color: #ffb800;
    background: #ffb8000b;
}
.pr-mobile-menu .main-nav > .login-button {
    grid-column: 1/-1;
    margin-top: 8px;
    width: 100%;
    position: static;
    padding: 13px 18px;
}
.pr-mobile-menu .pr-genre-links:where(:not([hidden])) {
    display: flex;
    flex-wrap: wrap;
    overflow: visible;
    padding: 0;
    gap: 8px;
}
.pr-mobile-menu .pr-genre-chip {
    font-size: 12px;
    padding: 8px 12px;
}
.pr-mobile-menu > .pr-filter-open {
    width: 100%;
    border-radius: 11px;
    padding: 13px;
}
/* Полная новость: компоновка */
.film-hero > div:nth-of-type(3) {
    background: linear-gradient(
        180deg,
        rgba(10, 10, 12, 0.87) 0,
        rgba(10, 10, 12, 0.94) 58%,
        #0a0a0c 100%
    );
}
/* Главная: слайдер и миниатюры */
.pr-hero-slider .home-hero-inner:where(:not([hidden])) {
    top: auto;
    bottom: auto;
    display: grid;
    box-sizing: border-box;
    max-width: 1400px;
    height: 100%;
    margin: 0 auto;
    position: relative;
    grid-template-columns: 216px minmax(0, 1fr);
    gap: 38px;
    padding: 28px 48px 132px;
    align-items: start;
}
.pr-hero-slider .hero-copy:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    min-width: 0;
    align-self: start;
}
.pr-hero-score:where(:not([hidden])) {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid #ffcf5a99;
    border-radius: 10px;
    background: linear-gradient(135deg, #2b2412f2, #0e0e14ef);
    color: #ffd16a;
    box-shadow:
        0 0 24px #ffb80045,
        0 7px 20px #0008;
    backdrop-filter: blur(8px);
}
.pr-hero-score b {
    font-size: 23px;
    font-weight: 850;
    line-height: 1;
}
.pr-hero-score small {
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 0.03em;
    color: #e6c477;
}
.pr-hero-meta:where(:not([hidden])) {
    display: flex;
    flex-wrap: wrap;
    color: #8d8d9b;
    align-items: center;
    font-size: 12px;
    gap: 8px;
}
.pr-hero-meta > span:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    min-height: 31px;
    box-sizing: border-box;
    padding: 6px 11px;
    border: 1px solid #3c3c47;
    border-radius: 8px;
    background: #ffffff05;
    color: #adadbb;
    line-height: 1.35;
    font-size: 13px;
}
.pr-hero-meta > span:first-child {
    border-color: #ffb80050;
    background: #ffb8000a;
    color: #e2ca8c;
}
.pr-hero-meta .pr-age {
    border: 1px solid #393943;
    border-radius: 5px;
    padding: 6px 11px;
    font-size: 13px;
}
/* Главная: слайдер */
.film-hero-inner > .film-poster {
    margin-top: -11.2px;
}
/* Полная новость: сведения */
.pr-film-title-line h1 {
    min-width: 0;
    max-width: 100%;
    margin: 0;
}
.pr-film-title-line .provider-scores:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    flex-shrink: 0;
}
.pr-film-title-line .provider-score:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 1px solid #ff8b4359;
    border-radius: 10px;
    background: linear-gradient(140deg, #2a1a15e6, #151216f2);
    color: #ff9d5c;
    box-shadow:
        0 5px 16px #0004,
        inset 0 1px 0#ffffff08;
}
.pr-film-title-line .provider-score > span {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.015em;
}
.pr-film-title-line .provider-score > b {
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
}
.pr-film-title-line .provider-score.imdb {
    border-color: #f4cc5655;
    background: linear-gradient(140deg, #2a2415e6, #171614f2);
    color: #f4cf62;
}
.pr-film-breadcrumbs > a {
    text-underline-offset: 4px;
    transition:
        color 0.2s,
        text-shadow 0.2s;
    color: #bda86e;
}
.pr-film-breadcrumbs > a:hover {
    text-decoration: underline;
    text-shadow: 0 0 12px #ffb80025;
    color: #ffd06a;
}
.pr-film-layout > .pr-film-breadcrumbs {
    flex-wrap: wrap;
    line-height: 16px;
    margin: 0 0 12px;
    min-width: 0;
}
/* Главная: слайдер */
.pr-film-layout > .film-hero-inner {
    margin: 0;
    max-width: 1280px;
    padding: 0;
}
/* Полная новость: сведения */
.pr-film-layout .film-poster {
    margin-top: 0;
}
.pr-film-layout .film-info {
    align-self: start;
}
/* Список комментариев и форма отзыва */
.pr-discussion > h2 {
    margin: 0 0 26px;
    font-weight: 800;
    letter-spacing: -0.03em;
}
.pr-discussion-layout:where(:not([hidden])) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}
.pr-discussion-compose,
.pr-discussion-feed {
    min-width: 0;
}
/* Комментарии и голосование */
.pr-discussion-compose:not(:has(.native-comment-form)):where(:not([hidden])),
.pr-discussion-feed:not(:has(.pr-comment)):where(:not([hidden])) {
    display: none;
}
.pr-discussion-layout:has(.pr-comment):has(.native-comment-form) {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
}
/* Список комментариев и форма отзыва */
.pr-discussion .native-editor textarea {
    min-height: 190px;
    height: 190px;
    max-width: 100%;
    line-height: 1.6;
}
.pr-discussion .comment-submit {
    flex-wrap: wrap;
}
.pr-discussion .comment-submit > span {
    line-height: 1.5;
}
.pr-discussion .comment-submit > .primary-button {
    margin-left: auto;
    min-height: 42px;
}
/* Комментарии и голосование */
.pr-discussion-layout:has(.pr-comment) .guest-fields {
    flex-direction: column;
}
/* Список комментариев и форма отзыва */
.pr-discussion .comments-list #dle-comments-list > .dle-comments-navigation {
    margin-top: 20px;
}
/* Плеер: контейнер и источники */
.player-source-controls > .outline-button {
    padding-inline: 23.4px;
    font-size: 14.4px;
    height: 43.2px;
    border-radius: 11px;
}
/* Комментарии и голосование */
.pr-discussion-layout:has(.pr-comment):has(.native-comment-form)
    > .pr-discussion-compose {
    position: sticky;
    top: calc(var(--pr-header-height, 90px) + 20px);
    max-height: calc(100dvh - var(--pr-header-height, 90px) - 40px);
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: #3a3526 transparent;
    border-radius: 16px;
}
.pr-discussion .pr-comment:where(:not([hidden])) {
    margin-bottom: 16px;
    grid-template-columns: 42px minmax(0, 1fr);
    display: grid;
    gap: 0 14px;
}
.pr-discussion .pr-comment > span {
    grid-column: 1;
    grid-row: 1;
}
.pr-discussion .pr-comment > div:where(:not([hidden])) {
    display: contents;
}
.pr-discussion .pr-comment > div > div:first-child {
    flex-wrap: wrap;
    grid-column: 2;
    grid-row: 1;
    min-height: 42px;
    align-content: center;
    gap: 6px 12px;
}
.pr-discussion .pr-comment > div > .comment-tools,
.pr-discussion .pr-comment > div > .pr-comment-text {
    grid-column: 1/-1;
    min-width: 0;
}
.pr-discussion .pr-comment > div > div:last-child {
    grid-column: 1/-1;
    min-width: 0;
}
.pr-discussion .pr-comment .pr-comment-text {
    margin: 14px 0 0;
    font-size: 16px;
    line-height: 1.65;
    color: #c5c5d1;
    overflow-wrap: anywhere;
    text-wrap: pretty;
}
.pr-comment-text p {
    margin: 0 0 12px;
}
.film-description p:last-child,
.pr-comment-text p:last-child {
    margin-bottom: 0;
}
/* Прокрутка наверх */
.pr-back-top:where(:not([hidden])) {
    position: fixed;
    right: 24px;
    bottom: max(24px, env(safe-area-inset-bottom));
    z-index: 40;
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid #ffb80080;
    border-radius: 14px;
    background: #181714ed;
    color: #ffce62;
    box-shadow:
        0 7px 25px #0007,
        0 0 18px #ffb80012;
    backdrop-filter: blur(10px);
    transition:
        background 0.2s,
        box-shadow 0.2s,
        transform 0.2s;
}
.pr-back-top svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-back-top:hover {
    background: #282213;
    box-shadow:
        0 8px 28px #0008,
        0 0 24px #ffb80025;
    transform: translateY(-3px);
}
.pr-back-top:active {
    transform: translateY(0);
}
body:has(dialog[open]) .pr-back-top {
    visibility: hidden;
}
/* Главная: слайдер и миниатюры */
.pr-hero-slider .hero-copy > h2:where(:not([hidden])) {
    letter-spacing: -0.045em;
    margin: 0;
    max-width: 22ch;
    text-wrap: balance;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.02;
}
/* Полная новость: сведения */
.pr-film-description {
    padding-top: 36px;
}
.pr-film-related > div:first-child {
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
}
.pr-film-related h2 {
    line-height: 1.2;
}
/* Список комментариев и форма отзыва */
.pr-discussion,
.pr-film-layout {
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: content-box;
    padding: 44px 40px 0;
}
/* Полная новость: сведения */
.pr-film-layout {
    position: relative;
    padding: 16px 40px 32px;
}
.pr-film-related {
    min-width: 0;
}
/* Постер и пользовательский рейтинг */
.pr-poster-votes:where(:not([hidden])) {
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 8px;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 4px;
    padding: 7px;
    border: 1px solid #ffffff1c;
    border-radius: 13px;
    background: linear-gradient(120deg, #11151aeb, #171510f2);
    box-shadow:
        0 8px 25px #0008,
        inset 0 1px 0#ffffff08;
    backdrop-filter: blur(14px);
}
.pr-poster-dislike svg {
    transform: rotate(180deg);
}
.pr-poster-votes button:disabled {
    opacity: 0.45;
    cursor: default;
}
.pr-poster-votes[aria-busy="true"] {
    opacity: 0.75;
}
.pr-poster-approval:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    min-height: 46px;
    border: 1px solid #e6bc5540;
    border-radius: 11px;
    background: #e8b42a09;
    box-shadow: 0 0 15px #ffb8000a;
}
.pr-poster-approval b {
    font-size: 20px;
    line-height: 1.15;
    color: #f1cf78;
}
.pr-poster-approval small {
    font-size: 8px;
    color: #a79671;
    margin-top: 3px;
}
/* Просмотр: плеер и действия */
.pr-player-heading {
    margin: 0 0 16px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: -0.025em;
    color: #e3e3eb;
}
/* Главная: слайдер и миниатюры */
.cinema-shell > .pr-hero-slider,
.cinema-shell > .site-header {
    flex-shrink: 0;
}
/* Штатные компоненты и вспомогательные состояния */
.cinema-shell > .site-footer {
    flex-shrink: 0;
    margin-top: 44px;
}
/* Главная: слайдер и миниатюры */
.pr-hero-arrow[data-hero-step="1"] {
    animation: prHeroArrowPulse 3.8s ease-in-out infinite;
}
.pr-hero-arrow[data-hero-step="1"]:hover {
    animation-play-state: paused;
}
.pr-hero-arrow[data-hero-step="1"]:focus-visible {
    animation-play-state: paused;
}
/* Постер и пользовательский рейтинг */
.pr-poster-approval.pr-score-ring {
    position: relative;
    width: 62px;
    height: 62px;
    min-width: 62px;
    min-height: 62px;
    border: 0;
    border-radius: 50%;
    background:
        radial-gradient(
            circle at 32% 22%,
            rgba(var(--pr-score-rgb), 0.19),
            rgba(var(--pr-score-rgb), 0.085) 78%
        ),
        #11151a;
    box-shadow: none;
    color: var(--pr-score-light);
    gap: 0;
}
/* Круг пользовательского рейтинга */
.pr-score-ring > svg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-ring-track {
    fill: none;
    stroke-width: 3.2;
    stroke: #ffffff0b;
}
.pr-ring-fill {
    fill: none;
    stroke-width: 3.2;
    stroke-linecap: round;
}
/* Круг пользовательского рейтинга */
.pr-score-ring > b {
    font-size: 20px;
    color: var(--pr-score-light);
}
.pr-score-ring > small {
    font-size: 8px;
    color: #8f929c;
    margin-top: 1px;
}
/* Форма комментария */
.comment-avatar {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border: 1px solid #2a2a34;
}
/* Комментарии и голосование */
.comment-avatar,
.pr-comment-avatar {
    overflow: hidden;
    border-radius: 50%;
    background: #20232b;
}
.comment-avatar img:where(:not([hidden])),
.pr-comment-avatar img:where(:not([hidden])) {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}
/* Site mark replaces only the native missing-photo image in comments. */
.pr-comment-avatar:has(> img[src$="/dleimages/noavatar.png"]) {
    background: #111318 url("../assets/favicon-192.png?v=lf-bold-20261028")
        center / cover no-repeat;
}
.pr-comment-avatar > img[src$="/dleimages/noavatar.png"] {
    opacity: 0;
}
/* Site mark replaces only the native missing-photo image in comments. */
.pr-discussion-layout:has(.pr-comment) .comment-avatar:where(:not([hidden])) {
    display: block;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-spoiler-button:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 13px;
    border: 1px solid #34343f;
    border-radius: 9px;
    background: #ffffff04;
    color: #b4b4c0;
    font-size: 13px;
    line-height: 1.25;
    transition:
        color 0.2s,
        border-color 0.2s;
}
/* Просмотр: плеер и действия */
.pr-player-report svg,
.pr-spoiler-button svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-spoiler-button:hover {
    color: #edcc80;
    border-color: #d3a94766;
}
/* Просмотр: плеер и действия */
.pr-player-tools:where(:not([hidden])) {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
    flex-wrap: wrap;
    padding: 15px 0;
    border-bottom: 1px solid #24242d;
}
.pr-player-share:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.pr-player-share > span {
    font-size: 12px;
    color: #767683;
    margin-right: 4px;
}
.pr-player-share > a,
.pr-player-share > button {
    padding: 7px 10px;
    border: 1px solid #30303a;
    border-radius: 8px;
    background: #ffffff03;
    color: #aeb5c4;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.25;
}
.pr-player-share > a:hover,
.pr-player-share > button:hover {
    color: #e8c978;
    border-color: #ac8a4560;
}
.pr-player-report > a:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    color: #8d8d9b;
}
.pr-player-report > a:hover {
    color: #d6bf8a;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-franchise-section,
.pr-member-collections {
    max-width: 1280px;
    margin: 0 auto;
    padding: 40px 40px 0;
}
.pr-franchise-section > h2,
.pr-member-collections > h2 {
    margin: 0 0 20px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: -0.025em;
}
/* Постеры в каталоге */
.pr-franchise-section .poster-row:where(:not([hidden])) {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    padding: 10px 0 20px;
    scrollbar-width: none;
}
/* Карточки каталога */
.pr-franchise-section .movie-card {
    width: 208px;
    flex: 0 0 208px;
}
/* Карточки подборок */
.pr-member-collection-row:where(:not([hidden])) {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    padding: 4px 0 10px;
    scrollbar-width: none;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-member-collection:where(:not([hidden])) {
    position: relative;
    isolation: isolate;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 8px;
    flex: 0 0 280px;
    min-height: 146px;
    padding: 24px;
    border: 1px solid #2d2d37;
    border-radius: 14px;
    background: linear-gradient(125deg, #20212b, #101015);
    overflow: hidden;
    color: #dedee6;
}
.pr-member-collection > img {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.14;
    filter: saturate(0.55);
}
.pr-member-collection:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(0deg, #0c0c12ee, #10101530);
}
.pr-member-collection > span {
    font-size: 19px;
    font-weight: 750;
    line-height: 1.25;
}
.pr-member-collection > small {
    font-size: 11px;
    color: #858595;
}
.pr-member-collection:hover {
    border-color: #ae8b4060;
    color: #ead097;
}
/* Системные диалоги DLE */
.ui-dialog.dle-popup-complaint {
    box-sizing: border-box;
    transform: translateX(-50%);
    border: 1px solid #35353f;
    border-radius: 16px;
    background: #101016;
    color: #c4c4d0;
    box-shadow: 0 25px 80px #000a;
    width: min(560px, calc(100vw - 32px));
    max-width: calc(100vw - 32px);
    left: 50%;
}
.dle-popup-complaint .ui-dialog-content {
    background: 0 0;
    color: #babac7;
    padding: 18px;
    font-size: 14px;
    line-height: 1.6;
}
.dle-popup-complaint .ui-dialog-titlebar {
    background: 0 0;
    border: 0;
    color: #ededf3;
    padding: 18px;
}
/* Штатные компоненты и вспомогательные состояния */
.dle-popup-complaint input,
.dle-popup-complaint textarea {
    box-sizing: border-box;
    max-width: 100%;
    border: 1px solid #363641;
    border-radius: 9px;
    background: #191920;
    color: #ededf3;
    padding: 10px;
    font-family: inherit;
}
/* Системные диалоги DLE */
.dle-popup-complaint .ui-dialog-buttonpane {
    background: 0 0;
    border: 0;
    padding: 0 18px 18px;
}
.dle-popup-complaint .ui-dialog-buttonpane button {
    border: 1px solid #363641;
    border-radius: 9px;
    background: #21212a;
    color: #ccc;
    padding: 9px 13px;
}
.dle-popup-complaint .ui-dialog-buttonpane button:last-child {
    background: #ffb800;
    color: #101014;
    border-color: #ffb800;
}
/* Полная новость: сведения */
.pr-film-heading:where(:not([hidden])) {
    display: contents;
}
/* Просмотр: плеер и действия */
.pr-player-share > .pr-share-icon:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 36px;
    height: 36px;
    padding: 9px;
    border: 1px solid transparent;
    border-radius: 9px;
    color: #fff;
    transition:
        transform 0.2s ease,
        filter 0.2s ease,
        box-shadow 0.2s ease;
}
.pr-player-share > .pr-share-icon svg:where(:not([hidden])) {
    display: block;
    width: 18px;
    height: 18px;
    fill: currentColor;
    flex-shrink: 0;
}
.pr-player-share > .pr-share-vk {
    background: #07f;
}
.pr-player-share > .pr-share-telegram {
    background: #26a5e4;
}
.pr-player-share > .pr-share-whatsapp {
    background: #209e51;
}
.pr-player-share > .pr-share-odnoklassniki {
    background: #ee8208;
}
.pr-player-share > .pr-share-facebook {
    background: #1877f2;
}
.pr-player-share > .pr-share-x {
    background: #17171d;
    border-color: #383840;
}
.pr-player-share > .pr-share-copy {
    background: #1a1b22;
    border-color: #373842;
    color: #aeb8c8;
}
.pr-player-share > .pr-share-icon:hover {
    color: #fff;
    filter: brightness(1.12);
    transform: translateY(-2px);
    box-shadow: 0 5px 15px #0005;
    border-color: #ffffff40;
}
.pr-player-share > .pr-share-icon:focus-visible {
    outline: 2px solid #ffcf62;
    outline-offset: 3px;
}
.pr-player-share > .pr-share-copy svg {
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
/* Кнопки социальных сетей */
.pr-share-copy:not(.is-copied) .pr-copy-done:where(:not([hidden])) {
    display: none;
}
.pr-share-copy.is-copied .pr-copy-link:where(:not([hidden])),
body
    > .ui-dialog
    .ui-dialog-titlebar-close
    .ui-button-icon-space:where(:not([hidden])),
body > .ui-dialog .ui-dialog-titlebar-close .ui-icon:where(:not([hidden])) {
    display: none;
}
.pr-share-copy.is-copied .pr-copy-done:where(:not([hidden])) {
    display: block;
}
/* Просмотр: плеер и действия */
.pr-player-share > .pr-share-copy.is-copied {
    color: #79c995;
    border-color: #79c99588;
}
/* Системные диалоги DLE */
body > .ui-dialog {
    box-sizing: border-box;
    transform: translateX(-50%);
    border: 1px solid #3a3527;
    border-radius: 17px;
    background: linear-gradient(145deg, #19191f, #101014 74%);
    color: #c4c4d0;
    font-family: Manrope, sans-serif;
    box-shadow:
        0 28px 100px #000b,
        0 0 28px #ffb80008;
    overflow: hidden;
    max-width: calc(100vw - 32px);
    left: 50%;
}
.ui-dialog.dle-popup-alert,
.ui-dialog.dle-popup-confirm,
.ui-dialog.dle-popup-promt {
    width: min(480px, calc(100vw - 32px));
}
body > .ui-dialog .ui-dialog-titlebar {
    position: relative;
    box-sizing: border-box;
    padding: 22px 62px 19px 24px;
    border: 0;
    border-bottom: 1px solid #ffffff0a;
    background: 0 0;
    color: #f0f0f5;
}
body > .ui-dialog .ui-dialog-title:where(:not([hidden])) {
    float: none;
    display: block;
    font-size: 19px;
    font-weight: 750;
    line-height: 1.35;
    color: #eeeef4;
}
body > .ui-dialog .ui-dialog-titlebar-close {
    position: absolute;
    top: 50%;
    right: 17px;
    border-radius: 9px;
    color: #a5a5b2;
    transition:
        color 0.2s,
        border-color 0.2s,
        background 0.2s;
    width: 32px;
    height: 32px;
    margin-top: -16px;
    padding: 0;
    border: 1px solid #3a3a44;
    background: #ffffff04;
    box-shadow: none;
}
body > .ui-dialog .ui-dialog-titlebar-close:after,
body > .ui-dialog .ui-dialog-titlebar-close:before {
    content: "";
    position: absolute;
    top: 14px;
    left: 8px;
    width: 14px;
    height: 1.5px;
    border-radius: 2px;
    background: currentColor;
    transform: rotate(45deg);
}
body > .ui-dialog .ui-dialog-titlebar-close:after {
    transform: rotate(-45deg);
}
body > .ui-dialog .ui-dialog-titlebar-close:hover {
    color: #ffcf62;
    background: #ffb8000b;
    border-color: #a88a4659;
}
body > .ui-dialog .ui-dialog-content {
    box-sizing: border-box;
    max-width: 100%;
    padding: 22px 24px;
    border: 0;
    background: 0 0;
    color: #bdbdca;
    font-size: 14px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}
body > .ui-dialog label {
    color: #bdbdca;
}
body > .ui-dialog textarea {
    box-sizing: border-box;
    max-width: 100%;
    padding: 11px 12px;
    border: 1px solid #363641;
    border-radius: 9px;
    background: #121219;
    color: #eeeef4;
    font-family: inherit;
    line-height: 1.5;
}
body > .ui-dialog input:not([type="button"]):not([type="submit"]) {
    box-sizing: border-box;
    max-width: 100%;
    padding: 11px 12px;
    border: 1px solid #363641;
    border-radius: 9px;
    background: #121219;
    color: #eeeef4;
    font-family: inherit;
    line-height: 1.5;
}
body > .ui-dialog .ui-dialog-buttonpane {
    padding: 0 24px 23px;
    border: 0;
    background: 0 0;
    text-align: right;
}
body > .ui-dialog .ui-dialog-buttonset:where(:not([hidden])) {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 9px;
}
body > .ui-dialog .ui-dialog-buttonpane button:where(:not([hidden])) {
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 40px;
    min-width: 74px;
    padding: 0 20px;
    border: 1px solid #373741;
    border-radius: 10px;
    background: #22222b;
    color: #c6c6d1;
    font-family: inherit;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.2;
    box-shadow: none;
    transition:
        filter 0.2s,
        transform 0.2s;
}
body > .ui-dialog .ui-dialog-buttonpane button:last-child {
    border-color: #ffb800;
    background: #ffb800;
    color: #111115;
    box-shadow: 0 5px 20px #ffb80012;
}
body > .ui-dialog .ui-dialog-buttonpane button:hover {
    filter: brightness(1.1);
    transform: translateY(-1px);
}
body > .ui-dialog button:focus-visible {
    outline: 2px solid #ffcf62;
    outline-offset: 3px;
}
/* Базовые стили и типографика */
body {
    margin: 0;
    padding: 0;
    background: #0a0a0c;
    font-family: Manrope, Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    min-height: 100dvh;
}
/* Штатные компоненты и вспомогательные состояния */
.cinema-shell:where(:not([hidden])) {
    overflow: clip;
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
}
/* Подвал сайта */
.cinema-shell > .site-footer.pr-footer {
    border-top: 1px solid #202027;
    background: #09090c;
    margin-top: 32px;
}
.pr-footer-inner:where(:not([hidden])) {
    box-sizing: border-box;
    max-width: 1400px;
    margin: 0 auto;
    padding: 28px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px 32px;
}
.pr-footer-identity:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 9px;
    flex-shrink: 0;
}
.pr-footer-brand:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #e2e2e9;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -0.035em;
}
.pr-footer-brand > span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 12px #ffb80070;
}
.pr-footer-identity > small {
    font-size: 11px;
    line-height: 1.5;
    color: #70707d;
}
.pr-footer-links:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px 23px;
    min-width: 0;
}
.pr-footer-links > a {
    font-size: 12px;
    line-height: 1.5;
    color: #90909d;
    transition: color 0.2s;
}
.pr-footer-links > a:hover {
    color: #e9c875;
}
.pr-footer-links > a[href^="mailto:"] {
    color: #b7a77d;
    overflow-wrap: anywhere;
}
/* Системные диалоги DLE */
body
    > .ui-dialog:is(
        .dle-popup-alert,
        .dle-popup-confirm,
        .dle-popup-promt,
        .dle-popup-complaint
    )
    .ui-dialog-content {
    max-height: 60dvh;
    overflow-y: auto;
    height: auto;
    min-height: 0;
}
/* Шапка сайта */
.pr-site-header:where(:not([hidden])) {
    position: sticky;
    top: 0;
    z-index: 40;
    box-sizing: border-box;
    align-items: center;
    border-bottom: 1px solid #22222a;
    background: #0c0c10ed;
    backdrop-filter: blur(20px);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) minmax(210px, 320px) auto;
    gap: 22px;
    padding: 17px 30px;
}
.pr-site-header .brand:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #f2f2f5;
    font-weight: 850;
    letter-spacing: -0.035em;
    white-space: nowrap;
    font-size: 18px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-brand-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #ffb800;
    box-shadow: 0 0 17px #ffb80070;
    flex-shrink: 0;
}
/* Шапка сайта */
.pr-site-header > .main-nav:where(:not([hidden])) {
    align-items: center;
    justify-content: center;
    min-width: 0;
    white-space: nowrap;
    overflow: visible;
    padding: 0;
    grid-column: auto;
    display: flex;
    gap: 17px;
}
.pr-site-header .main-nav .pr-type-link:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    background: 0 0;
    color: #b0b0bd;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    transition:
        color 0.2s,
        border-color 0.2s;
    padding: 0;
    border: 0;
    border-bottom: 1px solid transparent;
}
.pr-site-header .main-nav .pr-type-link.is-active,
.pr-site-header .main-nav .pr-type-link:hover,
.pr-site-header .main-nav [aria-expanded="true"] {
    color: #ffce62;
    border-bottom-color: #ffb8007a;
}
.pr-site-header > .search-wrap:where(:not([hidden])) {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
    grid-row: auto;
    margin: 0;
}
/* Поиск и подсказки */
.search-wrap .pr-search-symbol {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #898995;
    stroke-width: 1.7;
    stroke-linecap: round;
    pointer-events: none;
}
/* Меню каталога */
.pr-navigation-menu .search-wrap input,
.pr-site-header .search-wrap input {
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #2b2b35;
    border-radius: 11px;
    background: #16161d;
    color: #eeeef4;
    line-height: 1.4;
    outline: 0;
    transition:
        border-color 0.2s,
        box-shadow 0.2s;
    height: 44px;
    padding: 0 45px 0 43px;
    font-size: 13px;
}
/* Штатные компоненты и вспомогательные состояния */
.search-wrap input::placeholder {
    color: #777784;
}
.search-wrap input:focus {
    border-color: #c59d4773;
    box-shadow: 0 0 0 3px #ffb80008;
}
/* Поиск и подсказки */
.pr-search-submit:where(:not([hidden])) {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: 1px solid #363641;
    border-radius: 8px;
    background: #22222b;
    color: #d0d0db;
}
.pr-search-submit svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-search-submit:hover {
    border-color: #a98b4680;
    color: #ffce62;
}
/* Шапка сайта */
.pr-site-header > .pr-header-account:where(:not([hidden])) {
    display: block;
}
/* Кнопка входа */
.pr-header-account > .login-button {
    min-height: 40px;
    padding: 0 17px;
    border: 1px solid #ffb800;
    border-radius: 10px;
    background: #ffb800;
    color: #241a05;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
    position: static;
}
/* Мобильное меню */
.pr-site-header > .pr-mobile-trigger:where(:not([hidden])) {
    display: none;
}
/* Меню каталога */
.pr-navigation-menu {
    position: fixed;
    inset: calc(var(--pr-header-height, 80px) + 10px) 30px auto 30px;
    margin: 0;
    box-sizing: border-box;
    width: calc(100% - 60px);
    max-width: none;
    height: auto;
    max-height: calc(100dvh - var(--pr-header-height, 80px) - 35px);
    padding: 26px;
    border: 1px solid #35323a;
    border-radius: 19px;
    background: linear-gradient(140deg, #19191f, #101014 72%);
    box-shadow: 0 25px 95px #000a;
    scrollbar-width: thin;
    scrollbar-color: #41414c transparent;
}
.pr-navigation-menu::backdrop {
    background: #0009;
    backdrop-filter: blur(5px);
}
.pr-navigation-menu[open] {
    animation: prMenuReveal 0.25s cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
/* Меню каталога: группы и ссылки */
.pr-menu-eyebrow:where(:not([hidden])) {
    display: block;
    margin-bottom: 5px;
    color: #bca36a;
    font-size: 9px;
    letter-spacing: 0.14em;
    font-weight: 750;
}
/* Меню каталога */
.pr-navigation-menu .pr-drawer-head h2 {
    color: #eeeef5;
}
.pr-navigation-menu .pr-drawer-head button {
    width: 34px;
    height: 34px;
    padding: 8px;
    border-radius: 10px;
    border-color: #393942;
    background: #ffffff04;
}
.pr-navigation-menu .pr-drawer-head button svg:where(:not([hidden])) {
    display: block;
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
}
.pr-navigation-menu .pr-drawer-head button:hover {
    color: #ffcf62;
    border-color: #bd984b70;
}
/* Меню каталога: группы и ссылки */
.pr-menu-panel {
    padding-top: 21px;
    animation: prMenuPanel 0.2s ease both;
}
.pr-menu-panel-head:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 22px;
}
.pr-menu-panel-head h3 {
    margin: 0;
    color: #e6e6ee;
    font-weight: 750;
}
.pr-menu-panel-head > a {
    font-size: 12px;
    color: #bfa66f;
    white-space: nowrap;
}
.pr-menu-panel-head > a:hover {
    color: #ffce62;
}
.pr-menu-year .pr-menu-links > a {
    justify-content: center;
    min-width: 50px;
}
.pr-menu-more {
    margin-top: 10px;
}
.pr-menu-more > summary {
    width: max-content;
    max-width: 100%;
    cursor: pointer;
    font-size: 11px;
    color: #b9a36e;
    list-style: none;
}
.pr-menu-more > summary:where(:not([hidden]))::-webkit-details-marker {
    display: none;
}
.pr-menu-more > summary:after {
    content: " +";
    color: #7e745a;
}
.pr-menu-more[open] > summary:after {
    content: " −";
}
.pr-menu-more > .pr-menu-links {
    margin-top: 9px;
}
.pr-menu-bottom:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #303039;
}
.pr-menu-links > a:focus-visible,
.pr-menu-panel-head a:focus-visible {
    outline-offset: 2px;
}
/* Меню каталога */
body:has(.pr-navigation-menu[open]) {
    overflow: hidden;
}
/* Постер и пользовательский рейтинг */
.pr-poster-votes button svg {
    stroke: currentColor;
    stroke-linejoin: round;
    flex-shrink: 0;
    stroke-linecap: round;
    width: 26px;
    height: 26px;
    fill: currentColor;
    fill-opacity: 1;
    stroke-width: 1.25;
}
.pr-poster-like {
    color: #6dd68f;
}
.pr-poster-dislike {
    color: #ef818b;
}
/* Полная новость: сведения */
.pr-film-ratings:where(:not([hidden])) {
    display: contents;
}
/* Поиск и подсказки */
.pr-search-suggestions a > strong:where(:not([hidden])) {
    display: block;
    color: #dedee8;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
}
.pr-search-suggestions a > small:where(:not([hidden])) {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-top: 4px;
    color: #858594;
    font-size: 11px;
    line-height: 1.45;
}
.pr-search-suggestions a.pr-search-more > strong {
    color: #d8be7d;
}
/* Постер и пользовательский рейтинг */
.pr-film-badges > .pr-poster-season:where(:not([hidden])),
.pr-poster-season:where(:not([hidden])) {
    background: linear-gradient(125deg, #effa96 0, #c5ed48 48%, #83c939 100%);
    border: 1px solid #d6f982;
    color: #183009;
    box-shadow:
        0 5px 16px #8dbb2a38,
        0 1px 4px #0005,
        inset 0 1px 0#ffffffbb,
        inset 0-1px 0#5c9d274d;
    font-weight: 800;
}
.pr-poster-season:where(:not([hidden])) {
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    z-index: 2;
    display: block;
    box-sizing: border-box;
    padding: 9px 10px;
    border-radius: 9px;
    backdrop-filter: blur(12px);
    font-size: 12px;
    text-align: center;
}
.pr-film-badges > .pr-poster-season:where(:not([hidden])) {
    display: none;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-platform-logo:where(:not([hidden])) {
    display: block;
    width: 64px;
    height: 24px;
    object-fit: contain;
    flex-shrink: 0;
}
.pr-platform-logo[src*="/disneyplus.svg"],
.pr-platform-logo[src*="/fx.svg"],
.pr-platform-logo[src*="/max.svg"],
.pr-platform-logo[src*="/peacock.svg"],
.pr-platform-logo[src*="/thecw.svg"] {
    filter: brightness(0) invert(1);
}
/* Полная новость: сведения */
.pr-film-title-line:where(:not([hidden])) {
    flex-wrap: wrap;
    min-width: 0;
    max-width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    justify-content: start;
    gap: 12px 20px;
    width: 100%;
}
.pr-film-title-line > h1 {
    grid-column: 1;
    grid-row: 1;
}
.pr-film-title-line > .pr-film-original {
    grid-column: 1/-1;
    grid-row: 2;
    font-family: "JetBrains Mono", monospace;
    font-size: 13px;
    line-height: 1.5;
    color: #a1a1ad;
    letter-spacing: 0.04em;
}
.pr-film-title-line > .pr-film-ratings > .provider-scores {
    grid-column: 2;
    grid-row: 1;
}
/* Полная новость: компоновка */
.film-meta .pr-platform-logo {
    width: 64px;
    height: 24px;
}
/* Полная новость: сведения */
.pr-film-badges:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}
/* Полная новость: компоновка */
.film-meta > .pr-meta-platform:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
/* Список комментариев и форма отзыва */
.pr-discussion .native-comment-form:where(:not([hidden])) {
    margin: 0;
    padding: 22px;
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}
.pr-discussion .comment-form-body,
.pr-discussion .native-editor {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}
.pr-discussion .guest-fields:where(:not([hidden])) {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
}
.pr-discussion .guest-fields label:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
    width: 100%;
}
.pr-discussion .comment-form-body input,
.pr-discussion .comment-form-body textarea {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
.pr-discussion .native-editor form,
.pr-discussion .native-editor > div {
    max-width: 100%;
    box-sizing: border-box;
}
/* Комментарии и голосование */
.pr-comment-actions:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 16px;
    font-size: 13px;
    font-weight: 650;
}
.pr-comment-votes:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 8px;
}
.pr-comment-votes > a:where(:not([hidden])) {
    display: inline-flex;
    border-radius: 999px;
    text-decoration: none;
}
.pr-comment-dislike:where(:not([hidden])),
.pr-comment-like:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 52px;
    min-height: 34px;
    box-sizing: border-box;
    padding: 6px 10px;
    border: 1px solid #6dd68f30;
    border-radius: 999px;
    transition:
        background 0.2s,
        border-color 0.2s,
        transform 0.2s;
}
.pr-comment-like:where(:not([hidden])) {
    background: #6dd68f0b;
    color: #6dd68f;
}
.pr-comment-dislike:where(:not([hidden])) {
    border-color: #ef818b30;
    background: #ef818b0b;
    color: #ef818b;
}
.pr-comment-votes svg:where(:not([hidden])) {
    display: block;
    width: 19px;
    height: 19px;
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 0.5;
    stroke-linejoin: round;
}
.pr-comment-dislike svg {
    transform: rotate(180deg);
}
.pr-comment-votes > a:hover > span {
    background: #ffffff0b;
    border-color: currentColor;
    transform: translateY(-1px);
}
.pr-comment-actions > a {
    color: #d5ba75;
}
.pr-comment-actions > a:hover {
    color: #ffcf62;
}
/* Меню каталога: группы и ссылки */
.pr-menu-tabs:where(:not([hidden])) {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 21px;
    border-bottom: 1px solid #303039;
    gap: 9px;
}
.pr-menu-bottom > .pr-filter-open {
    border-radius: 999px;
    min-height: 38px;
    padding: 9px 15px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="series"] {
    --menu: 129, 182, 255;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="cartoon"] {
    --menu: 112, 218, 176;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="anime"] {
    --menu: 238, 155, 209;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="dorama"] {
    --menu: 183, 157, 246;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="cartoon-series"] {
    --menu: 109, 211, 223;
}
.pr-menu-tabs > :is(button, a)[data-menu-type="turkish-series"] {
    --menu: 244, 174, 132;
}
.pr-menu-tabs > :is(button, a)[aria-selected="true"] {
    background: linear-gradient(
        135deg,
        rgba(var(--menu), 0.18),
        rgba(var(--menu), 0.05)
    );
    box-shadow:
        0 0 18px rgba(var(--menu), 0.1),
        inset 0 1px 0 rgba(var(--menu), 0.12);
}
.pr-menu-tabs > :is(button, a):hover,
.pr-menu-tabs > :is(button, a)[aria-selected="true"] {
    border-color: rgba(var(--menu), 0.65);
    color: rgb(var(--menu));
}
.pr-menu-groups:where(:not([hidden])) {
    display: grid;
    align-items: start;
    gap: 16px;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.3fr) minmax(0, 1fr);
}
.pr-menu-group {
    min-width: 0;
    --facet: 191, 174, 224;
    box-sizing: border-box;
    padding: 18px;
    border: 1px solid rgba(var(--facet), 0.13);
    border-radius: 16px;
    background: linear-gradient(
        145deg,
        rgba(var(--facet), 0.06),
        rgba(var(--facet), 0.015) 70%
    );
}
.pr-menu-year {
    --facet: 231, 196, 119;
}
.pr-menu-genre {
    --facet: 119, 206, 177;
}
.pr-menu-country {
    --facet: 128, 180, 232;
}
.pr-menu-platform {
    --facet: 184, 159, 231;
}
.pr-menu-group h4 {
    font-weight: 750;
    text-transform: uppercase;
    color: rgb(var(--facet));
    letter-spacing: 0.08em;
    margin: 0 0 14px;
}
.pr-menu-links:where(:not([hidden])) {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 8px;
}
.pr-menu-links > a:hover {
    color: rgb(var(--facet));
    background: rgba(var(--facet), 0.12);
    border-color: rgba(var(--facet), 0.55);
    box-shadow: 0 0 14px rgba(var(--facet), 0.07);
}
.pr-menu-group .pr-menu-more > summary {
    color: rgb(var(--facet));
    font-size: 12px;
}
/* Комментарии и голосование */
.pr-comment-votes .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.pr-discussion-layout:not(:has(.pr-comment)) > .pr-discussion-compose {
    width: 100%;
    justify-self: stretch;
}
/* Штатные компоненты и вспомогательные состояния */
.genre-inner:where(:not([hidden])) {
    display: flex;
    align-items: center;
    margin: auto;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
    gap: 14px;
}
/* Жанры и прокрутка */
.pr-genre-scroll:where(:not([hidden])) {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) 30px;
    align-items: center;
    gap: 7px;
    flex: 1;
    min-width: 0;
}
.pr-genre-scroll > .pr-genre-links {
    width: 100%;
    box-sizing: border-box;
    min-width: 0;
    padding: 2px 0 7px;
    gap: 8px;
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: #8f743854 #ffffff06;
    overscroll-behavior-x: contain;
}
.pr-genre-scroll > .pr-genre-links:where(:not([hidden]))::-webkit-scrollbar {
    display: block;
    height: 3px;
}
.pr-genre-scroll > .pr-genre-links::-webkit-scrollbar-track {
    background: #ffffff06;
    border-radius: 999px;
}
.pr-genre-scroll > .pr-genre-links::-webkit-scrollbar-thumb {
    background: #8f743854;
    border-radius: 999px;
}
.pr-genre-scroll.has-next > .pr-genre-links {
    mask-image: linear-gradient(
        to right,
        #000 0,
        #000 calc(100% - 25px),
        transparent
    );
}
.pr-genre-scroll.has-previous > .pr-genre-links {
    mask-image: linear-gradient(to right, transparent, #000 25px, #000 100%);
}
.pr-genre-scroll.has-previous.has-next > .pr-genre-links {
    mask-image: linear-gradient(
        to right,
        transparent,
        #000 25px,
        #000 calc(100% - 25px),
        transparent
    );
}
.pr-genre-step:where(:not([hidden])) {
    display: grid;
    place-items: center;
    align-self: center;
    width: 30px;
    height: 30px;
    box-sizing: border-box;
    padding: 6px;
    border: 1px solid #6b624144;
    border-radius: 50%;
    background: #18171c;
    color: #dcc38c;
    box-shadow: 0 0 12px #e8b84e0a;
    transition:
        background 0.2s,
        border-color 0.2s,
        color 0.2s,
        opacity 0.2s;
}
.pr-genre-step svg:where(:not([hidden])) {
    display: block;
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-genre-step:hover:not(:disabled) {
    background: #2a2417;
    border-color: #ad8d4c;
    color: #ffce62;
}
.pr-genre-step:disabled {
    opacity: 0.22;
    cursor: default;
    box-shadow: none;
}
.pr-genre-scroll:not(.is-overflowing) {
    grid-template-columns: minmax(0, 1fr);
}
.pr-genre-scroll:not(.is-overflowing) > .pr-genre-step:where(:not([hidden])) {
    display: none;
}
/* Страницы каталога */
.cinema-shell > .catalog-section,
.cinema-shell > .content-route {
    flex: 1 0 auto;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}
.cinema-shell > .catalog-section,
.cinema-shell > .content-route.system-route {
    margin-inline: auto;
    max-width: 1440px;
    padding: 40px 40px 0;
}
.catalog-grid:where(:not([hidden])) {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 30px 24px;
    width: 100%;
    min-width: 0;
    align-items: start;
}
/* Карточки каталога */
.catalog-grid > .movie-card {
    width: auto;
    min-width: 0;
    max-width: none;
}
/* Поиск и подсказки */
.catalog-grid > .pr-search-panel,
.catalog-grid > .searchpage,
.catalog-grid > form {
    grid-column: 1/-1;
    width: 100%;
    min-width: 0;
}
.system-route .pr-search-panel {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
}
/* Страницы каталога */
.system-route .catalog-grid {
    width: 100%;
}
.catalog-toolbar h2 {
    margin: 0;
    font-weight: 800;
    letter-spacing: -0.03em;
    text-align: left;
}
/* Жанры и прокрутка */
.pr-genre-chip:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    border: 1px solid #25252e;
    border-radius: 999px;
    background: #101014;
    color: #a4a4b0;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
    transition:
        color 0.2s,
        border-color 0.2s,
        background 0.2s;
    box-sizing: border-box;
    min-height: 34.2px;
    height: 34.2px;
    padding: 6px 15px;
}
/* Меню каталога: группы и ссылки */
.pr-menu-tabs > :is(button, a) {
    border: 1px solid #363640;
    transition:
        background 0.2s,
        border-color 0.2s,
        color 0.2s;
    border-radius: 999px;
    padding: 9px 15px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    --menu: 255, 205, 92;
    border-color: rgba(var(--menu), 0.2);
    background: rgba(var(--menu), 0.04);
    color: #c7c7d1;
    min-height: 34.2px;
    padding-block: 7.2px;
}
.pr-menu-links > a:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
    max-width: 100%;
    border: 1px solid #303039;
    overflow-wrap: anywhere;
    transition:
        color 0.18s,
        border-color 0.18s,
        background 0.18s;
    border-radius: 999px;
    padding: 9px 15px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    border-color: rgba(var(--facet), 0.21);
    background: rgba(var(--facet), 0.04);
    color: #c1c1ce;
    min-height: 34.2px;
    padding-block: 7.2px;
}
/* Расширенный фильтр */
.genre-inner > .pr-filter-open {
    flex: 0 0 auto;
    white-space: nowrap;
    min-height: 34.2px;
    padding-block: 7.2px;
}
/* Меню каталога: группы и ссылки */
.pr-menu-platform .pr-menu-links > a {
    justify-content: center;
    min-width: 82px;
    border-radius: 999px;
    background: rgba(var(--facet), 0.04);
    min-height: 37.8px;
    padding-block: 5.9px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-type-link.is-active {
    border-color: #ffb800;
    color: var(--pr-accent);
}
/* Штатные элементы DLE */
.native-pagination a:where(:not([hidden])),
.native-pagination > span:where(:not([hidden])) {
    border: 1px solid #26262f;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 42px;
    min-height: 44px;
    padding: 10px 14px;
}
.native-pagination a:where(:not([hidden])) {
    background: #13131a;
    color: #c9c1b3;
}
.native-pagination > span:where(:not([hidden])) {
    border-color: #2c3032;
    background: #121518;
    color: #827b6e;
}
.native-pagination > .nav_ext {
    background: 0 0;
    border-color: transparent;
    color: #8a8275;
}
.native-pagination a:hover {
    color: #fff1d1;
    border-color: #ffb80080;
    background: #ffb80014;
}
/* Главная: слайдер и миниатюры */
.pr-hero-actions .primary-button svg {
    color: inherit;
    fill: currentColor;
}
/* Меню каталога: группы и ссылки */
.pr-menu-tabs > :is(button, a)[data-menu-type="all"],
.pr-menu-tabs > :is(button, a)[data-menu-type="film"] {
    --menu: 255, 184, 0;
}
/* Постер и пользовательский рейтинг */
.pr-poster-votes .pr-poster-dislike,
.pr-poster-votes .pr-poster-like {
    box-sizing: border-box;
    width: 100%;
    max-width: 84px;
    min-height: 40px;
    height: 42px;
    justify-self: center;
    padding: 7px 8px;
    border-radius: 11px;
    color: #71e399;
    background: 0 0;
    border: 1px solid transparent;
    box-shadow: none;
}
.pr-poster-votes .pr-poster-dislike {
    color: #f38b95;
}
.pr-poster-votes button > span {
    font-weight: 800;
}
/* Рекомендуемые публикации */
.pr-related-controls:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 9px;
    flex-shrink: 0;
}
.pr-related-controls > a {
    font-size: 13px;
    color: #aea38c;
    margin-right: 6px;
}
.pr-related-controls .pr-row-arrow {
    position: static;
    translate: none;
    width: 38px;
    height: 38px;
}
.pr-related-controls svg:where(:not([hidden])) {
    display: block;
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-related-controls .pr-row-arrow:hover:not(:disabled) {
    border-color: #ffb80099;
    color: #ffe09a;
    background: #183025;
}
/* Личный кабинет */
.pr-login-dialog,
.pr-account-dialog {
    width: min(440px, calc(100% - 32px));
    max-width: calc(100% - 24px);
    max-height: calc(100svh - 32px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    padding: 28px;
    border-color: #36343c;
    border-radius: 22px;
    background:
        radial-gradient(ellipse at 0 0, #ffb80009, transparent 60%),
        linear-gradient(145deg, #19191f, #101015 72%);
    box-shadow:
        0 28px 100px #000c,
        inset 0 1px 0#ffffff05;
}
.pr-login-dialog[open],
.pr-account-dialog[open] {
    animation: prLoginIn 0.23s ease both;
}
.pr-login-dialog::backdrop,
.pr-account-dialog::backdrop {
    background: #050507c9;
    backdrop-filter: blur(9px);
}
.pr-login-dialog > .dialog-close:where(:not([hidden])),
.pr-account-dialog > .dialog-close:where(:not([hidden])) {
    right: 16px;
    top: 16px;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    padding: 8px;
    border: 1px solid #393942;
    border-radius: 10px;
    background: #ffffff03;
    color: #a9a9b6;
}
/* Окно входа */
.pr-login-heading:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-right: 34px;
}
.pr-login-mark:where(:not([hidden])) {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    border: 1px solid #ffb80030;
    border-radius: 12px;
    background: linear-gradient(135deg, #ffb80017, #ffb80004);
    color: #e3c779;
}
.pr-login-mark svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-login-eyebrow {
    font-size: 9px;
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 750;
    color: #a6a3a2;
}
.pr-login-dialog h2 {
    margin: 18px 0 0;
    line-height: 1.2;
    letter-spacing: -0.03em;
}
.pr-login-dialog .pr-login-label {
    font-size: 12px;
    font-weight: 650;
    color: #c9c2b3;
}
.pr-login-field:where(:not([hidden])) {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0;
}
.pr-login-field input {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 48px;
    margin: 0;
    padding: 10px 42px;
    border: 1px solid #34343f;
    border-radius: 11px;
    background: #111117;
    color: #eeeef4;
    font-size: 16px;
    transition:
        border-color 0.2s,
        box-shadow 0.2s;
}
.pr-login-field input:focus {
    border-color: #ffb80099;
    outline: 0;
    box-shadow: 0 0 0 3px #ffb80012;
}
.pr-login-input-icon {
    position: absolute;
    left: 14px;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: #96896c;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}
.pr-login-password-caption:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px 12px;
    margin-top: 6px;
}
.pr-login-password-caption > a {
    font-size: 11px;
    color: #c8b789;
}
/* Поле пароля */
.pr-password-toggle:where(:not([hidden])) {
    position: absolute;
    right: 7px;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 8px;
    border: 0;
    border-radius: 8px;
    background: 0 0;
    color: #b2a38b;
}
.pr-password-toggle:hover {
    background: #ffb8000c;
    color: #ffe09a;
}
.pr-password-toggle svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}
/* Полная новость: компоновка */
.film-description br + br + br:where(:not([hidden])),
.pr-eye-slash:where(:not([hidden])) {
    display: none;
}
/* Поле пароля */
.pr-password-toggle.is-visible .pr-eye-slash:where(:not([hidden])) {
    display: block;
}
/* Окно входа */
.pr-login-dialog .pr-login-submit {
    min-height: 48px;
    width: 100%;
    border-radius: 11px;
    margin-top: 8px;
    font-weight: 800;
}
.pr-login-registration:where(:not([hidden])) {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 0;
    padding-top: 18px;
    border-top: 1px solid #ffffff0b;
    font-size: 12px;
    color: #9494a2;
}
.pr-login-registration > a {
    color: #e6d6ac;
    font-weight: 750;
}
/* Штатные компоненты и вспомогательные состояния */
.cinema-shell > section.prose-section {
    box-sizing: border-box;
    width: 100%;
    max-width: 1440px;
}
/* Рекомендуемые публикации */
.pr-related-controls .pr-row-arrow:disabled:where(:not([hidden])) {
    display: grid;
    opacity: 0.25;
    cursor: default;
}
/* Главная: слайдер и миниатюры */
.pr-hero-slider::after,
.pr-hero-slider::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    pointer-events: none;
}
.pr-hero-slider::before {
    z-index: 7;
    right: 0;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        #ffb80024 25%,
        #ffdc7a4d 50%,
        #ffb80024 75%,
        transparent
    );
}
.pr-hero-slider::after {
    z-index: 8;
    width: 32%;
    height: 2px;
    border-radius: 50%;
    animation: prHeroAccent 8s ease-in-out infinite alternate;
    background: linear-gradient(
        90deg,
        transparent,
        #ffb80040 18%,
        #ffe3a0d9 50%,
        #ffb80040 82%,
        transparent
    );
    box-shadow: 0-2px 15px #ffb80026;
    filter: drop-shadow(0-1px 5px #ffb80045);
}
/* Базовые стили и типографика */
:root {
    --pr-accent: #ffb800;
    --pr-accent-rgb: 255, 184, 0;
    --pr-h1: 36px;
    --pr-home-gutter: 48px;
    --pr-h2: 24px;
    --pr-h3: 22px;
    --pr-h4: 18px;
    --pr-h5: 16px;
    --pr-h6: 14px;
    --pr-favorite-height: 42px;
}
h1 {
    font-size: var(--pr-h1);
    overflow-wrap: anywhere;
}
h2 {
    font-size: var(--pr-h2);
    overflow-wrap: anywhere;
}
h3 {
    font-size: var(--pr-h3);
    overflow-wrap: anywhere;
}
h4 {
    font-size: var(--pr-h4);
    overflow-wrap: anywhere;
}
h5 {
    font-size: var(--pr-h5);
    overflow-wrap: anywhere;
}
h6 {
    font-size: var(--pr-h6);
    overflow-wrap: anywhere;
}
/* Основные жёлтые кнопки */
.login-button,
.primary-button {
    border: 0;
    border-radius: 12px;
    font-weight: 800;
    padding: 12px 22px;
    background: #ffb800;
    border-color: #ffd15c;
    box-shadow:
        0 6px 20px #ffb80020,
        inset 0 1px 0#ffe8ac30;
    color: #241a05;
}
/* Кнопка входа */
.login-button {
    padding: 11px 20px;
    white-space: nowrap;
}
/* Основные жёлтые кнопки */
.primary-button:hover,
.primary-button:focus-visible,
.login-button:hover {
    background: #ffcc3d;
    border-color: #ffdf80;
    box-shadow: 0 8px 25px #ffb80030;
    color: #241a05;
}
/* Жанры и прокрутка */
.native-pagination > .is-current,
.native-pagination > [aria-current="page"],
.pr-genre-chip.is-active,
.pr-genre-chip[aria-current="page"] {
    font-weight: 800;
    background: #ffb800;
    color: #241a05;
    border-color: #ffe19a;
    box-shadow:
        0 0 18px #ffb80024,
        inset 0 1px 0#fff1c440;
}
/* Штатные элементы DLE */
.native-pagination > .is-current,
.native-pagination > [aria-current="page"] {
    font-weight: 850;
}
.native-pagination > span:not(.nav_ext):not(:has(span, a)) {
    font-weight: 850;
    background: #ffb800;
    color: #241a05;
    border-color: #ffe19a;
    box-shadow:
        0 0 18px #ffb80024,
        inset 0 1px 0#fff1c440;
}
/* Меню каталога: группы и ссылки */
.pr-menu-tabs > a:where(:not([hidden])) {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    line-height: 1.25;
}
.pr-menu-tabs > a.is-active {
    border-color: rgba(var(--menu, 255, 184, 0), 0.7);
    color: rgb(var(--menu, 255, 184, 0));
    background: rgba(var(--menu, 255, 184, 0), 0.1);
}
/* Меню каталога */
.pr-navigation-menu .pr-drawer-head {
    align-items: center;
    min-height: 36px;
    margin: 0 0 16px;
}
/* Меню каталога: группы и ссылки */
.pr-menu-panel[aria-label] {
    outline: 0;
}
/* Постер и пользовательский рейтинг */
.pr-poster-votes button:where(:not([hidden])) {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border: 0;
    border-radius: 8px;
    padding: 10px 3px;
    font-weight: 750;
    color: #cbd9d1;
    transition:
        background 0.2s,
        transform 0.2s;
    font-size: 15px;
    background: 0 0;
    border-color: transparent;
    box-shadow: none;
}
.pr-poster-votes button:hover:not(:disabled) {
    transform: translateY(-1px);
    filter: brightness(1.18);
    background: 0 0;
}
/* Полная новость: сведения */
.pr-film-badges > span:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    box-sizing: border-box;
    min-height: 36px;
    padding: 8px 13px;
    border: 1px solid rgba(var(--fact), 0.62);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.3;
    --fact: 184, 171, 139;
    border-color: #8d81624f;
    background: linear-gradient(145deg, #252520ed, #191a1ded 72%);
    color: #d1c7ad;
    box-shadow:
        0 3px 10px #0004,
        inset 0 1px 0#e3d5af0c;
}
.pr-film-badges > .pr-fact-type {
    --fact: 184, 171, 139;
    border-color: #aa936457;
    background: linear-gradient(145deg, #2a271fed, #1a1b1ded);
    color: #dac69c;
}
.pr-film-badges > .pr-fact-year {
    --fact: 171, 174, 176;
    border-color: #888a8e4d;
    background: linear-gradient(145deg, #252629ed, #191a1ded);
    color: #c8c9cc;
}
.pr-film-badges > .pr-fact-age {
    --fact: 161, 157, 147;
    border-color: #77756d4d;
    background: linear-gradient(145deg, #242423ed, #191a1ded);
    color: #bfbcb4;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-category-header {
    box-sizing: border-box;
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 24px 40px 0;
}
.pr-category-crumbs:where(:not([hidden])) {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
    font-size: 12px;
    line-height: 1.5;
    color: #8b8b96;
}
.pr-category-crumbs a {
    color: #c9b67e;
}
/* Контакты и правообладатели */
.pr-category-crumbs a:hover,
.pr-contact-page a:hover {
    color: #ffcf62;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-category-header h1 {
    margin: 16px 0 0;
    line-height: 1.12;
    letter-spacing: -0.035em;
}
.pr-category-header .category-description {
    margin: 12px 0 0;
    color: #a6a6b3;
    font-size: 15px;
    line-height: 1.7;
}
.pr-category-header .category-description:empty:where(:not([hidden])) {
    display: none;
}
/* Страницы каталога */
.pr-category-header + .catalog-section {
    padding-top: 22px;
}
.pr-category-header
    + .catalog-section
    .catalog-toolbar:not(:has(*)):where(:not([hidden])) {
    display: none;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-cast-plain:where(:not([hidden])) {
    line-height: 1.7;
    color: #d8d8e0;
    display: block;
    gap: 0;
}
.pr-cast-text:where(:not([hidden])) {
    display: block;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}
/* Полная новость: компоновка */
.film-meta > div > span:last-child {
    color: #d9d9e2;
    font-weight: 500;
    font-size: 15px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-meta-platform-text {
    color: #d9d9e2;
    font-weight: 500;
}
/* Полная новость: компоновка */
.film-description {
    text-wrap: pretty;
    overflow-wrap: anywhere;
    font-size: 17px;
    line-height: 1.8;
    color: #bdbdc9;
}
.film-description p {
    margin: 0 0 18px;
    font: inherit;
    color: inherit;
    background: 0 0;
}
/* Главная: разделы, табы и подборки */
.pr-home-collections {
    box-sizing: border-box;
    width: 100%;
    padding: 40px 48px 0;
}
/* Карточки подборок */
.pr-theme-collection-row:where(:not([hidden])) {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 4px 0 12px;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-theme-collection {
    position: relative;
    flex: 0 0 310px;
    aspect-ratio: 16/9;
    overflow: hidden;
    border: 1px solid #34343b;
    border-radius: 16px;
    background: #18181f;
    color: #f2f2f4;
    scroll-snap-align: start;
    box-shadow: 0 9px 24px #0004;
    transition:
        border-color 0.25s,
        transform 0.25s,
        box-shadow 0.25s;
}
/* Карточки подборок */
.pr-collection-art:where(:not([hidden])) {
    position: absolute;
    inset: 0;
    display: flex;
    gap: 3px;
}
.pr-collection-art img {
    min-width: 0;
    flex: 1;
    width: 33.333%;
    height: 100%;
    object-fit: cover;
    object-position: center 25%;
    transition:
        transform 0.5s,
        filter 0.35s;
    filter: brightness(0.8);
}
/* Штатные компоненты и вспомогательные состояния */
.pr-theme-collection:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #0000 15%, #0a0a0c44 45%, #0a0a0cf0);
}
/* Карточки подборок */
.pr-collection-copy:where(:not([hidden])) {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 16px;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 7px;
}
.pr-collection-copy strong {
    font-size: 21px;
    line-height: 1.2;
    letter-spacing: -0.02em;
    color: #f4f4f7;
}
.pr-collection-copy small {
    font-size: 11px;
    color: #bbb6a8;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-theme-collection:hover {
    color: #f2f2f4;
    border-color: #b99c587d;
    box-shadow: 0 10px 28px #0006;
}
.pr-theme-collection:hover img {
    transform: scale(1.04);
    filter: brightness(0.95);
}
/* Мобильное меню */
.pr-site-header > .pr-mobile-trigger svg:where(:not([hidden])) {
    display: block;
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex-shrink: 0;
}
/* Окно входа */
.pr-login-dialog form:where(:not([hidden])) {
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: 24px;
}
/* Контакты и правообладатели */
.pr-contact-page {
    width: 100%;
    box-sizing: border-box;
    color: #bdbdc9;
    font-size: 16px;
    line-height: 1.8;
}
.pr-contact-page h1 {
    margin: 0 0 22px;
    line-height: 1.15;
    letter-spacing: -0.03em;
    color: #f2f2f4;
}
.pr-contact-page h2 {
    margin: 0 0 13px;
    line-height: 1.3;
    color: #e5e5ed;
}
.pr-contact-page p {
    margin: 0 0 18px;
}
.pr-contact-page section {
    margin-top: 32px;
}
.pr-contact-page ul {
    padding-left: 22px;
    margin: 0 0 18px;
}
.pr-contact-page li {
    margin-bottom: 6px;
}
.pr-contact-page a {
    overflow-wrap: anywhere;
    color: #dfc16c;
}
/* Полная новость: компоновка */
.film-meta > div > span:first-child {
    font-size: 12px;
    color: #62626d;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}
/* Штатные компоненты и вспомогательные состояния */
.pr-seo-section {
    width: min(1440px, calc(100% - 40px));
    margin: 28px auto;
    padding: 22px 0;
    border-top: 1px solid #24242c;
}
/* Главная: слайдер и миниатюры */
.cinema-shell:has(> .pr-hero-slider) > .pr-seo-section {
    width: auto;
    max-width: none;
    margin-inline: var(--pr-home-gutter);
}
/* Штатные компоненты и вспомогательные состояния */
.pr-seo-section h1,
.pr-seo-section h2 {
    line-height: 1.25;
    margin: 0 0 16px;
}
.pr-seo-section p {
    margin: 0;
    color: #a5a5af;
    line-height: 1.7;
}
/* Меню каталога: группы и ссылки */
.pr-menu-year-shortcuts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
    padding: 0 0 18px;
    border-bottom: 1px solid #30303b;
}
.pr-menu-year-shortcuts > a {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    box-sizing: border-box;
    padding: 6px 12px;
    border: 1px solid #8c77464d;
    border-radius: 999px;
    background: linear-gradient(135deg, #28241c, #191a20);
    color: #ddceaa;
    font-size: 12px;
    font-weight: 700;
}
.pr-menu-year-shortcuts > a:hover {
    border-color: #ffb80099;
    color: #ffcf55;
}
/* Штатные компоненты и вспомогательные состояния */
.mass_comments_action {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    box-sizing: border-box;
    max-width: 100%;
    margin: 18px 0 0;
    padding: 16px 18px;
    border: 1px solid #292932;
    border-radius: 14px;
    background: #101016;
    color: #b9b9c5;
    font-size: 13px;
    line-height: 1.5;
}
.mass_comments_action select {
    min-width: 0;
    max-width: 100%;
    height: 38px;
    padding: 8px 12px;
    border: 1px solid #34343f;
    border-radius: 9px;
    background: #19191f;
    color: #e6e6eb;
    font: inherit;
    color-scheme: dark;
}
.mass_comments_action .bbcodes {
    height: 38px;
    min-height: 38px;
    padding: 8px 16px;
    border: 1px solid #ffb800;
    border-radius: 9px;
    background: #ffb800;
    color: #17130a;
    font: inherit;
    font-weight: 750;
    box-shadow: 0 3px 12px #ffb80014;
    cursor: pointer;
}
.mass_comments_action .bbcodes:hover {
    background: #ffca38;
    border-color: #ffca38;
    color: #17130a;
}
/* Базовые стили и типографика */
input[name="selected_comments[]"] {
    width: 16px;
    height: 16px;
    margin: 0 0 0 5px;
    vertical-align: middle;
    accent-color: #ffb800;
}

/* Личный кабинет */

.pr-login-dialog > .dialog-close svg,
.pr-account-dialog > .dialog-close svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
}
.pr-login-dialog > .dialog-close:hover,
.pr-account-dialog > .dialog-close:hover {
    color: #eeeef4;
    border-color: #686052;
    background: #ffb80009;
}
.pr-login-dialog a:focus-visible,
.pr-login-dialog button:focus-visible,
.pr-account-dialog a:focus-visible,
.pr-account-dialog button:focus-visible {
    outline: 2px solid #ffce58;
    outline-offset: 3px;
}
.pr-account-heading:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-right: 26px;
}
.pr-account-avatar:where(:not([hidden])) {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 58px;
    height: 58px;
    border: 1px solid #ffb80035;
    border-radius: 18px;
    background: linear-gradient(145deg, #ffb80020, #6b542513);
    color: #eed291;
    box-shadow: inset 0 1px 0#ffffff08;
}
.pr-account-avatar svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-account-person {
    min-width: 0;
}
.pr-account-dialog h2 {
    margin: 4px 0 0;
    line-height: 1.2;
    letter-spacing: -0.035em;
    overflow-wrap: anywhere;
}
.pr-account-role {
    display: inline-block;
    margin-top: 7px;
    color: #c9ac66;
    font-size: 10px;
    line-height: 1.4;
}
.pr-account-link:where(:not([hidden])) {
    display: flex;
    align-items: center;
    gap: 13px;
    box-sizing: border-box;
    min-height: 64px;
    width: 100%;
    padding: 11px 13px;
    border: 1px solid #2b2b35;
    border-radius: 13px;
    background: #ffffff02;
    color: #e7e7ee;
    transition:
        background 0.2s,
        border-color 0.2s;
}
.pr-account-link:hover {
    background: #ffffff06;
    border-color: #55505a;
    color: #fff;
}
.pr-account-icon:where(:not([hidden])) {
    display: grid;
    place-items: center;
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border: 1px solid #ffffff07;
    border-radius: 10px;
    background: #ffffff03;
    color: #b3b1bd;
}
.pr-account-icon svg,
.pr-account-logout svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.pr-account-copy:where(:not([hidden])) {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}
.pr-account-copy > b {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    overflow-wrap: anywhere;
}
.pr-account-copy > small {
    font-size: 11px;
    line-height: 1.4;
    color: #90909e;
}
.pr-account-count:where(:not([hidden])) {
    display: grid;
    place-items: center;
    box-sizing: border-box;
    min-width: 27px;
    min-height: 27px;
    max-width: 72px;
    padding: 4px 7px;
    border: 1px solid #ffffff09;
    border-radius: 8px;
    background: #ffffff04;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.3;
    color: #d4c699;
    overflow-wrap: anywhere;
}
.pr-account-link.pr-account-admin {
    background: linear-gradient(110deg, #ffb80009, #ffb80002);
    border-color: #ffb80026;
}
.pr-account-admin .pr-account-icon {
    color: #dfc273;
    background: #ffb8000a;
    border-color: #ffb80014;
}
.pr-account-link.pr-account-admin:hover {
    background: #ffb8000d;
    border-color: #ffb80055;
}
.pr-account-footer {
    margin-top: 20px;
    padding-top: 14px;
    border-top: 1px solid #ffffff0b;
}
.pr-account-logout:where(:not([hidden])) {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    box-sizing: border-box;
    min-height: 40px;
    padding: 6px 3px;
    color: #a6a3ad;
    font-size: 13px;
    line-height: 1.4;
    transition: color 0.2s;
}
.pr-account-logout:hover {
    color: #e9a0a5;
}

.pr-account-dialog.pr-account-admin-layout {
    width: min(520px, calc(100% - 32px));
}
.pr-account-admin-layout .account-links:where(:not([hidden])) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 22px;
}
.pr-account-admin-layout .pr-account-link {
    min-height: 56px;
    padding: 10px;
    gap: 10px;
}
.pr-account-admin-layout .pr-account-icon {
    width: 30px;
    height: 30px;
    border-radius: 9px;
}
.pr-account-admin-layout .pr-account-icon svg {
    width: 19px;
    height: 19px;
}
.pr-account-admin-layout .pr-account-copy > b {
    font-size: 13px;
}
.pr-account-admin-layout .pr-account-copy > small {
    display: none;
}
.pr-account-admin-layout .pr-account-count {
    min-width: 23px;
    min-height: 23px;
    padding: 3px 5px;
    font-size: 11px;
}
/* Адаптивность и настройки устройства: (max-width: 1280px) */
@media (max-width: 1280px) {
    .site-header {
        grid-template-columns: auto minmax(240px, 1fr);
        gap: 18px;
        padding: 18px 28px;
    }
    .main-nav {
        grid-column: 1/-1;
        justify-content: center;
    }
    .home-hero-inner {
        gap: 32px;
        padding-left: 32px;
        padding-right: 32px;
    }
    .hero-copy > div:last-child {
        gap: 18px;
    }
    .hero-thumbs {
        gap: 10px;
    }
    .hero-thumb {
        width: 58px;
    }
    .film-hero-inner {
        grid-template-columns: 260px minmax(0, 1fr);
        gap: 32px;
    }
    .film-meta {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .film-actions {
        flex-wrap: wrap;
    }
    .catalog-toolbar {
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .pr-hero-slider .home-hero-inner {
        padding-inline: 32px;
        gap: 30px;
    }
    .pr-hero-dock {
        right: 32px;
    }
    .pr-home-section {
        padding-inline: 32px;
    }
    .pr-section-head {
        gap: 20px;
    }
    .pr-home-tabs button {
        padding-inline: 11px;
    }
}
/* Адаптивность и настройки устройства: (max-width: 760px) */
@media (max-width: 760px) {
    :root {
        --pr-home-gutter: 20px;
        --pr-h1: 30px;
        --pr-favorite-height: 32.2px;
    }
    .brand {
        font-size: 18px;
    }
    .search-wrap {
        grid-row: 2;
    }
    .search-wrap input {
        height: 50px;
        font-size: 14px;
    }
    .login-button {
        padding: 8px 15px;
    }
    .genre-inner > a {
        padding: 9px 12px;
        font-size: 12px;
    }
    .genre-inner [data-row] a {
        padding: 8px 12px;
        font-size: 12px;
    }
    .home-hero {
        min-height: 660px;
        height: auto;
    }
    .hero-copy h1 {
        line-height: 1.04;
    }
    .hero-copy > div:last-child > div:first-child {
        gap: 10px;
    }
    .hero-copy > div:last-child a {
        height: 48px;
        font-size: 15px;
        padding: 0 22px;
        border-radius: 12px;
    }
    .hero-copy > div:last-child > div:last-child {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }
    .hero-thumb,
    .hero-thumbs button {
        width: 58px;
    }
    .movie-section {
        padding: 44px 20px 0;
    }
    .cinema-shell > section:has(.collection-card),
    .cinema-shell > section:has(> .catalog-grid) {
        padding: 44px 20px 0;
    }
    .movie-section [data-row] a.movie-card,
    .poster-row > .movie-card {
        width: 160px;
    }
    .movie-section [data-row],
    .poster-row {
        gap: 16px;
    }
    .collection-card {
        width: 290px;
    }
    .site-footer {
        margin-top: 64px;
    }
    .footer-bottom {
        padding: 22px 20px 32px;
        gap: 20px;
    }
    .footer-bottom > div {
        gap: 14px;
        font-size: 12px;
    }
    .film-hero-inner {
        grid-template-columns: 100px minmax(0, 1fr);
        gap: 22px;
        padding: 34px 20px;
    }
    .film-info {
        gap: 16px;
    }
    .pr-film-breadcrumbs {
        flex-wrap: wrap;
        font-size: 10px;
    }
    .film-info > .pr-film-badges {
        gap: 6px;
    }
    .film-info > .pr-film-badges > span {
        padding: 6px 9px;
        font-size: 11px;
    }
    .film-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
        margin-left: -122px;
        width: calc(100% + 122px);
        margin-top: 18px;
    }
    .film-meta span {
        font-size: 13px;
    }
    .cast-list a {
        font-size: 12px;
        white-space: normal;
    }
    .film-info > div:has(.cast-list) {
        margin-left: -122px;
        width: calc(100% + 122px);
    }
    .film-actions {
        margin-left: -122px;
        width: calc(100% + 122px);
        gap: 8px;
    }
    .film-actions .outline-button,
    .film-actions button {
        padding: 0 16px;
        font-size: 13px;
    }
    .film-actions button {
        height: 46px;
    }
    .player-frame {
        border-radius: 14px;
    }
    .prose-section {
        padding: 42px 20px 0;
    }
    .category-description,
    .pr-search-panel select,
    .prose-section > div {
        font-size: 16px;
    }
    .cinema-shell > section:has(> .poster-row) {
        padding-left: 20px;
        padding-right: 20px;
    }
    .catalog-section {
        padding: 42px 20px 0;
    }
    .catalog-toolbar > div {
        flex-wrap: wrap;
        gap: 8px;
    }
    .catalog-toolbar > div > span {
        font-size: 11px;
        padding: 8px;
    }
    .catalog-grid .movie-card {
        min-width: 0;
    }
    .movie-card > div:last-child > div:first-child {
        font-size: 14px;
    }
    .system-route {
        padding: 30px 20px;
    }
    .system-panel {
        padding: 20px;
    }
    .guest-fields {
        flex-direction: column;
    }
    .comment-submit {
        align-items: flex-start;
    }
    .comment-submit > span {
        max-width: 140px;
    }
    .native-comment-form {
        padding: 14px;
        gap: 10px;
    }
    .comment-avatar {
        width: 30px;
        height: 30px;
    }
    .hero-copy:where(:not([hidden])) {
        gap: 16px;
        display: contents;
    }
    .hero-poster {
        grid-column: 1;
        grid-row: 1/3;
        margin-top: 0;
    }
    .hero-copy > span {
        grid-column: 2;
        align-self: end;
        font-size: 10px;
        letter-spacing: 0.15em;
    }
    .hero-copy > p {
        grid-column: 1/-1;
        font-size: 15px;
        line-height: 1.6;
    }
    .hero-copy > div {
        grid-column: 1/-1;
        flex-wrap: wrap;
        gap: 10px;
        font-size: 12px;
    }
    .hero-copy > div:last-child {
        margin-left: 0;
        width: 100%;
        margin-top: 0;
    }
    .home-hero-inner:where(:not([hidden])) {
        position: relative;
        display: grid;
        grid-template-columns: 106px minmax(0, 1fr);
        padding: 74px 20px 42px;
        gap: 22px;
        align-items: start;
        row-gap: 22px;
    }
    .main-nav a:last-child {
        padding: 8px 15px;
    }
    .player-container + section {
        padding-top: 42px;
    }
    .film-info > .pr-film-badges > span:first-child {
        flex-wrap: wrap;
    }
    .film-info > .pr-film-badges > span:first-child > span:first-child {
        font-size: 17px;
    }
    .film-info > .pr-film-badges > span:first-child > span:last-child {
        font-size: 9px;
    }
    .main-nav > .login-button,
    .main-nav > a[href="/login"] {
        position: absolute;
        top: 14px;
        right: 20px;
    }
    .main-nav > a[href="/login"] {
        padding: 8px 15px;
    }
    .main-nav {
        justify-content: flex-start;
        padding-bottom: 4px;
        min-height: 22px;
        font-size: 13px;
        overflow: visible;
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-right: 0;
        gap: 20px;
    }
    .outline-button {
        max-width: 100%;
    }
    .hero-copy > h2 {
        grid-column: 2;
        align-self: start;
        overflow-wrap: break-word;
    }
    .genre-inner {
        padding: 0;
        gap: 8px;
        flex-wrap: wrap;
    }
    .genre-inner > .pr-genre-scroll {
        flex-basis: 100%;
    }
    .genre-inner > .pr-filter-open {
        margin-left: auto;
    }
    .pr-genre-chip {
        font-size: 12px;
        padding: 8px 12px;
    }
    .pr-filter-open {
        font-size: 12px;
        padding: 9px 12px;
    }
    .pr-hero-slider .home-hero {
        height: 100%;
        min-height: 0;
    }
    .pr-hero-actions > a {
        height: 44px;
        padding: 0 18px;
        font-size: 14px;
    }
    .pr-hero-arrow {
        width: 34px;
        height: 34px;
    }
    .pr-hero-dock .hero-thumbs {
        width: 434px;
        max-width: calc(100vw - 136px);
        gap: 8px;
        padding-block: 9px;
    }
    .pr-hero-dock .hero-thumb {
        flex-basis: 50px;
        width: 50px;
    }
    .pr-hero-dock .hero-thumb > span {
        border-radius: 7px;
    }
    .pr-home-section {
        padding: 34px 20px 0;
    }
    .pr-section-head {
        flex-wrap: wrap;
        gap: 14px;
        margin-bottom: 12px;
    }
    .pr-home-tabs {
        order: 3;
        width: 100%;
        box-sizing: border-box;
    }
    .pr-home-tabs button {
        flex: 1;
        padding: 9px 5px;
        font-size: 11px;
    }
    .pr-all-link {
        font-size: 12px;
    }
    .pr-row-arrow {
        width: 38px;
        height: 38px;
        top: 37%;
    }
    .pr-row-arrow.is-prev {
        left: -12px;
    }
    .pr-row-arrow.is-next {
        right: -12px;
    }
    .pr-home-section .poster-row {
        gap: 16px;
        padding-top: 8px;
    }
    .pr-filter-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .pr-filter-dialog {
        padding: 24px 20px;
    }
    .pr-search-panel {
        padding: 20px 16px;
        border-radius: 14px;
    }
    .pr-search-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }
    .pr-search-wide {
        grid-column: auto;
    }
    .pr-search-panel input:not([type="checkbox"]):not([type="radio"]) {
        font-size: 16px;
    }
    .pr-search-simple > .outline-button,
    .pr-search-simple > .primary-button {
        flex: 1;
    }
    .pr-search-actions {
        flex-wrap: wrap;
    }
    .pr-film-badges {
        gap: 7px;
    }
    .pr-film-badges > span {
        font-size: 11px;
        padding: 6px 9px;
    }
    .site-header:where(:not([hidden])) {
        align-items: center;
        justify-content: space-between;
        grid-template-columns: 1fr;
        position: sticky;
        display: flex;
        gap: 16px;
        padding: 15px 20px;
    }
    .site-header > .main-nav:where(:not([hidden])),
    .site-header > .search-wrap:where(:not([hidden])) {
        display: none;
    }
    .site-header > .pr-mobile-trigger:where(:not([hidden])) {
        display: grid;
        place-items: center;
        width: 38px;
        height: 38px;
        border: 1px solid #34343e;
        border-radius: 10px;
        background: #17171f;
        color: #d9d9e2;
    }
    .pr-mobile-trigger svg {
        width: 20px;
        height: 20px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.7;
        stroke-linecap: round;
    }
    .pr-mobile-trigger:hover {
        border-color: #ffb80080;
        color: #ffb800;
    }
    .pr-mobile-menu .main-nav:where(:not([hidden])),
    .pr-mobile-menu .search-wrap:where(:not([hidden])) {
        display: block;
    }
    .film-hero > div:nth-of-type(3) {
        background: linear-gradient(
            180deg,
            rgba(10, 10, 12, 0.91),
            rgba(10, 10, 12, 0.96) 62%,
            #0a0a0c
        );
    }
    .pr-hero-score {
        top: 6px;
        right: 6px;
        padding: 5px 7px;
        gap: 4px;
        border-radius: 7px;
    }
    .pr-hero-score b {
        font-size: 17px;
    }
    .pr-film-layout .film-poster .pr-score-ring > small,
    .pr-hero-score small {
        font-size: 8px;
    }
    .pr-hero-meta .pr-age,
    .pr-hero-meta > span {
        min-height: 28px;
        padding: 5px 8px;
        font-size: 11px;
    }
    .pr-film-title-line {
        gap: 10px;
        max-width: 100%;
    }
    .pr-film-title-line .provider-scores {
        gap: 6px;
        flex-shrink: 1;
    }
    .pr-film-title-line .provider-score {
        padding: 6px 8px;
        gap: 5px;
        border-radius: 8px;
    }
    .pr-film-title-line .provider-score > span {
        font-size: 9px;
    }
    .pr-discussion .pr-comment .pr-comment-text,
    .pr-film-title-line .provider-score > b {
        font-size: 15px;
    }
    .pr-discussion .native-comment-form {
        padding: 16px;
    }
    .pr-discussion .guest-fields {
        flex-direction: column;
    }
    .pr-discussion .comment-submit > span {
        max-width: none;
    }
    .pr-discussion .pr-comment > span {
        width: 30px;
        height: 30px;
    }
    .pr-discussion .pr-comment {
        grid-template-columns: 30px minmax(0, 1fr);
        padding: 16px;
        gap: 0 10px;
    }
    .pr-discussion .pr-comment > div > div:first-child {
        min-height: 30px;
    }
    .pr-back-top {
        right: 16px;
        bottom: max(16px, env(safe-area-inset-bottom));
        width: 42px;
        height: 42px;
        border-radius: 12px;
    }
    .film-info h1 {
        overflow-wrap: anywhere;
        line-height: 1.08;
    }
    .player-container {
        width: 100%;
        box-sizing: border-box;
        padding: 0;
    }
    .player-source-controls {
        padding-inline: 20px;
        gap: 8px;
        margin-bottom: 12px;
    }
    .player-source-controls > .outline-button {
        height: 36px;
        font-size: 12.5px;
        padding-inline: 15px;
        border-radius: 10px;
    }
    .player-container .player-frame {
        width: 100%;
        box-sizing: border-box;
        aspect-ratio: 40/27;
        border-radius: 10px;
    }
    .pr-film-layout {
        padding: 16px 20px 22px;
    }
    .prose-section.pr-film-description {
        padding: 24px 20px 0;
    }
    .pr-film-description h2 {
        line-height: 1.25;
        margin-bottom: 16px;
    }
    .pr-film-related {
        padding: 30px 20px 0;
    }
    .pr-film-related > div:first-child > a {
        flex-shrink: 0;
        font-size: 13px;
    }
    .pr-discussion {
        padding: 32px 20px 0;
    }
    .pr-discussion > h2 {
        margin-bottom: 20px;
    }
    .pr-discussion-layout {
        gap: 22px;
    }
    .pr-player-heading {
        padding-inline: 20px;
        margin-bottom: 13px;
    }
    .film-poster .pr-poster-season {
        top: 4px;
        left: 4px;
        right: 4px;
        padding: 5px 2px;
        font-size: 8px;
        border-radius: 5px;
    }
    .film-poster .pr-poster-votes {
        left: 3px;
        right: 3px;
        bottom: 3px;
        padding: 3px;
        gap: 1px;
        border-radius: 7px;
    }
    .film-poster .pr-poster-votes button {
        flex-direction: column;
        gap: 2px;
        padding: 3px 0;
        font-size: 9px;
    }
    .film-poster .pr-poster-votes button svg {
        width: 12px;
        height: 12px;
    }
    .film-poster .pr-poster-approval {
        min-width: 29px;
        min-height: 32px;
        border-radius: 6px;
    }
    .film-poster .pr-poster-approval b {
        font-size: 12px;
    }
    .film-poster .pr-poster-approval small {
        font-size: 5px;
        margin-top: 2px;
    }
    .cinema-shell > .site-footer {
        margin-top: 32px;
    }
    .pr-hero-slider::after {
        height: 1.5px;
    }
    .film-poster .pr-score-ring {
        width: 34px;
        height: 34px;
        min-width: 34px;
        min-height: 34px;
    }
    .film-poster .pr-score-ring > small {
        font-size: 5px;
    }
    .pr-player-tools {
        padding: 13px 20px;
        gap: 12px;
    }
    .pr-player-share > span {
        width: 100%;
        margin: 0 0 2px;
    }
    .pr-player-share > a,
    .pr-player-share > button {
        font-size: 11px;
        padding: 7px 9px;
    }
    .film-poster .pr-score-ring > b,
    .pr-footer-links > a,
    .pr-player-report > a {
        font-size: 11px;
    }
    .pr-franchise-section,
    .pr-member-collections {
        padding: 30px 20px 0;
    }
    .pr-franchise-section > h2,
    .pr-member-collections > h2 {
        margin-bottom: 16px;
    }
    .pr-franchise-section .movie-card {
        width: 160px;
        flex-basis: 160px;
    }
    .pr-franchise-section .poster-row {
        gap: 16px;
    }
    .pr-member-collection {
        flex-basis: 236px;
        min-height: 130px;
        padding: 20px;
    }
    .pr-film-heading .provider-score > b,
    .pr-member-collection > span {
        font-size: 17px;
    }
    .pr-spoiler-button {
        font-size: 12px;
        padding: 8px 10px;
    }
    .pr-discussion .comment-avatar {
        width: 30px;
        height: 30px;
    }
    .film-hero > .pr-film-layout {
        padding: 0 0 22px;
    }
    .pr-film-layout > .film-hero-inner:where(:not([hidden])) {
        isolation: isolate;
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }
    .pr-film-layout .film-info:where(:not([hidden])) {
        display: contents;
    }
    .pr-film-layout .film-poster {
        grid-column: 1;
        grid-row: 1;
        width: 100%;
        height: clamp(400px, 70svh, 620px);
        aspect-ratio: auto;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }
    .pr-film-layout .film-poster:after {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        pointer-events: none;
        background: linear-gradient(
            180deg,
            rgba(6, 7, 10, 0.87) 0,
            rgba(6, 7, 10, 0.6) 23%,
            rgba(6, 7, 10, 0.12) 35%,
            rgba(6, 7, 10, 0.04) 47%,
            rgba(6, 7, 10, 0.1) 64%,
            rgba(6, 7, 10, 0.64) 78%,
            #0a0a0c 100%
        );
    }
    .pr-film-layout .pr-film-heading .provider-scores {
        pointer-events: auto;
    }
    .pr-film-heading h1 {
        text-wrap: balance;
        text-shadow: 0 2px 22px #0009;
        line-height: 1.12;
        letter-spacing: -0.035em;
    }
    .pr-film-heading .pr-film-original {
        line-height: 1.5;
        overflow-wrap: anywhere;
        text-shadow: 0 2px 12px #000;
        font-size: 12px;
        color: #b8b8c5;
    }
    .pr-film-heading .provider-score {
        padding: 7px 10px;
        border-radius: 8px;
    }
    .pr-film-layout .film-poster .pr-poster-season {
        top: 14px;
        left: 20px;
        right: auto;
        max-width: calc(100% - 40px);
        padding: 8px 12px;
        font-size: 11px;
        border-radius: 8px;
    }
    .pr-player-share > .pr-share-icon {
        width: 34px;
        height: 34px;
        padding: 8px;
    }
    .pr-player-share {
        gap: 7px;
    }
    body > .ui-dialog {
        border-radius: 14px;
    }
    body > .ui-dialog .ui-dialog-titlebar {
        padding: 19px 56px 17px 20px;
    }
    body > .ui-dialog .ui-dialog-title {
        font-size: 18px;
    }
    body > .ui-dialog .ui-dialog-content {
        padding: 19px 20px;
        font-size: 14px;
    }
    body > .ui-dialog .ui-dialog-buttonpane {
        padding: 0 20px 20px;
    }
    .cinema-shell > .site-footer.pr-footer {
        margin-top: 28px;
    }
    .pr-footer-inner:where(:not([hidden])) {
        padding: 24px 20px calc(24px + env(safe-area-inset-bottom));
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 19px;
    }
    .pr-footer-identity {
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
    }
    .pr-footer-links {
        justify-content: flex-start;
        gap: 10px 19px;
    }
    .pr-footer-links > a[href^="mailto:"] {
        flex-basis: 100%;
        margin-top: 3px;
    }
    .pr-film-layout > .pr-film-breadcrumbs {
        padding: 12px 20px;
        margin: 0;
        line-height: 1.5;
        padding-block: 8px;
        font-size: 10px;
        gap: 6px;
    }
    .pr-film-layout .pr-film-heading:where(:not([hidden])) {
        grid-column: 1;
        grid-row: 1;
        position: relative;
        z-index: 2;
        display: flex;
        align-self: stretch;
        flex-direction: column;
        gap: 12px;
        box-sizing: border-box;
        min-width: 0;
        pointer-events: none;
        padding: 8px 20px 98px;
    }
    .pr-film-layout .film-poster .pr-poster-votes button svg {
        width: 26px;
        height: 26px;
        fill-opacity: 1;
    }
    .pr-hero-slider {
        height: 560px;
    }
    .pr-hero-slider .pr-hero-backdrop {
        inset: 0;
        filter: none;
        background: #141419;
    }
    .pr-hero-slider .pr-hero-backdrop > img {
        object-fit: cover;
        object-position: center 35%;
        opacity: 0.96;
    }
    .pr-hero-slider .pr-hero-shade {
        background: linear-gradient(
            180deg,
            rgba(6, 7, 10, 0.88) 0,
            rgba(6, 7, 10, 0.5) 18%,
            rgba(6, 7, 10, 0.08) 34%,
            rgba(6, 7, 10, 0.2) 40%,
            rgba(6, 7, 10, 0.82) 53%,
            rgba(6, 7, 10, 0.95) 78%,
            #0a0a0c 100%
        );
    }
    .pr-hero-slider .home-hero-inner:where(:not([hidden])) {
        grid-template-rows: auto auto auto auto auto;
        align-content: start;
        flex-direction: column;
        height: 100%;
        position: relative;
        grid-template-columns: 100px minmax(0, 1fr);
        display: flex;
        align-items: stretch;
        gap: 0;
        padding: 20px 20px 128px;
    }
    .pr-hero-slider .hero-copy:where(:not([hidden])) {
        flex: 1;
        align-self: stretch;
        align-items: flex-start;
        min-height: 0;
        width: 100%;
        display: flex;
        gap: 12px;
    }
    .pr-hero-slider .hero-copy > h2 {
        overflow-wrap: break-word;
        grid-column: auto;
        grid-row: auto;
        max-width: none;
        width: auto;
        -webkit-line-clamp: 3;
        text-shadow: 0 2px 22px #000b;
        align-self: stretch;
        line-height: 1.08;
        margin: 0;
    }
    .pr-hero-slider .home-hero:has(.pr-hero-score) .hero-copy > h2 {
        padding-right: 79px;
    }
    .pr-hero-slider .hero-copy > p {
        flex-shrink: 0;
        grid-column: auto;
        color: #d4d4de;
        -webkit-line-clamp: 3;
        text-shadow: 0 1px 8px #000;
        margin-top: auto;
        font-size: 14px;
        line-height: 1.5;
    }
    .pr-hero-slider .pr-hero-meta {
        flex-shrink: 0;
        grid-column: auto;
        font-size: 11px;
        gap: 7px;
    }
    .pr-hero-slider .pr-hero-meta > span {
        background: #13141bd9;
        border-color: #56515a;
        backdrop-filter: blur(9px);
    }
    .pr-hero-slider .pr-hero-actions:where(:not([hidden])) {
        grid-column: auto;
        flex-shrink: 0;
        display: flex;
        margin: 0;
        width: 100%;
        gap: 10px;
    }
    .pr-hero-slider .hero-poster {
        inset: 20px 20px auto auto;
        grid-column: auto;
        grid-row: auto;
        height: auto;
        aspect-ratio: auto;
        overflow: visible;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        background: 0 0;
        z-index: 3;
        position: absolute;
        width: auto;
        margin: 0;
    }
    .pr-hero-slider .hero-poster > img:where(:not([hidden])) {
        display: none;
    }
    .pr-hero-slider
        .hero-poster:not(:has(.pr-hero-score)):where(:not([hidden])) {
        display: none;
    }
    .pr-hero-slider .pr-hero-score {
        position: static;
        top: auto;
        right: auto;
        padding: 7px 9px;
        border-radius: 8px;
        gap: 5px;
        background: #17160fe8;
        box-shadow: 0 0 20px #ffb80020;
    }
    .pr-film-layout .film-poster .pr-score-ring > b,
    .pr-hero-slider .pr-hero-score b {
        font-size: 20px;
    }
    .pr-hero-slider .pr-hero-score small {
        font-size: 9px;
    }
    .pr-hero-dock {
        left: 20px;
        right: 20px;
        justify-content: center;
        gap: 10px;
        bottom: 12px;
    }
    .pr-film-layout .film-poster > .pr-poster-season:where(:not([hidden])),
    .pr-related-controls > a:where(:not([hidden])) {
        display: none;
    }
    .pr-film-layout:has(.pr-poster-season) .pr-film-heading {
        padding-top: 8px;
    }
    .pr-film-title-line .pr-film-ratings:where(:not([hidden])) {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        min-width: 0;
        max-width: 100%;
    }
    .pr-film-title-line
        .pr-film-ratings
        > .provider-scores:where(:not([hidden])) {
        display: contents;
    }
    .pr-film-layout .film-poster .pr-poster-votes {
        left: 20px;
        right: 20px;
        box-sizing: border-box;
        gap: 8px;
        height: 44px;
        grid-template-rows: 42px;
        padding: 0 10px;
        overflow: visible;
        bottom: 24px;
        border-radius: 11px;
    }
    .pr-film-layout .film-poster .pr-poster-votes button {
        flex-direction: row;
        gap: 8px;
        font-size: 14px;
        padding: 0 3px;
        align-self: center;
    }
    .pr-film-layout .film-poster .pr-score-ring {
        width: 62px;
        height: 62px;
        min-width: 62px;
        min-height: 62px;
        align-self: center;
        box-shadow:
            0 0 0 4px #13161b,
            0 4px 16px #0004;
        border-radius: 50%;
    }
    .pr-film-layout .film-poster > img {
        object-fit: cover;
        object-position: center 34%;
        filter: brightness(1.08);
    }
    .pr-film-layout .pr-film-title-line:where(:not([hidden])) {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 11px;
        font-size: inherit;
    }
    .pr-film-layout .pr-film-original {
        font-size: 12px;
        line-height: 1.5;
        color: #b8b8c5;
        text-shadow: 0 2px 12px #000;
    }
    .pr-film-layout .pr-film-badges {
        grid-column: 1;
        grid-row: 2;
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        padding: 8px 20px 4px;
        background: #0a0a0c;
        gap: 5px;
        flex-wrap: nowrap;
    }
    .pr-film-layout .film-meta {
        grid-column: 1;
        background: #0a0a0c;
        grid-row: 3;
        width: auto;
        max-width: none;
        margin: 0;
        gap: 20px 18px;
        padding: 20px 20px 22px;
    }
    .pr-film-layout .film-info > div:has(.cast-list) {
        grid-column: 1;
        box-sizing: border-box;
        background: #0a0a0c;
        grid-row: 4;
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 0 20px 18px;
    }
    .pr-film-layout .film-actions {
        grid-column: 1;
        box-sizing: border-box;
        padding: 0 20px 10px;
        background: #0a0a0c;
        grid-row: 5;
        width: 100%;
        margin: 0;
    }
    .pr-film-badges > .pr-poster-season:where(:not([hidden])) {
        position: static;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        inset: auto;
        min-width: 0;
        max-width: none;
        min-height: 30px;
        margin: 0;
        padding: 5px 7px;
        font-size: 10px;
        line-height: 1.2;
        border-radius: 8px;
        white-space: nowrap;
        box-shadow:
            0 3px 10px #8dbb2a29,
            inset 0 1px 0#ffffff85;
    }
    .pr-comment-actions {
        gap: 14px;
    }
    .pr-comment-votes {
        gap: 6px;
    }
    .pr-comment-dislike,
    .pr-comment-like {
        min-height: 34px;
        min-width: 50px;
        padding: 6px 9px;
    }
    .pr-navigation-menu .search-wrap {
        grid-row: auto;
    }
    .cinema-shell > .catalog-section,
    .cinema-shell > .content-route.system-route {
        padding: 26px 20px 0;
    }
    .catalog-grid {
        gap: 24px 16px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .pr-film-related > div:first-child {
        margin-bottom: 14px;
        align-items: center;
        gap: 12px;
    }
    .pr-film-related h2 {
        line-height: 1.2;
        min-width: 0;
        letter-spacing: -0.035em;
        white-space: normal;
    }
    .pr-related-controls {
        gap: 6px;
    }
    .pr-related-controls .pr-row-arrow {
        width: 32px;
        height: 32px;
    }
    .pr-login-dialog,
    .pr-account-dialog {
        padding: 24px 20px;
        border-radius: 18px;
    }
    .pr-poster-votes .pr-poster-dislike,
    .pr-poster-votes .pr-poster-like {
        border-radius: 8px;
        height: 34px;
        min-height: 34px;
    }
    .pr-film-layout .pr-film-badges > span {
        min-width: 0;
        min-height: 32.4px;
        flex-shrink: 1;
        white-space: nowrap;
        line-height: 1.2;
        box-shadow:
            0 3px 9px #0004,
            inset 0 1px 0#e3d5af0c;
        font-size: 11px;
        padding: 6px 7px;
    }
    .pr-category-header {
        padding: 18px 20px 0;
    }
    .pr-category-header h1 {
        margin-top: 12px;
    }
    .pr-category-header + .catalog-section {
        padding-top: 18px;
    }
    .pr-cast-text {
        font-size: 13px;
    }
    .film-description {
        font-size: 16px;
        line-height: 1.75;
    }
    .pr-home-collections {
        padding: 26px 20px 0;
    }
    .pr-theme-collection {
        flex-basis: 260px;
    }
    .pr-collection-copy strong {
        font-size: 19px;
    }
    .pr-home-collections .pr-section-head {
        margin-bottom: 15px;
    }
    .pr-contact-page {
        font-size: 15px;
    }
    .pr-contact-page section {
        margin-top: 26px;
    }
    .pr-hero-slider .home-hero .pr-hero-actions > a {
        box-sizing: border-box;
        height: 38.4px;
        min-height: 38.4px;
        padding: 0 17.6px;
        font-size: 12px;
        line-height: 1.2;
        border-radius: 9.6px;
    }
    .pr-hero-slider .home-hero .pr-hero-actions > a svg {
        width: 14.4px;
        height: 14.4px;
    }
    .pr-hero-slider .home-hero .pr-hero-actions {
        gap: 12px;
    }
    .film-route .poster-row > .movie-card {
        width: 160px;
    }
    .film-meta > div > span:first-child,
    .film-meta > div > span:last-child {
        font-size: 13px;
    }
}
/* Адаптивность и настройки устройства: (prefers-reduced-motion: reduce) */
@media (prefers-reduced-motion: reduce) {
    .movie-card .media-img[data-poster-state] {
        transition: none;
    }
    *,
    ::after,
    ::before {
        transition: none;
        animation: none;
    }
    *,
    .pr-hero-dock .hero-thumbs,
    ::after,
    ::before {
        scroll-behavior: auto;
    }
    .pr-hero-arrow[data-hero-step="1"],
    .pr-hero-slider .home-hero.is-active,
    .pr-hero-slider .home-hero.is-leaving {
        animation: none;
    }
    .pr-hero-slider::after {
        animation: none;
        left: 34%;
        opacity: 0.7;
    }
    .pr-back-top,
    .pr-menu-links > a,
    .pr-player-share > .pr-share-icon,
    body > .ui-dialog button {
        transition: none;
    }
    .pr-comment-votes > a:hover > span,
    .pr-player-share > .pr-share-icon:hover,
    .pr-theme-collection:hover img,
    body > .ui-dialog .ui-dialog-buttonpane button:hover {
        transform: none;
    }
    .pr-login-dialog[open],
    .pr-account-dialog[open],
    .pr-menu-panel,
    .pr-navigation-menu[open] {
        animation: none;
    }
    .pr-menu-tabs > :is(button, a) {
        transition: none;
    }
    .pr-collection-art img,
    .pr-genre-step,
    .pr-theme-collection {
        transition: none;
    }
    .pr-account-link,
    .pr-account-logout,
    .pr-login-field input {
        transition: none;
    }
}
/* Адаптивность и настройки устройства: (max-width: 900px) */
@media (max-width: 900px) {
    .pr-discussion-layout:has(.pr-comment):has(.native-comment-form) {
        grid-template-columns: minmax(0, 1fr);
    }
    .pr-discussion-layout:has(.pr-comment) .guest-fields {
        flex-direction: row;
    }
    .pr-discussion-layout:has(.pr-comment):has(.native-comment-form)
        > .pr-discussion-compose {
        position: static;
        max-height: none;
        overflow: visible;
    }
    .pr-discussion-layout:not(:has(.pr-comment)) > .pr-discussion-compose {
        width: 100%;
    }
    .pr-discussion-compose {
        grid-row: 1;
    }
    .pr-discussion-feed {
        grid-row: 2;
    }
}
/* Адаптивность и настройки устройства: (min-width: 1100px) */
@media (min-width: 1100px) {
    .pr-hero-dock {
        bottom: calc(14px + 20%);
    }
}
/* Адаптивность и настройки устройства: (min-width: 761px) */
@media (min-width: 761px) {
    .player-container .player-frame {
        aspect-ratio: 20/9;
    }
    .film-poster .pr-poster-votes {
        box-sizing: border-box;
        height: 70.2px;
        padding: 3.1px 7px;
    }
    .film-poster .pr-poster-votes .pr-score-ring {
        align-self: center;
    }
}
/* Адаптивность и настройки устройства: (max-width: 560px) */
@media (max-width: 560px) {
    .pr-account-admin-layout .account-links:where(:not([hidden])) {
        grid-template-columns: minmax(0, 1fr);
        gap: 6px;
        margin-top: 18px;
    }
    .pr-account-admin-layout .pr-account-link {
        min-height: 44px;
        padding: 6px 10px;
    }
    .pr-account-admin-layout .pr-account-icon {
        width: 28px;
        height: 28px;
    }
    .pr-account-admin-layout .pr-account-footer {
        margin-top: 14px;
        padding-top: 10px;
    }
}
/* Адаптивность и настройки устройства: (max-width: 360px) */
@media (max-width: 360px) {
    .pr-film-heading .provider-score {
        padding: 6px 9px;
    }
    .pr-film-layout .film-meta {
        gap: 18px 14px;
    }
    .pr-player-share > .pr-share-icon {
        width: 32px;
        height: 32px;
        padding: 7px;
    }
    .pr-player-share {
        gap: 6px;
    }
    .pr-login-heading {
        gap: 10px;
        padding-right: 32px;
    }
    .pr-login-dialog,
    .pr-account-dialog {
        padding-inline: 16px;
    }
    .pr-account-heading {
        gap: 12px;
    }
    .pr-account-avatar {
        width: 46px;
        height: 46px;
        border-radius: 14px;
    }
    .pr-account-link {
        gap: 10px;
        padding: 11px 10px;
    }
    .pr-account-copy > small {
        font-size: 10px;
    }
    .pr-login-mark {
        width: 32px;
        height: 32px;
        border-radius: 10px;
    }
    .pr-login-mark svg {
        width: 18px;
        height: 18px;
    }
}
/* Адаптивность и настройки устройства: (min-width: 1001px) and (max-width: 1180px) */
@media (min-width: 1001px) and (max-width: 1180px) {
    .pr-site-header .main-nav .pr-type-link,
    .pr-site-header .pr-type-link {
        font-size: 12px;
    }
    .pr-site-header:where(:not([hidden])) {
        justify-content: space-between;
        gap: 18px;
        padding-inline: 22px;
        grid-template-columns: auto auto minmax(190px, 1fr) auto;
        display: flex;
        padding: 14px 20px;
    }
    .pr-site-header > .main-nav:where(:not([hidden])) {
        gap: 12px;
        display: none;
    }
    .pr-site-header > .pr-header-account:where(:not([hidden])),
    .pr-site-header > .search-wrap:where(:not([hidden])) {
        display: none;
    }
    .pr-site-header > .pr-mobile-trigger:where(:not([hidden])) {
        place-items: center;
        width: 38px;
        height: 38px;
        padding: 8px;
        border: 1px solid #34343e;
        border-radius: 10px;
        background: #17171f;
        color: #d9d9e2;
        display: grid;
    }
    .pr-navigation-menu {
        width: min(950px, calc(100% - 40px));
    }
}
/* Адаптивность и настройки устройства: (max-width: 1000px) */
@media (max-width: 1000px) {
    .pr-site-header > .main-nav:where(:not([hidden])),
    .pr-site-header > .pr-header-account:where(:not([hidden])),
    .pr-site-header > .search-wrap:where(:not([hidden])) {
        display: none;
    }
    .pr-site-header > .pr-mobile-trigger:where(:not([hidden])) {
        place-items: center;
        width: 38px;
        height: 38px;
        padding: 8px;
        border: 1px solid #34343e;
        border-radius: 10px;
        background: #17171f;
        color: #d9d9e2;
        display: grid;
    }
    .pr-mobile-trigger svg {
        width: 20px;
        height: 20px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.7;
        stroke-linecap: round;
    }
    .pr-navigation-menu[open] {
        animation: prMenuDrawer 0.28s cubic-bezier(0.2, 0.7, 0.2, 1) both;
    }
    .pr-navigation-menu .search-wrap:where(:not([hidden])) {
        width: 100%;
        margin: 0 0 20px;
        display: block;
        position: relative;
    }
    .pr-navigation-menu .search-wrap input {
        font-size: 16px;
        height: 46px;
    }
    .pr-menu-panel {
        padding-top: 20px;
    }
    .pr-menu-panel-head {
        margin-bottom: 20px;
    }
    .pr-menu-year .pr-menu-links > a {
        min-width: 52px;
    }
    .pr-menu-bottom {
        align-items: stretch;
        flex-direction: column;
        gap: 14px;
    }
    .pr-menu-bottom > .pr-filter-open {
        width: 100%;
        font-size: 12px;
    }
    .pr-navigation-menu .pr-header-account:where(:not([hidden])) {
        display: block;
    }
    .pr-navigation-menu .pr-header-account > .login-button {
        width: 100%;
        min-height: 42px;
        font-size: 13px;
    }
    .pr-navigation-menu {
        height: 100dvh;
        max-height: 100dvh;
        padding: 24px 20px calc(24px + env(safe-area-inset-bottom));
        border: 0;
        border-left: 1px solid #34343e;
        border-radius: 0;
        background: #111116;
        inset: 0 0 0 auto;
        width: min(430px, 100%);
        max-width: 100%;
    }
    .pr-navigation-menu .pr-menu-tabs:where(:not([hidden])) {
        padding-bottom: 19px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }
    .pr-menu-groups {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }
    .pr-menu-group {
        padding: 15px;
    }
    .pr-menu-tabs > :is(button, a):first-child {
        grid-column: auto;
    }
    .pr-site-header:where(:not([hidden])) {
        justify-content: space-between;
        align-items: center;
        display: flex;
        gap: 18px;
        padding: 14px 20px;
    }
    .pr-menu-tabs > :is(button, a) {
        min-width: 0;
        overflow-wrap: anywhere;
        padding: 8px 13px;
        font-size: 12px;
        min-height: 32.4px;
        padding-block: 6.2px;
    }
    .pr-menu-links > a {
        padding: 8px 13px;
        font-size: 12px;
        min-height: 32.4px;
        padding-block: 6.2px;
    }
    .pr-menu-platform .pr-menu-links > a {
        min-height: 37.8px;
        padding-block: 5.9px;
    }
}
/* Адаптивность и настройки устройства: (min-width: 1001px) */
@media (min-width: 1001px) {
    .pr-site-header {
        grid-template-columns: auto auto minmax(210px, 1fr) auto;
        gap: 28px;
        padding: 15px max(24px, calc((100% - 1440px) / 2));
    }
    .pr-site-header > .main-nav {
        justify-content: flex-start;
        gap: 20px;
    }
    .pr-site-header > .search-wrap {
        width: 100%;
        max-width: none;
        min-width: 0;
    }
    .pr-site-header .pr-type-link {
        font-size: 13px;
    }
    .catalog-grid {
        gap: 28px 20px;
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
    .pr-hero-slider .home-hero-inner {
        grid-template-columns: 280px minmax(0, 1fr);
        padding-bottom: 64px;
    }
    .pr-hero-slider .hero-poster {
        width: 280px;
        aspect-ratio: 2/3;
    }
}
/* Адаптивность и настройки устройства: (min-width: 761px) and (max-width: 1000px) */
@media (min-width: 761px) and (max-width: 1000px) {
    .catalog-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
/* Адаптивность и настройки устройства: (min-width: 1181px) */
@media (min-width: 1181px) {
    .pr-site-header {
        gap: 18px;
        grid-template-columns: auto auto minmax(180px, 1fr) auto;
    }
    .pr-site-header > .main-nav {
        gap: 13px;
    }
    .pr-site-header .pr-type-link {
        font-size: 12px;
    }
}

/* Штатные элементы DLE */

.pr-native-breadcrumbs {
    max-width: 1280px;
    margin: 0 auto;
    box-sizing: content-box;
    padding: 10px 40px 0;
}
/* Адаптивность и настройки устройства: (max-width: 767px) */
@media (max-width: 767px) {
    .pr-native-breadcrumbs {
        padding: 8px 20px;
    }
}

/* График серий: оформление установленного модуля soon-tv */
.pr-episode-calendar {
    box-sizing: border-box;
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
    padding: 32px 40px 0;
}
.pr-episode-calendar h2 {
    margin: 0 0 22px;
}
.pr-schedule-season {
    overflow: hidden;
    margin-bottom: 14px;
    border: 1px solid #292930;
    border-radius: 16px;
    background: linear-gradient(135deg, #141419, #0f0f13);
    box-shadow: 0 8px 24px #0003;
}
.pr-schedule-season-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 20px;
    border-bottom: 1px solid #292930;
    background: linear-gradient(105deg, #ffb8000c, #17171d 65%);
}
.pr-schedule-season-header strong {
    color: #f2f2f4;
    font-size: 16px;
}
.pr-schedule-toggle,
.pr-schedule-more button {
    border: 1px solid #ffb8004d;
    border-radius: 9px;
    padding: 8px 13px;
    background: #ffb8000b;
    color: #ffcf62;
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.3;
    cursor: pointer;
    transition: background 180ms ease, color 180ms ease, border-color 180ms ease;
}
.pr-schedule-toggle:hover,
.pr-schedule-more button:hover {
    border-color: #ffb800;
    background: #ffb800;
    color: #17130a;
}
.pr-schedule-toggle:focus-visible,
.pr-schedule-more button:focus-visible {
    outline: 2px solid #ffcf62;
    outline-offset: 3px;
}
.pr-schedule-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    color: #c8c8d0;
    font-size: 14px;
    line-height: 1.5;
}
.pr-schedule-table td {
    padding: 16px 20px;
    border-bottom: 1px solid #ffffff08;
    vertical-align: middle;
    overflow-wrap: anywhere;
}
.pr-schedule-episode {
    transition: background 180ms ease;
}
.pr-schedule-episode:hover {
    background: #ffffff03;
}
.pr-schedule-number {
    width: 20%;
    color: #9c9ca9;
    font-size: 13px;
}
.pr-schedule-title {
    width: 42%;
    color: #eeeef2;
}
.pr-schedule-date {
    width: 28%;
    color: #dac69c;
    font-size: 13px;
}
.pr-schedule-mark {
    width: 10%;
    text-align: right;
    color: #a4c895;
}
.pr-schedule-more {
    padding: 14px 20px 18px;
}
.pr-schedule-more:empty {
    display: none;
}
@media (max-width: 700px) {
    .pr-episode-calendar {
        padding: 26px 20px 0;
    }
    .pr-schedule-season-header {
        padding: 14px 16px;
    }
    .pr-schedule-table,
    .pr-schedule-table tbody,
    .pr-schedule-table td {
        display: block;
        width: auto;
    }
    .pr-schedule-table .pr-schedule-episode {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 4px 12px;
        padding: 14px 16px;
        border-bottom: 1px solid #ffffff08;
    }
    .pr-schedule-table td {
        padding: 0;
        border: 0;
    }
    .pr-schedule-title {
        grid-column: 1 / -1;
        grid-row: 1;
        padding-bottom: 4px;
    }
    .pr-schedule-number {
        grid-column: 1;
        grid-row: 2;
    }
    .pr-schedule-date {
        grid-column: 1;
        grid-row: 3;
    }
    .pr-schedule-mark {
        grid-column: 2;
        grid-row: 2 / 4;
        align-self: center;
    }
    .pr-schedule-more {
        padding: 14px 16px;
    }
}

/* Статус сериала рядом с графиком */
.pr-series-state-line {
    box-sizing: border-box;
    max-width: 1360px;
    margin: 0 auto;
    padding: 16px 40px 0;
    color: #c9b67e;
    font-size: 12px;
}
.pr-series-state-line:empty {
    display: none;
}
@media (max-width: 700px) {
    .pr-series-state-line {
        padding-inline: 20px;
    }
}
