*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {font-family:"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#0a0a0f;color:#e0e0e8;line-height:1.5;min-height:100vh;display:flex;flex-direction:column}
img, video {max-width:100%;display:block}
a {color:inherit;text-decoration:none}
ul, ol {list-style:none}
button {font:inherit;background:none;border:none;color:inherit;cursor:pointer}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.8rem 1.5rem;background:rgba(10,10,15,.92);backdrop-filter:blur(8px);border-bottom:1px solid #2a2a3a}
a[data-contract="site-name"] {font-size:1.4rem;font-weight:300;letter-spacing:.3em;color:#ff2d95;white-space:nowrap;transition:color .3s}
a[data-contract="site-name"]:hover {color:#00e5ff}
nav[data-contract="categories"] {display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.runtime-category {display:inline-block;padding:.3rem .8rem;font-size:.85rem;color:#a0a0b8;border:1px solid #2a2a3a;border-radius:2rem;white-space:nowrap;transition:all .3s}
.runtime-category:hover {color:#ff2d95;border-color:#ff2d95;background:rgba(255,45,149,.1)}
main {flex:1;max-width:1400px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:2.5rem;width:100%}
.movie-overview {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);grid-template-rows:auto auto auto;gap:.5rem 2rem;background:linear-gradient(135deg,#0d0d15,#151525);border:1px solid #1e1e2e;border-radius:.5rem;padding:1.5rem;position:relative;overflow:hidden}
.movie-overview::before {content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#ff2d95,#00e5ff,#39ff14,#ff2d95);opacity:.6}
.poster-shell {grid-row:span 3;align-self:start;max-width:320px;width:100%}
.main-poster {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:.25rem;box-shadow:0 8px 30px rgba(255,45,149,.15)}
.title-group {grid-column:2;align-self:end}
.movie-title {font-size:clamp(1.6rem,4vw,2.6rem);font-weight:200;letter-spacing:.1em;line-height:1.2;color:#fff;text-shadow:0 0 20px rgba(0,229,255,.3)}
.tagline {font-size:.95rem;color:#8a8aa0;margin-top:.4rem;letter-spacing:.05em}
.cast-block {grid-column:2;align-self:start}
.block-heading {font-size:1.1rem;font-weight:500;color:#fff;letter-spacing:.15em;border-left:3px solid #ff2d95;padding-left:.6rem;margin:1.2rem 0 .6rem}
.cast-list {display:flex;flex-wrap:wrap;gap:.4rem}
.cast-item {background:#1a1a2a;border:1px solid #2a2a3a;border-radius:2rem;padding:.3rem .9rem;font-size:.85rem}
.actor-name {color:#c0c0d8;letter-spacing:.1em}
.synopsis-panel {grid-column:2;align-self:start}
.synopsis-line {font-size:.9rem;color:#a0a0b8;margin-bottom:.4rem;max-width:70ch;line-height:1.7}
.episode-status-info {grid-column:2;align-self:start;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.status-text, .episode-current {font-size:.85rem;color:#00e5ff;background:rgba(0,229,255,.08);padding:.3rem .8rem;border-radius:2rem;border:1px solid rgba(0,229,255,.2)}
.detail-meta {grid-column:2;align-self:start}
.meta-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.4rem 1rem}
.meta-item {display:flex;gap:.4rem;font-size:.8rem;color:#7a7a90}
.meta-item dt {color:#5a5a70;white-space:nowrap}
.meta-item dd {color:#b0b0c8}
.player-wrapper {grid-column:2;align-self:start;position:relative;min-width:0}
.player-element {display:block;border-radius:.25rem;background:#000;border:1px solid #1e1e2e}
.player-controls {grid-column:2;display:flex;gap:.4rem;flex-wrap:wrap;padding:.6rem 0 0;border-top:1px solid #1e1e2e;margin-top:.4rem}
.player-controls button {font-size:.8rem;color:#8888a0;padding:.3rem .7rem;border-radius:.25rem;border:1px solid #2a2a3a;transition:all .2s}
.player-controls button:hover {color:#00e5ff;border-color:#00e5ff;background:rgba(0,229,255,.1)}
.timeline-section {background:#0d0d15;border:1px solid #1e1e2e;border-radius:.5rem;padding:1.5rem}
.timeline-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;position:relative}
.timeline-item {position:relative;padding-left:1.5rem;border-left:2px solid;font-size:.85rem;line-height:1.6}
.timeline-item:nth-child(1) {border-color:#ff2d95}
.timeline-item:nth-child(2) {border-color:#00e5ff}
.timeline-item:nth-child(3) {border-color:#39ff14}
.timeline-item:nth-child(4) {border-color:#ffd700}
.timeline-item:nth-child(5) {border-color:#ff6b6b}
.timeline-item::before {content:"";position:absolute;left:-6px;top:.3rem;width:10px;height:10px;border-radius:50%;background:currentColor}
.timeline-item:nth-child(1) {color:#ff2d95}
.timeline-item:nth-child(2) {color:#00e5ff}
.timeline-item:nth-child(3) {color:#39ff14}
.timeline-item:nth-child(4) {color:#ffd700}
.timeline-item:nth-child(5) {color:#ff6b6b}
.timecode {display:block;font-weight:700;font-size:.9rem;letter-spacing:.1em}
.timeline-desc {color:#a0a0b8;display:block;margin-top:.3rem}
.episode-fragment {background:#0d0d15;border:1px solid #1e1e2e;border-radius:.5rem;padding:1.5rem}
.episode-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.episode-card {background:#151525;border:1px solid #2a2a3a;border-radius:.4rem;padding:1rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}
.episode-card:hover {transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.4)}
.episode-card:nth-child(1) {background:linear-gradient(135deg,#1a1a2a,#252540)}
.episode-card:nth-child(2) {background:linear-gradient(135deg,#1e1e30,#2a2a48)}
.episode-card:nth-child(3) {background:linear-gradient(135deg,#222240,#303058)}
.episode-card:nth-child(4) {background:linear-gradient(135deg,#262650,#383868)}
.episode-card:nth-child(5) {background:linear-gradient(135deg,#2a2a60,#404078)}
.episode-card:nth-child(6) {background:linear-gradient(135deg,#303070,#484888)}
.episode-card:nth-child(7) {background:linear-gradient(135deg,#383880,#505098)}
.episode-card:nth-child(8) {background:linear-gradient(135deg,#404090,#6060a8)}
.episode-card:nth-child(9) {background:linear-gradient(135deg,#4848a0,#7070b8)}
.episode-card:nth-child(10) {background:linear-gradient(135deg,#5050b0,#8080c8)}
.episode-card:nth-child(11) {background:linear-gradient(135deg,#5858c0,#9090d8)}
.episode-card:nth-child(12) {background:linear-gradient(135deg,#6060d0,#a0a0e8)}
.ep-number {font-size:2rem;font-weight:900;color:transparent;-webkit-text-stroke:1px #fff;opacity:.6;line-height:1}
.ep-title {font-size:1rem;font-weight:500;color:#fff}
.ep-summary {font-size:.8rem;color:#a0a0c0;flex:1}
.ep-duration {font-size:.75rem;color:#8888a0;border-top:1px solid rgba(255,255,255,.1);padding-top:.4rem}
.comments-section {background:#0d0d15;border:1px solid #1e1e2e;border-radius:.5rem;padding:1.5rem}
.comments-columns {display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}
.comment-col {display:flex;flex-direction:column;gap:.8rem}
.comment-bubble {background:#151525;border:1px solid #2a2a3a;border-radius:1rem 1rem 1rem .2rem;padding:.8rem 1rem;position:relative}
.comment-nick {font-size:.8rem;font-weight:700;color:#ff2d95;display:block;margin-bottom:.3rem}
.comment-text {font-size:.85rem;color:#b0b0c8;line-height:1.6}
.rec-region {background:#0d0d15;border:1px solid #1e1e2e;border-radius:.5rem;padding:1.5rem}
.rec-title {font-size:1.1rem;font-weight:500;color:#fff;letter-spacing:.15em;border-left:3px solid #00e5ff;padding-left:.6rem;margin-bottom:1rem}
.rec-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}
a.rec-item {display:flex;flex-direction:column;gap:.4rem;background:#151525;border:1px solid #2a2a3a;border-radius:.4rem;padding:.8rem;transition:all .3s;text-decoration:none;color:#c0c0d8}
a.rec-item:hover {border-color:#ff2d95;transform:translateY(-3px);box-shadow:0 6px 20px rgba(255,45,149,.15)}
a.rec-item img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.25rem;background:#000}
a.rec-item span[data-runtime="name"] {font-size:.9rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
a.rec-item span[data-runtime="blurb"] {font-size:.75rem;color:#8888a0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {background:#0d0d15;border-top:1px solid #1e1e2e;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:center;text-align:center}
.disclaimer {font-size:.75rem;color:#5a5a70;max-width:80ch;line-height:1.6}
.footer-links {display:flex;gap:1.5rem}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:.85rem;color:#8888a0;transition:color .3s}
a[data-contract="footer-home"]:hover {color:#ff2d95}
a[data-contract="footer-sitemap"]:hover {color:#00e5ff}
.friend-links {display:flex;flex-wrap:wrap;gap:.4rem 1rem;justify-content:center;align-items:center}
.friend-label {font-size:.8rem;color:#5a5a70}
a.runtime-friend-link {font-size:.8rem;color:#7a7a90;padding:.2rem .6rem;border:1px solid #2a2a3a;border-radius:2rem;transition:all .3s;white-space:nowrap}
a.runtime-friend-link:hover {color:#39ff14;border-color:#39ff14}
.player.theater-mode {width:100%}
.theater-mode {max-width:100% !important;width:100% !important}
.lights-dim main {opacity:.6;filter:brightness(.5);transition:all .3s}
.player-wrapper.theater-mode {position:fixed;inset:0;z-index:200;background:#000;display:flex;align-items:center;justify-content:center}
.player-wrapper.theater-mode video {width:100vw;height:100vh;object-fit:contain}
.light {opacity:.9}
.mute video {filter:grayscale(.2)}
.pip video {position:fixed;bottom:20px;right:20px;width:320px;z-index:300;box-shadow:0 0 30px rgba(0,0,0,.8)}
.play video {box-shadow:0 0 40px rgba(0,229,255,.2)}
.speed video {filter:brightness(1.05)}
@media (max-width:900px){.movie-overview {grid-template-columns:1fr;gap:1rem}
.poster-shell {max-width:280px;margin:0 auto}
.title-group, .cast-block, .synopsis-panel, .episode-status-info, .detail-meta, .player-wrapper, .player-controls {grid-column:1}
.player-wrapper {min-width:0}
.comments-columns {grid-template-columns:1fr}}
@media (max-width:600px){header {flex-direction:column;gap:.8rem;padding:.8rem}
nav[data-contract="categories"] {justify-content:center}
.movie-overview {padding:1rem}
.poster-shell {max-width:200px}
.movie-title {font-size:1.3rem}
.player-controls {justify-content:center}
.timeline-list {grid-template-columns:1fr}
.episode-grid {grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}
.rec-grid {grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem}
.meta-grid {grid-template-columns:repeat(2,1fr)}
footer {padding:1rem}}
@media (max-width:480px){main {padding:1rem}
.episode-grid, .rec-grid {grid-template-columns:1fr}
.cast-list {justify-content:center}
.episode-status-info {flex-direction:column;align-items:flex-start}}

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}
