:root{--bg: #0f1115;--panel: #151923;--text: #e6e6e6;--muted: #a8b0c0;--accent: #6b8afd;--poster-min: 180px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";background:var(--bg);color:var(--text);overflow-y:overlay;position:relative;background:transparent}@keyframes fadeDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.rail .section-title,.rail .section-subtitle,.rail .rail-cta{opacity:0;transform:translateY(-6px)}.rail.revealed .section-title{animation:fadeDown .36s ease-out forwards}.rail.revealed .section-subtitle{animation:fadeDown .42s ease-out forwards}.rail.revealed .rail-cta{animation:fadeDown .48s ease-out forwards}.page-container{opacity:1;transition:opacity .3s ease-in-out}.page-container:focus{outline:none}.page-container:focus-visible{outline:none}main:focus{outline:none}main:focus-visible{outline:none}.page-container.page-transitioning{opacity:0}.page-loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--bg);z-index:9999;opacity:0;pointer-events:none;transition:opacity .3s ease-in-out}.page-loading-overlay.active{opacity:1;pointer-events:auto}canvas.p5Canvas{position:fixed!important;inset:0;width:100vw!important;height:100vh!important;z-index:-1!important}*{scrollbar-width:none}*::-webkit-scrollbar{width:0;height:0}.container{max-width:1200px;margin:0 auto;padding:0 20px}.site-header{background:linear-gradient(180deg,#1519231a,#1519230a);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)}.header-row{display:grid;grid-template-columns:auto 1fr;align-items:center;position:relative;padding:12px 0}.logo{margin:0;padding:0;font-size:22px;letter-spacing:.5px;line-height:1}.logo a{color:inherit;text-decoration:none}.main-nav{padding:0;justify-self:end}.nav-list{list-style:none;margin:0;padding:0;display:flex;gap:18px;align-items:center}.nav-list{width:100%}.nav-list>li{flex:0 0 auto}.nav-link{color:var(--muted);text-decoration:none;font-size:14px;padding:6px 8px;border-radius:6px;transition:color .12s ease,background-color .12s ease}.nav-link:hover{color:var(--text);background:#ffffff14}.search-container{position:relative;display:flex;align-items:center}.search-toggle{background:none;border:none;color:var(--muted);cursor:pointer;padding:6px 8px;border-radius:6px;transition:color .12s ease,background-color .12s ease;display:inline-flex;align-items:center;justify-content:center;line-height:1}.search-toggle:hover{color:var(--text);background:#ffffff0f}.search-icon{display:block;width:20px;height:20px}.search-box{position:relative;right:auto;left:auto;top:auto;transform:none;width:0;overflow:visible;background:#15192359;border:1px solid rgba(255,255,255,.18);border-radius:6px;transition:width .3s ease,opacity .2s ease;opacity:0;z-index:1;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);box-shadow:0 8px 24px #0000004d,inset 0 0 0 1px #ffffff0f;max-width:min(480px,calc(100vw - 24px));margin-left:8px;pointer-events:none}.search-box.active{width:300px;opacity:1;pointer-events:auto}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#0f1115eb;border:1px solid rgba(255,255,255,.18);border-radius:10px;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0f;padding:6px;z-index:25;display:none}.search-results.open{display:block}.search-item{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:#151923cc;cursor:pointer}.search-item+.search-item{margin-top:6px}.search-item:hover,.search-item.active{background:#151923eb}.search-thumb{width:40px;height:60px;object-fit:cover;border-radius:6px;background:#ffffff0f}.search-title{font-size:14px;color:var(--text);margin:0 0 6px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2}.search-meta{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}.search-meta .meta-tag{font-size:10px;padding:2px 6px}.search-genres{font-size:11px;color:var(--muted);opacity:.85;margin-top:6px}.search-rating{font-size:12px;color:gold;font-weight:600}.search-input{width:100%;padding:8px 12px;background:none;border:none;color:var(--text);font-family:inherit;font-size:14px;outline:none}.search-input::placeholder{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section{margin:28px 0 8px}.section-title{margin:0 0 12px;font-size:18px;color:var(--muted)}.rail-title{display:flex;flex-direction:column}.rail-title .section-title{margin:0}.section-subtitle{margin:4px 0 0;font-size:13px;color:var(--muted);line-height:1.3}@media (max-width: 480px){.section-subtitle{display:none}}.page-header{position:relative}.page-title{font-size:22px;color:var(--text)}.controls-row{display:flex;gap:12px;align-items:center}.genres-toggle,.sort-toggle,.time-toggle,.apply-filters,.clear-filters{background:#15192333;color:var(--text);border:1px solid rgba(255,255,255,.16);border-radius:8px;padding:6px 10px;font-family:inherit;font-size:14px;outline:none}.genres-toggle:focus-visible,.sort-toggle:focus-visible,.apply-filters:focus-visible,.clear-filters:focus-visible,.time-toggle:focus-visible{border-color:#ffffff47}.sort-group{position:relative}.sort-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.sort-toggle:hover{background:#ffffff14}.sort-label{color:var(--text)}.sort-arrow{display:inline-block;width:16px;text-align:center}.sort-arrow[data-dir=asc]{color:#38f29b}.sort-arrow[data-dir=desc]{color:#ff6b6b}.sort-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:#15192359;border:1px solid rgba(255,255,255,.18);border-radius:10px;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0f;padding:6px;z-index:25;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .15s ease,transform .15s ease}.sort-menu.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.sort-option{display:flex;justify-content:space-between;align-items:center;width:100%;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.sort-option+.sort-option{margin-top:6px}.sort-option:hover{background:#ffffff14}.sort-option .arrow{width:16px;text-align:center}.sort-option[data-dir=asc] .arrow{color:#38f29b}.sort-option[data-dir=desc] .arrow{color:#ff6b6b}.time-group{position:relative}.time-toggle{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.time-toggle:hover{background:#ffffff14}.time-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:#15192359;border:1px solid rgba(255,255,255,.18);border-radius:10px;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0f;padding:6px;z-index:25;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .15s ease,transform .15s ease}.time-menu.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.time-option{width:100%;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.time-option+.time-option{margin-top:6px}.time-option:hover{background:#ffffff14}.genres-toggle{cursor:pointer;transition:color .12s ease,background-color .12s ease,border-color .12s ease}.genres-toggle:hover{background:#ffffff14}.genres-counter{color:var(--muted);font-size:13px;font-weight:400}.genres-group{position:relative}.genres-panel{position:absolute;top:calc(100% + 8px);left:0;width:560px;max-height:520px;overflow:auto;background:#15192359;border:1px solid rgba(255,255,255,.18);border-radius:10px;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0f;padding:10px;z-index:20;opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .15s ease,transform .15s ease}.genres-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.genres-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 4px}.genres-list li{display:block}.genre-input{position:absolute;opacity:0;pointer-events:none}.genre-label{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:999px;color:var(--muted);background:#ffffff0a;border:1px solid rgba(255,255,255,.12);cursor:pointer;transition:color .12s ease,background-color .12s ease,border-color .12s ease,background-image .25s ease}.genre-label:hover{color:var(--text);background:#ffffff14}.genre-input:checked+.genre-label{color:var(--text);border-color:#6b8afd99;background-image:linear-gradient(90deg,#ae2cf1,#7776ff);animation:genreFade .22s ease-out}.genre-input[data-all-match]+.genre-label{border-radius:8px;background:#ffffff0f;border-style:dashed;border-color:#ffffff2e}.genre-input[data-all-match]:checked+.genre-label{background-image:none;background:#6b8afd2e;border-color:#6b8afd8c;color:var(--text)}.genre-label:focus{outline:none}.genre-label:focus-visible{outline:none}.genre-input:focus+.genre-label{outline:none;box-shadow:none}.genre-input:focus-visible+.genre-label{outline:none;box-shadow:none}@keyframes genreFade{0%{filter:saturate(60%) brightness(90%);opacity:.5}to{filter:saturate(100%) brightness(100%);opacity:1}}.apply-filters,.clear-filters{cursor:pointer}.apply-filters:hover,.clear-filters:hover{background:#ffffff14}.movie-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(var(--poster-min),1fr))}.infinite-spinner{display:flex;align-items:center;justify-content:center;padding:16px 0}.infinite-spinner .spinner{width:28px;height:28px;border:3px solid rgba(255,255,255,.14);border-top-color:var(--accent);border-radius:50%;animation:spinLinear 1s linear infinite}@keyframes spinLinear{to{transform:rotate(360deg)}}.movie-card{background:#1519231f;border:1px solid rgba(255,255,255,.16);border-radius:10px;overflow:hidden;position:relative;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0d;transition:background-color .12s ease;cursor:pointer}.movie-card:hover{background:#ffffff14}.card-add{position:absolute;top:8px;left:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#15192359;border:1px solid rgba(255,255,255,.18);color:var(--text);font-size:16px;line-height:1;cursor:pointer;z-index:2;opacity:0;pointer-events:none;transform:translateY(-2px);transition:background-color .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease,transform .12s ease}.card-add:hover{background:#ffffff1a}.card-add:focus{outline:none}.card-add:focus-visible{border-color:#ffffff47}.poster-img:hover~.card-add,.poster-skeleton:hover~.card-add,.card-add:hover,.card-add:focus-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.card-add-tooltip{position:fixed;background:#151923d9;color:var(--text);border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:4px 8px;white-space:nowrap;box-shadow:0 8px 24px #0000004d,inset 0 0 0 1px #ffffff0f;opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease;z-index:1000;transform:translateY(-50%) translate(-4px) scale(.98)}.card-add-tooltip.visible{opacity:1;transform:translateY(-50%) translate(0) scale(1)}.input{background:#15192359;border:1px solid rgba(255,255,255,.18);color:var(--text);border-radius:8px;padding:6px 10px;font:inherit;height:32px}.input::placeholder{color:var(--muted)}.input:focus{outline:none;border-color:#ffffff47;box-shadow:0 0 0 3px #ffffff14}.poster-skeleton{aspect-ratio:2 / 3;width:100%;background:linear-gradient(135deg,#2a2f3a1a,#1e23300d);backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%)}.poster-img{width:100%;height:auto;aspect-ratio:2 / 3;object-fit:cover;border-radius:10px 10px 0 0;display:block;opacity:0;transition:opacity .6s ease-out}.poster-img.loaded{opacity:1}.movie-info{padding:10px;display:flex;flex-direction:column;gap:6px;position:relative}.movie-title{margin:0;font-size:14px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;cursor:default}.movie-overlay{position:absolute;inset:0 0 36px;background:linear-gradient(to top,#000000d9,#0006 40%,#0000 70%);display:flex;align-items:flex-end;padding:4px;opacity:0;pointer-events:none;transition:opacity .2s ease;border-radius:10px 10px 0 0}.movie-card:hover .movie-overlay{opacity:1}.overlay-content{display:flex;flex-direction:column;gap:4px;width:100%}.overlay-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.meta-tag{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;color:var(--muted);background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:999px;line-height:1.1}.meta-tag.type,.meta-tag.runtime,.meta-tag.year{color:var(--text);border-color:#6b8afd59}.overlay-rating{font-size:13px;color:gold;font-weight:600;display:flex;align-items:center;gap:4px}.overlay-year{font-size:12px;color:var(--text);opacity:.9}.overlay-genres{font-size:11px;color:var(--muted);opacity:.8}.title-tooltip{position:fixed;background:#151923f2;color:var(--text);border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:6px 10px;white-space:nowrap;font-size:13px;box-shadow:0 8px 24px #0000004d,inset 0 0 0 1px #ffffff0f;opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease;z-index:1000;transform:translate(-50%) translateY(0) scale(.98);backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%)}.title-tooltip.visible{opacity:1;transform:translate(-50%) translateY(0) scale(1)}@media (min-width: 1200px){.movie-grid{grid-template-columns:repeat(auto-fill,minmax(var(--poster-min),1fr))}}.site-header{position:sticky;top:0;z-index:50}.rail{margin:24px 0}.genre-rails>.rail+.rail{margin-top:40px}.rail-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.rail-cta{display:flex;gap:8px}.section-title{position:relative;display:inline-flex;align-items:center;gap:6px}.list-title-actions{display:inline-flex;gap:6px;margin-left:6px;opacity:0;transform:translateY(-2px);transition:opacity .18s ease,transform .18s ease}.rail-head:hover .list-title-actions{opacity:1;transform:translateY(0)}.rail-btn.small{width:22px;height:22px;border-radius:6px}.rail-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#15192338;border:1px solid rgba(255,255,255,.16);color:var(--text);border-radius:8px;padding:0;line-height:1;cursor:pointer;transition:all .3s ease}.rail-btn:hover{background:#ffffff14}.rail-btn .rail-icon{display:inline-block;transform:translateY(-1px);transition:transform .3s ease}.expand-btn{transition:transform .3s ease}.list-section:not(.expanded) .rail-cta .rail-btn{transform:translate(0)}.list-section.expanded .rail-cta .rail-btn{transform:translate(20px)}.rail-track{display:grid;grid-auto-flow:column;grid-auto-columns:var(--poster-min);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.rail-track .movie-card{scroll-snap-align:start;position:relative}.movie-card.skeleton{background:#1519231f;border:1px solid rgba(255,255,255,.1)}.skeleton .poster-skeleton{position:relative;overflow:hidden}.line-skeleton{height:12px;border-radius:6px;background:#ffffff0f;position:relative;overflow:hidden}.line-skeleton.short{width:70%}.line-skeleton.long{width:90%;margin-top:6px}.shimmer:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff0,#ffffff14,#fff0);transform:translate(-100%);animation:shimmerMove 1.2s infinite}@keyframes shimmerMove{to{transform:translate(100%)}}.rail.revealed .rail-track .movie-card{opacity:0;transform:translateY(-8px);animation:fadeDown .52s ease-out forwards}@media (prefers-reduced-motion: reduce){.rail.revealed .rail-track .movie-card{animation:none;opacity:1;transform:none}}.featured-hero{position:relative;border-radius:12px;overflow:hidden;min-height:320px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,#2a2f3a1a,#1e23300d);box-shadow:0 16px 48px #00000059,inset 0 0 0 1px #ffffff0d}.featured-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center top 20%;filter:brightness(.9) saturate(120%);transform:scale(1);will-change:transform,opacity;opacity:0;transition:opacity .36s ease-out}.featured-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#0f11150d,#0f1115a6 55%,#0f1115f2)}.featured-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;padding:20px;min-height:320px}@keyframes heroKenBurns{0%{transform:scale(1) translateZ(0)}to{transform:scale(1.04) translate3d(1%,0,0)}}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}.featured-hero-bg.slide-enter{animation:heroFadeIn .42s ease-out forwards,heroKenBurns 12s ease-in-out forwards}.featured-hero-bg.visible{opacity:1}.featured-hero.no-zoom .featured-hero-bg.slide-enter,.featured-hero-content.slide-enter{animation:heroFadeIn .42s ease-out forwards}.featured-title{margin:0;font-size:28px;line-height:1.1;letter-spacing:.2px;color:var(--text);text-shadow:0 4px 12px rgba(0,0,0,.55)}.featured-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.featured-meta .meta-tag{background:#ffffff14}.featured-cta{margin-top:4px;display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;font-size:14px;color:var(--text);background:#15192333;border:1px solid rgba(255,255,255,.16);border-radius:8px;cursor:pointer}.btn:hover{background:#ffffff14}.btn:focus-visible{outline:none;border-color:#ffffff47}.featured-meta .meta-tag.rating{color:gold;font-weight:600}@media (min-width: 768px){.featured-hero{min-height:380px}.featured-hero-content{min-height:380px;padding:28px}.featured-title{font-size:34px}}@media (min-width: 1200px){.featured-hero{min-height:440px}.featured-hero-content{min-height:440px;padding:34px}.featured-title{font-size:40px}}@media (prefers-reduced-motion: reduce){.rail-btn,.rail-track,.movie-card{transition:none!important}}@media (min-width: 768px){.movie-grid{grid-template-columns:repeat(auto-fill,minmax(var(--poster-min),1fr))}}@media (max-width: 600px){:root{--poster-min: 140px}.container{padding:0 12px}.header-row{padding:10px 0}.nav-link{font-size:13px;padding:6px}.search-box{max-width:calc(100vw - 24px)}.search-box.active{width:min(240px,calc(100vw - 24px))}.search-item{grid-template-columns:32px 1fr;gap:10px}.search-thumb{width:32px;height:48px}.search-title{font-size:13px}.search-meta .meta-tag{font-size:9px;padding:2px 5px}.controls-row{flex-wrap:wrap;gap:8px}.genres-toggle,.sort-toggle,.time-toggle,.apply-filters,.clear-filters{font-size:13px;padding:6px 8px}.genres-counter{font-size:12px}.genres-panel{left:8px;right:8px;width:auto;max-height:70vh}.genres-list{gap:6px 4px}.genre-label{padding:6px 8px;font-size:12px}.movie-grid{gap:12px}.movie-title{font-size:13px}.meta-tag{font-size:10px;padding:2px 7px}.rail-track{gap:12px}.rail-btn{width:26px;height:26px}.featured-hero{min-height:240px}.featured-hero-content{min-height:240px;padding:16px}.featured-title{font-size:22px}.btn{padding:7px 10px;font-size:13px}}@media (max-width: 400px){:root{--poster-min: 120px}.search-box.active{width:min(200px,calc(100vw - 24px))}.featured-title{font-size:20px}}.popover-menu{position:fixed;background:#15192359;border:1px solid rgba(255,255,255,.18);border-radius:10px;backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);box-shadow:0 12px 36px #00000059,inset 0 0 0 1px #ffffff0f;padding:6px;min-width:180px;z-index:10000;opacity:0;transform:scale(.95);animation:menuFadeIn .15s ease-out forwards}@keyframes menuFadeIn{to{opacity:1;transform:scale(1)}}.popover-menu.menu-right{transform-origin:left center}.menu-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;font-size:14px;color:var(--text);background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .1s ease}.menu-item:hover:not([disabled]){background:#ffffff14}.menu-item:focus{outline:none;background:#ffffff1f}.menu-item[disabled]{opacity:.5;cursor:not-allowed}.submenu-arrow{margin-left:8px;font-size:16px;opacity:.7}.menu-sep{height:1px;background:#ffffff1a;margin:4px 0}.submenu{animation:submenuSlideIn .12s ease-out forwards}@keyframes submenuSlideIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.my-list-page{padding-top:20px;padding-bottom:60px}.my-list-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:#5a79ec;border-color:#5a79ec}.btn-secondary{background:#ffffff0f;border-color:#ffffff26}.btn-secondary:hover{background:#ffffff1a}.list-section{margin:32px 0}.list-section.expanded .rail-track{display:flex;flex-wrap:wrap;gap:14px;overflow-x:visible;overflow-y:visible}.list-section.expanded .rail-track .movie-card{flex:0 0 var(--poster-min);min-width:var(--poster-min);max-width:var(--poster-min)}.list-section.expanded .rail-prev,.list-section.expanded .rail-next{opacity:0;pointer-events:none}.rail-prev,.rail-next{transition:opacity .3s ease,transform .3s ease}.list-section:not(.expanded) .rail-prev,.list-section:not(.expanded) .rail-next{opacity:1;transform:translate(0)}.rail-track.drag-over{background:#6b8afd14;border-radius:8px;outline:2px dashed rgba(107,138,253,.4);outline-offset:4px}.rail-track .empty-state{grid-column:1 / -1;text-align:center;padding:80px 20px;color:var(--muted);font-size:14px}.movie-card.dragging{opacity:.5;transform:scale(.95);cursor:grabbing}.movie-card[draggable=true]{cursor:grab}.movie-card[draggable=true]:active{cursor:grabbing}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;padding:20px;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--panel);border:1px solid rgba(255,255,255,.15);border-radius:12px;max-width:600px;width:100%;max-height:80vh;overflow:auto;box-shadow:0 12px 48px #00000080;animation:modalSlideIn .25s ease-out}@keyframes modalSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.08)}.modal-title{margin:0;font-size:18px;font-weight:600;color:var(--text)}.modal-close{background:transparent;border:none;color:var(--muted);font-size:28px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .1s ease,color .1s ease}.modal-close:hover{background:#ffffff14;color:var(--text)}.modal-body{padding:24px}.modal-body p{margin-top:0;color:var(--muted);font-size:14px;line-height:1.6}.export-textarea,.import-textarea{width:100%;padding:12px;background:#0000004d;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text);font-family:Courier New,monospace;font-size:12px;line-height:1.5;resize:vertical;margin-bottom:16px}.export-textarea:focus,.import-textarea:focus{outline:none;border-color:var(--accent)}.share-url-input{width:100%;padding:12px;background:#0000004d;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text);font-size:13px;margin-bottom:16px}.share-url-input:focus{outline:none;border-color:var(--accent)}.modal-file-input{margin-bottom:16px;display:flex;align-items:center;gap:12px}.file-name{font-size:13px;color:var(--muted)}.modal-options{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.modal-options label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text);cursor:pointer}.modal-options input[type=radio]{cursor:pointer}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.import-preview{background:#0003;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:16px;margin-bottom:16px}.preview-list{list-style:none;margin:0;padding:0}.preview-list li{padding:6px 0;color:var(--text);font-size:14px;border-bottom:1px solid rgba(255,255,255,.05)}.preview-list li:last-child{border-bottom:none}.notification-toast{position:fixed;bottom:24px;right:24px;background:var(--panel);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:12px 20px;font-size:14px;color:var(--text);box-shadow:0 8px 24px #0006;z-index:10002;opacity:0;transform:translateY(20px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}.notification-toast.visible{opacity:1;transform:translateY(0);pointer-events:auto}@media (max-width: 768px){.my-list-toolbar{flex-direction:column;align-items:stretch}.my-list-toolbar .btn{width:100%}.list-section.expanded .rail-track .movie-card{flex:0 0 140px;min-width:140px;max-width:140px}.modal-content{max-width:100%;max-height:90vh}.modal-header,.modal-body{padding:16px}.notification-toast{bottom:16px;right:16px;left:16px}}.add-to-list-btn{background:#6b8afd26;border-color:#6b8afd4d}.add-to-list-btn:hover{background:#6b8afd40;border-color:#6b8afd66}
