*, *::before, *::after {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
body {font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;background:#0a0a12;color:#e8e6f0;line-height:1.5;font-weight:300;letter-spacing:.01em;overflow-x:hidden}
header {position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:2rem;padding:.75rem 1.5rem;background:rgba(10,10,18,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(124,92,255,.2)}
header a[data-contract="site-name"] {font-size:1.15rem;font-weight:800;letter-spacing:.06em;color:#fff;text-decoration:none;background:linear-gradient(90deg,#8a5cff,#ff6a3d);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;white-space:nowrap}
header a[data-contract="site-name"]:hover {text-decoration:underline;text-underline-offset:4px}
nav[data-contract="categories"] {display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;align-items:center;overflow-x:auto;scrollbar-width:none}
nav[data-contract="categories"]::-webkit-scrollbar {display:none}
.runtime-category {display:inline-block;font-size:.85rem;font-weight:400;color:#b8b0d0;text-decoration:none;padding:.25rem .5rem;border-radius:.25rem;transition:color .2s,background .2s;white-space:nowrap}
.runtime-category:hover {color:#fff;background:rgba(138,92,255,.25);text-decoration:none}
main {padding:0;max-width:100%}
.movie-overview {display:grid;grid-template-columns:minmax(320px,380px) 1fr;grid-template-rows:auto auto;gap:0;background:linear-gradient(160deg,rgba(20,16,40,.9) 0%,rgba(10,10,18,.98) 60%),linear-gradient(90deg,#1a1030,#0a0a12);border-bottom:1px solid rgba(138,92,255,.3);position:relative;overflow:hidden}
.movie-overview::before {content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 20%,rgba(138,92,255,.18),transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(255,106,61,.12),transparent 50%);pointer-events:none}
.movie-overview__poster-wrapper {grid-column:1;grid-row:1;padding:1.5rem 0 1.5rem 1.5rem;position:relative;z-index:1;display:flex;align-items:flex-start}
.movie-overview__poster-wrapper img {width:100%;max-width:320px;aspect-ratio:2/3;object-fit:cover;border-radius:.5rem;box-shadow:0 0 40px rgba(138,92,255,.35),0 8px 24px rgba(0,0,0,.6);display:block;outline:1px solid rgba(255,255,255,.08);outline-offset:-1px}
.movie-overview__info {grid-column:2;grid-row:1;padding:1.5rem 1.5rem 0 .5rem;position:relative;z-index:1;display:flex;flex-direction:column;gap:1.25rem}
.movie-overview__title {font-size:2rem;font-weight:800;letter-spacing:.04em;color:#fff;line-height:1.2;text-shadow:0 2px 20px rgba(138,92,255,.3)}
.movie-overview__tagline {font-size:.95rem;font-weight:300;color:#b8a8d8;border-left:3px solid #ff6a3d;padding-left:.75rem;margin-top:-.5rem;letter-spacing:.02em}
.movie-details {margin-top:-.25rem}
.movie-details__list {display:grid;grid-template-columns:repeat(4,auto);gap:.35rem 1rem;list-style:none}
.movie-details__item {display:flex;gap:.4rem;align-items:baseline;font-size:.8rem}
.movie-details__item dt {color:#8a7fa8;font-weight:400;white-space:nowrap}
.movie-details__item dd {color:#e0d8f0;font-weight:500;white-space:nowrap;margin:0}
.movie-synopsis__heading {font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:.5rem;letter-spacing:.03em;display:flex;align-items:center;gap:.5rem}
.movie-synopsis__heading::before {content:"";width:1.25rem;height:2px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);border-radius:2px}
.movie-synopsis__content {font-size:.85rem;line-height:1.7;color:#c8c0d8;max-width:65ch}
.movie-synopsis__content p {margin-bottom:.6rem}
.movie-synopsis__content p:last-child {margin-bottom:0}
.movie-cast__heading {font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;letter-spacing:.03em}
.movie-cast__heading::before {content:"";width:1.25rem;height:2px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);border-radius:2px}
.movie-cast__cards {display:flex;gap:.75rem;flex-wrap:wrap}
.cast-card {background:rgba(255,255,255,.04);border:1px solid rgba(138,92,255,.15);border-radius:.5rem;padding:.6rem .9rem;display:flex;flex-direction:column;gap:.15rem;flex:0 0 auto;transition:background .2s,border-color .2s;min-width:0}
.cast-card:hover {background:rgba(138,92,255,.12);border-color:rgba(138,92,255,.4)}
.cast-card__name {font-size:.9rem;font-weight:700;color:#fff;white-space:nowrap}
.cast-card__role {font-size:.75rem;color:#a098b8;white-space:nowrap}
.episode-status {display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.25rem 1rem;margin-top:.25rem}
.episode-status__heading {grid-column:1/-1;font-size:1.1rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:.5rem;letter-spacing:.03em;margin-bottom:.25rem}
.episode-status__heading::before {content:"";width:1.25rem;height:2px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);border-radius:2px}
.episode-status__info {display:flex;gap:1rem;grid-column:1/-1;font-size:.85rem}
.episode-status__total {color:#c8c0d8;font-weight:500}
.episode-status__current {color:#ff8a5c;font-weight:600}
.episode-status__progress {grid-column:1/-1;height:6px;background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden;position:relative;margin-top:.25rem}
.episode-status__progress::after {content:"";position:absolute;left:0;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#8a5cff,#ff6a3d);border-radius:3px}
.episode-status__progress-label {position:absolute;top:.5rem;left:0;font-size:.65rem;color:#8a7fa8;white-space:nowrap}
.movie-player-wrapper {grid-column:1/-1;grid-row:2;padding:1rem 1.5rem 1.5rem;position:relative;z-index:2;background:rgba(0,0,0,.4)}
.movie-player-wrapper video {display:block;max-width:100%;border-radius:.5rem;background:#000;box-shadow:0 4px 30px rgba(0,0,0,.5)}
.player-controls {display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-top:.6rem;max-width:960px;margin-left:auto;margin-right:auto}
.player-controls__btn {background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#c8c0d8;font-size:.75rem;font-weight:400;padding:.35rem .7rem;border-radius:.35rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s;white-space:nowrap}
.player-controls__btn:hover {background:rgba(138,92,255,.25);color:#fff;border-color:rgba(138,92,255,.5)}
.player-controls__progress, .player-controls__volume {width:140px;accent-color:#8a5cff;background:rgba(255,255,255,.1);border-radius:4px;height:4px;cursor:pointer}
.movie-player-wrapper.theater-mode {max-width:1400px;margin:0 auto}
.movie-player-wrapper.lights-off {background:#000}
.movie-player-wrapper.lights-off video {opacity:.9}
.movie-timeline {padding:2rem 1.5rem 1rem;background:#0e0c1a;border-bottom:1px solid rgba(138,92,255,.15)}
.movie-timeline__heading {font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:1.5rem;text-align:center;letter-spacing:.05em;position:relative}
.movie-timeline__heading::after {content:"";display:block;width:60px;height:3px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);margin:.4rem auto 0;border-radius:3px}
.movie-timeline__list {display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem;max-width:1000px;margin:0 auto;position:relative}
.movie-timeline__list::before {content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#8a5cff,#ff6a3d);opacity:.3;transform:translateX(-50%)}
.timeline-item {display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;background:rgba(255,255,255,.03);border:1px solid rgba(138,92,255,.12);border-radius:.5rem;position:relative;transition:background .2s,border-color .2s;align-self:start}
.timeline-item:hover {background:rgba(138,92,255,.08);border-color:rgba(138,92,255,.3)}
.timeline-item:nth-child(odd) {grid-column:1;margin-right:1rem}
.timeline-item:nth-child(even) {grid-column:2;margin-left:1rem}
.timeline-item::before {content:"";position:absolute;top:1.2rem;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#8a5cff,#ff6a3d);box-shadow:0 0 12px rgba(138,92,255,.6)}
.timeline-item:nth-child(odd)::before {right:-1.85rem}
.timeline-item:nth-child(even)::before {left:-1.85rem}
.timeline-item__time {font-size:.75rem;font-weight:600;color:#ff8a5c;letter-spacing:.02em}
.timeline-item__label {font-size:.9rem;font-weight:400;color:#d8d0e8;line-height:1.4}
.episode-list {padding:2rem 1.5rem;background:#0a0a12;border-bottom:1px solid rgba(138,92,255,.15)}
.episode-list__heading {font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:1.5rem;text-align:center;letter-spacing:.05em}
.episode-list__heading::after {content:"";display:block;width:60px;height:3px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);margin:.4rem auto 0;border-radius:3px}
.episode-list__items {display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;max-width:1100px;margin:0 auto}
.episode-item {background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:.5rem;padding:1rem;display:flex;flex-direction:column;gap:.35rem;transition:background .2s,border-color .2s,transform .2s;cursor:pointer}
.episode-item:hover {background:rgba(138,92,255,.1);border-color:rgba(138,92,255,.35);transform:translateY(-2px)}
.episode-item__number {font-size:.7rem;font-weight:600;color:#8a5cff;letter-spacing:.05em;text-transform:uppercase}
.episode-item__title {font-size:1rem;font-weight:700;color:#fff;letter-spacing:.02em}
.episode-item__summary {font-size:.75rem;color:#a098b8;line-height:1.5;flex-grow:1}
.episode-item__duration {font-size:.7rem;color:#6a6280;font-weight:400}
.movie-comments {padding:2rem 1.5rem;background:#0e0c1a;border-bottom:1px solid rgba(138,92,255,.15)}
.movie-comments__heading {font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:1.5rem;text-align:center;letter-spacing:.05em}
.movie-comments__heading::after {content:"";display:block;width:60px;height:3px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);margin:.4rem auto 0;border-radius:3px}
.movie-comments__grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;max-width:1100px;margin:0 auto}
.comment-card {background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:.5rem;padding:1rem;display:flex;flex-direction:column;gap:.4rem;transition:background .2s,border-color .2s}
.comment-card:hover {background:rgba(255,106,61,.08);border-color:rgba(255,106,61,.25)}
.comment-card__nickname {font-size:.85rem;font-weight:700;color:#fff;letter-spacing:.02em;display:flex;align-items:center;gap:.4rem}
.comment-card__nickname::before {content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#8a5cff,#ff6a3d);flex-shrink:0}
.comment-card__text {font-size:.8rem;color:#c8c0d8;line-height:1.5;font-weight:300}
.recommendation-section {padding:2rem 1.5rem;background:#0a0a12;border-bottom:1px solid rgba(138,92,255,.1)}
.recommendation-section:last-of-type {border-bottom:none}
.recommendation-section__title {font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:1rem;text-align:center;letter-spacing:.04em;position:relative}
.recommendation-section__title::after {content:"";display:block;width:50px;height:2px;background:linear-gradient(90deg,#8a5cff,#ff6a3d);margin:.4rem auto 0;border-radius:2px}
.recommendation-section__list {display:flex;gap:1rem;overflow-x:auto;padding-bottom:.75rem;scrollbar-width:thin;scrollbar-color:rgba(138,92,255,.4) transparent;max-width:1200px;margin:0 auto}
.recommendation-section__list::-webkit-scrollbar {height:6px}
.recommendation-section__list::-webkit-scrollbar-track {background:rgba(255,255,255,.02);border-radius:3px}
.recommendation-section__list::-webkit-scrollbar-thumb {background:rgba(138,92,255,.4);border-radius:3px}
a[data-runtime="recommendation"] {flex:0 0 220px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:.5rem;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:#fff;transition:transform .2s,border-color .2s,box-shadow .2s;align-self:flex-start}
a[data-runtime="recommendation"]:hover {transform:translateY(-3px);border-color:rgba(138,92,255,.45);box-shadow:0 8px 30px rgba(138,92,255,.2)}
a[data-runtime="recommendation"] img {width:100%;height:130px;object-fit:cover;display:block;background:#1a1030}
a[data-runtime="recommendation"] span[data-runtime="name"] {font-size:.9rem;font-weight:700;padding:.6rem .75rem .1rem;letter-spacing:.02em}
a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.75rem;color:#a098b8;padding:0 .75rem .75rem;line-height:1.4;font-weight:300}
footer {padding:2rem 1.5rem;background:#07070d;border-top:1px solid rgba(138,92,255,.2);display:flex;flex-direction:column;gap:1.5rem;align-items:center;text-align:center}
.footer-disclaimer {font-size:.75rem;color:#6a6280;max-width:800px;line-height:1.6;font-weight:300}
.footer-friend-links {display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center;align-items:center;max-width:1000px}
.footer-friend-links__label {font-size:.8rem;font-weight:700;color:#8a5cff;letter-spacing:.05em;white-space:nowrap}
a.runtime-friend-link {font-size:.8rem;color:#8a7fa8;text-decoration:none;transition:color .2s}
a.runtime-friend-link:hover {color:#ff8a5c;text-decoration:underline}
.footer-links {display:flex;gap:1.5rem}
a[data-contract="footer-home"], a[data-contract="footer-sitemap"] {font-size:.85rem;color:#b8b0d0;text-decoration:none;transition:color .2s}
a[data-contract="footer-home"]:hover, a[data-contract="footer-sitemap"]:hover {color:#fff;text-decoration:underline}
.sr-only {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:1100px){.movie-overview {grid-template-columns:minmax(280px,340px) 1fr}
.movie-details__list {grid-template-columns:repeat(3,auto)}
.episode-list__items {grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.movie-overview {grid-template-columns:1fr}
.movie-overview__poster-wrapper {padding:1rem 1.5rem 0;justify-content:center}
.movie-overview__poster-wrapper img {max-width:280px;width:100%}
.movie-overview__info {grid-column:1;grid-row:2;padding:1rem 1.5rem 0}
.movie-player-wrapper {grid-column:1;grid-row:3}
.movie-timeline__list {grid-template-columns:1fr;gap:.75rem}
.movie-timeline__list::before {left:12px;transform:none}
.timeline-item:nth-child(odd), .timeline-item:nth-child(even) {grid-column:1;margin-left:1.5rem;margin-right:0}
.timeline-item:nth-child(odd)::before, .timeline-item:nth-child(even)::before {left:-1.15rem;right:auto}
.episode-list__items {grid-template-columns:repeat(2,1fr)}
.movie-cast__cards {flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem}
.cast-card {flex:0 0 auto}}
@media (max-width:600px){header {flex-direction:column;align-items:flex-start;gap:.5rem;padding:.5rem 1rem}
nav[data-contract="categories"] {width:100%;overflow-x:auto}
.movie-overview__title {font-size:1.4rem}
.movie-overview__tagline {font-size:.8rem}
.movie-details__list {grid-template-columns:repeat(2,auto)}
.movie-synopsis__content {font-size:.8rem}
.episode-list__items {grid-template-columns:1fr}
.movie-comments__grid {grid-template-columns:1fr}
.recommendation-section__list {flex-wrap:nowrap}
a[data-runtime="recommendation"] {flex:0 0 180px}
a[data-runtime="recommendation"] img {height:110px}
.movie-player-wrapper {padding:.5rem .75rem 1rem}
.player-controls__progress, .player-controls__volume {width:90px}
.player-controls {gap:.35rem}
.player-controls__btn {padding:.3rem .5rem;font-size:.7rem}
.movie-timeline, .episode-list, .movie-comments, .recommendation-section {padding:1.5rem 1rem}
.timeline-item {padding:.75rem 1rem}
footer {padding:1.5rem 1rem}}
.movie-player-wrapper.fullscreen video {width:100vw;height:100vh;object-fit:contain;border-radius:0}
.movie-player-wrapper.pip video {position:fixed;bottom:1rem;right:1rem;width:320px;border-radius:8px;box-shadow:0 8px 30px rgba(0,0,0,.6);z-index:9999}
.movie-player-wrapper.theater-mode {max-width:1400px}
.movie-player-wrapper.lights-off {background:#000}
.movie-player-wrapper.lights-off video {filter:brightness(.9)}
.player-controls__btn:active {transform:scale(.95)}
.player-controls__btn:focus-visible {outline:2px solid #8a5cff;outline-offset:2px}
.movie-overview__info>*, .movie-overview__poster-wrapper, .movie-player-wrapper {min-width:0}
.movie-details__item dd {overflow-wrap:anywhere}
.episode-item__summary {min-height:0}
.comment-card {height:auto}
.timeline-item {height:auto}
a[data-runtime="recommendation"] {height:auto}
.movie-cast__cards, .episode-list__items, .movie-comments__grid, .recommendation-section__list {align-items:start}
.episode-item, .comment-card, .timeline-item, .cast-card {align-self:start}
.movie-timeline__list {align-items:start}
.movie-overview__poster-wrapper {height:fit-content}
.movie-overview__poster-wrapper img {display:block}
.movie-details {margin-bottom:.25rem}
.episode-status__progress {position:relative;margin-top:.75rem}
.episode-status__progress-label {top:-1.25rem}
.movie-player-wrapper {min-width:0;width:100%}
.movie-player-wrapper video {max-width:none;min-width:0}
.footer-friend-links a {white-space:nowrap}
.footer-friend-links__label {white-space:nowrap}
.runtime-category {white-space:nowrap}
.cast-card {white-space:nowrap}
a[data-runtime="recommendation"] img {max-width:100%;height:130px;object-fit:cover;display:block}

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}
