*, *::before, *::after {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:#0a0f0c;color:#cfd4c6;line-height:1.5;letter-spacing:.02em;min-height:100vh;display:flex;flex-direction:column}
img, video {display:block;max-width:100%;height:auto}
ul {list-style:none}
a {text-decoration:none;color:inherit}
button {font:inherit;cursor:pointer;border:none;background:none;color:inherit}
.site-brand {display:inline-block;font-family:Georgia,"Times New Roman",serif;font-size:1.4rem;font-weight:700;color:#c9a86a;text-transform:uppercase;letter-spacing:.15em;padding:1rem 1.5rem;background:linear-gradient(180deg,#10150f,#0a0f0c);border-bottom:2px solid #2d3a2f;position:relative}
.site-brand::after {content:"";position:absolute;left:1.5rem;bottom:-2px;width:3rem;height:2px;background:#c9a86a}
.site-brand:hover {color:#e0c48a}
header {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;background:linear-gradient(180deg,#0d120e,#0a0f0c);padding:.5rem 1.5rem;border-bottom:1px solid #1a241c}
header>div[data-contract="categories"] {display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem 0}
.runtime-category {display:inline-block;padding:.35rem .8rem;font-size:.8rem;color:#9aa896;border:1px solid #2d3a2f;border-radius:2px;white-space:nowrap;background:rgba(20,28,22,.6);transition:all .2s ease}
.runtime-category:hover {color:#c9a86a;border-color:#c9a86a;background:rgba(50,40,20,.3)}
main {flex:1;max-width:1400px;margin:0 auto;padding:1.5rem;width:100%;display:flex;flex-direction:column;gap:2.5rem}
.movie-shell {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:0;background:linear-gradient(145deg,#121a14,#0d130f);border:1px solid #1e2a20;box-shadow:0 10px 40px rgba(0,0,0,.5);position:relative;overflow:hidden}
.movie-shell::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#c9a86a,#5a6e50,#8a3b2e,#c9a86a);opacity:.7}
.movie-shell::after {content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 20%,rgba(201,168,106,.06),transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(100,60,40,.06),transparent 50%);pointer-events:none}
.poster-wrapper {grid-row:span 2;position:relative;background:#0a0f0c;min-width:0}
.poster-wrapper::after {content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(10,15,12,.8)),linear-gradient(0deg,rgba(10,15,12,.6),transparent 40%);pointer-events:none}
.main-poster {width:100%;height:100%;object-fit:cover;aspect-ratio:2/3;display:block}
.movie-info-group {padding:2rem 2.5rem;display:flex;flex-direction:column;gap:1.2rem;min-width:0}
.movie-title {font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;color:#e8dcc0;line-height:1.2;letter-spacing:.06em;text-shadow:0 2px 12px rgba(0,0,0,.6);position:relative;padding-bottom:.5rem}
.movie-title::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,#c9a86a,transparent)}
.tagline {font-family:Georgia,serif;font-style:italic;color:#a89a7a;font-size:1rem;letter-spacing:.08em;border-left:2px solid #8a3b2e;padding-left:1rem}
.cast-block {margin-top:.5rem}
.block-heading {font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:#c9a86a;margin-bottom:.6rem;display:flex;align-items:center;gap:.5rem}
.block-heading::before {content:"";width:1.2rem;height:1px;background:#c9a86a}
.cast-list {display:flex;flex-wrap:wrap;gap:.4rem}
.cast-list li {font-size:.85rem;color:#b8bca8;background:rgba(40,50,40,.4);border:1px solid #2d3a2f;padding:.25rem .7rem;border-radius:2px;transition:all .2s}
.cast-list li:hover {color:#e0c48a;border-color:#c9a86a;background:rgba(50,45,30,.4)}
.synopsis-block {margin-top:.5rem}
.synopsis-block p {font-size:.9rem;color:#aeb3a0;line-height:1.7;text-align:justify;margin-bottom:.6rem}
.synopsis-block p:last-child {margin-bottom:0}
.episode-status-block {display:flex;flex-wrap:wrap;gap:1.5rem;background:rgba(20,28,22,.5);border:1px solid #1e2a20;padding:.8rem 1rem;border-radius:2px;font-size:.85rem}
.current-episode, .episode-meta {color:#c9a86a;display:inline-flex;align-items:center;gap:.3rem}
.current-episode span {color:#e8dcc0;font-weight:700;font-size:1em}
.details-block {margin-top:.5rem}
.details-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem .8rem;background:rgba(15,22,17,.5);border:1px solid #1e2a20;padding:1rem}
@media(min-width:700px){.details-grid {grid-template-columns:repeat(4,1fr)}}
.details-grid>div {display:flex;flex-direction:column;gap:.15rem;padding:.3rem .4rem;border-bottom:1px solid rgba(201,168,106,.15)}
.details-grid dt {font-size:.7rem;color:#7a8470;text-transform:uppercase;letter-spacing:.15em}
.details-grid dd {font-size:.85rem;color:#d0d4c4;font-weight:500}
.player-zone {grid-column:2;background:#060907;border-top:1px solid #1e2a20;padding:1.5rem 2.5rem 2rem;min-width:0;display:flex;flex-direction:column;gap:1rem}
.player-zone video {display:block;width:100%;background:#000;border:1px solid #2d3a2f;box-shadow:0 8px 30px rgba(0,0,0,.7)}
.player-controls {display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.player-btn {font-size:.75rem;padding:.4rem .8rem;background:rgba(30,40,32,.6);border:1px solid #2d3a2f;border-radius:2px;color:#aab09e;transition:all .2s}
.player-btn:hover {color:#e8dcc0;border-color:#c9a86a;background:rgba(50,45,30,.5)}
.player-btn.active, .player-btn.muted {background:rgba(138,59,46,.5);color:#f0e6d0;border-color:#8a3b2e}
.player-zone input[type="range"] {flex:1;min-width:80px;accent-color:#c9a86a;height:4px;background:#2d3a2f;border-radius:2px}
.player-zone input[type="range"]::-webkit-slider-thumb {-webkit-appearance:none;width:12px;height:12px;background:#c9a86a;border-radius:50%;cursor:pointer}
.episodes-section, .timeline-section, .comments-section, .recommendation-region {width:100%;position:relative}
.section-heading {font-family:Georgia,serif;font-size:1.2rem;font-weight:700;color:#e0d4b8;letter-spacing:.1em;margin-bottom:1.2rem;padding-left:1rem;border-left:3px solid #c9a86a;text-transform:uppercase;position:relative}
.section-heading::after {content:"";position:absolute;bottom:-.3rem;left:1rem;width:2rem;height:1px;background:#c9a86a}
.episode-card-list {display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:600px){.episode-card-list {grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.episode-card-list {grid-template-columns:repeat(5,1fr)}}
.episode-card {background:linear-gradient(160deg,#121a14,#0d130f);border:1px solid #c9a86a55;padding:1rem 1.2rem;display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.episode-card::before {content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#c9a86a,transparent)}
.episode-card:hover {transform:translateY(-3px);border-color:#c9a86a;box-shadow:0 8px 25px rgba(0,0,0,.4)}
.episode-number {font-family:Georgia,serif;font-size:.75rem;color:#8a3b2e;letter-spacing:.15em;font-weight:700}
.episode-card h3 {font-family:Georgia,serif;font-size:1rem;color:#e0d4b8;font-weight:600;letter-spacing:.05em}
.episode-card p {font-size:.8rem;color:#9aa896;line-height:1.5;flex:1}
.duration {font-size:.7rem;color:#6f7a64;letter-spacing:.1em;border-top:1px solid #1e2a20;padding-top:.4rem;margin-top:auto}
.timeline-track {display:flex;gap:1.2rem;overflow-x:auto;padding:1.5rem .5rem 1.5rem 1.5rem;scroll-snap-type:x mandatory;position:relative;background:linear-gradient(90deg,transparent,#1a241c 3%,#1a241c 97%,transparent)}
.timeline-track::-webkit-scrollbar {height:4px}
.timeline-track::-webkit-scrollbar-track {background:#0d130f}
.timeline-track::-webkit-scrollbar-thumb {background:#c9a86a;border-radius:2px}
.timeline-item {flex:0 0 auto;width:220px;scroll-snap-align:start;background:linear-gradient(180deg,#10150f,#0d120e);border:1px solid #2d3a2f;border-top:2px solid #8a3b2e;padding:1rem;position:relative;display:flex;flex-direction:column;gap:.6rem}
.timeline-item::before {content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:linear-gradient(90deg,#8a3b2e,#c9a86a);transform:scaleX(.6);transform-origin:left;transition:transform .3s}
.timeline-item:hover::before {transform:scaleX(1)}
.timecode {font-family:Georgia,serif;font-size:.75rem;color:#c9a86a;letter-spacing:.1em;font-weight:700}
.label {font-size:.8rem;color:#aab09e;line-height:1.4}
.comments-grid {display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:600px){.comments-grid {grid-template-columns:repeat(2,1fr);gap:1.2rem}}
.comment-card {background:linear-gradient(135deg,#10150f,#0d120e);border:1px solid #2d3a2f;padding:1rem 1.2rem;position:relative;border-left:3px solid #1e2a20}
.comment-card:nth-child(odd) {transform:translateY(0)}
@media(min-width:600px){.comment-card:nth-child(odd) {transform:translateY(.5rem)}
.comment-card:nth-child(even) {transform:translateY(-.5rem)}}
.comment-card:hover {border-left-color:#c9a86a;background:linear-gradient(135deg,#121a14,#0f1510)}
.nickname {display:block;font-family:Georgia,serif;font-size:.8rem;color:#c9a86a;font-weight:700;letter-spacing:.1em;margin-bottom:.5rem;padding-bottom:.4rem;border-bottom:1px solid #1e2a20}
.comment-card p {font-size:.85rem;color:#b0b5a0;line-height:1.6;text-align:justify}
.recommendation-region {background:linear-gradient(180deg,#0d120e,#0a0f0c);border:1px solid #1a241c;padding:1.5rem;position:relative}
.recommendation-region::before {content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#c9a86a55,transparent)}
.recommendation-title {font-family:Georgia,serif;font-size:1rem;font-weight:700;color:#d8cba8;letter-spacing:.1em;margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem;text-transform:uppercase}
.recommendation-title::before {content:"";flex:0 0 2rem;height:2px;background:#8a3b2e}
.recommendation-title::after {content:"";flex:1;height:1px;background:linear-gradient(90deg,#2d3a2f,transparent)}
.recommendation-wrapper {display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:600px){.recommendation-wrapper {grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.recommendation-wrapper {grid-template-columns:repeat(4,1fr)}
.recommendation-region[data-recommendation-region="1"] .recommendation-wrapper, .recommendation-region[data-recommendation-region="3"] .recommendation-wrapper {grid-template-columns:repeat(3,1fr)}}
.rec-item {display:flex;flex-direction:column;gap:.5rem;background:linear-gradient(180deg,#10150f,#0d120e);border:1px solid #2d3a2f;padding:.8rem;transition:all .2s ease;position:relative;overflow:hidden}
.rec-item::after {content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#c9a86a,transparent);opacity:0;transition:opacity .2s}
.rec-item:hover {border-color:#c9a86a;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.4)}
.rec-item:hover::after {opacity:1}
.rec-item img {width:100%;aspect-ratio:16/9;object-fit:cover;background:#060907;border:1px solid #1e2a20}
.rec-item span[data-runtime="name"] {font-family:Georgia,serif;font-size:.9rem;color:#d8cba8;font-weight:600;letter-spacing:.03em;line-height:1.3}
.rec-item span[data-runtime="blurb"] {font-size:.75rem;color:#8a9480;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
footer {display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:2rem 1.5rem;background:linear-gradient(180deg,#0a0f0c,#060907);border-top:1px solid #1a241c;max-width:1400px;margin:0 auto;width:100%}
.disclaimer {font-size:.75rem;color:#6f7a64;line-height:1.6;max-width:60ch;flex:1 1 100%;border-left:2px solid #2d3a2f;padding-left:1rem}
.friend-links {display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;flex:1 1 100%}
.link-label {font-size:.75rem;color:#c9a86a;text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin-right:.4rem}
.runtime-friend-link {font-size:.8rem;color:#9aa896;padding:.25rem .6rem;border:1px solid #1e2a20;border-radius:2px;transition:all .2s}
.runtime-friend-link:hover {color:#e8dcc0;border-color:#c9a86a;background:rgba(50,45,30,.3)}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:.8rem;color:#9aa896;padding:.4rem .8rem;border:1px solid #2d3a2f;border-radius:2px;transition:all .2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#e8dcc0;border-color:#c9a86a;background:rgba(50,45,30,.3)}
.movie-shell {grid-template-columns:minmax(0,1fr) minmax(0,1.8fr)}
.movie-shell .poster-wrapper {grid-column:1;grid-row:1/3}
.movie-shell .player-zone {grid-column:2;grid-row:2}
.movie-shell .movie-info-group {grid-column:2;grid-row:1}
@media(max-width:800px){.movie-shell {grid-template-columns:1fr}
.movie-shell .poster-wrapper {grid-column:1;grid-row:1;max-width:280px;margin:0 auto}
.movie-shell .movie-info-group {grid-column:1;grid-row:2}
.movie-shell .player-zone {grid-column:1;grid-row:3}
.main-poster {aspect-ratio:2/3}
.details-grid {grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){body {font-size:14px}
main {padding:1rem;gap:2rem}
.movie-info-group {padding:1.5rem 1rem}
.player-zone {padding:1rem}
.movie-title {font-size:1.4rem}
.cast-list li {font-size:.75rem}
.episode-card-list {grid-template-columns:1fr}
.comments-grid {grid-template-columns:1fr}
.recommendation-wrapper {grid-template-columns:1fr}
.timeline-item {width:180px}
.player-controls {gap:.4rem}
.player-btn {padding:.35rem .6rem;font-size:.7rem}
.details-grid {grid-template-columns:1fr 1fr;gap:.3rem}
.details-grid>div {padding:.2rem}
.runtime-category {font-size:.7rem;padding:.25rem .6rem}
header {padding:.5rem 1rem}
.site-brand {font-size:1.2rem;padding:.8rem 1rem}
.section-heading {font-size:1rem}}
@media(max-width:360px){.movie-shell .poster-wrapper {max-width:220px}
.details-grid {grid-template-columns:1fr}
.player-controls input[type="range"] {min-width:60px}
.rec-item img {aspect-ratio:16/9}}
body.lights-off {background:#000}
.lights-off .movie-shell, .lights-off .episodes-section, .lights-off .timeline-section, .lights-off .comments-section, .lights-off .recommendation-region, .lights-off header, .lights-off footer {opacity:.3;transition:opacity .3s ease}
.lights-off .movie-shell:hover, .lights-off .episodes-section:hover, .lights-off .timeline-section:hover, .lights-off .comments-section:hover, .lights-off .recommendation-region:hover, .lights-off header:hover, .lights-off footer:hover {opacity:1}
video.theater-mode {position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;height:auto;z-index:1000;background:#000;border:2px solid #c9a86a;box-shadow:0 0 60px rgba(0,0,0,.9)}
.theater-mode~* {pointer-events:none}
video:fullscreen {object-fit:contain;background:#000}
.player-controls .player-btn:focus-visible {outline:2px solid #c9a86a;outline-offset:2px}
.episode-card, .comment-card, .rec-item, .timeline-item {transition:opacity .2s ease,transform .2s ease,border-color .2s ease}
::selection {background:#c9a86a;color:#0a0f0c}
::-webkit-scrollbar {width:8px;height:8px}
::-webkit-scrollbar-track {background:#0d130f}
::-webkit-scrollbar-thumb {background:#2d3a2f;border-radius:4px}
::-webkit-scrollbar-thumb:hover {background:#c9a86a}

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}
