*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {background:#070b14;color:#d7e0f0;font-family:"PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;font-weight:300;line-height:1.5;min-height:100vh;overflow-x:hidden}
img, video {display:block;max-width:100%;height:auto}
ol {list-style:none}
a {text-decoration:none;color:inherit}
button {background:none;border:none;color:inherit;cursor:pointer;font:inherit}
.visually-hidden {position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1.5rem;background:rgba(7,11,20,.92);backdrop-filter:blur(12px);border-bottom:1px solid #1a2340}
a[data-contract="site-name"] {font-size:1.5rem;font-weight:800;letter-spacing:.1em;color:#a78bfa;text-shadow:0 0 12px rgba(167,139,250,.5);white-space:nowrap}
a[data-contract="site-name"]:hover {color:#c4b5fd}
.categories-bar {display:flex;align-items:center;gap:.5rem;overflow-x:auto;scrollbar-width:none}
.categories-bar::-webkit-scrollbar {display:none}
a.runtime-category {display:inline-block;padding:.3rem .7rem;font-size:.85rem;font-weight:400;color:#9aa7c7;background:rgba(255,255,255,.03);border:1px solid #1a2340;border-radius:999px;white-space:nowrap;transition:all .2s ease}
a.runtime-category:hover {color:#a78bfa;border-color:#a78bfa;background:rgba(167,139,250,.1)}
.hero-shell {position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:1.5rem;padding:1.5rem;background:transparent}
.hero-backdrop {position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0a0f1e 0%,#070b14 60%,#0d1225 100%),radial-gradient(ellipse at 70% 20%,rgba(88,28,135,.4),transparent 60%);pointer-events:none;overflow:hidden}
.hero-backdrop::before {content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(167,139,250,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(167,139,250,.06) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse at center,black,transparent 70%)}
.hero-backdrop::after {content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 80%,rgba(59,130,246,.08),transparent 50%)}
.poster-player-wrap {display:flex;flex-direction:column;gap:1rem;min-width:0}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:.5rem;box-shadow:0 8px 30px rgba(0,0,0,.5),0 0 0 1px rgba(167,139,250,.15);background:#0d1225}
.player-wrapper {position:relative;width:100%;min-width:0}
.detail-player {width:100%;aspect-ratio:16/9;background:#000;border-radius:.5rem;box-shadow:0 4px 20px rgba(0,0,0,.5)}
.player-controls {display:flex;flex-wrap:wrap;gap:.2rem;padding:.4rem;background:rgba(13,18,37,.95);border-radius:0 0 .5rem .5rem;border-top:1px solid #1a2340}
.player-controls button {font-size:.7rem;padding:.3rem .5rem;border:1px solid #1a2340;border-radius:.25rem;color:#9aa7c7;transition:all .15s}
.player-controls button:hover {color:#a78bfa;border-color:#a78bfa;background:rgba(167,139,250,.08)}
.info-panel {display:flex;flex-direction:column;gap:1rem;min-width:0;padding:1.2rem;background:linear-gradient(145deg,#0d1225,#0a0e1c);border:1px solid #1a2340;border-radius:.75rem;box-shadow:0 8px 30px rgba(0,0,0,.4)}
.movie-title {font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.2;color:#f0f4ff;letter-spacing:.02em}
.tagline {font-size:1rem;color:#a78bfa;font-style:italic;letter-spacing:.08em;border-left:3px solid #a78bfa;padding-left:.8rem;margin-bottom:.5rem}
.cast-card-list {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}
.cast-card {display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.8rem .5rem;background:rgba(255,255,255,.03);border:1px solid #1a2340;border-radius:.5rem;text-align:center;transition:all .2s}
.cast-card:hover {background:rgba(167,139,250,.1);border-color:#a78bfa;transform:translateY(-2px)}
.actor-name {font-size:.9rem;font-weight:500;color:#d7e0f0;white-space:nowrap}
.synopsis-block {display:flex;flex-direction:column;gap:.5rem}
.section-heading {font-size:1.3rem;font-weight:700;color:#a78bfa;text-shadow:0 0 10px rgba(167,139,250,.3);margin-bottom:.2rem;position:relative;display:inline-block}
.section-heading::after {content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#a78bfa,transparent)}
.synopsis-para {font-size:.95rem;color:#b9c4dc;line-height:1.7;text-align:justify}
.episode-status-meta {display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;padding:.8rem 1rem;background:rgba(167,139,250,.06);border:1px solid rgba(167,139,250,.2);border-radius:.5rem}
.episode-total, .episode-current {font-size:.9rem;color:#c9d4ea;display:flex;align-items:center;gap:.3rem}
.total-episode-num, .current-episode-num {font-weight:800;color:#a78bfa;font-size:1.1rem}
.episode-badge {display:inline-block;font-size:.75rem;font-weight:500;color:#0a0e1c;background:#a78bfa;padding:.2rem .6rem;border-radius:999px;letter-spacing:.05em}
.detail-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem .8rem;border-top:1px solid #1a2340;padding-top:1rem}
.detail-item {display:flex;flex-direction:column;gap:.15rem}
.detail-label {font-size:.7rem;color:#6b7a9e;text-transform:uppercase;letter-spacing:.05em}
.detail-value {font-size:.9rem;color:#d7e0f0;font-weight:400}
.episodes-section {padding:1.5rem;background:#0a0e1c}
.episode-list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}
.episode-item {display:flex;flex-direction:column;gap:.4rem;padding:1rem;background:rgba(255,255,255,.02);border:1px solid #1a2340;border-radius:.5rem;transition:border-color .2s}
.episode-item:hover {border-color:#a78bfa}
.episode-number {font-size:.85rem;font-weight:700;color:#a78bfa}
.episode-title {font-size:1.1rem;font-weight:600;color:#f0f4ff}
.episode-summary {font-size:.85rem;color:#9aa7c7;line-height:1.6;flex:1}
.episode-duration {font-size:.75rem;color:#6b7a9e;align-self:flex-end}
.timeline-module {padding:1.5rem;background:#0d1225;border-top:1px solid #1a2340;border-bottom:1px solid #1a2340}
.timeline-scroll {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.timeline-item {display:flex;flex-direction:column;gap:.3rem;padding:.8rem;background:rgba(255,255,255,.02);border-left:3px solid #a78bfa;border-radius:0 .5rem .5rem 0;min-width:0}
.timeline-code {font-size:.8rem;font-weight:700;color:#a78bfa;white-space:nowrap}
.timeline-label {font-size:.85rem;color:#b9c4dc;line-height:1.4}
.comments-section {padding:1.5rem;background:#0a0e1c}
.comments-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}
.comment-card {display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:rgba(255,255,255,.03);border:1px solid #1a2340;border-radius:.5rem;transition:all .2s}
.comment-card:hover {border-color:#a78bfa;background:rgba(167,139,250,.05)}
.comment-nickname {font-size:.9rem;font-weight:600;color:#a78bfa}
.comment-text {font-size:.9rem;color:#b9c4dc;line-height:1.6}
.recommendation-row {padding:1.5rem;background:#0d1225;border-top:1px solid #1a2340}
.recommendation-row+.recommendation-row {border-top:1px solid #1a2340}
.recommendation-slider {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}
.recommendation-row:nth-of-type(2) .recommendation-slider, .recommendation-row:nth-of-type(3) .recommendation-slider {grid-template-columns:repeat(3,minmax(0,1fr))}
a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;padding:.8rem;background:rgba(255,255,255,.02);border:1px solid #1a2340;border-radius:.5rem;transition:all .2s;min-width:0}
a[data-runtime="recommendation"]:hover {border-color:#a78bfa;transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.4)}
a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.25rem;background:#0a0e1c}
a[data-runtime="recommendation"] [data-runtime="name"] {font-size:.95rem;font-weight:600;color:#f0f4ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a[data-runtime="recommendation"] [data-runtime="blurb"] {font-size:.8rem;color:#9aa7c7;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {padding:2rem 1.5rem;background:#070b14;border-top:1px solid #1a2340;display:flex;flex-direction:column;gap:1.5rem}
.disclaimer-text {font-size:.8rem;color:#6b7a9e;line-height:1.8;text-align:center;max-width:80rem;margin:0 auto}
.footer-nav {display:flex;justify-content:center;gap:2rem}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:.9rem;color:#9aa7c7;transition:color .2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#a78bfa}
.friend-links {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;padding-top:1rem;border-top:1px solid #1a2340}
.friend-links-label {font-size:.8rem;color:#6b7a9e;margin-right:.5rem}
a.runtime-friend-link {font-size:.8rem;color:#9aa7c7;padding:.2rem .4rem;border:1px solid transparent;border-radius:.25rem;transition:all .2s}
a.runtime-friend-link:hover {color:#a78bfa;border-color:#a78bfa}
.theater-mode {background:#000}
.theater-mode .hero-shell {grid-template-columns:1fr;max-width:1200px;margin:0 auto}
.theater-mode .poster-player-wrap {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1rem}
.theater-mode .main-poster-img {order:2}
.theater-mode .player-wrapper {order:1}
.theater-mode .info-panel {margin-top:1rem}
body.lights-dim {background:#020409}
body.lights-dim .hero-backdrop {opacity:.3}
body.lights-dim .hero-shell {background:rgba(0,0,0,.5)}
body.lights-dim .info-panel, body.lights-dim .episodes-section, body.lights-dim .timeline-module, body.lights-dim .comments-section, body.lights-dim .recommendation-row {background:rgba(0,0,0,.6)}
@media (max-width:1024px){.hero-shell {grid-template-columns:minmax(0,1fr);gap:1.2rem}
.poster-player-wrap {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:1rem}
.main-poster-img {grid-row:1}
.player-wrapper {grid-row:1;grid-column:2}
.detail-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.recommendation-slider, .recommendation-row:nth-of-type(2) .recommendation-slider, .recommendation-row:nth-of-type(3) .recommendation-slider {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){header {flex-direction:column;align-items:flex-start;gap:.5rem;padding:.6rem 1rem}
.categories-bar {width:100%}
.poster-player-wrap {display:flex;flex-direction:column}
.main-poster-img {order:1}
.player-wrapper {order:2;min-width:0}
.cast-card-list {grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.episode-list {grid-template-columns:1fr}
.timeline-scroll {grid-template-columns:1fr}
.comments-grid {grid-template-columns:1fr}
.recommendation-slider, .recommendation-row:nth-of-type(2) .recommendation-slider, .recommendation-row:nth-of-type(3) .recommendation-slider {grid-template-columns:1fr}
.episode-status-meta {flex-direction:column;align-items:flex-start}
.player-controls {overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start}}
@media (max-width:480px){.hero-shell {padding:1rem}
.info-panel {padding:1rem}
.movie-title {font-size:1.6rem}
.cast-card-list {grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-grid {grid-template-columns:1fr}
.recommendation-slider, .recommendation-row:nth-of-type(2) .recommendation-slider, .recommendation-row:nth-of-type(3) .recommendation-slider {grid-template-columns:1fr}
.footer-nav {flex-direction:column;align-items:center;gap:1rem}}

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}
