*, * {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#0a1428;color:#d8e4f5;line-height:1.5;font-weight:300;letter-spacing:.02em;overflow-x:hidden}
a {color:inherit;text-decoration:none}
button {font:inherit;color:inherit;background:none;border:none;cursor:pointer}
img, video {display:block;max-width:100%}
.site-brand {display:inline-block;font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;font-weight:700;letter-spacing:.06em;color:#f0f6ff;text-transform:uppercase;padding:.65rem 1.2rem;background:linear-gradient(135deg,rgba(120,180,255,.18),rgba(30,60,120,.1));border:1px solid rgba(140,200,255,.25);border-radius:2px;text-decoration:none;transition:all .3s ease}
.site-brand:hover {color:#fff;border-color:rgba(140,200,255,.6);box-shadow:0 0 18px rgba(100,180,255,.25)}
.categories-shell {display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;padding:.5rem 1.2rem}
.runtime-category {display:inline-block;padding:.28rem .7rem;font-size:.8rem;color:#a8c4e8;background:rgba(20,40,80,.35);border:1px solid rgba(100,160,230,.3);border-radius:16px;white-space:nowrap;transition:all .25s ease}
.runtime-category:hover {color:#fff;background:rgba(80,160,255,.25);border-color:rgba(140,200,255,.6)}
header[data-contract="header"] {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:.6rem 1.5rem;background:rgba(8,18,40,.85);backdrop-filter:blur(10px);border-bottom:1px solid rgba(100,170,255,.15);position:sticky;top:0;z-index:100}
.hero-aurora {position:relative;min-height:88vh;display:flex;align-items:flex-end;justify-content:flex-start;background:linear-gradient(165deg,#0b1a35 0%,#0e2a4a 35%,#123a5e 60%,#0a1e38 100%);overflow:hidden;padding:3rem 4rem 4rem}
.hero-aurora::before {content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(60,140,220,.35),transparent 55%),radial-gradient(ellipse at 75% 65%,rgba(40,220,190,.18),transparent 50%),radial-gradient(ellipse at 20% 80%,rgba(100,180,255,.12),transparent 45%),linear-gradient(180deg,transparent 60%,rgba(5,10,25,.9));animation:auroraShift 12s ease-in-out infinite alternate}
.hero-aurora::after {content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(160,210,255,.5) 1px,transparent 1px),radial-gradient(rgba(120,200,255,.3) 1px,transparent 1px);background-size:60px 60px,90px 90px;background-position:0 0,30px 30px;opacity:.35;animation:particleFlow 20s linear infinite}
@keyframes auroraShift{0%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}100%{opacity:.8;transform:scale(1.02)}}
@keyframes particleFlow{0%{background-position:0 0,30px 30px}100%{background-position:120px 120px,150px 150px}}
.hero-overlay {position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(8,16,35,.75) 100%);pointer-events:none;z-index:1}
.hero-content {position:relative;z-index:2;max-width:720px}
.hero-title {font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5vw,3.6rem);font-weight:700;line-height:1.15;color:#f2f8ff;text-shadow:0 2px 30px rgba(60,140,220,.5),0 0 60px rgba(40,120,200,.3);letter-spacing:.04em;margin-bottom:.8rem}
.hero-tagline {font-size:clamp(.95rem,1.8vw,1.25rem);color:#b8d4f0;font-weight:300;letter-spacing:.08em;margin-bottom:1.6rem;text-shadow:0 1px 12px rgba(0,0,0,.4)}
.hero-play-btn {display:inline-flex;align-items:center;gap:.6rem;padding:.75rem 2rem;font-size:1rem;font-weight:500;color:#fff;background:linear-gradient(135deg,rgba(40,140,255,.8),rgba(20,80,180,.85));border:1px solid rgba(120,190,255,.5);border-radius:30px;box-shadow:0 0 20px rgba(60,150,255,.4);transition:all .3s ease}
.hero-play-btn:hover {background:linear-gradient(135deg,rgba(90,180,255,.9),rgba(40,110,220,.9));box-shadow:0 0 35px rgba(80,180,255,.6);transform:translateY(-2px)}
.movie-overview-panel {background:linear-gradient(180deg,rgba(12,24,48,.98),rgba(8,16,34,.98));border:1px solid rgba(100,160,230,.12);border-radius:4px;margin:1.5rem 1.5rem 0;padding:1.8rem;display:grid;grid-template-columns:minmax(0,1fr) 1.6fr minmax(0,1.1fr);grid-template-areas:"poster text player";gap:1.5rem;align-items:start;box-shadow:0 4px 24px rgba(0,0,0,.3)}
.poster-media-wrapper {grid-area:poster;width:100%;max-width:300px}
.poster-image {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:3px;border:1px solid rgba(120,180,240,.2);box-shadow:0 4px 30px rgba(0,0,0,.5),0 0 40px rgba(60,140,220,.08)}
.overview-text-group {grid-area:text;display:flex;flex-direction:column;gap:1rem;min-width:0}
.movie-title-main {font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.4rem,2.5vw,2rem);color:#f0f6ff;letter-spacing:.03em;line-height:1.2}
.movie-tagline-main {font-size:.95rem;color:#a0c0e8;font-style:italic;letter-spacing:.04em}
.meta-row-primary {display:flex;flex-wrap:wrap;gap:.4rem}
.meta-chip {font-size:.75rem;padding:.2rem .7rem;background:rgba(60,120,200,.15);border:1px solid rgba(100,170,240,.25);border-radius:12px;color:#b8d4f0;white-space:nowrap}
.cast-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:.5rem}
.cast-card {display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;padding:.5rem .3rem;background:rgba(20,40,70,.25);border-radius:4px;border:1px solid transparent;transition:all .25s ease}
.cast-card:hover {background:rgba(40,90,150,.25);border-color:rgba(100,170,240,.3)}
.cast-avatar {width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#3a6ea8,#7fc4d9);border:2px solid rgba(140,200,255,.3);box-shadow:0 0 12px rgba(80,160,230,.2);position:relative;overflow:hidden}
.cast-avatar::after {content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.25),transparent 60%)}
.cast-name {font-size:.85rem;color:#c8dff5;font-weight:400}
.synopsis-block {display:flex;flex-direction:column;gap:.6rem;margin-top:.3rem}
.synopsis-lead {font-size:.95rem;color:#d8e8f8;line-height:1.6;font-weight:400}
.synopsis-body {font-size:.85rem;color:#a8c4e0;line-height:1.55}
.episode-status-strip {display:flex;align-items:center;gap:.6rem;padding:.5rem .8rem;background:linear-gradient(90deg,rgba(40,100,180,.2),rgba(20,60,120,.1));border-left:3px solid #5a9fe0;border-radius:0 4px 4px 0;font-size:.9rem;color:#c8e0f8}
.status-total, .status-current {display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}
.status-divider {color:#5a9fe0}
.total-number, .current-number {font-weight:700;color:#fff;font-size:1.05rem}
.details-factsheet {margin-top:.2rem}
.detail-list {display:grid;grid-template-columns:1fr 1fr;gap:.35rem .8rem}
.detail-item {display:flex;gap:.4rem;font-size:.82rem;padding:.2rem 0;border-bottom:1px solid rgba(100,160,220,.08)}
.detail-item dt {color:#7aa8d8;min-width:3.5em;font-weight:400}
.detail-item dd {color:#c8e0f8}
.player-wide-wrapper {grid-area:player;min-width:0;position:relative}
.main-player {width:100%;border-radius:4px;background:#000;border:1px solid rgba(100,160,230,.2);box-shadow:0 0 30px rgba(40,120,200,.12)}
.player-control-bar {display:flex;flex-wrap:wrap;gap:.3rem;padding:.5rem .4rem;margin-top:.4rem;background:rgba(15,30,55,.7);border-radius:3px;border:1px solid rgba(100,160,220,.15)}
.player-control-bar button {font-size:.7rem;padding:.25rem .6rem;background:rgba(40,80,140,.3);border:1px solid rgba(100,160,220,.2);border-radius:3px;color:#a8c8e8;transition:all .2s ease;white-space:nowrap}
.player-control-bar button:hover {background:rgba(80,160,240,.35);color:#fff}
.episode-list-section {margin:2rem 1.5rem 0;padding:1.5rem;background:linear-gradient(180deg,rgba(10,20,42,.95),rgba(6,12,28,.95));border:1px solid rgba(100,160,230,.1);border-radius:4px}
.section-heading {font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;color:#e8f0fb;letter-spacing:.05em;border-left:4px solid #5a9fe0;padding-left:1rem;margin-bottom:1.2rem;font-weight:600}
.episode-list {display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem 1.2rem}
.episode-item {display:flex;gap:.9rem;padding:.7rem;background:rgba(15,30,55,.4);border:1px solid rgba(80,140,210,.1);border-radius:3px;transition:all .25s ease;align-items:flex-start}
.episode-item:hover {background:rgba(30,60,100,.4);border-color:rgba(100,170,240,.3);transform:translateX(3px)}
.episode-thumb {flex-shrink:0;width:92px;height:62px;background:linear-gradient(135deg,#1a3a6a,#3a7ab8),radial-gradient(circle at 70% 30%,rgba(120,200,255,.3),transparent 60%);background-blend-mode:overlay;border-radius:2px;border:1px solid rgba(120,180,240,.2);position:relative;overflow:hidden}
.episode-thumb::after {content:"";position:absolute;inset:0;background:linear-gradient(30deg,rgba(20,60,120,.4),transparent 60%);animation:thumbGlow 4s ease-in-out infinite alternate}
@keyframes thumbGlow{0%{opacity:.6}100%{opacity:1}}
.episode-info {display:flex;flex-direction:column;gap:.25rem;min-width:0}
.episode-number {font-size:.72rem;color:#6a9ad0;font-weight:500;letter-spacing:.06em;text-transform:uppercase}
.episode-title {font-size:.95rem;color:#d8e8f8;font-weight:500;line-height:1.3}
.episode-summary {font-size:.78rem;color:#8aaac8;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.episode-duration {font-size:.72rem;color:#5a8ab8;margin-top:auto;padding-top:.2rem}
.timeline-scroller {margin:2rem 1.5rem 0;padding:1.5rem;background:linear-gradient(180deg,rgba(8,18,38,.95),rgba(5,10,25,.95));border:1px solid rgba(100,160,230,.08);border-radius:4px}
.timeline-track {display:flex;gap:.7rem;overflow-x:auto;padding:.8rem .2rem 1rem;scrollbar-width:thin;scrollbar-color:#3a6a9e transparent}
.timeline-track::-webkit-scrollbar {height:4px}
.timeline-track::-webkit-scrollbar-track {background:transparent}
.timeline-track::-webkit-scrollbar-thumb {background:#3a6a9e;border-radius:2px}
.timeline-node {flex-shrink:0;width:190px;padding:.9rem .8rem;background:linear-gradient(160deg,rgba(25,50,90,.5),rgba(15,30,60,.4));border:1px solid rgba(80,150,220,.15);border-radius:3px;position:relative;display:flex;flex-direction:column;gap:.35rem;transition:all .3s ease}
.timeline-node::before {content:"";position:absolute;top:-5px;left:50%;transform:translateX(-50%);width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#7ac4e8,#3a8ac8);box-shadow:0 0 10px rgba(100,200,255,.6);transition:all .3s ease}
.timeline-node:hover::before {box-shadow:0 0 18px rgba(100,200,255,.9);transform:translateX(-50%) scale(1.3)}
.timecode {font-size:.78rem;color:#5a9fe0;font-weight:600;font-family:"SF Mono","Consolas",monospace}
.event {font-size:.8rem;color:#b8d4e8;line-height:1.4}
.comments-horizontal {margin:2rem 1.5rem 0;padding:1.5rem;background:linear-gradient(180deg,rgba(10,20,42,.95),rgba(6,12,28,.95));border:1px solid rgba(100,160,230,.1);border-radius:4px}
.comments-scroll {display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;overflow-x:auto;padding:.3rem 0 .6rem;scrollbar-width:thin;scrollbar-color:#3a6a9e transparent}
.comments-scroll::-webkit-scrollbar {height:4px}
.comments-scroll::-webkit-scrollbar-track {background:transparent}
.comments-scroll::-webkit-scrollbar-thumb {background:#3a6a9e;border-radius:2px}
.comment-card {display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:rgba(20,40,70,.35);border:1px solid rgba(80,140,210,.12);border-radius:4px;transition:all .25s ease;min-width:0}
.comment-card:hover {background:rgba(40,80,130,.35);border-color:rgba(100,180,250,.3)}
.comment-nick {font-size:.82rem;color:#7ab8e8;font-weight:600;letter-spacing:.03em}
.comment-text {font-size:.82rem;color:#c0d8e8;line-height:1.5}
.recommendation-region {margin:1.5rem 1.5rem 0;padding:1.5rem;background:rgba(8,16,32,.95);border:1px solid rgba(100,160,230,.08);border-radius:4px}
.recommendation-title {font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;color:#e0ecf8;letter-spacing:.04em;margin-bottom:1rem;padding-left:.8rem;border-left:3px solid rgba(90,160,224,.5)}
.recommendation-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.8rem}
.recommendation-grid a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.45rem;padding:.6rem;background:rgba(15,30,55,.4);border:1px solid rgba(80,140,210,.1);border-radius:3px;transition:all .25s ease;color:#c8e0f8;text-decoration:none}
.recommendation-grid a[data-runtime="recommendation"]:hover {background:rgba(35,70,120,.45);border-color:rgba(100,170,240,.35);transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.3)}
.recommendation-grid a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:2px;border:1px solid rgba(100,160,220,.15)}
.recommendation-grid a[data-runtime="recommendation"] span[data-runtime="name"] {font-size:.88rem;font-weight:500;color:#dceaf8;line-height:1.2}
.recommendation-grid a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.75rem;color:#8aaac8;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer[data-contract="footer"] {margin-top:2rem;padding:1.5rem 1.5rem 2.5rem;background:linear-gradient(180deg,rgba(6,12,26,.98),rgba(3,6,14,.98));border-top:1px solid rgba(100,160,230,.15)}
.footer-friend-links {display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center;font-size:.8rem;margin-bottom:1rem}
.friend-label {color:#7aa8d8;font-weight:400}
.runtime-friend-link {color:#8ab0d8;text-decoration:none;transition:color .2s ease;white-space:nowrap}
.runtime-friend-link:hover {color:#c8e8ff;text-decoration:underline}
.footer-disclaimer {font-size:.72rem;color:#5a7a9a;line-height:1.5;max-width:80ch;margin-bottom:1rem}
.footer-links {display:flex;gap:1.2rem;font-size:.85rem}
.footer-links a {color:#8ab0d8;text-decoration:none;transition:color .2s ease}
.footer-links a:hover {color:#c8e8ff;text-decoration:underline}
.player-wide-wrapper.theater-mode {position:fixed;inset:0;z-index:1000;background:rgba(2,4,10,.97);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem}
.player-wide-wrapper.theater-mode .main-player {max-width:100%;max-height:80vh}
.player-wide-wrapper.theater-mode .player-control-bar {position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);background:rgba(10,20,40,.9)}
body.lights-dim::before {content:"";position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:999;pointer-events:none;transition:opacity .4s}
body.lights-dim .main-player {position:relative;z-index:1001}
.click {cursor:pointer}
.data-player-action {outline:none}
@media(max-width:1200px){.movie-overview-panel {grid-template-columns:minmax(0,.8fr) 1.4fr;grid-template-areas:"poster text" "player player";gap:1.2rem}
.player-wide-wrapper {max-width:100%}
.poster-media-wrapper {max-width:240px}
.comments-scroll {grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.movie-overview-panel {grid-template-columns:1fr;grid-template-areas:"poster" "text" "player";justify-items:center;padding:1.2rem}
.poster-media-wrapper {max-width:220px;justify-self:center}
.overview-text-group {width:100%}
.cast-grid {grid-template-columns:repeat(4,1fr)}
.episode-list {grid-template-columns:1fr}
.detail-list {grid-template-columns:1fr 1fr}
.comments-scroll {grid-template-columns:repeat(3,1fr)}
header[data-contract="header"] {flex-direction:column;align-items:flex-start}
.categories-shell {padding-left:0;width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}
.runtime-category {flex-shrink:0}}
@media(max-width:600px){.hero-aurora {padding:2rem 1.2rem 3rem;min-height:70vh}
.hero-title {font-size:1.8rem}
.hero-tagline {font-size:.9rem}
.hero-play-btn {padding:.6rem 1.5rem;font-size:.9rem}
.movie-overview-panel, .episode-list-section, .timeline-scroller, .comments-horizontal, .recommendation-region {margin-left:.8rem;margin-right:.8rem;padding:1rem}
.cast-grid {grid-template-columns:repeat(2,1fr);gap:.6rem}
.cast-avatar {width:48px;height:48px}
.detail-list {grid-template-columns:1fr}
.episode-item {flex-direction:row;gap:.6rem}
.episode-thumb {width:70px;height:50px}
.timeline-node {width:160px}
.comments-scroll {grid-template-columns:repeat(2,1fr)}
.recommendation-grid {grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.player-control-bar {justify-content:center}
.footer-friend-links {max-height:4.5em;overflow-y:auto}
.player-wide-wrapper.theater-mode {padding:1rem}
.player-wide-wrapper.theater-mode .main-player {max-height:70vh}}
@media(max-width:400px){.meta-row-primary {flex-wrap:wrap}
.cast-grid {grid-template-columns:repeat(2,1fr)}
.recommendation-grid {grid-template-columns:1fr 1fr}
.recommendation-grid a[data-runtime="recommendation"] {padding:.4rem}
.episode-thumb {width:60px;height:44px}
.episode-title {font-size:.85rem}
.episode-summary {font-size:.72rem}
.comments-scroll {grid-template-columns:1fr}
.timeline-node {width:140px}}

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}
