:root {
  --bg-deep:#0a1220;
  --bg-mid:#101d33;
  --bg-panel:#16243d;
  --bg-panel-2:#1c2c48;
  --brown:#3a2a20;
  --brown-2:#573c28;
  --brown-3:#7a5636;
  --ink:#e8eef7;
  --ink-dim:#9db0c8;
  --ink-faint:#6b7f9c;
  --orange:#ff9a3c;
  --orange-2:#ffb45e;
  --orange-glow:rgba(255,154,60,.35);
  --line:rgba(157,176,200,.18);
  --radius-lg:22px;
  --radius-md:16px;
  --radius-sm:10px;
  --gap:14px;
  --font:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*, *::before, *::after {
  box-sizing:border-box;
}
html {
  -webkit-text-size-adjust:100%;
}
body {
  margin:0;
  padding:0;
  font-family:var(--font);
  font-weight:400;
  color:var(--ink);
  background:
    radial-gradient(circle at 12% 8%, rgba(255,154,60,.10), transparent 42%),
    radial-gradient(circle at 88% 2%, rgba(58,42,32,.55), transparent 46%),
    linear-gradient(180deg, var(--bg-deep) 0%, var(--bg-mid) 46%, #0b1526 100%);
  background-attachment:fixed;
  line-height:1.55;
  font-size:15px;
  letter-spacing:.01em;
  overflow-x:hidden;
}
img, video {
  display:block;
  max-width:100%;
}
ul, ol, dl, dd, figure, p, h1, h2, h3 {
  margin:0;
  padding:0;
}
ul, ol {
  list-style:none;
}
a {
  color:var(--ink);
  text-decoration:none;
}
button, input, select {
  font-family:inherit;
  font-size:inherit;
  color:inherit;
}
h1, h2, h3 {
  font-weight:700;
  line-height:1.25;
  letter-spacing:.02em;
}
.section-heading {
  font-size:1.02rem;
  color:var(--ink);
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:var(--gap);
  padding-left:12px;
  position:relative;
}
.section-heading::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:5px;
  height:1.05em;
  border-radius:6px;
  background:linear-gradient(180deg, var(--orange-2), var(--brown-3));
  box-shadow:0 0 10px var(--orange-glow);
}
.site-header {
  position:sticky;
  top:0;
  z-index:60;
  background:linear-gradient(180deg, rgba(10,18,32,.96), rgba(10,18,32,.74));
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner {
  max-width:1280px;
  margin:0 auto;
  padding:10px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
a[data-contract="site-name"] {
  color:var(--orange-2);
  text-decoration:none;
  font-size:1.06rem;
  font-weight:700;
  letter-spacing:.04em;
  text-shadow:0 0 14px var(--orange-glow);
}
a[data-contract="site-name"]:hover {
  color:#ffd2a0;
}
.site-brand {
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.site-brand::before {
  content:"";
  width:12px;
  height:12px;
  border-radius:52% 48% 60% 40% / 55% 45% 55% 45%;
  background:linear-gradient(140deg, var(--orange-2), var(--brown-3));
  box-shadow:0 0 12px var(--orange-glow);
  flex:0 0 auto;
}
.categories-bar {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}
a.runtime-category {
  display:inline-block;
  white-space:nowrap;
  padding:5px 12px;
  border-radius:999px;
  font-size:.82rem;
  color:var(--ink-dim);
  text-decoration:none;
  border:1px solid var(--line);
  background:rgba(28,44,72,.55);
  transition:color .18s ease, background .18s ease, border-color .18s ease;
}
a.runtime-category:hover {
  color:var(--bg-deep);
  background:linear-gradient(120deg, var(--orange-2), var(--orange));
  border-color:transparent;
}
.page-main {
  max-width:1280px;
  margin:0 auto;
  padding:18px 18px 6px;
  display:flex;
  flex-direction:column;
  gap:26px;
}
.hero-section {
  display:flex;
  flex-direction:column;
  gap:var(--gap);
}
.hero-stage {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,220px);
  grid-template-areas:"copy poster";
  gap:var(--gap);
  align-items:start;
  padding:22px 20px;
  border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 24% 100%, rgba(58,42,32,.85), transparent 58%),
    radial-gradient(circle at 78% 8%, rgba(255,154,60,.14), transparent 52%),
    linear-gradient(160deg, #0d1830 0%, #16243d 60%, #1d1a18 100%);
  border:1px solid var(--line);
  overflow:hidden;
  isolation:isolate;
}
.hero-silhouette {
  position:absolute;
  inset:0;
  grid-area:copy;
  pointer-events:none;
  z-index:0;
  overflow:hidden;
  border-radius:var(--radius-lg);
}
.hero-figure {
  position:absolute;
  left:6%;
  bottom:0;
  width:min(46%, 340px);
  height:88%;
  background:linear-gradient(180deg, #05080f 0%, #0a0f1c 70%, #131a2a 100%);
  clip-path:polygon(
    50% 0%,
    62% 8%,
    58% 15%,
    66% 26%,
    60% 40%,
    70% 58%,
    64% 72%,
    74% 100%,
    26% 100%,
    36% 72%,
    30% 58%,
    40% 40%,
    34% 26%,
    42% 15%,
    38% 8%
  );
  filter:drop-shadow(0 0 26px rgba(255,154,60,.22));
  opacity:.92;
}
.hero-spotlights {
  position:absolute;
  inset:0;
}
.spotlight {
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  mix-blend-mode:screen;
  opacity:.55;
}
.spotlight-a {
  top:-12%;
  left:44%;
  width:34%;
  height:120%;
  background:radial-gradient(ellipse at 50% 0%, rgba(255,154,60,.55), transparent 66%);
  transform:rotate(12deg);
  animation:spot-drift-a 9s ease-in-out infinite alternate;
}
.spotlight-b {
  top:-16%;
  right:6%;
  width:30%;
  height:118%;
  background:radial-gradient(ellipse at 50% 0%, rgba(255,196,120,.42), transparent 64%);
  transform:rotate(-14deg);
  animation:spot-drift-b 11s ease-in-out infinite alternate;
}
.spotlight-c {
  top:-10%;
  left:8%;
  width:26%;
  height:112%;
  background:radial-gradient(ellipse at 50% 0%, rgba(255,154,60,.34), transparent 62%);
  transform:rotate(20deg);
  animation:spot-drift-c 13s ease-in-out infinite alternate;
}
@keyframes spot-drift-a{
  from{transform:rotate(12deg) translateX(-4%);}
  to{transform:rotate(8deg) translateX(6%);}
}
@keyframes spot-drift-b{
  from{transform:rotate(-14deg) translateX(4%);}
  to{transform:rotate(-9deg) translateX(-6%);}
}
@keyframes spot-drift-c{
  from{transform:rotate(20deg) translateX(-3%);}
  to{transform:rotate(24deg) translateX(5%);}
}
.hero-copy {
  grid-area:copy;
  position:relative;
  z-index:2;
  max-width:62ch;
  display:flex;
  flex-direction:column;
  gap:9px;
  align-items:flex-start;
  padding-right:6px;
}
.movie-title {
  font-size:clamp(1.5rem, 3.4vw, 2.35rem);
  color:#fff;
  text-shadow:0 2px 22px rgba(0,0,0,.7), 0 0 30px var(--orange-glow);
}
.movie-tagline {
  font-size:.98rem;
  color:var(--orange-2);
  font-weight:600;
  letter-spacing:.03em;
}
.movie-seo {
  font-size:.86rem;
  color:var(--ink-dim);
  max-width:56ch;
}
.hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:4px;
}
.btn-play, .btn-theater {
  border:1px solid transparent;
  border-radius:999px;
  padding:8px 20px;
  font-size:.86rem;
  font-weight:600;
  cursor:pointer;
  white-space:nowrap;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease;
}
.btn-play {
  color:#1a1005;
  background:linear-gradient(120deg, var(--orange-2), var(--orange));
  box-shadow:0 6px 20px var(--orange-glow);
}
.btn-play:hover {
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(255,154,60,.5);
}
.btn-theater {
  color:var(--ink);
  background:rgba(58,42,32,.6);
  border-color:var(--brown-3);
}
.btn-theater:hover {
  background:rgba(122,86,54,.55);
  color:#ffd8ae;
}
.poster-wrapper {
  grid-area:poster;
  position:relative;
  z-index:2;
  align-self:start;
  justify-self:end;
  width:100%;
  max-width:210px;
  border-radius:var(--radius-md);
  overflow:hidden;
  border:1px solid rgba(255,154,60,.35);
  box-shadow:0 12px 34px rgba(0,0,0,.6), 0 0 0 4px rgba(10,18,32,.6);
}
.poster-wrapper img {
  width:100%;
  aspect-ratio:9 / 16;
  height:auto;
  object-fit:cover;
}
.player-shell {
  position:relative;
  width:100%;
  border-radius:var(--radius-md);
  overflow:hidden;
  background:#05080f;
  border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(0,0,0,.55);
  transition:box-shadow .2s ease, border-color .2s ease;
}
.player-shell video {
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  background:#000;
  object-fit:cover;
}
.player-shell.is-playing {
  border-color:rgba(255,154,60,.5);
  box-shadow:0 14px 40px rgba(255,154,60,.22);
}
.player-shell.is-theater {
  border-color:var(--orange);
  box-shadow:0 0 0 1px var(--orange), 0 18px 48px rgba(255,154,60,.3);
}
.player-controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  background:linear-gradient(180deg, rgba(16,29,51,.92), rgba(10,18,32,.98));
  border-top:1px solid var(--line);
}
.control-btn {
  border:1px solid var(--line);
  background:rgba(28,44,72,.7);
  color:var(--ink-dim);
  border-radius:999px;
  padding:5px 12px;
  font-size:.78rem;
  cursor:pointer;
  white-space:nowrap;
  transition:color .16s ease, background .16s ease, border-color .16s ease;
}
.control-btn:hover {
  color:var(--bg-deep);
  background:linear-gradient(120deg, var(--orange-2), var(--orange));
  border-color:transparent;
}
.control-progress {
  flex:1 1 200px;
  min-width:120px;
  height:6px;
  appearance:none;
  -webkit-appearance:none;
  border-radius:999px;
  background:linear-gradient(90deg, var(--orange) 0%, var(--brown-3) 100%);
  cursor:pointer;
  outline:none;
}
.control-progress::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--orange-2);
  box-shadow:0 0 10px var(--orange-glow);
  border:none;
}
.control-progress::-moz-range-thumb {
  width:14px;
  height:14px;
  border:none;
  border-radius:50%;
  background:var(--orange-2);
  box-shadow:0 0 10px var(--orange-glow);
}
.control-volume {
  flex:0 1 96px;
  min-width:64px;
  height:5px;
  appearance:none;
  -webkit-appearance:none;
  border-radius:999px;
  background:rgba(157,176,200,.35);
  cursor:pointer;
  outline:none;
}
.control-volume::-webkit-slider-thumb {
  -webkit-appearance:none;
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--ink);
  border:none;
}
.control-volume::-moz-range-thumb {
  width:12px;
  height:12px;
  border:none;
  border-radius:50%;
  background:var(--ink);
}
.control-speed {
  border:1px solid var(--line);
  background:rgba(28,44,72,.7);
  color:var(--ink-dim);
  border-radius:999px;
  padding:5px 8px;
  font-size:.78rem;
  cursor:pointer;
}
.overview-info {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:var(--gap);
  align-items:start;
  padding:18px;
  border-radius:var(--radius-lg);
  background:linear-gradient(165deg, rgba(22,36,61,.92), rgba(16,29,51,.92));
  border:1px solid var(--line);
}
.episode-status {
  grid-column:1 / -1;
  display:flex;
  align-items:center;
}
.status-line {
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:.84rem;
  color:var(--ink-dim);
  padding:6px 14px;
  border-radius:999px;
  background:rgba(58,42,32,.55);
  border:1px solid var(--brown-3);
}
.status-current, .status-total {
  color:var(--orange-2);
  font-weight:700;
}
.cast-section {
  grid-column:1 / 2;
  min-width:0;
}
.synopsis-section {
  grid-column:2 / 3;
  min-width:0;
}
.details-section {
  grid-column:1 / -1;
  min-width:0;
  padding-top:14px;
  border-top:1px solid var(--line);
}
.cast-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(88px, 1fr));
  gap:10px;
  align-items:start;
}
.cast-card {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  padding:10px 6px;
  border-radius:var(--radius-sm);
  background:rgba(28,44,72,.45);
  border:1px solid var(--line);
  transition:border-color .18s ease, background .18s ease;
}
.cast-card:hover {
  border-color:var(--brown-3);
  background:rgba(58,42,32,.45);
}
.cast-avatar {
  width:52px;
  height:52px;
  border-radius:50% 46% 54% 50% / 48% 52% 46% 54%;
  background:
    radial-gradient(circle at 34% 30%, rgba(255,180,94,.55), transparent 58%),
    linear-gradient(150deg, var(--brown-2), var(--bg-panel-2));
  border:2px solid rgba(255,154,60,.4);
  box-shadow:inset 0 0 14px rgba(0,0,0,.5), 0 0 12px rgba(255,154,60,.16);
  flex:0 0 auto;
}
.cast-name {
  font-size:.8rem;
  color:var(--ink-dim);
  white-space:nowrap;
  text-align:center;
}
.synopsis-paragraph {
  font-size:.85rem;
  color:var(--ink-dim);
  margin-bottom:9px;
}
.synopsis-paragraph:last-child {
  margin-bottom:0;
}
.details-list {
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(210px, 1fr));
  gap:8px 16px;
  align-items:start;
}
.detail-row {
  display:flex;
  align-items:baseline;
  gap:8px;
  padding:6px 10px;
  border-radius:var(--radius-sm);
  background:rgba(28,44,72,.4);
  border-left:3px solid rgba(255,154,60,.35);
}
.detail-key {
  flex:0 0 auto;
  font-size:.78rem;
  color:var(--ink-faint);
  min-width:5em;
}
.detail-value {
  font-size:.83rem;
  color:var(--ink);
  font-weight:500;
}
.episodes-section {
  min-width:0;
}
.episode-scroller {
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:8px;
  scrollbar-width:thin;
  scrollbar-color:var(--brown-3) transparent;
}
.episode-scroller::-webkit-scrollbar {
  height:8px;
}
.episode-scroller::-webkit-scrollbar-thumb {
  background:linear-gradient(90deg, var(--brown-3), var(--orange));
  border-radius:999px;
}
.episode-track {
  display:flex;
  gap:var(--gap);
  align-items:stretch;
  min-width:max-content;
}
.episode-card {
  flex:0 0 240px;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:14px;
  border-radius:var(--radius-md);
  background:linear-gradient(160deg, rgba(28,44,72,.85), rgba(16,29,51,.9));
  border:1px solid var(--line);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.episode-card:hover {
  transform:translateY(-3px);
  border-color:var(--brown-3);
  box-shadow:0 10px 26px rgba(0,0,0,.45);
}
.episode-number {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:50% 44% 56% 48% / 50% 54% 46% 50%;
  font-size:.82rem;
  font-weight:700;
  color:#1a1005;
  background:linear-gradient(140deg, var(--orange-2), var(--orange));
  box-shadow:0 0 12px var(--orange-glow);
  flex:0 0 auto;
}
.episode-title {
  font-size:.9rem;
  color:var(--ink);
}
.episode-summary {
  font-size:.78rem;
  color:var(--ink-faint);
  flex:1 1 auto;
}
.episode-duration {
  align-self:flex-start;
  font-size:.72rem;
  color:var(--orange-2);
  padding:2px 9px;
  border-radius:999px;
  background:rgba(58,42,32,.6);
  border:1px solid var(--brown-3);
}
.timeline-section {
  min-width:0;
}
.timeline-list {
  position:relative;
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(230px, 1fr));
  gap:8px 18px;
  padding-left:20px;
  align-items:start;
}
.timeline-list::before {
  content:"";
  position:absolute;
  left:6px;
  top:6px;
  bottom:6px;
  width:2px;
  border-radius:2px;
  background:linear-gradient(180deg, var(--orange-2), var(--brown-2) 55%, transparent);
}
.timeline-item {
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
  padding:7px 12px;
  border-radius:var(--radius-sm);
  background:rgba(28,44,72,.42);
  border:1px solid var(--line);
}
.timeline-item::before {
  content:"";
  position:absolute;
  left:-18px;
  top:50%;
  transform:translateY(-50%);
  width:9px;
  height:9px;
  border-radius:50% 46% 54% 50% / 48% 52% 46% 54%;
  background:var(--orange-2);
  box-shadow:0 0 10px var(--orange-glow);
}
.timeline-timecode {
  flex:0 0 auto;
  font-size:.76rem;
  font-weight:700;
  color:var(--orange-2);
  font-variant-numeric:tabular-nums;
}
.timeline-label {
  font-size:.82rem;
  color:var(--ink-dim);
}
.comments-section {
  min-width:0;
}
.comment-stack {
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));
  gap:10px;
  align-items:start;
}
.comment-card {
  position:relative;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:12px 14px 12px 18px;
  border-radius:var(--radius-md);
  background:linear-gradient(150deg, rgba(28,44,72,.85), rgba(22,36,61,.8));
  border:1px solid var(--line);
  box-shadow:0 8px 20px rgba(0,0,0,.35);
  transition:transform .18s ease, border-color .18s ease;
}
.comment-card::before {
  content:"";
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:4px;
  border-radius:0 6px 6px 0;
  background:linear-gradient(180deg, var(--orange-2), var(--brown-3));
}
.comment-card:hover {
  transform:translateY(-3px) rotate(-.4deg);
  border-color:var(--brown-3);
}
.comment-nickname {
  font-size:.82rem;
  font-weight:700;
  color:var(--orange-2);
}
.comment-text {
  font-size:.82rem;
  color:var(--ink-dim);
}
.recommend-region {
  min-width:0;
}
.recommend-scroller {
  display:flex;
  gap:var(--gap);
  overflow-x:auto;
  overflow-y:hidden;
  padding-bottom:8px;
  scrollbar-width:thin;
  scrollbar-color:var(--brown-3) transparent;
}
.recommend-scroller::-webkit-scrollbar {
  height:8px;
}
.recommend-scroller::-webkit-scrollbar-thumb {
  background:linear-gradient(90deg, var(--brown-3), var(--orange));
  border-radius:999px;
}
a.recommend-card {
  flex:0 0 190px;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:9px;
  border-radius:var(--radius-md);
  color:var(--ink);
  text-decoration:none;
  background:linear-gradient(160deg, rgba(28,44,72,.82), rgba(16,29,51,.9));
  border:1px solid var(--line);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
a.recommend-card:hover {
  transform:translateY(-3px);
  border-color:var(--orange);
  box-shadow:0 12px 28px rgba(0,0,0,.5), 0 0 0 1px rgba(255,154,60,.25);
}
[data-runtime="recommendation"] img {
  width:100%;
  aspect-ratio:16 / 9;
  height:auto;
  object-fit:cover;
  border-radius:var(--radius-sm);
  background:linear-gradient(140deg, var(--bg-panel-2), var(--brown));
  display:block;
}
.recommend-name {
  font-size:.84rem;
  font-weight:600;
  color:var(--ink);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.recommend-blurb {
  font-size:.74rem;
  color:var(--ink-faint);
  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(10,18,32,.6), rgba(5,8,15,.95));
}
.footer-inner {
  max-width:1280px;
  margin:0 auto;
  padding:20px 18px 26px;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.footer-disclaimer {
  font-size:.76rem;
  color:var(--ink-faint);
  line-height:1.7;
  max-width:80ch;
}
.footer-nav {
  display:flex;
  flex-wrap:wrap;
  gap:14px;
}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {
  font-size:.82rem;
  color:var(--orange-2);
  text-decoration:underline;
  text-decoration-color:rgba(255,180,94,.45);
  text-underline-offset:3px;
}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {
  color:#ffd8ae;
  text-decoration-color:#ffd8ae;
}
.footer-friends {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 12px;
  padding-top:10px;
  border-top:1px dashed var(--line);
}
.friends-label {
  font-size:.78rem;
  color:var(--ink-faint);
  white-space:nowrap;
}
a.runtime-friend-link {
  font-size:.78rem;
  color:var(--ink-dim);
  text-decoration:none;
  padding:3px 10px;
  border-radius:999px;
  background:rgba(28,44,72,.5);
  border:1px solid var(--line);
  transition:color .16s ease, background .16s ease, border-color .16s ease;
}
a.runtime-friend-link:hover {
  color:var(--bg-deep);
  background:linear-gradient(120deg, var(--orange-2), var(--orange));
  border-color:transparent;
}
.player-shell.theater, .player-shell.is-theater-active {
  border-color:var(--orange);
}
body.is-theater-active {
  background:#05080f;
}
body.is-lights-dimmed .hero-section, body.is-lights-dimmed .episodes-section, body.is-lights-dimmed .timeline-section, body.is-lights-dimmed .comments-section, body.is-lights-dimmed .recommend-region {
  opacity:.42;
  transition:opacity .3s ease;
}
body.is-lights-dimmed .player-shell {
  opacity:1;
  box-shadow:0 0 0 1px var(--orange), 0 0 60px rgba(255,154,60,.28);
}
.player-shell .play, .player-shell .pause, .player-shell .progress, .player-shell .volume, .player-shell .speed, .player-shell .mute, .player-shell .pip, .player-shell .fullscreen, .player-shell .theater, .player-shell .light, .player-shell .input, .player-shell .change, .player-shell .click, .player-shell .player, .player-shell .timeupdate {
  transition:color .16s ease, background .16s ease, opacity .16s ease;
}
.control-btn.play, .control-btn.pause, .control-btn.mute, .control-btn.pip, .control-btn.fullscreen, .control-btn.theater, .control-btn.light {
  color:var(--orange-2);
}
.control-progress.progress, .control-volume.volume, .control-speed.speed {
  accent-color:var(--orange);
}
.player-shell.fullscreen {
  border-radius:0;
}
.player-shell.theater .player-controls, .player-shell.is-theater .player-controls {
  background:linear-gradient(180deg, rgba(10,18,32,.98), #05080f);
}
@media (max-width:900px){.overview-info {
    grid-template-columns:minmax(0,1fr);
  }
.cast-section, .synopsis-section {
    grid-column:1 / -1;
  }
.hero-stage {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:
      "poster"
      "copy";
    justify-items:start;
    padding:18px 16px;
  }
.poster-wrapper {
    justify-self:start;
    max-width:170px;
  }
.hero-copy {
    max-width:none;
  }}
@media (max-width:640px){body {
    font-size:14px;
  }
.page-main {
    padding:14px 12px 4px;
    gap:20px;
  }
.header-inner {
    padding:9px 12px;
    gap:10px;
  }
.hero-stage {
    padding:16px 13px;
    border-radius:var(--radius-md);
  }
.hero-figure {
    width:min(60%, 240px);
    height:80%;
  }
.movie-title {
    font-size:1.32rem;
  }
.poster-wrapper {
    max-width:140px;
  }
.overview-info {
    padding:14px 12px;
    border-radius:var(--radius-md);
  }
.cast-grid {
    grid-template-columns:repeat(auto-fill, minmax(74px, 1fr));
    gap:8px;
  }
.cast-avatar {
    width:44px;
    height:44px;
  }
.details-list {
    grid-template-columns:minmax(0,1fr);
  }
.timeline-list {
    grid-template-columns:minmax(0,1fr);
    padding-left:18px;
  }
.comment-stack {
    grid-template-columns:minmax(0,1fr);
  }
.episode-card {
    flex:0 0 210px;
  }
a.recommend-card {
    flex:0 0 160px;
  }
.player-controls {
    gap:6px;
    padding:8px 9px;
  }
.control-progress {
    flex:1 1 100%;
    min-width:0;
  }
.footer-inner {
    padding:16px 12px 22px;
  }}
@media (max-width:400px){.episode-card {
    flex:0 0 186px;
  }
a.recommend-card {
    flex:0 0 148px;
  }
.btn-play, .btn-theater {
    padding:7px 15px;
    font-size:.8rem;
  }}

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}
