*, * {box-sizing:border-box;margin:0;padding:0}
a {text-decoration:none;color:inherit}
img {display:block;max-width:100%}
button {font:inherit;background:none;border:none;cursor:pointer;color:inherit}
html {scroll-behavior:smooth}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#0b0e14;color:#c9c9d4;line-height:1.6;min-height:100vh;position:relative;letter-spacing:.01em;background-image:radial-gradient(ellipse at 20% 10%,rgba(74,26,58,.25),transparent 55%),radial-gradient(ellipse at 85% 30%,rgba(26,59,92,.2),transparent 50%),linear-gradient(180deg,#0a0d13,#0d0f18);background-attachment:fixed;transition:filter .5s ease}
body.lights-dim .hero-cinema, body.lights-dim .episodes-section, body.lights-dim .timeline-section, body.lights-dim .comments-grid-section, body.lights-dim .recommend-row, body.lights-dim footer {filter:brightness(.3) saturate(.6);transition:filter .6s ease}
body.lights-dim .player-stage {position:relative;z-index:10;filter:none!important;background:#000;padding:0!important;box-shadow:0 0 80px rgba(0,0,0,.8)}
body.lights-dim .player-stage .player-ui-bar {background:rgba(0,0,0,.6)}
body.lights-dim .player-stage video {box-shadow:none!important}
header {position:sticky;top:0;z-index:100;background:rgba(11,14,20,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(138,43,83,.25);padding:.7rem 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;box-shadow:0 4px 30px rgba(0,0,0,.4)}
a[data-contract="site-name"] {font-size:1.15rem;font-weight:700;letter-spacing:.12em;color:#f0e6d2;background:linear-gradient(135deg,#e0b87a,#b85c1a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;white-space:nowrap;text-shadow:0 0 30px rgba(184,92,26,.3);position:relative;padding-left:1.8rem}
a[data-contract="site-name"]::before {content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1.2rem;height:1.2rem;border-radius:50%;background:conic-gradient(from 0deg,#4a1a3a,#b85c1a,#1a3b5c,#2b4a2b,#4a1a3a);box-shadow:0 0 12px rgba(184,92,26,.5);border:2px solid rgba(224,184,122,.3)}
.category-rail {display:flex;gap:.35rem;flex-wrap:wrap;align-items:center;flex:1;justify-content:flex-end;max-height:none;overflow:visible}
.category-rail .runtime-category {color:#9b8fa8;font-size:.72rem;padding:.2rem .65rem;border-radius:2rem;border:1px solid rgba(155,143,168,.25);background:rgba(20,24,34,.5);transition:all .2s ease;white-space:nowrap;letter-spacing:.05em}
.category-rail .runtime-category:hover {color:#f0e6d2;border-color:rgba(184,92,26,.6);background:rgba(74,26,58,.35);box-shadow:0 0 12px rgba(184,92,26,.15)}
main {max-width:1500px;margin:0 auto;padding:0 1.2rem 3rem;display:flex;flex-direction:column;gap:3.5rem}
.hero-cinema {display:block;position:relative;padding:2.5rem 0 0;background:linear-gradient(180deg,rgba(20,16,28,.6),transparent);border-bottom:1px solid rgba(138,43,83,.15)}
.poster-shell {float:left;width:300px;margin:0 2.5rem 1.5rem 0;position:relative;border-radius:.75rem;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 60px rgba(74,26,58,.3)}
.poster-shell::after {content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(74,26,58,.15),transparent 50%,rgba(26,59,92,.1));pointer-events:none;border-radius:inherit}
.hero-poster {width:100%;aspect-ratio:2/3;object-fit:cover;display:block;background:#1a1c2c}
.overview-content {overflow:hidden}
.movie-heading {font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;color:#f0e6d2;letter-spacing:.04em;line-height:1.2;margin:0 0 .3rem;text-shadow:0 2px 20px rgba(184,92,26,.2);position:relative;display:inline-block}
.movie-heading::after {content:"";position:absolute;left:0;bottom:-4px;width:80%;height:2px;background:linear-gradient(90deg,#b85c1a,#4a1a3a,transparent);border-radius:2px}
.tagline {font-size:1rem;color:#8a7b8f;font-style:italic;letter-spacing:.25em;margin-bottom:1.5rem;padding-left:.4rem;border-left:3px solid #b85c1a}
.cast-panel {margin:1.2rem 0 1.5rem}
.section-subhead {font-size:.85rem;font-weight:700;color:#d4a85c;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.8rem;display:flex;align-items:center;gap:.6rem}
.section-subhead::before {content:"";width:1.8rem;height:2px;background:linear-gradient(90deg,#b85c1a,transparent);border-radius:2px}
.actor-card-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;max-width:680px}
.actor-card {background:rgba(20,24,34,.55);border:1px solid rgba(155,143,168,.18);border-radius:.9rem;padding:.7rem .8rem;cursor:pointer;transition:all .2s ease;text-align:center;backdrop-filter:blur(4px)}
.actor-card:hover, .actor-card:focus-visible {outline:none;background:rgba(74,26,58,.4);border-color:rgba(184,92,26,.5);transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.3)}
.actor-name {display:block;font-weight:600;color:#e8dcc8;font-size:.95rem;margin-bottom:.15rem}
.actor-role {display:block;font-size:.75rem;color:#8a7b8f}
.synopsis-block {margin:1.5rem 0 1.5rem;background:rgba(15,18,28,.4);border-radius:.75rem;padding:1.2rem 1.4rem;border-left:3px solid #4a1a3a;display:grid;gap:.7rem}
.synopsis-block p {font-size:.9rem;color:#b8b0c4;max-width:75ch;line-height:1.75}
.episode-status-wrapper {margin:1.8rem 0 1.5rem;position:relative}
.episode-scroll {display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,240px);gap:.8rem;overflow-x:auto;padding:.5rem .5rem 1rem;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:rgba(184,92,26,.4) transparent}
.episode-scroll::-webkit-scrollbar {height:6px}
.episode-scroll::-webkit-scrollbar-track {background:rgba(20,24,34,.4);border-radius:3px}
.episode-scroll::-webkit-scrollbar-thumb {background:linear-gradient(90deg,#4a1a3a,#b85c1a);border-radius:3px}
.episode-card {border-radius:.9rem;padding:1.1rem 1rem;scroll-snap-align:start;min-height:180px;display:flex;flex-direction:column;gap:.35rem;position:relative;overflow:hidden;box-shadow:inset 0 0 40px rgba(0,0,0,.4),0 6px 16px rgba(0,0,0,.3)}
.episode-card::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;background:currentColor;opacity:.5}
.episode-card h3 {font-size:1rem;font-weight:700;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5);margin-top:.3rem}
.episode-card p {font-size:.78rem;color:rgba(255,255,255,.85);line-height:1.5;flex:1;text-shadow:0 1px 3px rgba(0,0,0,.4)}
.episode-number {position:absolute;top:.5rem;right:.7rem;font-size:2.2rem;font-weight:800;color:rgba(255,255,255,.25);line-height:1;z-index:0;font-style:italic}
.ep-duration {font-size:.7rem;color:rgba(255,255,255,.8);background:rgba(0,0,0,.25);padding:.15rem .5rem;border-radius:2rem;align-self:flex-start;backdrop-filter:blur(2px);letter-spacing:.05em}
.meta-detail-grid {margin:1.5rem 0 0;background:rgba(15,18,28,.3);border-radius:.75rem;padding:1.1rem 1.4rem}
.meta-detail-grid dl {display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.4rem 1.5rem}
.meta-detail-grid dl>div {display:flex;gap:.5rem;align-items:baseline;font-size:.8rem;padding:.35rem 0;border-bottom:1px dashed rgba(155,143,168,.15)}
.meta-detail-grid dt {color:#8a7b8f;white-space:nowrap}
.meta-detail-grid dd {color:#d8cfdf;font-weight:500}
.episodes-section {padding-top:1rem;position:relative}
.episodes-section::before {content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#4a1a3a,#b85c1a,transparent)}
.section-heading {font-size:1.5rem;font-weight:700;color:#f0e6d2;letter-spacing:.06em;margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem}
.section-heading::after {content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(184,92,26,.4),transparent)}
.episodes-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.8rem}
.episode-item {background:rgba(18,22,34,.55);border:1px solid rgba(155,143,168,.12);border-radius:.75rem;padding:1rem 1.1rem;transition:border-color .2s ease,background .2s ease;position:relative;display:flex;flex-direction:column;gap:.3rem}
.episode-item:hover {border-color:rgba(184,92,26,.4);background:rgba(40,30,50,.4)}
.episode-num {font-size:.72rem;font-weight:700;color:#d4a85c;letter-spacing:.15em;text-transform:uppercase}
.episode-item h3 {font-size:1rem;color:#e8dcc8;font-weight:600}
.episode-item p {font-size:.8rem;color:#9b8fa8;line-height:1.6;flex:1}
.episode-item .ep-duration {background:rgba(184,92,26,.15);color:#d4a85c}
.player-stage {margin:0 auto;width:100%;max-width:1200px;background:#05070c;border-radius:1rem;overflow:hidden;box-shadow:0 0 60px rgba(74,26,58,.25),0 12px 40px rgba(0,0,0,.5);position:relative;padding:0}
.player-stage video {display:block;background:#000;box-shadow:0 0 80px rgba(26,59,92,.3)}
.player-stage.theater-mode {max-width:none;border-radius:0}
.player-stage.theater-mode video {aspect-ratio:16/9;width:100%}
.player-ui-bar {display:flex;gap:.35rem;background:rgba(10,12,18,.9);border-top:1px solid rgba(184,92,26,.2);padding:.5rem .8rem;flex-wrap:wrap;align-items:center}
.player-ui-bar button {color:#b8b0c4;font-size:.85rem;padding:.25rem .5rem;border-radius:.4rem;transition:all .2s;min-width:2rem;text-align:center}
.player-ui-bar button:hover {color:#f0e6d2;background:rgba(184,92,26,.2)}
.timeline-section {padding:1rem 0 .5rem;position:relative}
.timeline-rail {position:relative;padding:1rem 0 1rem 2.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem .8rem}
.timeline-rail::before {content:"";position:absolute;left:1rem;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#4a1a3a,#b85c1a,#1a3b5c,#4a1a3a);border-radius:2px;opacity:.5}
.timeline-rail::after {content:"";position:absolute;left:1rem;bottom:0;width:10px;height:10px;border-radius:50%;background:#b85c1a;transform:translateX(-4px);box-shadow:0 0 15px rgba(184,92,26,.6)}
.timeline-node {position:relative;background:rgba(15,18,28,.5);border-radius:.75rem;padding:1rem 1.1rem;border:1px solid rgba(155,143,168,.12);transition:border-color .2s}
.timeline-node::before {content:"";position:absolute;left:-2.5rem;top:1.2rem;width:12px;height:12px;border-radius:50%;background:#b85c1a;border:2px solid #0b0e14;box-shadow:0 0 0 2px rgba(184,92,26,.3)}
.timeline-node:hover {border-color:rgba(184,92,26,.4)}
.timecode {display:inline-block;font-size:.7rem;font-weight:700;color:#d4a85c;background:rgba(74,26,58,.3);padding:.1rem .6rem;border-radius:2rem;letter-spacing:.1em;margin-bottom:.5rem}
.timeline-node p {font-size:.82rem;color:#b8b0c4;line-height:1.6}
.comments-grid-section {padding:1rem 0}
.comments-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem}
.comment-card {background:rgba(18,22,34,.55);border:1px solid rgba(155,143,168,.12);border-radius:1rem;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.6rem;position:relative;transition:border-color .2s}
.comment-card::before {content:"“";position:absolute;top:.3rem;right:.6rem;font-size:3rem;color:rgba(184,92,26,.2);font-family:Georgia,serif;line-height:1}
.comment-card:hover {border-color:rgba(184,92,26,.35)}
.comment-card blockquote {font-size:.85rem;color:#c4bccf;line-height:1.7;flex:1;font-style:italic}
.comment-author {font-size:.78rem;color:#d4a85c;font-weight:600;letter-spacing:.05em}
.star-rating {color:#d4a85c;font-size:.9rem;letter-spacing:.1em;text-shadow:0 0 12px rgba(212,168,92,.3)}
.recommend-row {margin:0;padding:.5rem 0}
.recommend-title {font-size:1.2rem;font-weight:700;color:#e8dcc8;letter-spacing:.04em;margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}
.recommend-title::before {content:"";width:2.2rem;height:2px;background:linear-gradient(90deg,#b85c1a,transparent);border-radius:2px}
.recommend-track {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.8rem}
.recommend-track>a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;background:rgba(15,18,28,.55);border-radius:.75rem;padding:.6rem;border:1px solid rgba(155,143,168,.12);transition:all .2s ease;text-decoration:none;color:inherit}
.recommend-track>a[data-runtime="recommendation"]:hover {border-color:rgba(184,92,26,.5);transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.4);background:rgba(40,30,50,.4)}
.recommend-track>a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.5rem;background:#1a1c2c}
.recommend-track>a[data-runtime="recommendation"] [data-runtime="name"] {font-size:.9rem;font-weight:600;color:#e8dcc8;display:block}
.recommend-track>a[data-runtime="recommendation"] [data-runtime="blurb"] {font-size:.75rem;color:#8a7b8f;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {background:rgba(10,12,18,.9);border-top:1px solid rgba(138,43,83,.2);padding:2rem 1.5rem 2.5rem;margin-top:2rem;position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;max-width:1500px;margin-left:auto;margin-right:auto;width:100%}
.footer-disclaimer {font-size:.75rem;color:#6b6478;line-height:1.7;max-width:60ch}
.footer-nav {display:flex;gap:1.2rem;align-items:flex-start;justify-content:flex-end}
.footer-nav a {color:#9b8fa8;font-size:.85rem;transition:color .2s;position:relative;padding-bottom:2px}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#d4a85c}
.footer-nav a::after {content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:#b85c1a;transition:width .2s}
.footer-nav a:hover::after {width:100%}
.friend-links {display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center}
.friend-label {font-size:.7rem;color:#6b6478;letter-spacing:.15em;text-transform:uppercase;font-weight:600}
.runtime-friend-link {font-size:.75rem;color:#8a7b8f;transition:color .2s;white-space:nowrap}
.runtime-friend-link:hover {color:#d4a85c}
.click {cursor:pointer}
.data-player-action {cursor:pointer}
.player {cursor:default}
.lights-dim {filter:brightness(.8) contrast(1.05)}
.theater-mode {max-width:none!important;border-radius:0!important}
@media (max-width:1024px){.poster-shell {width:250px;margin-right:1.8rem}
.episode-scroll {grid-auto-columns:minmax(190px,220px)}
.hero-cinema {padding-top:1.8rem}}
@media (max-width:768px){main {padding:0 .8rem 2rem;gap:2.5rem}
header {padding:.6rem .8rem;flex-direction:column;align-items:flex-start;gap:.5rem}
.category-rail {justify-content:flex-start;max-width:100%}
.poster-shell {float:none;width:min(240px,60vw);margin:0 auto 1.8rem}
.overview-content {overflow:visible}
.movie-heading {font-size:1.5rem}
.episode-scroll {grid-auto-columns:minmax(170px,195px)}
.episodes-list, .comments-grid, .recommend-track {grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.meta-detail-grid dl {grid-template-columns:repeat(2,1fr)}
.actor-card-grid {grid-template-columns:repeat(2,1fr)}
.timeline-rail {grid-template-columns:1fr;padding-left:2.2rem}
.timeline-rail::before {left:.8rem}
.timeline-node::before {left:-2.2rem}
footer {grid-template-columns:1fr;gap:1rem;padding:1.5rem .8rem}
.footer-nav {justify-content:flex-start}
.player-ui-bar {gap:.2rem;padding:.4rem .5rem}
.player-ui-bar button {font-size:.75rem;padding:.2rem .35rem;min-width:1.6rem}}
@media (max-width:480px){main {padding:0 .5rem 1.5rem;gap:2rem}
.poster-shell {width:min(220px,70vw)}
.movie-heading {font-size:1.3rem}
.tagline {font-size:.85rem;letter-spacing:.15em}
.section-heading {font-size:1.2rem}
.episode-scroll {grid-auto-columns:minmax(150px,175px)}
.episodes-list, .comments-grid, .recommend-track {grid-template-columns:1fr}
.meta-detail-grid dl {grid-template-columns:1fr}
.actor-card-grid {grid-template-columns:repeat(2,1fr)}
.synopsis-block {padding:1rem}
.episode-card {min-height:160px}
.timeline-rail {padding-left:1.8rem}
.timeline-node::before {left:-1.8rem}
.player-ui-bar {justify-content:center}
.player-ui-bar button:nth-child(n/**/+5) {display:none}
.player-stage {border-radius:.5rem}
.category-rail .runtime-category {font-size:.65rem;padding:.15rem .5rem}}
@media (min-width:769px){.hero-cinema {min-height:auto}
.episode-scroll {grid-auto-columns:minmax(200px,225px)}}
[data-runtime="recommendation"] img {width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}
.player-stage video {max-width:100%;height:auto}
.hero-poster {aspect-ratio:2/3;object-fit:cover}
.episode-item {align-self:start}
a.runtime-category {white-space:nowrap;color:#9b8fa8;text-decoration:none;transition:all .2s ease}
a.runtime-category:hover {color:#f0e6d2;text-decoration:none;border-color:rgba(184,92,26,.6)}
a[data-runtime="recommendation"] {color:inherit;text-decoration:none}
a[data-runtime="recommendation"]:hover {text-decoration:none}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#9b8fa8;text-decoration:none}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#d4a85c;text-decoration:none}
a.runtime-friend-link {color:#8a7b8f;text-decoration:none}
a.runtime-friend-link:hover {color:#d4a85c;text-decoration:none}
a[data-contract="site-name"] {color:#f0e6d2;text-decoration:none}
a[data-contract="site-name"]:hover {text-decoration:none}
.poster-shell {height:auto;align-self:start}
.hero-cinema::after {content:"";display:block;clear:both}
section[data-fragment] {margin-bottom:0}

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}
