*, *::before, *::after {margin:0;padding:0;box-sizing:border-box;border:0;font:inherit;vertical-align:baseline}
html {scroll-behavior:smooth;background:#05060a;color:#b8bfd0;font-family:"Source Han Sans SC","Noto Sans SC","PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}
body {background:linear-gradient(180deg,#05060a 0%,#0a0b14 30%,#05060a 100%);color:#c4c9d6;min-height:100vh;overflow-x:hidden;font-weight:400;-webkit-font-smoothing:antialiased}
main {max-width:1400px;margin:0 auto;padding:0 clamp(12px,2vw,28px) 80px}
a {color:inherit;text-decoration:none}
a:focus-visible, button:focus-visible {outline:2px solid #a55cff;outline-offset:2px}
button {background:none;color:inherit;cursor:pointer;font:inherit}
img, video {display:block;max-width:100%}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px clamp(12px,2vw,28px);background:rgba(5,6,10,0.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(165,92,255,0.15)}
.brand-link {font-size:1.2rem;font-weight:800;letter-spacing:0.08em;color:#d6e0ff;text-transform:uppercase;text-shadow:0 0 12px rgba(165,92,255,0.5),0 0 40px rgba(0,180,255,0.2);white-space:nowrap}
.brand-link:hover {color:#ffffff}
.categories-bar {display:flex;align-items:center;gap:4px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:2px 0}
.categories-bar::-webkit-scrollbar {display:none}
.runtime-category {display:inline-block;padding:6px 14px;margin:0 2px;font-size:0.85rem;font-weight:600;color:#9aa6c0;border:1px solid rgba(165,92,255,0.25);border-radius:999px;white-space:nowrap;background:rgba(165,92,255,0.05);transition:all 0.25s ease;flex-shrink:0}
.runtime-category:hover {color:#fff;border-color:#a55cff;background:rgba(165,92,255,0.2);box-shadow:0 0 18px rgba(165,92,255,0.35)}
.movie-overview-shell {position:relative;display:grid;grid-template-columns:minmax(280px,400px) minmax(0,1fr);grid-template-areas:"poster title" "poster synopsis" "poster cast" "poster episode-status" "poster player";gap:0 36px;padding:40px 0 0;margin-bottom:0}
.movie-overview-shell::before {content:"";position:absolute;top:30px;left:-4vw;right:-4vw;height:100%;background:linear-gradient(180deg,rgba(10,12,22,0.9) 0%,rgba(15,10,30,0.6) 50%,rgba(5,6,10,0) 100%);pointer-events:none;z-index:-1}
.poster-stage {grid-area:poster;position:relative;align-self:start;padding-bottom:12px}
.poster-wrapper {position:relative;width:100%;max-width:400px;border-radius:4px;overflow:hidden;background:#0a0c16;border:1px solid rgba(165,92,255,0.3);box-shadow:0 0 40px rgba(0,0,0,0.6),0 0 20px rgba(165,92,255,0.2),inset 0 0 60px rgba(0,0,0,0.5)}
.hero-poster {width:100%;aspect-ratio:2/3;object-fit:cover;display:block;filter:contrast(1.1) brightness(0.9)}
.screen-fragments {position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:3}
.fragment-chip {position:absolute;display:block;width:8px;height:8px;background:linear-gradient(135deg,#a55cff,#00b4ff);border-radius:2px;opacity:0.5;box-shadow:0 0 12px rgba(165,92,255,0.8);animation:fragmentPulse 4s ease-in-out infinite}
.fragment-chip:nth-child(1) {top:15%;left:10%;width:12px;height:12px;animation-delay:0s}
.fragment-chip:nth-child(2) {top:30%;right:12%;width:6px;height:6px;border-radius:50%;animation-delay:0.6s}
.fragment-chip:nth-child(3) {top:55%;left:25%;width:10px;height:10px;background:linear-gradient(135deg,#00b4ff,#a55cff);animation-delay:1.2s}
.fragment-chip:nth-child(4) {bottom:20%;right:20%;width:14px;height:14px;border-radius:50%;animation-delay:1.8s}
.fragment-chip:nth-child(5) {top:70%;right:40%;width:5px;height:5px;animation-delay:2.4s}
.fragment-chip:nth-child(6) {bottom:40%;left:55%;width:8px;height:8px;border-radius:50%;animation-delay:3s}
.fragment-chip:nth-child(7) {top:8%;right:30%;width:4px;height:4px;animation-delay:0.9s}
@keyframes fragmentPulse{0%,100%{opacity:0.3;transform:scale(1)}50%{opacity:0.9;transform:scale(1.5);box-shadow:0 0 24px rgba(165,92,255,0.9)}}
.title-block {grid-area:title;padding-top:20px;display:flex;flex-direction:column;gap:12px}
.movie-title {font-size:clamp(1.5rem,3vw,2.4rem);font-weight:800;font-style:italic;line-height:1.15;color:#e8ecff;letter-spacing:0.02em;text-shadow:0 0 20px rgba(165,92,255,0.3),2px 2px 0 rgba(0,0,0,0.5)}
.tagline {font-size:0.95rem;color:#8a93b5;border-left:3px solid #a55cff;padding-left:12px;letter-spacing:0.04em;font-weight:300}
.detail-meta-grid {display:grid;grid-template-columns:repeat(4,minmax(0,auto));gap:4px 16px;padding-top:8px;border-top:1px solid rgba(165,92,255,0.15)}
.meta-item {font-size:0.82rem;color:#a0a8c0;display:flex;gap:6px;align-items:baseline;white-space:nowrap}
.meta-label {color:#6b7390;font-size:0.75rem;letter-spacing:0.06em;text-transform:uppercase}
.synopsis-block {grid-area:synopsis;padding:20px 0 8px;border-top:1px solid rgba(165,92,255,0.1)}
.section-subtitle {font-size:1.1rem;font-weight:700;font-style:italic;color:#d6dfff;margin-bottom:12px;position:relative;padding-left:16px;letter-spacing:0.06em}
.section-subtitle::before {content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:8px;height:20px;background:linear-gradient(180deg,#a55cff,#00b4ff);border-radius:2px}
.synopsis-line {font-size:0.9rem;line-height:1.7;color:#a8b0c8;margin-bottom:6px;padding-left:2px;text-align:justify}
.synopsis-line::first-letter {color:#a55cff}
.cast-section {grid-area:cast;padding:16px 0 8px;border-top:1px solid rgba(165,92,255,0.1)}
.cast-list {display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}
.cast-card {display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 14px;background:rgba(255,255,255,0.02);border:1px solid rgba(165,92,255,0.12);border-radius:8px;transition:all 0.3s ease;position:relative;min-width:90px}
.cast-card:hover {background:rgba(165,92,255,0.08);border-color:#a55cff;transform:translateY(-3px);box-shadow:0 8px 24px rgba(165,92,255,0.2)}
.avatar-circle {width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#1a1f35,#0d0f1e);border:1px solid rgba(165,92,255,0.5);position:relative;overflow:hidden}
.avatar-circle::after {content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(165,92,255,0.4),transparent 70%),radial-gradient(circle at 70% 70%,rgba(0,180,255,0.2),transparent 60%);opacity:0.7}
.actor-name {font-size:0.85rem;font-weight:600;color:#d0d6ea}
.actor-role {font-size:0.7rem;color:#7c86a5;letter-spacing:0.05em}
.cast-card:hover .actor-role {color:#a55cff}
.episode-status-block {grid-area:episode-status;display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid rgba(165,92,255,0.15)}
.current-episode {background:linear-gradient(90deg,#a55cff,#7a3cff);color:#fff;padding:4px 14px;border-radius:999px;font-size:0.8rem;font-weight:700;letter-spacing:0.05em;box-shadow:0 0 16px rgba(165,92,255,0.4)}
.total-episodes {font-size:0.8rem;color:#7c86a5;letter-spacing:0.08em;padding:4px 10px;border:1px solid rgba(124,134,165,0.3);border-radius:999px}
.player-shell {grid-area:player;position:relative;background:#0a0c16;border:1px solid rgba(165,92,255,0.2);border-radius:8px;overflow:hidden;box-shadow:0 0 30px rgba(0,0,0,0.6),0 0 12px rgba(0,180,255,0.1);transition:all 0.4s ease;align-self:start}
.player-shell video {display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#000}
.player-controls {display:flex;flex-wrap:wrap;gap:4px;padding:10px 12px;background:rgba(10,12,22,0.95);border-top:1px solid rgba(165,92,255,0.2)}
.player-controls button {padding:4px 12px;font-size:0.75rem;color:#9aa6c0;border:1px solid rgba(165,92,255,0.2);border-radius:4px;background:rgba(255,255,255,0.02);transition:all 0.2s ease;white-space:nowrap}
.player-controls button:hover {color:#fff;border-color:#a55cff;background:rgba(165,92,255,0.15)}
.player-shell.player-progress-active .player-controls button:nth-child(2), .player-shell.player-volume-active .player-controls button:nth-child(3), .player-shell.player-muted .player-controls button:nth-child(4), .player-shell.player-speed-active .player-controls button:nth-child(5) {color:#a55cff;border-color:#a55cff;background:rgba(165,92,255,0.2);box-shadow:0 0 12px rgba(165,92,255,0.3)}
.player-shell.theater-mode {width:100%;max-width:none}
.player-shell.theater-mode video {aspect-ratio:21/9}
.player-shell.lights-off video {filter:brightness(0.3)}
.player-shell.lights-off {background:#000;border-color:rgba(0,0,0,0.5)}
.player-shell.lights-off .player-controls {background:rgba(0,0,0,0.9)}
.timeline-section {padding:24px 0;margin-top:20px;border-top:1px solid rgba(165,92,255,0.15)}
.timeline-vertical {position:relative;padding-left:24px;display:flex;flex-direction:column;gap:0}
.timeline-vertical::before {content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#a55cff,#00b4ff,#a55cff);opacity:0.6}
.timeline-item {position:relative;padding:8px 0 8px 24px;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}
.timeline-item::before {content:"";position:absolute;left:-20px;top:16px;width:10px;height:10px;border-radius:50%;background:#a55cff;border:2px solid #05060a;box-shadow:0 0 12px rgba(165,92,255,0.8),0 0 0 3px rgba(165,92,255,0.15);z-index:1}
.timeline-item:nth-child(even)::before {background:#00b4ff;box-shadow:0 0 12px rgba(0,180,255,0.8),0 0 0 3px rgba(0,180,255,0.15)}
.timeline-item:nth-child(even) .timeline-time {color:#00b4ff}
.timeline-time {font-size:0.8rem;font-weight:700;color:#a55cff;letter-spacing:0.08em;white-space:nowrap;padding-top:2px;font-style:italic}
.timeline-desc {font-size:0.88rem;color:#a8b0c8;line-height:1.5;border-bottom:1px solid rgba(255,255,255,0.04)}
.episodes-section {padding:24px 0;border-top:1px solid rgba(165,92,255,0.15)}
.episode-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}
.episode-row {display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:baseline;padding:12px 8px;border-bottom:1px solid rgba(255,255,255,0.05);transition:background 0.2s ease}
.episode-row:hover {background:rgba(165,92,255,0.04)}
.episode-number {font-size:2rem;font-weight:800;font-style:italic;color:transparent;-webkit-text-stroke:1px rgba(165,92,255,0.7);line-height:1;letter-spacing:-0.02em;min-width:1.2em}
.episode-info {display:flex;flex-direction:column;gap:2px;min-width:0}
.episode-title {font-size:0.95rem;font-weight:600;color:#ccd4ea;letter-spacing:0.03em;display:inline-block}
.episode-summary {font-size:0.75rem;color:#7c86a5;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.episode-duration {font-size:0.72rem;color:#6b7390;white-space:nowrap;border:1px solid rgba(107,115,144,0.3);padding:2px 8px;border-radius:4px;align-self:center}
.comments-section {padding:24px 0;border-top:1px solid rgba(165,92,255,0.15)}
.comments-masonry {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}
.comment-card {background:rgba(255,255,255,0.03);border:1px solid rgba(165,92,255,0.15);border-radius:6px;padding:14px 16px;transition:all 0.25s ease;display:flex;flex-direction:column;gap:8px}
.comment-card:hover {border-color:#a55cff;background:rgba(165,92,255,0.07);box-shadow:0 4px 20px rgba(165,92,255,0.1)}
.commenter {font-size:0.8rem;font-weight:700;color:#a55cff;display:flex;align-items:center;gap:6px}
.commenter::before {content:"";width:6px;height:6px;border-radius:50%;background:#00b4ff;box-shadow:0 0 8px rgba(0,180,255,0.6)}
.comment-text {font-size:0.82rem;color:#a0a8c0;line-height:1.6;text-align:justify}
.comment-card:nth-child(1) {min-height:70px}
.comment-card:nth-child(2) {min-height:100px;margin-top:14px}
.comment-card:nth-child(3) {min-height:80px}
.comment-card:nth-child(4) {min-height:90px;margin-top:8px}
.recommend-block {padding:28px 0 8px;border-top:1px solid rgba(165,92,255,0.15)}
.recommend-title {font-size:1.1rem;font-weight:700;font-style:italic;color:#d6dfff;margin-bottom:14px;letter-spacing:0.04em;position:relative;padding-left:14px}
.recommend-title::before {content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:18px;background:linear-gradient(180deg,#00b4ff,#a55cff);border-radius:2px}
.recommend-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.recommend-block:nth-of-type(2) .recommend-grid, .recommend-block:nth-of-type(3) .recommend-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.recommend-item {display:flex;flex-direction:column;gap:8px;padding:0;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:6px;overflow:hidden;transition:all 0.3s ease;align-self:start}
.recommend-item:hover {border-color:#a55cff;box-shadow:0 8px 30px rgba(165,92,255,0.2);transform:translateY(-3px);background:rgba(165,92,255,0.05)}
[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform 0.4s ease}
.recommend-item:hover img {transform:scale(1.03)}
.recommend-item span {display:block;padding:0 10px}
.recommend-item span[data-runtime="name"] {font-size:0.88rem;font-weight:600;color:#ccd4ea;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recommend-item span[data-runtime="blurb"] {font-size:0.72rem;color:#7c86a5;line-height:1.4;padding-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {max-width:1400px;margin:0 auto;padding:36px clamp(12px,2vw,28px) 50px;border-top:1px solid rgba(165,92,255,0.2);display:flex;flex-wrap:wrap;align-items:center;gap:20px 32px;background:rgba(5,6,10,0.8)}
.disclaimer-text {width:100%;font-size:0.72rem;color:#5c6478;line-height:1.6;text-align:center;letter-spacing:0.03em;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,0.05)}
.footer-link {font-size:0.8rem;color:#8a93b5;padding:4px 10px;border:1px solid rgba(165,92,255,0.2);border-radius:4px;transition:all 0.2s ease}
.footer-link:hover {color:#fff;border-color:#a55cff;background:rgba(165,92,255,0.1)}
.friend-links {display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;flex:1;min-width:200px}
.friend-label {font-size:0.72rem;color:#5c6478;letter-spacing:0.1em;text-transform:uppercase;white-space:nowrap}
.runtime-friend-link {font-size:0.75rem;color:#7c86a5;transition:color 0.2s ease,text-shadow 0.2s ease}
.runtime-friend-link:hover {color:#a55cff;text-shadow:0 0 8px rgba(165,92,255,0.5)}
@media (max-width:1024px){.movie-overview-shell {grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:0 24px}
.detail-meta-grid {grid-template-columns:repeat(2,minmax(0,auto))}
.recommend-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.recommend-block:nth-of-type(2) .recommend-grid, .recommend-block:nth-of-type(3) .recommend-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.episode-list {grid-template-columns:1fr}
.comments-masonry {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){body {font-size:13px}
.movie-overview-shell {grid-template-columns:1fr;grid-template-areas:"poster" "title" "synopsis" "cast" "episode-status" "player";gap:0;padding-top:20px}
.poster-stage {max-width:340px;margin:0 auto;padding-bottom:16px}
.title-block {padding-top:16px}
.detail-meta-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}
.cast-list {gap:8px}
.cast-card {padding:8px 12px}
.timeline-item {grid-template-columns:1fr;gap:4px 0;padding-left:20px}
.timeline-item::before {left:-16px}
.episode-list {grid-template-columns:1fr}
.episode-row {padding:10px 6px}
.episode-number {font-size:1.6rem}
.comments-masonry {grid-template-columns:1fr 1fr;gap:8px}
.comment-card:nth-child(2), .comment-card:nth-child(4) {margin-top:0}
.recommend-grid, .recommend-block:nth-of-type(2) .recommend-grid, .recommend-block:nth-of-type(3) .recommend-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
footer {gap:14px 20px;flex-direction:column;align-items:flex-start}
.disclaimer-text {text-align:left}}
@media (max-width:480px){main {padding:0 10px 60px}
header {padding:10px 10px;flex-direction:column;align-items:flex-start;gap:8px}
.categories-bar {width:100%;overflow-x:auto}
.runtime-category {padding:4px 10px;font-size:0.75rem}
.movie-title {font-size:1.25rem}
.detail-meta-grid {grid-template-columns:1fr 1fr;font-size:0.75rem}
.cast-list {gap:6px}
.cast-card {min-width:70px;padding:8px}
.avatar-circle {width:36px;height:36px}
.player-controls {flex-wrap:nowrap;overflow-x:auto;padding:8px}
.player-controls button {padding:3px 8px;font-size:0.65rem;flex-shrink:0}
.timeline-vertical {padding-left:16px}
.timeline-item {padding-left:16px;grid-template-columns:1fr}
.timeline-item::before {left:-14px;width:8px;height:8px}
.timeline-time {font-size:0.7rem}
.episode-list {grid-template-columns:1fr}
.episode-row {grid-template-columns:auto 1fr;gap:8px}
.episode-duration {grid-column:2;justify-self:start}
.comments-masonry {grid-template-columns:1fr}
.recommend-grid, .recommend-block:nth-of-type(2) .recommend-grid, .recommend-block:nth-of-type(3) .recommend-grid {grid-template-columns:1fr 1fr;gap:8px}
.recommend-item span[data-runtime="blurb"] {font-size:0.65rem}
footer {padding:24px 10px 40px}}
a[data-contract="site-name"] {color:#d6e0ff;text-decoration:none;text-shadow:0 0 12px rgba(165,92,255,0.5)}
a[data-contract="site-name"]:hover {color:#ffffff;text-decoration:underline}
a.runtime-category {color:#9aa6c0;text-decoration:none}
a.runtime-category:hover {color:#ffffff;text-decoration:underline}
a.recommend-item {color:inherit;text-decoration:none}
a.recommend-item:hover {color:#fff}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#8a93b5;text-decoration:none}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#fff;text-decoration:underline}
a.runtime-friend-link {color:#7c86a5;text-decoration:none}
a.runtime-friend-link:hover {color:#a55cff;text-decoration:underline}
::selection {background:rgba(165,92,255,0.3);color:#fff}
::-webkit-scrollbar {width:8px;height:8px;background:#0a0c16}
::-webkit-scrollbar-thumb {background:linear-gradient(180deg,#a55cff,#00b4ff);border-radius:4px}
::-webkit-scrollbar-track {background:#0a0c16}

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}
