:root{
    --bg:#0a0c12;
    --surface:#0f1320;
    --surface-2:#131a2c;
    --text:#eef1ff;
    --muted:#a9b0c9;
    --muted-2:#7981a0;
    --border:rgba(255,255,255,.08);
    --shadow:0 16px 40px rgba(0,0,0,.45);
    --brand:#ff2d55;
    --brand-2:#ffb020;
    --radius:16px;
    --radius-sm:12px;
    --container:1280px;
    --ring:rgba(255,45,85,.22);
    --space-1:6px;
    --space-2:10px;
    --space-3:14px;
    --space-4:18px;
    --space-5:24px;
    --space-6:32px;
    --space-7:44px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
    margin:0;
    font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
    background:
        radial-gradient(900px 540px at 16% -12%,rgba(255,45,85,.18),transparent 60%),
        radial-gradient(900px 540px at 92% -12%,rgba(70,120,255,.16),transparent 58%),
        radial-gradient(700px 520px at 80% 120%,rgba(255,176,32,.10),transparent 62%),
        var(--bg);
    color:var(--text);
    line-height:1.55;
    letter-spacing:-.01em;
}

img{max-width:100%;display:block}
a{color:inherit}

.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;
}

.container{
    width:min(var(--container),calc(100% - 40px));
    margin:0 auto;
}

.nav__link:focus-visible,
.nav__search-btn:focus-visible,
.nav__toggle:focus-visible,
.btn:focus-visible,
.card__media:focus-visible,
.rail__nav:focus-visible,
.pager__page:focus-visible,
.pager__btn:focus-visible,
.footer__links a:focus-visible,
.footer__social a:focus-visible,
.field__input:focus-visible{
    outline:none;
    box-shadow:0 0 0 4px var(--ring);
}

.main{
    min-height:calc(100vh - 260px);
}

.nav-wrap{
    position:sticky;
    top:0;
    z-index:50;
    border-bottom:1px solid rgba(255,255,255,.06);
    background:rgba(10,12,18,.65);
    backdrop-filter:blur(14px);
}

.nav{
    width:min(var(--container),calc(100% - 40px));
    margin:0 auto;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:16px;
    padding:14px 0;
}

.nav__brand{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
}
.nav__logo{
    height:24px;
    width:auto;
    max-width:210px;
    opacity:.98;
    filter:drop-shadow(0 8px 20px rgba(0,0,0,.45));
}

.nav__links{
    display:flex;
    align-items:center;
    gap:14px;
    justify-content:center;
}

.nav__link{
    text-decoration:none;
    padding:10px 10px;
    border-radius:999px;
    color:var(--muted);
    font-weight:600;
    font-size:14px;
    transition:background .2s ease,color .2s ease;
}
.nav__link:hover{
    color:var(--text);
    background:rgba(255,255,255,.06);
}
.nav__link.is-active{
    color:var(--text);
    background:rgba(255,255,255,.10);
}

.nav__search{
    display:flex;
    align-items:center;
    gap:8px;
    padding:8px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
}
.nav__search:focus-within{
    border-color:rgba(255,45,85,.38);
    box-shadow:0 0 0 4px rgba(255,45,85,.12);
}
.nav__search-input{
    width:260px;
    background:transparent;
    border:0;
    outline:none;
    color:var(--text);
    font-size:14px;
}
.nav__search-input::placeholder{color:var(--muted-2)}
.nav__search-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border-radius:999px;
    border:0;
    background:rgba(255,255,255,.08);
    color:var(--text);
    cursor:pointer;
    transition:transform .15s ease,background .2s ease;
}
.nav__search-btn:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}

.nav__toggle{
    display:none;
    justify-self:end;
    width:44px;
    height:44px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.06);
    color:var(--text);
    cursor:pointer;
    padding:0;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
}
.nav__toggle-bar{
    display:block;
    width:18px;
    height:2px;
    margin:0;
    background:currentColor;
    border-radius:2px;
}

