*, *::before, *::after {box-sizing:border-box;margin:0;padding:0}
html {font-size:16px;scroll-behavior:smooth}
body {font-family:Georgia,"Times New Roman",serif;background:#1a1714;color:#d8d2c8;line-height:1.5;min-height:100vh;background-image:radial-gradient(circle at 20% 10%,rgba(180,100,50,.06) 0%,transparent 40%),radial-gradient(circle at 80% 90%,rgba(180,100,50,.04) 0%,transparent 35%),linear-gradient(rgba(120,110,100,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(120,110,100,.03) 1px,transparent 1px);background-size:auto,auto,32px 32px,32px 32px}
img, video {display:block;max-width:100%;height:auto}
a {color:#c9b8a0;text-decoration:none;transition:color .2s ease}
a:hover {color:#d95f43}
ul {list-style:none}
button {font:inherit;cursor:pointer;background:none;border:none;color:inherit}
header {display:flex;align-items:center;justify-content:space-between;padding:1.2rem 4%;border-bottom:1px solid #3a332c;position:sticky;top:0;z-index:100;background:rgba(26,23,20,.95);backdrop-filter:blur(8px)}
.site-brand {font-size:1.15rem;letter-spacing:.3em;text-transform:uppercase;color:#e8dfd0;font-weight:700;border-bottom:2px solid #d95f43;padding-bottom:.2rem}
.site-brand:hover {color:#d95f43}
nav[data-contract="categories"] {display:flex;gap:.4rem;flex-wrap:wrap;justify-content:flex-end}
.runtime-category {display:inline-block;padding:.3rem .8rem;font-size:.78rem;letter-spacing:.08em;color:#b8ad9e;border:1px solid transparent;border-radius:2px;white-space:nowrap;transition:all .25s}
.runtime-category:hover {color:#f0e8dc;border-color:#5a4e42;background:rgba(90,78,66,.2)}
main {max-width:1440px;margin:0 auto;padding:0 4%}
.movie-unit {display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);grid-template-rows:auto auto;gap:0;margin:2.5rem 0 3.5rem;background:linear-gradient(145deg,#23201c,#1a1815);border:1px solid #3a332c;box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 0 1px rgba(180,100,50,.08) inset;position:relative}
.movie-unit::before {content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#d95f43,transparent 60%,#d95f43);opacity:.6}
.poster-frame {grid-column:1;grid-row:1/3;padding:1.5rem;background:linear-gradient(150deg,#2d2823,#1d1a17);border-right:1px solid #3a332c}
.poster-img {width:100%;aspect-ratio:2/3;object-fit:cover;box-shadow:0 8px 30px rgba(0,0,0,.6),0 0 0 1px rgba(220,200,170,.15);border-radius:1px}
.movie-info-group {grid-column:2;grid-row:1;padding:1.5rem 2rem 1rem;display:flex;flex-direction:column;gap:.8rem}
.movie-title {font-size:1.9rem;font-weight:700;letter-spacing:.03em;color:#f0e8dc;line-height:1.2;text-shadow:0 2px 0 #0f0d0b,0 0 20px rgba(217,95,67,.15);position:relative}
.movie-title::after {content:"";display:block;width:70px;height:2px;background:#d95f43;margin-top:.5rem}
.tagline {font-style:italic;color:#b8a890;font-size:.95rem;letter-spacing:.05em;padding-left:.5rem;border-left:3px solid rgba(217,95,67,.5)}
.synopsis-panel {display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1.5rem;padding:.6rem 0;border-top:1px solid #3a332c;border-bottom:1px solid #3a332c;margin-top:.2rem}
.synopsis-para {font-size:.88rem;line-height:1.6;color:#c9c0b4;text-align:justify}
.synopsis-para:nth-child(3) {grid-column:1/3}
.cast-list {padding:.4rem 0}
.section-subtitle {font-size:.85rem;text-transform:uppercase;letter-spacing:.2em;color:#d95f43;margin-bottom:.5rem;font-weight:600}
.actor-cards {display:flex;flex-wrap:wrap;gap:.4rem}
.actor-card {background:rgba(217,95,67,.1);border:1px solid rgba(217,95,67,.3);padding:.25rem .8rem;font-size:.85rem;color:#e8d8c4;border-radius:2px}
.episode-current {display:flex;align-items:baseline;gap:.4rem;padding:.4rem 0}
.current-episode-label {font-size:.85rem;color:#a89a88}
.current-episode-number {font-size:1.3rem;font-weight:700;color:#d95f43;letter-spacing:.05em}
.total-episodes {font-size:.8rem;color:#8a7c6c}
.detail-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.3rem 1rem;padding:.6rem 0 0;border-top:1px solid #3a332c}
.detail-item {font-size:.82rem;color:#c0b5a6;display:flex;flex-direction:column}
.detail-label {font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#7a6c5c;margin-bottom:.1rem}
.player-wrapper {grid-column:2;grid-row:2;padding:0 2rem 1.5rem;position:relative;background:linear-gradient(rgba(217,95,67,.04),transparent 40%)}
.player-wrapper video {background:#000;border:1px solid #3a332c;box-shadow:0 10px 40px rgba(0,0,0,.6)}
.episodes-grid-section {margin:3.5rem 0;padding-top:2rem;border-top:1px solid #3a332c}
.section-title {font-size:1.5rem;font-weight:700;letter-spacing:.15em;color:#e0d6c8;margin-bottom:1.2rem;text-transform:uppercase;position:relative;padding-left:1rem}
.section-title::before {content:"";position:absolute;left:0;top:.2rem;bottom:.2rem;width:3px;background:#d95f43}
.section-title::after {content:"";position:absolute;left:1rem;right:0;bottom:-2px;height:1px;background:linear-gradient(90deg,#3a332c,transparent)}
.episode-grid {display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}
.episode-cell {background:#221f1b;border:1px solid #322d27;padding:.7rem .8rem;display:flex;flex-direction:column;gap:.15rem;transition:transform .2s,border-color .2s;cursor:pointer;position:relative;overflow:hidden}
.episode-cell:hover {border-color:#4a4238;transform:translateY(-2px)}
.episode-cell:hover::before {transform:scaleY(1)}
.ep-number {font-size:.75rem;font-weight:700;color:#d95f43;letter-spacing:.1em}
.ep-title {font-size:.9rem;color:#e0d6c8;line-height:1.3}
.ep-duration {font-size:.72rem;color:#7a6c5c;letter-spacing:.05em}
.timeline-section {margin:3.5rem 0;padding:2rem 0;border-top:1px solid #3a332c}
.timeline-wave {position:relative;padding:1rem 0}
.timeline-wave::before {content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#d95f43,rgba(217,95,67,.1));transform:translateX(-50%)}
.timeline-node {position:relative;width:50%;padding:1rem 2rem;margin-bottom:1.5rem}
.timeline-node:nth-child(odd) {left:0;text-align:right}
.timeline-node:nth-child(even) {left:50%;text-align:left}
.timeline-node::before {content:"";position:absolute;top:1.5rem;width:12px;height:12px;border-radius:50%;background:#1a1714;border:2px solid #d95f43;z-index:1}
.timeline-node:nth-child(odd)::before {right:-7px}
.timeline-node:nth-child(even)::before {left:-7px}
.timeline-node::after {content:"";position:absolute;top:1.7rem;width:2rem;height:1px;background:#3a332c}
.timeline-node:nth-child(odd)::after {right:-2rem}
.timeline-node:nth-child(even)::after {left:-2rem}
.timecode {display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.15em;color:#d95f43;background:rgba(217,95,67,.1);padding:.2rem .6rem;border-radius:2px;margin-bottom:.4rem}
.timeline-text {font-size:.88rem;line-height:1.6;color:#c0b5a6}
.comments-wall {margin:3.5rem 0;padding:2rem 0;border-top:1px solid #3a332c;columns:3;column-gap:1rem}
.comments-wall .section-title {column-span:all;margin-bottom:1.5rem}
.comment-card {break-inside:avoid;background:#221f1b;border:1px solid #322d27;padding:1rem 1.2rem;margin-bottom:1rem;border-radius:2px;position:relative;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.comment-card::before {content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#d95f43,rgba(217,95,67,.1));opacity:.4}
.comment-nick {display:block;font-size:.8rem;font-weight:700;color:#d95f43;margin-bottom:.5rem;letter-spacing:.05em}
.comment-text {font-size:.85rem;line-height:1.6;color:#c0b5a6;font-style:italic}
.recommendation-row {margin:2.5rem 0;padding:1.5rem 0;border-top:1px solid #3a332c}
.rec-title {font-size:1.1rem;font-weight:700;letter-spacing:.1em;color:#e0d6c8;margin-bottom:1rem;text-transform:uppercase;display:flex;align-items:center;gap:.6rem}
.rec-title::before {content:"";width:24px;height:2px;background:#d95f43}
.rec-items {display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}
.rec-items a[data-runtime="recommendation"] {display:flex;flex-direction:column;gap:.4rem;padding:.8rem;background:#221f1b;border:1px solid #322d27;transition:transform .2s,border-color .2s;position:relative;overflow:hidden}
.rec-items a[data-runtime="recommendation"]:hover {transform:translateY(-3px);border-color:#4a4238}
.rec-items a[data-runtime="recommendation"] img {width:100%;aspect-ratio:3/4;object-fit:cover;background:#1a1714}
.rec-items a[data-runtime="recommendation"] span[data-runtime="name"] {font-size:.9rem;font-weight:600;color:#e0d6c8;line-height:1.3}
.rec-items a[data-runtime="recommendation"] span[data-runtime="blurb"] {font-size:.75rem;color:#8a7c6c;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
footer {margin-top:4rem;padding:2.5rem 4%;border-top:1px solid #3a332c;background:#1a1714;display:grid;gap:1.5rem}
footer p[data-contract="disclaimer"] {font-size:.75rem;color:#7a6c5c;line-height:1.6;max-width:800px}
nav[data-contract="friend-links"] {display:flex;flex-wrap:wrap;gap:.3rem 1rem;align-items:center}
.friend-label {font-size:.8rem;color:#a89a88;white-space:nowrap}
.runtime-friend-link {font-size:.8rem;color:#c9b8a0;padding:.15rem .4rem;white-space:nowrap}
.runtime-friend-link:hover {color:#d95f43;background:rgba(217,95,67,.1)}
.footer-links {display:flex;gap:1.5rem}
.footer-links a[data-contract="footer-home"], .footer-links a[data-contract="footer-sitemap"] {font-size:.85rem;color:#c9b8a0;letter-spacing:.05em}
.footer-links a[data-contract="footer-home"]:hover, .footer-links a[data-contract="footer-sitemap"]:hover {color:#d95f43}
.custom-controls {display:flex;gap:.3rem;padding:.4rem;background:rgba(0,0,0,.7);border:1px solid #3a332c;border-top:none;flex-wrap:wrap}
video.player, video.player.theater-mode {width:100%!important}
video.player.fullscreen {width:100vw!important;height:auto!important}
video.player.lights-dim {opacity:.6;filter:brightness(.7)}
video.player.muted-on, video.player.volume-muted {color:#d95f43}
video.player.speed-high {box-shadow:0 0 20px rgba(217,95,67,.3)}
video.player.progress-active {box-shadow:0 0 0 2px rgba(217,95,67,.5)}
video.player.theater-mode {position:fixed;bottom:0;left:0;right:0;z-index:90;width:100%;aspect-ratio:21/9;background:#000;box-shadow:0 -10px 40px rgba(0,0,0,.8)}
.player-wrapper:has(video.player.theater-mode) {padding-bottom:0}
@media(max-width:1024px){.movie-unit {grid-template-columns:200px minmax(0,1fr)}
.movie-title {font-size:1.6rem}
.comments-wall {columns:2}
.synopsis-panel {grid-template-columns:1fr}}
@media(max-width:768px){header {padding:1rem 3%;flex-direction:column;gap:.6rem;align-items:flex-start}
nav[data-contract="categories"] {justify-content:flex-start}
.movie-unit {grid-template-columns:1fr;grid-template-rows:auto auto auto}
.poster-frame {grid-column:1;grid-row:1;padding:1rem;border-right:none;border-bottom:1px solid #3a332c}
.poster-img {max-width:220px;margin:0 auto}
.movie-info-group {grid-column:1;grid-row:2;padding:1.2rem}
.player-wrapper {grid-column:1;grid-row:3;padding:1.2rem}
.synopsis-panel {grid-template-columns:1fr}
.timeline-node {width:100%;left:0!important;text-align:left!important;padding-left:2.5rem;padding-right:0}
.timeline-node::before {left:8px!important;right:auto!important}
.timeline-node::after {left:20px!important;right:auto!important}
.timeline-wave::before {left:15px}
.episode-grid {grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
.comments-wall {columns:1}
.rec-items {grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
@media(max-width:480px){main {padding:0 3%}
.movie-unit {margin:1.5rem 0}
.movie-title {font-size:1.3rem}
.detail-grid {grid-template-columns:1fr 1fr}
.episode-grid {grid-template-columns:1fr 1fr}
.rec-items {grid-template-columns:1fr}
.poster-frame {padding:.8rem}
.poster-img {max-width:180px}
.player-wrapper {padding:.8rem}
.player-wrapper video {aspect-ratio:16/9!important}
.timeline-node {padding-left:2rem}
.timeline-node::before {left:5px!important}
.timeline-node::after {left:17px!important}
.timeline-wave::before {left:12px}}
@media(max-width:360px){.episode-grid {grid-template-columns:1fr}
.detail-grid {grid-template-columns:1fr}
.actor-cards {flex-direction:column}
.rec-items a[data-runtime="recommendation"] img {aspect-ratio:4/3}}
::selection {background:rgba(217,95,67,.3);color:#f0e8dc}
.episode-cell:focus-visible, .rec-items a:focus-visible, .runtime-category:focus-visible {outline:2px solid #d95f43;outline-offset:2px}
@media print{body {background:#fff;color:#000}
header, footer, .player-wrapper, .custom-controls {display:none}
main {padding:0}
.movie-unit {box-shadow:none;border-color:#ccc}
.episode-cell, .comment-card, .rec-items a[data-runtime="recommendation"] {background:#fff;border-color:#ccc}}

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}
