*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {background:#0a0e1a;color:#c8d0e0;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-weight:300;line-height:1.6;overflow-x:hidden;position:relative}
body::before {content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(64,224,208,0.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(186,85,211,0.03) 0%,transparent 50%);pointer-events:none;z-index:0}
body::after {content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent 0px,transparent 2px,rgba(0,0,0,0.08) 3px,transparent 4px);pointer-events:none;z-index:0;opacity:0.3}
body.dim-lights {background:#05070d}
body.dim-lights::before {opacity:0.2}
a {color:inherit;text-decoration:none}
a[data-contract="site-name"] {color:#e8edf5;font-family:"Source Han Sans SC","Noto Sans SC",sans-serif;font-weight:700;letter-spacing:3px;text-decoration:none;transition:color 0.3s,text-shadow 0.3s}
a[data-contract="site-name"]:hover {color:#40e0d0;text-shadow:0 0 15px rgba(64,224,208,0.6)}
a.runtime-category {color:#8899aa;font-family:"Source Han Sans SC","Noto Sans SC",sans-serif;font-size:0.85rem;letter-spacing:2px;text-decoration:none;white-space:nowrap;padding:0.4rem 0.8rem;transition:color 0.3s,border-color 0.3s}
a.runtime-category:hover {color:#40e0d0;border-bottom:1px solid #40e0d0}
a[data-runtime="recommendation"] {color:#c8d0e0;text-decoration:none;display:flex;flex-direction:column;gap:0.5rem;transition:transform 0.3s,box-shadow 0.3s;border:1px solid transparent}
a[data-runtime="recommendation"]:hover {transform:translateY(-4px);box-shadow:0 10px 30px rgba(64,224,208,0.1)}
a.runtime-friend-link {color:#778899;text-decoration:none;font-size:0.8rem;white-space:nowrap;transition:color 0.3s}
a.runtime-friend-link:hover {color:#b0c4de}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#8899aa;text-decoration:none;font-size:0.85rem;transition:color 0.3s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#40e0d0}
header {position:sticky;top:0;z-index:100;background:rgba(10,14,26,0.85);backdrop-filter:blur(20px);border-bottom:1px solid rgba(64,224,208,0.1);display:flex;align-items:center;justify-content:space-between;padding:0.8rem 2rem;gap:2rem}
nav[data-contract="categories"] {display:flex;align-items:center;gap:0.5rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
nav[data-contract="categories"]::-webkit-scrollbar {display:none}
main {position:relative;z-index:1;padding:0 2rem 4rem}
footer {position:relative;z-index:1;border-top:1px solid rgba(64,224,208,0.15);padding:2rem;background:rgba(5,8,15,0.5)}
.movie-overview-block {display:flex;flex-wrap:wrap;gap:2rem;padding:2.5rem 0 1.5rem;background:linear-gradient(135deg,rgba(10,14,26,0.95) 0%,rgba(20,30,50,0.9) 100%);border-radius:12px;padding:2rem;margin:0 auto 3rem;max-width:100%;border:1px solid rgba(64,224,208,0.08)}
.visual-shell {display:grid;grid-template-columns:minmax(200px,280px) 1fr;grid-template-areas:"poster player" "hero hero";gap:1.5rem;width:100%}
.poster-wrapper {grid-area:poster;position:relative}
.poster-wrapper .main-poster {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;display:block;filter:grayscale(30%) contrast(1.1);border:1px solid rgba(64,224,208,0.3)}
.player-wide {grid-area:player;width:100%;min-width:0;background:#0a0f1c;border-radius:8px;overflow:hidden;border:1px solid rgba(64,224,208,0.2);position:relative}
.player-wide video {display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000}
.player-controls {display:flex;flex-wrap:wrap;gap:0.3rem;padding:0.6rem;background:rgba(0,0,0,0.4);border-top:1px solid rgba(64,224,208,0.1)}
.player-controls button {background:transparent;border:1px solid rgba(64,224,208,0.3);color:#c8d0e0;padding:0.4rem 0.8rem;font-size:0.75rem;cursor:pointer;border-radius:4px;transition:all 0.3s;font-family:"Microsoft YaHei",sans-serif}
.player-controls button:hover {background:rgba(64,224,208,0.2);border-color:#40e0d0;color:#40e0d0}
.hero-caption {grid-area:hero;text-align:center;padding:1rem 0 0.5rem;border-top:1px solid rgba(64,224,208,0.1)}
.movie-title {font-family:"Source Han Sans SC","Noto Sans SC",sans-serif;font-weight:900;font-size:clamp(1.8rem,4vw,3rem);color:#e8edf5;letter-spacing:2px;text-shadow:0 0 30px rgba(64,224,208,0.3);line-height:1.2}
.tagline {font-family:"Microsoft YaHei",sans-serif;font-weight:300;font-size:0.95rem;color:#8899aa;margin-top:0.5rem;letter-spacing:1px}
.detail-meta-list {display:flex;flex-wrap:wrap;gap:1rem;width:100%;padding:1.2rem 0;border-top:1px solid rgba(64,224,208,0.1);border-bottom:1px solid rgba(64,224,208,0.1);justify-content:center}
.detail-item {font-size:0.85rem;color:#8899aa;white-space:nowrap}
.detail-item strong {color:#b0c4de;font-weight:600;margin-right:0.3rem}
.synopsis-panel {width:100%;padding:1.5rem 0}
.section-subhead {font-family:"Source Han Sans SC","Noto Sans SC",sans-serif;font-weight:700;font-size:1.3rem;color:#e8edf5;margin-bottom:1rem;position:relative;display:inline-block}
.section-subhead::after {content:"";position:absolute;bottom:-6px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#40e0d0,#ba55d3)}
.synopsis-para {font-size:0.95rem;color:#a0b0c0;margin-bottom:0.8rem;line-height:1.8;max-width:100%}
.cast-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;width:100%;padding:1.5rem 0;border-top:1px solid rgba(64,224,208,0.1)}
.cast-grid .section-subhead {grid-column:1/-1;border-top:none;padding-top:0}
.actor-card {display:flex;flex-direction:column;align-items:center;gap:0.5rem;padding:0.8rem;background:rgba(20,30,50,0.3);border-radius:8px;transition:all 0.3s;text-align:center}
.actor-card:hover {background:rgba(20,30,50,0.6);transform:translateY(-2px)}
.actor-photo {width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;filter:grayscale(100%) contrast(1.2);transition:filter 0.3s;border:2px solid rgba(64,224,208,0.1)}
.actor-card:hover .actor-photo {filter:grayscale(80%) contrast(1.1)}
.actor-name {font-size:0.9rem;color:#b0c4de;font-weight:400}
.episode-status-strip {display:flex;gap:1.5rem;padding:1rem 0;border-top:1px solid rgba(64,224,208,0.1);width:100%;justify-content:center}
.total-episodes, .current-episode, .episode-duration {font-size:0.85rem;color:#8899aa;padding:0.3rem 0.8rem;background:rgba(64,224,208,0.05);border-radius:20px;border:1px solid rgba(64,224,208,0.15)}
.current-episode {color:#40e0d0;border-color:rgba(64,224,208,0.4)}
.timeline-section {padding:2.5rem 0;border-top:1px solid rgba(64,224,208,0.08)}
.timeline-heading {margin-bottom:1.5rem}
.timeline-scroll {display:flex;gap:2rem;overflow-x:auto;padding-bottom:1rem;position:relative}
.timeline-scroll::before {content:"";position:absolute;bottom:20px;left:0;right:0;height:2px;background:linear-gradient(90deg,#40e0d0,#ba55d3);opacity:0.3}
.timeline-entry {flex:0 0 auto;display:flex;flex-direction:column;gap:0.3rem;position:relative;padding-bottom:1.5rem;min-width:200px}
.timeline-entry::after {content:"";position:absolute;bottom:12px;left:0;width:10px;height:10px;border-radius:50%;background:#40e0d0;box-shadow:0 0 10px #40e0d0,0 0 20px rgba(64,224,208,0.5)}
.timecode {font-size:0.8rem;color:#40e0d0;font-weight:400;letter-spacing:1px}
.event-label {font-size:0.9rem;color:#a0b0c0;line-height:1.4}
.episodes-section {padding:2.5rem 0;border-top:1px solid rgba(64,224,208,0.08)}
.episode-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.episode-card {background:rgba(15,22,40,0.6);backdrop-filter:blur(10px);border-radius:8px;padding:1.2rem;border:1px solid rgba(64,224,208,0.08);display:flex;flex-direction:column;gap:0.6rem;transition:all 0.3s;position:relative;overflow:hidden}
.episode-card::before {content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,#40e0d0,#ba55d3);opacity:0.3;transition:opacity 0.3s}
.episode-card:hover {background:rgba(30,45,70,0.8);border-color:rgba(64,224,208,0.3);transform:translateY(-3px)}
.episode-card:hover::before {opacity:1}
.episode-number {font-family:"Source Han Sans SC","Noto Sans SC",sans-serif;font-weight:900;font-size:1.8rem;color:#40e0d0;line-height:1;opacity:0.8}
.episode-title {font-size:1.1rem;color:#e8edf5;font-weight:600}
.episode-summary {font-size:0.85rem;color:#8899aa;line-height:1.6}
.episode-duration {font-size:0.75rem;color:#556677;align-self:flex-end}
.comments-section {padding:2.5rem 0;border-top:1px solid rgba(64,224,208,0.08)}
.comment-masonry {columns:3;column-gap:1rem;width:100%}
.comment-card {break-inside:avoid;background:rgba(15,22,40,0.5);border-radius:8px;padding:1rem;margin-bottom:1rem;border-left:2px solid #40e0d0;display:flex;flex-direction:column;gap:0.5rem;transition:all 0.3s}
.comment-card:hover {background:rgba(30,45,70,0.7)}
.comment-nickname {font-size:0.9rem;color:#40e0d0;font-weight:500}
.comment-text {font-size:0.88rem;color:#a0b0c0;line-height:1.6}
.recommendation-region {padding:2.5rem 0;border-top:1px solid rgba(64,224,208,0.08)}
.recommendation-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.2rem;margin-top:1rem}
a[data-runtime="recommendation"] {background:rgba(15,22,40,0.4);border-radius:8px;padding:0.8rem;overflow:hidden}
a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;display:block;filter:brightness(0.9)}
a[data-runtime="recommendation"] [data-runtime="name"] {font-size:0.95rem;color:#e8edf5;font-weight:600;margin-top:0.5rem}
a[data-runtime="recommendation"] [data-runtime="blurb"] {font-size:0.8rem;color:#778899;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.friend-links {display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem 1.5rem;padding:1rem 0;border-bottom:1px solid rgba(64,224,208,0.1)}
.friend-links-label {font-size:0.85rem;color:#b0c4de;font-weight:600;white-space:nowrap}
.disclaimer {font-size:0.8rem;color:#556677;padding:1rem 0;line-height:1.8}
.footer-links {display:flex;gap:2rem;padding:0.5rem 0}
@media (max-width:900px){.visual-shell {grid-template-columns:1fr;grid-template-areas:"poster" "player" "hero"}
.poster-wrapper {max-width:280px;margin:0 auto}
.player-wide {width:100%}
.comment-masonry {columns:2}
body, main {padding-left:1rem;padding-right:1rem}}
@media (max-width:600px){header {flex-direction:column;gap:0.5rem;padding:0.8rem 1rem}
nav[data-contract="categories"] {width:100%;justify-content:flex-start}
.comment-masonry {columns:1}
.episode-grid {grid-template-columns:1fr}
.detail-meta-list {justify-content:flex-start}
.episode-status-strip {flex-wrap:wrap;justify-content:flex-start}
.recommendation-row {grid-template-columns:1fr}
.timeline-scroll {gap:1rem}
.timeline-entry {min-width:160px}
.hero-caption {padding:0.5rem 0}
.movie-title {font-size:1.5rem}
.cast-grid {grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}
.player-wide:has(.theater-mode) {position:fixed;inset:0;z-index:1000;background:#000;border-radius:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.player-wide:has(.theater-mode) video {max-width:100vw;max-height:80vh;aspect-ratio:16/9}
.player-wide:has(.theater-mode) .player-controls {position:absolute;bottom:0;width:100%;background:rgba(0,0,0,0.8)}
.player-wide:has(.click) {cursor:pointer}
.player-wide:has(.play) {border-color:#40e0d0}
.player-wide:has(.mute) {opacity:0.9}
.player-wide:has(.pip) {border-color:#ba55d3}
.player-wide:has(.fullscreen) {border-color:#ffd700}
.player-wide:has(.speed) {border-color:#ff6347}
.player-wide:has(.volume) {border-color:#00ced1}
.player-wide:has(.progress) {border-color:#ffa500}
.player-wide:has(.light) {box-shadow:0 0 30px rgba(64,224,208,0.2)}
.player-wide:has(.theater) {border-color:#6a5acd}
.player-wide:has(.dim-lights) {border-color:#4a5a6a}
.player-wide:has(.player) {background:#000}

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}
