:root{--bg:#090b12;--surface:#101520;--surface2:#171d2a;--line:#2a3243;--text:#f4f1ea;--muted:#9099ad;--cyan:#24d9ff;--blue:#197dff;--pink:#ff3eb5;--acid:#c8ff36;--danger:#ff4057;--shadow:0 20px 55px rgba(0,0,0,.38)}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 50% -20%,#152033 0,transparent 42%),linear-gradient(90deg,rgba(36,217,255,.025) 1px,transparent 1px),linear-gradient(rgba(36,217,255,.02) 1px,transparent 1px),var(--bg);background-size:auto,38px 38px,38px 38px;font-family:Inter,Segoe UI,Arial,sans-serif}.noise{position:fixed;inset:0;opacity:.045;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.edge-art{position:fixed;top:82px;bottom:0;width:54px;pointer-events:none;opacity:.7}.edge-art--left{left:0;border-left:4px solid var(--cyan)}.edge-art--right{right:0;border-right:4px solid var(--pink)}.edge-art i{position:absolute;width:28px;height:7px;background:var(--pink);box-shadow:9px 9px 0 var(--cyan),-4px 18px 0 var(--blue);transform:rotate(-17deg)}.edge-art i:nth-child(1){top:9px}.edge-art i:nth-child(2){top:46%;transform:rotate(19deg)}.edge-art i:nth-child(3){bottom:10%}.edge-art--right i{right:0;background:var(--cyan);box-shadow:-9px 9px 0 var(--pink),4px 18px 0 var(--blue)}
.topbar{height:78px;position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:48px;padding:0 max(6vw,72px);border-bottom:1px solid rgba(144,153,173,.18);background:rgba(9,11,18,.88);backdrop-filter:blur(18px)}.brand{font-weight:950;font-size:25px;letter-spacing:.04em;color:var(--pink);text-decoration:none}.brand span{color:var(--text)}.nav{display:flex;align-self:stretch;gap:34px}.nav a{display:flex;align-items:center;gap:8px;position:relative;color:var(--muted);font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.nav a.is-active,.nav a:hover{color:var(--text)}.nav a.is-active:after{content:"";position:absolute;height:3px;left:0;right:0;bottom:0;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.nav-count{min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border:1px solid var(--line);font:700 11px IBM Plex Mono,monospace}.account-btn{margin-left:auto;border:1px solid var(--line);background:transparent;color:var(--text);padding:10px 14px;display:flex;align-items:center;gap:9px;font-weight:800;cursor:pointer}.account-btn:hover{border-color:var(--pink)}.status-dot{width:7px;height:7px;background:var(--muted);box-shadow:0 0 0 3px rgba(144,153,173,.12)}.is-authenticated .status-dot{background:var(--acid);box-shadow:0 0 9px var(--acid)}
.workspace{max-width:1440px;margin:auto;padding:50px max(7vw,88px) 80px}.eyebrow{margin:0 0 10px;color:var(--cyan);font:700 13px IBM Plex Mono,Consolas,monospace;letter-spacing:.22em;text-transform:uppercase}.search-heading h1{margin:0 0 28px;font-size:clamp(44px,6vw,82px);line-height:.9;letter-spacing:-.045em;text-transform:uppercase;font-weight:950}.search-heading h1 span{color:var(--cyan);text-shadow:4px 0 0 rgba(255,62,181,.3)}.search-form{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:10px}.search-box{height:66px;display:flex;align-items:center;gap:17px;padding:0 20px;border:1px solid #4a566d;background:rgba(8,12,20,.78)}.search-box:focus-within{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(36,217,255,.12)}.search-icon{width:20px;height:20px;border:2px solid var(--muted);border-radius:50%;position:relative}.search-icon:after{content:"";position:absolute;width:8px;height:2px;background:var(--muted);right:-6px;bottom:-3px;transform:rotate(45deg)}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:18px}.search-box input::placeholder{color:#677185}.btn{border:0;min-height:48px;padding:0 24px;text-transform:uppercase;font-weight:950;letter-spacing:.05em;cursor:pointer}.btn--primary{background:var(--pink);color:#0b0d14;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}.btn--primary:hover{background:var(--cyan)}.btn--wide{width:100%;margin-top:18px}.filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.filter,.filter-row select{min-height:42px;border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:0 15px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;cursor:pointer}.filter.is-active{border-color:var(--cyan);color:var(--cyan);background:rgba(36,217,255,.08)}.filter-row select{padding-right:34px}.catalog-section{margin-top:48px}.section-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:20px}.section-head>div{display:flex;align-items:center;gap:13px}.section-head h2{margin:0;font-size:21px;text-transform:uppercase;letter-spacing:.05em}.slashes{color:var(--cyan);font-size:27px;font-weight:950}.result-count{color:var(--muted);font:13px IBM Plex Mono,monospace}.movie-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}.movie-card{min-width:0;background:linear-gradient(180deg,#141a27,#0c1019);border:1px solid var(--line);transition:transform .18s,border-color .18s,box-shadow .18s}.movie-card:hover{transform:translateY(-5px);border-color:var(--cyan);box-shadow:7px 7px 0 rgba(255,62,181,.16)}.poster-button{width:100%;aspect-ratio:2/3;display:block;position:relative;padding:0;border:0;background:#181e2b;overflow:hidden;cursor:pointer}.poster{width:100%;height:100%;display:block;object-fit:cover;transition:transform .28s}.movie-card:hover .poster{transform:scale(1.035)}.card-type,.card-status{position:absolute;top:9px;padding:6px 8px;background:rgba(9,11,18,.9);font:800 10px IBM Plex Mono,monospace;letter-spacing:.08em;text-transform:uppercase}.card-type{left:9px}.card-status{right:9px;color:var(--acid);border:1px solid rgba(200,255,54,.5)}.card-body{padding:14px}.card-title{display:block;width:100%;min-height:46px;padding:0;border:0;background:transparent;color:var(--text);text-align:left;font-size:17px;line-height:1.25;font-weight:900;cursor:pointer}.card-title:hover{color:var(--cyan)}.card-meta{display:flex;gap:8px;color:var(--muted);font:11px IBM Plex Mono,monospace;text-transform:uppercase}.card-genre{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.rating{color:var(--cyan);font:800 15px IBM Plex Mono,monospace}.quick-add{width:34px;height:34px;border:1px solid #4b5669;background:transparent;color:var(--text);font-size:21px;cursor:pointer}.quick-add:hover,.quick-add.is-saved{border-color:var(--pink);color:var(--pink)}.empty-state{padding:70px 20px;text-align:center;border:1px dashed var(--line)}.empty-state span{color:var(--pink);font:900 48px IBM Plex Mono,monospace}.empty-state h3{margin:8px 0;font-size:24px}.empty-state p{color:var(--muted)}
.detail{max-width:1380px;margin:auto;padding:44px max(7vw,88px) 80px}.back-link{display:inline-flex;margin-bottom:25px;color:var(--muted);text-decoration:none;font-weight:800;text-transform:uppercase}.back-link:hover{color:var(--cyan)}.detail-hero{display:grid;grid-template-columns:minmax(240px,330px) 1fr;gap:46px;position:relative}.detail-poster{width:100%;aspect-ratio:2/3;object-fit:cover;border:1px solid var(--line);box-shadow:12px 12px 0 rgba(36,217,255,.12)}.detail-content{padding-top:14px}.detail-code{color:var(--cyan);font:700 13px IBM Plex Mono,monospace;letter-spacing:.16em}.detail h1{font-size:clamp(46px,6vw,82px);line-height:.92;margin:18px 0 10px;text-transform:uppercase}.detail-original{color:var(--muted);font-size:20px}.detail-chips{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.chip{border:1px solid var(--line);padding:8px 10px;font:700 12px IBM Plex Mono,monospace}.chip--rating{color:var(--cyan);border-color:rgba(36,217,255,.5)}.detail-description{max-width:820px;color:#c4cad6;font-size:17px;line-height:1.72}.detail-actions{display:flex;gap:10px;margin:26px 0}.btn--secondary{border:1px solid var(--line);background:var(--surface);color:var(--text)}.btn--secondary:hover{border-color:var(--cyan)}.personal-panel{margin-top:28px;padding:20px;border-left:3px solid var(--pink);background:var(--surface)}.personal-panel h3{margin:0 0 14px;text-transform:uppercase}.status-options{display:flex;flex-wrap:wrap;gap:8px}.status-option{border:1px solid var(--line);background:#0c1018;color:var(--muted);padding:10px 12px;cursor:pointer}.status-option.is-active{border-color:var(--pink);color:var(--text);background:rgba(255,62,181,.09)}.note-field{width:100%;min-height:84px;margin-top:14px;padding:12px;border:1px solid var(--line);background:#0b0f18;color:var(--text);resize:vertical;font:15px inherit}.detail-lower{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;margin-top:36px}.info-panel{border:1px solid var(--line);background:rgba(16,21,32,.75);padding:22px}.info-panel h2{margin:0 0 18px;text-transform:uppercase;font-size:18px}.season-list{display:flex;gap:8px;flex-wrap:wrap}.season{border:1px solid var(--line);padding:11px 14px;color:var(--muted);font:700 13px IBM Plex Mono,monospace}.provider-list{display:grid;gap:9px}.provider{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);padding:12px 14px;color:var(--text);text-decoration:none}.provider:hover{border-color:var(--cyan);color:var(--cyan)}
.collection{max-width:1380px;margin:auto;padding:50px max(7vw,88px) 80px}.page-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.page-title h1{margin:0;font-size:clamp(42px,6vw,72px);text-transform:uppercase}.collection-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.login-empty{padding:70px 24px;border:1px solid var(--line);text-align:center;background:var(--surface)}.login-empty h2{font-size:28px;margin:0 0 8px}.login-empty p{color:var(--muted);margin:0 0 20px}
.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:rgba(2,4,9,.82);backdrop-filter:blur(7px)}.modal-backdrop[hidden]{display:none}.modal{width:min(460px,100%);position:relative;border:1px solid var(--cyan);background:var(--surface);padding:30px;box-shadow:12px 12px 0 rgba(255,62,181,.22)}.modal h2{font-size:30px;margin:0 0 10px;text-transform:uppercase}.modal-copy,.form-note{color:var(--muted);line-height:1.55}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:var(--muted);font-size:28px;cursor:pointer}.modal label{display:block;margin:20px 0 7px;font-weight:800}.modal input{width:100%;height:50px;border:1px solid var(--line);background:#090d15;color:var(--text);padding:0 13px;font-size:16px}.form-note{font-size:12px;margin-bottom:0}.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.auth-actions .btn{margin:0}.auth-error{min-height:22px;margin:12px 0 0;color:var(--danger);font-weight:800}
@media(max-width:1100px){.movie-grid{grid-template-columns:repeat(4,1fr)}.workspace,.detail,.collection{padding-left:62px;padding-right:62px}.topbar{padding:0 60px}}
@media(max-width:820px){.topbar{height:auto;min-height:70px;padding:14px 22px;gap:22px;flex-wrap:wrap}.brand{font-size:22px}.nav{order:3;width:100%;height:38px}.nav a{font-size:12px}.account-btn{padding:8px}.workspace,.detail,.collection{padding:34px 22px 60px}.edge-art{display:none}.search-heading h1{font-size:46px}.search-form{grid-template-columns:1fr}.movie-grid{grid-template-columns:repeat(3,1fr);gap:12px}.detail-hero{grid-template-columns:220px 1fr;gap:26px}.detail h1{font-size:46px}.detail-lower{grid-template-columns:1fr}}
@media(max-width:580px){.nav{gap:18px}.nav a{letter-spacing:.02em}.search-heading h1{font-size:39px}.movie-grid{grid-template-columns:repeat(2,1fr)}.card-body{padding:11px}.card-title{font-size:15px}.filter-row select,.filter{flex:1}.detail-hero{grid-template-columns:1fr}.detail-poster{max-width:260px}.detail h1{font-size:42px}.detail-actions{flex-direction:column}.page-title{display:block}.collection-tabs{margin-top:20px}}
.card-type{color:#fff;border:1px solid rgba(255,255,255,.42);background:#090b12;text-shadow:0 1px 2px #000}
