*, * {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
body {background:#0a1216;color:#c8d4d9;font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.6;font-weight:300;letter-spacing:.02em}
img, video {display:block;max-width:100%;height:auto}
a {color:inherit;text-decoration:none}
ul {list-style:none}
h1, h2, h3 {font-family:"Times New Roman","Songti SC","SimSun",serif}
header {display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:rgba(10,18,22,.95);border-bottom:1px solid #1a2a32;position:sticky;top:0;z-index:100}
.site-brand {font-family:"Times New Roman","Songti SC",serif;font-size:1.4rem;font-weight:700;color:#e8f0f2;letter-spacing:.08em}
a.site-brand:hover {color:#9fc2c8}
a[data-contract="site-name"] {color:#e8f0f2}
a[data-contract="site-name"]:hover {color:#9fc2c8}
nav[data-contract="categories"] {display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;max-width:70%;-webkit-overflow-scrolling:touch}
a.runtime-category {color:#9fc2c8;font-size:.85rem;padding:6px 14px;border:1px solid #1a2a32;border-radius:20px;white-space:nowrap;background:rgba(26,42,50,.4)}
a.runtime-category:hover {color:#e8f0f2;border-color:#3a5a66;background:rgba(26,42,50,.7)}
main {max-width:1600px;margin:0 auto;padding:0}
.movie-shell {background:linear-gradient(180deg,#0d1a20 0%,#0a1216 100%);padding:0 32px 48px;position:relative}
.hero-cinema {display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);gap:0;align-items:stretch;border-bottom:1px solid #1a2a32;padding:0 0 40px;position:relative}
.hero-face {position:relative;grid-column:1;overflow:hidden;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.poster-image {width:100%;height:calc(100vh - 140px);min-height:540px;max-height:900px;object-fit:cover;filter:contrast(1.05) saturate(.85) brightness(.9)}
.hero-face::after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 40%,rgba(10,18,22,.4) 100%);pointer-events:none}
.hero-title-block {grid-column:2;align-self:center;padding:40px 48px;position:relative;z-index:2}
.movie-title {font-size:clamp(1.6rem,3vw,2.6rem);font-weight:700;color:#e8f0f2;letter-spacing:.12em;margin-bottom:16px;line-height:1.3;text-shadow:0 2px 20px rgba(0,0,0,.6)}
.tagline {font-size:1rem;color:#9fc2c8;letter-spacing:.15em;border-left:2px solid #3a5a66;padding-left:16px;margin-top:8px;font-style:italic}
.info-grid {display:grid;grid-template-columns:minmax(0,5fr) minmax(0,4fr) minmax(0,3fr);gap:0;padding:0;border-bottom:1px solid #1a2a32}
.cast-panel, .synopsis-panel, .details-panel {padding:28px 32px}
.cast-panel {border-right:1px solid #1a2a32}
.synopsis-panel {border-right:1px solid #1a2a32}
.section-subhead {font-size:1.1rem;font-weight:700;color:#e8f0f2;letter-spacing:.1em;margin-bottom:20px;position:relative;padding-bottom:8px}
.section-subhead::after {content:"";position:absolute;bottom:0;left:0;width:32px;height:2px;background:#3a5a66}
.actor-list {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.actor-list li {display:flex;align-items:center;gap:10px;color:#c8d4d9;font-size:.9rem}
.actor-avatar {width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#3a5a66,#1a2a32);display:inline-block;flex-shrink:0;border:1px solid #3a5a66;box-shadow:0 0 12px rgba(58,90,102,.3)}
.synopsis-para {font-size:.9rem;color:#9fb2b8;line-height:1.8;margin-bottom:12px}
.synopsis-para:last-child {margin-bottom:0}
.episode-status {padding:20px 32px;display:flex;align-items:center;gap:16px;border-bottom:1px solid #1a2a32;background:rgba(26,42,50,.3)}
.status-label {font-family:"Times New Roman",serif;font-size:1.2rem;font-weight:700;color:#e8f0f2;padding:6px 20px;border:1px solid #3a5a66;border-radius:4px;letter-spacing:.1em}
.current-ep {font-size:.85rem;color:#9fc2c8;padding:6px 16px;background:rgba(58,90,102,.2);border-radius:20px}
.detail-list {display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}
.detail-item {display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-bottom:1px solid rgba(26,42,50,.5)}
.detail-item dt {font-size:.8rem;color:#7a9298;letter-spacing:.1em}
.detail-item dd {font-size:.9rem;color:#c8d4d9;text-align:right}
.player-zone {padding:40px 0 0;max-width:100%}
.player-zone video {width:100%;max-width:100%;border:1px solid #1a2a32;background:#000;box-shadow:0 8px 40px rgba(0,0,0,.5)}
.player-controls {display:flex;gap:8px;padding:12px 0;flex-wrap:wrap;align-items:center}
.player-controls button {background:rgba(26,42,50,.6);border:1px solid #1a2a32;color:#9fc2c8;padding:6px 14px;font-size:.8rem;border-radius:4px;cursor:pointer;transition:all .2s}
.player-controls button:hover {background:#3a5a66;color:#e8f0f2}
.player-controls button.active {background:#3a5a66;color:#e8f0f2;border-color:#5a8a96}
.player-controls span {color:#7a9298;font-size:.8rem;padding:6px 8px}
body.lights-off .player-zone video {border-color:#000;box-shadow:0 0 60px rgba(0,0,0,.8)}
body.lights-off main {background:#050a0e}
video.theater-mode {max-width:100vw;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}
.episodes-section {padding:48px 32px;border-bottom:1px solid #1a2a32;background:#0c161b}
.section-title {font-size:1.6rem;font-weight:700;color:#e8f0f2;letter-spacing:.15em;margin-bottom:28px;position:relative;display:inline-block;padding-bottom:8px}
.section-title::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#3a5a66,transparent)}
.episode-scroller {display:flex;gap:16px;overflow-x:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#3a5a66 transparent}
.episode-scroller::-webkit-scrollbar {height:4px}
.episode-scroller::-webkit-scrollbar-thumb {background:#3a5a66;border-radius:2px}
.episode-card {flex:0 0 260px;background:rgba(26,42,50,.4);border:1px solid #1a2a32;padding:20px;border-radius:8px;position:relative;transition:border-color .2s;min-height:180px}
.episode-card:hover {border-color:#3a5a66}
.ep-number {font-family:"Times New Roman",serif;font-size:2.2rem;font-weight:700;color:#3a5a66;display:block;margin-bottom:10px;line-height:1}
.episode-card h3 {font-size:1.1rem;color:#e8f0f2;margin-bottom:10px;letter-spacing:.06em}
.episode-card p {font-size:.8rem;color:#9fb2b8;line-height:1.6;margin-bottom:14px}
.ep-duration {font-size:.75rem;color:#7a9298;display:block;border-top:1px solid #1a2a32;padding-top:8px}
.episode-more {flex:0 0 120px;display:flex;align-items:center;justify-content:center;color:#3a5a66;font-family:"Times New Roman",serif;font-size:1.2rem;letter-spacing:.2em;background:rgba(58,90,102,.1);border:1px dashed #3a5a66;border-radius:8px;padding:20px}
.timeline-section {padding:48px 32px;border-bottom:1px solid #1a2a32;background:#0a1216}
.timeline-vertical {position:relative;max-width:900px;margin:0 auto;padding:20px 0}
.timeline-vertical::before {content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#3a5a66,#1a2a32,#3a5a66);transform:translateX(-50%)}
.timeline-item {position:relative;width:calc(50% - 40px);margin-bottom:36px;padding:16px 20px;background:rgba(26,42,50,.3);border:1px solid #1a2a32;border-radius:6px;transition:border-color .2s}
.timeline-item:hover {border-color:#3a5a66}
.timeline-item::before {content:"";position:absolute;top:20px;width:12px;height:12px;background:#3a5a66;border-radius:50%;box-shadow:0 0 12px rgba(58,90,102,.6)}
.timeline-item.left {left:0;text-align:right}
.timeline-item.left::before {right:-46px}
.timeline-item.right {left:50%;margin-left:40px}
.timeline-item.right::before {left:-46px}
.timecode {font-family:"Times New Roman",serif;font-size:.9rem;font-weight:700;color:#9fc2c8;letter-spacing:.1em;display:block;margin-bottom:6px}
.timeline-item p {font-size:.85rem;color:#c8d4d9;line-height:1.6}
.comments-section {padding:48px 32px;border-bottom:1px solid #1a2a32;background:#0c161b}
.comment-masonry {columns:3;column-gap:16px}
.comment-card {break-inside:avoid;background:rgba(26,42,50,.4);border:1px solid #1a2a32;border-radius:6px;padding:18px;margin-bottom:16px;position:relative;transition:border-color .2s;display:inline-block;width:100%}
.comment-card:hover {border-color:#3a5a66}
.comment-card strong {font-size:.85rem;color:#9fc2c8;display:block;margin-bottom:8px;letter-spacing:.05em}
.comment-card p {font-size:.82rem;color:#c8d4d9;line-height:1.7}
.recommendation-row {padding:40px 32px;border-bottom:1px solid #1a2a32;background:#0a1216}
.rec-title {font-size:1.3rem;font-weight:700;color:#e8f0f2;letter-spacing:.1em;margin-bottom:20px;position:relative;display:inline-block;padding-bottom:6px}
.rec-title::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,#3a5a66,transparent)}
.rec-scroll {display:flex;gap:16px;overflow-x:auto;padding-bottom:12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#3a5a66 transparent}
.rec-scroll::-webkit-scrollbar {height:4px}
.rec-scroll::-webkit-scrollbar-thumb {background:#3a5a66;border-radius:2px}
a[data-runtime="recommendation"] {flex:0 0 220px;background:rgba(26,42,50,.4);border:1px solid #1a2a32;border-radius:6px;overflow:hidden;transition:transform .2s,border-color .2s;display:flex;flex-direction:column;color:#c8d4d9}
a[data-runtime="recommendation"]:hover {transform:translateY(-4px);border-color:#3a5a66}
a[data-runtime="recommendation"] img {width:100%;height:140px;object-fit:cover;object-position:center;flex-shrink:0}
a[data-runtime="recommendation"] span[data-runtime="name"] {font-size:.9rem;font-weight:600;color:#e8f0f2;padding:12px 12px 4px;line-height:1.4;letter-spacing:.02em}
a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.75rem;color:#7a9298;padding:0 12px 12px;line-height:1.5;flex-grow:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {background:#081014;padding:40px 32px 24px;border-top:1px solid #1a2a32}
.disclaimer {font-size:.75rem;color:#5a7278;line-height:1.8;margin-bottom:24px;max-width:900px}
.friend-links {display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-bottom:24px}
.friend-label {font-size:.8rem;color:#7a9298;margin-right:8px}
a.runtime-friend-link {font-size:.8rem;color:#9fc2c8;padding:2px 0;border-bottom:1px solid transparent;transition:all .2s}
a.runtime-friend-link:hover {color:#e8f0f2;border-bottom-color:#3a5a66}
.footer-nav {display:flex;gap:16px;border-top:1px solid #1a2a32;padding-top:16px}
.footer-nav a {font-size:.8rem;color:#7a9298;transition:color .2s}
.footer-nav a:hover {color:#e8f0f2}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#7a9298}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#e8f0f2}
@media(max-width:1024px){.hero-cinema {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.hero-face {grid-column:1}
.hero-title-block {grid-column:2;padding:30px}
.info-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cast-panel, .synopsis-panel, .details-panel {border-right:0}
.comment-masonry {columns:2}
.poster-image {height:auto;min-height:400px;max-height:none}}
@media(max-width:768px){header {padding:16px 20px;flex-wrap:wrap;gap:12px}
nav[data-contract="categories"] {max-width:100%}
.movie-shell {padding:0 16px 32px}
.hero-cinema {grid-template-columns:1fr;padding-bottom:24px}
.hero-face {grid-column:1;grid-row:1}
.hero-title-block {grid-column:1;grid-row:2;padding:20px 0}
.poster-image {height:auto;min-height:0;max-height:60vh}
.info-grid {grid-template-columns:1fr}
.cast-panel, .synopsis-panel, .details-panel {padding:20px 0;border-right:0;border-bottom:1px solid #1a2a32}
.episodes-section, .timeline-section, .comments-section, .recommendation-row {padding:32px 16px}
.timeline-vertical::before {left:8px}
.timeline-item {width:calc(100% - 30px);margin-left:30px}
.timeline-item.left {left:0;text-align:left}
.timeline-item.left::before {left:-30px;right:auto}
.timeline-item.right {left:0;margin-left:30px}
.timeline-item.right::before {left:-30px}
.comment-masonry {columns:1}
.detail-list {grid-template-columns:1fr}
.actor-list {grid-template-columns:1fr 1fr}
.player-controls {flex-wrap:wrap}
.player-controls button {flex:1 1 calc(50% - 8px)}
.episode-card {flex-basis:220px}}
@media(max-width:480px){nav[data-contract="categories"] {max-width:100%;overflow-x:auto}
a.runtime-category {font-size:.75rem;padding:4px 10px}
.movie-title {font-size:1.3rem}
.tagline {font-size:.85rem}
.section-title {font-size:1.3rem}
.episode-card {flex-basis:200px}
.recommendation-row a[data-runtime="recommendation"] {flex-basis:180px}
.actor-list {grid-template-columns:1fr}
.detail-list {grid-template-columns:1fr}
.player-controls button {flex:1 1 100%}
.friend-links {flex-direction:column;align-items:flex-start}
.poster-image {min-height:0}}
.active {outline:none}
.lights-off {background:#050a0e}
.theater-mode {position:relative;z-index:10}
[data-runtime="recommendation"] img {width:100%;height:140px;object-fit:cover;display:block}
.player-zone {min-width:0;width:100%}
.player-zone video {min-width:0;max-width:100%;width:100%}
.movie-shell {min-width:0}
.hero-cinema, .info-grid {min-width:0}
.player-zone {min-width:480px}
@media(max-width:480px){.player-zone {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}
