*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {font-family:"Inter","Helvetica Neue","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;background:#0a0e1a;color:#c8d0e0;line-height:1.6;font-size:16px;overflow-x:hidden}
img, video {max-width:100%;display:block}
button {font:inherit;cursor:pointer;border:none;background:none;color:inherit}
a {color:inherit;text-decoration:none}
dl, dd {margin:0}
.header-shell {display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid rgba(120,100,220,.2);background:rgba(10,14,26,.85);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100}
.site-brand {font-size:1.5rem;font-weight:800;letter-spacing:2px;color:#e8e6ff;text-transform:uppercase;position:relative;padding:4px 0}
.site-brand::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#7b5cff,#ff8a5c);border-radius:2px}
.categories-nav {display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.runtime-category {white-space:nowrap;padding:6px 18px;border-radius:20px;background:rgba(123,92,255,.15);border:1px solid rgba(123,92,255,.3);color:#b8b0ff;font-size:.9rem;font-weight:500;transition:all .3s}
.runtime-category:hover {background:rgba(123,92,255,.35);color:#fff;border-color:#7b5cff;transform:translateY(-1px);box-shadow:0 4px 20px rgba(123,92,255,.3)}
.hero-split {position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:40px 20px}
.hero-left {position:absolute;top:0;left:0;width:50%;height:100%;background:linear-gradient(160deg,#0a0e1a 0%,#1a1f3a 40%,#2d2a5e 70%,#4a3f8f 100%);z-index:0}
.hero-right {position:absolute;top:0;right:0;width:50%;height:100%;background:radial-gradient(ellipse at 60% 50%,rgba(255,138,92,.35) 0%,rgba(255,138,92,.1) 35%,transparent 70%);z-index:1}
.hero-core {position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;max-width:900px;width:100%}
.globe-mesh {position:relative;width:400px;height:400px;margin:0 auto 40px;animation:globeFloat 8s ease-in-out infinite}
.globe-ring {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px solid rgba(123,92,255,.4);box-shadow:0 0 30px rgba(123,92,255,.2),inset 0 0 30px rgba(123,92,255,.1)}
.globe-ring-1 {width:100%;height:100%;animation:spinSlow 20s linear infinite}
.globe-ring-2 {width:80%;height:80%;border-color:rgba(255,138,92,.3);animation:spinReverse 25s linear infinite}
.globe-ring-3 {width:60%;height:60%;border-color:rgba(123,92,255,.5);animation:spinSlow 15s linear infinite}
.globe-node {position:absolute;width:10px;height:10px;border-radius:50%;background:#7b5cff;box-shadow:0 0 15px #7b5cff,0 0 30px rgba(123,92,255,.5);animation:pulseNode 2s ease-in-out infinite}
.globe-node-1 {top:10%;left:50%;transform:translateX(-50%);background:#ff8a5c;box-shadow:0 0 15px #ff8a5c,0 0 30px rgba(255,138,92,.5)}
.globe-node-2 {bottom:20%;right:15%;animation-delay:.5s}
.globe-node-3 {bottom:30%;left:10%;animation-delay:1s;background:#ff8a5c;box-shadow:0 0 15px #ff8a5c,0 0 30px rgba(255,138,92,.5)}
.globe-node-4 {top:30%;left:15%;animation-delay:1.5s}
@keyframes spinSlow{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes spinReverse{from{transform:translate(-50%,-50%) rotate(360deg)}to{transform:translate(-50%,-50%) rotate(0deg)}}
@keyframes globeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}
@keyframes pulseNode{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}
.movie-overview-block {max-width:1400px;margin:0 auto;padding:40px 32px;display:grid;grid-template-columns:minmax(280px,400px) 1fr;gap:0;background:linear-gradient(135deg,#0e1324,#141a30);border-radius:24px;overflow:hidden;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.05)}
.movie-overview-block::before {content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#7b5cff,transparent)}
.poster-column {padding:0;position:relative}
.poster-wrapper {position:relative;width:100%;height:100%;min-height:100%;background:#0a0e1a}
.main-poster {width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;box-shadow:0 20px 40px rgba(0,0,0,.6);transition:transform .5s ease}
.poster-wrapper::after {content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(123,92,255,.2),transparent 50%,rgba(255,138,92,.1));pointer-events:none}
.info-column {padding:40px 48px;display:flex;flex-direction:column;gap:28px;align-self:start}
.movie-title {font-size:2.2rem;font-weight:800;letter-spacing:1px;line-height:1.3;background:linear-gradient(135deg,#fff,#b8b0ff);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:8px}
.tagline {font-size:1.1rem;font-weight:300;color:#8a94b8;letter-spacing:2px;font-style:italic;border-left:3px solid #ff8a5c;padding-left:16px}
.cast-section {margin-top:8px}
.section-subhead {font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:#7b5cff;margin-bottom:16px;position:relative;display:inline-block}
.section-subhead::after {content:"";position:absolute;bottom:-4px;left:0;width:30px;height:2px;background:#ff8a5c;border-radius:2px}
.cast-horizontal-list {display:flex;flex-wrap:wrap;gap:12px}
.cast-chip {padding:8px 20px;border-radius:24px;background:rgba(123,92,255,.1);border:1px solid rgba(123,92,255,.25);color:#d0cbff;font-size:.95rem;font-weight:500;transition:all .3s;cursor:default}
.cast-chip:hover {background:rgba(123,92,255,.3);transform:translateY(-2px);box-shadow:0 8px 20px rgba(123,92,255,.2)}
.synopsis-section {margin-top:8px}
.synopsis-para {color:#aab3cc;font-size:.95rem;line-height:1.8;margin-bottom:12px;max-width:65ch}
.episode-status-block {margin-top:8px}
.player-wrap {width:100%;max-width:100%;position:relative;background:#000;border-radius:16px;overflow:hidden;box-shadow:0 15px 40px rgba(0,0,0,.5);border:1px solid rgba(123,92,255,.2)}
.player-wrap video {display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000}
.player-controls {position:absolute;bottom:0;left:0;right:0;display:flex;gap:8px;padding:12px;background:linear-gradient(transparent,rgba(0,0,0,.8));opacity:0;transition:opacity .3s}
.player-wrap:hover .player-controls {opacity:1}
.player-controls.theater-mode {background:linear-gradient(transparent,rgba(0,0,0,.9));opacity:1}
.ctrl-btn {width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;color:#fff;background:rgba(123,92,255,.3);transition:all .3s;border:1px solid rgba(123,92,255,.3)}
.ctrl-btn:hover {background:#7b5cff;transform:scale(1.1)}
.episode-meta-line {display:flex;align-items:center;gap:12px;margin-top:16px;color:#8a94b8;font-size:.9rem}
.current-episode-label {color:#ff8a5c;font-weight:600}
.episode-divider {opacity:.5}
.episode-duration {color:#6a7290}
.details-panel {margin-top:8px}
.detail-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:16px 24px;background:rgba(255,255,255,.02);border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.05)}
.detail-item {display:flex;flex-direction:column;gap:4px}
.detail-item dt {font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:#6a7290;font-weight:600}
.detail-item dd {font-size:.9rem;color:#b8c0d8;line-height:1.5}
.timeline-fragment {max-width:1400px;margin:48px auto;padding:0 32px}
.section-heading {font-size:1.4rem;font-weight:800;letter-spacing:2px;color:#fff;margin-bottom:24px;position:relative;padding-left:20px}
.section-heading::before {content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:24px;background:linear-gradient(180deg,#7b5cff,#ff8a5c);border-radius:4px}
.timeline-scroll-wrap {overflow-x:auto;padding:20px 0;scrollbar-width:thin;scrollbar-color:#7b5cff transparent;-webkit-overflow-scrolling:touch}
.timeline-scroll-wrap::-webkit-scrollbar {height:6px}
.timeline-scroll-wrap::-webkit-scrollbar-thumb {background:linear-gradient(90deg,#7b5cff,#ff8a5c);border-radius:3px}
.timeline-track {display:flex;gap:24px;min-width:max-content;padding:0 16px}
.timeline-item {position:relative;width:280px;flex-shrink:0;padding:24px;background:linear-gradient(135deg,rgba(123,92,255,.1),rgba(255,138,92,.05));border-radius:16px;border:1px solid rgba(123,92,255,.2);transition:transform .3s,box-shadow .3s}
.timeline-item::before {content:"";position:absolute;top:12px;left:-24px;width:16px;height:16px;border-radius:50%;background:#7b5cff;box-shadow:0 0 12px #7b5cff;border:3px solid #0a0e1a}
.timeline-item:first-child::before {left:auto;right:-24px}
.timeline-item:hover {transform:translateY(-4px);box-shadow:0 12px 30px rgba(123,92,255,.2)}
.timecode {display:block;font-size:.8rem;font-weight:700;color:#ff8a5c;margin-bottom:8px;letter-spacing:1px}
.timeline-label {display:block;font-size:.9rem;line-height:1.6;color:#aab3cc}
.episodes-grid-section {max-width:1400px;margin:48px auto;padding:0 32px}
.episodes-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.episode-card {background:rgba(123,92,255,.08);border-radius:16px;padding:24px;border:1px solid rgba(123,92,255,.15);transition:all .3s;display:flex;flex-direction:column;gap:8px}
.episode-card:hover {background:rgba(123,92,255,.15);transform:translateY(-2px);box-shadow:0 8px 30px rgba(123,92,255,.2)}
.ep-number {font-size:2rem;font-weight:800;color:#7b5cff;line-height:1;opacity:.8}
.ep-title {font-size:1.1rem;font-weight:700;color:#fff}
.ep-summary {font-size:.85rem;color:#8a94b8;line-height:1.5;flex-grow:1}
.ep-duration {font-size:.75rem;color:#ff8a5c;opacity:.8;letter-spacing:1px}
.comments-masonry {max-width:1400px;margin:48px auto;padding:0 32px}
.comments-wall {columns:3;column-gap:20px}
.comment-card {break-inside:avoid;margin-bottom:20px;padding:20px;background:rgba(255,255,255,.03);border-radius:16px;border:1px solid rgba(255,255,255,.06);transition:all .3s}
.comment-card:hover {border-color:rgba(123,92,255,.3);background:rgba(123,92,255,.05)}
.comment-nick {display:block;font-size:.85rem;font-weight:700;color:#ff8a5c;margin-bottom:8px}
.comment-text {font-size:.9rem;color:#aab3cc;line-height:1.6}
.recommendation-region {max-width:1400px;margin:48px auto;padding:0 32px}
.rec-scroll {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.rec-card {display:flex;flex-direction:column;gap:10px;padding:12px;background:rgba(123,92,255,.06);border-radius:16px;border:1px solid rgba(123,92,255,.12);transition:all .3s;text-decoration:none;color:inherit}
.rec-card img {width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:10px;background:#1a1f3a}
.rec-card span {display:block}
.rec-card span[data-runtime="name"] {font-size:.95rem;font-weight:700;color:#fff}
.rec-card span[data-runtime="blurb"] {font-size:.8rem;color:#8a94b8;line-height:1.4}
.rec-card:hover {transform:translateY(-4px);box-shadow:0 12px 30px rgba(123,92,255,.3);border-color:#7b5cff}
.footer-shell {background:#0a0e1a;border-top:1px solid rgba(123,92,255,.2);padding:48px 32px;margin-top:64px}
.footer-content {max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:24px}
.disclaimer-text {font-size:.8rem;color:#6a7290;line-height:1.6;text-align:center}
.friend-links {display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.friend-label {font-size:.85rem;color:#7b5cff;font-weight:700;margin-right:8px}
.runtime-friend-link {font-size:.85rem;color:#8a94b8;padding:4px 12px;border-radius:16px;background:rgba(123,92,255,.1);border:1px solid rgba(123,92,255,.15);transition:all .3s}
.runtime-friend-link:hover {color:#fff;background:rgba(123,92,255,.3);border-color:#7b5cff}
.footer-links {display:flex;gap:24px;justify-content:center;border-top:1px solid rgba(255,255,255,.05);padding-top:20px}
.footer-links a {font-size:.85rem;color:#6a7290;transition:color .3s}
.footer-links a:hover {color:#ff8a5c}
.footer-links a[data-contract="footer-home"] {color:#8a94b8}
.footer-links a[data-contract="footer-home"]:hover {color:#fff;text-decoration:underline}
.footer-links a[data-contract="footer-sitemap"] {color:#8a94b8}
.footer-links a[data-contract="footer-sitemap"]:hover {color:#fff;text-decoration:underline}
.lights-dim main {filter:brightness(.7) saturate(.8);transition:filter .5s ease}
.main.lights-dim {filter:brightness(.7) saturate(.8)}
.main.lights-dim .hero-split, .main.lights-dim .movie-overview-block, .main.lights-dim .timeline-fragment, .main.lights-dim .episodes-grid-section, .main.lights-dim .comments-masonry, .main.lights-dim .recommendation-region {filter:brightness(.75) saturate(.85)}
.fullscreen .player-wrap {border-radius:0}
.theater-mode .player-controls {background:rgba(0,0,0,.6)}
.progress {color:#ff8a5c}
.volume {color:#7b5cff}
.mute {color:#ff6b6b}
.speed {color:#ffd93d}
.play {color:#4ecdc4}
.click {transform:scale(.95)}
@media(max-width:1024px){.movie-overview-block {grid-template-columns:1fr}
.poster-wrapper {max-width:320px;margin:0 auto}
.poster-wrapper .main-poster {aspect-ratio:2/3}
.info-column {padding:32px 24px}
.comments-wall {columns:2}
.hero-split {min-height:70vh}
.globe-mesh {width:320px;height:320px}}
@media(max-width:768px){.header-shell {flex-direction:column;gap:16px;padding:12px 20px}
.categories-nav {justify-content:center}
.hero-split {min-height:60vh;flex-direction:column}
.hero-left, .hero-right {width:100%;height:50%}
.hero-right {top:50%}
.hero-core {padding:20px}
.globe-mesh {width:260px;height:260px}
.movie-overview-block {padding:20px}
.movie-title {font-size:1.8rem}
.detail-grid {grid-template-columns:1fr}
.timeline-track {gap:16px}
.timeline-item {width:240px}
.episodes-grid {grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.comments-wall {columns:1}
.rec-scroll {grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media(max-width:480px){.header-shell {padding:10px 16px}
.site-brand {font-size:1.2rem}
.hero-split {min-height:50vh;padding:20px 12px}
.globe-mesh {width:200px;height:200px}
.movie-overview-block {padding:12px}
.info-column {padding:24px 16px}
.movie-title {font-size:1.5rem}
.tagline {font-size:.95rem}
.cast-horizontal-list {gap:8px}
.cast-chip {padding:6px 14px;font-size:.85rem}
.player-controls {gap:4px;padding:8px}
.ctrl-btn {width:30px;height:30px;font-size:12px}
.episode-meta-line {flex-wrap:wrap;gap:8px}
.timeline-fragment, .episodes-grid-section, .comments-masonry, .recommendation-region {padding:0 16px}
.section-heading {font-size:1.2rem}
.timeline-item {width:200px;padding:16px}
.episodes-grid {grid-template-columns:1fr}
.rec-scroll {grid-template-columns:1fr 1fr;gap:12px}
.rec-card {padding:8px}
.footer-shell {padding:32px 16px}
.friend-links {gap:8px}
.runtime-friend-link {padding:4px 8px;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}
