/* StreamScout's restrained editorial visual system: red, charcoal, gray, white. */
:root { --red:#b21f2d; --red-dark:#891520; --ink:#191919; --charcoal:#292929; --muted:#6e6e6e; --paper:#f6f6f5; --white:#fff; --line:#ddddda; --soft:#efefed; font-family:Inter,Arial,Helvetica,sans-serif; color:var(--ink); background:var(--paper); }
*{box-sizing:border-box} body{margin:0;min-width:320px;background:var(--paper)} button,input,select{font:inherit}.topbar{height:68px;display:flex;align-items:center;gap:24px;padding:0 clamp(20px,5vw,80px);border-bottom:1px solid var(--line);background:var(--white)}.brand{color:var(--ink);text-decoration:none;font-size:19px;font-weight:800;letter-spacing:-.7px}.brand-mark{display:inline-grid;place-items:center;width:27px;height:27px;margin-right:8px;border-radius:5px;background:var(--red);color:#fff;font-size:14px}.catalog-status{margin-left:auto;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.status-dot{width:7px;height:7px;background:var(--red);border-radius:50%}.ghost-button{border:0;background:transparent;color:var(--muted);font-size:13px;text-decoration:underline;cursor:pointer}.ghost-button:hover{color:var(--ink)}
main{max-width:1440px;margin:auto;padding:0 clamp(20px,5vw,80px)}.hero{padding:74px 0 46px;max-width:950px}.eyebrow{margin:0 0 10px;color:var(--red);font-size:11px;font-weight:800;letter-spacing:1.15px;text-transform:uppercase}h1{margin:0;color:var(--ink);font-size:clamp(42px,5.4vw,70px);font-weight:800;letter-spacing:-.06em;line-height:1}h1 em{font:inherit;font-style:normal;color:var(--red)}.hero-copy{max-width:555px;margin:22px 0 0;color:var(--muted);font-size:16px;line-height:1.6}
.controls{display:grid;grid-template-columns:180px 1fr 250px;gap:22px;padding:22px 24px;border-radius:10px;background:var(--charcoal);color:var(--white);box-shadow:0 8px 25px #00000012}.control-group{min-width:0;border:0;padding:0;margin:0}.control-group label,.control-group legend{display:block;margin-bottom:9px;color:#c9c9c9;font-size:11px;font-weight:750;letter-spacing:1px;text-transform:uppercase}select,input{width:100%}.controls select{padding:10px;border:1px solid #5b5b5b;border-radius:5px;background:#373737;color:#fff}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:flex;align-items:center;gap:7px;border:1px solid #5d5d5d;border-radius:4px;padding:8px 10px;color:#f2f2f2;font-size:13px;cursor:pointer}.chip:has(input:checked){border-color:#d85b65;background:#3f2a2d}.chip input{width:14px;height:14px;accent-color:var(--red)}.search-control input{border:1px solid #5b5b5b;border-radius:5px;padding:10px;background:#373737;color:#fff}.search-control input::placeholder{color:#b3b3b3}
.donation-bar{display:flex;justify-content:flex-end;padding:12px 0 0}.filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:27px 0;border-bottom:1px solid var(--line)}.filter{border:1px solid var(--line);border-radius:4px;padding:8px 13px;background:var(--white);color:var(--ink);font-size:13px;cursor:pointer}.filter:hover,.filter.active{border-color:var(--red);background:var(--red);color:#fff}.filter-divider{width:1px;height:24px;margin:0 5px;background:var(--line)}.select-filter,.check-filter{color:var(--muted);font-size:13px}.select-filter select{width:auto;margin-left:5px;padding:7px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink)}.check-filter{padding:7px}.check-filter input{width:auto;accent-color:var(--red);vertical-align:middle}
.results-section{padding:36px 0 72px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.section-heading h2{margin:0;font-size:29px;letter-spacing:-1.3px}.sort-label{color:var(--muted);font-size:13px}.sort-label select{width:auto;margin-left:5px;padding:7px;border:1px solid var(--line);border-radius:4px;background:var(--white);color:var(--ink)}.new-rail{display:flex;gap:10px;overflow:auto;padding-bottom:20px;margin-bottom:6px}.rail-note{display:flex;flex:none;align-items:center;gap:10px;padding:11px 15px;border-left:3px solid var(--red);background:#f1eeee;color:#542025;font-size:13px}.rail-note strong{font-size:17px;color:var(--red)}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--white);transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #00000014}.poster{position:relative;display:flex;align-items:end;min-height:215px;padding:16px;overflow:hidden;background:linear-gradient(145deg,#171717,#454545);color:#fff}.poster::after{position:absolute;inset:0;background:linear-gradient(180deg,#11111108 35%,#111111cc 100%);content:""}.poster-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72) contrast(.95);transition:transform .25s}.card:hover .poster-image{transform:scale(1.035)}.poster-label{position:relative;z-index:1;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.new-badge{position:absolute;z-index:2;top:12px;left:12px;padding:5px 8px;border-radius:3px;background:var(--red);color:#fff;font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.card-body{padding:15px}.title-line{display:flex;justify-content:space-between;align-items:flex-start;gap:6px}.title-line h3{margin:0;font-size:17px;letter-spacing:-.45px}.year{color:var(--muted);font-size:12px;white-space:nowrap}.metadata{display:flex;gap:8px;margin:8px 0;color:var(--muted);font-size:12px}.rating{color:var(--red);font-weight:800}.summary{height:40px;overflow:hidden;margin:0;color:#5a5a5a;font-size:12px;line-height:1.6}.providers{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0 12px}.provider{border:1px solid #cfcfcb;border-radius:3px;padding:4px 6px;background:#f5f5f3;color:#3e3e3e;font-size:10px;font-weight:800}.card button{width:100%;border:0;border-radius:4px;padding:9px;background:var(--ink);color:#fff;font-weight:750;cursor:pointer}.card button:hover{background:var(--red)}.empty-state{text-align:center;padding:70px 20px;color:var(--muted)}.empty-state span{color:var(--red);font-size:44px}.empty-state h3{margin-bottom:0;color:var(--ink)}
dialog{width:min(680px,calc(100% - 28px));border:0;border-radius:8px;padding:0;box-shadow:0 25px 70px #0007}dialog::backdrop{background:#111111a6}.dialog-close{position:absolute;z-index:2;right:12px;top:10px;width:32px;height:32px;border:0;border-radius:4px;background:#fff;color:#222;font-size:23px;cursor:pointer}.detail-hero{padding:48px 38px 32px;background:linear-gradient(140deg,#191919,#424242);color:#fff}.detail-hero .eyebrow{color:#f2a1a9}.detail-hero h2{margin:8px 0;font-size:38px;letter-spacing:-1.8px}.detail-body{padding:28px 38px 36px}.detail-body p{color:var(--muted);line-height:1.65}.detail-ratings{display:flex;flex-wrap:wrap;gap:10px}.score{padding:9px 12px;border-left:3px solid var(--red);background:var(--soft);font-size:13px}.watch-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.watch-link{padding:10px 12px;border-radius:4px;background:var(--red);color:#fff;font-size:13px;font-weight:700;text-decoration:none}.watch-link:hover{background:var(--red-dark)}footer{padding:24px clamp(20px,5vw,80px);border-top:1px solid var(--line);background:var(--white);color:var(--muted);font-size:12px}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:18px}.footer-content p{margin:0}.support-links{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:7px;white-space:nowrap}.support-links>span{color:var(--muted);font-weight:700}.support-links a{padding:6px 8px;border:1px solid var(--red);border-radius:4px;background:var(--white);color:var(--red);font-weight:800;text-decoration:none}.support-links a:hover{background:var(--red);color:#fff}
@media(max-width:900px){.controls{grid-template-columns:1fr 1fr}.search-control{grid-column:1/-1}.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.topbar{height:60px}.catalog-status{display:none}.hero{padding:48px 0 36px}.controls{grid-template-columns:1fr}.search-control{grid-column:auto}.grid{grid-template-columns:repeat(2,1fr);gap:10px}.poster{min-height:155px}.card-body{padding:11px}.summary{display:none}.section-heading{align-items:flex-start;gap:10px}.sort-label{display:flex;flex-direction:column;gap:4px}.filter-divider{display:none}.donation-bar{justify-content:flex-start}.footer-content{align-items:flex-start;flex-direction:column}.support-links{justify-content:flex-start;white-space:normal}}
