* {margin:0;padding:0;box-sizing:border-box}
html {scroll-behavior:smooth}
body {font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:#1a1f2b;color:#d8dee9;line-height:1.5;font-size:14px}
img, video {display:block;max-width:100%}
a {color:inherit;text-decoration:none}
ul {list-style:none}
button, input, select {font:inherit;color:inherit;background:none;border:none}
button {cursor:pointer}
.site-header {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;background:#141824;border-bottom:2px solid #d97a3e;position:sticky;top:0;z-index:100}
.site-brand {font-size:1.4rem;font-weight:700;color:#e8eef2;letter-spacing:.5px}
.site-brand:hover {color:#d97a3e}
.categories-nav {display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.runtime-category {display:inline-block;padding:4px 10px;border:1px solid #3a4152;border-radius:12px;font-size:.8rem;color:#aab4c6;white-space:nowrap;transition:background .2s,border-color .2s,color .2s}
.runtime-category:hover {background:#d97a3e;border-color:#d97a3e;color:#141824}
.page-main {max-width:1280px;margin:0 auto;padding:16px 20px 32px}
.movie-overview-shell {background:#1e2430;border-radius:8px;border:1px solid #2a3142;padding:20px;margin-bottom:32px;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.media-layout-group {display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}
.poster-media-wrapper {width:220px}
.main-poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:4px;border:1px solid #3a4152}
.player-module {min-width:0}
.player-video {background:#000;border-radius:4px;border:1px solid #3a4152}
.player-controls-panel {display:flex;align-items:center;gap:8px;padding:8px 0;flex-wrap:wrap}
.control-btn {background:#2a3142;border:1px solid #3a4152;border-radius:4px;padding:6px 10px;font-size:.8rem;color:#c8d0da;transition:background .2s}
.control-btn:hover {background:#d97a3e;color:#141824}
.control-progress {flex:1;min-width:100px;accent-color:#d97a3e}
.control-volume {width:80px;accent-color:#d97a3e}
.control-speed {background:#2a3142;border:1px solid #3a4152;border-radius:4px;padding:6px 8px;font-size:.8rem}
.title-tagline-group {margin-bottom:24px;border-bottom:1px solid #3a4152;padding-bottom:16px}
.movie-title {font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;font-weight:700;color:#e8eef2;letter-spacing:1px;margin-bottom:8px}
.movie-tagline {font-size:.95rem;color:#d97a3e;font-style:italic;letter-spacing:.5px}
.cast-grid-block {margin-bottom:24px}
.cast-grid-block .block-heading {margin-bottom:12px}
.cast-grid-container {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cast-card {text-align:center;padding:12px 8px;border-radius:6px;background:rgba(42,49,66,.4)}
.avatar-circle {width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#2a3142,#1a1f2b);border:2px solid #d97a3e;margin:0 auto 8px;position:relative}
.avatar-circle::after {content:"";position:absolute;top:20%;left:50%;transform:translateX(-50%);width:28px;height:28px;border-radius:50%;background:#3a4152;border:2px solid #d97a3e}
.actor-name {font-weight:600;color:#e8eef2;font-size:.9rem}
.actor-role {font-size:.8rem;color:#aab4c6;margin-top:2px}
.synopsis-block {margin-bottom:24px}
.synopsis-paragraph {color:#c8d0da;font-size:.9rem;margin-bottom:10px;line-height:1.6}
.episode-status-block {display:flex;gap:16px;align-items:center;background:#2a3142;border-radius:6px;padding:12px 16px;margin-bottom:24px;font-size:.9rem}
.status-total, .status-current, .status-update {font-weight:600}
.status-total {color:#c8d0da}
.status-current {color:#d97a3e}
.status-update {color:#aab4c6;font-weight:400}
.details-list-block {margin-bottom:8px}
.details-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}
.details-list li {display:flex;align-items:baseline;font-size:.85rem;color:#aab4c6;padding:4px 0;border-bottom:1px solid rgba(58,65,82,.4)}
.detail-label {color:#e8eef2;font-weight:600;min-width:64px;flex-shrink:0}
.block-heading {font-family:Georgia,"Times New Roman",serif;font-size:1.2rem;color:#e8eef2;border-left:3px solid #d97a3e;padding-left:10px;margin-bottom:16px;letter-spacing:.5px}
.timeline-section-block {margin-bottom:32px;padding:0 8px}
.timeline-vertical-container {position:relative;max-width:720px;margin:0 auto;padding:20px 0}
.timeline-vertical-container::before {content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:#d97a3e;transform:translateX(-50%)}
.timeline-entry {position:relative;width:calc(50% - 20px);margin-bottom:24px;padding:10px 14px;background:#1e2430;border:1px solid #3a4152;border-radius:6px}
.timeline-entry::before {content:"";position:absolute;top:16px;width:10px;height:10px;border-radius:50%;background:#d97a3e;border:2px solid #1a1f2b}
.timeline-entry.left-entry {margin-right:auto;margin-left:0;text-align:right}
.timeline-entry.left-entry::before {right:-26px}
.timeline-entry.right-entry {margin-left:auto;margin-right:0;text-align:left}
.timeline-entry.right-entry::before {left:-26px}
.timecode {display:block;font-weight:700;color:#d97a3e;font-size:.85rem;margin-bottom:4px;font-family:Georgia,"Times New Roman",serif}
.timeline-label {font-size:.85rem;color:#c8d0da;line-height:1.4}
.episodes-horizontal-block {margin-bottom:32px}
.episodes-scroll-wrapper {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;overflow-x:auto;padding-bottom:8px}
.episode-card {background:#1e2430;border:1px solid #3a4152;border-radius:6px;padding:14px;display:flex;flex-direction:column;gap:6px;min-height:160px;transition:border-color .2s,transform .2s}
.episode-card:hover {border-color:#d97a3e;transform:translateY(-2px)}
.episode-number {font-family:Georgia,"Times New Roman",serif;font-size:2rem;font-weight:700;color:#d97a3e;line-height:1}
.episode-title {font-size:1rem;font-weight:600;color:#e8eef2}
.episode-summary {font-size:.8rem;color:#aab4c6;line-height:1.4;flex:1}
.episode-duration {font-size:.75rem;color:#d97a3e;font-weight:600}
.comments-masonry-block {margin-bottom:32px}
.comments-masonry-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}
.comment-item {background:#1e2430;border:1px solid #3a4152;border-radius:6px;padding:12px 14px;font-size:.85rem}
.comment-item-tall {min-height:120px}
.comment-item-short {min-height:80px}
.comment-item-mid {min-height:100px}
.comment-nickname {display:block;font-weight:600;color:#d97a3e;margin-bottom:6px;font-size:.8rem}
.comment-text {color:#c8d0da;line-height:1.5}
.recommendation-region {margin-bottom:32px}
.recommendation-heading {font-family:Georgia,"Times New Roman",serif;font-size:1.1rem;color:#e8eef2;border-left:3px solid #d97a3e;padding-left:10px;margin-bottom:14px}
.recommendation-list {display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;align-items:start}
.rec-card {display:flex;flex-direction:column;background:#1e2430;border:1px solid #3a4152;border-radius:6px;overflow:hidden;transition:border-color .2s,transform .2s;text-decoration:none;color:inherit}
.rec-card:hover {border-color:#d97a3e;transform:translateY(-2px)}
.rec-poster {width:100%;aspect-ratio:2/3;object-fit:cover;background:#2a3142}
.rec-name {font-weight:600;font-size:.85rem;padding:8px 8px 2px;color:#e8eef2}
.rec-blurb {font-size:.75rem;color:#aab4c6;padding:0 8px 8px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.site-footer {background:#141824;border-top:2px solid #d97a3e;padding:20px;margin-top:40px}
.footer-disclaimer {font-size:.75rem;color:#aab4c6;margin-bottom:12px;line-height:1.5}
.footer-link {display:inline-block;font-size:.85rem;color:#c8d0da;margin-right:16px;margin-bottom:8px;transition:color .2s}
.footer-link:hover {color:#d97a3e}
.friend-links-nav {display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin-top:12px}
.friend-links-label {font-size:.8rem;color:#aab4c6}
.runtime-friend-link {font-size:.8rem;color:#aab4c6;transition:color .2s}
.runtime-friend-link:hover {color:#d97a3e}
.theater-mode {max-width:100%!important;width:100%!important}
.lights-off {background:#0a0c10}
.lights-off .movie-overview-shell, .lights-off .cast-card, .lights-off .timeline-entry, .lights-off .episode-card, .lights-off .comment-item, .lights-off .rec-card {background:#141824;border-color:#2a3142}
.lights-off .movie-overview-shell {box-shadow:0 4px 20px rgba(0,0,0,.6)}
@media (max-width:900px){.media-layout-group {grid-template-columns:1fr;gap:16px}
.poster-media-wrapper {width:100%;max-width:220px;margin:0 auto}
.cast-grid-container {grid-template-columns:repeat(2,minmax(0,1fr))}
.timeline-entry {width:calc(50% - 10px)}
.timeline-vertical-container::before {left:50%}
.episodes-scroll-wrapper {grid-template-columns:repeat(3,minmax(0,1fr))}
.comments-masonry-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.site-header {flex-direction:column;gap:8px;padding:10px}
.categories-nav {justify-content:center}
.page-main {padding:12px 12px 24px}
.movie-overview-shell {padding:14px}
.movie-title {font-size:1.4rem}
.cast-grid-container {grid-template-columns:repeat(2,minmax(0,1fr))}
.details-list {grid-template-columns:1fr}
.timeline-vertical-container::before {left:8px}
.timeline-entry {width:calc(100% - 24px);margin-left:24px!important;margin-right:0!important;text-align:left!important}
.timeline-entry::before {left:-22px!important;right:auto!important}
.episodes-scroll-wrapper {grid-template-columns:repeat(2,minmax(0,1fr))}
.comments-masonry-grid {grid-template-columns:1fr}
.recommendation-list {grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}
.player-controls-panel {gap:4px}
.control-btn {padding:4px 6px;font-size:.7rem}
.control-volume {width:60px}}

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}
