* {box-sizing:border-box;margin:0;padding:0}
:root {
  --ink:#070b1a;
  --ink-2:#0d1330;
  --ink-3:#131b3d;
  --line:rgba(120,200,220,.18);
  --line-2:rgba(120,200,220,.32);
  --cyan:#4de8e0;
  --cyan-dim:#2aa9ae;
  --warm:#ff9a4d;
  --warm-deep:#e2652a;
  --peach:#ffb37a;
  --white:#eaf4f6;
  --muted:#8fa3c0;
  --muted-2:#6c7f9e;
}
html {-webkit-text-size-adjust:100%}
body {
  background:
    radial-gradient(1200px 700px at 12% -8%,rgba(77,232,224,.10),transparent 60%),
    radial-gradient(1000px 620px at 96% 4%,rgba(255,154,77,.12),transparent 58%),
    linear-gradient(180deg,#080d20 0%,#070b1a 60%,#050813 100%);
  background-color:var(--ink);
  color:var(--white);
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",-apple-system,"Noto Sans SC",sans-serif;
  font-size:15px;
  line-height:1.6;
  letter-spacing:.01em;
  min-height:100vh;
  overflow-x:hidden;
}
img {display:block;max-width:100%}
a {color:var(--cyan);text-decoration:none}
ul, ol {list-style:none}
button, input, select {font:inherit;color:inherit}
h1, h2, h3 {font-weight:700;line-height:1.25;letter-spacing:.02em}
.site-header {
  position:sticky;top:0;z-index:60;
  background:linear-gradient(180deg,rgba(8,13,32,.96),rgba(8,13,32,.82));
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner {
  max-width:1240px;margin:0 auto;
  display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  padding:9px 16px;
}
a[data-contract="site-name"] {
  color:var(--white);
  text-decoration:none;
  font-size:19px;font-weight:800;letter-spacing:.14em;
  text-shadow:0 0 14px rgba(77,232,224,.55),0 0 26px rgba(255,154,77,.28);
  padding-right:12px;border-right:1px solid var(--line-2);
}
a[data-contract="site-name"]::before {
  content:"";display:inline-block;width:8px;height:8px;margin-right:8px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#fff,var(--cyan) 45%,rgba(77,232,224,0) 78%);
  box-shadow:0 0 10px var(--cyan);
  vertical-align:middle;
}
.category-rail {
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
  flex:1 1 auto;min-width:0;
}
a.runtime-category {
  color:var(--cyan);
  text-decoration:none;
  white-space:nowrap;
  font-size:13px;
  padding:4px 11px;
  border:1px solid var(--line-2);
  border-radius:999px;
  background:rgba(77,232,224,.06);
  transition:background .18s,color .18s,box-shadow .18s,transform .18s;
}
a.runtime-category:hover {
  background:rgba(255,154,77,.14);
  color:var(--peach);
  border-color:rgba(255,154,77,.5);
  box-shadow:0 0 14px rgba(255,154,77,.35);
  transform:translateY(-1px);
}
.page-main {
  max-width:1240px;margin:0 auto;
  padding:0 16px 40px;
  display:flex;flex-direction:column;gap:16px;
}
.hero-stage {
  position:relative;
  margin-top:16px;
  padding:18px 18px 20px;
  border-radius:20px;
  background:
    linear-gradient(160deg,rgba(19,27,61,.92) 0%,rgba(9,14,34,.94) 62%,rgba(13,19,48,.92) 100%);
  border:1px solid var(--line);
  box-shadow:0 0 0 1px rgba(255,154,77,.05),0 24px 60px -30px rgba(0,0,0,.9);
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:18px;
}
.hero-stage::after {
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    repeating-linear-gradient(115deg,rgba(255,154,77,.055) 0 1px,transparent 1px 9px);
  mix-blend-mode:screen;opacity:.7;
}
.hero-backdrop {
  position:absolute;inset:0;z-index:0;pointer-events:none;
  overflow:hidden;
}
.hero-glow {
  position:absolute;border-radius:50%;
  filter:blur(46px);
}
.hero-glow-cool {
  left:-6%;top:-24%;
  width:52%;height:64%;
  background:radial-gradient(circle,rgba(77,232,224,.5),rgba(77,232,224,0) 68%);
}
.hero-glow-warm {
  right:-8%;bottom:-26%;
  width:56%;height:70%;
  background:radial-gradient(circle,rgba(255,138,60,.52),rgba(255,138,60,0) 70%);
}
.hero-figure {
  position:absolute;
  right:2%;top:0;height:100%;
  width:min(46%,420px);
  display:flex;align-items:flex-start;justify-content:center;
  opacity:.42;
  filter:saturate(.85) contrast(1.05);
  mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.2) 92%);
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.2) 92%);
}
.hero-poster {
  height:100%;width:auto;max-width:none;
  object-fit:cover;
  border-radius:18px 18px 12px 12px;
  box-shadow:0 0 40px rgba(77,232,224,.3),0 0 80px rgba(255,154,77,.22);
}
.hero-veil {
  position:absolute;inset:0;
  background:
    linear-gradient(100deg,rgba(7,11,26,.94) 0%,rgba(7,11,26,.72) 38%,rgba(7,11,26,.2) 68%,rgba(7,11,26,.55) 100%),
    linear-gradient(180deg,rgba(7,11,26,0) 55%,rgba(7,11,26,.85) 100%);
}
.hero-caption {
  position:relative;z-index:2;
  max-width:640px;
  padding:4px 0 2px;
}
.movie-title {
  font-size:clamp(24px,4.4vw,40px);
  letter-spacing:.06em;
  color:#fff;
  text-shadow:0 0 18px rgba(77,232,224,.6),0 0 34px rgba(255,154,77,.35);
}
.movie-tagline {
  margin-top:6px;
  font-size:14px;
  color:var(--peach);
  letter-spacing:.06em;
}
.movie-tagline::before {content:"— ";color:var(--cyan-dim)}
.movie-seo {
  margin-top:10px;
  font-size:13.5px;
  line-height:1.72;
  color:#b9cbe0;
  max-width:56ch;
  border-left:2px solid rgba(77,232,224,.45);
  padding-left:10px;
}
.player-shell {
  position:relative;z-index:3;
  width:100%;
  display:flex;flex-direction:column;
  border-radius:16px;
  overflow:hidden;
  background:#04070f;
  border:1px solid var(--line-2);
  box-shadow:0 0 0 1px rgba(0,0,0,.6),0 20px 50px -26px rgba(77,232,224,.45);
}
.player-shell video {
  display:block;
  width:100%;
  background:#000;
}
.player-controls {
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;
  padding:8px 10px;
  background:linear-gradient(180deg,rgba(19,27,61,.9),rgba(9,14,34,.94));
  border-top:1px solid var(--line);
}
.ctrl {
  font-size:12px;
  padding:5px 10px;
  border-radius:8px;
  border:1px solid var(--line-2);
  background:rgba(77,232,224,.07);
  color:var(--white);
  cursor:pointer;
  white-space:nowrap;
  transition:background .16s,color .16s,border-color .16s,box-shadow .16s;
}
.ctrl:hover {
  background:rgba(255,154,77,.16);
  border-color:rgba(255,154,77,.55);
  color:var(--peach);
  box-shadow:0 0 12px rgba(255,154,77,.3);
}
.ctrl-play {
  background:linear-gradient(135deg,var(--cyan-dim),rgba(77,232,224,.25));
  border-color:rgba(77,232,224,.6);
  color:#04121a;font-weight:700;
}
.ctrl-progress {
  -webkit-appearance:none;appearance:none;
  flex:1 1 120px;min-width:90px;height:6px;
  border:none;border-radius:999px;padding:0;
  background:linear-gradient(90deg,var(--warm),var(--cyan));
  cursor:pointer;
}
.ctrl-progress::-webkit-slider-thumb {
  -webkit-appearance:none;width:13px;height:13px;border-radius:50%;
  background:#fff;box-shadow:0 0 10px var(--cyan);
}
.ctrl-progress::-moz-range-thumb {
  width:13px;height:13px;border:none;border-radius:50%;
  background:#fff;box-shadow:0 0 10px var(--cyan);
}
.ctrl-volume {
  -webkit-appearance:none;appearance:none;
  flex:0 1 88px;width:88px;height:5px;
  border:none;border-radius:999px;padding:0;
  background:rgba(143,163,192,.4);cursor:pointer;
}
.ctrl-volume::-webkit-slider-thumb {
  -webkit-appearance:none;width:11px;height:11px;border-radius:50%;
  background:var(--peach);
}
.ctrl-volume::-moz-range-thumb {
  width:11px;height:11px;border:none;border-radius:50%;background:var(--peach);
}
.ctrl-speed {
  padding:5px 8px;border-radius:8px;
  background:rgba(9,14,34,.9);
  border:1px solid var(--line-2);
  font-size:12px;cursor:pointer;
}
.ctrl.is-active {
  background:linear-gradient(135deg,var(--warm-deep),rgba(255,154,77,.35));
  border-color:rgba(255,154,77,.75);
  color:#160a02;font-weight:700;
  box-shadow:0 0 14px rgba(255,154,77,.55);
}
.player-shell.is-theater {
  box-shadow:0 0 0 1px rgba(255,154,77,.5),0 0 60px -10px rgba(255,154,77,.5);
}
.player-shell.is-lights-off {
  background:#000;
}
.player-shell.is-lights-off .player-controls {
  opacity:.5;
}
.cast-strip {
  position:relative;z-index:2;
}
.cast-heading {
  font-size:13px;
  letter-spacing:.24em;
  color:var(--cyan);
  margin-bottom:8px;
  text-transform:uppercase;
}
.cast-heading::after {
  content:"";display:block;width:38px;height:2px;margin-top:6px;
  background:linear-gradient(90deg,var(--cyan),var(--warm));
  border-radius:2px;
}
.cast-cards {
  display:flex;flex-wrap:wrap;gap:8px;
}
.cast-card {
  flex:0 0 auto;
  padding:7px 14px;
  border-radius:12px;
  background:linear-gradient(150deg,rgba(19,27,61,.95),rgba(9,14,34,.9));
  border:1px solid var(--line);
  border-left:3px solid var(--warm);
  box-shadow:0 6px 18px -12px rgba(0,0,0,.9);
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.cast-card:hover {
  transform:translateY(-2px);
  border-left-color:var(--cyan);
  box-shadow:0 0 18px -4px rgba(77,232,224,.5);
}
.cast-name {
  font-size:13px;letter-spacing:.08em;color:#dceaf2;
}
.synopsis-panel {
  position:relative;z-index:2;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(13,19,48,.72);
  border:1px solid var(--line);
  border-top:2px solid rgba(77,232,224,.5);
}
.panel-heading {
  font-size:15px;letter-spacing:.14em;color:var(--white);
  margin-bottom:9px;
}
.panel-heading::before {
  content:"";display:inline-block;width:6px;height:14px;margin-right:8px;
  border-radius:2px;
  background:linear-gradient(180deg,var(--cyan),var(--warm));
  vertical-align:-1px;
}
.synopsis-para {
  font-size:13.5px;line-height:1.82;color:#b6c8dd;
  text-indent:2em;
}
.synopsis-para+.synopsis-para {margin-top:6px}
.episode-status {
  position:relative;z-index:2;
  display:flex;flex-wrap:wrap;gap:8px;
}
.status-chip {
  font-size:12.5px;letter-spacing:.06em;
  padding:5px 13px;border-radius:999px;
  border:1px solid var(--line-2);
  background:rgba(19,27,61,.9);
  color:#cfe0ea;
}
.status-current {
  color:#160a02;font-weight:700;
  background:linear-gradient(135deg,var(--peach),var(--warm-deep));
  border-color:transparent;
  box-shadow:0 0 16px rgba(255,154,77,.5);
}
.status-rate {
  color:var(--cyan);
  border-color:rgba(77,232,224,.55);
  box-shadow:inset 0 0 12px rgba(77,232,224,.18);
}
.details-grid {
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  padding:14px 16px;
  border-radius:16px;
  background:rgba(9,14,34,.66);
  border:1px solid var(--line);
  border-top:2px solid rgba(255,154,77,.45);
}
.details-heading {grid-column:1 / -1;margin-bottom:0}
.details-list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
}
.detail-row {
  display:flex;align-items:baseline;gap:10px;
  padding:6px 0;
  border-bottom:1px dashed rgba(120,200,220,.14);
  min-width:0;
}
.detail-key {
  flex:0 0 auto;
  font-size:12px;letter-spacing:.1em;
  color:var(--cyan-dim);
  white-space:nowrap;
}
.detail-value {
  flex:1 1 auto;min-width:0;
  font-size:13px;color:#d5e4ee;
  text-align:right;
}
.section-heading {
  font-size:17px;letter-spacing:.14em;
  color:var(--white);
  display:flex;align-items:center;gap:10px;
}
.section-heading::after {
  content:"";flex:1 1 auto;height:1px;
  background:linear-gradient(90deg,rgba(77,232,224,.55),rgba(255,154,77,.28),transparent);
}
.timeline-section, .episodes-section, .comments-section {padding-top:6px}
.timeline-track {
  position:relative;
  margin-top:12px;
  padding-left:2px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 10px;
}
.timeline-node {
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;gap:10px;
  padding:9px 12px 9px 14px;
  border-radius:12px;
  background:linear-gradient(120deg,rgba(19,27,61,.9),rgba(9,14,34,.78));
  border:1px solid var(--line);
  border-left:3px solid rgba(77,232,224,.55);
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
.timeline-node::before {
  content:"";position:absolute;left:-8px;top:50%;
  width:9px;height:9px;margin-top:-4.5px;border-radius:50%;
  background:radial-gradient(circle at 35% 35%,#fff,var(--cyan) 48%,rgba(77,232,224,0) 80%);
  box-shadow:0 0 10px var(--cyan);
}
.timeline-node:hover {
  transform:translateX(3px);
  border-left-color:var(--warm);
  box-shadow:0 0 18px -6px rgba(255,154,77,.6);
}
.timeline-code {
  font-size:12px;font-weight:700;letter-spacing:.06em;
  color:var(--warm);white-space:nowrap;
  padding:2px 8px;border-radius:7px;
  background:rgba(255,154,77,.1);
  border:1px solid rgba(255,154,77,.3);
}
.timeline-label {
  font-size:12.5px;color:#c2d3e2;line-height:1.5;
}
.episode-grid {
  margin-top:12px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:start;
}
.episode-card {
  display:flex;flex-direction:column;gap:5px;
  padding:11px 13px;
  border-radius:14px;
  background:linear-gradient(155deg,rgba(19,27,61,.9),rgba(9,14,34,.82));
  border:1px solid var(--line);
  box-shadow:0 8px 22px -18px rgba(0,0,0,.95);
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.episode-card:hover {
  transform:translateY(-2px);
  border-color:rgba(77,232,224,.5);
  box-shadow:0 0 20px -8px rgba(77,232,224,.55);
}
.episode-number {
  align-self:flex-start;
  font-size:11px;letter-spacing:.08em;
  padding:2px 8px;border-radius:6px;
  color:var(--cyan);
  background:rgba(77,232,224,.1);
  border:1px solid rgba(77,232,224,.32);
}
.episode-title {
  font-size:14px;color:#f0f7fa;letter-spacing:.03em;
}
.episode-summary {
  font-size:12.5px;line-height:1.7;color:#9fb3c9;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;
  overflow:hidden;
}
.episode-duration {
  margin-top:2px;
  font-size:11.5px;color:var(--muted-2);
  letter-spacing:.06em;
}
.episode-duration::before {
  content:"◷ ";color:var(--warm);font-size:11px;
}
.episode-card-current {
  border-color:rgba(255,154,77,.62);
  background:linear-gradient(155deg,rgba(45,28,20,.86),rgba(12,17,40,.9));
  box-shadow:0 0 26px -10px rgba(255,154,77,.7),inset 0 0 22px rgba(255,154,77,.08);
}
.episode-card-current .episode-number {
  color:#160a02;font-weight:700;
  background:linear-gradient(135deg,var(--peach),var(--warm-deep));
  border-color:transparent;
}
.episode-card-current .episode-title {color:#ffd7b0}
.comments-masonry {
  margin-top:12px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  align-items:start;
}
.comment-card {
  display:flex;flex-direction:column;gap:5px;
  padding:10px 13px;
  border-radius:14px;
  background:rgba(13,19,48,.78);
  border:1px solid var(--line);
  border-left:3px solid rgba(255,154,77,.5);
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
.comment-card:nth-child(2n) {
  border-left-color:rgba(77,232,224,.55);
  margin-top:16px;
}
.comment-card:hover {
  transform:translateY(-2px);
  box-shadow:0 0 20px -10px rgba(77,232,224,.65);
}
.comment-nick {
  font-size:12px;letter-spacing:.06em;color:var(--peach);
}
.comment-nick::before {content:"@";color:var(--cyan-dim);margin-right:2px}
.comment-text {
  font-size:12.5px;line-height:1.72;color:#b9cbe0;
}
.rec-region {border-top:1px solid rgba(120,200,220,.12);padding-top:12px}
.rec-region-1 {border-top:none;padding-top:22px}
.rec-heading {
  font-size:14.5px;letter-spacing:.12em;color:var(--white);
  margin-bottom:10px;
}
.rec-heading::before {
  content:"◆";color:var(--warm);font-size:10px;margin-right:8px;vertical-align:1px;
}
.rec-row {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  align-items:start;
}
.rec-region-3 .rec-row {grid-template-columns:repeat(3,minmax(0,1fr))}
.rec-card {
  display:flex;flex-direction:column;gap:6px;
  padding:9px;
  border-radius:14px;
  background:linear-gradient(158deg,rgba(19,27,61,.92),rgba(9,14,34,.85));
  border:1px solid var(--line);
  color:var(--white);
  text-decoration:none;
  box-shadow:0 10px 26px -20px rgba(0,0,0,.95);
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
a.rec-card:hover {
  transform:translateY(-3px);
  border-color:rgba(255,154,77,.6);
  box-shadow:0 0 24px -8px rgba(255,154,77,.6);
}
[data-runtime="recommendation"] img {
  width:100%;
  aspect-ratio:16 / 10;
  height:auto;
  object-fit:cover;
  border-radius:9px;
  background:#04070f;
}
.rec-pic {
  display:block;
}
.rec-name {
  font-size:12.5px;font-weight:700;color:#eef7fa;letter-spacing:.03em;
  display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;
}
.rec-blurb {
  font-size:11.5px;line-height:1.62;color:#93a8c0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.site-footer {
  margin-top:26px;
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(8,13,32,.6),rgba(5,8,19,.95));
}
.site-footer>* {
  max-width:1240px;margin-left:auto;margin-right:auto;
  padding-left:16px;padding-right:16px;
}
.footer-disclaimer {
  padding-top:16px;
  font-size:11.5px;line-height:1.7;color:var(--muted-2);
}
.footer-nav {
  display:flex;flex-wrap:wrap;gap:14px;
  padding-top:10px;
}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {
  color:var(--cyan);
  text-decoration:none;
  font-size:12.5px;letter-spacing:.08em;
  border-bottom:1px solid rgba(77,232,224,.35);
  padding-bottom:1px;
  transition:color .16s,border-color .16s;
}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {
  color:var(--peach);
  border-color:rgba(255,154,77,.7);
}
.footer-friends {
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  padding-top:12px;padding-bottom:22px;
}
.footer-friends-label {
  font-size:11.5px;letter-spacing:.16em;color:var(--muted-2);
  padding-right:10px;border-right:1px solid var(--line-2);
}
a.runtime-friend-link {
  color:#9fb3c9;
  text-decoration:none;
  font-size:11.5px;
  padding:2px 9px;
  border-radius:6px;
  border:1px solid rgba(120,200,220,.16);
  background:rgba(19,27,61,.6);
  white-space:nowrap;
  transition:color .16s,border-color .16s,background .16s;
}
a.runtime-friend-link:hover {
  color:var(--peach);
  border-color:rgba(255,154,77,.5);
  background:rgba(255,154,77,.1);
}
@media (max-width:1000px){.hero-figure {width:min(52%,360px);opacity:.34}
.episode-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.rec-row {grid-template-columns:repeat(3,minmax(0,1fr))}
.rec-region-3 .rec-row {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.hero-stage {padding:14px 13px 16px;gap:14px}
.hero-figure {
    width:min(70%,300px);
    right:-4%;
    opacity:.26;
  }
.hero-veil {
    background:
      linear-gradient(180deg,rgba(7,11,26,.86) 0%,rgba(7,11,26,.62) 45%,rgba(7,11,26,.9) 100%);
  }
.movie-seo {max-width:none}
.details-list {grid-template-columns:minmax(0,1fr)}
.timeline-track {grid-template-columns:minmax(0,1fr)}
.rec-row, .rec-region-3 .rec-row {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){body {font-size:14px}
.header-inner {padding:8px 12px;gap:10px}
a[data-contract="site-name"] {font-size:16px;border-right:none;padding-right:0}
.page-main {padding:0 12px 32px;gap:13px}
.hero-stage {margin-top:12px;border-radius:16px}
.movie-title {letter-spacing:.04em}
.player-controls {gap:5px;padding:7px 8px}
.ctrl {font-size:11.5px;padding:4px 8px}
.ctrl-progress {flex:1 1 100%;order:-1}
.ctrl-volume {flex:1 1 70px;width:auto}
.cast-card {padding:6px 11px}
.episode-grid {grid-template-columns:minmax(0,1fr)}
.comments-masonry {grid-template-columns:minmax(0,1fr)}
.comment-card:nth-child(2n) {margin-top:0}
.rec-row, .rec-region-3 .rec-row {grid-template-columns:repeat(2,minmax(0,1fr))}
.footer-friends-label {border-right:none;padding-right:0}}
@media (max-width:420px){.rec-row, .rec-region-3 .rec-row {grid-template-columns:minmax(0,1fr)}
.detail-row {flex-wrap:wrap;gap:2px}
.detail-value {text-align:left;flex-basis:100%}}

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}
