*, * {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;background:#14161a;color:#e8e6e3;line-height:1.5;font-size:14px;overflow-x:hidden}
img, video {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
ul {list-style:none}
button {font:inherit;color:inherit;background:none;border:none;cursor:pointer}
.site-header {position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:rgba(20,22,26,.92);backdrop-filter:blur(10px);border-bottom:2px solid #ff5a1e;box-shadow:0 2px 12px rgba(0,0,0,.5)}
.site-name-link {font-size:1.3rem;font-weight:900;letter-spacing:.5px;color:#ff5a1e;text-transform:uppercase;font-family:"SF Mono",Consolas,monospace;text-decoration:none;transition:color .2s}
.site-name-link:hover {color:#ff8c5a}
.categories-nav {display:flex;gap:2px;flex-wrap:wrap;justify-content:flex-end}
.runtime-category {color:#c8ccd4;font-size:.85rem;font-weight:600;padding:6px 12px;border-radius:2px;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px))}
.runtime-category:hover {background:#ff5a1e;color:#14161a}
.main-content {max-width:1400px;margin:0 auto;padding:0 16px}
.hero-title-block {position:relative;padding-top:0;margin-bottom:0}
.hero-backdrop {position:relative;width:100%;height:0;padding-bottom:42%;overflow:hidden;clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),0 100%)}
.hero-backdrop-img {position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;filter:brightness(.55) saturate(1.2);transform:scale(1.02)}
.hero-title-content {position:relative;z-index:2;margin-top:-90px;padding:20px 24px 24px;background:linear-gradient(180deg,transparent 0%,rgba(20,22,26,.9) 30%,#14161a 100%);text-align:center}
.hero-title {font-size:clamp(2.2rem,6vw,5rem);font-weight:900;letter-spacing:-1px;text-shadow:0 4px 24px rgba(0,0,0,.8);color:#fff;line-height:1.1;margin-bottom:12px}
.hero-title::after {content:"";display:block;width:80px;height:4px;background:linear-gradient(90deg,#ff5a1e,#ffb347);margin:14px auto 0;clip-path:polygon(0 0,100% 0,calc(100% - 8px) 100%,8px 100%)}
.hero-tagline {font-size:clamp(.95rem,2vw,1.25rem);color:#ffb347;font-weight:600;letter-spacing:1px;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.movie-info-grid {display:grid;grid-template-columns:1fr 1fr;gap:0;background:#16191e;border:1px solid #242830;border-top:none;border-radius:0 0 8px 8px;overflow:hidden;margin-bottom:24px;position:relative}
.movie-info-grid::before {content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#ff5a1e,#ff5a1e 20%,#242830 20%,#242830 100%)}
.synopsis-panel {padding:20px 24px;border-right:1px solid #242830}
.section-heading {font-size:1.1rem;font-weight:800;color:#ff5a1e;letter-spacing:.5px;margin-bottom:14px;display:flex;align-items:center;gap:8px;text-transform:uppercase}
.section-heading::before {content:"";display:inline-block;width:14px;height:14px;background:linear-gradient(135deg,#ff5a1e,#ffb347);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.synopsis-columns {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.synopsis-col p {color:#b0b4bc;font-size:.9rem;margin-bottom:10px;line-height:1.6}
.cast-panel {padding:20px 24px;border-bottom:1px solid #242830}
.cast-list {display:flex;flex-wrap:wrap;gap:8px}
.cast-item {padding:6px 14px;background:#1e2229;border:1px solid #2a2f38;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,8px 100%,0 calc(100% - 8px));font-size:.85rem;color:#e8e6e3;transition:background .2s,border-color .2s}
.cast-item:hover {background:#2a2f38;border-color:#ff5a1e}
.episode-status-panel {padding:20px 24px;border-right:1px solid #242830}
.episode-status-meta {display:flex;flex-direction:column;gap:6px}
.episode-current, .episode-total {font-size:.9rem;color:#c8ccd4;font-weight:600}
.episode-current {color:#ff5a1e;font-size:1rem}
.episode-total {color:#8a8f98}
.details-panel {padding:20px 24px}
.details-list {display:grid;grid-template-columns:1fr;gap:0}
.detail-row {display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #1e2229;font-size:.85rem}
.detail-row:last-child {border-bottom:none}
.detail-row dt {color:#8a8f98;font-weight:500}
.detail-row dd {color:#e8e6e3;font-weight:700;text-align:right}
.player-section {margin-bottom:24px}
.player-wrapper {position:relative;max-width:100%;background:#0c0d10;border:1px solid #242830;border-radius:6px;overflow:hidden}
.player-wrapper video {width:100%;aspect-ratio:16/9;background:#000}
.player-controls-bar {display:flex;flex-wrap:wrap;gap:0;padding:8px 12px;background:#16191e;border-top:1px solid #242830}
.player-control-btn {flex:0 0 auto;padding:6px 12px;font-size:.8rem;font-weight:600;color:#c8ccd4;background:#1e2229;border:1px solid #2a2f38;margin-right:6px;margin-bottom:4px;clip-path:polygon(0 0,calc(100% - 6px) 0,100% 6px,100% 100%,6px 100%,0 calc(100% - 6px));transition:background .2s,color .2s}
.player-control-btn:hover {background:#ff5a1e;color:#14161a}
.player-wrapper.theater-mode {max-width:100%;position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;border-radius:0;border:none;background:#000}
.player-wrapper.theater-mode video {height:100%;aspect-ratio:auto}
.player-wrapper.theater-mode .player-controls-bar {background:rgba(0,0,0,.8);position:fixed;bottom:0;left:0;right:0}
.player-wrapper.lights-off {position:relative}
.player-wrapper.lights-off::after {content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);pointer-events:none}
.tagline-section {padding:16px 0;margin-bottom:8px;text-align:center}
.tagline-text {font-size:1.1rem;font-weight:800;color:#ff5a1e;letter-spacing:1px;text-transform:uppercase;text-shadow:0 0 20px rgba(255,90,30,.3)}
.episodes-section, .timeline-section, .comments-section, .recommendations-region {margin-bottom:28px}
.episodes-section .section-heading, .timeline-section .section-heading, .comments-section .section-heading, .recommendations-region .section-heading {margin-bottom:14px}
.episode-cards-wrapper {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.episode-card {position:relative;background:#1a1d22;border:1px solid #242830;padding:16px;border-left:3px solid #3a3f48;transition:border-color .2s,transform .2s;display:flex;flex-direction:column;gap:8px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.episode-card:hover {border-left-color:#ff5a1e;transform:translateY(-2px)}
.episode-card-current {border-left-color:#ff5a1e;background:linear-gradient(135deg,#1f1a16,#1a1d22);box-shadow:0 0 20px rgba(255,90,30,.15)}
.episode-card-current::before {content:"▶ 当前";position:absolute;top:10px;right:10px;font-size:.7rem;color:#ff5a1e;font-weight:800;letter-spacing:1px}
.episode-number {font-family:"SF Mono",Consolas,monospace;font-size:1.6rem;font-weight:900;color:#ff5a1e;line-height:1}
.episode-title {font-size:1rem;font-weight:800;color:#fff}
.episode-summary {font-size:.8rem;color:#8a8f98;line-height:1.5;flex-grow:1}
.episode-duration {font-family:"SF Mono",Consolas,monospace;font-size:.75rem;color:#5a5f68;text-transform:uppercase}
.timeline-vertical {position:relative;padding-left:24px;display:grid;grid-template-columns:1fr;gap:0}
.timeline-vertical::before {content:"";position:absolute;left:6px;top:4px;bottom:4px;width:2px;background:linear-gradient(180deg,#3a3f48,#ff5a1e,#ffb347)}
.timeline-item {position:relative;padding:10px 12px;border-left:1px solid #242830;margin-left:0;display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:baseline}
.timeline-item::before {content:"";position:absolute;left:-8px;top:14px;width:10px;height:10px;background:#3a3f48;transform:rotate(45deg);border:1px solid #242830}
.timeline-item-explosion::before {background:#ff5a1e;border-color:#ff5a1e;box-shadow:0 0 12px rgba(255,90,30,.8)}
.timeline-item-explosion .timeline-timecode {color:#ff5a1e;font-weight:900}
.timeline-timecode {font-family:"SF Mono",Consolas,monospace;font-size:.8rem;color:#8a8f98;font-weight:600}
.timeline-label {font-size:.9rem;color:#c8ccd4}
.comments-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.comment-card {background:#1a1d22;border:1px solid #242830;padding:14px;border-top:2px solid #3a3f48;transition:border-color .2s}
.comment-card:hover {border-top-color:#ff5a1e}
.comment-nickname {display:block;font-size:.85rem;font-weight:800;color:#ffb347;margin-bottom:6px}
.comment-text {font-size:.85rem;color:#b0b4bc;line-height:1.5}
.recommendations-region {margin-bottom:32px}
.recommendations-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.recommendation-card {display:flex;flex-direction:column;background:#1a1d22;border:1px solid #242830;padding:0;overflow:hidden;transition:border-color .2s,transform .2s;text-decoration:none;color:inherit;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}
.recommendation-card:hover {border-color:#ff5a1e;transform:translateY(-3px)}
.recommendation-card img {width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;background:#0c0d10}
.recommendation-name {display:block;padding:10px 12px 4px;font-size:.9rem;font-weight:800;color:#fff}
.recommendation-blurb {display:block;padding:0 12px 12px;font-size:.78rem;color:#8a8f98;line-height:1.4;flex-grow:1}
.site-footer {background:#0c0d10;border-top:2px solid #242830;margin-top:40px;padding:32px 20px 20px}
.footer-content {max-width:1400px;margin:0 auto}
.footer-disclaimer {font-size:.8rem;color:#5a5f68;line-height:1.6;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #1e2229}
.footer-nav {display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}
.footer-link {font-size:.85rem;color:#c8ccd4;text-decoration:none;font-weight:600;transition:color .2s}
.footer-link:hover {color:#ff5a1e}
.friend-links {display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:.8rem}
.friend-links-label {color:#5a5f68;font-weight:600}
.runtime-friend-link {color:#8a8f98;text-decoration:none;transition:color .2s}
.runtime-friend-link:hover {color:#ff5a1e;text-decoration:underline}
@media(max-width:900px){.movie-info-grid {grid-template-columns:1fr}
.synopsis-panel {border-right:none;border-bottom:1px solid #242830}
.episode-status-panel {border-right:none;border-bottom:1px solid #242830}
.hero-title-content {margin-top:-60px}
.hero-backdrop {padding-bottom:55%}
.hero-title {font-size:clamp(1.8rem,5vw,3rem)}}
@media(max-width:600px){.site-header {flex-direction:column;align-items:flex-start;gap:8px}
.categories-nav {justify-content:flex-start;overflow-x:auto;width:100%;padding-bottom:4px}
.hero-backdrop {padding-bottom:70%}
.hero-title-content {margin-top:-40px;padding:16px}
.hero-title {font-size:1.6rem}
.synopsis-columns {grid-template-columns:1fr}
.player-controls-bar {justify-content:flex-start}
.comments-grid {grid-template-columns:1fr}
.timeline-item {grid-template-columns:90px 1fr;gap:8px}
.episode-cards-wrapper {grid-template-columns:1fr 1fr;gap:8px}
.recommendations-row {grid-template-columns:1fr 1fr;gap:10px}
.movie-info-grid {padding:0}
.synopsis-panel, .cast-panel, .episode-status-panel, .details-panel {padding:16px}
.footer-nav {flex-direction:column;gap:10px}
.main-content {padding:0 10px}
.detail-row {font-size:.8rem}
.cast-list {gap:6px}
.cast-item {padding:5px 10px;font-size:.78rem}}
@media(max-width:380px){.episode-cards-wrapper {grid-template-columns:1fr}
.recommendations-row {grid-template-columns:1fr}
.hero-title {font-size:1.3rem}
.hero-tagline {font-size:.85rem}
.timeline-item {grid-template-columns:1fr;gap:4px}
.timeline-timecode {font-size:.75rem}
.player-control-btn {padding:5px 8px;font-size:.7rem}}

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}
