*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;background:#0a1428;color:#e8e6df;line-height:1.5;min-height:100vh;overflow-x:hidden}
body.light-off .main-stage {filter:brightness(.45) saturate(.8);transition:filter .6s ease}
body.light-off .player-shell video {filter:brightness(1.1)}
img, video {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
ul, ol {list-style:none}
button, input, select {font:inherit;color:inherit;background:none;border:none;cursor:pointer}
button:focus, input:focus, select:focus, a:focus {outline:2px solid #ff8c42;outline-offset:2px}
video::-webkit-media-controls {display:none!important}
header {position:sticky;top:0;z-index:100;background:rgba(10,20,40,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,140,66,.15)}
.header-shell {display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1280px;margin:0 auto;padding:.5rem 1.5rem;flex-wrap:wrap}
a[data-contract="site-name"] {font-family:"Georgia","Times New Roman",serif;font-size:1.5rem;font-weight:700;color:#ff8c42;letter-spacing:.05em;text-shadow:0 0 20px rgba(255,140,66,.3);background:linear-gradient(135deg,#ffb066,#ff6a1a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;white-space:nowrap}
a[data-contract="site-name"]:hover {color:#ffa45c;text-decoration:underline;text-underline-offset:4px}
.category-strip {display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;justify-content:flex-end}
.category-strip a.runtime-category {display:inline-block;padding:.45rem .9rem;border-radius:2rem;font-size:.85rem;color:#c9d4e8;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:all .25s ease;white-space:nowrap}
.category-strip a.runtime-category:hover {color:#ff8c42;background:rgba(255,140,66,.1);border-color:rgba(255,140,66,.35);transform:translateY(-1px)}
.main-stage {max-width:1280px;margin:0 auto;padding:.75rem 1.5rem 2rem}
.overview-block {display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:0;background:linear-gradient(160deg,#0f1f3a,#0a1428 60%);border:1px solid rgba(255,255,255,.07);border-radius:1.25rem;box-shadow:0 12px 40px rgba(0,0,0,.45),inset 0 0 60px rgba(255,140,66,.03);padding:1.5rem;margin-bottom:1.5rem;position:relative;overflow:hidden}
.overview-block::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ff8c42,#ffd9b3,#ff8c42);opacity:.6}
.poster-wrap {align-self:start;position:relative;z-index:1}
.hero-poster {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:.75rem;border:1px solid rgba(255,140,66,.2);box-shadow:0 8px 24px rgba(0,0,0,.5);transition:transform .4s ease}
.hero-poster:hover {transform:scale(1.01)}
.overview-content {padding:.5rem 0 .5rem 1.5rem;display:flex;flex-direction:column;gap:1rem;min-width:0}
.movie-title {font-family:"Georgia","Times New Roman",serif;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:900;color:#fff;letter-spacing:.02em;line-height:1.3;text-shadow:0 2px 12px rgba(0,0,0,.4);position:relative;padding-bottom:.5rem}
.movie-title::after {content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:#ff8c42;border-radius:2px}
.tagline {font-size:.95rem;color:#ffb066;font-style:italic;letter-spacing:.08em;opacity:.85;margin-top:-.25rem}
.synopsis-panel {display:flex;flex-direction:column;gap:.5rem;background:rgba(255,255,255,.03);border-left:3px solid #ff8c42;padding:.75rem 1rem;border-radius:0 .5rem .5rem 0}
.synopsis-lead, .synopsis-main {color:#b8c2d6;font-size:.9rem;line-height:1.7}
.synopsis-reveal {color:#ffd9b3;font-size:.9rem;line-height:1.7;font-weight:600}
.cast-module {margin-top:.25rem}
.section-subtitle {font-family:"Georgia",serif;font-size:1.1rem;font-weight:700;color:#ff8c42;margin-bottom:.5rem;letter-spacing:.05em}
.cast-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}
.cast-item {display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#d5dce8;background:rgba(255,255,255,.03);padding:.4rem .6rem;border-radius:2rem;border:1px solid rgba(255,255,255,.06);transition:all .25s ease;white-space:nowrap}
.cast-item:hover {background:rgba(255,140,66,.08);border-color:rgba(255,140,66,.3)}
.actor-avatar {width:1.75rem;height:1.75rem;border-radius:50%;background:linear-gradient(135deg,#ff8c42,#ffd9b3);flex-shrink:0;border:2px solid rgba(255,255,255,.2);box-shadow:0 0 8px rgba(255,140,66,.3)}
.ep-status {display:flex;flex-direction:column;gap:.5rem;background:rgba(0,0,0,.2);border-radius:.6rem;padding:.75rem}
.ep-meta {display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:#ffb066;flex-wrap:wrap}
.ep-label {font-weight:700;background:linear-gradient(135deg,#ff8c42,#ff6a1a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-size:1.05rem}
.ep-divider {opacity:.5}
.ep-current {color:#8fa4c8;font-size:.85rem}
.player-shell {position:relative;width:100%;margin-top:.25rem}
.player-shell video {width:100%;aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 16px rgba(0,0,0,.4)}
.player-shell video.theater-mode {position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:contain;z-index:200;background:#000;border-radius:0}
.player-controls {display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;padding:.5rem .25rem 0;background:transparent}
.player-controls button {background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:.35rem;padding:.3rem .6rem;font-size:.75rem;color:#cfd8e6;transition:all .2s ease}
.player-controls button:hover {background:rgba(255,140,66,.2);border-color:#ff8c42;color:#fff}
.player-controls input[type="range"] {flex:1;min-width:60px;height:4px;background:rgba(255,255,255,.15);border-radius:2px;accent-color:#ff8c42}
.player-controls input[type="range"]::-webkit-slider-thumb {width:14px;height:14px;border-radius:50%;background:#ff8c42;cursor:pointer}
.player-controls select {background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:.35rem;padding:.3rem .5rem;font-size:.75rem;color:#cfd8e6}
.player-controls select option {background:#0a1428;color:#cfd8e6}
.details-grid {margin-top:.25rem}
.detail-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.35rem .5rem}
.detail-item {display:flex;justify-content:space-between;align-items:baseline;padding:.3rem .5rem;background:rgba(255,255,255,.02);border-radius:.35rem;border-bottom:1px solid rgba(255,255,255,.05)}
.detail-item dt {font-size:.75rem;color:#8fa4c8;text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.detail-item dd {font-size:.85rem;color:#e0e4ec;text-align:right;font-weight:500}
.rating-item dd {color:#ff8c42;font-weight:900;font-size:1rem}
.rating-num {font-family:"Georgia",serif;font-size:1.25rem;color:#ff8c42;font-weight:900;text-shadow:0 0 12px rgba(255,140,66,.4)}
.timeline-section {background:linear-gradient(135deg,#0f1f3a,#14264a);border:1px solid rgba(255,255,255,.06);border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem}
.timeline-heading {font-family:"Georgia",serif;font-size:1.3rem;font-weight:700;color:#ff8c42;margin-bottom:1rem;letter-spacing:.05em;position:relative;display:inline-block}
.timeline-heading::after {content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#ff8c42,transparent)}
.timeline-flow {display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;position:relative;counter-reset:step}
.timeline-step {display:flex;flex-direction:column;gap:.3rem;padding:.75rem 1rem;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01));border-radius:.6rem;border:1px solid rgba(255,255,255,.06);position:relative;transition:all .3s ease}
.timeline-step:hover {transform:translateY(-3px);border-color:rgba(255,140,66,.4);box-shadow:0 6px 20px rgba(255,140,66,.1)}
.timecode {font-size:.75rem;color:#8fa4c8;letter-spacing:.05em;font-weight:600}
.step-label {font-size:.9rem;color:#e0e4ec;font-weight:600;line-height:1.4}
.timeline-step::before {content:"";position:absolute;top:-.5rem;left:1rem;width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#ff8c42,#ffd9b3);box-shadow:0 0 8px rgba(255,140,66,.5)}
.timeline-step:nth-child(odd)::before {background:linear-gradient(135deg,#8fa4c8,#ff8c42)}
.episode-section {background:linear-gradient(135deg,#101c34,#0c1528);border:1px solid rgba(255,255,255,.06);border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem}
.episode-heading {font-family:"Georgia",serif;font-size:1.3rem;font-weight:700;color:#ff8c42;margin-bottom:1rem;letter-spacing:.05em}
.episode-scroll {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;padding-bottom:.5rem}
.ep-card {background:linear-gradient(160deg,#132a4a,#0f1f3a);border:1px solid rgba(255,255,255,.07);border-radius:.75rem;padding:1rem;display:flex;flex-direction:column;gap:.4rem;transition:all .3s ease;position:relative;cursor:pointer}
.ep-card:hover {border-color:rgba(255,140,66,.5);background:linear-gradient(160deg,#1a3458,#132a4a);box-shadow:0 8px 24px rgba(255,140,66,.08)}
.ep-card:hover .ep-summary {opacity:1;max-height:6em}
.ep-number {font-family:"Georgia",serif;font-size:2rem;font-weight:900;color:rgba(255,140,66,.35);line-height:1;transition:color .3s ease}
.ep-card:hover .ep-number {color:#ff8c42}
.ep-title {font-size:.95rem;font-weight:700;color:#e0e4ec;line-height:1.4;letter-spacing:.02em}
.ep-summary {font-size:.8rem;color:#8fa4c8;line-height:1.5;max-height:0;overflow:hidden;opacity:0;transition:all .4s ease}
.ep-duration {font-size:.7rem;color:#5f7290;letter-spacing:.05em;margin-top:auto}
.ep-label, .ep-divider, .ep-current {display:inline}
.comment-section {background:linear-gradient(135deg,#101c34,#0c1528);border:1px solid rgba(255,255,255,.06);border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem}
.comment-heading {font-family:"Georgia",serif;font-size:1.3rem;font-weight:700;color:#ff8c42;margin-bottom:1rem;letter-spacing:.05em}
.comment-masonry {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;align-items:start}
.comment-card {background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:.75rem;padding:1rem;display:flex;flex-direction:column;gap:.5rem;transition:all .3s ease}
.comment-card:hover {border-color:rgba(255,140,66,.3);background:rgba(255,140,66,.04)}
.comment-text {font-size:.85rem;color:#cfd8e6;line-height:1.6}
.comment-author {font-size:.75rem;color:#8fa4c8;font-style:italic;text-align:right}
.recommendation-panel {background:linear-gradient(135deg,#0f1f3a,#14264a);border:1px solid rgba(255,255,255,.06);border-radius:1rem;padding:1.5rem;margin-bottom:1.5rem}
.recommendation-panel:nth-of-type(1) {border-left:3px solid #ff8c42}
.recommendation-panel:nth-of-type(2) {border-left:3px solid #8fa4c8}
.recommendation-panel:nth-of-type(3) {border-left:3px solid #4ecdc4}
.recommend-title {font-family:"Georgia",serif;font-size:1.2rem;font-weight:700;margin-bottom:1rem;letter-spacing:.05em}
.recommendation-panel:nth-of-type(1) .recommend-title {color:#ff8c42}
.recommendation-panel:nth-of-type(2) .recommend-title {color:#8fa4c8}
.recommendation-panel:nth-of-type(3) .recommend-title {color:#4ecdc4}
.recommend-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}
.recommend-grid a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:.6rem;padding:.6rem;transition:all .3s ease;color:#cfd8e6}
.recommend-grid a[data-runtime="recommendation"]:hover {background:rgba(255,255,255,.07);border-color:rgba(255,140,66,.3);transform:translateY(-2px);color:#fff}
.recommend-grid a[data-runtime="recommendation"] img {width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:.35rem;border:1px solid rgba(255,255,255,.05)}
.recommend-grid a[data-runtime="recommendation"] [data-runtime="name"] {font-size:.9rem;font-weight:600;color:inherit;line-height:1.4}
.recommend-grid a[data-runtime="recommendation"] [data-runtime="blurb"] {font-size:.75rem;color:#8fa4c8;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.footer-shell {background:#080f1e;border-top:1px solid rgba(255,140,66,.15);padding:2rem 1.5rem 1.5rem;margin-top:1rem}
.footer-inner {max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.friend-links {display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}
.friend-label {font-size:.85rem;color:#8fa4c8;font-weight:600;margin-right:.25rem}
a.runtime-friend-link {font-size:.8rem;color:#b8c2d6;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);padding:.3rem .7rem;border-radius:2rem;transition:all .25s ease;white-space:nowrap}
a.runtime-friend-link:hover {color:#ff8c42;background:rgba(255,140,66,.08);border-color:rgba(255,140,66,.3)}
.disclaimer-text {font-size:.75rem;color:#5f7290;line-height:1.6}
.footer-links {display:flex;gap:1.5rem;margin-top:.5rem}
.footer-links a[data-contract="footer-home"], .footer-links a[data-contract="footer-sitemap"] {font-size:.85rem;color:#8fa4c8;transition:color .25s ease}
.footer-links a[data-contract="footer-home"]:hover, .footer-links a[data-contract="footer-sitemap"]:hover {color:#ff8c42;text-decoration:underline;text-underline-offset:3px}
.player-shell video.play {box-shadow:0 0 20px rgba(255,140,66,.2)}
.player-shell video.pause {opacity:.85}
.player-shell video.mute {filter:saturate(.6)}
.player-shell video.pip {border:2px solid #ff8c42}
.player-shell video.fullscreen {border-radius:0}
.player-controls button.change {background:#ff8c42;color:#0a1428;border-color:#ff8c42}
.player-controls button.click {transform:scale(.92)}
.player-controls input[type="range"].progress {accent-color:#4ecdc4}
.player-controls input[type="range"].volume {accent-color:#8fa4c8}
.player-controls select.speed {color:#ff8c42}
.player-shell video.theater {position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:200;object-fit:contain;background:#000}
.player-shell video.light-off {filter:brightness(.7)}
.player-shell video.timeupdate {box-shadow:inset 0 0 30px rgba(255,140,66,.1)}
.player-shell video.player {box-shadow:0 0 30px rgba(255,140,66,.3)}
@media (max-width:1024px){.overview-block {grid-template-columns:minmax(0,280px) minmax(0,1fr);padding:1.25rem}
.overview-content {padding-left:1.25rem}
.detail-list {grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.timeline-flow {grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.episode-scroll {grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
@media (max-width:800px){.header-shell {flex-direction:column;align-items:flex-start;gap:.5rem;padding:.75rem 1rem}
.category-strip {width:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:.25rem}
.overview-block {grid-template-columns:minmax(0,1fr);padding:1rem}
.overview-content {padding:1rem 0 0}
.poster-wrap {max-width:260px;margin:0 auto}
.hero-poster {aspect-ratio:2/3;object-fit:cover}
.cast-list {grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}
.detail-list {grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
.timeline-flow {grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}
.episode-scroll {grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.comment-masonry {grid-template-columns:repeat(2,1fr)}
.recommend-grid {grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media (max-width:560px){.main-stage {padding:.5rem .75rem 1.5rem}
.overview-block {border-radius:.9rem;padding:.75rem}
.movie-title {font-size:1.25rem}
.cast-list {grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}
.detail-list {grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}
.timeline-flow {grid-template-columns:1fr;gap:.5rem}
.timeline-step {flex-direction:row;align-items:center;gap:.75rem;padding:.5rem .75rem}
.timecode {font-size:.7rem}
.step-label {font-size:.85rem}
.episode-scroll {grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.comment-masonry {grid-template-columns:1fr}
.recommend-grid {grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
.player-controls {flex-wrap:wrap;gap:.25rem}
.player-controls button {padding:.25rem .5rem;font-size:.7rem}
.player-controls input[type="range"] {flex-basis:100%;order:1}
.friend-links {gap:.3rem}
a.runtime-friend-link {font-size:.7rem;padding:.2rem .5rem}}
.player-shell {min-width:0;width:100%}
.ep-status {min-width:0}
.overview-content {min-width:0}
.main-stage>* {min-width:0}

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}
