:root{--bg:#f5f3f2;--surface:#fff;--surface-soft:#efeceb;--ink:#171310;--muted:#79726e;--line:#e5e0dd;--green:#d10a1e;--green-soft:#fbe1e3;--shadow:0 3px 12px rgba(20,10,12,.08)}[data-theme="dark"]{--bg:#0e0e10;--surface:#17171b;--surface-soft:#212127;--ink:#f2f0ee;--muted:#a7a2a1;--line:#2c2c33;--green:#ff5666;--green-soft:#331a1f;--shadow:0 4px 16px rgba(0,0,0,.45)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-bottom:86px;background:var(--bg);color:var(--ink);font-family:Tahoma,Arial,sans-serif;transition:background .2s,color .2s}a{color:inherit;text-decoration:none}button{font:inherit}.app-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:0 max(18px,calc((100vw - 760px)/2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 91%,transparent);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:34px;height:34px;border-radius:9px;flex:none;object-fit:cover;background:#fff;box-shadow:var(--shadow)}.brand-text{display:flex;flex-direction:column;gap:1px;line-height:1.1}.brand strong{color:var(--green);font-size:24px;letter-spacing:-.06em}.brand span{color:var(--muted);font-size:11px}.header-actions{display:flex;gap:8px}.icon-button{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow);cursor:pointer}.app-shell{width:min(760px,calc(100% - 28px));margin:auto}.intro{padding:36px 4px 20px}.intro h1{margin:0;text-align:center;font-size:clamp(28px,6vw,43px);letter-spacing:-.055em}.intro p{margin:14px 0 0;text-align:center;color:var(--muted);font-size:12px;line-height:1.8}.summary-card{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:17px 20px 25px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.summary-number{display:grid;gap:4px;text-align:center}.summary-number strong{color:var(--green);font-size:20px}.summary-number span{color:var(--muted);font-size:10px}.spark{position:absolute;right:24px;bottom:0;left:24px;display:flex;align-items:end;gap:4px;height:16px;opacity:.7}.spark i{flex:1;height:4px;border-radius:4px 4px 0 0;background:var(--green)}.spark i:nth-child(2){height:9px}.spark i:nth-child(3){height:5px}.spark i:nth-child(4){height:13px}.spark i:nth-child(5){height:8px}.spark i:nth-child(6){height:15px}.spark i:nth-child(7){height:11px}.leader-card{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;padding:17px 20px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.leader-card small{color:var(--muted);font-size:10px}.leader-card h2{margin:7px 0 6px;font-size:18px;direction:ltr;text-align:right}.leader-card span{display:inline-block;padding:4px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:10px}.leader-card>strong{flex:none;color:var(--green);font:700 36px Georgia,serif;direction:ltr}.feed-section{padding:38px 0 26px}.feed-label{display:flex;align-items:center;gap:12px;margin-bottom:15px;color:var(--muted);font-size:12px}.feed-label i{height:1px;flex:1;background:var(--line)}.filter-row,.sort-row{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.filter-row::-webkit-scrollbar,.sort-row::-webkit-scrollbar{display:none}.filter,.sort{flex:none;padding:9px 17px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px;cursor:pointer}.filter.active{border-color:var(--green);background:var(--green);color:white}.sort-row{justify-content:flex-end;margin:3px 0 12px}.sort-row>span{color:var(--muted);font-size:10px}.sort{padding:7px 13px}.sort.active{border-color:var(--green);background:var(--green-soft);color:var(--green);font-weight:800}.ratings-list{display:grid;gap:10px}.rating-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.rank{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--surface-soft);color:var(--green);font:700 15px Georgia,serif}.rating-main{min-width:0}.rating-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:9px}.tag{padding:4px 8px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:9px}.network{color:var(--muted);font-size:10px}.rating-main h3{margin:0;font-size:16px;line-height:1.65;direction:ltr;text-align:right;overflow-wrap:anywhere}.rating-main p{margin:8px 0 0;color:var(--muted);font-size:11px;line-height:1.7}.score{text-align:left;direction:ltr}.score strong{display:block;color:var(--green);font:700 24px Georgia,serif}.score span{color:var(--muted);font-size:9px}.rating-card:first-child{border-color:color-mix(in srgb,var(--green) 34%,var(--line))}.rating-card:first-child .rank{background:var(--green);color:white}.notice{padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--muted);text-align:center;font-size:12px}.notice.error{color:#a43e4b}.method-card{margin:18px 0 34px;padding:24px;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:var(--shadow)}.method-card>span{color:var(--green);font-size:10px;font-weight:800}.method-card h2{margin:9px 0 10px;font-size:24px}.method-card p{margin:0;color:var(--muted);font-size:12px;line-height:2}.method-card a{display:inline-block;margin-top:16px;color:var(--green);font-size:11px;font-weight:800}.bottom-nav{position:fixed;right:0;bottom:0;left:0;z-index:40;display:grid;grid-template-columns:repeat(4,1fr);height:70px;padding:7px max(8px,calc((100vw - 760px)/2));border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}.bottom-nav a{display:grid;place-items:center;align-content:center;gap:4px;color:var(--muted);font-size:9px}.bottom-nav b{font-size:17px}.bottom-nav a.active{color:var(--green)}@media(max-width:520px){.brand strong{font-size:21px}.brand span{font-size:9px}.intro{padding-top:28px}.intro h1{font-size:30px}.summary-card{padding-inline:10px}.summary-number strong{font-size:17px}.summary-number span{font-size:9px}.rating-card{grid-template-columns:auto minmax(0,1fr)}.score{grid-column:2;text-align:right}.leader-card h2{font-size:15px}.leader-card>strong{font-size:30px}}
/* ---- Rating mode tabs (Total/AB/ABC1) ---- */
.cat-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.cat-tab{display:grid;gap:2px;padding:11px 8px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--ink);cursor:pointer;text-align:center}
.cat-tab b{font:700 15px Georgia,serif;color:var(--green)}
.cat-tab span{font-size:9px;color:var(--muted)}
.cat-tab.active{border-color:var(--green);background:var(--green);color:#fff}
.cat-tab.active b,.cat-tab.active span{color:#fff}
.cat-note{margin:0 2px 14px;color:var(--muted);font-size:10px;line-height:1.8}
/* ---- Day strip ---- */
.day-strip{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.day-strip-label{flex:none;color:var(--muted);font-size:10px}
.day-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.day-tabs::-webkit-scrollbar{display:none}
.day-tab{flex:none;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px;cursor:pointer;direction:ltr}
.day-tab.active{border-color:var(--green);background:var(--green-soft);color:var(--green);font-weight:800}
.net-filter{flex:none;margin-inline-start:auto;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px}
/* ---- Rating pills (per-episode Total/AB/ABC1) ---- */
.rating-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.rp{display:grid;gap:1px;padding:8px 6px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft);text-align:center}
.rp-k{font-size:9px;color:var(--muted);font-weight:800}
.rp-v{font:700 17px Georgia,serif;color:var(--green);direction:ltr}
.rp-v.muted{color:var(--muted)}
.rp-rank{font-size:14px}
.rp-r{font-size:8px;color:var(--muted)}
/* ---- Network chips / logos ---- */
.net-chip{display:inline-grid;place-items:center;padding:0}
.network-mark{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;flex:none;min-width:42px;min-height:21px;line-height:1}
.network-mark img{display:block;max-width:66px;width:auto;height:22px;object-fit:contain;border-radius:5px}
.network-mark-fallback{color:var(--muted);font-size:11px}
.net-logo{height:26px;width:auto;display:block;border-radius:6px}
.net-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.net-tile{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow);border-inline-start:4px solid var(--net-color,var(--green))}
.net-tile img{height:30px;width:auto;border-radius:6px}
.net-tile strong{display:block;font-size:14px}
.net-tile span{display:block;margin-top:3px;color:var(--muted);font-size:10px}
.see-all{display:inline-block;margin-top:14px;color:var(--green);font-size:11px;font-weight:800}
/* ---- Series cards (network page) ---- */
.series-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.series-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.series-thumb{aspect-ratio:16/9;background:var(--surface-soft);background-size:cover;background-position:center}
.series-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.series-thumb img[hidden]{display:none}
.series-thumb.no-image{background:linear-gradient(135deg,var(--green-soft),var(--surface-soft))}
.series-body{padding:14px}
.series-top{display:flex;justify-content:space-between;gap:6px;margin-bottom:8px}
.day-chip{padding:4px 8px;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:9px}
.status-chip{padding:4px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:9px}
.series-body h3{margin:0;font-size:16px}
.series-body p{margin:5px 0 0;color:var(--muted);font-size:11px;direction:ltr;text-align:right}
.mini-rating{display:inline-block;margin-top:10px;color:var(--green);font-size:11px;font-weight:800;direction:ltr}
.mini-rating.muted{color:var(--muted)}
.genre-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}
.genre-chip{padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.11);font-size:10px}
/* ---- Episode card tweaks ---- */
.episode-image.no-image{display:grid;place-items:center;background:linear-gradient(135deg,var(--green-soft),var(--surface-soft));color:var(--muted);font-size:11px}
.episode-copy h3 a{color:inherit}
.ep-open{display:inline-block;margin-top:12px;color:var(--green);font-size:10px;font-weight:800}
/* ---- Network hero page ---- */
.net-hero{position:relative;margin-top:18px;padding:34px 24px;border-radius:20px;overflow:hidden;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-top:5px solid var(--net-color,var(--green))}
.net-hero-top{display:flex;align-items:center;gap:16px}
.net-hero img{height:52px;width:auto;border-radius:10px}
.net-hero h1{margin:0;font-size:32px}
.net-hero .net-fa{color:var(--muted);font-size:12px;margin-top:4px}
.net-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.net-meta span,.net-meta a{padding:6px 11px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:10px}
.net-meta a{color:var(--green);font-weight:800}
.net-rating-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:8px}
.net-rating-row b{color:var(--green);font:700 14px Georgia,serif}
.net-rating-row span{font-size:12px;direction:ltr;text-align:right;overflow-wrap:anywhere}
.net-rating-row strong{color:var(--green);font:700 18px Georgia,serif;direction:ltr}
/* ---- Episode profile page ---- */
.crumbs{display:flex;gap:6px;align-items:center;margin-top:18px;color:var(--muted);font-size:11px}
.crumbs a{color:var(--green);font-weight:700}
.ep-hero{position:relative;min-height:320px;margin-top:12px;border-radius:20px;overflow:hidden;background:#16090b;background-size:cover;background-position:center}
.ep-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ep-hero.no-image{background:linear-gradient(135deg,#1a0c0e,#3a1418)}
.ep-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,7,8,.95),rgba(12,7,8,.1) 70%)}
.ep-hero-copy{position:absolute;right:0;bottom:0;left:0;padding:28px;color:#fff;z-index:1}
.ep-hero-copy .ep-kicker{color:#bdd3cb;font-size:12px;direction:ltr;text-align:right}
.ep-hero-copy h1{margin:8px 0 12px;font-size:clamp(26px,5vw,40px);letter-spacing:-.04em}
.ep-facts{display:flex;gap:8px;flex-wrap:wrap}
.ep-facts span{padding:6px 10px;border-radius:8px;background:rgba(255,255,255,.14);font-size:10px}
.ep-hero .net-chip{position:absolute;top:20px;left:20px;z-index:1}
.ep-block{padding:26px 2px;border-bottom:1px solid var(--line)}
.ep-block h2{margin:0 0 14px;font-size:20px}
.ep-block .kicker{color:var(--green);font-size:10px;font-weight:800;display:block;margin-bottom:6px}
.ratings-big .rating-pills .rp{padding:14px 8px}
.ratings-big .rp-v{font-size:24px}
.ratings-note{margin:12px 0 0;color:var(--muted);font-size:10px}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.shot{display:block;aspect-ratio:16/9;border-radius:12px;background:var(--surface-soft);background-size:cover;background-position:center;border:1px solid var(--line)}
.shot img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.shot:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.gallery-dialog{width:min(1100px,calc(100vw - 24px));height:min(92vh,850px);max-width:none;max-height:none;padding:0;border:1px solid var(--line);border-radius:18px;color:#fff;background:#111;box-shadow:0 20px 80px #000a;overflow:hidden}
.gallery-dialog::backdrop{background:#000d}
.gallery-viewer{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.gallery-toolbar,.gallery-caption{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#171717}
.gallery-toolbar span{flex:1;font-size:13px}
.gallery-toolbar button,.gallery-controls button{border:1px solid #7777;border-radius:10px;background:#333;color:#fff;font:inherit;cursor:pointer}
.gallery-toolbar button{padding:5px 12px;font-size:21px}
.gallery-stage{position:relative;min-height:0;display:grid;place-items:center}
.gallery-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.gallery-controls{position:absolute;inset-inline:12px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;pointer-events:none}
.gallery-controls button{pointer-events:auto;padding:10px 14px;font-size:22px;background:#111b}
.gallery-controls button:disabled{visibility:hidden}
.gallery-caption{justify-content:space-between;font-size:12px;color:#ddd}
.gallery-caption a{color:#fff;text-decoration:underline}
body.gallery-open{overflow:hidden}
.gallery-source{display:inline-block;margin-top:14px;color:var(--green);font-size:11px;font-weight:800}
.gallery-source[hidden]{display:none}
.section-headline .gallery-source{margin:0}
.ep-summary{font-size:15px;line-height:2.15;color:var(--ink)}
.ep-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.btn-primary{padding:11px 18px;border-radius:999px;background:var(--green);color:#fff;font-size:12px;font-weight:800}
.btn-ghost{padding:11px 18px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--green);font-size:12px;font-weight:800}
.ep-nav{display:flex;justify-content:space-between;gap:12px;margin:20px 0}
.ep-nav-btn{display:grid;gap:3px;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);min-width:130px}
.ep-nav-btn span{color:var(--muted);font-size:9px}
.ep-nav-btn b{color:var(--green);font-size:13px}
.ep-nav-btn.left{text-align:left}
@media(max-width:520px){.cat-tab b{font-size:13px}.rating-pills{gap:4px}.rp-v{font-size:15px}.net-grid{grid-template-columns:1fr 1fr}}
/* ---- Base profile / cast / episode styles (shared by generated pages) ---- */
.profile-shell{width:min(900px,calc(100% - 28px));margin:auto}
.profile-hero{position:relative;min-height:470px;margin-top:12px;overflow:hidden;border-radius:20px;background:#16090b;color:#fff}
.hero-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(12,7,8,.97),rgba(12,7,8,.15) 72%)}
.profile-title{position:absolute;right:0;bottom:0;left:0;padding:34px;z-index:1}
.profile-tags{display:flex;gap:7px}
.profile-tags span{padding:5px 9px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(12,7,8,.48);font-size:10px}
.profile-title h1{margin:13px 0 4px;font-size:clamp(34px,7vw,60px);letter-spacing:-.06em}
.profile-title>p{margin:0;color:#bdd3cb;font:italic 16px Georgia,serif;text-align:right}
.profile-facts{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.profile-facts span{padding:6px 10px;border-radius:8px;background:rgba(255,255,255,.11);font-size:10px}
.profile-facts span a{color:#fff;font-weight:700}
.profile-section{padding:38px 2px;border-bottom:1px solid var(--line)}
.section-kicker,.section-headline span{color:var(--green);font-size:10px;font-weight:800}
.synopsis{margin:12px 0 0;font-size:15px;line-height:2.15}
.official-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.official-links a{padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--green);font-size:10px;font-weight:800}
.profile-sources{display:flex;gap:16px;flex-wrap:wrap}
.episode-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}
.episode-actions a{color:var(--green);font-size:11px;font-weight:800}
.section-headline{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}
.section-headline h2{margin:5px 0 0;font-size:26px}
.section-headline small{color:var(--muted);font-size:9px}
.cast-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cast-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}
.cast-card:hover{transform:translateY(-3px)}
.cast-photo{aspect-ratio:4/3;background:linear-gradient(135deg,var(--green-soft),var(--surface-soft));background-size:cover;background-position:center;display:grid;place-items:center;color:var(--green);font-size:38px}
.cast-photo,.person-thumb,.person-photo{position:relative;overflow:hidden}
.cast-photo img,.person-thumb img,.person-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.cast-photo .avatar-initial,.person-thumb .avatar-initial,.person-photo .avatar-initial{font:inherit;color:var(--green);margin:0;text-align:center;direction:rtl}
.cast-card>div{padding:12px}
.cast-card strong{display:block;font-size:15px;text-align:right}
.cast-card span{display:block;margin-top:5px;color:var(--muted);font-size:10px;direction:ltr;text-align:right}
.cast-card .role-link{display:inline-flex;direction:rtl;align-items:center;gap:5px;margin-top:8px;padding:6px 10px;border-radius:8px;background:var(--green-soft);font-size:12px}
.cast-card .role-link::before{content:'نقش:';font-weight:400}
.cast-teaser{padding:0 12px 15px;margin:0;color:var(--muted);font-size:11px;line-height:1.8;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.episodes{display:grid;gap:12px}
.episode-card{display:grid;grid-template-columns:230px 1fr;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.episode-image{min-height:180px;background-size:cover;background-position:center}
.episode-copy{padding:20px}
.episode-meta{display:flex;justify-content:space-between;color:var(--green);font-size:10px}
.episode-copy h3{margin:12px 0 8px;font-size:19px}
.episode-copy p{margin:0;color:var(--muted);font-size:12px;line-height:2}
@media(max-width:650px){.profile-hero{min-height:420px}.profile-title{padding:22px}.cast-grid{grid-template-columns:repeat(2,1fr)}.episode-card{grid-template-columns:1fr}.episode-image{min-height:190px}}
/* ---- Site nav (section links) ---- */
.site-nav{position:sticky;top:64px;z-index:20;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:8px max(14px,calc((100vw - 760px)/2));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(12px)}
.site-nav::-webkit-scrollbar{display:none}
.site-nav a{flex:none;padding:7px 13px;border-radius:999px;color:var(--muted);font-size:12px;white-space:nowrap}
.site-nav a.on{background:var(--green);color:#fff;font-weight:800}
/* ---- Search boxes ---- */
.home-search{display:flex;gap:8px;max-width:460px;margin:18px auto 0}
.home-search input{flex:1;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit}
.home-search button{padding:12px 18px;border:none;border-radius:999px;background:var(--green);color:#fff;font-weight:800;cursor:pointer}
.list-search{margin:0 0 18px}
.list-search input{width:100%;padding:13px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit}
.kicker{color:var(--green);font-size:11px;font-weight:800}
.muted-line{color:var(--muted);font-size:12px;margin:6px 0 0}
.row-between{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.net-inline{color:var(--muted);font-size:10px}
.role-link{display:block;margin-top:5px;color:var(--green);font-size:10px;font-weight:700;direction:ltr;text-align:right}
/* ---- People grids (actors + characters) ---- */
.people-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.person-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.person-thumb{width:84px;height:84px;border-radius:50%;background:var(--surface-soft);background-size:cover;background-position:center;display:grid;place-items:center;color:var(--green);font:700 30px Georgia,serif;margin-bottom:10px}
.person-thumb.no-image{background:linear-gradient(135deg,var(--green-soft),var(--surface-soft))}
.person-card strong{font-size:13px}
.person-card span{margin-top:4px;color:var(--muted);font-size:10px}
/* ---- Person / character hero ---- */
.person-hero{display:flex;align-items:center;gap:18px;margin-top:16px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.person-photo{width:96px;height:96px;flex:none;border-radius:50%;background:var(--surface-soft);background-size:cover;background-position:center;display:grid;place-items:center;color:var(--green);font:700 34px Georgia,serif}
.person-photo.no-image{background:linear-gradient(135deg,var(--green-soft),var(--surface-soft))}
.person-hero h1{margin:6px 0 0;font-size:28px}
.credits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.credit-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
.credit-series{display:block}
.credit-thumb{aspect-ratio:16/9;background:var(--surface-soft);background-size:cover;background-position:center}
.credit-thumb.no-image{background:linear-gradient(135deg,var(--green-soft),var(--surface-soft))}
.credit-card strong{display:block;padding:12px 12px 0;font-size:14px}
.credit-role{padding:6px 12px 14px;color:var(--muted);font-size:11px}
.credit-role a{color:var(--green);font-weight:700}
.credit-thumb{position:relative}.credit-thumb span{position:absolute;right:9px;bottom:9px;padding:5px 9px;border-radius:8px;background:var(--green);color:#fff;font-size:10px;font-weight:700}
.actor-hero{background:linear-gradient(135deg,var(--surface),var(--green-soft))}
.actor-hero .person-photo{width:120px;height:120px}
.work-hero{margin-top:16px;padding:32px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(125deg,var(--surface),var(--green-soft))}
.work-hero h1{margin:12px 0;font-size:clamp(28px,6vw,48px)}.work-hero p{color:var(--muted);text-align:right}
.work-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-bottom:16px}
.work-person{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.work-avatar{width:48px;height:48px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);background-size:cover;background-position:center;color:var(--green)}
.work-person span:nth-child(2){flex:1}.work-person strong,.work-person small{display:block}.work-person small{color:var(--muted);margin-top:4px}.work-person>b{color:var(--green)}
.char-info{margin-top:20px}
.char-info{display:grid;gap:8px}
.info-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.info-row span{color:var(--muted);font-size:11px}
.info-row b{color:var(--green);font-size:14px}
/* ---- Recap archive ---- */
.recap-list{display:grid;gap:12px}
.recap-card{display:grid;grid-template-columns:200px 1fr;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}
.recap-thumb{min-height:130px;background:var(--surface-soft);background-size:cover;background-position:center}
.recap-thumb.no-image{background:linear-gradient(135deg,var(--green-soft),var(--surface-soft))}
.recap-copy{padding:16px}
.recap-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.recap-meta a{color:var(--ink);font-weight:800;font-size:13px}
.recap-meta span{color:var(--green);font-size:10px}
.recap-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.9}
/* ---- Fragman archive ---- */
.fragman-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.fragman-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}
.fragman-thumb{display:grid;place-items:center;aspect-ratio:16/9;background:var(--surface-soft);background-size:cover;background-position:center}
.fragman-thumb.no-image{background:linear-gradient(135deg,#1a0c0e,#3a1418)}
.fragman-thumb .play{width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:grid;place-items:center;font-size:16px}
.fragman-copy{padding:14px}
.fragman-copy strong{display:block;font-size:14px}
.fragman-copy span{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.fragman-links{display:flex;gap:10px;margin-top:10px}
.fragman-links a{color:var(--green);font-size:11px;font-weight:800}
/* ---- Calendar ---- */
.cal-legend{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px;color:var(--muted);font-size:11px}
.cal-day{margin-bottom:22px}
.cal-day h2{margin:0 0 10px;font-size:18px;color:var(--green)}
.cal-empty{color:var(--muted);font-size:12px;padding:6px 2px}
.cal-row{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow);margin-bottom:8px}
.cal-net{flex:none}
.cal-net img{height:26px;width:auto;border-radius:6px}
.cal-info{flex:1;min-width:0}
.cal-info strong{display:block;font-size:14px}
.cal-info span{color:var(--muted);font-size:10px;direction:ltr}
.cal-times{display:flex;flex-direction:column;gap:3px;text-align:left;direction:ltr;font-size:11px;color:var(--ink)}
.cal-times span{white-space:nowrap}
/* ---- Search results ---- */
.search-results{display:grid;gap:8px}
.result-row{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.result-type{flex:none;padding:5px 10px;border-radius:999px;font-size:10px;font-weight:800;background:var(--green-soft);color:var(--green)}
.result-type.t-actor,.result-type.t-character{background:#efe6ff;color:#6b3fb5}
.result-type.t-work{background:var(--green-soft);color:var(--green)}
.result-type.t-network{background:#e6f0ff;color:#1d5fb0}
.result-copy{min-width:0}
.result-copy strong{display:block;font-size:14px}
.result-copy span{color:var(--muted);font-size:11px;direction:ltr}
.result-copy em{color:var(--muted);font-size:10px;font-style:normal}
@media(max-width:600px){.recap-card{grid-template-columns:1fr}.recap-thumb{min-height:170px}.cal-row{flex-wrap:wrap}.cal-times{flex-direction:row;gap:10px;margin-top:6px}}
/* =====================================================================
   2026-09 fan-first refresh: Vazirmatn, series-first homepage, shared art
   (appended as overrides so every existing page keeps working)
   ===================================================================== */
@font-face{font-family:"Vazirmatn";src:url("vazirmatn.woff2") format("woff2-variations"),url("vazirmatn.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--font:"Vazirmatn",Tahoma,Arial,sans-serif;--page-w:760px;--radius:16px;--brand:#e3132b}
body{font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
input,select,textarea,button{font-family:inherit}
.rank,.score strong,.leader-card>strong,.cat-tab b,.rp-v,.net-rating-row b,.net-rating-row strong,.person-thumb,.person-photo{font-family:var(--font)}
.app-header{padding-inline:max(18px,calc((100vw - var(--page-w))/2))}
.site-nav{padding-inline:max(14px,calc((100vw - var(--page-w))/2))}
.bottom-nav{padding-inline:max(8px,calc((100vw - var(--page-w))/2))}
@media(min-width:900px){.bottom-nav{display:none}body{padding-bottom:0}}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Rating trends: shared episode, comparison and homepage charts. */
.trend-section{margin:28px 0 0;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.trend-section .feed-label{margin-bottom:8px}.trend-section h2{margin:0 0 8px;font-size:clamp(21px,3vw,28px)}
.trend-help{margin:8px 0 14px;color:var(--muted);font-size:12px;line-height:1.9}
.trend-controls,.trend-switch{display:flex;gap:6px;flex-wrap:wrap}.trend-controls{justify-content:space-between;margin:20px 0 14px}
.trend-button{padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--ink);font-size:12px;cursor:pointer}.trend-button.active{border-color:var(--green);background:var(--green);color:#fff}.trend-button:disabled{opacity:.45;cursor:not-allowed}
.trend-svg{display:block;width:100%;height:auto;min-height:170px;overflow:visible;direction:ltr;background:var(--surface)}
.trend-svg circle{cursor:help}.trend-empty{padding:20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:12px;line-height:1.9;text-align:center}
.trend-point:focus{outline:none;stroke:var(--ink);stroke-width:3}.trend-tooltip{position:fixed;z-index:1000;max-width:min(320px,calc(100vw - 24px));padding:10px 14px;border-radius:10px;background:#171215;color:#fff;box-shadow:0 10px 25px #0005;font-size:12px;font-weight:700;line-height:1.7;pointer-events:none;direction:rtl;text-align:right}.trend-tooltip[hidden]{display:none}
.trend-legend{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.trend-legend-item{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px;line-height:1.5;cursor:pointer}.trend-legend-item i,.trend-change-list i{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;background:var(--trend-color)}.trend-legend-item.off{opacity:.4;text-decoration:line-through}
.trend-analysis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.trend-insight{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft)}.trend-insight small,.trend-change-list small{color:var(--muted);font-size:10px}.trend-insight strong{font-size:15px}.trend-insight b{font-size:17px}.up{color:#168460!important}.down{color:#c53c51!important}
.trend-change-list{grid-column:1/-1;padding:16px;border:1px solid var(--line);border-radius:14px}.trend-change-list h3{margin:0 0 10px;font-size:14px}.trend-change-list a{display:flex;align-items:center;gap:9px;padding:9px 2px;border-top:1px solid var(--line);font-size:12px}.trend-change-list a span{flex:1}.trend-change-list a small{display:block;margin-top:2px;direction:ltr;text-align:right}.trend-change-list a b{white-space:nowrap}
.trend-episodes{display:flex;gap:7px;overflow-x:auto;padding:5px 0 9px}.trend-episode{flex:none;display:grid;gap:5px;min-width:105px;padding:9px 11px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:11px}.trend-episode.current{border-color:var(--green);box-shadow:0 0 0 2px var(--green-soft)}.trend-episode small{color:var(--muted);font-size:10px}.trend-delta{margin:12px 0;font-size:12px;font-weight:700}.trend-more{display:inline-block;margin-top:7px;color:var(--green);font-size:12px;font-weight:700}
.home-trends-content{padding:15px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.home-insights{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 11px;scrollbar-width:thin}
.home-insight{flex:1 0 205px;min-width:0;display:flex;flex-direction:column;gap:6px;min-height:185px;padding:17px;border:1px solid var(--line);border-top:3px solid var(--trend-color);border-radius:14px;background:var(--surface-soft);scroll-snap-align:start}
.home-insight:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.home-insight small,.home-insight span,.home-insight em{font-size:11px;color:var(--muted);font-style:normal;line-height:1.6}
.home-insight strong{font-size:15px}.home-insight b{font-size:21px}.home-insight em{margin-top:auto}.home-insights-foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:11px}.home-insights-more{display:inline-block;padding:5px 3px;color:var(--green);font-size:11px;font-weight:700}
.trend-details{margin-top:19px}.trend-details h3{font-size:15px}.trend-details details{margin:7px 0;border:1px solid var(--line);border-radius:11px}.trend-details summary{display:flex;align-items:center;gap:8px;padding:11px;cursor:pointer;font-size:12px;font-weight:700}.trend-details summary i{width:9px;height:9px;border-radius:50%;background:var(--trend-color)}.trend-details summary small{margin-inline-start:auto;color:var(--muted);font-size:10px}.trend-detail-rows{padding:0 11px 9px}.trend-detail-rows a{display:flex;align-items:center;gap:8px;padding:8px;border-top:1px solid var(--line);font-size:11px}.trend-detail-rows a span{flex:1}.trend-detail-rows time{color:var(--muted);direction:ltr}.trend-detail-rows b{white-space:nowrap}
@media(max-width:640px){.trend-section{padding:16px}.trend-controls{gap:10px}.trend-analysis{grid-template-columns:1fr}.home-insight{flex-basis:75%;min-height:172px}.trend-insight{padding:11px}.trend-svg{min-height:140px}}

/* ---- Homepage shell ---- */
body.home{--page-w:1120px}
.home-shell{width:min(1120px,calc(100% - 28px));margin:auto;padding-bottom:24px}
.home-block{padding:34px 0 4px}
.block-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}
.block-head .kicker{display:block;margin-bottom:5px}
.block-head h2{margin:0;font-size:clamp(20px,2.4vw,26px);font-weight:900;letter-spacing:-.01em}
.block-link{flex:none;padding:6px 0;color:var(--green);font-size:12px;font-weight:800}
.block-note{margin:-6px 0 14px;color:var(--muted);font-size:11px}

/* ---- Art: poster / still. Real photo when we have one, otherwise a designed card in the network colour ---- */
.art{position:relative;overflow:hidden;isolation:isolate;border-radius:var(--radius);color:#fff;background:radial-gradient(120% 85% at 100% 0%,color-mix(in srgb,var(--net,#d10a1e) 72%,transparent) 0%,transparent 62%),linear-gradient(155deg,color-mix(in srgb,var(--net,#d10a1e) 50%,#0b0a0c) 0%,#0b0a0c 74%)}
.art-mono{position:absolute;left:-5%;bottom:-9%;z-index:0;font-weight:900;font-size:clamp(64px,8vw,112px);line-height:1;color:rgba(255,255,255,.09);white-space:nowrap;pointer-events:none;user-select:none}
.art-img{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:cover}
.art:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,rgba(9,7,8,.9) 0%,rgba(9,7,8,.35) 42%,rgba(9,7,8,0) 70%);pointer-events:none}
.art-net{position:absolute;top:10px;left:10px;z-index:3;width:auto;height:18px;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.35)}
.art-title{position:absolute;right:12px;bottom:11px;left:12px;z-index:3}
.art-title b{display:block;font-size:16px;font-weight:800;line-height:1.45;text-shadow:0 1px 12px rgba(0,0,0,.45)}
.art-title small{display:block;margin-top:1px;overflow:hidden;font-size:11px;text-align:right;text-overflow:ellipsis;white-space:nowrap;opacity:.72}
.art-badge{position:absolute;top:10px;right:10px;z-index:3;padding:4px 10px;border-radius:999px;background:rgba(9,7,8,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:10px;font-weight:700;line-height:1.6}
.art-badge.hot{background:var(--brand)}

/* ---- Spotlight (hero) ---- */
.spotlight{position:relative;min-height:430px;margin-top:18px;overflow:hidden;isolation:isolate;border-radius:24px;background:#0b0a0c;color:#fff;box-shadow:0 18px 48px rgba(12,6,8,.22)}
.spotlight>.art{position:absolute;inset:0;border-radius:0}
.spotlight>.art .art-mono{left:-2%;bottom:-12%;font-size:clamp(140px,24vw,300px)}
.spotlight>.art .art-net{top:18px;left:18px;height:26px}
.spotlight>.art:after{background:linear-gradient(270deg,rgba(9,7,8,.97) 0%,rgba(9,7,8,.82) 36%,rgba(9,7,8,.2) 72%,rgba(9,7,8,.05) 100%),linear-gradient(0deg,rgba(9,7,8,.7) 0%,rgba(9,7,8,0) 50%)}
.spot-copy{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:430px;max-width:580px;padding:34px 38px}
.spot-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 13px;border-radius:999px;background:rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:12px;font-weight:700}
.spot-kicker i{width:8px;height:8px;border-radius:50%;background:#ff3b4e;box-shadow:0 0 0 4px rgba(255,59,78,.25)}
.spot-copy h2{margin:14px 0 2px;font-size:clamp(34px,5.4vw,58px);font-weight:900;line-height:1.15;letter-spacing:-.02em}
.spot-tr{margin:0;font-size:14px;opacity:.7}
.spot-syn{margin:14px 0 0;display:-webkit-box;overflow:hidden;color:rgba(255,255,255,.88);font-size:14px;line-height:2;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.spot-genres{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.spot-genres span{padding:4px 11px;border:1px solid rgba(255,255,255,.24);border-radius:999px;font-size:11px}
.spot-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.btn{display:inline-flex;align-items:center;gap:6px;padding:11px 19px;border-radius:999px;font-size:13px;font-weight:800;line-height:1.5;transition:transform .15s ease,background-color .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-red{background:var(--brand);color:#fff}
.btn-red:hover{background:#c80f24}
.btn-glass{background:rgba(255,255,255,.14);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.btn-glass:hover{background:rgba(255,255,255,.22)}
.spotlight.is-loading{background:linear-gradient(135deg,#1a0c0e,#0b0a0c)}
@media(max-width:640px){.spotlight{min-height:500px;margin-top:12px;border-radius:20px}.spot-copy{min-height:500px;max-width:none;padding:22px}.spotlight>.art:after{background:linear-gradient(0deg,rgba(9,7,8,.98) 0%,rgba(9,7,8,.86) 44%,rgba(9,7,8,.15) 78%,rgba(9,7,8,.05) 100%)}.spotlight>.art .art-mono{bottom:auto;top:6%}.spot-copy h2{font-size:34px}.btn{padding:10px 16px;font-size:12px}}

/* ---- Quick search ---- */
.quick-search{display:flex;gap:8px;margin-top:16px}
.quick-search input{flex:1;min-width:0;padding:14px 20px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:14px;box-shadow:var(--shadow)}
.quick-search button{flex:none;padding:0 22px;border:none;border-radius:999px;background:var(--brand);color:#fff;font-weight:800;cursor:pointer}

/* ---- Tonight (schedule strip) ---- */
.tonight-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:10px}
.tonight-item{display:grid;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:13px;padding:8px;padding-inline-end:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);transition:transform .15s ease,border-color .15s ease}
.tonight-item:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--green) 40%,var(--line))}
.tonight-item .art{aspect-ratio:16/10;border-radius:12px}
.tonight-item .art-mono{font-size:46px}
.tonight-item .art-net{top:6px;left:6px;height:13px}
.tonight-copy{min-width:0}
.tonight-copy strong{display:block;overflow:hidden;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.tonight-copy span{display:block;margin-top:2px;overflow:hidden;color:var(--muted);font-size:11px;text-align:right;text-overflow:ellipsis;white-space:nowrap}
.tonight-copy em{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:10px;font-style:normal}
.tonight-time{min-width:58px;padding:7px 10px;border-radius:13px;background:var(--green-soft);color:var(--green);text-align:center}
.tonight-time b{display:block;font-size:16px;font-weight:900;line-height:1.3}
.tonight-time small{display:block;font-size:9px;font-weight:700}
.tonight-time .network-mark{margin-top:4px}.tonight-time .network-mark img{height:17px;max-width:48px}

/* ---- Split: most-watched + fresh episodes ---- */
.home-split{display:grid}
@media(min-width:980px){.home-split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:36px}}
.top-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.top-item a{display:grid;grid-template-columns:30px 50px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 12px;padding-inline-end:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);transition:transform .15s ease}
.top-item a:hover{transform:translateY(-2px)}
.top-rank{color:var(--muted);font-size:22px;font-weight:900;text-align:center}
.top-item:first-child .top-rank{color:var(--green)}
.art-sm{width:50px;aspect-ratio:2/3;border-radius:10px}
.art-sm .art-net{display:none}
.art-sm .art-mono{left:-18%;bottom:-4%;font-size:30px}
.art-sm:after{background:linear-gradient(0deg,rgba(9,7,8,.3),rgba(9,7,8,0))}
.top-info{min-width:0}
.top-info strong{display:block;overflow:hidden;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.top-info>span{display:block;margin-top:2px;color:var(--muted);font-size:11px}
.top-info>.top-meta{display:flex;align-items:center;gap:7px}.top-meta .network-mark img{height:18px;max-width:49px}
.top-bar{display:block;height:6px;margin-top:8px;overflow:hidden;border-radius:99px;background:var(--surface-soft)}
.top-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(270deg,var(--brand),#ff8a3d)}
.top-score{min-width:54px;text-align:center}
.top-score b{display:block;color:var(--green);font-size:21px;font-weight:900;line-height:1.3}
.top-score small{color:var(--muted);font-size:10px}

.rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(78%,300px);gap:14px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x mandatory;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start}
@media(min-width:980px){.rail{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.ep-rail>:nth-child(n+5){display:none}}
.ep-card{display:flex;flex-direction:column;gap:10px;min-width:0}
.ep-card .art{aspect-ratio:16/9;transition:transform .2s ease,box-shadow .2s ease}
.ep-card:hover .art{transform:translateY(-3px);box-shadow:0 12px 28px rgba(12,6,8,.24)}
.ep-card-copy{display:block;min-width:0}
.ep-when{display:block;color:var(--green);font-size:11px;font-weight:700}
.ep-card-copy strong{display:block;margin-top:3px;font-size:14px;font-weight:800}
.ep-card-copy p{margin:5px 0 0;display:-webkit-box;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.9;-webkit-line-clamp:2;-webkit-box-orient:vertical}

/* ---- Poster grid ---- */
.poster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(min-width:640px){.poster-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}}
@media(min-width:900px){.poster-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}}
.poster{display:block;min-width:0}
.poster .art{aspect-ratio:2/3;transition:transform .2s ease,box-shadow .2s ease}
.poster:hover .art{transform:translateY(-4px);box-shadow:0 14px 30px rgba(12,6,8,.28)}
.poster .art-title b{font-size:14px}
.poster-sub{display:block;margin-top:7px;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:520px){.poster .art-title{right:8px;bottom:8px;left:8px}.poster .art-title b{font-size:12.5px;line-height:1.4}.poster .art-title small{display:none}.poster .art-net{top:7px;left:7px;height:13px}.poster .art-badge{top:7px;right:7px;padding:2px 7px;font-size:9px}.poster .art-mono{font-size:58px}.poster-sub{font-size:10px}}

/* ---- Skeletons, footer ---- */
.skel{display:block;border-radius:var(--radius);background:linear-gradient(90deg,var(--surface-soft) 0%,var(--surface) 50%,var(--surface-soft) 100%);background-size:200% 100%;animation:skel 1.3s linear infinite}
.spotlight .skel{background:linear-gradient(90deg,rgba(255,255,255,.06) 0%,rgba(255,255,255,.14) 50%,rgba(255,255,255,.06) 100%);background-size:200% 100%}
.skel-line{height:14px;margin-top:12px;border-radius:99px}
.skel-title{width:60%;height:44px;margin-top:14px;border-radius:12px}
.skel-row{height:72px;list-style:none}
.skel-card{aspect-ratio:16/9}
@keyframes skel{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.skel{animation:none}*{transition:none!important}}
.site-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;margin-top:44px;padding:22px 2px 8px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.site-foot strong{margin-inline-end:8px;color:var(--ink);font-weight:900}
.site-foot p{margin:0}
.site-foot a{color:var(--green);font-weight:700}

/* ---- Dated broadcast calendar ---- */
.calendar-shell{width:min(1060px,calc(100% - 32px))}
.calendar-shell .intro{padding-bottom:24px}
.calendar-shell .intro .kicker{display:block;margin-bottom:8px;color:var(--green);font-size:12px;font-weight:800;text-align:center}
.calendar-tools{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:17px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}
.calendar-tools label{display:grid;gap:8px;color:var(--muted);font-size:11px;font-weight:700}
.calendar-search-wrap{flex:2 1 260px}.calendar-network-wrap{flex:1 1 175px}
.calendar-tools input,.calendar-tools select{width:100%;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:12px;outline:none;background:var(--bg);color:var(--ink);font:inherit;font-size:13px}
.calendar-tools input:focus-visible,.calendar-tools select:focus-visible{border-color:var(--green)}
.calendar-today{height:44px;padding:0 18px;border:1px solid var(--green);border-radius:12px;background:var(--green-soft);color:var(--green);font-size:12px;font-weight:800;cursor:pointer}
.calendar-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 2px 0;color:var(--muted);font-size:11px}
.calendar-meta p{margin:0}.calendar-meta a{color:var(--green);font-weight:700}
.calendar-stale{margin:14px 0 0;padding:12px 16px;border-radius:12px;background:var(--green-soft);color:var(--ink);font-size:12px;line-height:1.8}
.calendar-strip{display:flex;gap:8px;overflow-x:auto;margin:22px 0 8px;padding:0 0 9px;scrollbar-width:thin}
.calendar-date-pill{display:flex;flex:none;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font-size:11px;cursor:pointer;white-space:nowrap}
.calendar-date-pill b{display:grid;place-items:center;min-width:23px;height:23px;border-radius:8px;background:var(--surface-soft);color:var(--muted)}
.calendar-date-pill.is-today{border-color:var(--green);background:var(--green-soft);color:var(--green)}
.calendar-feed{display:grid;gap:30px;padding:12px 0 35px}
.calendar-day{scroll-margin-top:82px}
.calendar-day-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:0 4px 12px;border-bottom:2px solid var(--line)}
.calendar-day.is-today .calendar-day-heading{border-color:var(--green)}
.calendar-day-heading div{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.calendar-day-heading span{font-size:18px;font-weight:900}.calendar-day-heading small{color:var(--muted);font-size:11px}
.calendar-day-heading>b{color:var(--muted);font-size:11px;white-space:nowrap}
.calendar-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}
.calendar-card{display:flex;min-width:0;min-height:140px;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:var(--shadow);transition:transform .15s,border-color .15s}
.calendar-card:hover{transform:translateY(-2px);border-color:var(--green)}
.calendar-card:focus-visible,.calendar-date-pill:focus-visible,.calendar-today:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.calendar-poster{position:relative;display:grid;place-items:center;flex:none;width:102px;min-height:140px;overflow:hidden;background:linear-gradient(140deg,#321118,#8f2632);color:#fff}
.calendar-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.calendar-poster-letter{font-size:36px;font-weight:900}
.calendar-card-body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0;padding:12px 15px}
.calendar-card-network{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}
.calendar-card-network img{max-width:52px;height:19px;object-fit:contain;border-radius:4px}
.calendar-card-body strong{font-size:15px;line-height:1.5}
.calendar-original{max-width:100%;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.calendar-episode{margin-top:3px;color:var(--ink);font-size:12px;font-weight:800}
.calendar-premiere,.calendar-external{padding:4px 8px;border-radius:7px;background:var(--green-soft);color:var(--green);font-size:10px;font-style:normal;font-weight:700}
.calendar-external{background:var(--surface-soft);color:var(--muted)}
.calendar-credit{margin:0 0 38px;color:var(--muted);font-size:11px;text-align:center}
.calendar-credit a:hover{color:var(--green)}
@media(max-width:700px){.calendar-cards{grid-template-columns:1fr}.calendar-card{min-height:124px}.calendar-poster{width:92px;min-height:124px}.calendar-tools{padding:12px}.calendar-network-wrap{flex-basis:135px}}
/* Series-page rating trend table */
.trend-table-toggle{margin:10px 0}.trend-table-toggle summary{cursor:pointer;color:var(--green);font-size:12px;font-weight:700}
.table-wrap{overflow-x:auto;margin-top:10px}.trend-table{width:100%;border-collapse:collapse;font-size:12px}
.trend-table th,.trend-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.trend-table th{color:var(--muted);font-weight:600}.trend-table td small{color:var(--muted);font-size:10px}
.trend-button:disabled{opacity:.45}
.weekly-tabs{margin:12px 0}.weekly-table td .muted{color:var(--muted)}
/* ---- News (haber) ---- */
.news-feed,.news-page{display:grid;gap:12px}
.news-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;padding:12px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}
.news-card:not(:has(.news-thumb)){grid-template-columns:minmax(0,1fr)}
.news-thumb{display:block;align-self:start;aspect-ratio:4/3;overflow:hidden;border-radius:11px;background:var(--surface-soft)}
.news-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.news-body{min-width:0}
.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:7px;color:var(--muted);font-size:10px}
.news-kind{padding:3px 8px;border-radius:999px;background:var(--surface-soft);font-weight:800}
.news-card.kind-rumor .news-kind{background:#fff1d6;color:#8a5a00}
.news-card.kind-official .news-kind{background:var(--green-soft);color:var(--green)}
[data-theme="dark"] .news-card.kind-rumor .news-kind{background:#3a2c10;color:#f3c565}
.news-body h3{margin:0;font-size:15px;line-height:1.75}
.news-body h3 a:hover{color:var(--green)}
.news-summary{margin:7px 0 0;color:var(--ink);font-size:12px;line-height:1.95}
.news-orig{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6;text-align:left}
.news-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.news-chips:empty{display:none}
.news-chip{padding:4px 10px;border:1px solid var(--line);border-radius:999px;font-size:10px;background:var(--surface-soft)}
.news-chip.chip-series{border-color:color-mix(in srgb,var(--green) 40%,var(--line));color:var(--green)}
.news-chip:hover{border-color:var(--green)}
.news-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:11px}
.news-actions>a{color:var(--green);font-weight:800}
.news-video-btn,.news-more{padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px;cursor:pointer}
.news-video-btn:hover,.news-more:hover{border-color:var(--green);color:var(--green)}
.news-more{justify-self:center;display:block;margin:12px auto 0}
.news-ai{color:var(--muted);font-size:9px}
.news-video{margin-top:10px}
.news-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:11px;background:#000}
.news-video-link{display:inline-block;margin-top:6px;color:var(--muted);font-size:10px}
.news-filters{display:grid;gap:10px;margin-bottom:8px}
.news-filters input,.news-filters select{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px}
.news-kind-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.news-kind-tabs button{flex:none;padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:11px;cursor:pointer}
.news-kind-tabs button.on{border-color:var(--green);background:var(--green);color:#fff;font-weight:800}
.news-updated{margin:6px 2px 12px;color:var(--muted);font-size:10px}
.news-policy{margin:20px 2px 0;color:var(--muted);font-size:10px;line-height:1.9}
.bio-credit{margin:8px 0 0;color:var(--muted);font-size:10px}
.bio-credit a{color:var(--green)}
.profile-tabs{position:sticky;top:106px;z-index:15;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;margin:12px 0;padding:6px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px)}
.profile-tabs::-webkit-scrollbar{display:none}
.profile-tabs a{flex:none;padding:7px 15px;border-radius:999px;color:var(--muted);font-size:12px;white-space:nowrap}
.profile-tabs a:hover{background:var(--green-soft);color:var(--green)}
#about,#cast-section,#news,#trend,#eps{scroll-margin-top:160px}
@media(max-width:520px){.news-card{grid-template-columns:96px minmax(0,1fr);gap:10px}.news-body h3{font-size:14px}}
/* ---- News article page ---- */
.news-article article{margin-top:6px}
.news-article-head h1{margin:8px 0 6px;font-size:clamp(22px,5vw,32px);line-height:1.6;letter-spacing:-.02em}
.news-article .news-meta{margin-bottom:0}
.news-hero{margin:14px 0;border-radius:15px;overflow:hidden;border:1px solid var(--line);background:var(--surface-soft)}
.news-hero img{display:block;width:100%;max-height:420px;object-fit:cover}
.news-hero figcaption{padding:6px 12px;color:var(--muted);font-size:10px}
.news-lead{margin:14px 0;font-size:15px;line-height:2.1;font-weight:800}
.news-text p{margin:0 0 12px;font-size:14px;line-height:2.2}
.news-warn{margin:12px 0;padding:10px 14px;border:1px solid #e8c66a;border-radius:12px;background:#fff6dc;color:#7a5200;font-size:12px;line-height:1.9}
[data-theme="dark"] .news-warn{background:#2f2610;border-color:#6b5514;color:#f3c565}
.news-source{margin:14px 0 4px}
.news-source a{display:inline-block;padding:9px 16px;border:1px solid var(--green);border-radius:999px;color:var(--green);font-size:12px;font-weight:800}
.news-source a:hover{background:var(--green);color:#fff}
.news-disclaimer{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.9}
.news-ratings{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.news-rating{display:grid;gap:3px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}
.news-rating span{font-weight:800;font-size:13px}
.news-rating strong{color:var(--green);font:700 26px Georgia,serif;direction:ltr;text-align:right}
.news-rating small{color:var(--muted);font-size:10px}
.news-entities{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.news-entity{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.news-entity:hover{border-color:var(--green)}
.news-entity strong{display:block;font-size:12px;line-height:1.5}
.news-entity small{color:var(--muted);font-size:10px}
.ne-photo{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:var(--surface-soft) center/cover no-repeat;color:#fff;font:700 11px Arial,sans-serif}
.ne-round{border-radius:50%}
.news-share{display:flex;flex-wrap:wrap;gap:8px}
.news-share a,.news-share button{padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:12px;cursor:pointer}
.news-share a:hover,.news-share button:hover{border-color:var(--green);color:var(--green)}
.news-trending{margin:0 0 6px}
.news-trending h2{margin:6px 2px;font-size:13px;color:var(--muted)}
.news-trending div{display:flex;flex-wrap:wrap;gap:6px}
.news-trending b{margin-inline-start:4px;color:var(--muted);font-size:10px}
.news-src{color:var(--muted)!important;font-weight:400!important}

/* news: outlet logos, source comparison, home strip */
.outlet-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px}
.outlet-logo{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:24px;padding:0 9px;border-radius:7px;color:#fff;font:800 10px/1 system-ui,sans-serif;letter-spacing:.02em;white-space:nowrap;direction:ltr}
.outlet-logo.has-img{background:#fff;border:1px solid var(--line);padding:0 6px}
.outlet-logo img{display:block;max-height:16px;max-width:70px;object-fit:contain}
.outlet-row a:hover .outlet-logo{filter:brightness(1.12);outline:2px solid var(--green)}
.outlet-count{color:var(--muted);font-size:10px;font-weight:800}
.outlet-list{display:grid;gap:9px}
.outlet-link{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.outlet-link:hover{border-color:var(--green)}
.outlet-link .outlet-logo{flex:none;min-width:74px;height:32px;font-size:12px}
.outlet-txt{min-width:0}
.outlet-txt strong{display:block;font-size:12px;line-height:1.7}
.outlet-txt small{color:var(--muted);font-size:10px}
.news-compare .cmp-block{margin:0 0 10px;padding:13px 15px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}
.cmp-block h3{margin:0 0 6px;font-size:13px}
.cmp-block ul{margin:0;padding:0 18px 0 0;font-size:12px;line-height:2}
.cmp-agree{border-right:4px solid var(--green)!important}
.cmp-differ{border-right:4px solid #d9822b!important}
.cmp-unconf{border-right:4px solid #8a8fa0!important}
.cmp-diff{margin-top:8px}.cmp-diff strong{font-size:12px}
.cmp-diff ul{list-style:none;padding:0;display:grid;gap:6px;margin-top:5px}
.cmp-diff li{display:flex;align-items:flex-start;gap:8px}
.cmp-diff li .outlet-logo{flex:none;margin-top:4px}
#home-news{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
/* News media: gallery, social embeds, lightbox */
.news-videos{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.news-gallery-sec,.news-embeds-sec{margin-top:6px}
.news-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.ng-item{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:11px;border:1px solid var(--line);background:var(--surface-soft);cursor:zoom-in}
.ng-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}
.ng-item:hover img{transform:scale(1.05)}
.news-embeds{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.embed-card{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:var(--shadow)}
.embed-card:hover{border-color:var(--green)}
.embed-badge{flex:none;padding:5px 10px;border-radius:999px;color:#fff;font-size:11px;font-weight:800}
.embed-open{color:var(--muted);font-size:11px}
#mm-lightbox{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.85);cursor:zoom-out}
#mm-lightbox img{max-width:100%;max-height:100%;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.mm-lb-close{position:absolute;top:14px;right:18px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:26px;line-height:1;cursor:pointer}
.mm-lb-close:hover{background:rgba(255,255,255,.28)}
@media(max-width:520px){.news-gallery{grid-template-columns:repeat(2,1fr)}}
