*, *::before, *::after {margin:0;padding:0;box-sizing:border-box;border:0;font:inherit;vertical-align:baseline}
html {line-height:1.15;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body {font-family:"Source Han Sans SC","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",sans-serif;background:#2C3E50;color:#F5F0E6;font-size:14px;line-height:1.6;position:relative;overflow-x:hidden}
body::before {content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.06;background-size:200px 200px;mix-blend-mode:overlay}
img, video {display:block;max-width:100%;height:auto}
a {color:inherit;text-decoration:none;transition:color .2s ease}
ul {list-style:none}
button {background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit}
h1, h2 {font-weight:400}
.movie-overview-shell, .timeline-fragment, .episodes-fragment, .comments-fragment, .recommend-region, .design-notes-block, footer {max-width:1280px;margin:0 auto;padding:0 clamp(12px,3vw,32px)}
header {background:rgba(44,62,80,.92);backdrop-filter:blur(4px);border-bottom:1px solid rgba(245,240,230,.12);position:sticky;top:0;z-index:100;box-shadow:0 2px 12px rgba(0,0,0,.3)}
.header-inner {max-width:1280px;margin:0 auto;padding:10px clamp(12px,3vw,32px);display:flex;align-items:baseline;gap:clamp(16px,4vw,48px);flex-wrap:wrap}
.site-brand {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:1.5rem;letter-spacing:.08em;color:#F5F0E6;border-left:3px solid #D35400;padding-left:10px;font-weight:700}
.site-brand:hover {color:#D35400}
.categories-nav {display:flex;flex-wrap:wrap;gap:6px 2px;flex:1;min-width:0}
.runtime-category {font-size:.78rem;color:#C8BFB0;padding:4px 10px;border:1px solid transparent;white-space:nowrap;letter-spacing:.04em}
.runtime-category:hover {color:#D35400;border-color:rgba(211,84,0,.4);border-radius:2px}
.movie-overview-shell {position:relative;padding-top:clamp(16px,4vw,40px);padding-bottom:clamp(16px,3vw,32px);background:linear-gradient(to bottom,rgba(44,62,80,.98),#243342);margin-top:0;border-bottom:1px solid rgba(211,84,0,.25)}
.poster-player-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(12px,2vw,24px);align-items:start}
.poster-wrapper {position:relative;line-height:0;box-shadow:0 8px 24px rgba(0,0,0,.5);border:1px solid rgba(245,240,230,.15);border-radius:2px;overflow:hidden}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;filter:contrast(1.05) saturate(.85)}
.player-wrapper {position:relative;background:#1a242f;border:1px solid rgba(245,240,230,.12);border-radius:2px;box-shadow:0 8px 24px rgba(0,0,0,.4);min-width:0;overflow:hidden}
.player-wrapper video {display:block;width:100%;background:#000}
.player-controls {display:flex;flex-wrap:wrap;gap:2px;padding:8px 10px;background:rgba(26,36,47,.95);border-top:1px solid rgba(245,240,230,.08)}
.player-controls button {font-size:.7rem;color:#C8BFB0;padding:4px 10px;border:1px solid rgba(245,240,230,.1);border-radius:1px;letter-spacing:.06em;transition:all .2s}
.player-controls button:hover {color:#F5F0E6;border-color:#D35400;background:rgba(211,84,0,.15)}
.player-wrapper.theater-mode video {aspect-ratio:16/9;width:100%}
body.lights-off .movie-overview-shell {filter:brightness(.7)}
.title-tagline-block {margin-top:clamp(16px,3vw,28px);display:flex;flex-direction:column;gap:8px}
.movie-title {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:700;letter-spacing:.06em;line-height:1.25;color:#F5F0E6;text-shadow:2px 2px 0 rgba(211,84,0,.3)}
.movie-tagline {font-size:.95rem;color:#C8BFB0;letter-spacing:.08em;border-left:3px solid #D35400;padding-left:10px}
.cast-block {margin-top:clamp(20px,4vw,36px)}
.block-heading {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:1.1rem;font-weight:700;letter-spacing:.1em;color:#D35400;display:flex;align-items:center;gap:10px;margin-bottom:14px;text-transform:uppercase}
.block-heading::before {content:"";width:24px;height:2px;background:#D35400;display:inline-block}
.block-heading::after {content:"";flex:1;height:1px;background:rgba(245,240,230,.15)}
.cast-list {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cast-item {font-size:.9rem;color:#F5F0E6;padding:8px 0;border-bottom:1px solid rgba(245,240,230,.12);display:flex;align-items:center;gap:8px}
.cast-item::before {content:"◆";font-size:.55rem;color:#D35400}
.synopsis-block {margin-top:24px;border-top:1px solid rgba(245,240,230,.1);padding-top:20px}
.synopsis-paragraph {font-size:.88rem;color:#D8D2C5;margin-bottom:12px;line-height:1.8;text-align:justify}
.episode-status-block {margin-top:20px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;border-top:1px solid rgba(245,240,230,.1);padding-top:16px}
.episode-current, .episode-count {font-size:.82rem;color:#F5F0E6;background:rgba(211,84,0,.15);padding:4px 12px;border-radius:2px;border-left:2px solid #D35400}
.episode-count {background:rgba(245,240,230,.06)}
.details-block {margin-top:16px;border-top:1px solid rgba(245,240,230,.1);padding-top:16px}
.details-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 16px}
.detail-item {display:flex;flex-direction:column;gap:2px;padding:6px 0;border-bottom:1px solid rgba(245,240,230,.06)}
.detail-item dt {font-size:.68rem;color:#8A9384;letter-spacing:.1em;text-transform:uppercase}
.detail-item dd {font-size:.85rem;color:#F5F0E6;font-weight:500}
.timeline-fragment {padding-top:clamp(24px,5vw,48px);padding-bottom:clamp(24px,4vw,40px)}
.timeline-wrapper {position:relative;padding-left:32px;border-left:2px solid #D35400;margin-left:4px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));column-gap:clamp(16px,3vw,32px);row-gap:0}
.timeline-entry {position:relative;padding:14px 16px;margin-bottom:16px;background:rgba(245,240,230,.04);border:1px solid rgba(245,240,230,.1);border-radius:0 4px 4px 0;display:flex;flex-direction:column;gap:6px;transition:background .2s}
.timeline-entry::before {content:"";position:absolute;left:-36px;top:18px;width:10px;height:10px;background:#D35400;transform:rotate(45deg);border-radius:1px}
.timeline-entry::after {content:"";position:absolute;top:0;right:-1px;width:20px;height:100%;background:inherit;clip-path:polygon(0 0,100% 0,85% 100%,0 100%);opacity:.6}
.timeline-entry:hover {background:rgba(211,84,0,.08)}
.timecode {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:.8rem;font-weight:700;color:#D35400;letter-spacing:.1em}
.label {font-size:.82rem;color:#D8D2C5;line-height:1.6}
.episodes-fragment {padding-top:clamp(16px,3vw,32px);padding-bottom:clamp(24px,4vw,40px);border-top:1px solid rgba(211,84,0,.2)}
.episodes-horizontal-scroll {display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,280px);gap:16px;overflow-x:auto;padding-bottom:12px;scrollbar-color:#D35400 rgba(245,240,230,.1);scrollbar-width:thin}
.episodes-horizontal-scroll::-webkit-scrollbar {height:6px}
.episodes-horizontal-scroll::-webkit-scrollbar-track {background:rgba(245,240,230,.08)}
.episodes-horizontal-scroll::-webkit-scrollbar-thumb {background:#D35400;border-radius:3px}
.episode-card {background:rgba(245,240,230,.05);border:1px solid rgba(245,240,230,.12);border-radius:4px;padding:18px 16px;display:flex;flex-direction:column;gap:10px;position:relative;min-height:180px;transition:transform .2s,border-color .2s}
.episode-card:hover {transform:translateY(-4px);border-color:#D35400}
.episode-number {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:1.6rem;font-weight:700;color:#D35400;opacity:.8;line-height:1}
.episode-title {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:1rem;font-weight:700;color:#F5F0E6;letter-spacing:.04em}
.episode-summary {font-size:.78rem;color:#C8BFB0;line-height:1.7;flex:1}
.episode-duration {font-size:.72rem;color:#8A9384;border-top:1px solid rgba(245,240,230,.08);padding-top:8px;letter-spacing:.05em}
.comments-fragment {padding-top:clamp(24px,4vw,40px);padding-bottom:clamp(24px,4vw,40px);border-top:1px solid rgba(245,240,230,.1)}
.comments-masonry {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.comment-bubble {background:rgba(245,240,230,.05);border:1px solid rgba(245,240,230,.1);padding:16px 18px;border-radius:0 8px 8px 8px;position:relative;transform:rotate(-.5deg);transition:transform .2s}
.comment-bubble:nth-child(2n) {transform:rotate(.4deg)}
.comment-bubble:hover {transform:rotate(0deg)}
.comment-bubble::before {content:"";position:absolute;top:-8px;left:12px;width:16px;height:16px;background:inherit;border-left:1px solid rgba(245,240,230,.1);border-top:1px solid rgba(245,240,230,.1);transform:rotate(45deg)}
.comment-nickname {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:.82rem;font-weight:700;color:#D35400;display:block;margin-bottom:8px;letter-spacing:.05em}
.comment-text {font-size:.82rem;color:#D8D2C5;line-height:1.7}
.recommend-region {padding-top:clamp(24px,4vw,40px);padding-bottom:clamp(24px,4vw,40px);border-top:1px solid rgba(245,240,230,.1)}
.region-2 {background:rgba(245,240,230,.02)}
.recommend-title {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:1.05rem;font-weight:700;letter-spacing:.1em;color:#F5F0E6;margin-bottom:18px;display:flex;align-items:center;gap:10px}
.recommend-title::before {content:"";width:20px;height:2px;background:#D35400}
.recommend-grid {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.recommendation-item {display:flex;flex-direction:column;gap:8px;background:rgba(245,240,230,.04);border:1px solid rgba(245,240,230,.1);border-radius:3px;padding:10px;transition:border-color .2s,background .2s;min-width:0}
.recommendation-item:hover {border-color:#D35400;background:rgba(211,84,0,.06)}
.recommend-poster {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:2px;background:#1a242f}
.recommendation-item [data-runtime="name"] {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",serif;font-size:.82rem;font-weight:700;color:#F5F0E6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recommendation-item [data-runtime="blurb"] {font-size:.72rem;color:#C8BFB0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.recommend-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.region-2 .recommendation-item {flex-direction:row;align-items:flex-start;padding:8px}
.region-2 .recommend-poster {width:88px;height:110px;object-fit:cover;flex-shrink:0;aspect-ratio:auto}
.region-2 .recommendation-item [data-runtime="name"] {white-space:normal;font-size:.85rem}
.region-2 .recommendation-item [data-runtime="blurb"] {font-size:.72rem}
.recommend-tags {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.region-3 .recommendation-item {flex-direction:row;align-items:center;padding:8px 12px;border-radius:2px;border-left:3px solid #D35400}
.region-3 .recommend-poster {width:56px;height:56px;object-fit:cover;border-radius:50%;aspect-ratio:auto;border:2px solid rgba(245,240,230,.1)}
.region-3 .recommendation-item [data-runtime="name"] {font-size:.85rem;white-space:normal}
.region-3 .recommendation-item [data-runtime="blurb"] {font-size:.7rem;display:none}
.design-notes-block {padding-top:clamp(24px,4vw,40px);padding-bottom:clamp(24px,4vw,40px);border-top:1px solid rgba(211,84,0,.25);position:relative}
.design-note-text {font-size:.82rem;color:#D8D2C5;line-height:2;max-width:720px;border-left:3px solid rgba(211,84,0,.6);padding-left:16px}
footer {max-width:1280px;margin:0 auto;padding:24px clamp(12px,3vw,32px) 32px;border-top:1px solid rgba(245,240,230,.15)}
.footer-disclaimer {font-size:.72rem;color:#8A9384;line-height:1.8;margin-bottom:20px;padding:12px;background:rgba(245,240,230,.04);border-radius:2px}
.footer-friend-links {display:flex;flex-wrap:wrap;gap:6px 0;align-items:center;margin-bottom:16px}
.friend-links-label {font-size:.75rem;color:#D35400;letter-spacing:.1em;margin-right:12px;white-space:nowrap;font-weight:700}
.runtime-friend-link {font-size:.72rem;color:#C8BFB0;padding:4px 12px;border-right:1px solid rgba(245,240,230,.1);white-space:nowrap}
.runtime-friend-link:hover {color:#D35400}
.footer-links {display:flex;gap:20px;font-size:.8rem}
.footer-links a {color:#C8BFB0}
.footer-links a:hover {color:#D35400}
a[data-contract="site-name"] {color:#F5F0E6}
a[data-contract="site-name"]:hover {color:#D35400}
a.runtime-category {color:#C8BFB0}
a.runtime-category:hover {color:#D35400}
a.recommendation-item {color:#F5F0E6}
a.recommendation-item:hover {color:#F5F0E6}
a.runtime-friend-link {color:#C8BFB0}
a.runtime-friend-link:hover {color:#D35400}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#C8BFB0;text-decoration:none}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#D35400;text-decoration:underline}
@media (max-width:1024px){.recommend-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.details-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.recommend-tags {grid-template-columns:repeat(2,minmax(0,1fr))}
.poster-player-grid {grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}
@media (max-width:768px){body {font-size:13px}
.poster-player-grid {grid-template-columns:1fr}
.poster-wrapper {max-width:320px;margin:0 auto}
.player-wrapper {min-width:0}
.details-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.cast-list {grid-template-columns:1fr}
.comments-masonry {grid-template-columns:1fr}
.recommend-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.recommend-list {grid-template-columns:1fr}
.recommend-tags {grid-template-columns:1fr}
.timeline-wrapper {grid-template-columns:1fr}
.episodes-horizontal-scroll {grid-auto-columns:minmax(220px,75vw)}
.header-inner {flex-direction:column;align-items:flex-start;gap:8px}
.categories-nav {width:100%}
.region-2 .recommendation-item {flex-direction:row}
.region-3 .recommendation-item {flex-direction:row}}
@media (max-width:480px){.recommend-grid {grid-template-columns:1fr}
.details-grid {grid-template-columns:1fr 1fr}
.episode-card {min-height:auto}
.poster-wrapper {max-width:280px}
.player-wrapper video {aspect-ratio:16/9}
.player-controls {gap:4px}
.player-controls button {padding:3px 6px;font-size:.65rem}
.movie-title {font-size:1.3rem}
.footer-friend-links {flex-direction:column;align-items:flex-start}
.friend-links-label {margin-bottom:4px}
.runtime-friend-link {border-right:none}}

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}