.hero{
    position:relative;
    min-height:480px;
    display:flex;
    align-items:flex-end;
    padding:48px 0 30px;
    overflow:hidden;
}
.hero__bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transform:scale(1.05);
    filter:saturate(1.05) contrast(1.05);
}
.hero__shade{
    position:absolute;
    inset:0;
    background:
        radial-gradient(900px 460px at 18% 40%, rgba(0,0,0,.28), transparent 60%),
        linear-gradient(180deg,rgba(10,12,18,.15),rgba(10,12,18,.94) 72%);
}
.hero__inner{position:relative}
.hero__grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    align-items:end;
    gap:28px;
}
.hero__copy{max-width:720px}
.hero__kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.10);
    color:var(--muted);
    font-weight:600;
    font-size:12px;
}
.hero__title{
    margin:10px 0 6px;
    font-size:clamp(28px,4vw,44px);
    line-height:1.1;
    letter-spacing:-.03em;
}
.hero__meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin:10px 0 14px;
    color:var(--muted);
}
.meta{font-weight:600;font-size:13px}
.hero__desc{margin:0 0 18px;color:rgba(238,241,255,.90);max-width:62ch}
.hero__actions{display:flex;gap:10px;flex-wrap:wrap}
.hero__poster{
    justify-self:end;
    width:min(320px,100%);
    text-decoration:none;
    border-radius:22px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.04);
    box-shadow:0 26px 90px rgba(0,0,0,.65);
    transform:translateY(0);
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.hero__poster img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block}
.hero__poster:hover{
    transform:translateY(-3px);
    border-color:rgba(255,255,255,.18);
    box-shadow:0 34px 110px rgba(0,0,0,.72);
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    height:44px;
    padding:0 16px;
    border-radius:14px;
    border:1px solid transparent;
    text-decoration:none;
    font-weight:700;
    font-size:14px;
    cursor:pointer;
    transition:transform .15s ease,background .2s ease,border-color .2s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn--primary{
    background:linear-gradient(135deg,var(--brand),#ff5a6b);
    color:#0b0d12;
}
.btn--primary:hover{background:linear-gradient(135deg,#ff405e,#ff6a79)}
.btn--ghost{
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.10);
    color:var(--text);
}
.btn--ghost:hover{background:rgba(255,255,255,.10)}
.btn--block{width:100%}

.badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:22px;
    padding:0 10px;
    border-radius:999px;
    font-weight:800;
    font-size:12px;
    letter-spacing:.02em;
    border:1px solid rgba(255,255,255,.10);
}
.badge--rating{
    background:rgba(255,176,32,.16);
    color:#ffd58a;
}

.section{padding:var(--space-7) 0}
.section--tight{padding:var(--space-6) 0 calc(var(--space-7) + 6px)}
.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
.section__right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.section__title{margin:0;font-size:22px;letter-spacing:-.02em}
.section__sub{color:var(--muted);font-weight:600;font-size:13px}
.section__link{color:var(--muted);text-decoration:none;font-weight:700;font-size:13px}
.section__link:hover{color:var(--text)}

.rail{
    display:flex;
    gap:12px;
    overflow:auto;
    padding:6px 2px 14px;
    scroll-snap-type:x mandatory;
}
.rail::-webkit-scrollbar{height:10px}
.rail::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:999px}
.rail__item{
    width:170px;
    flex:0 0 auto;
    text-decoration:none;
    scroll-snap-align:start;
}
.rail__item img{
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 26px rgba(0,0,0,.35);
    transition:transform .2s ease,box-shadow .2s ease;
}
.rail__item:hover img{transform:translateY(-2px);box-shadow:0 16px 40px rgba(0,0,0,.5)}
.rail__caption{
    display:block;
    margin-top:10px;
    color:var(--muted);
    font-weight:700;
    font-size:13px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.rail-wrap{
    position:relative;
}
.rail-wrap::before,.rail-wrap::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:90px;
    z-index:2;
    pointer-events:none;
}
.rail-wrap::before{
    left:0;
    background:linear-gradient(90deg,var(--bg),rgba(10,12,18,0));
}
.rail-wrap::after{
    right:0;
    background:linear-gradient(270deg,var(--bg),rgba(10,12,18,0));
}
.rail-wrap.is-start::before{opacity:0}
.rail-wrap.is-end::after{opacity:0}
.rail-wrap .rail{
    padding:6px 2px 14px;
}
.rail__nav{
    position:absolute;
    top:44%;
    transform:translateY(-50%);
    z-index:3;
    width:52px;
    height:52px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(0,0,0,.55);
    color:var(--text);
    display:flex;
    align-items:center;
    justify-content:center;
    backdrop-filter:blur(10px);
    cursor:pointer;
    box-shadow:0 18px 60px rgba(0,0,0,.55);
    transition:transform .15s ease, background .2s ease, border-color .2s ease, opacity .2s ease;
    opacity:.92;
}
.rail__nav svg{width:22px;height:22px}
.rail__nav:hover{
    transform:translateY(-50%) scale(1.03);
    background:rgba(0,0,0,.70);
    border-color:rgba(255,255,255,.22);
    opacity:1;
}
.rail__nav:disabled{
    opacity:.38;
    cursor:not-allowed;
}
.rail__nav--prev{left:6px}
.rail__nav--next{right:6px}
@media (max-width:720px){
    .rail-wrap::before,.rail-wrap::after{width:62px}
    .rail__nav{width:46px;height:46px;border-radius:16px}
    .rail__nav svg{width:20px;height:20px}
}
.rail__ph img{
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:14px;
    opacity:.6;
    border:1px solid rgba(255,255,255,.08);
}

.grid{
    display:grid;
    gap:18px;
    grid-template-columns:repeat(5, minmax(0, 1fr));
}
@media (max-width:1200px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:992px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nav__search-input{width:220px}}
@media (max-width:720px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:420px){.grid{grid-template-columns:1fr}}

.ranked{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:14px;
}
.ranked__item{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:14px;
    align-items:stretch;
}
.ranked__no{
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.05);
    color:rgba(238,241,255,.92);
    font-weight:950;
    font-size:22px;
    letter-spacing:-.03em;
}
.ranked__more-head{margin-top:22px}
.ranked .card{
    display:grid;
    grid-template-columns:140px minmax(0,1fr);
}
.ranked .card__media{height:100%}
.ranked .card__img,.ranked .card__placeholder{aspect-ratio:auto;height:100%}
.ranked .card__body{padding:14px 16px}
.ranked .card__desc{min-height:auto;-webkit-line-clamp:2}
.ranked .card__overlay{background:linear-gradient(180deg,transparent 30%, rgba(11,13,18,.78))}
.ranked .card:hover{transform:translateY(-2px)}
.ranked .card:hover .card__img{transform:scale(1.02)}
@media (max-width:720px){
    .ranked__item{grid-template-columns:44px minmax(0,1fr)}
    .ranked .card{grid-template-columns:110px minmax(0,1fr)}
}
@media (max-width:420px){
    .ranked__item{grid-template-columns:40px minmax(0,1fr)}
    .ranked .card{grid-template-columns:92px minmax(0,1fr)}
    .ranked .card__desc{display:none}
}

