/* Сезоны сериала (ТЗ 50): блок «Сезоны» в карточке и страница сезона со списком эпизодов. */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sec-sub{margin:6px 0 0;color:var(--fg-2)}

/* блок в карточке сериала */
.seasons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 16px}
.season{display:grid;gap:4px;align-content:start}
.season .img{display:block;aspect-ratio:2/3;border-radius:var(--r-sm);overflow:hidden;background:var(--card);margin-bottom:6px;transition:transform .2s}
.season .img img{width:100%;height:100%;object-fit:cover}
.season:hover .img{transform:translateY(-3px)}
.season b{font:600 1rem/1.2 var(--font-display)}
.season span{font-size:.82rem;color:var(--fg-3)}
.season .sc{color:var(--fg-2)}.season .sc i{font-style:normal;color:var(--gold)}
@media (max-width:1100px){.seasons{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:760px){.seasons{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}}

/* страница сезона */
.s-hero{position:relative;min-height:min(78vh,640px);display:grid;align-items:end;overflow:hidden;isolation:isolate;padding:120px 0 40px}
.s-hero>picture,.s-hero>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.s-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--bg) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.2) 100%),linear-gradient(90deg,rgba(0,0,0,.75),transparent 65%)}
.s-hero-in{display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:end}
.s-poster{display:block;aspect-ratio:2/3;border-radius:var(--r-sm);overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.6)}
.s-poster img{width:100%;height:100%;object-fit:cover}
.s-hero .crumbs{margin-bottom:12px}
.s-hero .crumbs a:hover{color:var(--fg)}
.s-hero h1{font:800 clamp(2.2rem,5vw,4rem)/1 var(--font-display);letter-spacing:-.04em;margin:0 0 14px}
.s-facts{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--fg-2);font-size:1rem}
.s-facts b{color:var(--fg)}.s-facts i{font-style:normal;color:var(--gold)}
.s-lead{max-width:780px;color:rgba(245,245,247,.86);font-size:1.08rem;line-height:1.65;margin:0}
.s-switch{display:flex;flex-wrap:wrap;gap:6px;margin-top:22px}
.s-switch a{padding:9px 15px;border-radius:999px;background:var(--card);font:600 .88rem/1 var(--font-ui);color:var(--fg-2)}
.s-switch a:hover{color:var(--fg)}
.s-switch a[aria-current="page"]{background:var(--fg);color:#000}

.s-chart{padding:18px 18px 12px;background:var(--card);border-radius:var(--r-md)}
.s-chart-h{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 12px;font-size:.88rem;color:var(--fg-2);margin-bottom:26px}
.s-bars{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:8px;height:120px;align-items:end;margin-bottom:22px}
.s-bar{position:relative;height:var(--h);min-height:14px;background:linear-gradient(180deg,#ffd60a,#b99400);border-radius:6px 6px 2px 2px;opacity:.85;transition:opacity .15s}
.s-bar:hover,.s-bar:focus-visible{opacity:1}
.s-bar span{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font:600 .75rem/1 var(--font-ui);color:var(--fg)}
.s-bar i{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-style:normal;font-size:.75rem;color:var(--fg-3)}

.s-spoil{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px;padding:12px 16px;border-radius:var(--r-md);background:rgba(255,55,95,.08);border:1px solid rgba(255,55,95,.25);font-size:.92rem;color:#ffb3c1}
.s-spoil button{all:unset;cursor:pointer;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--fg);font:600 .82rem/1 var(--font-ui)}
.s-spoil button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.s-eps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.s-ep{display:grid;grid-template-columns:320px 1fr;gap:24px;padding:14px;background:var(--card);border-radius:var(--r-md);scroll-margin-top:90px}
.s-still{position:relative;aspect-ratio:16/9;border-radius:var(--r-sm);overflow:hidden;background:var(--card-2)}
.s-still img{width:100%;height:100%;object-fit:cover}
.s-num{position:absolute;left:10px;top:10px;min-width:30px;height:30px;padding:0 8px;border-radius:9px;display:grid;place-items:center;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);font:800 .9rem/1 var(--font-display)}
.s-meta{font-size:.84rem;color:var(--fg-3)}
.s-ep h3{font:700 1.3rem/1.2 var(--font-display);letter-spacing:-.01em;margin:4px 0 2px}
.s-orig{font-size:.86rem;color:var(--fg-3)}
.s-rate{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0}
.s-rate .star{color:var(--gold)}.s-rate b{font:700 1.02rem/1 var(--font-display)}.s-rate span{font-size:.84rem;color:var(--fg-3)}
.s-rate .best{padding:3px 8px;border-radius:999px;background:rgba(48,209,88,.14);color:var(--up);font-weight:600}
.s-text{margin:0;color:var(--fg-2);font-size:.97rem;line-height:1.6;transition:filter .2s}
.s-tag{display:inline-block;margin-right:8px;padding:2px 8px;border-radius:999px;background:rgba(255,55,95,.14);color:#ff8ea4;font:600 .72rem/1.4 var(--font-ui);text-transform:uppercase;letter-spacing:.05em;vertical-align:1px}
.s-tr{display:block;margin-top:6px;font-size:.78rem;color:var(--fg-3)}
body.hide-spoilers .s-text:not(.shown){filter:blur(6px);cursor:pointer;user-select:none}
.s-empty{color:var(--fg-2)}
.s-pager{display:flex;justify-content:space-between;gap:12px;margin-top:28px}
.s-pager a{padding:13px 18px;border-radius:var(--r-md);background:var(--card);color:var(--fg-2)}
.s-pager a:hover{color:var(--fg)}
@media (max-width:760px){
  .s-ep{grid-template-columns:1fr}
  .s-hero{padding-top:100px}
  .s-hero-in{grid-template-columns:110px 1fr;gap:16px}
  .s-bars{gap:4px}.s-bar span{display:none}
}
