* {box-sizing:border-box;margin:0;padding:0}
html {scroll-behavior:smooth}
body {font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;background:#0d1b2a;color:#f5e6c8;line-height:1.6;font-weight:300;letter-spacing:.02em}
img, video {display:block;max-width:100%}
a {color:#f5e6c8;text-decoration:none}
ul {list-style:none}
button {font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
.site-header {background:rgba(13,27,42,.95);border-bottom:2px solid rgba(255,153,51,.2);padding:.6rem 1.5rem;position:sticky;top:0;z-index:100;backdrop-filter:blur(8px)}
.header-nav {display:flex;align-items:center;gap:2rem;max-width:1400px;margin:0 auto}
a[data-contract="site-name"] {font-size:1.3rem;font-weight:700;color:#ff9933;letter-spacing:.05em;white-space:nowrap}
a[data-contract="site-name"]:hover {color:#ffb366}
.categories-wrapper {display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:.2rem 0}
.categories-wrapper::-webkit-scrollbar {display:none}
a.runtime-category {font-size:.9rem;font-weight:500;color:#f5e6c8;background:rgba(255,153,51,.12);border:1px solid rgba(255,153,51,.3);border-radius:999px;padding:.3rem 1rem;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
a.runtime-category:hover {background:rgba(255,153,51,.25);border-color:#ff9933;color:#ffb366}
.main-content {max-width:1400px;margin:0 auto;padding:1.5rem 1.5rem 3rem;display:grid;gap:2.5rem}
.movie-overview-block {background:linear-gradient(145deg,rgba(27,58,80,.6),rgba(13,27,42,.9));border:1px solid rgba(255,153,51,.15);border-radius:24px;padding:1.5rem;box-shadow:0 8px 32px rgba(0,0,0,.4)}
.player-shell {background:#000;border-radius:16px;overflow:hidden;margin-bottom:1.5rem;border:1px solid rgba(255,153,51,.2);width:100%;max-width:1200px;margin-left:auto;margin-right:auto}
.player-shell video {aspect-ratio:16/9;width:100%;background:#000}
.player-controls-bar {display:flex;flex-wrap:wrap;gap:.3rem;padding:.5rem .8rem;background:rgba(0,0,0,.7);border-top:1px solid rgba(255,153,51,.15)}
.player-control-btn {font-size:.8rem;color:#e8dcc8;background:rgba(255,153,51,.1);border:1px solid rgba(255,153,51,.2);border-radius:999px;padding:.25rem .75rem;transition:background .2s,color .2s}
.player-control-btn:hover {background:rgba(255,153,51,.3);color:#fff}
.player-shell.theater-mode {position:fixed;inset:0;z-index:200;max-width:none;border-radius:0;border:none;display:flex;flex-direction:column}
.player-shell.theater-mode video {flex:1;height:auto}
.player-shell.theater-mode .player-controls-bar {flex-shrink:0}
.player-shell.light-off {filter:brightness(.35)}
.player-shell.light-off .player-controls-bar {filter:brightness(2.5)}
.movie-info-grid {display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:1.5rem;align-items:start}
.poster-column {min-width:0}
.poster-wrapper {border-radius:16px;overflow:hidden;border:1px solid rgba(255,153,51,.25);box-shadow:0 4px 20px rgba(0,0,0,.5)}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover}
.info-column {display:flex;flex-direction:column;gap:1.5rem;min-width:0}
.title-group {border-bottom:2px solid rgba(255,153,51,.2);padding-bottom:1rem}
.movie-title {font-size:1.8rem;font-weight:700;color:#ff9933;letter-spacing:.02em;line-height:1.3}
.movie-tagline {font-size:1rem;color:#e8dcc8;margin-top:.4rem;font-style:italic}
.cast-panel, .synopsis-panel, .episode-status-panel, .details-panel {background:rgba(13,27,42,.4);border-radius:16px;padding:1rem 1.2rem;border-left:3px solid #ff9933}
.section-heading {font-size:1rem;font-weight:700;color:#ffb366;margin-bottom:.6rem;letter-spacing:.05em}
.cast-list {display:flex;flex-wrap:wrap;gap:.5rem}
.cast-item {font-size:.9rem;background:rgba(255,153,51,.1);border:1px solid rgba(255,153,51,.2);border-radius:999px;padding:.3rem .9rem;color:#f5e6c8}
.synopsis-para {font-size:.9rem;color:#e0d5c0;margin-bottom:.6rem;line-height:1.7}
.synopsis-para:last-child {margin-bottom:0}
.status-text {font-size:1rem;color:#ffb366;font-weight:600;margin-bottom:.5rem}
.progress-meta {display:flex;justify-content:space-between;align-items:center;background:rgba(255,153,51,.08);border-radius:12px;padding:.5rem .8rem}
.progress-label {font-size:.85rem;color:#e8dcc8}
.progress-value {font-size:.9rem;color:#ff9933;font-weight:600}
.details-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .8rem}
.detail-row {display:flex;gap:.5rem;padding:.3rem 0;border-bottom:1px dotted rgba(255,153,51,.15)}
.detail-term {font-size:.85rem;color:#e8dcc8;min-width:3.5em;flex-shrink:0}
.detail-desc {font-size:.85rem;color:#f5e6c8;font-weight:400}
.timeline-section {background:linear-gradient(145deg,rgba(27,58,80,.4),rgba(13,27,42,.7));border:1px solid rgba(255,153,51,.15);border-radius:24px;padding:1.5rem}
.timeline-scroll {overflow-x:auto;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:#ff9933 rgba(13,27,42,.5)}
.timeline-scroll::-webkit-scrollbar {height:6px}
.timeline-scroll::-webkit-scrollbar-track {background:rgba(13,27,42,.5);border-radius:3px}
.timeline-scroll::-webkit-scrollbar-thumb {background:#ff9933;border-radius:3px}
.timeline-track {display:flex;gap:1rem;min-width:max-content;padding:.5rem .2rem}
.timeline-item {background:rgba(13,27,42,.6);border:1px solid rgba(255,153,51,.2);border-radius:16px;padding:1rem;min-width:220px;transition:transform .2s,box-shadow .2s,border-color .2s}
.timeline-item:hover {transform:translateY(-4px);border-color:#ff9933;box-shadow:0 8px 24px rgba(255,153,51,.15)}
.timecode {display:block;font-size:.8rem;font-weight:700;color:#ff9933;margin-bottom:.4rem;letter-spacing:.05em}
.timeline-label {font-size:.85rem;color:#f5e6c8;line-height:1.5}
.timeline-hint {font-size:.8rem;color:#e8dcc8;text-align:center;margin-top:.8rem;opacity:.8}
.episodes-section {background:linear-gradient(145deg,rgba(27,58,80,.4),rgba(13,27,42,.7));border:1px solid rgba(255,153,51,.15);border-radius:24px;padding:1.5rem}
.episode-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}
.episode-card {background:rgba(13,27,42,.6);border:1px solid rgba(255,153,51,.15);border-radius:16px;padding:1rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .2s,border-color .2s,box-shadow .2s}
.episode-card:hover {transform:translateY(-3px);border-color:#ff9933;box-shadow:0 6px 20px rgba(255,153,51,.12)}
.episode-number {display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#ff9933;color:#0d1b2a;font-weight:700;font-size:.95rem;border-radius:50%;margin-bottom:.3rem}
.episode-title {font-size:1rem;font-weight:600;color:#ffb366}
.episode-summary {font-size:.85rem;color:#e0d5c0;line-height:1.6;flex-grow:1}
.episode-duration {font-size:.8rem;color:#e8dcc8;border-top:1px solid rgba(255,153,51,.15);padding-top:.5rem;margin-top:.3rem}
.comments-section {background:linear-gradient(145deg,rgba(27,58,80,.4),rgba(13,27,42,.7));border:1px solid rgba(255,153,51,.15);border-radius:24px;padding:1.5rem}
.comments-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.comment-card {background:rgba(13,27,42,.5);border-radius:20px;padding:1rem 1.2rem;border:1px solid rgba(255,153,51,.15);position:relative;transition:border-color .2s}
.comment-card::before {content:"";position:absolute;top:-6px;left:18px;width:12px;height:12px;background:rgba(13,27,42,.9);border-top:1px solid rgba(255,153,51,.15);border-left:1px solid rgba(255,153,51,.15);transform:rotate(45deg)}
.comment-card:hover {border-color:#ff9933}
.comment-nickname {display:block;font-size:.85rem;font-weight:600;color:#ff9933;margin-bottom:.5rem}
.comment-text {font-size:.9rem;color:#e0d5c0;line-height:1.6}
.recommendation-region {background:linear-gradient(145deg,rgba(27,58,80,.4),rgba(13,27,42,.7));border:1px solid rgba(255,153,51,.15);border-radius:24px;padding:1.5rem}
.recommendation-heading {font-size:1.1rem;font-weight:700;color:#ffb366;margin-bottom:1.2rem;letter-spacing:.05em}
.recommendation-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}
a.recommendation-card {display:flex;flex-direction:column;background:rgba(13,27,42,.6);border:1px solid rgba(255,153,51,.15);border-radius:16px;overflow:hidden;transition:transform .25s,box-shadow .25s,border-color .25s;color:#f5e6c8}
a.recommendation-card:hover {transform:translateY(-4px);border-color:#ff9933;box-shadow:0 10px 30px rgba(255,153,51,.15)}
[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/9;object-fit:cover;background:#1a3a4d}
.recommendation-name {display:block;font-size:.95rem;font-weight:600;color:#ffb366;padding:.6rem .8rem .2rem}
.recommendation-blurb {display:block;font-size:.8rem;color:#e0d5c0;padding:0 .8rem .8rem;line-height:1.5;flex-grow:1}
.site-footer {background:rgba(13,27,42,.95);border-top:2px solid rgba(255,153,51,.2);padding:2rem 1.5rem;margin-top:1rem}
.footer-content {max-width:1400px;margin:0 auto;display:grid;gap:1.5rem}
.footer-disclaimer {font-size:.85rem;color:#a0b3c4;line-height:1.7;text-align:center}
.footer-nav {display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#ff9933;font-size:.95rem;font-weight:500;transition:color .2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#ffb366;text-decoration:underline}
.friend-links {display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center;align-items:center;border-top:1px solid rgba(255,153,51,.1);padding-top:1.2rem}
.friend-links-label {font-size:.85rem;color:#e8dcc8}
a.runtime-friend-link {font-size:.85rem;color:#8fb3c8;transition:color .2s}
a.runtime-friend-link:hover {color:#ff9933;text-decoration:underline}
@media (max-width:1100px){.movie-info-grid {grid-template-columns:minmax(160px,220px) minmax(0,1fr)}}
@media (max-width:900px){.main-content {padding:1rem .8rem 2rem;gap:1.5rem}
.movie-overview-block, .timeline-section, .episodes-section, .comments-section, .recommendation-region {padding:1rem}
.movie-info-grid {grid-template-columns:1fr;gap:1rem}
.poster-wrapper {max-width:280px;margin:0 auto}
.details-list {grid-template-columns:1fr}
.episode-grid {grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.recommendation-grid {grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.header-nav {gap:1rem}
.movie-title {font-size:1.4rem}}
@media (max-width:600px){.site-header {padding:.5rem .8rem}
.header-nav {flex-direction:column;align-items:flex-start;gap:.5rem}
.categories-wrapper {width:100%}
.movie-title {font-size:1.2rem}
.player-controls-bar {gap:.2rem}
.player-control-btn {font-size:.75rem;padding:.2rem .6rem}
.timeline-item {min-width:180px}
.episode-grid {grid-template-columns:1fr}
.comments-grid {grid-template-columns:1fr}
.recommendation-grid {grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.footer-nav {flex-direction:column;align-items:center;gap:.5rem}}

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}