.card{
    background:
        radial-gradient(900px 380px at 20% 0%, rgba(255,255,255,.06), transparent 62%),
        linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.09);
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 14px 46px rgba(0,0,0,.34);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.card:hover{
    transform:translateY(-4px);
    border-color:rgba(255,255,255,.16);
    box-shadow:0 22px 70px rgba(0,0,0,.52);
}
.card__media{
    position:relative;
    display:block;
    text-decoration:none;
}
.card__img{
    width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    transform:scale(1);
    transition:transform .45s ease;
}
.card:hover .card__img{transform:scale(1.03)}
.card__placeholder{
    width:100%;
    aspect-ratio:2/3;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(500px 300px at 30% 10%, rgba(255,45,85,.20), transparent 55%), rgba(255,255,255,.03);
}
.card__placeholder img{width:64px;height:64px;opacity:.75}
.card__badge{
    position:absolute;
    left:12px;
    top:12px;
    height:24px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(0,0,0,.35);
    backdrop-filter:blur(10px);
}
.card__overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 40%, rgba(11,13,18,.78));
    opacity:0;
    transition:opacity .22s ease;
}
.card:hover .card__overlay{opacity:1}
.card__play{
    position:absolute;
    right:14px;
    bottom:14px;
    width:38px;
    height:38px;
    border-radius:999px;
    background:rgba(255,45,85,.90);
    color:#0b0d12;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 14px 30px rgba(0,0,0,.45);
}
.card__body{padding:16px 16px 18px}
.card__meta{
    color:var(--muted);
    font-weight:700;
    font-size:12px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    margin-bottom:8px;
}
.card__title{
    margin:0 0 6px;
    font-size:15px;
    font-weight:850;
    line-height:1.25;
    letter-spacing:-.01em;
}
.card__title a{
    text-decoration:none;
}
.card__title a:hover{text-decoration:underline}
.card__desc{
    margin:0;
    color:rgba(169,176,201,.95);
    font-size:13px;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:60px;
}

