*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {-webkit-text-size-adjust:100%;text-size-adjust:100%}
body {min-height:100vh;background:#0b0e1a;color:#cfd2e6;font-family:"PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;line-height:1.5;overflow-x:hidden}
img, video {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
button {font:inherit;color:inherit;background:none;border:none;cursor:pointer}
dl, dd {margin:0}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:2rem;padding:.6rem 1rem;background:rgba(8,10,20,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,180,60,.25);box-shadow:0 2px 12px rgba(0,0,0,.6)}
a[data-contract="site-name"].brand-mark {font-size:1.5rem;font-weight:900;letter-spacing:.12em;color:#ffd76a;text-shadow:0 0 8px rgba(255,180,60,.8),0 0 24px rgba(255,120,60,.4);white-space:nowrap;text-decoration:none;transition:text-shadow .2s}
a[data-contract="site-name"].brand-mark:hover {text-shadow:0 0 12px #ffd76a,0 0 40px #ff8a3d}
.category-strip {display:flex;flex-wrap:nowrap;gap:.4rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ff9a3d transparent;padding:.2rem 0}
.category-strip::-webkit-scrollbar {height:4px}
.category-strip::-webkit-scrollbar-thumb {background:#ff9a3d;border-radius:2px}
a.runtime-category {display:inline-block;padding:.3rem .7rem;font-size:.9rem;font-weight:600;color:#9fa8c9;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:999px;white-space:nowrap;text-decoration:none;transition:all .2s}
a.runtime-category:hover {color:#ffd76a;border-color:rgba(255,180,60,.5);background:rgba(255,180,60,.08)}
main {display:block;padding:1rem 1rem 2rem}
.movie-unit {position:relative;display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);grid-template-areas:"poster info" "poster player";gap:1rem 1.2rem;padding:1.2rem;margin-bottom:1.2rem;background:linear-gradient(135deg,rgba(20,16,40,.9),rgba(30,20,35,.95) 60%,rgba(15,12,30,.95));border:1px solid rgba(255,120,80,.2);border-radius:10px;box-shadow:0 0 30px rgba(120,40,80,.15),inset 0 1px 0 rgba(255,255,255,.04)}
.poster-shell {grid-area:poster;align-self:start;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.6),0 0 18px rgba(200,80,120,.2)}
.poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;display:block}
.movie-info-group {grid-area:info;display:flex;flex-direction:column;gap:.7rem;min-width:0}
.movie-title {font-size:clamp(1.4rem,3vw,2.2rem);font-weight:900;line-height:1.2;color:#fff;text-shadow:0 0 12px rgba(255,120,100,.4);letter-spacing:.05em}
.tagline {font-size:1rem;color:#ffb36b;font-weight:600;letter-spacing:.08em;padding:.2rem 0 .2rem .6rem;border-left:3px solid #ff7a5c;text-shadow:0 0 8px rgba(255,140,80,.3)}
.cast-grid {display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-top:.2rem}
.cast-card {display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:6px;transition:background .2s,border-color .2s}
.cast-card:hover {background:rgba(255,180,100,.05);border-color:rgba(255,180,100,.3)}
.cast-portrait {width:100%;aspect-ratio:3/4;border-radius:4px;overflow:hidden;background:linear-gradient(145deg,#1a1528,#2d1a2e)}
.portrait-placeholder {display:block;width:100%;height:100%;background:radial-gradient(circle at 30% 30%,rgba(255,200,120,.15),transparent 60%),linear-gradient(160deg,#3a2040,#1a1024);position:relative}
.portrait-placeholder::after {content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 40%,rgba(255,180,100,.08) 50%,transparent 60%)}
.cast-name {font-size:.85rem;font-weight:600;color:#d8c9dd;text-align:center;letter-spacing:.05em}
.synopsis-block {display:flex;flex-direction:column;gap:.5rem;padding:.8rem;background:rgba(0,0,0,.25);border-left:2px solid rgba(255,120,100,.3);border-radius:0 4px 4px 0}
.synopsis-block p {font-size:.92rem;color:#b8bcd4;line-height:1.7;text-align:justify}
.episode-status {display:flex;align-items:center;gap:.8rem;font-size:.9rem}
.current-episode {color:#ffd76a;font-weight:800;background:rgba(255,180,60,.12);padding:.25rem .7rem;border-radius:4px;border:1px solid rgba(255,180,60,.3)}
.total-episodes {color:#9fa8c9;font-weight:600;padding:.25rem .4rem}
.details-panel {background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);border-radius:6px;padding:.6rem .8rem}
.detail-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.4rem .8rem}
.detail-item {display:flex;gap:.4rem;font-size:.82rem;line-height:1.4}
.detail-item dt {color:#8f97b8;white-space:nowrap;font-weight:600}
.detail-item dt::after {content:":";margin-left:.1rem}
.detail-item dd {color:#d0d4ea;font-weight:500}
.player-wide-wrapper {grid-area:player;min-width:0;width:100%;background:#000;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 24px rgba(0,0,0,.7)}
.player-wide-wrapper video {width:100%;display:block;background:#000}
.player-controls {display:flex;flex-wrap:wrap;gap:.3rem;padding:.5rem;background:rgba(0,0,0,.7);border-top:1px solid rgba(255,255,255,.08)}
.player-controls button {padding:.3rem .7rem;font-size:.8rem;font-weight:600;color:#b8bcd4;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:4px;transition:all .15s}
.player-controls button:hover {color:#ffd76a;border-color:rgba(255,180,60,.4);background:rgba(255,180,60,.08)}
.player.theater-mode {position:fixed;inset:0;z-index:200;background:#000;border-radius:0}
.player.lights-dim {filter:brightness(.6) saturate(.8)}
.player.light {filter:brightness(1.2)}
.player.play video {filter:drop-shadow(0 0 8px rgba(255,180,100,.3))}
.player.mute video {opacity:.9}
.player.pip video {border:2px solid #ffd76a}
.player.progress {outline:2px solid rgba(255,180,60,.5)}
.player.speed {outline:2px dashed rgba(255,180,60,.4)}
.player.fullscreen {background:#000}
.player.volume {outline:2px solid rgba(255,255,255,.2)}
.player.click {cursor:pointer}
.episode-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.7rem;padding:1rem 0;margin-bottom:1.2rem}
.episode-card {display:flex;flex-direction:column;gap:.35rem;padding:.8rem .9rem;background:linear-gradient(150deg,rgba(25,20,40,.9),rgba(20,15,30,.95));border:1px solid rgba(255,150,100,.15);border-radius:6px;transition:border-color .2s,transform .2s;align-self:start}
.episode-card:hover {border-color:rgba(255,180,100,.4);transform:translateY(-2px)}
.episode-number {font-size:1.1rem;font-weight:900;color:#ff7a5c;text-shadow:0 0 8px rgba(255,100,80,.5)}
.episode-title {font-size:1rem;font-weight:700;color:#e8dcee;letter-spacing:.04em}
.episode-summary {font-size:.82rem;color:#9fa8c9;line-height:1.5;flex:1}
.episode-duration {font-size:.75rem;color:#6f7890;font-weight:600;letter-spacing:.06em;margin-top:.2rem}
.timeline-horizontal {display:flex;flex-direction:row;gap:0;overflow-x:auto;padding:1.2rem .5rem 1.5rem;margin-bottom:1.2rem;background:linear-gradient(180deg,rgba(20,16,35,.6),transparent);border-top:1px solid rgba(255,120,80,.15);border-bottom:1px solid rgba(255,120,80,.15);scrollbar-width:thin;scrollbar-color:#ff7a5c transparent}
.timeline-horizontal::-webkit-scrollbar {height:6px}
.timeline-horizontal::-webkit-scrollbar-thumb {background:#ff7a5c;border-radius:3px}
.timeline-node {position:relative;flex:0 0 180px;padding:.8rem 1rem .8rem 1.6rem;border-left:2px solid rgba(255,120,100,.4);min-height:70px;display:flex;flex-direction:column;gap:.3rem}
.timeline-node::before {content:"";position:absolute;left:-7px;top:.9rem;width:12px;height:12px;border-radius:50%;background:#ff7a5c;box-shadow:0 0 10px rgba(255,100,80,.7);border:2px solid #1a1024}
.timecode {font-size:.8rem;font-weight:800;color:#ffd76a;letter-spacing:.08em}
.timeline-label {font-size:.82rem;color:#b0b5d0;line-height:1.4}
.comments-masonry {columns:2;column-gap:.8rem;padding:1rem 0;margin-bottom:1.2rem}
.comment-card {break-inside:avoid;margin-bottom:.8rem;padding:.8rem .9rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-left:3px solid rgba(255,180,100,.5);border-radius:4px;display:flex;flex-direction:column;gap:.4rem}
.comment-nickname {font-size:.85rem;font-weight:700;color:#ffb36b}
.comment-text {font-size:.85rem;color:#c5c9de;line-height:1.6}
.recommend-region {padding:1rem 0 1.5rem;margin-bottom:1.2rem;border-top:1px solid rgba(255,255,255,.08);overflow:hidden}
.region-title {font-size:1.2rem;font-weight:800;color:#fff;letter-spacing:.1em;margin-bottom:.8rem;padding-left:.6rem;border-left:4px solid #ff7a5c;text-shadow:0 0 10px rgba(255,100,80,.3)}
.recommend-region[data-recommendation-region="1"] {display:flex;flex-wrap:wrap;gap:.8rem}
.recommend-region[data-recommendation-region="1"] .region-title {flex:0 0 100%}
.recommend-region[data-recommendation-region="1"] .rec-card {flex:1 1 200px;max-width:240px}
.recommend-region[data-recommendation-region="2"] {display:flex;flex-wrap:nowrap;gap:.7rem;overflow-x:auto;padding-bottom:.5rem}
.recommend-region[data-recommendation-region="2"] .region-title {flex:0 0 100%}
.recommend-region[data-recommendation-region="2"] .rec-card {flex:0 0 180px}
.recommend-region[data-recommendation-region="3"] {display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}
.recommend-region[data-recommendation-region="3"] .region-title {grid-column:1/-1}
.recommend-region[data-recommendation-region="3"] .rec-card {width:100%}
.rec-card {display:block}
.rec-card a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;padding:.5rem;background:linear-gradient(150deg,rgba(25,20,40,.85),rgba(15,12,30,.9));border:1px solid rgba(255,255,255,.08);border-radius:6px;text-decoration:none;transition:border-color .2s,box-shadow .2s;height:100%}
.rec-card a[data-runtime="recommendation"]:hover {border-color:rgba(255,180,100,.4);box-shadow:0 0 16px rgba(255,120,80,.15)}
.rec-card a[data-runtime="recommendation"] img {width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:4px;background:#2a2030}
.rec-card a[data-runtime="recommendation"] span[data-runtime="name"] {font-size:.9rem;font-weight:700;color:#e8dcee;line-height:1.3}
.rec-card a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.78rem;color:#9fa8c9;line-height:1.4;flex:1}
.empty-slot {background:rgba(255,255,255,.02);border:1px dashed rgba(255,255,255,.1);border-radius:6px;min-height:120px}
footer {padding:1.5rem 1rem;background:rgba(8,10,20,.95);border-top:1px solid rgba(255,180,60,.2);display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.5rem;font-size:.85rem}
.footer-disclaimer {flex:0 0 100%;color:#7e86a5;line-height:1.6;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:.4rem}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {color:#9fa8c9;text-decoration:none;font-weight:600;transition:color .2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#ffd76a;text-decoration:underline}
footer nav[data-contract="friend-links"] {display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;flex:1}
.friend-label {color:#6f7890;font-weight:700;letter-spacing:.06em}
a.runtime-friend-link {color:#8f97b8;text-decoration:none;font-weight:500;transition:color .2s;white-space:nowrap}
a.runtime-friend-link:hover {color:#ffb36b;text-decoration:underline}
@media (max-width:900px){.movie-unit {grid-template-columns:minmax(140px,180px) minmax(0,1fr);grid-template-areas:"poster info" "player player";gap:1rem}
.poster-shell {max-width:180px}
.cast-grid {grid-template-columns:repeat(4,1fr);gap:.4rem}
.cast-name {font-size:.75rem}
.recommend-region[data-recommendation-region="1"] .rec-card {flex:1 1 160px}
.recommend-region[data-recommendation-region="2"] {flex-wrap:wrap;overflow:visible}
.recommend-region[data-recommendation-region="2"] .rec-card {flex:1 1 160px}}
@media (max-width:640px){header {flex-direction:column;align-items:flex-start;gap:.5rem;padding:.5rem .8rem}
.category-strip {width:100%}
.movie-unit {grid-template-columns:1fr;grid-template-areas:"poster" "info" "player";padding:.8rem}
.poster-shell {max-width:220px;margin:0 auto}
.cast-grid {grid-template-columns:repeat(2,1fr);gap:.5rem}
.cast-card {flex-direction:row;gap:.6rem;padding:.4rem .6rem}
.cast-portrait {width:48px;aspect-ratio:3/4;flex-shrink:0}
.cast-name {font-size:.85rem}
.detail-list {grid-template-columns:1fr 1fr}
.episode-list {grid-template-columns:1fr}
.comments-masonry {columns:1}
.recommend-region[data-recommendation-region="1"], .recommend-region[data-recommendation-region="2"] {flex-direction:column;flex-wrap:nowrap;overflow:visible}
.recommend-region[data-recommendation-region="1"] .rec-card, .recommend-region[data-recommendation-region="2"] .rec-card {flex:1 1 auto;max-width:none;width:100%}
.recommend-region[data-recommendation-region="3"] {grid-template-columns:repeat(2,1fr)}
.recommend-region[data-recommendation-region="3"] .empty-slot {display:none}
.timeline-node {flex-basis:140px}
.player-controls button {flex:1;text-align:center}}
@media (max-width:400px){main {padding:.5rem}
.movie-title {font-size:1.2rem}
.tagline {font-size:.9rem}
.detail-list {grid-template-columns:1fr}
.recommend-region[data-recommendation-region="3"] {grid-template-columns:1fr}
.timeline-node {flex-basis:120px}
footer {flex-direction:column;align-items:flex-start}}

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}
