*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {font-size:16px;-webkit-text-size-adjust:100%}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;background:#0d1117;color:#c9d1d9;line-height:1.6;font-weight:400}
img, video {display:block;max-width:100%;height:auto}
a {color:#f0883e;text-decoration:none}
a:hover {color:#ffb07c}
button, input {font:inherit;color:inherit}
h1, h2 {font-weight:600;line-height:1.3}
header {background:#0d1117;border-bottom:1px solid #1f2937;padding:0 24px;position:sticky;top:0;z-index:100}
.site-brand {display:inline-block;font-size:1.4rem;font-weight:700;letter-spacing:.5px;color:#f0883e;padding:16px 0;text-decoration:none}
.site-brand:hover {color:#ffb07c}
.category-bar {display:flex;flex-wrap:wrap;gap:4px 8px;padding-bottom:12px;align-items:center}
.runtime-category {font-size:.8rem;font-weight:400;color:#8b949e;padding:4px 10px;border:1px solid #30363d;border-radius:999px;white-space:nowrap;text-decoration:none;transition:all .2s}
.runtime-category:hover {color:#f0883e;border-color:#f0883e;background:rgba(240,136,62,.1)}
.timeline-shell {background:linear-gradient(180deg,#0d1117 0%,#161b22 60%,#1c2128 100%);padding:60px 24px 40px;position:relative;overflow:hidden;border-bottom:1px solid #30363d}
.timeline-track {position:relative;max-width:1100px;margin:0 auto;display:flex;flex-direction:column;gap:0;align-items:center}
.timeline-track::before {content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,#f0883e 20%,#f0883e 80%,transparent);transform:translateX(-50%)}
.timeline-node {position:relative;width:45%;padding:16px 24px;background:rgba(22,27,34,.9);border:1px solid #30363d;border-radius:6px;margin:12px 0;transition:transform .2s,border-color .2s}
.timeline-node:hover {border-color:#f0883e;transform:translateY(-2px)}
.timeline-node::before {content:"";position:absolute;top:50%;width:12px;height:12px;background:#f0883e;border-radius:50%;box-shadow:0 0 8px rgba(240,136,62,.6)}
.timeline-node:nth-child(odd) {align-self:flex-start;margin-right:5%}
.timeline-node:nth-child(odd)::before {right:-40px;transform:translate(50%,-50%)}
.timeline-node:nth-child(even) {align-self:flex-end;margin-left:5%}
.timeline-node:nth-child(even)::before {left:-40px;transform:translate(-50%,-50%)}
.timeline-code {display:block;font-family:"SF Mono",Consolas,"Courier New",monospace;font-size:.9rem;font-weight:700;color:#f0883e;margin-bottom:4px;letter-spacing:1px}
.timeline-label {font-size:.9rem;color:#c9d1d9;font-weight:400}
.trench-silhouette {position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(180deg,transparent,#0d1117 80%);pointer-events:none;opacity:.6}
.movie-overview-block {background:#161b22;border-bottom:1px solid #30363d;padding:24px;display:grid;grid-template-columns:200px 1fr;grid-template-areas:"poster title" "poster synopsis" "poster cast" "poster status" "poster details";gap:16px 24px;max-width:1400px;margin:0 auto}
.poster-frame {grid-area:poster;align-self:start}
.main-poster-img {width:200px;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:6px;border:1px solid #30363d}
.title-group {grid-area:title;align-self:end}
.movie-title {font-size:1.8rem;font-weight:700;color:#f0f0f0;margin-bottom:8px}
.tagline {font-size:1rem;color:#8b949e;font-style:italic;font-weight:300}
.synopsis-panel {grid-area:synopsis;display:grid;grid-template-columns:repeat(2,1fr);gap:12px 20px}
.synopsis-col p {font-size:.85rem;color:#b1bac4;line-height:1.7;text-align:justify}
.cast-panel {grid-area:cast}
.panel-title {font-size:1.1rem;font-weight:600;color:#e6edf3;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #f0883e;display:inline-block}
.cast-scroll {display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:#30363d #161b22}
.cast-scroll::-webkit-scrollbar {height:6px}
.cast-scroll::-webkit-scrollbar-track {background:#161b22}
.cast-scroll::-webkit-scrollbar-thumb {background:#30363d;border-radius:3px}
.cast-card {flex:0 0 auto;background:#1c2128;border:1px solid #30363d;border-radius:6px;padding:16px 20px;text-align:center;min-width:90px;transition:border-color .2s,background .2s}
.cast-card:hover {border-color:#f0883e;background:#21262d}
.actor-name {font-size:.9rem;font-weight:500;color:#c9d1d9;white-space:nowrap}
.episode-status-group {grid-area:status;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.status-label {background:#f0883e;color:#0d1117;font-weight:700;font-size:.85rem;padding:4px 12px;border-radius:999px}
.status-current {font-size:.85rem;color:#8b949e;font-weight:400}
.details-grid {grid-area:details;display:grid;grid-template-columns:repeat(4,1fr);gap:8px 16px;border-top:1px solid #30363d;padding-top:12px}
.detail-item {display:flex;flex-direction:column;gap:2px}
.detail-key {font-size:.75rem;color:#8b949e;text-transform:uppercase;letter-spacing:.5px}
.detail-value {font-size:.85rem;color:#e6edf3;font-weight:500}
.player-wrapper {max-width:1000px;margin:24px auto;padding:0 24px;position:relative}
.player-wrapper video {width:100%;aspect-ratio:16/9;background:#000;border-radius:8px;border:1px solid #30363d;display:block}
.player-controls {display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px;padding:12px;background:#1c2128;border-radius:8px;border:1px solid #30363d}
.player-controls button {background:#21262d;border:1px solid #30363d;color:#c9d1d9;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}
.player-controls button:hover {background:#30363d;border-color:#f0883e;color:#f0883e}
.player-controls input[type="range"] {flex:1;min-width:120px;accent-color:#f0883e}
.episodes-collection {max-width:1400px;margin:0 auto;padding:24px;border-bottom:1px solid #30363d}
.episode-list {display:grid;grid-template-columns:repeat(2,1fr);gap:4px 24px}
.episode-row {display:grid;grid-template-columns:40px 1fr 2fr 60px;gap:12px;align-items:baseline;padding:10px 12px;border-radius:4px;transition:background .2s;border-bottom:1px solid #21262d}
.episode-row:hover {background:#21262d}
.eps-num {font-family:"SF Mono",Consolas,"Courier New",monospace;font-size:1.1rem;font-weight:700;color:#f0883e}
.eps-title {font-size:.95rem;font-weight:600;color:#e6edf3}
.eps-summary {font-size:.8rem;color:#8b949e;line-height:1.5}
.eps-duration {font-family:"SF Mono",Consolas,"Courier New",monospace;font-size:.8rem;color:#8b949e;text-align:right}
.comments-section {max-width:1400px;margin:0 auto;padding:24px;border-bottom:1px solid #30363d}
.comments-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.comment-bubble {background:#1c2128;border:1px solid #30363d;border-radius:12px;padding:16px;position:relative;transition:border-color .2s}
.comment-bubble:hover {border-color:#f0883e}
.comment-bubble::before {content:"";position:absolute;top:-6px;left:24px;width:12px;height:12px;background:#1c2128;border-left:1px solid #30363d;border-top:1px solid #30363d;transform:rotate(45deg)}
.comment-nick {display:block;font-size:.8rem;font-weight:600;color:#f0883e;margin-bottom:8px}
.comment-text {font-size:.85rem;color:#b1bac4;line-height:1.6}
.recommend-region {max-width:1400px;margin:0 auto;padding:24px;border-bottom:1px solid #30363d}
.rec-title {font-size:1.1rem;font-weight:600;color:#e6edf3;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #f0883e;display:inline-block}
.rec-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}
a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:8px;background:#1c2128;border:1px solid #30363d;border-radius:8px;padding:12px;transition:transform .2s,border-color .2s,box-shadow .2s;text-decoration:none}
a[data-runtime="recommendation"]:hover {transform:translateY(-4px);border-color:#f0883e;box-shadow:0 4px 16px rgba(240,136,62,.15)}
a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:4px;background:#0d1117}
a[data-runtime="recommendation"] [data-runtime="name"] {font-size:.85rem;font-weight:600;color:#e6edf3;line-height:1.4}
a[data-runtime="recommendation"] [data-runtime="blurb"] {font-size:.75rem;color:#8b949e;line-height:1.4;flex-grow:1}
footer {background:#0d1117;padding:32px 24px 48px;border-top:1px solid #30363d}
.footer-disclaimer {font-size:.75rem;color:#6e7681;max-width:1000px;margin:0 auto 24px;line-height:1.6;text-align:center}
.friend-links {max-width:1000px;margin:0 auto 24px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:center}
.friend-label {font-size:.85rem;color:#8b949e;font-weight:600}
.runtime-friend-link {font-size:.8rem;color:#8b949e;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.runtime-friend-link:hover {color:#f0883e;border-bottom-color:#f0883e}
.footer-links {max-width:1000px;margin:0 auto;display:flex;gap:24px;justify-content:center}
.footer-links a {font-size:.85rem;color:#8b949e;text-decoration:none;transition:color .2s}
.footer-links a:hover {color:#f0883e}
video.is-muted {opacity:.8}
video.theater-mode {max-width:100%!important;border-radius:0!important}
video.lights-off {filter:brightness(.5)!important}
@media (max-width:1024px){.movie-overview-block {grid-template-columns:160px 1fr;grid-template-areas:"poster title" "poster synopsis" "poster cast" "poster status" "poster details"}
.main-poster-img {width:160px}
.details-grid {grid-template-columns:repeat(3,1fr)}
.episode-list {grid-template-columns:1fr}
.timeline-node {width:50%}}
@media (max-width:768px){header {padding:0 16px}
.timeline-shell {padding:40px 16px}
.timeline-track::before {left:16px;transform:none}
.timeline-node {width:100%!important;align-self:flex-start!important;margin-left:0!important;margin-right:0!important;padding-left:40px}
.timeline-node::before {left:16px!important;right:auto!important;transform:translate(-50%,-50%)!important}
.timeline-node:nth-child(even) {margin-left:0}
.movie-overview-block {grid-template-columns:1fr;grid-template-areas:"poster" "title" "synopsis" "cast" "status" "details";gap:16px}
.poster-frame {max-width:180px}
.main-poster-img {width:100%}
.synopsis-panel {grid-template-columns:1fr}
.details-grid {grid-template-columns:repeat(2,1fr)}
.episode-row {grid-template-columns:32px 1fr 60px}
.eps-summary {grid-column:2/4;grid-row:2}
.comments-grid {grid-template-columns:1fr}
.rec-row {grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.player-wrapper {padding:0 16px}
.player-controls button {padding:4px 8px;font-size:.75rem}}
@media (max-width:480px){html {font-size:14px}
.category-bar {gap:2px 4px}
.runtime-category {padding:2px 8px;font-size:.7rem}
.movie-title {font-size:1.4rem}
.tagline {font-size:.85rem}
.details-grid {grid-template-columns:1fr 1fr}
.episode-row {grid-template-columns:28px 1fr 50px;gap:8px}
.eps-duration {font-size:.7rem}
.rec-row {grid-template-columns:1fr 1fr;gap:12px}
a[data-runtime="recommendation"] {padding:8px}
.footer-links {flex-direction:column;align-items:center;gap:12px}
.player-controls input[type="range"] {min-width:80px}
.cast-scroll {-webkit-overflow-scrolling:touch}}

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}
