*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {font-size:16px;-webkit-text-size-adjust:100%}
body {font-family:"PingFang SC","Microsoft YaHei","Heiti SC",sans-serif;background:#1a1714;color:#c9c2b8;line-height:1.5;overflow-x:hidden}
img, video {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
ul {list-style:none}
button {font:inherit;cursor:pointer;border:none;background:none;color:inherit}
h1, h2 {font-family:"Songti SC","SimSun","Noto Serif SC",serif;font-weight:600;line-height:1.3}
h1 {font-size:1.9rem;letter-spacing:0.06em}
h2 {font-size:1.15rem;letter-spacing:0.14em;text-transform:uppercase;color:#d9c9a3;border-bottom:1px solid #3a342c;padding-bottom:0.35rem;margin-bottom:0.9rem}
p {font-size:0.92rem}
main {max-width:1180px;margin:0 auto;padding:0 1.1rem 3rem}
section {margin-bottom:2.2rem}
header {display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;padding:1.2rem 1.4rem;background:#211d19;border-bottom:1px solid #3a342c;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px rgba(0,0,0,0.4)}
.site-brand {font-family:"Songti SC","SimSun",serif;font-size:1.4rem;font-weight:700;color:#e6d5b8;letter-spacing:0.2em;transition:color 0.3s;white-space:nowrap}
.site-brand:hover {color:#f0e6d2}
.categories-nav {display:flex;gap:0.4rem;flex-wrap:wrap;margin-left:auto}
.categories-nav .runtime-category {color:#a89f92;font-size:0.82rem;padding:0.3rem 0.6rem;border-radius:2px;transition:background 0.3s,color 0.3s;white-space:nowrap}
.categories-nav .runtime-category:hover {background:#3a342c;color:#e6d5b8}
.movie-overview-panel {background:#241f1a;border:1px solid #3a342c;border-radius:6px;padding:1.4rem 1.2rem;margin:1.4rem 0 2.4rem;display:grid;grid-template-columns:220px minmax(0,1fr);gap:1.4rem;box-shadow:0 4px 18px rgba(0,0,0,0.5)}
.poster-wrapper {width:220px;align-self:start}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,0.5)}
.overview-content {min-width:0;display:flex;flex-direction:column;gap:1.1rem}
.movie-title {color:#ead9bd;margin-bottom:0.2rem}
.movie-tagline {color:#b0a494;font-size:0.95rem;font-style:italic;letter-spacing:0.04em;border-left:2px solid #c9a86a;padding-left:0.7rem;margin-bottom:0.4rem}
.player-shell {width:100%;background:#0f0e0c;border-radius:4px;overflow:hidden;border:1px solid #3a342c;position:relative}
.player-shell video {width:100%;display:block}
.player-controls {display:flex;flex-wrap:wrap;gap:0.3rem;padding:0.5rem 0.6rem;background:#1a1714;border-top:1px solid #2e2923}
.player-controls button {font-size:0.75rem;color:#a89f92;border:1px solid #3a342c;padding:0.25rem 0.6rem;border-radius:2px;transition:background 0.2s,color 0.2s}
.player-controls button:hover {background:#3a342c;color:#e6d5b8}
.theater-mode video {width:100%}
.lights-off {filter:brightness(0.9)}
.synopsis-block {background:none;border-left:3px solid #c9a86a;padding-left:0.9rem}
.synopsis-block .section-title {border-bottom:none;padding-bottom:0;margin-bottom:0.4rem;color:#d9c9a3}
.synopsis-paragraph {font-size:0.9rem;color:#b8aea1;margin-bottom:0.5rem;line-height:1.65}
.cast-block {margin-top:0.9rem}
.cast-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:0.8rem}
.cast-card {text-align:center;background:transparent;padding:0.4rem}
.cast-photo {width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:3px;filter:grayscale(1) contrast(1.15) brightness(0.92);margin-bottom:0.4rem;border:1px solid #3a342c;transition:filter 0.4s}
.cast-photo:hover {filter:grayscale(0.6) contrast(1.05)}
.cast-name {display:block;font-size:0.85rem;color:#d9c9a3;letter-spacing:0.08em}
.episode-status-block {margin:0.2rem 0 0.2rem}
.current-info {display:inline-block;background:#2e2923;border-left:3px solid #c9a86a;padding:0.4rem 0.8rem;font-size:0.88rem;color:#d9c9a3}
.details-block {margin-top:0.4rem}
.detail-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.25rem 1.2rem;font-size:0.85rem}
.detail-list li {display:flex;gap:0.5rem;padding:0.35rem 0;border-bottom:1px dashed #2e2923;color:#b8aea1}
.detail-label {color:#8a8075;min-width:4.5em;flex-shrink:0}
.episodes-section {margin-bottom:2rem}
.episode-card-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:0.7rem}
.episode-card {background:#241f1a;border:1px solid #3a342c;border-radius:4px;padding:0.7rem 0.8rem;position:relative;transition:transform 0.25s,border-color 0.25s;cursor:default;height:auto;align-self:start}
.episode-card:hover {border-color:#c9a86a;transform:translateY(-2px)}
.episode-number {display:block;font-size:1rem;font-weight:700;color:#c9a86a;margin-bottom:0.2rem;font-family:"Songti SC",serif}
.episode-title {display:block;font-size:1rem;color:#ead9bd;margin-bottom:0.3rem;font-weight:600}
.episode-summary {font-size:0.78rem;color:#9e9488;line-height:1.4;max-height:0;overflow:hidden;transition:max-height 0.35s ease,margin 0.3s;margin:0}
.episode-card:hover .episode-summary {max-height:90px;margin-top:0.4rem}
.episode-duration {display:block;font-size:0.72rem;color:#7d746a;margin-top:0.35rem;letter-spacing:0.02em}
.timeline-section {margin-bottom:2rem}
.timeline-vertical {position:relative;padding-left:1.6rem;margin-left:0.6rem}
.timeline-vertical::before {content:"";position:absolute;left:6px;top:4px;bottom:4px;width:1px;background:#4a4238}
.timeline-item {position:relative;padding:0.5rem 0 0.9rem 0.8rem}
.timeline-item::before {content:"";position:absolute;left:-1.55rem;top:0.75rem;width:9px;height:9px;border-radius:50%;background:#c9a86a;border:2px solid #1a1714;box-shadow:0 0 0 1px #c9a86a}
.timeline-timecode {display:block;font-size:0.78rem;color:#c9a86a;font-weight:600;letter-spacing:0.06em;margin-bottom:0.15rem}
.timeline-label {font-size:0.9rem;color:#c9c2b8;display:block;line-height:1.5}
.comments-section {margin-bottom:2rem}
.comments-scroll {display:flex;gap:1rem;overflow-x:auto;padding:0.8rem 0.4rem 1.2rem;scroll-snap-type:x proximity}
.comment-card {flex:0 0 220px;background:#f5efdc;border-radius:3px;padding:0.9rem 1rem;box-shadow:2px 3px 8px rgba(0,0,0,0.35);scroll-snap-align:start;transition:transform 0.3s}
.comment-card:hover {transform:rotate(0deg) scale(1.02) !important}
.comment-nickname {display:block;font-size:0.8rem;font-weight:700;color:#5a4e3e;margin-bottom:0.5rem;border-bottom:1px dashed #b3a688;padding-bottom:0.3rem}
.comment-text {font-size:0.83rem;color:#4a4033;line-height:1.5;font-family:"Heiti SC","Microsoft YaHei",sans-serif}
.recommendation-region {margin-bottom:2.2rem}
.recommendation-title {color:#d9c9a3;font-size:1.05rem;margin-bottom:0.9rem;border-bottom:1px solid #3a342c;padding-bottom:0.4rem}
.recommendation-list {display:grid;gap:0.9rem}
.recommendation-item {background:#241f1a;border:1px solid #3a342c;border-radius:4px;padding:0.7rem;display:flex;flex-direction:column;gap:0.4rem;transition:border-color 0.3s,background 0.3s;align-self:start;height:auto}
.recommendation-item:hover {border-color:#c9a86a;background:#2c2620}
.recommendation-item img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:3px;background:#1a1714}
.recommendation-item span[data-runtime="name"] {font-size:0.92rem;font-weight:600;color:#ead9bd;line-height:1.3}
.recommendation-item span[data-runtime="blurb"] {font-size:0.78rem;color:#9e9488;line-height:1.4}
.region-horizontal .recommendation-list {grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.region-vertical .recommendation-list {grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.region-vertical .recommendation-item {flex-direction:row;align-items:center;gap:0.6rem}
.region-vertical .recommendation-item img {width:100px;height:auto;aspect-ratio:2/3;flex-shrink:0}
.region-vertical .recommendation-item span[data-runtime="name"] {font-size:0.9rem}
.region-vertical .recommendation-item span[data-runtime="blurb"] {font-size:0.75rem}
.region-grid .recommendation-list {grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
footer {background:#211d19;border-top:1px solid #3a342c;padding:1.4rem 1.4rem 2rem;color:#8a8075;font-size:0.8rem;line-height:1.6}
.footer-links {display:flex;gap:1rem;margin-bottom:0.8rem}
.footer-links a {color:#a89f92;transition:color 0.3s}
.footer-links a:hover {color:#e6d5b8}
.disclaimer {margin-bottom:0.8rem;color:#7d746a;font-size:0.75rem;max-width:900px}
.friend-links {display:flex;flex-wrap:wrap;gap:0.3rem 1rem;align-items:center}
.friend-links-label {color:#8a8075}
.runtime-friend-link {color:#9e9488;font-size:0.78rem;transition:color 0.3s}
.runtime-friend-link:hover {color:#e6d5b8}
@media (max-width: 900px){.movie-overview-panel {grid-template-columns:170px minmax(0,1fr);padding:1.1rem}
.poster-wrapper {width:170px}
.cast-grid {grid-template-columns:repeat(2,1fr)}
.region-vertical .recommendation-list {grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}
@media (max-width: 640px){body {line-height:1.4}
main {padding:0 0.8rem 2rem}
header {padding:0.9rem 0.8rem;gap:0.7rem}
.site-brand {font-size:1.15rem}
.categories-nav {margin-left:0;width:100%}
.movie-overview-panel {grid-template-columns:1fr;padding:0.9rem;gap:0.9rem}
.poster-wrapper {width:100%;max-width:280px;margin:0 auto}
.main-poster-img {aspect-ratio:2/3;width:100%}
.movie-title {font-size:1.4rem}
.movie-tagline {font-size:0.85rem}
.player-shell {width:100%}
.player-controls {gap:0.2rem;padding:0.4rem}
.player-controls button {font-size:0.7rem;padding:0.2rem 0.45rem}
.synopsis-paragraph {font-size:0.85rem}
.cast-grid {grid-template-columns:repeat(2,1fr);gap:0.5rem}
.detail-list {grid-template-columns:1fr}
.episode-card-row {grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:0.5rem}
.comment-card {flex-basis:180px}
.episode-summary {max-height:none;margin-top:0.3rem;opacity:1}
.region-vertical .recommendation-item {flex-direction:column;align-items:stretch}
.region-vertical .recommendation-item img {width:100%;aspect-ratio:16/9}
.recommendation-list {grid-template-columns:1fr 1fr}
.region-horizontal .recommendation-list, .region-vertical .recommendation-list, .region-grid .recommendation-list {grid-template-columns:1fr 1fr}
.recommendation-item {padding:0.5rem}
.recommendation-item img {aspect-ratio:16/9}
.footer-links {flex-wrap:wrap}}
@media (max-width: 380px){.recommendation-list, .region-horizontal .recommendation-list, .region-vertical .recommendation-list, .region-grid .recommendation-list {grid-template-columns:1fr}
.episode-card-row {grid-template-columns:1fr 1fr}
.cast-grid {grid-template-columns:1fr 1fr}
.detail-list {grid-template-columns:1fr}
.poster-wrapper {max-width:220px}
.categories-nav {gap:0.2rem}
.categories-nav .runtime-category {font-size:0.75rem;padding:0.2rem 0.4rem}}

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}
