:root {
  --ink:#0b0f0c;
  --pine:#16321f;
  --pine-deep:#0d2013;
  --pine-mid:#1f4029;
  --cold:#eef2ec;
  --cold-dim:#a9b6a6;
  --cold-faint:#5f6f5e;
  --ember:#c2591f;
  --ember-deep:#8a3d12;
  --line:rgba(169,182,166,0.22);
  --card:#11250f0f;
  --surface:#132b1a;
  --surface-2:#0f2415;
}
*, *::before, *::after {
  box-sizing:border-box;
}
html {
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body {
  margin:0;
  background:
    radial-gradient(120% 90% at 82% 6%, rgba(13,32,19,0.92) 0%, rgba(11,15,12,0.98) 46%, #070a08 100%),
    linear-gradient(180deg,#0a140d 0%,#070a08 100%);
  color:var(--cold);
  font-family:"Helvetica Neue","Arial Narrow","Liberation Sans Narrow","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  font-size:14px;
  line-height:1.28;
  letter-spacing:0.01em;
  font-stretch:condensed;
  -webkit-font-smoothing:antialiased;
}
img, video {
  display:block;
  max-width:100%;
}
h1, h2, h3, p, dl, dd, dt, ol, ul, li {
  margin:0;
  padding:0;
}
ul, ol {
  list-style:none;
}
a {
  color:inherit;
  text-decoration:none;
}
button, input {
  font:inherit;
  color:inherit;
}
.site-header {
  position:sticky;
  top:0;
  z-index:30;
  background:linear-gradient(180deg,rgba(7,10,8,0.96) 0%,rgba(7,10,8,0.82) 78%,rgba(7,10,8,0) 100%);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(3px);
}
.header-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:7px 14px;
  min-height:44px;
}
a[data-contract="site-name"] {
  font-size:18px;
  font-weight:900;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:var(--cold);
  text-decoration:none;
  white-space:nowrap;
  text-shadow:0 0 14px rgba(194,89,31,0.22);
}
a[data-contract="site-name"]::before {
  content:"";
  display:inline-block;
  width:9px;
  height:9px;
  margin-right:8px;
  background:var(--ember);
  transform:translateY(-1px) rotate(45deg);
  box-shadow:0 0 10px rgba(194,89,31,0.55);
}
.category-nav {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:4px 6px;
  min-width:0;
}
a.runtime-category {
  display:inline-block;
  white-space:nowrap;
  padding:4px 8px;
  font-size:11px;
  font-weight:700;
  letter-spacing:0.08em;
  color:var(--cold-dim);
  text-decoration:none;
  border:1px solid var(--line);
  border-radius:2px;
  background:linear-gradient(180deg,rgba(31,64,41,0.34),rgba(13,32,19,0.28));
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
a.runtime-category:hover, a.runtime-category:focus-visible {
  color:var(--cold);
  border-color:rgba(194,89,31,0.55);
  background:linear-gradient(180deg,rgba(194,89,31,0.22),rgba(13,32,19,0.4));
}
.page-main {
  display:block;
  padding:10px 14px 4px;
  max-width:1440px;
  margin:0 auto;
}
.hero-frame {
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  position:relative;
  padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.hero-media {
  position:relative;
  align-self:start;
  width:100%;
  max-width:340px;
  margin:0 auto;
  background:#050806;
  border:1px solid var(--line);
  overflow:hidden;
  box-shadow:0 18px 40px -22px rgba(0,0,0,0.95);
}
.hero-media::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(100deg,rgba(5,8,6,0.16) 0%,rgba(5,8,6,0.06) 30%,rgba(5,8,6,0.72) 66%,rgba(5,8,6,0.97) 100%),
    radial-gradient(70% 60% at 18% 34%, rgba(194,89,31,0.16) 0%, rgba(5,8,6,0) 68%);
  mix-blend-mode:multiply;
}
.poster-img {
  width:100%;
  height:auto;
  object-fit:cover;
}
.poster-badge {
  position:absolute;
  right:6px;
  bottom:6px;
  z-index:2;
  padding:3px 7px;
  font-size:10px;
  font-weight:900;
  letter-spacing:0.2em;
  color:#120704;
  background:var(--ember);
  border-radius:1px;
  box-shadow:0 0 18px rgba(194,89,31,0.5);
}
.hero-copy {
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.hero-title {
  font-size:clamp(30px,8vw,64px);
  font-weight:900;
  line-height:0.92;
  letter-spacing:-0.01em;
  color:var(--cold);
  text-shadow:0 0 26px rgba(31,64,41,0.85),0 2px 0 rgba(0,0,0,0.6);
  overflow-wrap:anywhere;
}
.hero-tagline {
  font-size:13px;
  font-weight:800;
  letter-spacing:0.06em;
  color:var(--ember);
  border-left:3px solid var(--ember);
  padding-left:8px;
  text-transform:none;
}
.hero-seo {
  font-size:12px;
  line-height:1.45;
  color:var(--cold-dim);
  max-width:70ch;
}
.player-shell {
  position:relative;
  width:100%;
  display:flex;
  flex-direction:column;
  gap:6px;
  background:linear-gradient(180deg,var(--surface) 0%,var(--surface-2) 100%);
  border:1px solid var(--line);
  padding:6px;
  border-radius:2px;
}
.video-frame {
  display:block;
  width:100%;
  background:#000;
  border:1px solid rgba(0,0,0,0.6);
  border-radius:1px;
}
.player-controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px;
}
.ctrl {
  appearance:none;
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(31,64,41,0.5),rgba(10,22,14,0.6));
  color:var(--cold-dim);
  font-size:11px;
  font-weight:700;
  letter-spacing:0.06em;
  padding:4px 8px;
  border-radius:2px;
  cursor:pointer;
  transition:color .14s ease,border-color .14s ease,background .14s ease;
}
.ctrl:hover, .ctrl:focus-visible {
  color:var(--cold);
  border-color:rgba(194,89,31,0.5);
}
.ctrl-progress {
  flex:1 1 120px;
  min-width:90px;
  height:16px;
  padding:0;
  border:none;
  background:transparent;
  cursor:pointer;
}
.ctrl-volume {
  flex:0 1 76px;
  min-width:56px;
  height:16px;
  padding:0;
  border:none;
  background:transparent;
  cursor:pointer;
}
input[type="range"].ctrl {
  accent-color:var(--ember);
}
.player-shell.is-playing .ctrl-play {
  color:var(--ember);
  border-color:rgba(194,89,31,0.6);
  background:linear-gradient(180deg,rgba(194,89,31,0.26),rgba(10,22,14,0.6));
}
.player-shell.is-muted .ctrl-mute {
  color:var(--ember);
  border-color:rgba(194,89,31,0.55);
}
.player-shell.theater-mode {
  box-shadow:0 0 0 1px rgba(194,89,31,0.4),0 24px 60px -30px rgba(0,0,0,0.95);
}
.player-shell.lights-off {
  background:#040604;
  border-color:rgba(0,0,0,0.85);
}
.player-shell.lights-off .ctrl {
  background:#070d08;
  color:var(--cold-faint);
}
.panel-heading {
  font-size:13px;
  font-weight:900;
  letter-spacing:0.24em;
  text-transform:uppercase;
  color:var(--cold);
  padding:0 0 5px 0;
  margin-bottom:7px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:8px;
}
.panel-heading::after {
  content:"";
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg,rgba(194,89,31,0.55),rgba(194,89,31,0));
}
.cast-panel, .synopsis-panel, .status-panel, .details-panel {
  padding:8px 0 4px;
  border-top:1px solid var(--line);
}
.cast-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
}
.cast-card {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  text-align:center;
  min-width:0;
}
.cast-face {
  display:block;
  width:100%;
  aspect-ratio:1 / 1;
  border-radius:2px;
  background:
    radial-gradient(80% 70% at 50% 26%, rgba(238,242,236,0.16) 0%, rgba(238,242,236,0) 62%),
    linear-gradient(160deg,var(--pine-mid) 0%,var(--pine-deep) 70%,#08160c 100%);
  border:1px solid var(--line);
  box-shadow:inset 0 -14px 22px -14px rgba(0,0,0,0.9);
}
.cast-name {
  display:block;
  font-size:10px;
  line-height:1.25;
  letter-spacing:0.04em;
  color:var(--cold-dim);
  text-align:center;
  overflow-wrap:anywhere;
}
.synopsis-para {
  font-size:12px;
  line-height:1.5;
  color:var(--cold-dim);
  margin-bottom:6px;
}
.synopsis-para:last-child {
  margin-bottom:0;
}
.status-line {
  font-size:12px;
  font-weight:700;
  letter-spacing:0.08em;
  color:var(--cold);
  padding:3px 0;
  border-bottom:1px dashed rgba(169,182,166,0.18);
}
.status-line:last-child {
  border-bottom:none;
}
.status-line::before {
  content:"▸";
  color:var(--ember);
  margin-right:6px;
}
.details-list {
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}
.detail-row {
  display:grid;
  grid-template-columns:78px minmax(0,1fr);
  gap:8px;
  align-items:baseline;
  padding:3px 0;
  border-bottom:1px solid rgba(169,182,166,0.12);
}
.detail-row:last-child {
  border-bottom:none;
}
.detail-key {
  font-size:11px;
  font-weight:900;
  letter-spacing:0.1em;
  color:var(--cold-faint);
  text-transform:uppercase;
}
.detail-val {
  font-size:12px;
  color:var(--cold);
  overflow-wrap:anywhere;
}
.timeline-band {
  padding:12px 0 6px;
  border-bottom:1px solid var(--line);
}
.timeline-track {
  display:flex;
  align-items:flex-start;
  gap:0;
  overflow-x:auto;
  padding:4px 0 10px;
  position:relative;
  scrollbar-width:thin;
}
.timeline-track::before {
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:15px;
  height:1px;
  background:linear-gradient(90deg,rgba(194,89,31,0.2),rgba(169,182,166,0.4) 12%,rgba(169,182,166,0.4) 88%,rgba(194,89,31,0.2));
}
.timeline-node {
  position:relative;
  flex:1 1 0;
  min-width:118px;
  padding:0 8px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
}
.node-dot {
  position:relative;
  z-index:1;
  display:block;
  width:10px;
  height:10px;
  margin-top:10px;
  border-radius:50%;
  background:var(--ember);
  box-shadow:0 0 0 3px rgba(13,32,19,1),0 0 12px rgba(194,89,31,0.6);
}
.node-time {
  font-size:11px;
  font-weight:900;
  letter-spacing:0.1em;
  color:var(--cold);
  font-variant-numeric:tabular-nums;
}
.node-label {
  font-size:11px;
  line-height:1.32;
  color:var(--cold-dim);
}
.split-panel {
  padding:12px 0 6px;
  border-bottom:1px solid var(--line);
}
.split-columns {
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  align-items:start;
}
.episode-column, .cast-column {
  min-width:0;
}
.column-subheading {
  font-size:11px;
  font-weight:900;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--cold-dim);
  margin-bottom:6px;
  padding-bottom:4px;
  border-bottom:1px dashed rgba(169,182,166,0.2);
}
.episode-card {
  position:relative;
  padding:9px 10px 9px 12px;
  background:linear-gradient(180deg,var(--surface) 0%,var(--surface-2) 100%);
  border:1px solid var(--line);
  border-radius:2px;
  margin-bottom:7px;
}
.episode-card::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
  background:linear-gradient(180deg,var(--ember),var(--ember-deep));
}
.episode-card:last-child {
  margin-bottom:0;
}
.episode-number {
  display:inline-block;
  font-size:10px;
  font-weight:900;
  letter-spacing:0.16em;
  color:var(--ember);
  padding:2px 6px;
  border:1px solid rgba(194,89,31,0.45);
  border-radius:2px;
  margin-bottom:5px;
}
.episode-title {
  font-size:16px;
  font-weight:900;
  letter-spacing:0.02em;
  line-height:1.15;
  color:var(--cold);
  margin-bottom:4px;
}
.episode-summary {
  font-size:12px;
  line-height:1.45;
  color:var(--cold-dim);
  margin-bottom:6px;
}
.episode-duration {
  display:block;
  font-size:10px;
  font-weight:800;
  letter-spacing:0.14em;
  color:var(--cold-faint);
  padding-top:5px;
  border-top:1px solid rgba(169,182,166,0.14);
}
.comments-region {
  padding:12px 0 6px;
  border-bottom:1px solid var(--line);
}
.comments-masonry {
  columns:1;
  column-gap:8px;
}
.comment-card {
  break-inside:avoid;
  display:block;
  margin:0 0 8px;
  padding:8px 9px;
  background:linear-gradient(180deg,rgba(19,43,26,0.86),rgba(9,18,12,0.9));
  border:1px solid var(--line);
  border-left:2px solid rgba(194,89,31,0.4);
  border-radius:2px;
}
.comment-avatar {
  display:block;
  width:26px;
  height:26px;
  border-radius:7px;
  margin-bottom:6px;
  background:
    radial-gradient(60% 60% at 50% 34%, rgba(238,242,236,0.18) 0%, rgba(238,242,236,0) 70%),
    linear-gradient(150deg,var(--pine-mid),#08160c);
  border:1px solid rgba(169,182,166,0.2);
}
.comment-nick {
  font-size:12px;
  font-weight:900;
  letter-spacing:0.04em;
  color:var(--cold);
  margin-bottom:3px;
}
.comment-text {
  font-size:12px;
  line-height:1.45;
  color:var(--cold-dim);
}
.rec-region {
  padding:12px 0 6px;
  border-bottom:1px solid var(--line);
}
.rec-region:last-of-type {
  border-bottom:none;
}
.rec-heading {
  font-size:14px;
  font-weight:900;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--cold);
  margin-bottom:8px;
  padding-bottom:5px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  gap:8px;
}
.rec-heading::before {
  content:"";
  width:8px;
  height:8px;
  background:var(--ember);
  transform:rotate(45deg);
  flex:0 0 auto;
}
.rec-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  align-items:start;
}
a.rec-card {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:6px;
  background:linear-gradient(180deg,rgba(19,43,26,0.7),rgba(9,18,12,0.82));
  border:1px solid var(--line);
  border-radius:2px;
  color:var(--cold-dim);
  text-decoration:none;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
a.rec-card:hover, a.rec-card:focus-visible {
  border-color:rgba(194,89,31,0.55);
  background:linear-gradient(180deg,rgba(31,64,41,0.7),rgba(9,18,12,0.9));
}
a.rec-card.rec-card-lead {
  grid-column:span 2;
  color:var(--cold);
  border-color:rgba(194,89,31,0.4);
  background:linear-gradient(160deg,rgba(31,64,41,0.78) 0%,rgba(9,18,12,0.92) 80%);
}
a.rec-card.rec-card-lead:hover, a.rec-card.rec-card-lead:focus-visible {
  border-color:var(--ember);
}
[data-runtime="recommendation"] img {
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  height:auto;
  object-fit:cover;
  border-radius:1px;
  background:#050806;
}
.rec-name {
  font-size:12px;
  font-weight:900;
  letter-spacing:0.03em;
  line-height:1.2;
  color:var(--cold);
  overflow-wrap:anywhere;
}
.rec-blurb {
  font-size:11px;
  line-height:1.36;
  color:var(--cold-dim);
  overflow-wrap:anywhere;
}
.rec-region-wide .rec-grid-wide {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.rec-region-narrow .rec-grid-narrow {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.site-footer {
  margin-top:10px;
  padding:12px 14px 20px;
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(7,10,8,0.4),rgba(4,6,5,0.9));
  display:flex;
  flex-direction:column;
  gap:8px;
}
.footer-disclaimer {
  font-size:11px;
  line-height:1.5;
  color:var(--cold-faint);
  max-width:80ch;
}
.footer-nav {
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {
  font-size:11px;
  font-weight:800;
  letter-spacing:0.1em;
  color:var(--cold-dim);
  text-decoration:underline;
  text-decoration-color:rgba(169,182,166,0.4);
  text-underline-offset:3px;
}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover, a[data-contract="footer-home"]:focus-visible, a[data-contract="footer-sitemap"]:focus-visible {
  color:var(--ember);
  text-decoration-color:var(--ember);
}
.friend-links {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px 8px;
}
.friend-label {
  font-size:10px;
  font-weight:900;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--cold-faint);
  padding:2px 6px;
  border:1px solid var(--line);
  border-radius:2px;
}
a.runtime-friend-link {
  font-size:11px;
  color:var(--cold-dim);
  text-decoration:none;
  padding:2px 0;
  border-bottom:1px solid rgba(169,182,166,0.2);
}
a.runtime-friend-link:hover, a.runtime-friend-link:focus-visible {
  color:var(--ember);
  border-bottom-color:var(--ember);
}
@media (min-width:600px){body {
    font-size:14px;
  }
.page-main {
    padding:12px 18px 6px;
  }
.cast-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
.comments-masonry {
    columns:2;
  }
.rec-grid, .rec-region-wide .rec-grid-wide, .rec-region-narrow .rec-grid-narrow {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
.details-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:18px;
  }
.detail-row {
    grid-template-columns:82px minmax(0,1fr);
  }
.timeline-node {
    min-width:104px;
  }
.hero-copy {
    gap:9px;
  }}
@media (min-width:900px){.page-main {
    padding:14px 26px 8px;
  }
.hero-frame {
    grid-template-columns:minmax(220px,300px) minmax(0,1fr);
    grid-template-areas:"media copy";
    gap:16px;
    align-items:start;
  }
.hero-media {
    grid-area:media;
    max-width:none;
    margin:0;
  }
.hero-copy {
    grid-area:copy;
  }
.hero-title {
    font-size:clamp(44px,5.4vw,74px);
  }
.split-columns {
    grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
    gap:16px;
  }
.comments-masonry {
    columns:3;
  }
.cast-grid {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
.rec-grid, .rec-region-wide .rec-grid-wide {
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
.rec-region-narrow .rec-grid-narrow {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
.cast-panel, .synopsis-panel, .status-panel, .details-panel {
    padding:10px 0 5px;
  }}
@media (min-width:1200px){.page-main {
    padding:16px 34px 10px;
  }
.hero-frame {
    grid-template-columns:minmax(240px,330px) minmax(0,1fr);
    gap:20px;
  }
.split-columns {
    grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
    gap:20px;
  }
.rec-grid, .rec-region-wide .rec-grid-wide {
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
.details-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }}
@media (max-width:420px){.header-bar {
    padding:6px 10px;
  }
a[data-contract="site-name"] {
    font-size:15px;
    letter-spacing:0.1em;
  }
.hero-title {
    font-size:clamp(26px,9vw,38px);
  }
.cast-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
.detail-row {
    grid-template-columns:64px minmax(0,1fr);
  }
.rec-grid, .rec-region-wide .rec-grid-wide, .rec-region-narrow .rec-grid-narrow {
    grid-template-columns:repeat(1,minmax(0,1fr));
  }
a.rec-card.rec-card-lead {
    grid-column:span 1;
  }
.timeline-node {
    min-width:132px;
  }}
@media (prefers-reduced-motion:reduce){* {
    transition:none !important;
    animation:none !important;
  }}

footer{text-align:center!important}
footer *{justify-content:center!important}
footer :is(div,nav,ul,ol,p,section,address){margin-left:auto!important;margin-right:auto!important}
