*, * {margin:0;padding:0;box-sizing:border-box;border:0;font:inherit;vertical-align:baseline}
html {scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body {font-family:"Songti SC","SimSun","STSong","Georgia",serif;background:#0e1726;color:#dce8f0;line-height:1.6;min-height:100vh;overflow-x:hidden}
main {position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:0 1.25rem 3rem}
a {color:#8fb8c9;text-decoration:none;transition:color .2s ease}
a:hover {color:#f2c6d8}
img, video {display:block;max-width:100%;height:auto}
button {background:none;cursor:pointer;color:inherit}
.hero-backdrop {position:fixed;top:0;left:0;width:100%;height:100vh;z-index:-1;overflow:hidden;pointer-events:none}
.hero-backdrop::before {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,15,25,.65) 0%,rgba(26,42,58,.4) 40%,rgba(14,23,38,.85) 100%)}
.hero-backdrop::after {content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 20%,rgba(242,198,216,.12) 0%,transparent 50%),radial-gradient(ellipse at 30% 70%,rgba(143,184,201,.1) 0%,transparent 45%)}
.hero-rain {position:absolute;inset:0;background-image:repeating-linear-gradient(115deg,transparent 0px,transparent 8px,rgba(200,230,240,.06) 9px,transparent 10px),repeating-linear-gradient(105deg,transparent 0px,transparent 12px,rgba(220,240,250,.05) 13px,transparent 14px),repeating-linear-gradient(120deg,transparent 0px,transparent 4px,rgba(180,210,225,.04) 5px,transparent 6px);animation:rainShift 8s linear infinite;opacity:.7}
@keyframes rainShift{0%{background-position:0 0,0 0,0 0}100%{background-position:0 80px,0 120px,0 60px}}
.hero-reflect {position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.03) 0%,rgba(255,255,255,.015) 30%,transparent 50%,rgba(10,20,35,.1) 100%);transform:scaleY(-1);opacity:.35;filter:blur(1px)}
.hero-reflect::after {content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 45%,rgba(255,255,255,.03) 50%,transparent 55%)}
header {position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 1.25rem;background:rgba(14,23,38,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(143,184,201,.15)}
.site-name {font-size:1.35rem;font-weight:700;letter-spacing:.12em;color:#f2c6d8;text-decoration:none;white-space:nowrap;text-shadow:0 0 20px rgba(242,198,216,.3)}
.site-name:hover {color:#ffdde8;text-decoration:underline;text-underline-offset:4px}
nav[data-contract="categories"] {display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.runtime-category {display:inline-block;padding:.28rem .75rem;font-size:.85rem;letter-spacing:.08em;color:#a8c4d0;background:rgba(143,184,201,.08);border:1px solid rgba(143,184,201,.2);border-radius:2rem;white-space:nowrap;text-decoration:none;transition:all .25s ease}
.runtime-category:hover {color:#0e1726;background:#f2c6d8;border-color:#f2c6d8;text-decoration:none}
.movie-overview {display:grid;grid-template-columns:minmax(200px,280px) 1fr minmax(480px,1fr);grid-template-rows:auto auto auto;gap:.75rem 1.5rem;padding:1.5rem 1.75rem;margin-top:1.25rem;background:linear-gradient(145deg,rgba(30,48,66,.92),rgba(18,30,46,.96));border:1px solid rgba(143,184,201,.18);border-radius:1.25rem;box-shadow:0 8px 32px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.05);position:relative;overflow:hidden}
.movie-overview::before {content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#8fb8c9,#f2c6d8,transparent);opacity:.4}
.movie-overview::after {content:"";position:absolute;bottom:0;right:0;width:100%;height:100%;background:radial-gradient(circle at 85% 90%,rgba(242,198,216,.08),transparent 70%);pointer-events:none}
.poster-shell {grid-row:1/3;grid-column:1;align-self:start;justify-self:center;width:100%;max-width:280px;border-radius:1rem;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.08)}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;background:linear-gradient(160deg,#5a7d8a,#3b5066);transition:transform .4s ease}
.poster-shell:hover .main-poster-img {transform:scale(1.03)}
.title-tagline-group {grid-row:1;grid-column:2;align-self:end;padding-bottom:.25rem}
.movie-title {font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700;color:#f0f4f7;letter-spacing:.04em;line-height:1.25;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.movie-tagline {font-size:1rem;color:#8fb8c9;margin-top:.35rem;font-style:italic;letter-spacing:.06em;border-left:3px solid #f2c6d8;padding-left:.75rem;opacity:.9}
.synopsis-fragment {grid-row:2;grid-column:2;display:flex;gap:1.25rem;align-items:stretch}
.synopsis-text {flex:1;font-size:.9rem;color:#c8d8e2;max-width:58ch}
.synopsis-text p {margin-bottom:.55rem;text-align:justify}
.synopsis-text p:last-child {margin-bottom:0}
.wave-divider {width:1.5px;flex:0 0 1.5px;background:linear-gradient(180deg,transparent,#8fb8c9,#f2c6d8,#8fb8c9,transparent);position:relative;overflow:visible}
.wave-divider::before {content:"";position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:10px;height:10px;background:#f2c6d8;border-radius:50%}
.wave-divider::after {content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:10px;height:10px;background:#8fb8c9;border-radius:50%}
.cast-fragment {grid-row:3;grid-column:1;margin-top:.5rem;padding-top:1rem;border-top:1px solid rgba(143,184,201,.15)}
.cast-array {display:flex;flex-wrap:wrap;justify-content:space-around;align-items:center;gap:.5rem}
.cast-item {display:flex;flex-direction:column;align-items:center;gap:.3rem;flex:1 1 70px;max-width:110px;text-align:center}
.avatar-circle {width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#8fb8c9,#3f5b70 60%,#2a3d4e);box-shadow:0 4px 12px rgba(0,0,0,.4),inset 0 2px 4px rgba(255,255,255,.15);position:relative;transition:transform .3s ease}
.avatar-circle::after {content:"";position:absolute;inset:3px;border-radius:50%;border:1.5px dashed rgba(255,255,255,.3);animation:spin 30s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.cast-item:hover .avatar-circle {transform:translateY(-3px)}
.actor-name {font-size:.75rem;color:#c8d8e2;letter-spacing:.05em}
.details-fragment {grid-row:3;grid-column:2;margin-top:.5rem;padding-top:1rem;border-top:1px solid rgba(143,184,201,.15)}
.details-grid {display:grid;grid-template-columns:repeat(4,auto);gap:.35rem 1.5rem;justify-content:start}
.details-grid div {display:flex;gap:.4rem;align-items:baseline}
.details-grid dt {font-size:.8rem;color:#6f8fa0;white-space:nowrap}
.details-grid dd {font-size:.85rem;color:#dce8f0;white-space:nowrap}
.episode-status {grid-row:1;grid-column:3;align-self:start;justify-self:end;display:flex;align-items:baseline;gap:.35rem;background:rgba(143,184,201,.1);border-radius:2rem;padding:.35rem 1rem;border:1px solid rgba(143,184,201,.2)}
.status-label {font-size:.75rem;color:#8fb8c9}
.current-episode {font-size:.95rem;font-weight:700;color:#f2c6d8}
.total-episodes {font-size:.75rem;color:#6f8fa0}
.player-shell {grid-row:2/4;grid-column:3;align-self:start;width:100%;min-width:0;border-radius:.9rem;overflow:hidden;background:#0a1119;border:1px solid rgba(143,184,201,.2);box-shadow:0 6px 20px rgba(0,0,0,.4)}
.player-shell video {width:100%;aspect-ratio:16/9;object-fit:contain;background:#0a1119}
.player-controls {display:flex;flex-wrap:wrap;gap:.25rem;padding:.5rem .75rem;background:rgba(10,17,25,.9);border-top:1px solid rgba(143,184,201,.15)}
.player-btn {font-size:.75rem;padding:.25rem .6rem;border-radius:1rem;background:rgba(143,184,201,.1);border:1px solid rgba(143,184,201,.15);color:#a8c4d0;transition:all .2s ease}
.player-btn:hover {background:#f2c6d8;color:#0e1726;border-color:#f2c6d8}
body.theater-mode .hero-backdrop {display:none}
body.light-off {background:#0a0d12}
body.light-off .movie-overview {background:rgba(12,18,26,.97)}
body.light-off .movie-title {color:#c8d8e2}
.timeline-fragment {margin-top:2.25rem;padding:1.5rem 0 .75rem;position:relative}
.timeline-fragment::before {content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(143,184,201,.4),transparent)}
.timeline-flow {display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;padding:1rem .25rem;position:relative}
.timeline-flow::before {content:"";position:absolute;top:calc(50% - 1px);left:0;right:0;height:2px;background:linear-gradient(90deg,#8fb8c9,#f2c6d8,#8fb8c9);opacity:.6;z-index:0}
.timeline-item {position:relative;z-index:1;display:flex;flex-direction:column;gap:.35rem;padding:.9rem .75rem;background:rgba(20,34,48,.9);border:1px solid rgba(143,184,201,.15);border-radius:.9rem;transition:transform .25s ease,box-shadow .25s ease;text-align:center}
.timeline-item::before {content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;border-radius:50%;background:radial-gradient(circle,#f2c6d8,#8fb8c9);box-shadow:0 0 12px rgba(242,198,216,.5);z-index:2}
.timeline-item:hover {transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.4)}
.timecode {font-weight:700;color:#f2c6d8;font-size:.9rem;margin-bottom:.2rem}
.timeline-label {font-size:.78rem;color:#c8d8e2;line-height:1.5}
.episodes-fragment {margin-top:1.5rem}
.episode-accordion {display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin-top:.75rem}
.episode-card {display:flex;flex-direction:column;gap:.25rem;padding:.75rem .9rem;background:rgba(20,34,48,.75);border:1px solid rgba(143,184,201,.12);border-radius:.75rem;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}
.episode-card::after {content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#f2c6d8,transparent);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.episode-card:hover, .episode-card.click {background:rgba(30,48,66,.95);border-color:rgba(242,198,216,.3);transform:translateY(-2px)}
.episode-card:hover::after, .episode-card.click::after {transform:scaleX(1)}
.ep-number {font-size:.75rem;font-weight:700;color:#8fb8c9;letter-spacing:.08em}
.ep-title {font-size:1rem;font-weight:700;color:#f0f4f7}
.ep-summary {font-size:.75rem;color:#a8c4d0;line-height:1.5;max-height:0;overflow:hidden;transition:max-height .35s ease;opacity:.85}
.episode-card.click .ep-summary {max-height:120px;margin-top:.2rem}
.ep-duration {font-size:.7rem;color:#6f8fa0;margin-top:auto}
.comments-fragment {margin-top:1.75rem}
.comments-scroll {display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem;margin-top:.75rem;overflow-x:auto;padding-bottom:.5rem}
.comment-card {display:flex;flex-direction:column;gap:.4rem;padding:.8rem .9rem;background:rgba(30,48,66,.35);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.06);border-radius:.85rem;transition:background .2s ease}
.comment-card:hover {background:rgba(40,60,78,.45)}
.comment-nick {font-size:.8rem;font-weight:700;color:#f2c6d8}
.comment-text {font-size:.78rem;color:#c8d8e2;line-height:1.5}
.rec-region {margin-top:1.75rem;padding-top:1rem;border-top:1px solid rgba(143,184,201,.12)}
.rec-title {font-size:1.1rem;font-weight:700;color:#e8f0f4;letter-spacing:.05em;margin-bottom:.6rem;display:flex;align-items:center;gap:.6rem}
.rec-title::before {content:"";width:18px;height:1.5px;background:#f2c6d8;display:inline-block}
.rec-grid {display:grid;grid-template-columns:repeat(5,1fr);gap:.6rem}
.rec-region[data-recommendation-region="2"] .rec-grid {grid-template-columns:repeat(3,1fr)}
.rec-region[data-recommendation-region="3"] .rec-grid {grid-template-columns:repeat(4,1fr)}
.rec-item {display:flex;flex-direction:column;gap:.35rem;padding:.6rem;background:rgba(20,34,48,.7);border-radius:.8rem;transition:transform .25s ease,box-shadow .25s ease;position:relative;overflow:hidden;min-width:0}
.rec-item::before {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,17,25,.2),rgba(10,17,25,.75));opacity:0;transition:opacity .3s ease;z-index:1}
.rec-item:hover {transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.4)}
.rec-item:hover::before {opacity:1}
.rec-item img {width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:.45rem;background:#2a3d4e}
.rec-item span[data-runtime="name"] {font-size:.85rem;font-weight:600;color:#e8f0f4;z-index:2;position:relative}
.rec-item span[data-runtime="blurb"] {font-size:.72rem;color:#a8c4d0;line-height:1.4;z-index:2;position:relative}
.rec-item:hover span[data-runtime="name"] {color:#f2c6d8}
.production-team {margin-top:2rem;padding:1.25rem 1.5rem;background:linear-gradient(145deg,rgba(30,48,66,.85),rgba(18,30,46,.9));border:1px solid rgba(143,184,201,.15);border-radius:1rem}
.team-meta {display:flex;flex-wrap:wrap;gap:.75rem 2rem;font-size:.85rem;color:#c8d8e2;margin-top:.5rem}
.team-meta span {display:flex;align-items:center;gap:.4rem}
.team-meta span::before {content:"";width:6px;height:6px;border-radius:50%;background:#f2c6d8;display:inline-block}
.block-heading {font-size:1.15rem;font-weight:700;color:#e8f0f4;letter-spacing:.08em;margin-bottom:.5rem;display:flex;align-items:center;gap:.6rem}
.block-heading::before {content:"";width:3px;height:1.1em;background:linear-gradient(180deg,#f2c6d8,#8fb8c9);border-radius:2px;display:inline-block}
footer {margin-top:2.5rem;padding:1.5rem 1.25rem 2rem;background:rgba(10,17,25,.95);border-top:1px solid rgba(143,184,201,.15);max-width:1440px;margin-left:auto;margin-right:auto;width:100%}
.footer-disclaimer {font-size:.78rem;color:#6f8fa0;line-height:1.6;text-align:center;max-width:80ch;margin:0 auto 1rem}
.footer-links {display:flex;justify-content:center;gap:1.5rem;margin-bottom:1.25rem}
.footer-links a {font-size:.85rem;color:#8fb8c9;text-decoration:none;padding:.25rem .5rem;border-radius:.4rem;transition:all .2s ease}
.footer-links a:hover {color:#f2c6d8;background:rgba(143,184,201,.08);text-decoration:underline;text-underline-offset:3px}
.friend-links {display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .8rem;max-width:900px;margin:0 auto}
.friend-label {font-size:.75rem;color:#6f8fa0;letter-spacing:.1em;margin-right:.4rem;white-space:nowrap}
.runtime-friend-link {font-size:.75rem;color:#8fb8c9;text-decoration:none;padding:.15rem .5rem;border:1px solid rgba(143,184,201,.1);border-radius:1rem;background:rgba(143,184,201,.04);transition:all .2s ease;white-space:nowrap}
.runtime-friend-link:hover {color:#f2c6d8;border-color:rgba(242,198,216,.3);background:rgba(242,198,216,.06);text-decoration:underline;text-underline-offset:2px}
@media (max-width:1200px){.movie-overview {grid-template-columns:minmax(180px,240px) 1fr;grid-template-rows:auto auto auto auto}
.poster-shell {grid-row:1/3;grid-column:1}
.title-tagline-group {grid-row:1;grid-column:2}
.episode-status {grid-row:1;grid-column:3;align-self:center}
.synopsis-fragment {grid-row:2;grid-column:2/4}
.cast-fragment {grid-row:3;grid-column:1}
.details-fragment {grid-row:3;grid-column:2/4}
.player-shell {grid-row:4;grid-column:1/4;min-width:0}
.timeline-flow {grid-template-columns:repeat(3,1fr);gap:.9rem}
.timeline-flow::before {top:calc(50% - 1px);left:10%;right:10%}
.episode-accordion {grid-template-columns:repeat(3,1fr)}
.comments-scroll {grid-template-columns:repeat(3,1fr)}
.rec-grid, .rec-region[data-recommendation-region="3"] .rec-grid {grid-template-columns:repeat(3,1fr)}
.rec-region[data-recommendation-region="2"] .rec-grid {grid-template-columns:repeat(3,1fr)}
.details-grid {grid-template-columns:repeat(3,auto)}}
@media (max-width:900px){.movie-overview {grid-template-columns:1fr;gap:1rem;padding:1.25rem}
.poster-shell {grid-row:auto;grid-column:1;max-width:280px;width:100%;margin:0 auto}
.title-tagline-group {grid-row:auto;grid-column:1;text-align:center}
.movie-tagline {border-left:none;padding-left:0;justify-self:center}
.synopsis-fragment {grid-row:auto;grid-column:1;flex-direction:column}
.wave-divider {width:100%;height:1.5px;flex:none;background:linear-gradient(90deg,transparent,#8fb8c9,#f2c6d8,#8fb8c9,transparent)}
.wave-divider::before {top:-5px;left:50%;transform:translateX(-50%)}
.wave-divider::after {bottom:-5px;left:50%;transform:translateX(-50%)}
.cast-fragment {grid-row:auto;grid-column:1}
.details-fragment {grid-row:auto;grid-column:1}
.episode-status {grid-row:auto;grid-column:1;justify-self:center}
.player-shell {grid-row:auto;grid-column:1;min-width:0}
.timeline-flow {grid-template-columns:repeat(2,1fr)}
.episode-accordion {grid-template-columns:repeat(2,1fr)}
.comments-scroll {grid-template-columns:repeat(2,1fr)}
.rec-grid, .rec-region[data-recommendation-region="2"] .rec-grid, .rec-region[data-recommendation-region="3"] .rec-grid {grid-template-columns:repeat(2,1fr)}
.details-grid {grid-template-columns:repeat(2,auto);justify-content:center}}
@media (max-width:600px){header {flex-direction:column;gap:.4rem;padding:.5rem 1rem}
nav[data-contract="categories"] {justify-content:center;width:100%}
.runtime-category {padding:.2rem .6rem;font-size:.78rem}
main {padding:0 .75rem 2rem}
.movie-overview {padding:1rem}
.timeline-flow {grid-template-columns:1fr}
.timeline-flow::before {top:0;bottom:0;left:calc(50% - 1px);width:2px;height:100%;background:linear-gradient(180deg,#8fb8c9,#f2c6d8,#8fb8c9)}
.timeline-item {align-items:center}
.episode-accordion {grid-template-columns:1fr}
.comments-scroll {grid-template-columns:1fr}
.rec-grid, .rec-region[data-recommendation-region="2"] .rec-grid, .rec-region[data-recommendation-region="3"] .rec-grid {grid-template-columns:1fr 1fr}
.rec-item span[data-runtime="blurb"] {display:none}
.details-grid {grid-template-columns:1fr 1fr;gap:.4rem 1rem}
.team-meta {flex-direction:column;gap:.5rem}
.footer-links {flex-direction:column;gap:.5rem;align-items:center}}
@media (max-width:400px){.rec-grid, .rec-region[data-recommendation-region="2"] .rec-grid, .rec-region[data-recommendation-region="3"] .rec-grid {grid-template-columns:1fr}
.details-grid {grid-template-columns:1fr}
.cast-array {gap:.25rem}
.avatar-circle {width:44px;height:44px}}
@supports not (backdrop-filter: blur(1px)){.hero-backdrop, .comment-card, header {background:#101c2b}}
@media print{.hero-backdrop, footer, .player-shell, .comments-fragment {display:none}
body {background:#fff;color:#000}
.movie-overview, .timeline-fragment, .episodes-fragment {break-inside:avoid}}

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}
