*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#2e2a24;color:#e8e0d0;line-height:1.6;font-size:15px}
.site-name {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:1.8rem;color:#e8d5b0;text-decoration:none;letter-spacing:2px;font-weight:600}
.site-name:hover {color:#f0e6c8}
.categories-shell {display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.runtime-category {display:inline-block;padding:6px 12px;background:#4a4038;color:#d8c8a8;text-decoration:none;border-radius:4px;font-size:0.85rem;white-space:nowrap;border:1px solid #5a4e42;transition:background .2s}
.runtime-category:hover {background:#5a4e42;color:#f0e6c8}
header {display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#3a342e;border-bottom:1px solid #4a4038;position:sticky;top:0;z-index:100}
main {max-width:1200px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:24px}
.hero-overview {display:grid;grid-template-columns:minmax(0,1fr) 1.2fr;gap:24px;background:#3e3830;border-radius:12px;padding:20px;border:1px solid #4a4038;box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.hero-media {display:flex;flex-direction:column;gap:12px}
.poster-frame {width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:8px;border:1px solid #5a4e42}
.poster-frame img {width:100%;height:100%;object-fit:cover;display:block}
.player-wrapper {width:100%;max-width:none;background:#1a1815;border-radius:8px;border:1px solid #5a4e42;overflow:hidden}
.player-wrapper video {display:block;background:#000}
.player-control-bar {display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:#2a2622;border-top:1px solid #5a4e42}
.player-control-bar button {background:#4a4038;color:#e8d5b0;border:1px solid #5a4e42;padding:4px 10px;font-size:0.8rem;border-radius:4px;cursor:pointer;transition:background .2s}
.player-control-bar button:hover {background:#5a4e42;color:#f0e6c8}
.hero-text-group {display:flex;flex-direction:column;gap:16px}
.movie-title {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:2rem;color:#f0e6c8;line-height:1.2;letter-spacing:1px}
.tagline {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:1.1rem;color:#c8b898;font-style:italic;border-left:3px solid #8b7355;padding-left:12px}
.cast-section {display:flex;flex-direction:column;gap:8px}
.section-subhead {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:0.9rem;color:#b8a888;text-transform:uppercase;letter-spacing:2px;border-bottom:1px solid #4a4038;padding-bottom:4px}
.actor-card-row {display:flex;gap:8px;flex-wrap:wrap}
.actor-card {background:#4a4038;border:1px solid #5a4e42;border-radius:50px;padding:4px 14px;display:inline-flex;align-items:center;transition:transform .2s,background .2s}
.actor-card:hover {background:#5a4e42;transform:translateY(-2px)}
.actor-name {font-size:0.9rem;color:#e8d5b0;white-space:nowrap}
.synopsis-section {display:flex;flex-direction:column;gap:8px}
.synopsis-book {background:linear-gradient(135deg,#3a342e 0%,#453d34 100%);border-left:3px solid #8b7355;border-right:1px solid #4a4038;padding:12px 16px;border-radius:4px;position:relative}
.synopsis-book::before {content:"";position:absolute;top:0;left:8px;right:8px;height:1px;background:#5a4e42}
.synopsis-paragraph {font-size:0.9rem;color:#d8c8a8;text-align:justify;margin-bottom:8px;text-indent:2em}
.synopsis-paragraph:last-child {margin-bottom:0}
.episode-status {display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.status-total, .status-current, .status-update {font-size:0.8rem;padding:4px 10px;border-radius:4px;background:#4a4038;color:#d8c8a8;border:1px solid #5a4e42}
.status-current {background:#6b5a44;color:#f0e6c8}
.status-update {background:#3a342e;color:#b8a888}
.movie-details {display:flex;flex-direction:column;gap:4px;background:#3a342e;border-radius:8px;padding:12px;border:1px solid #4a4038}
.detail-row {display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid #4a4038;font-size:0.85rem}
.detail-row:last-child {border-bottom:none}
.detail-row dt {color:#b8a888;font-weight:600}
.detail-row dd {color:#e0d4c0;margin:0}
.timeline-section {display:flex;flex-direction:column;gap:16px;background:#3e3830;border-radius:12px;padding:20px;border:1px solid #4a4038}
.section-title {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:1.5rem;color:#f0e6c8;letter-spacing:1px;border-bottom:1px solid #5a4e42;padding-bottom:8px}
.timeline-vertical {display:flex;flex-direction:column;gap:0;position:relative;padding-left:24px}
.timeline-vertical::before {content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#8b7355,#5a4e42)}
.timeline-item {position:relative;padding:8px 0 8px 16px;display:flex;gap:12px;align-items:flex-start}
.timeline-item::before {content:"";position:absolute;left:-20px;top:14px;width:10px;height:10px;border-radius:50%;background:#8b7355;border:2px solid #3e3830}
.timeline-item:nth-child(odd)::before {background:#b8a888}
.timecode {font-family:Georgia,"Times New Roman",serif;font-size:0.85rem;color:#c8b898;background:#4a4038;border-radius:4px;padding:2px 8px;white-space:nowrap;min-width:52px;text-align:center}
.timeline-label {font-size:0.9rem;color:#e0d4c0;line-height:1.4}
.episodes-section {display:flex;flex-direction:column;gap:16px;background:#3e3830;border-radius:12px;padding:20px;border:1px solid #4a4038}
.episode-card-scroll {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.episode-card {background:#453d34;border:1px solid #5a4e42;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding-bottom:12px;transition:transform .2s,box-shadow .2s}
.episode-card:hover {transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.episode-thumb {width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#5a4e42 0%,#3a342e 100%);border-bottom:1px solid #5a4e42;position:relative}
.episode-thumb::after {content:"剧集缩略图";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#8b7355;font-size:0.8rem}
.episode-meta {display:flex;justify-content:space-between;padding:0 12px;font-size:0.75rem;color:#b8a888}
.ep-number {color:#d8c8a8;font-weight:600}
.ep-duration {color:#8b7355}
.ep-title {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:1.1rem;color:#f0e6c8;padding:0 12px;margin:0}
.ep-summary {font-size:0.85rem;color:#c8b898;padding:0 12px;line-height:1.4;flex-grow:1}
.comments-section {display:flex;flex-direction:column;gap:16px;background:#3e3830;border-radius:12px;padding:20px;border:1px solid #4a4038}
.comment-masonry {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;align-items:start}
.comment-bubble {background:#453d34;border:1px solid #5a4e42;border-radius:16px 16px 16px 4px;padding:12px 16px;display:flex;flex-direction:column;gap:8px;position:relative}
.comment-bubble::before {content:"";position:absolute;bottom:0;left:16px;width:12px;height:12px;background:#453d34;border-bottom:1px solid #5a4e42;border-left:1px solid #5a4e42;transform:rotate(45deg);border-radius:2px}
.nickname {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:0.9rem;color:#d8c8a8;font-weight:600}
.comment-text {font-size:0.85rem;color:#c8b898;line-height:1.4}
.recommend-region {display:flex;flex-direction:column;gap:16px;background:#3e3830;border-radius:12px;padding:20px;border:1px solid #4a4038}
.region-title {font-family:Georgia,"Times New Roman","Songti SC","SimSun",serif;font-size:1.2rem;color:#e8d5b0;letter-spacing:1px;border-bottom:1px solid #5a4e42;padding-bottom:8px}
.rec-block-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.rec-item {display:flex;flex-direction:column;gap:4px;background:#453d34;border:1px solid #5a4e42;border-radius:8px;overflow:hidden;padding-bottom:8px;text-decoration:none;color:#e0d4c0;transition:transform .2s,box-shadow .2s}
.rec-item:hover {transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,0.3)}
.rec-item img {width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#2a2622}
.rec-item span[data-runtime="name"] {font-size:0.9rem;font-weight:600;color:#e8d5b0;padding:0 8px}
.rec-item span[data-runtime="blurb"] {font-size:0.75rem;color:#b8a888;padding:0 8px;line-height:1.3}
.footer-disclaimer {font-size:0.75rem;color:#8b7355;text-align:center;padding:12px 16px;border-top:1px solid #4a4038}
.footer-friend-links {display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 16px;justify-content:center}
.friend-label {font-size:0.85rem;color:#b8a888;font-weight:600;margin-right:8px}
.runtime-friend-link {font-size:0.8rem;color:#c8b898;text-decoration:none;padding:4px 8px;border:1px solid #5a4e42;border-radius:4px;transition:background .2s}
.runtime-friend-link:hover {background:#5a4e42;color:#f0e6c8}
.footer-friend-links a:last-of-type {margin-bottom:0}
footer {background:#3a342e;border-top:1px solid #4a4038;padding:20px 16px;display:flex;flex-direction:column;gap:12px;align-items:center}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:0.85rem;color:#c8b898;text-decoration:none;padding:4px 8px;border:1px solid transparent;border-radius:4px}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {background:#4a4038;color:#f0e6c8;border-color:#5a4e42}
.theater-mode video {width:100%!important;aspect-ratio:16/9!important}
.lights-dim .player-wrapper {background:#000}
.lights-dim .player-wrapper video {opacity:0.7}
.play video {cursor:pointer}
.fullscreen .player-wrapper {position:fixed;inset:0;z-index:1000;background:#000;border:none;border-radius:0;display:flex;align-items:center;justify-content:center}
.fullscreen .player-wrapper video {width:100%!important;height:100%!important;aspect-ratio:auto!important}
.fullscreen .player-control-bar {position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,0.8)}
.mute video {filter:brightness(0.8)}
.pip video {background:#000}
.speed video {transition:filter 0.2s}
.speed video {filter:saturate(1.2)}
.progress video {cursor:crosshair}
.volume video {filter:contrast(1.1)}
.click video {cursor:pointer}
.player-control-bar button:focus {outline:2px solid #8b7355}
.player-control-bar button:active {background:#6b5a44;transform:scale(0.95)}
@media (max-width:900px){.hero-overview {grid-template-columns:1fr;gap:16px}
.hero-media {order:2}
.hero-text-group {order:1}
.actor-card-row {flex-wrap:wrap}
.comment-masonry {grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.rec-block-row {grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}
@media (max-width:600px){header {flex-direction:column;gap:8px;padding:10px}
.site-name {font-size:1.4rem}
.categories-shell {justify-content:center}
.movie-title {font-size:1.5rem}
.hero-overview {padding:12px;gap:12px}
.poster-frame {max-width:320px;margin:0 auto}
.player-wrapper {min-width:0}
.player-control-bar {flex-wrap:wrap;justify-content:center}
.player-control-bar button {font-size:0.7rem;padding:4px 6px}
.timeline-vertical {padding-left:16px}
.timeline-item {padding-left:8px}
.timeline-item::before {left:-14px;width:8px;height:8px}
.timecode {font-size:0.75rem;min-width:44px}
.episode-card-scroll {grid-template-columns:1fr}
.comment-masonry {grid-template-columns:1fr}
.rec-block-row {grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.episode-status {flex-direction:column;align-items:flex-start}
.movie-details {font-size:0.8rem}
.detail-row {flex-direction:column;gap:2px}
.footer-friend-links {flex-direction:column;align-items:center}
.footer-disclaimer {text-align:center;padding:8px}}
@media (max-width:400px){main {padding:8px}
.hero-overview {padding:8px}
.poster-frame {max-width:240px}
.rec-block-row {grid-template-columns:1fr}
.episode-card-scroll {grid-template-columns:1fr}
.player-control-bar {gap:4px}
.player-control-bar button {padding:4px 4px;font-size:0.65rem}
.timeline-item {flex-direction:column;gap:4px}
.timecode {min-width:auto}
.movie-details {font-size:0.75rem}}

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}
