:root{color:#f7f1e8;background:#10151b;font-family:Inter,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,#273246,#10151b 42rem)}button,input,select{font:inherit}button{border:0;border-radius:.45rem;padding:.72rem 1rem;background:#e6b15a;color:#151920;cursor:pointer;font-weight:700}button:disabled{cursor:wait;opacity:.65}.async-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:2.8rem}.spinner-slot{display:grid;width:1.05rem;height:1.05rem;flex:0 0 1.05rem;place-items:center;opacity:0;transition:opacity .12s linear}.spinner-slot--visible{opacity:1}.spinner{width:1.05rem;aspect-ratio:1;flex:0 0 auto;border:3px solid currentColor;border-color:currentColor currentColor transparent;border-radius:50%;animation:nmsp-spinner .8s linear infinite;will-change:transform}@keyframes nmsp-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}.recommendation-card{transition:none}}input,select{min-width:0;border:1px solid #4b5668;border-radius:.45rem;background:#1c232d;color:inherit;padding:.9rem 1rem}main{width:min(100% - 2rem,1440px);margin:0 auto;padding:1.5rem 0 4rem}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.25rem,5vw,4.8rem);letter-spacing:-.04em;line-height:.98;margin-bottom:1rem}h2{font-size:1.45rem}.eyebrow{color:#e6b15a;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.message{margin:1rem 0;color:#d8d5cf}.secondary{border:1px solid #667285;background:transparent;color:#f7f1e8}.danger{background:#8e3434;color:#fff4f2}.app-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-bottom:2.5rem}.brand{justify-self:start;padding:0;color:#f7f1e8;background:transparent;font-size:1.3rem;letter-spacing:.12em}nav{display:flex;gap:.35rem;padding:.3rem;border:1px solid #354151;border-radius:.6rem;background:#171e27}nav button{background:transparent;color:#b5becc;padding:.45rem .75rem}nav button.active{color:#161a20;background:#e6b15a}.nav-icon{display:none;width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.mobile-nav-action{display:none}.app-nav button{transition:color .18s ease,background-color .18s ease,transform .16s ease}.app-nav button:focus-visible{outline:2px solid #e6b15a;outline-offset:2px}@media(hover:hover){.app-nav button:hover{transform:scale(1.04)}.app-nav button:not(.active):hover{color:#e6b15a}}.app-nav button:active{transform:scale(.96)}.account{display:flex;justify-content:end;align-items:center;gap:.8rem;color:#b5becc;font-size:.9rem}.hero{max-width:750px;padding:clamp(1.5rem,4vw,4rem) 0 2rem}.hero>p:not(.eyebrow){max-width:600px;color:#c7c9cf;font-size:1.1rem;line-height:1.5}.hero>p.cache-date{color:#98a2af;font-size:.75rem;line-height:1.3}.recommendations-view{max-width:1100px;margin:0 auto}.recommendations-view--deck{max-width:760px}.recommendations-intro{padding:clamp(1.5rem,4vw,4rem) 0 1.5rem;text-align:center}.recommendations-intro h1{font-size:clamp(2.4rem,7vw,4.5rem)}.recommendations-intro>p:not(.eyebrow){max-width:34rem;margin:0 auto 1.25rem;color:#c7c9cf;line-height:1.5}.recommendation-kinds,.recommendation-actions{display:flex;justify-content:center;gap:.55rem}.refine-tastes,.return-results{display:block;margin:1rem auto 0}.deck-instruction{color:#f3d58d!important;font-weight:800;letter-spacing:.02em}.recommendation-row{margin-top:2.25rem}.recommendation-card-genres{color:#e6b15a!important;font-size:.76rem!important;font-weight:700;line-height:1.3}.recommendation-kinds button{background:#1c2530;color:#c7c9cf}.recommendation-kinds button.active{background:#e6b15a;color:#151920}.recommendation-deck{display:grid;place-items:center;min-height:31rem}.recommendation-card{position:relative;display:grid;width:min(100%,600px);overflow:hidden;border:1px solid #3e4a5b;border-radius:1rem;background:#18202a;box-shadow:0 1.2rem 3rem #00000047;touch-action:none;-webkit-user-select:none;user-select:none;transition:transform .3s cubic-bezier(.2,1.3,.4,1);animation:swipe-arrive .22s ease-out}.recommendation-card.is-exiting{transition:transform .24s ease-in}@keyframes swipe-arrive{0%{opacity:0;scale:.96}to{opacity:1;scale:1}}.recommendation-kinds,.recommendation-actions{border:0;padding:0;margin-inline:0;min-width:0}.swipe-details{display:block;width:100%;padding:0;background:transparent;color:inherit;text-align:left;touch-action:none}.swipe-details:disabled{opacity:1}.swipe-details:focus-visible{outline:3px solid #e6b15a;outline-offset:-3px}.swipe-indicator{position:absolute;top:1.5rem;left:1rem;right:1rem;padding:.6rem;border:2px solid currentColor;border-radius:.6rem;background:#10151be0;color:#9ce4ae;font-weight:800;text-align:center;pointer-events:none}.swipe-indicator--dislike{color:#ff9d9d}.swipe-indicator--superlike{color:#db9cf2}.swipe-indicator--seen{color:#d2d8df}.swipe-catalog{display:none}.recommendation-card.is-dragging{transition:none}.recommendation-poster{height:min(56vw,21rem);background:#121820}.recommendation-poster img{width:100%;height:100%;object-fit:cover}.recommendation-copy{padding:1.25rem 1.35rem}.recommendation-copy h2{margin:.25rem 0 .5rem;font-size:1.8rem}.recommendation-copy p{color:#c7c9cf;line-height:1.45}.recommendation-copy .recommendation-original,.recommendation-copy .recommendation-genres{color:#98a2af;font-size:.86rem}.recommendation-actions{flex-wrap:wrap}.recommendation-actions .superlike{background:#b66bd0;color:#211429}.catalog-import{display:block;margin:.8rem auto 0}.recommendation-state{padding:3rem 1rem;text-align:center}.recommendation-onboarding{max-width:38rem;margin:1rem auto;padding:clamp(2rem,6vw,4rem) clamp(1.25rem,5vw,3rem);border:1px solid #4f5563;border-radius:.9rem;background:#18202ac7}.onboarding-progress{margin:1.25rem 0 .75rem;color:#f3d58d;font-size:1.2rem;font-weight:800}.onboarding-progress--deck{text-align:center}.recommendation-notice{margin-top:1rem;color:#9ce4ae;text-align:center}.media-row{margin-top:3rem}.media-row h2{margin-bottom:1rem}.media-scroller{display:grid;grid-auto-columns:minmax(160px,190px);grid-auto-flow:column;gap:.9rem;overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:.75rem;scroll-snap-type:inline mandatory}.poster-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#aeb6c1;font-size:.85rem}.media-type{position:absolute;top:.55rem;left:.55rem;padding:.25rem .45rem;border-radius:.25rem;background:#0c1016d1;color:#f7f1e8;font-size:.7rem;font-weight:700}.search-view,.catalog-view{max-width:1100px}.catalog-intro{margin-top:4rem}.catalog-intro>p:not(.eyebrow){color:#c7c9cf;font-size:1.05rem}.catalog-tabs{display:inline-flex;gap:.35rem;padding:.3rem;border:1px solid #354151;border-radius:.6rem;background:#171e27}.catalog-tabs button{background:transparent;color:#b5becc}.catalog-tabs button.active{color:#161a20;background:#e6b15a}.search-intro{margin-top:4rem}.search-form{display:flex;gap:.75rem;max-width:700px}.search-form input{flex:1}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem;margin-top:2rem}.content-card{display:flex;width:100%;flex-direction:column;padding:0;overflow:hidden;border:1px solid #2f3947;border-radius:.7rem;background:#18202a;color:inherit;text-align:left;transition:border-color .16s ease,transform .16s ease}.media-scroller .content-card{scroll-snap-align:start}.content-card:hover,.content-card:focus-visible{border-color:#e6b15a;outline:0;transform:translateY(-.2rem)}.content-poster{position:relative;aspect-ratio:2 / 3;background:#283342}.content-poster img{width:100%;height:100%;object-fit:cover}.content-copy{display:grid;gap:.3rem;padding:.8rem}.content-copy strong{line-height:1.25}.content-copy>span:not(.source-count){color:#acb5c0;font-size:.85rem}.source-count{color:#e6b15a;font-size:.78rem;font-weight:700}.modal-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1rem;background:#05080cc7}.content-modal{position:relative;display:grid;grid-template-columns:minmax(150px,30%) 1fr;width:min(100%,850px);max-height:min(90vh,720px);overflow:auto;border:1px solid #3e4c60;border-radius:.85rem;background:#18202a;box-shadow:0 1.5rem 4rem #00000073}html:has(.recommendations-view--deck .modal-backdrop),body:has(.recommendations-view--deck .modal-backdrop){overflow:hidden;overscroll-behavior:none}.content-modal.recommendation-details-modal{min-height:0;max-height:min(calc(100vh - 2rem),720px);max-height:min(calc(100dvh - 2rem),720px);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y pinch-zoom}.content-modal>img{width:100%;height:100%;min-height:300px;object-fit:cover}.modal-copy{padding:clamp(1.25rem,4vw,2.5rem)}.modal-copy h2{margin-bottom:.35rem;font-size:clamp(1.7rem,4vw,2.8rem)}.modal-close{position:absolute;z-index:1;top:.75rem;right:.75rem;padding:.45rem .65rem;font-size:.78rem}.original-title,.cast p{color:#aeb6c1}.genres{color:#e6b15a;font-weight:700}.modal-overview{color:#d8d5cf;line-height:1.6}.cast{margin-top:1.5rem}.cast h3{margin-bottom:.4rem;font-size:.95rem}.add-library{width:100%;margin-top:1.5rem}.catalog-action{margin-top:1.5rem}.catalog-action .add-library{margin-top:0}.catalog-action-row{display:flex;align-items:stretch;gap:.55rem}.catalog-action-row .add-library{flex:1}.provider-menu{position:relative}.provider-menu summary{display:grid;width:2.8rem;height:100%;min-height:2.75rem;place-items:center;cursor:pointer;list-style:none;border:1px solid #d8b66a;border-radius:.45rem;color:#f3d58d;font-size:1.1rem}.provider-menu summary::-webkit-details-marker{display:none}.provider-menu--disabled{pointer-events:none;opacity:.55}.provider-menu-panel{position:absolute;z-index:2;right:0;bottom:calc(100% + .4rem);display:grid;min-width:12rem;overflow:hidden;border:1px solid #4f5563;border-radius:.45rem;background:#1a1d25;box-shadow:0 .8rem 2rem #00000059}.provider-menu-panel button{border:0;border-radius:0;background:transparent;color:#f2f0eb;text-align:left}.provider-menu-panel button:hover:not(:disabled){background:#303541}.import-status{margin:.65rem 0 0;color:#b9c2ce;font-size:.88rem;line-height:1.4}.import-status--error{color:#ff9d9d}.import-status--unavailable{color:#e6c27d}.library-confirmed{margin:1.5rem 0 0;padding:.8rem 1rem;border:1px solid #3e8c5a;border-radius:.45rem;background:#30724933;color:#9ce4ae;font-weight:800}.library-confirmed-row{display:flex;align-items:center;gap:.5rem;margin-top:1.5rem}.library-confirmed-row .library-confirmed{margin:0}.rebuild-library{margin-left:auto;white-space:nowrap}.catalog-action-enter-active,.catalog-action-leave-active{transition:opacity .22s ease,transform .22s ease}.catalog-action-enter-from,.catalog-action-leave-to{opacity:0;transform:translateY(.4rem)}.login{width:min(100%,430px);margin:10vh auto}.login form{display:flex;flex-direction:column;gap:.75rem}.admin-view{display:grid;gap:1rem}.admin-heading,.admin-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;flex-direction:column}.admin-heading{margin:2rem 0 1rem}.admin-heading h1{margin-bottom:.45rem}.admin-heading p:not(.eyebrow){margin-bottom:0;color:#b5becc}.admin-panel{padding:1.25rem;border:1px solid #354151;border-radius:.7rem;background:#18202ac7}.admin-panel h2{margin-bottom:1rem}.admin-panel-copy{margin:0 0 1rem;color:#aeb6c1}.botblocker-status{padding:.25rem .55rem;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase}.botblocker-status--valid{background:#1c4a31;color:#9ce4ae}.botblocker-status--invalid{background:#542b2d;color:#ffb0a8}.botblocker-status--unknown{background:#48411f;color:#f2d778}.botblocker-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0 0 1rem}.botblocker-details div{padding:.7rem;border:1px solid #303c4c;border-radius:.45rem;background:#151d27}.botblocker-details dt{color:#aeb6c1;font-size:.78rem}.botblocker-details dd{margin:.2rem 0 0;font-size:.88rem}.botblocker-form{display:grid;gap:.75rem}.botblocker-form label{display:grid;gap:.35rem;font-size:.88rem;color:#c9d1dc}.botblocker-actions{display:flex;flex-wrap:wrap;gap:.6rem}.health-grid,.catalog-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.health-card,.catalog-summary-grid article{display:grid;gap:.35rem;padding:.9rem;border:1px solid #303c4c;border-radius:.5rem;background:#151d27}.health-card{grid-template-columns:auto 1fr}.health-card small{grid-column:2;color:#aeb6c1}.health-dot{width:.7rem;height:.7rem;margin-top:.25rem;border-radius:50%}.health-dot--ok{background:#6ecf87}.health-dot--degraded{background:#e88876}.catalog-summary-grid span,.catalog-summary-grid small{color:#aeb6c1}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left}.admin-table th,.admin-table td{padding:.75rem .5rem;border-top:1px solid #303c4c;white-space:nowrap}.admin-table th{color:#aeb6c1;font-size:.78rem;text-transform:uppercase}.access-provider-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem}.access-provider{padding:.9rem;border:1px solid #303c4c;border-radius:.5rem;background:#151d27}.access-provider--disabled .access-player-list{opacity:.55}.access-provider-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.access-player-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem;padding-top:.8rem;border-top:1px solid #303c4c}.access-switch{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .6rem;border:1px solid #667285;background:transparent;color:#c9d1dc;font-size:.82rem;white-space:nowrap}.access-switch>span{position:relative;width:1.8rem;height:1rem;flex:0 0 auto;border-radius:1rem;background:#667285;transition:background-color .16s ease}.access-switch>span:after{content:"";position:absolute;top:.15rem;left:.15rem;width:.7rem;height:.7rem;border-radius:50%;background:#f7f1e8;transition:transform .16s ease}.access-switch--enabled{border-color:#8c744c;color:#f7f1e8}.access-switch--enabled>span{background:#c9953f}.access-switch--enabled>span:after{transform:translate(.8rem)}.access-switch--player{padding:.35rem .5rem}.admin-error{color:#ff9d9d}.admin-log-list{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.admin-rebuild{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #303c4c}.admin-rebuild p{margin:.3rem 0 0;color:#aeb6c1;font-size:.9rem}.admin-rebuild-result{margin:.8rem 0 0;color:#9ce4ae}.admin-log-filters{display:grid;grid-template-columns:10rem minmax(8rem,.45fr) minmax(10rem,.65fr) minmax(12rem,1fr) auto auto;gap:.6rem;margin-bottom:1rem}.admin-log-list--detailed>li{padding:.8rem;border:1px solid #303c4c;border-radius:.45rem;background:#151d27}.admin-log-summary{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.75rem;align-items:baseline}.admin-log-summary time,.admin-log-summary small{color:#aeb6c1;font-size:.8rem}.admin-log-summary span{overflow-wrap:anywhere}.admin-log-details{margin-top:.6rem}.admin-log-details summary{cursor:pointer;color:#e6b15a}.admin-log-details pre{max-height:28rem;overflow:auto;margin:.6rem 0 0;padding:.8rem;border-radius:.4rem;background:#0d131b;color:#d8dfe9;font-size:.78rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;width:100%}.admin-log-pagination{display:flex;align-items:center;justify-content:end;gap:.75rem;margin-top:1rem;color:#aeb6c1}.admin-log-list li{display:grid;grid-template-columns:minmax(10rem,auto) 4.5rem 1fr;gap:.75rem;padding:.65rem 0;border-top:1px solid #303c4c;font-size:.86rem}.admin-log-list time{color:#aeb6c1}.admin-log-list strong{color:#e6b15a;text-transform:uppercase}@media(max-width:720px){html:has(.recommendations-view--deck),body:has(.recommendations-view--deck){overflow:hidden;overscroll-behavior:none}.recommendations-view--deck .recommendations-intro{padding:0 0 .5rem}.recommendations-view--deck .recommendations-intro h1{font-size:1.5rem;margin-bottom:.5rem}.recommendations-view--deck .recommendations-intro .eyebrow{display:none}.recommendations-view--deck .deck-instruction{font-size:.75rem;margin-bottom:.5rem}.recommendations-view--deck .return-results{margin-top:.5rem}.recommendations-view--deck .recommendation-deck{margin:.5rem 0;overflow:hidden;padding:.25rem}.recommendations-view--deck .recommendation-card{width:min(84%,340px)}.recommendations-view--deck .recommendation-poster{height:clamp(100px,calc(100dvh - 26rem),390px)}.recommendations-view--deck .recommendation-poster img{object-fit:contain}.recommendations-view--deck .recommendation-copy{padding:.6rem 4rem .6rem .8rem}.recommendations-view--deck .recommendation-copy h2{font-size:1rem;margin:.2rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.swipe-catalog{position:absolute;bottom:.65rem;right:.65rem;display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;padding:0;font-size:1.7rem;box-shadow:0 .2rem .8rem #0000004d;transition:transform .15s ease}.swipe-catalog:active{transform:scale(.92)}.recommendations-view--deck .catalog-import{display:none}.recommendations-view--deck .recommendation-actions:not(:focus-within){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.recommendations-view--deck .onboarding-progress--deck{margin:.4rem 0;font-size:.85rem}.media-row{margin-top:2rem}.media-row h2{margin-bottom:.75rem;font-size:1.25rem;line-height:1.3}.media-scroller{grid-auto-columns:72vw;gap:.85rem;margin-inline:-1rem;padding:.25rem 1rem 1rem;padding-inline-end:max(1rem,calc(28vw - 1rem));scroll-padding-inline-start:1rem;scroll-snap-type:x mandatory;scrollbar-width:none}.media-scroller::-webkit-scrollbar{display:none}.media-scroller .content-card{min-width:0;border-radius:1rem;scroll-snap-stop:always;box-shadow:0 .35rem .75rem #0000002e}.media-scroller .content-poster{width:100%;flex-shrink:0}.media-scroller .content-copy{width:100%;gap:.4rem;padding:.9rem 1rem 1rem}.media-scroller .content-copy strong{display:-webkit-box;min-height:2.6em;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:1rem;line-height:1.3}.media-scroller .media-type{top:.75rem;left:.75rem;padding:.3rem .55rem;border-radius:.4rem}main{padding-bottom:calc(5.75rem + env(safe-area-inset-bottom) + 6px)}.app-header{grid-template-columns:1fr auto;margin-bottom:1.5rem}nav{position:fixed;z-index:10;right:6px;bottom:6px;left:6px;display:grid;grid-template-columns:repeat(var(--nav-count),minmax(0,1fr));gap:0;padding:.35rem max(.4rem,env(safe-area-inset-right)) calc(.35rem + env(safe-area-inset-bottom)) max(.4rem,env(safe-area-inset-left));border:1px solid rgb(181 190 204 / 20%);border-radius:12px;background:#171e27a6;box-shadow:0 4px 20px #0000002e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:translateZ(0)}.app-nav{--nav-count: 5;--nav-left: max(.4rem, env(safe-area-inset-left));--nav-right: max(.4rem, env(safe-area-inset-right));isolation:isolate}.app-nav:before{content:"";position:absolute;top:.35rem;left:var(--nav-left);width:calc((100% - var(--nav-left) - var(--nav-right)) / var(--nav-count));height:3.35rem;border-radius:.55rem;background:#e6b15a;transform:translate(calc(var(--active-index) * 100%));transition:transform .26s cubic-bezier(.22,1,.36,1);pointer-events:none;z-index:-1}.app-nav button.active{background:transparent}nav button{display:grid;min-height:3.35rem;padding:.45rem .25rem;place-items:center;border-radius:.55rem}.nav-icon{display:block}.nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mobile-nav-action{display:grid}.account-logout,.account span{display:none}.search-form{flex-direction:column}.content-modal{grid-template-columns:1fr;max-height:94vh}.content-modal>img{min-height:0;max-height:38vh}.library-confirmed-row{flex-wrap:wrap}.rebuild-library{width:100%;margin-left:0}.admin-heading,.admin-panel-heading,.admin-rebuild{align-items:start;flex-direction:column}.botblocker-details,.admin-log-filters{grid-template-columns:1fr}.admin-log-list li{grid-template-columns:1fr;gap:.2rem}.recommendation-deck{min-height:0;margin:1.5rem 0}.recommendation-poster{height:58vw}.recommendation-actions button{flex:1 1 42%}}@media(prefers-reduced-motion:reduce){.recommendation-card,.recommendation-card.is-exiting,.swipe-catalog{animation:none;transition:none}.swipe-catalog:active{transform:none}.media-scroller{scroll-behavior:auto}.media-scroller .content-card{transition:none}.media-scroller .content-card:hover,.media-scroller .content-card:focus-visible{transform:none}.app-nav:before,.app-nav button{transition:none}.app-nav button:hover,.app-nav button:active{transform:none}}