.pager{padding-top:18px}
.pager__list{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    flex-wrap:wrap;
    list-style:none;
    padding:0;
    margin:0;
}
.pager__item{list-style:none}
.pager__page,.pager__btn{
    height:40px;
    padding:0 14px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.06);
    color:var(--text);
    text-decoration:none;
    font-weight:800;
    font-size:13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:40px;
    transition:background .2s ease, transform .15s ease, border-color .2s ease;
}
.pager__page:hover,.pager__btn:hover{background:rgba(255,255,255,.10);transform:translateY(-1px)}
.pager__page.is-active{
    background:linear-gradient(135deg,var(--brand),#ff5a6b);
    border-color:transparent;
    color:#0b0d12;
}
.pager__btn.is-disabled{
    opacity:.45;
    cursor:not-allowed;
}
.pager__gap{color:var(--muted);font-weight:800;padding:0 4px}

.footer{
    border-top:1px solid rgba(255,255,255,.06);
    background:rgba(10,12,18,.55);
    padding:26px 0;
}
.footer__inner{
    width:min(var(--container),calc(100% - 40px));
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
}
.footer__brand{font-weight:800;letter-spacing:-.02em}
.footer__logo{
    height:18px;
    width:auto;
    max-width:200px;
    opacity:.96;
    filter:drop-shadow(0 10px 24px rgba(0,0,0,.45));
}
.footer__meta{color:var(--muted);font-weight:600;font-size:13px}
.footer__links{display:flex;gap:14px;flex-wrap:wrap}
.footer__links a{color:var(--muted);text-decoration:none;font-weight:700;font-size:13px}
.footer__links a:hover{color:var(--text)}
.footer__social{display:flex;gap:10px}
.footer__social a{
    width:38px;height:38px;border-radius:12px;
    display:inline-flex;align-items:center;justify-content:center;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.06);
    color:var(--text);
    transition:transform .15s ease, background .2s ease;
    text-decoration:none;
}
.footer__social a:hover{transform:translateY(-1px);background:rgba(255,255,255,.10)}

.detail-hero{
    position:relative;
    min-height:280px;
    display:flex;
    align-items:flex-end;
    padding:30px 0 22px;
    overflow:hidden;
}
.detail-hero__bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    filter:saturate(1.05) contrast(1.05);
    transform:scale(1.05);
}
.detail-hero__shade{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(11,13,18,.20),rgba(11,13,18,.94) 70%);
}
.detail-hero__inner{position:relative}
.detail-hero__title{
    margin:0;
    font-size:clamp(24px,3.4vw,38px);
    font-weight:800;
    letter-spacing:-.03em;
}
.detail-hero__meta{display:flex;gap:10px;align-items:center;margin-top:10px;color:var(--muted)}
.detail-hero__actions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}

.detail{
    display:grid;
    grid-template-columns:280px 1fr;
    gap:20px;
    align-items:start;
}
.detail__poster img{
    width:100%;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 18px 50px rgba(0,0,0,.55);
}
.detail__overview{
    margin:0;
    color:rgba(238,241,255,.90);
    font-size:15px;
}
.detail__block{margin-top:18px}
.detail__label{color:var(--muted);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{
    display:inline-flex;
    align-items:center;
    height:30px;
    padding:0 12px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.06);
    color:var(--text);
    font-weight:700;
    font-size:13px;
}
.facts{
    margin:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 16px;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.04);
}
.fact{
    margin:0;
    display:grid;
    gap:4px;
}
.fact dt{
    margin:0;
    color:var(--muted);
    font-weight:800;
    font-size:12px;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.fact dd{
    margin:0;
    color:rgba(238,241,255,.92);
    font-weight:650;
    font-size:14px;
    line-height:1.35;
}
@media (max-width:720px){
    .facts{grid-template-columns:1fr}
}

.player{
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.04);
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 18px 60px rgba(0,0,0,.55);
}
.player__video{width:100%;height:auto;display:block}
.player__yt{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    background:#000;
}
.player__yt iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

