*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {font-size:16px;scroll-behavior:smooth}
body {background:#1a1a1a;color:#f5f5f5;font-family:"Source Han Sans SC","Noto Sans CJK SC","PingFang SC","Microsoft YaHei",sans-serif;font-weight:300;line-height:1.5;min-height:100vh;overflow-x:hidden}
img, video {max-width:100%;display:block}
a {color:inherit;text-decoration:none}
button, input, select {font:inherit;color:inherit;background:none;border:none;outline:none}
button {cursor:pointer}
h1, h2, h3 {font-family:"Source Han Serif SC","Noto Serif CJK SC","Songti SC",Georgia,serif;font-weight:700}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0.75rem 2rem;background:rgba(26,26,26,0.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(212,175,55,0.3)}
header nav[data-contract="categories"] {display:flex;gap:0.5rem;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
header nav[data-contract="categories"]::-webkit-scrollbar {display:none}
a[data-contract="site-name"] {font-family:"Source Han Serif SC","Noto Serif CJK SC",serif;font-size:1.1rem;font-weight:700;color:#d4af37;letter-spacing:0.15em;white-space:nowrap;transition:color 0.2s}
a[data-contract="site-name"]:hover {color:#f0e0a0}
a.runtime-category {display:inline-block;padding:0.35rem 0.9rem;font-size:0.85rem;color:#c0c0c0;border:1px solid rgba(255,255,255,0.15);border-radius:2px;white-space:nowrap;transition:all 0.2s;text-decoration:none;background:rgba(255,255,255,0.03)}
a.runtime-category:hover {color:#d4af37;border-color:#d4af37;background:rgba(212,175,55,0.08)}
main {max-width:1440px;margin:0 auto;padding:1rem 1.5rem 2rem}
section[data-fragment="movie-overview"] {display:grid;grid-template-columns:minmax(280px,320px) 1fr;gap:1.5rem;margin-bottom:2.5rem;background:linear-gradient(135deg,#2c2c2c 0%,#232323 100%);border:1px solid rgba(255,255,255,0.08);border-radius:4px;padding:1.25rem;box-shadow:0 4px 20px rgba(0,0,0,0.4)}
.poster-wrapper {position:relative;align-self:start}
.poster-wrapper img {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:2px;filter:grayscale(0.2) contrast(1.05);box-shadow:0 8px 25px rgba(0,0,0,0.5)}
.overview-content {display:flex;flex-direction:column;gap:0.85rem;min-width:0}
.movie-title {font-size:1.9rem;color:#fff;letter-spacing:0.08em;line-height:1.2;border-left:3px solid #d4af37;padding-left:0.8rem;margin-bottom:0.2rem}
.movie-tagline {font-size:0.95rem;color:#a8a8a8;font-style:italic;letter-spacing:0.05em;margin-bottom:0.5rem}
.cast-section {margin-top:0.5rem}
.section-heading {font-size:1.15rem;color:#d4af37;letter-spacing:0.1em;border-bottom:1px solid rgba(212,175,55,0.3);padding-bottom:0.3rem;margin-bottom:0.6rem;display:inline-block}
.cast-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.75rem}
.cast-card {text-align:center;padding:0.4rem;transition:transform 0.2s}
.cast-card:hover {transform:translateY(-2px)}
.cast-photo {width:100%;aspect-ratio:1/1.2;background:linear-gradient(145deg,#3a3a3a 0%,#2c2c2c 60%,#1f1f1f 100%);border-radius:2px;margin-bottom:0.4rem;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,0.06)}
.cast-photo::after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0.05) 0%,rgba(0,0,0,0.2) 100%);pointer-events:none}
.cast-name {font-size:0.9rem;color:#e0e0e0;font-weight:400;letter-spacing:0.1em}
.synopsis-section {margin-top:0.3rem}
.synopsis-paragraph {font-size:0.9rem;color:#cfcfcf;margin-bottom:0.5rem;text-align:justify;line-height:1.7}
.synopsis-paragraph:last-child {margin-bottom:0}
.episode-status {display:flex;gap:1.5rem;margin-top:0.3rem;padding:0.6rem 0;border-top:1px solid rgba(255,255,255,0.08);border-bottom:1px solid rgba(255,255,255,0.08)}
.status-item {display:flex;flex-direction:column;align-items:center;gap:0.15rem}
.status-label {font-size:0.75rem;color:#888;letter-spacing:0.1em}
.status-value {font-size:1.1rem;color:#d4af37;font-weight:700}
.details-section {margin-top:0.3rem}
.details-list {display:grid;grid-template-columns:repeat(4,1fr);gap:0.4rem 1rem}
.detail-item {display:flex;justify-content:space-between;font-size:0.85rem;padding:0.3rem 0;border-bottom:1px dotted rgba(255,255,255,0.08)}
.detail-item dt {color:#8a8a8a;font-weight:300}
.detail-item dd {color:#e8e8e8;text-align:right}
.player-wrapper {grid-column:1/-1;width:100%;min-width:0;background:#111;border-radius:2px;overflow:hidden;border:1px solid rgba(255,255,255,0.1)}
.player-wrapper video {display:block;width:100%;aspect-ratio:16/9;background:#000}
.player-controls {display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.75rem;background:#222;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,0.06)}
.control-button {font-size:0.8rem;color:#aaa;padding:0.3rem 0.8rem;border:1px solid rgba(255,255,255,0.15);border-radius:2px;transition:all 0.2s;white-space:nowrap}
.control-button:hover {color:#d4af37;border-color:#d4af37;background:rgba(212,175,55,0.08)}
.player-controls input[type="range"] {flex:1;min-width:120px;height:4px;background:rgba(255,255,255,0.2);border-radius:2px;appearance:none;-webkit-appearance:none}
.player-controls input[type="range"]::-webkit-slider-thumb {appearance:none;-webkit-appearance:none;width:14px;height:14px;background:#d4af37;border-radius:50%;cursor:pointer}
.player-controls select {font-size:0.8rem;background:#333;color:#ccc;padding:0.3rem 0.5rem;border-radius:2px;border:1px solid rgba(255,255,255,0.15)}
.player.theater-mode {position:fixed;inset:0;z-index:200;background:#000}
.player.theater-mode video {height:100vh;width:100vw;object-fit:contain}
.player.lights-off {filter:brightness(0.6)}
.player.lights-off + .player-controls {opacity:0.6}
.timeline-section {margin-bottom:2.5rem;padding:0 0.5rem}
.timeline-section .section-heading {margin-bottom:1rem}
.timeline-scroll {overflow-x:auto;padding-bottom:0.5rem;scrollbar-width:thin;scrollbar-color:#d4af37 rgba(255,255,255,0.1)}
.timeline-scroll::-webkit-scrollbar {height:4px}
.timeline-scroll::-webkit-scrollbar-track {background:rgba(255,255,255,0.08)}
.timeline-scroll::-webkit-scrollbar-thumb {background:#d4af37;border-radius:2px}
.timeline-track {display:flex;gap:0;min-width:max-content;position:relative;padding:2rem 1rem 1rem}
.timeline-track::before {content:"";position:absolute;top:2.4rem;left:0;right:0;height:2px;background:linear-gradient(90deg,rgba(212,175,55,0.1),#d4af37 20%,#d4af37 80%,rgba(212,175,55,0.1))}
.timeline-node {position:relative;flex:0 0 180px;padding:0 1rem;text-align:center}
.timeline-node::before {content:"";position:absolute;top:1.55rem;left:50%;transform:translateX(-50%);width:14px;height:14px;background:radial-gradient(circle at 30% 30%,#e8e0c8,#d4af37 60%,#8a6d1d);border-radius:50%;border:2px solid #1a1a1a;box-shadow:0 0 0 2px rgba(212,175,55,0.3),0 2px 8px rgba(0,0,0,0.5);z-index:1}
.timeline-node:first-child::before, .timeline-node:last-child::before {background:#d4af37;box-shadow:0 0 8px rgba(212,175,55,0.6)}
.timecode {display:block;font-family:"Source Han Serif SC",serif;font-size:0.9rem;color:#d4af37;font-weight:700;margin-top:0.3rem}
.label {display:block;font-size:0.8rem;color:#bbb;margin-top:0.35rem;line-height:1.4;padding:0 0.2rem}
.episodes-section {margin-bottom:2.5rem}
.episodes-section .section-heading {margin-bottom:1rem}
.episodes-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem}
.episode-card {background:#242424;border:1px solid rgba(255,255,255,0.06);border-radius:3px;padding:0.9rem;display:flex;flex-direction:column;gap:0.35rem;transition:all 0.25s;position:relative;overflow:hidden}
.episode-card::before {content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#d4af37,transparent);opacity:0;transition:opacity 0.25s}
.episode-card:hover {background:linear-gradient(135deg,#2c2c2c 0%,#3a3520 100%);border-color:rgba(212,175,55,0.4);transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,0.3)}
.episode-card:hover::before {opacity:1}
.episode-number {font-size:1.4rem;font-weight:700;color:rgba(212,175,55,0.5);font-family:"Source Han Serif SC",serif;line-height:1}
.episode-title {font-size:1rem;color:#e8e8e8;letter-spacing:0.05em;margin:0.1rem 0}
.episode-summary {font-size:0.82rem;color:#a8a8a8;line-height:1.55;flex:1}
.episode-duration {font-size:0.75rem;color:#777;align-self:flex-end;letter-spacing:0.05em}
.comments-section {margin-bottom:2.5rem}
.comments-section .section-heading {margin-bottom:1rem}
.comments-masonry {display:grid;grid-template-columns:repeat(2,1fr);gap:0.8rem;align-items:start}
.comment-bubble {background:#242424;border-radius:3px;padding:0.9rem 1rem;position:relative;border:1px solid rgba(255,255,255,0.06);transition:border-color 0.2s}
.comment-bubble::before {content:"";position:absolute;top:0.8rem;left:-6px;width:10px;height:10px;background:#242424;transform:rotate(45deg);border-left:1px solid rgba(255,255,255,0.06);border-bottom:1px solid rgba(255,255,255,0.06)}
.comment-bubble:hover {border-color:rgba(212,175,55,0.3)}
.comment-nickname {display:block;font-size:0.85rem;color:#d4af37;font-weight:600;margin-bottom:0.3rem;letter-spacing:0.05em}
.comment-text {font-size:0.88rem;color:#c8c8c8;line-height:1.6}
.recommendation-region {margin-bottom:2.5rem;position:relative;padding-left:3.5rem}
.recommendation-title {position:absolute;left:0;top:0.5rem;writing-mode:vertical-rl;font-size:1rem;color:#d4af37;letter-spacing:0.3em;border-left:2px solid #d4af37;padding-left:0.5rem;height:auto;min-height:120px;white-space:nowrap}
.recommendation-row {display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;align-items:start}
a.recommendation-card {display:flex;flex-direction:column;background:#242424;border-radius:3px;overflow:hidden;border:1px solid rgba(255,255,255,0.06);transition:all 0.25s;text-decoration:none}
a.recommendation-card:hover {transform:translateY(-3px);border-color:rgba(212,175,55,0.5);box-shadow:0 6px 20px rgba(0,0,0,0.4)}
a.recommendation-card img {width:100%;aspect-ratio:16/9;object-fit:cover;background:#333}
a.recommendation-card span[data-runtime="name"] {font-size:0.95rem;color:#e8e8e8;padding:0.6rem 0.75rem 0.2rem;font-weight:600;letter-spacing:0.03em}
a.recommendation-card span[data-runtime="blurb"] {font-size:0.8rem;color:#999;padding:0 0.75rem 0.8rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {background:#1c1c1c;border-top:1px solid rgba(212,175,55,0.2);padding:1.5rem 2rem 2rem;margin-top:1rem}
.disclaimer {font-size:0.78rem;color:#777;line-height:1.6;margin-bottom:1.2rem;max-width:900px}
.footer-nav {display:flex;gap:1.5rem;margin-bottom:1.2rem}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:0.9rem;color:#aaa;text-decoration:none;padding:0.25rem 0.5rem;border:1px solid rgba(255,255,255,0.1);border-radius:2px;transition:all 0.2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#d4af37;border-color:#d4af37}
.friend-links {display:flex;align-items:center;flex-wrap:wrap;gap:0.75rem}
.friend-links-label {font-size:0.85rem;color:#888;white-space:nowrap;margin-right:0.3rem}
a.runtime-friend-link {font-size:0.82rem;color:#999;text-decoration:none;border-bottom:1px solid transparent;transition:all 0.2s;white-space:nowrap}
a.runtime-friend-link:hover {color:#d4af37;border-bottom-color:#d4af37}
.player.click, .player.data-player-action, .player.fullscreen, .player.input, .player.light, .player.lights-off, .player.mute, .player.pip, .player.play, .player.progress, .player.speed, .player.theater, .player.theater-mode, .player.timeupdate, .player.volume {transition:all 0.3s}
@media (max-width: 1100px){.details-list {grid-template-columns:repeat(3,1fr)}
.episodes-grid {grid-template-columns:repeat(3,1fr)}}
@media (max-width: 900px){section[data-fragment="movie-overview"] {grid-template-columns:1fr;gap:1rem}
.poster-wrapper {max-width:320px;margin:0 auto}
.cast-grid {grid-template-columns:repeat(4,1fr)}
.episodes-grid {grid-template-columns:repeat(2,1fr)}
.comments-masonry {grid-template-columns:1fr 1fr}
.recommendation-row {grid-template-columns:repeat(2,1fr)}
header {padding:0.6rem 1rem}
main {padding:0.8rem 1rem}}
@media (max-width: 600px){header {flex-direction:column;align-items:flex-start;gap:0.4rem}
header nav[data-contract="categories"] {width:100%}
a[data-contract="site-name"] {font-size:1rem}
.movie-title {font-size:1.4rem}
.cast-grid {grid-template-columns:repeat(2,1fr)}
.details-list {grid-template-columns:repeat(2,1fr)}
.episodes-grid {grid-template-columns:1fr}
.comments-masonry {grid-template-columns:1fr}
.recommendation-row {grid-template-columns:1fr}
.recommendation-region {padding-left:0;padding-top:2.2rem}
.recommendation-title {writing-mode:horizontal-tb;position:static;min-height:auto;border-left:none;border-bottom:2px solid #d4af37;padding-bottom:0.4rem;margin-bottom:0.8rem;display:block}
.timeline-node {flex-basis:140px}
.player-controls {gap:0.3rem}
.control-button {padding:0.2rem 0.6rem;font-size:0.75rem}}
@media (max-width: 400px){.cast-grid {grid-template-columns:repeat(2,1fr)}
.details-list {grid-template-columns:1fr}
main {padding:0.6rem}
footer {padding:1rem}}
:focus {outline:1px solid #d4af37;outline-offset:2px}
::selection {background:rgba(212,175,55,0.3);color:#fff}

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}
