:root {
    color-scheme: dark;
    --bg: #07070b;
    --surface: #12121a;
    --surface-2: #1a1924;
    --line: rgba(255,255,255,.08);
    --text: #f7f6fa;
    --muted: #aaa7b4;
    --accent: #ff365f;
    --accent-2: #8b5cff;
    --good: #25bb70;
    --radius: 18px;
    --shadow: 0 24px 60px rgba(0,0,0,.38);
    /* DLE/eassistant compatibility tokens for routes where legacy styles are isolated. */
    --bg2: #171720;
    --bg3: #252431;
    --color1: #ff365f;
    --color2: #8b5cff;
    --color3: #ff8ba3;
    --color6: #34313f;
    --light: rgba(255,255,255,.08);
    --light2: rgba(255,255,255,.16);
    --dark: rgba(0,0,0,.22);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--bg); color: var(--text); font: 400 15px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body.modal-opened { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { color: inherit; font: inherit; }
button { cursor: pointer; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.08; letter-spacing: -.035em; }
h1 { font-size: clamp(36px, 5vw, 68px); }
h2 { margin-bottom: 0; font-size: clamp(26px, 3vw, 38px); }
.wrapper { min-height: 100vh; overflow: clip; }
.container { width: min(1380px, calc(100% - 40px)); margin-inline: auto; }
.section { margin-top: clamp(44px, 7vw, 88px); }
.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; }
.skip-link { position: fixed; z-index: 999; left: 18px; top: 10px; padding: 10px 14px; border-radius: 10px; background: white; color: #111; transform: translateY(-150%); }
.skip-link:focus { transform: none; }
:focus-visible { outline: 3px solid #ff8da5; outline-offset: 3px; }
.eyebrow, .page-heading > span { color: #ff9caf; font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }

/* Header */
.site-header { position: sticky; z-index: 100; top: 0; height: 72px; padding: 0; border-bottom: 1px solid var(--line); background: rgba(7,7,11,.86); backdrop-filter: blur(22px); }
/* Specificity is intentional: the compatibility stylesheet contains header .container. */
.site-header .header-inner { position: relative; display: grid; height: 100%; grid-template-columns: auto minmax(0,1fr) auto minmax(210px,350px) auto; align-items: center; justify-content: initial; gap: clamp(12px, 2vw, 30px); }
.header-logo { font-size: 25px; font-weight: 900; letter-spacing: -.055em; white-space: nowrap; }
.header-logo span { color: var(--accent); }
.desktop-nav { display: flex; min-width: 0; align-items: center; gap: clamp(13px, 1.55vw, 25px); color: #b9b6c2; font-size: 14px; font-weight: 650; white-space: nowrap; }
.desktop-nav a:hover { color: white; }
.catalog-btn, .header-search_icon, .search-close { display: inline-flex; min-width: 42px; min-height: 42px; align-items: center; justify-content: center; gap: 8px; border: 0; border-radius: 12px; background: var(--surface-2); }
.catalog-btn { padding: 0 14px; font-weight: 700; }
.catalog-btn.active { background: var(--accent); }
.catalog { position: absolute; z-index: 5; top: calc(100% + 12px); right: 140px; display: grid; width: min(560px, calc(100vw - 32px)); padding: 18px; grid-template-columns: repeat(3, 1fr); gap: 7px; border: 1px solid var(--line); border-radius: 18px; background: rgba(18,18,26,.98); box-shadow: var(--shadow); opacity: 0; pointer-events: none; transform: translateY(-7px); transition: .2s ease; }
.catalog.active { opacity: 1; pointer-events: auto; transform: none; }
.catalog a { padding: 11px 13px; border-radius: 10px; color: #cbc8d2; }
.catalog a:hover { background: rgba(255,255,255,.07); color: white; }
.header-search { position: relative; width: 100%; }
.header-search form { display: flex; width: 100%; height: 42px; align-items: center; gap: 10px; padding: 0 12px; border: 1px solid transparent; border-radius: 13px; background: var(--surface-2); }
.header-search form:focus-within { border-color: rgba(255,54,95,.6); }
.header-search input:not([type="hidden"]) { min-width: 0; flex: 1; border: 0; outline: 0; background: transparent; }
.header-search input::placeholder { color: #827f8e; }
.header-search_icon { display: none; }
.search-close { display: none; min-width: 30px; min-height: 30px; padding: 0; background: transparent; }
.header-search_top { position: absolute; z-index: 6; top: calc(100% + 12px); right: 0; display: none; width: min(440px, calc(100vw - 32px)); padding: 18px; border: 1px solid var(--line); border-radius: 18px; background: rgba(18,18,26,.98); box-shadow: var(--shadow); }
.header-search_top.active { display: block; }
.header-search_top > span { display: block; margin-bottom: 12px; color: var(--muted); font-size: 12px; }
.header-user-wrap { display: flex; min-width: 42px; justify-content: flex-end; }
.header-user { position: relative; }
.header-user > a, .header-user > i { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: var(--surface-2); }
.guest-user { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; background: var(--surface-2); color: #d9d6df; }
.guest-user > i { display: inline; width: auto; height: auto; background: transparent; }
.mobile-nav { display: none; }

/* Hero */
.home-hero { position: relative; min-height: clamp(520px, 56vw, 670px); margin-top: 18px; overflow: hidden; border-radius: 28px; background: #17121d; }
.home-hero-media, .home-hero-shade { position: absolute; inset: 0; }
.home-hero-media img { width: 100%; height: 100%; object-fit: cover; }
.home-hero-shade { background: linear-gradient(90deg, rgba(5,5,9,.98) 0%, rgba(5,5,9,.76) 39%, rgba(5,5,9,.08) 74%), linear-gradient(0deg, rgba(5,5,9,.68), transparent 45%); }
.home-hero-copy { position: relative; z-index: 2; display: flex; max-width: 710px; min-height: inherit; padding: clamp(42px, 7vw, 98px); flex-direction: column; justify-content: center; }
.home-hero h1 { max-width: 650px; margin: 16px 0 20px; font-size: clamp(42px, 5.4vw, 76px); }
.home-hero p { max-width: 590px; margin-bottom: 0; color: #d1ced8; font-size: clamp(16px, 1.6vw, 19px); }
.home-hero-actions { display: flex; gap: 12px; margin-top: 31px; }
.button { display: inline-flex; min-height: 48px; padding: 0 22px; align-items: center; justify-content: center; gap: 9px; border: 0; border-radius: 13px; font-weight: 800; transition: transform .18s ease, background .18s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(135deg, #ff426c, #ff2452); box-shadow: 0 14px 35px rgba(255,36,82,.25); }
.button-secondary { background: rgba(255,255,255,.11); backdrop-filter: blur(12px); }
.button.compact { min-height: 40px; padding-inline: 16px; font-size: 13px; }

/* Home rows */
.section-head, .keep-items_head { display: flex; margin-bottom: 21px; align-items: end; justify-content: space-between; gap: 18px; }
.section-head h2 { margin-top: 5px; }
.section-head > a { color: #b7b4c0; }
.genre-row { display: flex; gap: 10px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.genre-row a { flex: 0 0 auto; padding: 13px 18px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); font-weight: 700; }
.genre-row a:hover { border-color: rgba(255,54,95,.5); background: #211824; }
.keep-items { padding-block: clamp(34px, 5vw, 64px); overflow: hidden; background: linear-gradient(180deg, transparent, rgba(255,255,255,.025), transparent); }
.keep-items_slider { position: relative; overflow: hidden; }
.keep-items_slider .swiper-wrapper { padding: 8px 0 12px; align-items: stretch; }
.keep-items_slider .swiper-slide { height: auto; }
.keep-items_nav { display: flex; gap: 8px; }
.keep-items_nav button { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: var(--surface-2); }
.keep-items_nav button:hover { background: #282636; }
.keep-item { min-width: 0; padding-bottom: 4px; }
.keep-item_bg { position: relative; display: block; width: 100%; overflow: hidden; aspect-ratio: 2/3; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.keep-item_bg::after { position: absolute; inset: 45% 0 0; content: ""; background: linear-gradient(0deg, rgba(5,5,9,.9), transparent); }
.keep-item_bg img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.keep-item:hover .keep-item_bg { transform: translateY(-7px); box-shadow: var(--shadow); }
.keep-item:hover .keep-item_bg img { transform: scale(1.035); }
.keep-item_meta { position: absolute; z-index: 2; right: 10px; bottom: 10px; left: 10px; display: flex; width: auto; height: auto; padding: 0; align-items: center; gap: 7px; overflow: hidden; border: 0; border-radius: 0; background: transparent; color: #d8d5de; font-size: 11px; white-space: nowrap; }
.keep-item_meta > span:not(.rating-color) { overflow: hidden; text-overflow: ellipsis; }
.rating-color { display: inline-flex; min-width: 34px; min-height: 25px; padding: 0 7px; align-items: center; justify-content: center; border-radius: 8px; background: var(--good); color: white; font-weight: 850; }
.rating-color.middle { background: #e4a230; }
.rating-color.low { background: #d95656; }
.card-play { position: absolute; z-index: 3; top: 50%; left: 50%; display: grid; width: 52px; height: 52px; place-items: center; border-radius: 50%; background: rgba(255,255,255,.93); color: #16131d; opacity: 0; transform: translate(-50%,-42%); transition: .2s ease; }
.keep-item:hover .card-play { opacity: 1; transform: translate(-50%,-50%); }
.keep-item_title { display: block; margin-top: 13px; overflow: hidden; color: #f1eff4; font-size: 15px; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }

.latest-section > .section-head > a, .episodes-section > .section-head > a { color: #c1bec8; font-weight: 700; white-space: nowrap; }
.latest-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.keep-best_item { display: grid; min-width: 0; min-height: 254px; grid-template-columns: 158px minmax(0,1fr); gap: 20px; padding: 14px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(145deg, #171720, #101017); transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.keep-best_item:hover { border-color: rgba(255,255,255,.17); box-shadow: 0 22px 45px rgba(0,0,0,.24); transform: translateY(-3px); }
.keep-best_poster { position: relative; display: block; overflow: hidden; aspect-ratio: 2/3; border-radius: 15px; background: #20202b; }
.keep-best_poster::after { position: absolute; inset: 50% 0 0; content: ""; background: linear-gradient(0deg,rgba(0,0,0,.55),transparent); }
.keep-best_poster img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.keep-best_item:hover .keep-best_poster img { transform: scale(1.04); }
.poster-play { position: absolute; z-index: 2; right: 12px; bottom: 12px; display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: white; color: #15131a; box-shadow: 0 8px 22px rgba(0,0,0,.3); }
.keep-best_content { display: flex; min-width: 0; padding: 10px 7px 8px 0; flex-direction: column; align-items: flex-start; }
.keep-best_title { display: -webkit-box; overflow: hidden; color: white; font-size: clamp(18px,2vw,22px); font-weight: 820; line-height: 1.16; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.keep-best_meta { display: flex; width: 100%; margin-top: 12px; align-items: center; gap: 8px; overflow: hidden; color: var(--muted); font-size: 12px; white-space: nowrap; }
.keep-best_meta > span:not(.rating-color) { overflow: hidden; text-overflow: ellipsis; }
.keep-best_text { display: -webkit-box; margin-top: 14px; overflow: hidden; color: #aaa7b3; font-size: 13px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.keep-best_text p { margin: 0; }
.text-link { display: inline-flex; margin-top: auto; padding-top: 12px; align-items: center; gap: 8px; color: #ff8ba3; font-size: 13px; font-weight: 800; }

.episodes-section { position: relative; padding: clamp(24px,4vw,44px); overflow: hidden; border: 1px solid var(--line); border-radius: 28px; background: radial-gradient(circle at 85% 0,rgba(139,92,255,.17),transparent 36%),linear-gradient(145deg,#15141e,#0e0e15); }
.episode-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.keep-upd_item { position: relative; display: grid; min-width: 0; min-height: 126px; padding: 11px; grid-template-columns: 72px minmax(0,1fr); gap: 13px; overflow: hidden; border: 1px solid rgba(255,255,255,.07); border-radius: 17px; background: rgba(255,255,255,.04); transition: background .18s ease, transform .18s ease; }
.keep-upd_item:hover { background: rgba(255,255,255,.075); transform: translateY(-2px); }
.keep-upd_poster { position: relative; display: block; overflow: hidden; aspect-ratio: 2/3; border-radius: 11px; background: #22212b; }
.keep-upd_poster img { width: 100%; height: 100%; object-fit: cover; }
.keep-upd_poster > span { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(0,0,0,.35); color: white; opacity: 0; transition: opacity .18s ease; }
.keep-upd_item:hover .keep-upd_poster > span { opacity: 1; }
.keep-upd_content { display: flex; min-width: 0; padding: 5px 0; flex-direction: column; }
.keep-upd_title { color: #f5f3f7; font-weight: 780; line-height: 1.3; }
.keep-upd_meta { display: flex; margin-top: 8px; align-items: center; gap: 7px; color: var(--muted); font-size: 11px; }
.keep-upd_meta .rating-color { min-width: 30px; min-height: 22px; }
.keep-upd_content time { margin-top: auto; color: #777481; font-size: 10px; }
.keep-upd_episode { position: absolute; right: 9px; bottom: 9px; display: flex; gap: 3px; }
.keep-upd_episode b { padding: 4px 6px; border-radius: 7px; background: rgba(139,92,255,.2); color: #c9b7ff; font-size: 10px; }
.trust-strip { display: grid; padding: 25px; grid-template-columns: repeat(3,1fr); gap: 18px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(135deg, #17141f, #101018); }
.trust-strip div { display: flex; flex-direction: column; gap: 3px; }
.trust-strip strong { font-size: 17px; }
.trust-strip span { color: var(--muted); }

/* Catalog */
.content { padding-block: 55px 90px; }
.page-heading { max-width: 800px; margin-bottom: 30px; }
.page-heading h1 { margin: 7px 0 14px; font-size: clamp(36px, 5vw, 62px); }
.page-heading p { color: var(--muted); }
.e-grid6 { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 28px 18px; }
.navigation { display: flex; margin-top: 40px; gap: 8px; justify-content: center; }
.navigation a, .navigation span { display: grid; min-width: 42px; min-height: 42px; place-items: center; border-radius: 10px; background: var(--surface); }
.catalog-description { max-width: 900px; margin: 58px auto 0; padding: 25px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); color: var(--muted); }
.catalog-description h2 { margin-bottom: 12px; color: var(--text); font-size: 27px; }
.catalog-description p { margin-bottom: 0; }

/* Full story */
.keep-full { position: relative; min-height: 520px; padding: clamp(48px,7vw,88px) 0; overflow: hidden; background: #0c0b11; }
.keep-full::after { position: absolute; inset: 0; content: ""; background: linear-gradient(90deg,rgba(7,7,11,.97) 0%,rgba(7,7,11,.8) 48%,rgba(7,7,11,.72)),linear-gradient(0deg,#07070b 0%,transparent 50%); }
.keep-full_backdrop { position: absolute; inset: -35%; opacity: .3; filter: blur(55px) saturate(1.25); transform: scale(1.1); }
.keep-full_backdrop img { width: 100%; height: 100%; object-fit: cover; }
.keep-full > .container { position: relative; z-index: 2; display: grid; grid-template-columns: 250px minmax(0,1fr); gap: clamp(28px, 5vw, 68px); align-items: center; }
.keep-full_poster { overflow: hidden; aspect-ratio: 2/3; border-radius: 22px; box-shadow: var(--shadow); }
.keep-full_poster img { width: 100%; height: 100%; object-fit: cover; }
.keep-full_title { max-width: 900px; margin: 0; font-size: clamp(38px, 5vw, 70px); }
.keep-full_meta { display: flex; margin-top: 18px; align-items: center; gap: 10px; color: #cfccd5; flex-wrap: wrap; }
.keep-full_subtitle { max-width: 760px; margin-top: 18px; color: #b7b4c0; font-size: 17px; }
.keep-full_link { display: flex; margin-top: 24px; align-items: center; gap: 13px; flex-wrap: wrap; }
.keep-full_link > a { display: inline-flex; min-height: 46px; padding: 0 18px; align-items: center; gap: 9px; border-radius: 12px; background: var(--surface-2); font-weight: 800; }
.keep-full_link > .watch-button { min-height: 50px; padding-inline: 23px; background: linear-gradient(135deg,#ff426c,#ff2452); box-shadow: 0 14px 32px rgba(255,36,82,.25); }
.keep-full_link > i { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 12px; background: var(--surface-2); }
.keep-detal { padding-block: 28px 60px; scroll-margin-top: 80px; }
.external-player { width: min(1180px,calc(100% - 40px)); height: min(68vw,680px); min-height: 460px; margin: 0 auto 26px; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: #000; }
.iframe-container { width: min(1180px, calc(100% - 40px)); margin: 0 auto 56px; overflow: hidden; aspect-ratio: 16/9; border: 1px solid var(--line); border-radius: 22px; background: #000; box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.iframe-container iframe { width: 100%; height: 100%; border: 0; }
.keep-detal > .container { display: grid; padding: clamp(22px,4vw,42px); grid-template-columns: minmax(0,1fr) 380px; gap: clamp(30px, 6vw,86px); border: 1px solid var(--line); border-radius: 26px; background: linear-gradient(145deg,#111119,#0c0c12); }
.keep-detal > .container h2 { margin-bottom: 22px; }
.keep-detal_text { color: #c4c1cb; font-size: 16px; line-height: 1.75; }
.keep-facts { position: sticky; top: 96px; align-self: start; padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }
.keep-facts h2 { font-size: 25px; }
.keep-facts ul { margin: 18px 0 0; padding: 0; list-style: none; }
.keep-facts li { display: grid; padding: 11px 0; grid-template-columns: 125px minmax(0,1fr); gap: 12px; border-bottom: 1px solid var(--line); color: #d8d5df; overflow-wrap: anywhere; }
.keep-facts li > span:first-child { color: var(--muted); }
.keep-related { padding-block: 35px 65px; }
.dle-comm { padding: clamp(20px,4vw,36px); border: 1px solid var(--line); border-radius: 22px; background: var(--surface); }
.dle-comm > h2 { margin-bottom: 22px; }
.dle-comm textarea { width: 100%; margin-bottom: 14px; }
.dle-comm_submit { display: flex; margin-top: 16px; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.player-modal { position: fixed; z-index: 300; inset: 50% auto auto 50%; display: none; width: min(1000px, calc(100% - 30px)); padding: 16px; border: 1px solid var(--line); border-radius: 20px; background: #111118; box-shadow: var(--shadow); transform: translate(-50%,-50%); }
.player-modal_heading { display: flex; padding: 5px 4px 14px; align-items: center; justify-content: space-between; }
.player-modal_iframe { aspect-ratio: 16/9; overflow: hidden; border-radius: 13px; }
.player-modal_iframe iframe { width: 100%; height: 100%; border: 0; }

/* Seasons */
.seasone-pages { display: flex; width: min(1380px, calc(100% - 40px)); margin: 20px auto 26px; padding: 0; align-items: center; justify-content: flex-start; gap: 8px; flex-wrap: wrap; }
.seasone-pages a, .seasone-pages a.active { position: relative; display: inline-flex; min-width: 0; min-height: 42px; margin: 0; padding: 0 14px; align-items: center; justify-content: center; gap: 5px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); color: #d5d2db; font-weight: 750; text-align: center; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.seasone-pages a::before { position: static; content: "Сезон"; color: var(--muted); font-size: 12px; }
.seasone-pages a:hover { border-color: rgba(255,54,95,.5); background: #25222e; transform: translateY(-1px); }
.seasone-pages a.active { border-color: transparent; background: linear-gradient(135deg, #ff426c, #ff2452); color: white; box-shadow: 0 10px 25px rgba(255,36,82,.2); }
.seasone-pages a.active::before { color: rgba(255,255,255,.78); }

/* Forms and DLE service pages */
input, textarea, select { max-width: 100%; border: 1px solid var(--line); border-radius: 12px; background: #191821; }
textarea { min-height: 140px; padding: 14px; resize: vertical; }
.bbcodes, .btn, button[type="submit"] { min-height: 44px; padding: 0 18px; border: 0; border-radius: 11px; background: var(--accent); font-weight: 800; }
.content > .dle-form { width: min(680px, 100%); margin: 0 auto; padding: clamp(22px, 4vw, 42px); border: 1px solid var(--line); border-radius: 22px; background: var(--surface); box-shadow: var(--shadow); }
.dle-form > h1, .dle-use_setting > h2 { margin-bottom: 22px; font-size: clamp(28px, 4vw, 42px); }
.dle-form .attention, .content > .attention { margin-bottom: 24px; padding: 16px 18px; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(255,255,255,.04); color: #c9c6d0; line-height: 1.55; }
.dle-form .dle-form_flexno input, .dle-form .dle-form_flex input { max-width: none; min-height: 50px; padding: 13px 15px; }
.dle-form_flexno { margin-bottom: 18px; }
.dle-form_flex { flex-wrap: wrap; }
.dle-use { overflow: hidden; border: 1px solid var(--line); border-radius: 24px; background: var(--surface); }
.dle-use_bg { border-radius: 0; background: linear-gradient(135deg, #241d31, #13131b); }
.dle-use_content { padding: 10px 24px 24px; }
.dle-use_avatar { border-color: var(--surface); }
.dle-use_links { background: var(--surface-2); }
.dle-use_info { margin-top: 22px; border: 1px solid var(--line); background: var(--surface); }
.dle-use_setting { margin-top: 24px; padding: clamp(22px, 4vw, 36px); border: 1px solid var(--line); border-radius: 22px; background: var(--surface); }
.form__table { width: 100%; }

/* Footer */
.site-footer { margin-top: 80px; padding: 55px 0 25px; border-top: 1px solid var(--line); background: #0b0b11; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr .8fr; gap: 38px; }
.footer-brand p { max-width: 340px; margin-top: 13px; color: var(--muted); }
.footer-menu { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; color: var(--muted); }
.footer-menu strong, .footer-social strong { margin-bottom: 5px; color: white; }
.footer-menu a:hover { color: white; }
.footer-social { display: flex; align-items: flex-start; gap: 12px; flex-wrap: wrap; }
.footer-social strong { width: 100%; }
.footer-social a { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: var(--surface-2); }
.footer-bottom { display: flex; margin-top: 40px; padding-top: 22px; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); color: #777481; font-size: 12px; }

/* Helpers retained for DLE */
.e-cover img { width: 100%; height: 100%; object-fit: cover; }
.e-nowrap { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.e-clamp2, .e-clamp4 { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.e-clamp2 { -webkit-line-clamp: 2; }
.e-clamp4 { -webkit-line-clamp: 4; }
.e-overlay { position: fixed; z-index: 90; inset: 0; background: rgba(0,0,0,.66); backdrop-filter: blur(6px); }
.e-overlay.hidden { display: none; }

@media (max-width: 1120px) {
    .desktop-nav { display: none; }
    .site-header .header-inner { grid-template-columns: auto auto minmax(210px,350px) auto; justify-content: space-between; }
    .header-search { justify-self: end; }
    .episode-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .e-grid6 { grid-template-columns: repeat(4, minmax(0,1fr)); }
}

@media (max-width: 760px) {
    body { padding-bottom: 72px; }
    .container { width: min(100% - 26px, 1380px); }
    .site-header { height: 62px; }
    .site-header .header-inner { grid-template-columns: 1fr auto auto; gap: 9px; }
    .header-logo { font-size: 21px; }
    .catalog-btn span, .header-search form, .header-user-wrap { display: none; }
    .catalog-btn, .header-search_icon { display: inline-grid; width: 40px; min-width: 40px; height: 40px; min-height: 40px; padding: 0; }
    .header-search.active { position: fixed; z-index: 120; inset: 0; display: flex; padding: 12px; align-items: flex-start; background: rgba(7,7,11,.96); }
    .header-search.active form { display: flex; width: 100%; height: 48px; }
    .header-search.active .header-search_icon { display: none; }
    .header-search.active .search-close { display: inline-grid; }
    .header-search_top { position: fixed; top: 73px; right: 12px; left: 12px; width: auto; }
    .catalog { position: fixed; top: 72px; right: 13px; left: 13px; width: auto; grid-template-columns: repeat(2,1fr); }
    .mobile-nav { position: fixed; z-index: 110; right: 10px; bottom: 9px; left: 10px; display: grid; height: 60px; padding: 6px; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 18px; background: rgba(22,21,30,.94); box-shadow: 0 18px 45px rgba(0,0,0,.4); backdrop-filter: blur(18px); }
    .mobile-nav a { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 3px; color: #c0bdc8; font-size: 10px; }
    .mobile-nav i { font-size: 17px; }
    .home-hero { min-height: 610px; margin-top: 12px; border-radius: 21px; }
    .home-hero-shade { background: linear-gradient(0deg, rgba(5,5,9,.98) 6%, rgba(5,5,9,.78) 60%, rgba(5,5,9,.18)); }
    .home-hero-copy { padding: 28px 24px 54px; justify-content: end; }
    .home-hero h1 { font-size: clamp(39px, 12vw, 58px); }
    .home-hero-actions { flex-direction: column; }
    .genre-row { margin-right: -13px; padding-right: 13px; }
    .section-head > a { font-size: 12px; }
    .keep-items_nav { display: none; }
    .latest-grid { grid-template-columns: 1fr; }
    .keep-best_item { grid-template-columns: 118px 1fr; min-height: 190px; }
    .keep-best_text { -webkit-line-clamp: 2; }
    .episode-grid { display: flex; margin-right: -13px; padding-right: 13px; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
    .episode-grid::-webkit-scrollbar { display: none; }
    .keep-upd_item { flex: 0 0 min(310px,86vw); scroll-snap-align: start; }
    .episodes-section { width: calc(100% - 26px); padding: 22px 18px; }
    .trust-strip { grid-template-columns: 1fr; }
    .e-grid6 { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px 12px; }
    .keep-full { min-height: 0; padding: 28px 0 34px; }
    .keep-full > .container { grid-template-columns: 112px minmax(0,1fr); gap: 18px; align-items: start; }
    .keep-full_title { font-size: clamp(30px, 9vw, 47px); }
    .keep-full_subtitle { display: none; }
    .keep-full_link { grid-column: 1/-1; }
    .external-player { width: calc(100% - 26px); height: 62vw; min-height: 250px; border-radius: 15px; }
    .iframe-container { width: calc(100% - 26px); border-radius: 15px; }
    .seasone-pages { width: 100%; margin: 16px 0 22px; padding: 0 13px 5px; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
    .seasone-pages::-webkit-scrollbar { display: none; }
    .seasone-pages a, .seasone-pages a.active { flex: 0 0 auto; min-height: 40px; padding-inline: 12px; }
    .dle-form_flex { align-items: flex-start; flex-direction: column; }
    .dle-form_flex > div { width: 100%; margin-left: 0; }
    .dle-use_content { align-items: flex-start; flex-wrap: wrap; }
    .dle-use_info { align-items: flex-start; }
    .keep-detal > .container { grid-template-columns: 1fr; }
    .keep-facts { position: static; order: -1; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-brand { grid-column: 1/-1; }
    .footer-bottom { flex-direction: column; }
}

@media (max-width: 430px) {
    .home-hero { min-height: 570px; }
    .home-hero-copy { padding-inline: 20px; }
    .home-hero h1 { font-size: 39px; }
    .keep-best_item { grid-template-columns: 105px 1fr; gap: 14px; min-height: 180px; padding: 10px; }
    .keep-best_content { padding-block: 6px; }
    .keep-best_text { display: none; }
    .text-link { padding-top: 8px; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-brand { grid-column: auto; }
    .keep-full > .container { grid-template-columns: 92px minmax(0,1fr); }
    .keep-full_meta { font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* MultiKima 2026 — single fresh application layer */
.e-flex { display:flex; }
.e-grid2,.e-grid3,.e-grid4,.e-grid5,.e-grid6 { display:grid; gap:20px; }
.e-grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.e-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.e-grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.e-grid5{grid-template-columns:repeat(5,minmax(0,1fr))}.e-grid6{grid-template-columns:repeat(6,minmax(0,1fr))}
.e-none,.hidden { display:none!important; }

.site-header { height:76px; padding:0; }
.site-header .header-inner { display:grid; height:100%; grid-template-columns:auto minmax(0,1fr) auto minmax(240px,340px) auto; gap:clamp(14px,2vw,30px); align-items:center; }
.desktop-nav { justify-self:start; gap:clamp(15px,2vw,28px); }
.catalog-btn { white-space:nowrap; }
.catalog { top:calc(100% + 12px); right:390px; }
.header-search { width:100%; }
.header-search form { display:flex; width:100%; }
.search-open { display:none; width:42px; height:42px; border:0; border-radius:13px; background:var(--surface-2); }
.header-user-wrap { position:relative; display:flex; min-width:44px; justify-content:flex-end; }
.guest-user,.account-toggle { display:grid; width:44px; height:44px; padding:0; place-items:center; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:var(--surface-2); color:#fff; }
.account { position:relative; }
.account-toggle img { width:100%; height:100%; object-fit:cover; }
.account-menu { position:absolute; z-index:250; top:calc(100% + 12px); right:0; display:grid; width:260px; padding:10px; border:1px solid var(--line); border-radius:18px; background:rgba(20,19,28,.98); box-shadow:0 24px 70px rgba(0,0,0,.55); opacity:0; pointer-events:none; transform:translateY(-8px); transition:.2s ease; }
.account.is-open .account-menu { opacity:1; pointer-events:auto; transform:none; }
.account-menu>a { display:flex; min-height:44px; padding:0 12px; align-items:center; gap:11px; border-radius:11px; color:#cbc8d2; }
.account-menu>a:hover { background:rgba(255,255,255,.07); color:#fff; }
.account-summary { min-height:66px!important; margin-bottom:7px; border-bottom:1px solid var(--line); }
.account-summary img { width:42px; height:42px; object-fit:cover; border-radius:12px; }
.account-summary span { display:flex; min-width:0; flex-direction:column; }
.account-summary b,.account-summary small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.account-summary small { color:var(--muted); }

.cinema-hero { margin-top:18px; }
.hero-swiper { position:relative; height:clamp(540px,58vw,720px); overflow:hidden; border:1px solid var(--line); border-radius:30px; background:#101018; box-shadow:0 30px 80px rgba(0,0,0,.34); }
.hero-slide { position:relative; height:100%; overflow:hidden; }
.hero-media,.hero-shade { position:absolute; inset:0; }
.hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-shade { background:linear-gradient(90deg,rgba(5,5,9,.98) 0%,rgba(5,5,9,.84) 39%,rgba(5,5,9,.18) 76%),linear-gradient(0deg,rgba(5,5,9,.75),transparent 48%); }
.hero-copy { position:relative; z-index:2; display:flex; width:min(650px,62%); height:100%; padding:clamp(42px,7vw,92px); justify-content:center; align-items:flex-start; flex-direction:column; }
.hero-label { padding:7px 11px; border:1px solid rgba(255,255,255,.14); border-radius:999px; background:rgba(255,255,255,.09); color:#ffd3dc; font-size:11px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; backdrop-filter:blur(12px); }
.hero-copy h2 { max-width:620px; margin:18px 0 14px; color:#fff; font-size:clamp(44px,5.5vw,78px); }
.hero-meta { display:flex; align-items:center; gap:10px; color:#d5d1da; }
.hero-description { display:-webkit-box; max-width:580px; margin-top:18px; overflow:hidden; color:#c4c0cb; font-size:17px; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.hero-description p { margin:0; }
.hero-actions { display:flex; margin-top:28px; gap:11px; }
.button-glass { background:rgba(255,255,255,.12); backdrop-filter:blur(12px); }
.hero-controls { position:absolute; z-index:4; right:28px; bottom:26px; display:flex; align-items:center; gap:12px; }
.hero-controls button { display:grid; width:43px; height:43px; padding:0; place-items:center; border:1px solid rgba(255,255,255,.14); border-radius:50%; background:rgba(15,14,21,.58); backdrop-filter:blur(12px); }
.hero-pagination { display:flex; width:auto!important; gap:6px; }
.hero-pagination .swiper-pagination-bullet { width:7px; height:7px; margin:0!important; background:#fff; opacity:.38; }
.hero-pagination .swiper-pagination-bullet-active { width:24px; border-radius:99px; opacity:1; }

.seo-intro { display:grid; padding:clamp(24px,4vw,44px); grid-template-columns:.8fr 1.2fr; gap:clamp(25px,6vw,90px); border:1px solid var(--line); border-radius:26px; background:linear-gradient(145deg,#14131c,#0d0d13); }
.seo-intro p { margin:0; color:#b8b4c0; font-size:16px; line-height:1.75; }
.faq-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.faq details { overflow:hidden; border:1px solid var(--line); border-radius:17px; background:var(--surface); }
.faq summary { position:relative; padding:20px 48px 20px 20px; cursor:pointer; font-weight:780; list-style:none; }
.faq summary::after { position:absolute; top:18px; right:20px; content:"+"; color:#ff8ba3; font-size:24px; }
.faq details[open] summary::after { content:"−"; }
.faq details p { margin:0; padding:0 20px 20px; color:var(--muted); line-height:1.65; }

/* Fresh DLE service UI */
.attention,.berrors,.information { margin:0 0 20px; padding:16px 18px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.05); color:#c9c6d0; }
.dle-form,.search-page,.pm-page,.form-sect,.dle-use_setting { width:min(760px,100%); margin-inline:auto; padding:clamp(22px,4vw,40px); border:1px solid var(--line); border-radius:22px; background:var(--surface); }
.dle-form_flex { display:flex; margin-bottom:18px; align-items:center; gap:16px; }
.dle-form_flexno,.e-float { margin-bottom:18px; }
.dle-form label,.dle-form_flexno label { display:block; margin-bottom:8px; color:var(--muted); }
input:not([type=checkbox],[type=radio],[type=submit],[type=button]),textarea,select { width:100%; min-height:50px; padding:13px 15px; border:1px solid var(--line); border-radius:12px; outline:0; background:#191821; color:#fff; }
input:focus,textarea:focus,select:focus { border-color:rgba(255,54,95,.65); box-shadow:0 0 0 3px rgba(255,54,95,.1); }
input[type=checkbox],input[type=radio] { accent-color:var(--accent); }
.e-btn,.bbcodes,.btn,button[type=submit],input[type=submit],input[type=button] { display:inline-flex; min-height:46px; padding:0 20px; align-items:center; justify-content:center; border:0; border-radius:12px; background:var(--accent); color:#fff; font-weight:800; }
.dle-use_content { display:flex; }
.dle-use_links { display:flex; }
.dle-use_info { padding:0; list-style:none; }
.dle-use_info li { min-width:0; }
.upload-avatar { display:flex; align-items:center; gap:15px; }
.form__table { width:100%; }
.navigation { flex-wrap:wrap; }
.comment-item { margin-top:16px; }
.dle-comm_item { padding:18px; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.035); }
.dle-comm_meta,.dle-comm_user { display:flex; align-items:center; gap:12px; }
.dle-comm_user img { width:42px; height:42px; object-fit:cover; border-radius:50%; }
.dle-comm_text { margin-top:14px; color:#ccc8d2; line-height:1.7; }
.d-flex,.fx-row,.ai-center,.jc-center,.jc-space-between { display:flex; }.ai-center{align-items:center}.jc-center{justify-content:center}.jc-space-between{justify-content:space-between}.fx-col{display:flex;flex-direction:column}.flex-grow-1,.fx-1{flex:1}.d-none,.clr{display:none}.ws-nowrap{white-space:nowrap}.img-fit-cover{width:100%;height:100%;object-fit:cover}
.dle-addnews,.dle-stats,.tags-page,.inner-page,.static,.offline__container,.vote-box,.attach,.informer { padding:clamp(22px,4vw,38px); border:1px solid var(--line); border-radius:22px; background:var(--surface); }
.cloud-tags { display:flex; gap:8px; flex-wrap:wrap; }.cloud-tags a,.tags-page a { padding:8px 12px; border-radius:999px; background:var(--surface-2); }
.pm-page_lists { display:flex; margin:0 0 22px; padding:0; gap:8px; list-style:none; }.pm-page_lists a,.pm-page_lists span { display:block; padding:10px 14px; border-radius:10px; background:var(--surface-2); }.pm-page_status { margin-bottom:22px; color:var(--muted); }
.pm-item { display:flex; margin-top:16px; padding:18px; gap:16px; border:1px solid var(--line); border-radius:16px; }.pm-item_img img { width:52px; height:52px; object-fit:cover; border-radius:50%; }.pm-item_description{flex:1}.pm-item_meta{display:flex;gap:10px;color:var(--muted);font-size:12px}.pm-item_text{margin:14px 0;line-height:1.7}
.ui-widget-overlay { position:fixed; z-index:900; inset:0; background:rgba(0,0,0,.75); backdrop-filter:blur(6px); }.ui-dialog,.modal,.usp-popup { position:fixed; z-index:920; top:50%; left:50%; width:min(520px,calc(100% - 28px)); max-height:calc(100vh - 28px); padding:22px; overflow:auto; border:1px solid var(--line); border-radius:20px; background:#15141d; box-shadow:var(--shadow); transform:translate(-50%,-50%); }
.ui-dialog-titlebar { display:flex; margin-bottom:18px; justify-content:space-between; }.ui-dialog-titlebar-close { width:38px;height:38px;border:0;border-radius:10px;background:var(--surface-2); }
.search-page_table table,.form__table { width:100%; border-collapse:separate; border-spacing:0 10px; }.search-page_table td,.form__table td { padding:8px; }
.checkbox,.comments_subscribe { display:flex; align-items:center; gap:9px; }.dle-form_checkbox { display:grid; gap:10px; }
.wseditor { overflow:hidden; border:1px solid var(--line); border-radius:14px; }.bb-editor textarea { border-radius:0; }
.speedbar { padding:14px 0; color:var(--muted); font-size:13px; }.speedbar a:hover{color:#fff}

@media(max-width:1120px){
  .site-header .header-inner{grid-template-columns:auto auto minmax(220px,1fr) auto}.desktop-nav{display:none}.catalog{right:370px}
  .e-grid6{grid-template-columns:repeat(4,minmax(0,1fr))}.faq-list{grid-template-columns:1fr}
}
@media(max-width:760px){
  body{padding-bottom:74px}.site-header{height:64px}.site-header .header-inner{grid-template-columns:1fr auto auto;gap:8px}.catalog-btn span,.header-search form,.header-user-wrap{display:none}.catalog-btn,.search-open{display:grid;width:40px;height:40px;min-width:40px;padding:0}.catalog{position:fixed;top:72px;right:13px;left:13px;width:auto;grid-template-columns:repeat(2,1fr)}
  .header-search{width:auto}.header-search.is-open{position:fixed;z-index:300;inset:0;display:flex;padding:12px;background:rgba(7,7,11,.97)}.header-search.is-open form{display:flex;width:100%;height:50px}.header-search.is-open .search-open{display:none}.header-search.is-open .search-close{display:grid}
  .cinema-hero{width:calc(100% - 20px);margin-top:10px}.hero-swiper{height:610px;border-radius:22px}.hero-shade{background:linear-gradient(0deg,rgba(5,5,9,.99) 4%,rgba(5,5,9,.84) 58%,rgba(5,5,9,.2))}.hero-copy{width:100%;padding:28px 22px 72px;justify-content:flex-end}.hero-copy h2{font-size:clamp(38px,11vw,55px)}.hero-description{-webkit-line-clamp:2;font-size:14px}.hero-actions{width:100%;flex-direction:column}.hero-controls{right:20px;bottom:20px}.hero-controls button{display:none}
  .seo-intro{grid-template-columns:1fr}.faq-list{grid-template-columns:1fr}.e-grid2,.e-grid3,.e-grid4,.e-grid5,.e-grid6{grid-template-columns:repeat(2,minmax(0,1fr))}.dle-form_flex{align-items:stretch;flex-direction:column}.dle-use_content{align-items:flex-start;flex-wrap:wrap}
}

/* v12 — application header, lightweight icons, auth and fast search */
i[class*="fa-"] { display:inline-grid; place-items:center; font-style:normal; line-height:1; }
i[class*="fa-"]::before { display:block; min-width:1em; text-align:center; font-family:inherit; font-weight:900; }
.fa-grid-2::before{content:"▦"}.fa-magnifying-glass::before{content:"⌕"}.fa-user::before{content:"◉"}.fa-xmark::before,.fa-times::before{content:"×"}.fa-house::before{content:"⌂"}.fa-clapperboard::before{content:"▰"}.fa-film::before{content:"▤"}.fa-heart::before{content:"♡"}.fa-play::before{content:"▶";font-size:.82em}.fa-info-circle::before{content:"i"}.fa-chevron-left::before,.fa-angle-double-left::before{content:"‹"}.fa-chevron-right::before,.fa-angle-double-right::before{content:"›"}.fa-arrow-right::before,.fa-arrow-right-from-bracket::before,.fa-paper-plane-top::before{content:"→"}.fa-gear::before,.fa-cog::before{content:"⚙"}.fa-screwdriver-wrench::before{content:"◆"}.fa-upload::before,.fa-cloud-download::before{content:"↑"}.fa-trash::before{content:"×"}.fa-thumbs-up::before,.fa-plus::before{content:"+"}.fa-thumbs-down::before{content:"−"}.fa-vk::before{content:"VK";font-size:.7em;letter-spacing:-.08em}.fa-android::before{content:"A"}.fa-apple::before{content:"i"}.fa-align-left::before{content:"≡"}.fa-ellipsis::before{content:"…"}.fa-tv::before{content:"▣"}.fa-fire::before{content:"●"}.fa-camera-movie::before,.fa-projector::before{content:"▰"}

.site-header { height:88px; border:0; background:linear-gradient(180deg,rgba(7,7,11,.96),rgba(7,7,11,.36),transparent); backdrop-filter:none; }
.site-header .header-inner { top:10px; height:66px; padding:8px 10px 8px 16px; border:1px solid rgba(255,255,255,.1); border-radius:21px; background:rgba(17,16,24,.94); box-shadow:0 16px 50px rgba(0,0,0,.24); transition:height .24s ease,top .24s ease,background .24s ease,box-shadow .24s ease; }
.site-header.is-scrolled .header-inner { top:6px; height:60px; background:rgba(13,12,19,.98); box-shadow:0 18px 55px rgba(0,0,0,.4); transform:none; }
.header-logo { position:relative; z-index:2; }
.header-logo::after { position:absolute; right:-8px; bottom:3px; width:5px; height:5px; border-radius:50%; background:linear-gradient(135deg,#ff3976,#ff6538); box-shadow:0 0 14px #ff3976; content:""; }
.desktop-nav a { position:relative; padding:10px 0; transition:color .18s ease; }
.desktop-nav a::after { position:absolute; right:50%; bottom:4px; left:50%; height:2px; border-radius:9px; background:linear-gradient(90deg,#ff3976,#ff6538); content:""; transition:left .2s ease,right .2s ease; }
.desktop-nav a:hover::after { right:0; left:0; }
.catalog-btn,.guest-user,.account-toggle,.search-open { border:1px solid rgba(255,255,255,.1); background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.045)); transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease; }
.catalog-btn:hover,.guest-user:hover,.account-toggle:hover,.search-open:hover,.catalog-btn.is-active { border-color:rgba(255,78,112,.55); background:linear-gradient(145deg,rgba(255,55,111,.2),rgba(139,92,255,.12)); box-shadow:0 10px 30px rgba(255,45,91,.14); transform:translateY(-1px); }
.catalog { left:50%; right:auto; width:min(690px,calc(100vw - 32px)); padding:15px; grid-template-columns:repeat(3,minmax(0,1fr)); border-radius:22px; background:rgba(18,17,25,.96); transform:translate(-50%,-9px) scale(.985); backdrop-filter:blur(28px); }
.catalog.is-open { transform:translate(-50%,0) scale(1); }
.catalog a { min-height:46px; display:flex; align-items:center; border:1px solid transparent; }
.catalog a:hover { border-color:rgba(255,255,255,.08); background:linear-gradient(135deg,rgba(255,55,111,.13),rgba(139,92,255,.09)); }
.header-search form { height:46px; border-color:rgba(255,255,255,.08); border-radius:15px; background:rgba(255,255,255,.055); transition:border-color .18s ease,background .18s ease,box-shadow .18s ease; }
.header-search form:focus-within { border-color:rgba(255,79,114,.66); background:rgba(255,255,255,.075); box-shadow:0 0 0 4px rgba(255,54,95,.1),0 12px 35px rgba(0,0,0,.22); }
.header-search form>i { color:#ff7f9c; }
.hero-copy h2 { display:-webkit-box; max-width:100%; overflow:hidden; overflow-wrap:anywhere; text-wrap:balance; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.account-summary span { max-width:175px; }
.account-summary b { max-width:100%; line-height:1.25; }

.auth-modal { position:fixed; z-index:1000; inset:0; display:grid; padding:18px; place-items:center; visibility:hidden; opacity:0; pointer-events:none; transition:opacity .22s ease,visibility .22s ease; }
.auth-modal.is-open { visibility:visible; opacity:1; pointer-events:auto; }
.auth-backdrop { position:absolute; inset:0; width:100%; height:100%; border:0; background:rgba(4,4,8,.78); backdrop-filter:blur(13px); }
.auth-panel { position:relative; width:min(460px,100%); padding:clamp(28px,5vw,48px); overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:28px; background:radial-gradient(circle at 100% 0,rgba(139,92,255,.22),transparent 34%),radial-gradient(circle at 0 100%,rgba(255,54,95,.17),transparent 34%),#15141d; box-shadow:0 40px 120px rgba(0,0,0,.62); transform:translateY(18px) scale(.97); transition:transform .28s cubic-bezier(.2,.75,.2,1); }
.auth-modal.is-open .auth-panel { transform:none; }
.auth-close { position:absolute; top:14px; right:14px; display:grid; width:42px; height:42px; padding:0; place-items:center; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.06); }
.auth-brand { margin-bottom:25px; font-size:22px; font-weight:950; letter-spacing:-.055em; }.auth-brand span{color:#ff4a72}
.auth-panel h2 { margin:7px 0 10px; font-size:clamp(34px,8vw,48px); }.auth-panel>p{margin-bottom:25px;color:#bbb7c4}
.auth-panel form { display:grid; gap:9px; }.auth-panel label{margin-top:5px;color:#d8d4df;font-size:12px;font-weight:800}.auth-panel input{min-height:54px!important;background:rgba(255,255,255,.055)!important}
.auth-submit { min-height:54px; margin-top:12px; border:0; border-radius:14px; background:linear-gradient(135deg,#ff3976,#ff5938); box-shadow:0 16px 38px rgba(255,54,96,.26); color:#fff; font-weight:900; }
.auth-links { display:flex; margin-top:20px; justify-content:space-between; gap:14px; color:#ff9bb0; font-size:13px; font-weight:750; }

#searchsuggestions { position:fixed!important; z-index:990!important; top:84px!important; right:max(72px,calc((100vw - 1380px)/2 + 62px))!important; left:auto!important; display:grid; width:min(470px,calc(100vw - 24px)); max-height:min(520px,calc(100vh - 108px)); padding:10px; overflow:auto; border:1px solid rgba(255,255,255,.11); border-radius:22px; background:rgba(18,17,25,.97); box-shadow:0 28px 90px rgba(0,0,0,.55); backdrop-filter:blur(24px); }
#searchsuggestions>a:not(.dle-fast_item){display:block;padding:10px 12px;color:#c9c5d0}.dle-fast_item{position:relative;display:grid;min-width:0;padding:9px;grid-template-columns:58px minmax(0,1fr);gap:13px;border-radius:15px;transition:background .16s ease,transform .16s ease}.dle-fast_item:hover{background:rgba(255,255,255,.07);transform:translateX(3px)}.dle-fast_item>img{width:58px;height:82px;object-fit:cover;border-radius:10px;background:#272531}.dle-fast_item>div{min-width:0;padding:5px 0}.dle-fast_item>div>a{display:-webkit-box;overflow:hidden;color:#fff;font-size:14px;font-weight:850;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.dle-fast_item>div>a::before{position:absolute;inset:0;content:""}.dle-fast_meta{display:flex;margin-top:8px;gap:7px;overflow:hidden;color:#aaa6b4;font-size:11px;white-space:nowrap}.dle-fast_meta span{overflow:hidden;text-overflow:ellipsis}.dle-fast_meta span+span{margin:0}#searchsuggestions .seperator{display:block;padding:10px;border-radius:12px;background:linear-gradient(135deg,#ff3976,#ff5938);color:#fff;text-align:center;font-size:12px;font-weight:850}#searchsuggestions .notfound{padding:18px;color:#c9c5d0;text-align:center}

.rating-color { background:#087d4a; color:#fff; }.rating-color.middle{background:#8b5a00}.rating-color.low{background:#a93642}
.site-footer,.footer-bottom,.footer-menu a,.footer-brand p { color:#c4c0cb; }.footer-menu strong,.footer-social strong{color:#fff}
.swiper-pagination-bullet { position:relative; width:34px!important; height:38px!important; margin:0!important; border-radius:0!important; background:transparent!important; opacity:1!important; }
.swiper-pagination-bullet::after { position:absolute; top:50%; left:50%; width:8px; height:8px; border-radius:99px; background:#fff; opacity:.42; content:""; transform:translate(-50%,-50%); transition:width .18s ease,opacity .18s ease; }
.swiper-pagination-bullet-active::after { width:25px; opacity:1; }
.keep-item_title { min-height:44px; margin-top:10px; display:flex; align-items:flex-start; padding-top:3px; }
.dle-use_title { min-width:0; flex:1; }.dle-use_title h2,.keep-full_title { max-width:100%; overflow-wrap:anywhere; text-wrap:balance; }.dle-use_title h2{font-size:clamp(28px,5vw,50px);line-height:1.05}

.reveal-ready { opacity:0; transform:translateY(28px); transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1); }.reveal-ready.is-revealed{opacity:1;transform:none}
.hero-slide.swiper-slide-active .hero-copy>* { animation:hero-in .68s both; }.hero-slide.swiper-slide-active .hero-copy>*:nth-child(2){animation-delay:.06s}.hero-slide.swiper-slide-active .hero-copy>*:nth-child(3){animation-delay:.11s}.hero-slide.swiper-slide-active .hero-copy>*:nth-child(4){animation-delay:.16s}.hero-slide.swiper-slide-active .hero-copy>*:nth-child(5){animation-delay:.21s}.hero-slide.swiper-slide-active .hero-art{animation:hero-art-in .8s cubic-bezier(.2,.75,.2,1) both}
@keyframes hero-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes hero-art-in{from{opacity:0;transform:translateY(-46%) rotate(5deg) scale(.94)}to{opacity:1;transform:translateY(-50%) rotate(2deg) scale(1)}}

@media(max-width:760px){
  .site-header{height:74px;background:linear-gradient(180deg,rgba(7,7,11,.98),rgba(7,7,11,.62),transparent)}
  .site-header .header-inner{top:6px;height:58px;padding:7px 8px 7px 12px;grid-template-columns:minmax(108px,1fr) auto auto auto;gap:6px;border-radius:18px}
  .site-header.is-scrolled .header-inner{top:4px;height:56px;transform:none}
  .header-logo{font-size:21px}.header-logo::after{right:-6px;width:4px;height:4px}
  .header-user-wrap{display:flex!important;min-width:40px}.guest-user,.account-toggle,.catalog-btn,.search-open{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:12px}
  .catalog{position:fixed;top:72px;right:12px;left:12px;width:auto;max-height:calc(100vh - 92px);overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr));transform:translateY(-8px) scale(.985)}.catalog.is-open{transform:none}
  .header-search.is-open{width:100%!important;justify-self:auto!important;padding:10px 12px 0;align-items:flex-start}.header-search.is-open form{height:54px;border-radius:17px;background:#1a1923}.header-search.is-open .search-close{display:grid;width:38px;height:38px;min-width:38px}
  #searchsuggestions{top:76px!important;right:12px!important;left:12px!important;width:auto;max-height:calc(100vh - 92px);border-radius:18px}
  .account-menu{position:fixed;top:72px;right:12px;left:12px;width:auto}.account-summary span{max-width:calc(100vw - 110px)}
  .auth-panel{border-radius:23px}.auth-links{align-items:flex-start;flex-direction:column}
}

@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.hero-slide.swiper-slide-active .hero-copy>*,.hero-slide.swiper-slide-active .hero-art{animation:none!important}}
@media(max-width:430px){.hero-copy h2{font-size:38px}.hero-swiper{height:570px}.e-grid2,.e-grid3,.e-grid4,.e-grid5,.e-grid6{gap:12px}}

/* v11 — stable DLE markup, cinematic hero and ivi-inspired accents */
.catalog.is-open { opacity:1; pointer-events:auto; transform:none; }

.keep-item { position:relative; }
.keep-item_media { position:relative; width:100%; overflow:hidden; aspect-ratio:2/3; border-radius:var(--radius); background:var(--surface); }
.keep-item_media .keep-item_bg { position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto; border-radius:inherit; }
.keep-item_media .keep-item_bg::after { inset:48% 0 0; }
.keep-item_media .keep-item_meta { position:absolute; z-index:4; right:10px; bottom:10px; left:10px; display:flex; width:auto; height:auto; align-items:center; gap:7px; overflow:hidden; pointer-events:none; }
.keep-item_media .keep-item_meta a { color:inherit; }
.keep-item_media .card-year,.keep-item_media .card-quality { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.episode-badge { position:absolute; z-index:5; top:10px; right:10px; display:flex; gap:5px; pointer-events:none; }
.episode-badge:empty { display:none; }
.episode-badge span,.series-pill { display:inline-flex; min-height:25px; padding:0 8px; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:linear-gradient(135deg,rgba(255,55,116,.96),rgba(255,91,50,.96)); box-shadow:0 7px 22px rgba(255,46,91,.28); color:#fff; font-size:10px; font-weight:900; letter-spacing:.04em; }

.hero-backdrop { position:absolute; z-index:0; inset:-14%; opacity:.58; filter:blur(34px) saturate(1.18); transform:scale(1.08); }
.hero-backdrop img { width:100%; height:100%; object-fit:cover; }
.hero-art { position:absolute; z-index:1; top:50%; right:clamp(38px,8vw,118px); width:clamp(250px,27vw,382px); overflow:hidden; aspect-ratio:2/3; border:1px solid rgba(255,255,255,.18); border-radius:28px; box-shadow:0 34px 90px rgba(0,0,0,.58); transform:translateY(-50%) rotate(2deg); }
.hero-art img { width:100%; height:100%; object-fit:cover; }
.hero-shade { z-index:2; background:linear-gradient(90deg,rgba(5,5,9,.99) 0%,rgba(5,5,9,.89) 42%,rgba(5,5,9,.25) 72%,rgba(5,5,9,.5)),linear-gradient(0deg,rgba(5,5,9,.72),transparent 54%); }
.hero-copy { z-index:3; width:min(670px,59%); }
.button-primary,.watch-button { background:linear-gradient(135deg,#ff3976,#ff5938); box-shadow:0 15px 38px rgba(255,54,96,.28); }
.button-primary:hover,.watch-button:hover { filter:brightness(1.08); transform:translateY(-2px); }
.keep-full { isolation:isolate; }
.keep-full_backdrop { opacity:.5; filter:saturate(1.12); }
.keep-full_poster { box-shadow:0 30px 80px rgba(0,0,0,.55); }

@media(max-width:760px){
  .hero-art{top:42%;right:-18%;width:min(72vw,370px);opacity:.67;border-radius:22px;transform:translateY(-50%) rotate(3deg)}
  .hero-shade{background:linear-gradient(0deg,rgba(5,5,9,.99) 5%,rgba(5,5,9,.91) 52%,rgba(5,5,9,.26) 86%),linear-gradient(90deg,rgba(5,5,9,.64),transparent)}
  .hero-copy{width:100%}
  .episode-badge{top:7px;right:7px}.episode-badge span{min-height:23px;padding-inline:7px}
}

/* Keep v12 menu transforms after the v11 compatibility layer. */
.catalog.is-open{transform:translate(-50%,0) scale(1)}
@media(max-width:760px){.catalog.is-open{transform:none}}
