*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {font-size:16px;-webkit-text-size-adjust:100%}
body {font-family:"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;background:#0a0e14;color:#d8e0ea;line-height:1.5;overflow-x:hidden}
img, video {display:block;max-width:100%;height:auto}
ul {list-style:none}
a {color:inherit;text-decoration:none}
button {background:none;border:none;color:inherit;cursor:pointer;font:inherit}
header {background:rgba(10,14,20,.92);backdrop-filter:blur(8px);position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:2rem;padding:.75rem 1.5rem;border-bottom:1px solid rgba(0,229,255,.15)}
.site-brand {font-size:1.25rem;font-weight:800;font-style:italic;letter-spacing:.08em;color:#00e5ff;text-transform:uppercase;white-space:nowrap}
.site-brand:hover {color:#ff2fd6;text-shadow:0 0 12px rgba(255,47,214,.6)}
.category-bar {display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.category-bar::-webkit-scrollbar {display:none}
.category-bar .runtime-category {display:inline-block;padding:.35rem .85rem;border:1px solid rgba(0,229,255,.25);border-radius:2rem;font-size:.85rem;font-weight:600;color:#8ad8ff;background:rgba(0,229,255,.05);white-space:nowrap;transition:all .2s ease}
.category-bar .runtime-category:hover {background:rgba(0,229,255,.15);border-color:#00e5ff;color:#fff;box-shadow:0 0 12px rgba(0,229,255,.3)}
main {max-width:1400px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:2rem}
.movie-overview-panel {background:linear-gradient(145deg,#111a26 0%,#0d1420 60%,#13102a 100%);border:1px solid rgba(0,229,255,.12);border-radius:1rem;box-shadow:0 8px 32px rgba(0,0,0,.6);padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;position:relative;overflow:hidden}
.movie-overview-panel::before {content:"";position:absolute;top:0;right:0;width:min(100%,600px);height:min(100%,600px);background:radial-gradient(circle,rgba(255,47,214,.08),transparent 70%);pointer-events:none}
.poster-player-group {display:grid;grid-template-columns:minmax(200px,240px) minmax(0,1fr);gap:1.5rem;align-items:start}
.poster-wrapper {border-radius:.75rem;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.5),0 0 0 1px rgba(0,229,255,.1);background:#0d1420;align-self:start}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;display:block}
.player-wrapper {min-width:0;display:flex;flex-direction:column;gap:.75rem;background:rgba(0,0,0,.4);border-radius:.75rem;padding:1rem;border:1px solid rgba(0,229,255,.08)}
.player-video {width:100%;border-radius:.5rem;background:#000}
.player-controls {display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0}
.player-controls button {flex:0 0 auto;width:2.2rem;height:2.2rem;display:flex;align-items:center;justify-content:center;background:rgba(0,229,255,.08);border:1px solid rgba(0,229,255,.15);border-radius:.5rem;font-size:1rem;transition:all .2s}
.player-controls button:hover {background:rgba(0,229,255,.2);border-color:#00e5ff;box-shadow:0 0 8px rgba(0,229,255,.3)}
.player-video.theater-mode {position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:100;object-fit:contain;background:#000}
.player-video.light-off {filter:brightness(.4)}
.title-tagline-group {border-top:1px solid rgba(0,229,255,.1);padding-top:1.5rem;display:flex;flex-direction:column;gap:.25rem}
.movie-title {font-size:1.75rem;font-weight:800;font-style:italic;letter-spacing:.04em;color:#fff;text-shadow:0 0 20px rgba(0,229,255,.2)}
.tagline {font-size:1rem;color:#00e5ff;font-weight:500;letter-spacing:.15em}
.cast-section {padding-top:1rem}
.section-title {font-size:1.1rem;font-weight:700;font-style:italic;color:#fff;letter-spacing:.05em;margin-bottom:.75rem;padding-left:.5rem;border-left:3px solid #ff2fd6}
.cast-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}
.cast-card {display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;background:rgba(0,229,255,.03);border-radius:.5rem;border:1px solid rgba(255,255,255,.04);transition:border-color .2s}
.cast-card:hover {border-color:rgba(0,229,255,.2)}
.avatar-placeholder {width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#00e5ff,#ff2fd6);margin-bottom:.25rem;position:relative}
.avatar-placeholder::after {content:"";position:absolute;inset:4px;border-radius:50%;background:#111a26;border:2px solid rgba(0,229,255,.2)}
.cast-name {font-weight:700;color:#fff;font-size:.95rem}
.cast-role {font-size:.8rem;color:#9aa8bb}
.synopsis-section {padding-top:.5rem}
.synopsis-text {display:flex;flex-direction:column;gap:.6rem}
.synopsis-text p {font-size:.95rem;line-height:1.75;color:#c3cdd9;text-align:justify}
.episode-status-section {padding-top:.5rem}
.status-meta {display:flex;flex-wrap:wrap;gap:.75rem;font-size:.9rem}
.current-episode, .total-episodes, .episode-duration {background:rgba(0,229,255,.06);border:1px solid rgba(0,229,255,.12);padding:.35rem .75rem;border-radius:2rem;color:#8ad8ff;font-weight:500}
.details-section {padding-top:.5rem}
.details-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.4rem .75rem}
.details-list li {font-size:.9rem;color:#c3cdd9;padding:.25rem 0;border-bottom:1px solid rgba(255,255,255,.03)}
.detail-label {color:#7fa8c9;font-weight:600;margin-right:.2rem}
.episodes-section {display:flex;flex-direction:column;gap:.75rem}
.episodes-scroll {display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem}
.episode-card {background:rgba(13,20,32,.8);border:1px solid rgba(0,229,255,.08);border-radius:.75rem;padding:1rem;display:flex;flex-direction:column;gap:.35rem;transition:transform .2s,border-color .2s}
.episode-card:hover {transform:translateY(-2px);border-color:rgba(0,229,255,.25)}
.episode-number {font-size:1.5rem;font-weight:800;font-style:italic;color:transparent;-webkit-text-stroke:1px #00e5ff;line-height:1;text-shadow:0 0 10px rgba(0,229,255,.1)}
.episode-title {font-size:1rem;font-weight:700;color:#fff}
.episode-summary {font-size:.85rem;color:#9aa8bb;line-height:1.5;flex:1}
.episode-duration {font-size:.8rem;color:#7fa8c9;align-self:flex-start;background:rgba(0,229,255,.05);padding:.15rem .5rem;border-radius:1rem}
.timeline-section {border-left:3px solid rgba(0,229,255,.3);padding-left:1.5rem;margin-left:.5rem}
.timeline-vertical {display:flex;flex-direction:column;gap:.75rem;position:relative}
.timeline-vertical::before {content:"";position:absolute;left:-1.65rem;top:.4rem;bottom:.4rem;width:2px;background:linear-gradient(to bottom,#00e5ff,#ff2fd6);opacity:.4}
.timeline-item {display:flex;gap:.75rem;align-items:baseline;padding:.5rem .75rem;background:rgba(0,229,255,.03);border-radius:.5rem;border:1px solid rgba(255,255,255,.03);position:relative}
.timeline-item::before {content:"";position:absolute;left:-1.3rem;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:50%;background:#00e5ff;box-shadow:0 0 8px #00e5ff}
.timecode {font-weight:800;color:#00e5ff;font-size:.9rem;white-space:nowrap;font-style:italic}
.label {font-size:.9rem;color:#c3cdd9}
.comments-section {display:flex;flex-direction:column;gap:.75rem}
.comments-masonry {columns:3 250px;column-gap:.75rem}
.comment-card {break-inside:avoid;background:rgba(13,20,32,.8);border:1px solid rgba(255,47,214,.08);border-radius:.75rem;padding:.75rem;margin-bottom:.75rem;display:flex;flex-direction:column;gap:.35rem}
.comment-nickname {font-size:.8rem;font-weight:700;color:#ff2fd6}
.comment-text {font-size:.9rem;color:#c3cdd9;line-height:1.5}
.recommendation-row {display:flex;flex-direction:column;gap:.75rem}
.rec-title {font-size:1.1rem;font-weight:700;font-style:italic;color:#fff;letter-spacing:.05em;padding-left:.5rem;border-left:3px solid #ff2fd6}
.rec-cards {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}
.rec-cards a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;background:rgba(13,20,32,.8);border:1px solid rgba(255,255,255,.04);border-radius:.75rem;padding:.6rem;transition:transform .2s,border-color .2s}
.rec-cards a[data-runtime="recommendation"]:hover {transform:translateY(-2px);border-color:rgba(0,229,255,.25)}
.rec-cards a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:.4rem;background:#0d1420}
.rec-cards a[data-runtime="recommendation"] span[data-runtime="name"] {font-weight:700;color:#fff;font-size:.9rem}
.rec-cards a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.8rem;color:#9aa8bb;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {border-top:1px solid rgba(0,229,255,.08);background:#0a0e14;padding:2rem 1.5rem 3rem;display:flex;flex-direction:column;gap:1.5rem;max-width:1400px;margin:0 auto}
.disclaimer {font-size:.85rem;color:#7fa8c9;line-height:1.6;text-align:center}
.friend-links {display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:center}
.friend-links-label {font-size:.85rem;color:#9aa8bb;font-weight:600}
.runtime-friend-link {font-size:.85rem;color:#8ad8ff;text-decoration:underline;text-decoration-color:rgba(0,229,255,.3);text-underline-offset:3px}
.runtime-friend-link:hover {color:#fff;text-decoration-color:#00e5ff}
.footer-links {display:flex;gap:1.5rem;justify-content:center}
.footer-links a {font-size:.9rem;color:#7fa8c9;transition:color .2s}
.footer-links a:hover {color:#00e5ff}
.player.paused .player-controls button[data-player-action="play"]::before {content:"⏸"}
.player.fullscreen .player-video {position:fixed;inset:0;width:100vw;height:100vh;z-index:200}
.player.theater .player-video {position:fixed;top:0;left:0;width:100vw;height:60vh;z-index:150;object-fit:contain}
.player.pip .player-video {position:fixed;bottom:1rem;right:1rem;width:320px;height:180px;z-index:200;border-radius:.5rem;box-shadow:0 8px 32px rgba(0,0,0,.8)}
.player.mute .player-controls button[data-player-action="volume"] {color:#ff2fd6}
.player.speed .player-controls button[data-player-action="speed"]::after {content:"x";font-size:.7rem}
.player.progress .player-controls button[data-player-action="progress"] {color:#00e5ff}
.player.light .player-video {filter:brightness(.6)}
.player.click .player-video {cursor:pointer}
.player.theater-mode .player-video {position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:100;object-fit:contain;background:#000}
.player.light-off .player-video {filter:brightness(.4)}
.player.pip {position:fixed;bottom:1rem;right:1rem;z-index:200}
.player.fullscreen {position:fixed;inset:0;z-index:200}
@media (max-width:900px){.poster-player-group {grid-template-columns:1fr;gap:1rem}
.poster-wrapper {max-width:220px;margin:0 auto}
.main-poster-img {aspect-ratio:2/3}
.player-wrapper {min-width:0}
.comments-masonry {columns:2}}
@media (max-width:600px){header {flex-direction:column;align-items:flex-start;gap:.5rem;padding:.75rem 1rem}
.category-bar {width:100%}
main {padding:1rem}
.movie-overview-panel {padding:1rem}
.movie-title {font-size:1.35rem}
.tagline {font-size:.9rem}
.cast-grid {grid-template-columns:repeat(3,1fr)}
.episodes-scroll {grid-template-columns:1fr}
.comments-masonry {columns:1}
.rec-cards {grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.details-list {grid-template-columns:1fr 1fr}
.poster-player-group {grid-template-columns:1fr}
.poster-wrapper {max-width:180px}
.player-wrapper {padding:.75rem}
.status-meta {flex-direction:column;gap:.35rem}
.footer-links {flex-direction:column;align-items:center;gap:.5rem}}

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}
