:root {
  --magma:#ff5a1f;
  --magma-hot:#ff8a3d;
  --ember:#b3241a;
  --ember-deep:#6e1410;
  --blood:#3a0d0b;
  --rock:#1a1a1c;
  --rock-2:#212124;
  --rock-3:#2a2a2e;
  --ash:#8d8a86;
  --ash-light:#c9c5bf;
  --cold:#5a5f66;
  --cold-light:#9aa1aa;
  --line:rgba(255,90,31,.28);
  --glow:rgba(255,90,31,.45);
  --font:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;
}
*, *::before, *::after {box-sizing:border-box;}
html {-webkit-text-size-adjust:100%;}
body {
  margin:0;
  padding:0;
  background:
    radial-gradient(120% 90% at 78% 6%, rgba(179,36,26,.22), transparent 58%),
    radial-gradient(90% 70% at 12% 40%, rgba(110,20,16,.20), transparent 62%),
    linear-gradient(180deg,#0c0c0e 0%,#111113 42%,#0b0b0d 100%);
  background-color:#0c0c0e;
  color:var(--ash-light);
  font-family:var(--font);
  font-size:13px;
  line-height:1.45;
  letter-spacing:.01em;
  overflow-x:hidden;
}
h1, h2, h3, p, dl, dd, dt, ol, ul, li {margin:0;padding:0;}
ol, ul {list-style:none;}
img {display:block;max-width:100%;height:auto;}
a {color:inherit;text-decoration:none;}
button, input, select {font-family:inherit;font-size:inherit;color:inherit;}
.movie-overview, .timeline-section, .episodes-section, .comments-section, .recommend-region, .site-footer {
  position:relative;
}
.movie-overview::before, .timeline-section::after, .episodes-section::after, .comments-section::after, .recommend-region::after {
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:10px;
  background:linear-gradient(90deg,var(--ember-deep),var(--magma) 40%,var(--ember) 70%,transparent);
  clip-path:polygon(0 60%,2% 20%,4% 70%,7% 15%,10% 65%,13% 25%,16% 72%,19% 10%,22% 60%,25% 30%,28% 75%,31% 20%,34% 68%,37% 12%,40% 62%,43% 28%,46% 74%,49% 18%,52% 66%,55% 24%,58% 70%,61% 14%,64% 64%,67% 30%,70% 76%,73% 22%,76% 68%,79% 16%,82% 62%,85% 28%,88% 72%,91% 20%,94% 66%,97% 26%,100% 60%,100% 100%,0 100%);
  opacity:.55;
  pointer-events:none;
}
.site-header {
  position:sticky;
  top:0;
  z-index:40;
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  padding:8px 16px;
  background:linear-gradient(180deg,rgba(12,12,14,.96),rgba(12,12,14,.78));
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(6px);
}
a[data-contract="site-name"] {
  font-size:15px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--magma-hot);
  text-decoration:none;
  text-shadow:0 0 12px rgba(255,90,31,.6);
  white-space:nowrap;
  clip-path:polygon(0 0,100% 0,96% 100%,0 100%);
}
a[data-contract="site-name"]:hover {color:#ffd0a8;}
.category-bar {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  min-width:0;
}
a.runtime-category {
  display:inline-block;
  white-space:nowrap;
  padding:3px 9px;
  font-size:11px;
  letter-spacing:.08em;
  color:var(--cold-light);
  text-decoration:none;
  background:rgba(42,42,46,.7);
  border:1px solid rgba(90,95,102,.45);
  clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);
  transition:color .18s,border-color .18s,background .18s;
}
a.runtime-category:hover {
  color:var(--magma-hot);
  border-color:var(--line);
  background:rgba(110,20,16,.4);
}
.page-main {
  display:flex;
  flex-direction:column;
  gap:22px;
  padding:0 0 30px;
}
.section-heading {
  font-size:15px;
  font-weight:900;
  letter-spacing:.16em;
  color:var(--ash-light);
  text-transform:uppercase;
  position:relative;
  padding-left:12px;
  text-shadow:0 0 14px rgba(179,36,26,.55);
}
.section-heading::before {
  content:"";
  position:absolute;
  left:0;top:50%;
  transform:translateY(-50%);
  width:5px;height:5px;
  background:var(--magma);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  box-shadow:0 0 8px var(--glow);
}
.movie-overview {
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:0 16px 26px;
  position:relative;
}
.hero-banner {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,2fr);
  align-items:end;
  gap:16px;
  min-height:clamp(360px,52vw,600px);
  overflow:hidden;
  isolation:isolate;
}
.hero-glow {
  position:absolute;
  inset:-10% -5% -20% 20%;
  z-index:0;
  background:
    radial-gradient(50% 55% at 62% 42%, rgba(255,90,31,.42), transparent 68%),
    radial-gradient(70% 80% at 82% 70%, rgba(179,36,26,.30), transparent 72%),
    radial-gradient(40% 40% at 30% 80%, rgba(110,20,16,.35), transparent 70%);
  filter:blur(8px);
  animation:pulse 6.5s ease-in-out infinite;
  pointer-events:none;
}
@keyframes pulse{
  0%,100%{opacity:.62;transform:scale(1);}
  50%{opacity:1;transform:scale(1.06);}
}
.poster-column {
  position:relative;
  z-index:2;
  align-self:end;
  display:flex;
  justify-content:flex-start;
}
.poster-wrapper {
  width:min(46%,210px);
  min-width:130px;
  border:1px solid var(--line);
  box-shadow:0 0 26px rgba(179,36,26,.45),0 0 60px rgba(255,90,31,.18) inset;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%);
}
.poster-image {
  width:100%;
  height:auto;
  aspect-ratio:9 / 16;
  object-fit:cover;
  display:block;
  filter:saturate(1.05) contrast(1.08);
}
.hero-identity {
  position:relative;
  z-index:2;
  align-self:end;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding-bottom:14px;
  min-width:0;
}
.movie-title {
  font-size:clamp(34px,7vw,84px);
  line-height:.94;
  font-weight:900;
  letter-spacing:.04em;
  color:#f4ece4;
  text-shadow:
    0 0 22px rgba(255,90,31,.65),
    0 0 60px rgba(179,36,26,.55),
    0 3px 0 rgba(0,0,0,.6);
  clip-path:polygon(0 0,100% 0,99% 88%,97% 100%,0 100%);
}
.movie-tagline {
  font-size:clamp(12px,1.5vw,16px);
  font-weight:600;
  letter-spacing:.22em;
  color:var(--magma-hot);
  text-shadow:0 0 14px rgba(255,90,31,.5);
  border-left:2px solid var(--ember);
  padding-left:10px;
}
.player-shell {
  position:relative;
  z-index:3;
  width:100%;
  max-width:none;
  background:linear-gradient(180deg,#141416,#0d0d0f);
  border:1px solid var(--line);
  box-shadow:0 0 0 1px rgba(0,0,0,.6),0 14px 40px rgba(0,0,0,.6);
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));
  transition:box-shadow .25s,background .25s;
}
.player-video {
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  background:#000;
  object-fit:contain;
}
.player-controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  padding:7px 9px;
  background:linear-gradient(180deg,rgba(26,26,28,.96),rgba(13,13,15,.96));
  border-top:1px solid rgba(255,90,31,.22);
}
.control-btn {
  padding:4px 9px;
  font-size:11px;
  letter-spacing:.06em;
  color:var(--ash-light);
  background:rgba(42,42,46,.85);
  border:1px solid rgba(90,95,102,.5);
  cursor:pointer;
  clip-path:polygon(5px 0,100% 0,calc(100% - 5px) 100%,0 100%);
  transition:color .16s,background .16s,border-color .16s,box-shadow .16s;
}
.control-btn:hover {
  color:var(--magma-hot);
  border-color:var(--line);
  background:rgba(110,20,16,.55);
  box-shadow:0 0 12px rgba(255,90,31,.35);
}
.control-btn.is-playing, .control-btn.is-muted, .control-btn.is-pip, .control-btn.is-fullscreen, .control-btn.is-active {
  color:#1a1a1c;
  background:linear-gradient(180deg,var(--magma-hot),var(--magma));
  border-color:var(--magma-hot);
  box-shadow:0 0 16px var(--glow);
}
.control-progress {
  flex:1 1 160px;
  min-width:90px;
  height:5px;
  margin:0 4px;
  appearance:none;
  -webkit-appearance:none;
  background:linear-gradient(90deg,var(--ember),var(--magma) 60%,var(--rock-3));
  border-radius:0;
  cursor:pointer;
}
.control-progress::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:12px;height:12px;
  background:var(--magma-hot);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
  box-shadow:0 0 10px var(--glow);
}
.control-progress::-moz-range-thumb {
  width:12px;height:12px;border:0;
  background:var(--magma-hot);
  box-shadow:0 0 10px var(--glow);
}
.control-volume {
  flex:0 1 90px;
  min-width:60px;
  height:5px;
  appearance:none;
  -webkit-appearance:none;
  background:linear-gradient(90deg,var(--cold),var(--rock-3));
  cursor:pointer;
}
.control-volume::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:10px;height:10px;
  background:var(--cold-light);
  clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);
}
.control-volume::-moz-range-thumb {
  width:10px;height:10px;border:0;background:var(--cold-light);
}
.control-speed {
  padding:3px 6px;
  font-size:11px;
  color:var(--ash-light);
  background:rgba(42,42,46,.85);
  border:1px solid rgba(90,95,102,.5);
  cursor:pointer;
}
.player-shell.theater-mode {
  box-shadow:0 0 0 1px var(--line),0 0 70px rgba(255,90,31,.35);
}
.player-shell.lights-off {
  background:#000;
  box-shadow:0 0 90px rgba(255,90,31,.25);
}
.player-shell.lights-off .player-controls {
  background:rgba(0,0,0,.9);
}
.player-shell.is-fullscreen, .player-shell:fullscreen {
  width:100vw;
  height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:#000;
}
.player-shell.is-fullscreen .player-video, .player-shell:fullscreen .player-video {
  max-height:calc(100vh - 52px);
}
.cast-section {
  padding:0 16px;
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-start;
}
.cast-heading {}
.cast-list {
  display:flex;
  flex-wrap:wrap;
  gap:14px 18px;
  align-items:flex-start;
  width:100%;
}
.cast-member {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  width:76px;
  flex:0 0 auto;
}
.cast-avatar-ring {
  position:relative;
  display:block;
  width:62px;height:62px;
  border-radius:50%;
  background:
    conic-gradient(from 0deg,var(--magma),var(--ember-deep) 25%,var(--cold) 50%,var(--ember) 75%,var(--magma));
  padding:2px;
  animation:crystal 7s linear infinite;
  box-shadow:0 0 18px rgba(255,90,31,.35);
}
@keyframes crystal{
  0%{clip-path:polygon(50% 0,79% 12%,96% 38%,96% 64%,78% 90%,50% 100%,22% 90%,4% 64%,4% 38%,21% 12%);transform:rotate(0deg);}
  50%{clip-path:polygon(50% 2%,82% 8%,98% 34%,92% 68%,74% 94%,48% 98%,18% 88%,2% 60%,8% 30%,24% 8%);transform:rotate(180deg);}
  100%{clip-path:polygon(50% 0,79% 12%,96% 38%,96% 64%,78% 90%,50% 100%,22% 90%,4% 64%,4% 38%,21% 12%);transform:rotate(360deg);}
}
.cast-avatar {
  display:block;
  width:100%;height:100%;
  border-radius:50%;
  background:
    radial-gradient(circle at 35% 30%,rgba(255,138,61,.9),rgba(179,36,26,.85) 45%,rgba(26,26,28,.95) 78%);
  border:1px solid rgba(12,12,14,.9);
  box-shadow:inset 0 0 14px rgba(0,0,0,.8);
}
.cast-name {
  font-size:10px;
  font-weight:600;
  letter-spacing:.08em;
  color:var(--cold-light);
  text-align:center;
  line-height:1.2;
}
.synopsis-section {
  padding:0 16px;
  display:flex;
  flex-direction:column;
  gap:9px;
  align-items:flex-start;
}
.synopsis-heading {}
.synopsis-body {
  width:100%;
  max-width:900px;
  display:flex;
  flex-direction:column;
  gap:7px;
  border-left:1px solid rgba(179,36,26,.5);
  padding-left:12px;
}
.synopsis-paragraph {
  font-size:12.5px;
  line-height:1.62;
  color:var(--cold-light);
  text-indent:2em;
}
.episode-status-section {
  padding:0 16px;
  display:flex;
  flex-direction:column;
  gap:9px;
  align-items:flex-start;
}
.status-heading {}
.status-grid {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  width:100%;
}
.status-item {
  display:flex;
  align-items:baseline;
  gap:8px;
  padding:5px 12px;
  background:rgba(42,42,46,.55);
  border:1px solid rgba(179,36,26,.35);
  clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);
}
.status-key {
  font-size:10px;
  letter-spacing:.12em;
  color:var(--cold);
}
.status-value {
  font-size:14px;
  font-weight:800;
  color:var(--magma-hot);
  text-shadow:0 0 10px rgba(255,90,31,.5);
}
.details-section {
  padding:0 16px;
  display:flex;
  flex-direction:column;
  gap:9px;
  align-items:flex-start;
}
.details-heading {}
.details-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:1px;
  width:100%;
  background:rgba(90,95,102,.28);
  border:1px solid rgba(90,95,102,.32);
}
.detail-item {
  display:flex;
  align-items:baseline;
  gap:8px;
  padding:6px 9px;
  background:linear-gradient(180deg,rgba(26,26,28,.94),rgba(19,19,21,.94));
  min-width:0;
}
.detail-key {
  flex:0 0 auto;
  font-size:10px;
  letter-spacing:.1em;
  color:var(--cold);
}
.detail-value {
  font-size:11.5px;
  font-weight:600;
  color:var(--ash-light);
  word-break:break-word;
}
.timeline-section {
  padding:6px 0 30px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.timeline-heading {padding:0 16px;}
.timeline-track {
  position:relative;
  overflow-x:auto;
  overflow-y:hidden;
  padding:10px 16px 20px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:var(--ember) rgba(26,26,28,.6);
}
.timeline-track::-webkit-scrollbar {height:6px;}
.timeline-track::-webkit-scrollbar-track {background:rgba(26,26,28,.6);}
.timeline-track::-webkit-scrollbar-thumb {background:linear-gradient(90deg,var(--ember),var(--magma));}
.timeline-nodes {
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:26px;
  min-width:max-content;
  padding:0 4px;
}
.timeline-nodes::before {
  content:"";
  position:absolute;
  left:18px;right:18px;
  top:31px;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--ember) 4%,var(--magma) 50%,var(--ember) 96%,transparent);
  box-shadow:0 0 12px rgba(255,90,31,.55);
  animation:flow 5s linear infinite;
  background-size:200% 100%;
}
@keyframes flow{
  0%{background-position:0 0;}
  100%{background-position:200% 0;}
}
.timeline-node {
  position:relative;
  z-index:1;
  flex:0 0 auto;
  width:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  text-align:center;
}
.node-hex {
  display:flex;
  align-items:center;
  justify-content:center;
  width:62px;height:62px;
  background:linear-gradient(160deg,var(--rock-3),var(--rock));
  clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);
  border:0;
  box-shadow:0 0 14px rgba(90,95,102,.35);
  transition:transform .2s,box-shadow .2s;
}
.node-timecode {
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  color:var(--cold-light);
}
.node-label {
  font-size:10.5px;
  line-height:1.35;
  color:var(--cold);
  letter-spacing:.02em;
}
.timeline-node:hover .node-hex {
  transform:translateY(-3px);
  box-shadow:0 0 20px rgba(255,90,31,.5);
}
.timeline-node-active .node-hex {
  background:linear-gradient(160deg,var(--magma-hot),var(--ember));
  box-shadow:0 0 26px rgba(255,90,31,.85),0 0 50px rgba(255,90,31,.4);
  animation:hexPulse 2.6s ease-in-out infinite;
}
.timeline-node-active .node-timecode {color:#1a1a1c;}
.timeline-node-active .node-label {color:var(--magma-hot);font-weight:700;}
@keyframes hexPulse{
  0%,100%{transform:scale(1);}
  50%{transform:scale(1.07);}
}
.episodes-section {
  padding:0 16px 30px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.episodes-heading {}
.episode-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:6px;
  width:100%;
  align-items:start;
}
.episode-card {
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:9px 11px;
  background:linear-gradient(180deg,rgba(33,33,36,.82),rgba(19,19,21,.9));
  border:1px solid rgba(90,95,102,.28);
  clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,9px 100%,0 calc(100% - 9px));
  transition:border-color .2s,box-shadow .2s,background .2s;
}
.episode-card:hover {
  border-color:rgba(255,90,31,.7);
  box-shadow:0 0 18px rgba(179,36,26,.55),0 0 40px rgba(110,20,16,.4) inset;
  background:linear-gradient(180deg,rgba(48,20,16,.85),rgba(24,16,15,.92));
}
.episode-number {
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--magma);
}
.episode-title {
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
  color:#efe7df;
  line-height:1.25;
}
.episode-summary {
  font-size:11px;
  line-height:1.5;
  color:var(--cold-light);
}
.episode-duration {
  align-self:flex-start;
  font-size:9.5px;
  letter-spacing:.1em;
  color:var(--cold);
  border-top:1px solid rgba(90,95,102,.3);
  padding-top:4px;
  width:100%;
}
.comments-section {
  padding:0 16px 30px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.comments-heading {}
.comments-masonry {
  column-count:2;
  column-gap:10px;
  width:100%;
}
.comment-slice {
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0 0 10px;
  padding:10px 12px;
  background:linear-gradient(160deg,rgba(38,32,30,.9),rgba(20,20,22,.92));
  border:1px solid rgba(90,95,102,.26);
  clip-path:polygon(0 6px,10px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%);
  box-shadow:inset 0 0 24px rgba(110,20,16,.28);
  transition:border-color .2s,box-shadow .2s;
}
.comment-slice:nth-child(3n) {
  clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,14px 100%,0 calc(100% - 8px));
}
.comment-slice:nth-child(3n/**/+1) {
  clip-path:polygon(0 10px,12px 0,100% 0,100% 100%,0 100%);
}
.comment-slice:hover {
  border-color:rgba(255,90,31,.5);
  box-shadow:inset 0 0 30px rgba(179,36,26,.4),0 0 16px rgba(255,90,31,.28);
}
.comment-text {
  font-size:12px;
  line-height:1.58;
  color:var(--ash-light);
  text-indent:0;
}
.comment-nickname {
  font-size:10px;
  letter-spacing:.1em;
  color:var(--magma);
  align-self:flex-end;
}
.comment-nickname::before {content:"— ";color:var(--cold);}
.recommend-region {
  padding:0 16px 30px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.recommend-heading {
  font-size:13px;
  letter-spacing:.18em;
  color:var(--magma-hot);
  text-shadow:0 0 16px rgba(255,90,31,.55),0 0 3px rgba(255,90,31,.9);
}
.recommend-list {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
  gap:6px;
  width:100%;
  align-items:start;
}
.recommend-item {
  display:flex;
  min-width:0;
}
a.recommend-link {
  display:grid;
  grid-template-columns:auto 58px minmax(0,1fr) auto;
  grid-template-areas:
    "index pic name tag"
    "index pic blurb tag";
  align-items:center;
  column-gap:8px;
  row-gap:2px;
  width:100%;
  padding:7px 9px;
  color:var(--ash-light);
  text-decoration:none;
  background:linear-gradient(180deg,rgba(33,33,36,.78),rgba(18,18,20,.88));
  border:1px solid rgba(90,95,102,.26);
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));
  transition:border-color .18s,box-shadow .18s,background .18s,color .18s;
}
a.recommend-link:hover {
  color:#f2e9e0;
  border-color:rgba(255,90,31,.72);
  background:linear-gradient(180deg,rgba(56,22,17,.85),rgba(24,16,15,.92));
  box-shadow:0 0 18px rgba(179,36,26,.5);
}
.recommend-index {
  grid-area:index;
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
  color:var(--ember);
  writing-mode:vertical-rl;
  text-orientation:mixed;
  align-self:stretch;
  display:flex;
  align-items:center;
  padding-right:2px;
  border-right:1px solid rgba(179,36,26,.4);
}
.recommend-pic {
  grid-area:pic;
  width:58px;
  height:58px;
  object-fit:cover;
  border:1px solid rgba(90,95,102,.35);
  filter:saturate(.9) contrast(1.05);
  background:linear-gradient(160deg,var(--rock-3),var(--rock));
}
.recommend-body {
  grid-area:name / name / blurb / blurb;
  display:flex;
  flex-direction:column;
  gap:1px;
  min-width:0;
}
.recommend-name {
  grid-area:name;
  font-size:11.5px;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--ash-light);
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.recommend-blurb {
  grid-area:blurb;
  font-size:10px;
  line-height:1.4;
  color:var(--cold);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.recommend-tag {
  grid-area:tag;
  align-self:center;
  font-size:9px;
  letter-spacing:.08em;
  color:var(--magma-hot);
  padding:2px 5px;
  border:1px solid rgba(255,90,31,.4);
  background:rgba(110,20,16,.45);
  clip-path:polygon(4px 0,100% 0,calc(100% - 4px) 100%,0 100%);
  white-space:nowrap;
}
.site-footer {
  display:flex;
  flex-direction:column;
  gap:9px;
  padding:18px 16px 26px;
  background:linear-gradient(180deg,rgba(18,18,20,.9),rgba(10,10,12,.98));
  border-top:1px solid var(--line);
}
.footer-disclaimer {
  font-size:10.5px;
  line-height:1.55;
  color:var(--cold);
  max-width:760px;
}
.footer-nav {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {
  font-size:11px;
  letter-spacing:.12em;
  color:var(--cold-light);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .16s,border-color .16s;
}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {
  color:var(--magma-hot);
  border-color:var(--magma-hot);
}
.footer-friends {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
  padding-top:6px;
  border-top:1px solid rgba(90,95,102,.22);
}
.friends-label {
  font-size:10px;
  letter-spacing:.14em;
  color:var(--ember);
  font-weight:700;
}
a.runtime-friend-link {
  font-size:10px;
  color:var(--cold);
  text-decoration:none;
  transition:color .16s;
}
a.runtime-friend-link:hover {
  color:var(--magma-hot);
  text-decoration:underline;
  text-underline-offset:2px;
}
@media (max-width:900px){.movie-overview {gap:12px;padding:0 12px 22px;}
.hero-banner {
    grid-template-columns:minmax(0,1fr);
    min-height:0;
    gap:12px;
    align-items:start;
  }
.hero-glow {inset:-10% -10% -30% 0;}
.poster-column {
    justify-content:flex-start;
    order:2;
  }
.poster-wrapper {width:min(42%,190px);}
.hero-identity {order:1;padding-bottom:0;padding-top:8px;}
.comments-masonry {column-count:2;column-gap:8px;}
.recommend-list {grid-template-columns:repeat(auto-fill,minmax(180px,1fr));}}
@media (max-width:640px){body {font-size:12.5px;}
.site-header {padding:7px 12px;gap:8px;}
a[data-contract="site-name"] {font-size:14px;}
.movie-overview {padding:0 12px 20px;}
.movie-title {font-size:clamp(30px,11vw,46px);}
.movie-tagline {font-size:11px;letter-spacing:.16em;}
.poster-wrapper {width:min(56%,180px);}
.player-controls {gap:5px;padding:6px 8px;}
.control-btn {padding:4px 7px;font-size:10.5px;}
.control-progress {flex:1 1 100%;order:-1;}
.cast-section, .synopsis-section, .episode-status-section, .details-section, .episodes-section, .comments-section, .recommend-region {padding-left:12px;padding-right:12px;}
.timeline-heading {padding:0 12px;}
.cast-list {gap:12px 14px;}
.cast-member {width:66px;}
.cast-avatar-ring {width:54px;height:54px;}
.details-grid {grid-template-columns:repeat(auto-fill,minmax(140px,1fr));}
.episode-grid {grid-template-columns:1fr;}
.comments-masonry {column-count:1;}
.timeline-node {width:132px;}
.node-hex {width:54px;height:54px;}
.timeline-nodes::before {top:27px;}
.recommend-list {grid-template-columns:1fr;}
a.recommend-link {grid-template-columns:auto 52px minmax(0,1fr) auto;}
.recommend-pic {width:52px;height:52px;}
.site-footer {padding:16px 12px 22px;}}
@media (max-width:380px){.cast-member {width:58px;}
.cast-avatar-ring {width:48px;height:48px;}
a.recommend-link {grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"index name tag" "index blurb tag";}
.recommend-pic {display:none;}}

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}
