:root{color-scheme:dark;--paper:#141612;--ink:#e8e5dc;--muted:#a9ac9f;--line:#353a31;--control-line:#727969;--accent:#e6aa85;--serif:Georgia,"Songti SC","STSong",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}.skip{position:absolute;top:-100px;left:1rem;background:var(--ink);color:var(--paper);padding:12px;z-index:2}.skip:focus{top:1rem}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.masthead,main,footer{max-width:1440px;margin:auto}.masthead{height:90px;margin-inline:auto;padding:0 6%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:30px}.brand{text-decoration:none;font:bold 32px/1 Georgia,serif;letter-spacing:-2px}.brand span:first-child{font-weight:400}.brand-dot,.footer-brand span,h1 span{color:var(--accent)}.masthead-label{font-size:12px;color:var(--muted);letter-spacing:.08em}.masthead-index{margin-left:auto;font:10px var(--sans);letter-spacing:.16em;color:var(--muted)}main{padding:0 6%}.intro{display:flex;justify-content:space-between;align-items:end;padding:104px 0 100px;gap:40px}.eyebrow{font-size:10px;letter-spacing:.17em;color:var(--accent);font-weight:700}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:8px}.intro h1{font:normal clamp(84px,11vw,160px)/1 var(--serif);margin:30px 0 18px;letter-spacing:0}.intro-copy{font-size:15px;line-height:1.9;color:var(--muted);margin:0}.intro-side{width:235px;padding-bottom:8px;border-top:1px solid var(--control-line)}.side-label{display:block;font-size:10px;letter-spacing:.12em;padding-top:14px;color:var(--muted)}.intro-side p{font:24px/1.7 var(--serif);margin:35px 0}.side-number{font:13px Georgia,serif;letter-spacing:.08em}.side-number span{color:var(--accent);padding:0 8px}.catalog{border-top:2px solid var(--control-line);padding-top:31px}.catalog-top{display:flex;justify-content:space-between;gap:40px;align-items:end;padding-bottom:36px}.catalog-top h2{font:normal 35px var(--serif);margin:15px 0 0}.catalog-top h2 span{font:12px var(--sans);color:var(--accent);vertical-align:top;margin-left:5px}.search-wrap{width:min(330px,100%)}.search-wrap label{display:block;font-size:11px;color:var(--muted);margin-bottom:9px}.search-field{display:flex;align-items:center;border-bottom:1px solid var(--control-line);gap:10px}.search-field span{font-size:25px;line-height:1}.search-field input{width:100%;height:42px;border:0;background:transparent;color:var(--ink);font:14px var(--sans);outline:none}.search-field:focus-within{outline:2px solid var(--accent);outline-offset:4px}.search-field input::placeholder{color:var(--muted)}.catalog-bar{display:flex;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--control-line);padding:13px 0;color:var(--muted);font-size:11px;letter-spacing:.04em}.catalog-bar p{margin:0}.catalog-bar span{font-size:10px;letter-spacing:.12em}ul{list-style:none;margin:0;padding:0}.film{display:flex;justify-content:space-between;gap:24px;padding:10px 0;line-height:1.7}.title{font-size:16px}.note{display:block;color:var(--muted);font-size:12px;line-height:1.7;margin-top:3px}.film-year{flex:none;font:12px/2 Georgia,serif;color:var(--muted);font-variant-numeric:tabular-nums}.empty{padding:48px 0;color:var(--muted);font-size:14px}[hidden]{display:none!important}footer{padding:60px 6% 75px;display:flex;align-items:center;gap:28px;color:var(--muted);font-size:11px}footer span:last-child{margin-left:auto;letter-spacing:.12em;font-size:10px}.footer-brand{font:25px Georgia,serif;letter-spacing:-1px;color:var(--ink)}@media(max-width:600px){.masthead{height:72px;padding-inline:6%}.masthead-label{display:none}.intro{padding:76px 0 70px}.intro h1{font-size:88px}.intro-side{display:none}.catalog-top{display:block;padding-bottom:28px}.search-wrap{margin-top:30px;width:100%}.film{padding:9px 0}.title{font-size:15px}.film-year{font-size:11px}footer{flex-wrap:wrap;gap:15px}footer span:last-child{width:100%;margin-left:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.film-year{white-space:nowrap}

.genre-nav{display:flex;flex-wrap:wrap;gap:8px;padding:20px 0;border-bottom:1px solid var(--line)}
.genre-nav button,#reset{font:13px var(--sans);min-height:44px;padding:8px 14px;background:transparent;border:1px solid var(--control-line);border-radius:4px;color:var(--ink);cursor:pointer;touch-action:manipulation}
.genre-nav button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@media(hover:hover){.genre-nav button:hover,#reset:hover{border-color:var(--accent)}}
button:active:not(:focus-visible){transform:scale(.97)}
.film{border-bottom:1px solid var(--line);padding:18px 0}.film>div{min-width:0}.title{overflow-wrap:anywhere}.film-genres{display:block;font-size:11px;color:var(--accent);margin-top:4px}#reset{margin-top:20px}
@media(max-width:600px){.intro{padding:30px 0}.intro h1{font-size:58px;margin:16px 0}.intro-copy{font-size:13px}.catalog{padding-top:20px}.catalog-top h2{font-size:28px}.search-wrap{margin-top:20px}.search-field input{font-size:16px}.genre-nav{gap:6px}.genre-nav button{padding:8px 10px}.film{gap:12px}.film-year{font-size:12px}footer{padding-top:35px}}
.film-meta{flex:none;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.film-runtime{font:11px/1.6 var(--sans);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.film-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.rating-link{display:inline-flex;align-items:baseline;gap:5px;padding:2px 8px;border:1px solid var(--line);border-radius:4px;font-size:11px;line-height:1.7;text-decoration:none;color:var(--ink)}.rating-source{color:var(--muted)}.rating-score{font-family:Georgia,serif;font-variant-numeric:tabular-nums}.rating-score{color:var(--accent)}
@media(hover:hover){.rating-link:hover{border-color:var(--accent)}}
@media(max-width:600px){.film-runtime{font-size:10px}.rating-link{padding:4px 8px}}
.rating-link.season{padding-inline:6px;gap:4px}