.gate{
    position:fixed;
    inset:0;
    z-index:80;
    display:grid;
    place-items:center;
    padding:20px;
    background:rgba(0,0,0,.68);
    backdrop-filter:blur(10px);
}
.gate[hidden]{display:none}
.gate__panel{
    width:min(520px,100%);
    border-radius:22px;
    border:1px solid rgba(255,255,255,.12);
    background:linear-gradient(180deg,rgba(18,20,30,.92),rgba(12,14,20,.92));
    box-shadow:0 30px 100px rgba(0,0,0,.72);
    padding:22px;
}
.gate__title{font-size:18px;font-weight:900;letter-spacing:-.02em}
.gate__text{margin-top:10px;color:var(--muted);font-weight:650}
.gate__actions{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}
html.no-scroll,body.no-scroll{overflow:hidden}

.intro{
    position:fixed;
    inset:0;
    z-index:85;
    display:grid;
    place-items:center;
    padding:20px;
    background:rgba(0,0,0,.78);
    backdrop-filter:blur(12px);
}
.intro[hidden]{display:none}
.intro__panel{
    width:min(920px,100%);
    border-radius:22px;
    border:1px solid rgba(255,255,255,.12);
    background:linear-gradient(180deg,rgba(18,20,30,.92),rgba(12,14,20,.92));
    box-shadow:0 34px 120px rgba(0,0,0,.82);
    overflow:hidden;
}
.intro__frame{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    background:#000;
}
.intro__frame iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}
.intro__actions{
    display:flex;
    justify-content:flex-end;
    padding:14px;
    border-top:1px solid rgba(255,255,255,.06);
}

.empty{
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.04);
    border-radius:18px;
    padding:22px;
}
.empty__title{font-weight:800;font-size:16px}
.empty__desc{color:var(--muted);font-weight:600;margin-top:6px}

.auth{
    display:grid;
    place-items:center;
    padding:30px 0;
}
.auth__panel{
    width:min(520px,100%);
    border:1px solid rgba(255,255,255,.10);
    background:rgba(255,255,255,.04);
    border-radius:22px;
    padding:22px;
    box-shadow:0 22px 70px rgba(0,0,0,.55);
}
.auth__title{margin:0;font-size:22px;letter-spacing:-.02em}
.auth__sub{margin:8px 0 18px;color:var(--muted);font-weight:600}
.form{display:grid;gap:12px}
.field__label{display:block;color:var(--muted);font-weight:800;font-size:12px;margin-bottom:6px;letter-spacing:.06em;text-transform:uppercase}
.field__input{
    width:100%;
    height:46px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.05);
    padding:0 14px;
    color:var(--text);
    font-size:14px;
    outline:none;
}
.field__input:focus{border-color:rgba(255,45,85,.55);box-shadow:0 0 0 4px rgba(255,45,85,.14)}
.auth__note{margin-top:14px;color:var(--muted-2);font-weight:600;font-size:12px}

@media (max-width:860px){
    .nav{grid-template-columns:auto auto 1fr}
    .nav__links{justify-content:flex-start}
}
@media (max-width:820px){
    .nav{
        grid-template-columns:1fr auto;
        grid-template-areas:
            "brand toggle"
            "search search"
            "links links";
        gap:12px;
        padding:12px 0;
    }
    .nav__brand{grid-area:brand}
    .nav__toggle{grid-area:toggle;display:inline-flex}
    .nav__search{grid-area:search}
    .nav__search-input{width:100%}
    .nav__links{
        grid-area:links;
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        background:rgba(12,14,20,.92);
        border:1px solid rgba(255,255,255,.10);
        border-radius:18px;
        padding:10px;
        display:none;
        flex-direction:column;
        align-items:stretch;
        gap:6px;
        box-shadow:0 22px 70px rgba(0,0,0,.55);
    }
    .nav-wrap.is-open .nav__links{display:flex}
    .nav__logo{height:20px;max-width:170px}
    .detail{grid-template-columns:1fr;gap:16px}
    .detail__poster{max-width:320px}
}

@media (max-width:860px){
    .hero{min-height:440px;padding:40px 0 26px}
    .hero__grid{grid-template-columns:1fr}
    .hero__poster{display:none}
}

@media (max-width:620px){
    .section{padding:34px 0}
    .section__head{flex-direction:column;align-items:flex-start}
    .section__right{align-items:flex-start}
}

@media (prefers-reduced-motion: reduce){
    .btn,.card,.card__img,.rail__item img,.nav__search-btn,.footer__social a,.pager__page,.pager__btn,.hero__poster{transition:none}
    .btn:hover,.card:hover,.rail__item:hover img,.nav__search-btn:hover,.footer__social a:hover,.pager__page:hover,.pager__btn:hover,.hero__poster:hover{transform:none}
}
