@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@700;900&family=Inter:wght@400;500;600&family=Space+Mono:wght@400;700&display=swap";:root{--bg:#06060c;--bg-deep:#030308;--bg-card:#ffffff09;--bg-card-hover:#ffffff12;--gold:#f5c518;--gold-dim:#b8940f;--gold-glow:#f5c51859;--gold-bright:#ffe34a;--red:#e6243a;--red-glow:#e6243a4d;--blue:#64c8ff;--green:#50c878;--purple:#b388ff;--text:#e8e4e0;--text-dim:#7a756f;--text-bright:#fff;--border:#ffffff12;--border-hover:#ffffff24;--radius:14px;--radius-sm:8px;--radius-lg:20px;--shadow:0 8px 32px #00000080;--shadow-gold:0 0 30px var(--gold-glow);--font-display:"Playfair Display", serif;--font-body:"Inter", -apple-system, sans-serif;--font-mono:"Space Mono", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100dvh;overflow-x:hidden}body:before{content:"";z-index:9999;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;position:fixed;inset:0}body:after{content:"";z-index:-1;background:radial-gradient(80% 50% at 50% -20%,#f5c5180f 0%,#0000 60%),radial-gradient(60% 40% at 20% 80%,#c41e3d0a 0%,#0000 50%),radial-gradient(60% 40% at 80% 80%,#64c8ff08 0%,#0000 50%);animation:20s ease-in-out infinite bg-drift;position:fixed;inset:0}@keyframes bg-drift{0%,to{opacity:1}50%{opacity:.7}}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff26}.glass-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:0 8px 40px #0000004d}.btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:500 .9rem var(--font-body);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px 22px;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";background:radial-gradient(circle at var(--x,50%) var(--y,50%), #ffffff1a 0%, transparent 60%);opacity:0;transition:opacity .3s;position:absolute;inset:0}.btn:hover:after{opacity:1}.btn:hover{background:var(--bg-card-hover);transform:translateY(-1px)}.btn:active{transform:translateY(0)scale(.98)}.btn-gold{background:linear-gradient(135deg, var(--gold), var(--gold-bright));color:#000;text-shadow:0 1px #fff3;border-color:#0000;font-weight:700}.btn-gold:hover{background:linear-gradient(135deg, var(--gold-bright), var(--gold));box-shadow:var(--shadow-gold);transform:translateY(-2px)}.btn-gold:active{transform:translateY(0)}.btn-gold:disabled{opacity:.35;cursor:default;box-shadow:none;transform:none}.btn-ghost{border-color:#0000}.btn-ghost:hover{background:var(--bg-card)}.btn-lg{border-radius:var(--radius);padding:16px 36px;font-size:1.05rem}.btn-sm{padding:6px 14px;font-size:.8rem}.btn-danger{color:var(--red)}.btn-danger:hover{background:#e6243a1f}.btn-icon{border-radius:50%;width:40px;height:40px;padding:0;font-size:1.2rem}.input{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);font:400 .95rem var(--font-body);background:#ffffff08;outline:none;padding:12px 16px;transition:all .25s}.input:focus{border-color:var(--gold-dim);background:#ffffff0d;box-shadow:0 0 0 3px #f5c51814}.input::placeholder{color:var(--text-dim)}@keyframes fade-in{0%{opacity:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(20px)}}@keyframes fade-up-sm{0%{opacity:0;transform:translateY(10px)}}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}}@keyframes slide-left{0%{opacity:0;transform:translate(30px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px var(--gold-glow)}50%{box-shadow:0 0 40px var(--gold-glow), 0 0 60px #f5c51826}}@keyframes marquee-blink{0%,to{opacity:1}50%{opacity:.4}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-15px)rotate(3deg)}}@keyframes crown-bob{0%,to{transform:translateY(0)rotate(-5deg)}50%{transform:translateY(-8px)rotate(5deg)}}@keyframes typewriter-cursor{0%,to{border-color:var(--gold)}50%{border-color:#0000}}@keyframes spotlight{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}50%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}.stagger>*{animation:.5s both fade-up}.stagger>:first-child{animation-delay:0s}.stagger>:nth-child(2){animation-delay:60ms}.stagger>:nth-child(3){animation-delay:.12s}.stagger>:nth-child(4){animation-delay:.18s}.stagger>:nth-child(5){animation-delay:.24s}.stagger>:nth-child(6){animation-delay:.3s}.stagger>:nth-child(7){animation-delay:.36s}.stagger>:nth-child(8){animation-delay:.42s}.stagger>:nth-child(9){animation-delay:.48s}.stagger>:nth-child(10){animation-delay:.54s}.login-screen{place-items:center;min-height:100dvh;padding:20px;display:grid}.login-card{text-align:center;width:100%;max-width:380px;padding:48px 36px;animation:.8s fade-up}.login-icon{filter:drop-shadow(0 0 24px var(--gold-glow));margin-bottom:20px;animation:4s ease-in-out infinite float}.login-title{font:900 2.4rem var(--font-display);color:var(--text-bright);margin-bottom:6px}.login-tagline{color:var(--text-dim);margin-bottom:32px;font-size:.95rem;font-style:italic}.login-input{text-align:center;margin-bottom:16px;padding:14px 18px;font-size:1.1rem}.login-btn{width:100%}.app-shell{padding-bottom:72px}.bottom-nav{z-index:50;padding:8px 0 max(8px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(20px)saturate(1.5);backdrop-filter:blur(20px)saturate(1.5);border-top:1px solid var(--border);background:#06060ceb;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;flex-direction:column;align-items:center;gap:2px;padding:6px 16px;font-size:.65rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex;position:relative}.bottom-nav a .nav-icon{font-size:1.4rem;line-height:1}.bottom-nav a.active{color:var(--gold)}.bottom-nav a.active:before{content:"";background:var(--gold);border-radius:3px;width:24px;height:3px;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.nav-user{font:600 .65rem var(--font-body);color:var(--text-dim);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;max-width:80px;padding:6px 12px;transition:color .2s;display:flex;overflow:hidden}.nav-user .nav-icon{font-size:1.4rem;line-height:1}.nav-user:hover{color:var(--red)}.home{max-width:900px;margin:0 auto;padding:40px 20px}.home-header{text-align:center;margin-bottom:48px;animation:.8s fade-up;position:relative}.marquee-border{border:2px solid var(--gold-dim);border-radius:var(--radius-lg);padding:24px 48px;display:inline-block;position:relative}.marquee-border:before,.marquee-border:after{content:"✦  ✦  ✦  ✦  ✦  ✦  ✦  ✦  ✦";color:var(--gold);letter-spacing:.3em;font-size:.5rem;animation:2s ease-in-out infinite marquee-blink;position:absolute;left:20px;right:20px}.marquee-border:before{top:-8px}.marquee-border:after{animation-delay:1s;bottom:-8px}.logo{font:900 3.2rem var(--font-display);color:var(--text-bright);letter-spacing:-.02em;text-shadow:0 0 60px #f5c51826;line-height:1.1}.logo-icon{color:var(--gold);filter:drop-shadow(0 0 16px var(--gold-glow));margin-right:6px;animation:4s ease-in-out infinite float;display:inline-block}.tagline{color:var(--text-dim);font:italic 1.05rem var(--font-body);letter-spacing:.02em;margin-top:12px}.user-greeting{justify-content:center;align-items:center;gap:12px;margin-bottom:40px;animation:.6s .2s both fade-up;display:flex}.user-greeting .input{text-align:center;max-width:220px;font-weight:500}.section-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:20px;padding-bottom:12px;display:flex}.section-icon{background:var(--bg-card);border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:1.4rem;display:grid}.section-title{font:700 1.25rem var(--font-display);color:var(--text-bright)}.section-count{font:500 .75rem var(--font-mono);color:var(--text-dim);background:var(--bg-card);border-radius:12px;margin-left:auto;padding:3px 10px}.home-section{margin-bottom:40px;animation:.6s both fade-up}.home-section:nth-child(3){animation-delay:.1s}.home-section:nth-child(4){animation-delay:.2s}.home-section:nth-child(5){animation-delay:.3s}.top-picks-scroll{scrollbar-width:none;gap:16px;padding:4px 4px 12px;display:flex;overflow-x:auto}.top-picks-scroll::-webkit-scrollbar{display:none}.top-pick-card{text-align:center;cursor:pointer;flex:0 0 160px;padding:16px 12px;position:relative}.top-pick-card:hover{transform:translateY(-4px)scale(1.02)}.top-pick-poster{object-fit:cover;border-radius:var(--radius-sm);width:120px;height:180px;margin:0 auto 10px;transition:box-shadow .3s;box-shadow:0 8px 24px #0006}.top-pick-card:hover .top-pick-poster{box-shadow:0 8px 30px #00000080, 0 0 20px var(--gold-glow)}.top-pick-poster-placeholder{border-radius:var(--radius-sm);width:120px;height:180px;color:var(--text-dim);background:linear-gradient(135deg,#1a1a2e,#16213e);place-items:center;margin:0 auto 10px;font-size:.8rem;display:grid}.top-pick-user{text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-bottom:4px;font-size:.7rem;font-weight:600}.top-pick-title{font:600 .85rem var(--font-body);color:var(--text-bright);line-height:1.3}.top-pick-badge{background:var(--gold);color:#000;font:700 .55rem var(--font-mono);letter-spacing:.05em;border-radius:10px;padding:2px 8px;position:absolute;top:8px;right:8px}.night-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.night-card{cursor:pointer;flex-direction:column;gap:8px;padding:20px;display:flex;position:relative;overflow:hidden}.night-card:before{content:"";border-radius:0 4px 4px 0;width:4px;height:100%;transition:background .3s;position:absolute;top:0;left:0}.night-card.nominating:before{background:var(--blue)}.night-card.voting:before{background:var(--gold)}.night-card.decided:before{background:var(--green)}.night-card:hover{transform:translateY(-3px)}.night-card h3{font:700 1.1rem var(--font-display);color:var(--text-bright)}.night-card-phase{font:600 .65rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-radius:12px;width:fit-content;padding:3px 10px}.night-card-phase.nominating{color:var(--blue);background:#64c8ff1f}.night-card-phase.voting{color:var(--gold);background:#f5c5181f}.night-card-phase.decided{color:var(--green);background:#50c8781f}.night-card-date,.night-card-count{color:var(--text-dim);font-size:.85rem}.night-card-winner{color:var(--gold);align-items:center;gap:4px;font-size:.9rem;font-weight:600;display:flex}.home-actions{justify-content:center;margin-bottom:40px;animation:.6s .15s both fade-up;display:flex}.create-form{flex-direction:column;gap:14px;width:100%;max-width:440px;padding:28px;display:flex}.create-form h3{font:700 1.2rem var(--font-display);color:var(--text-bright)}.create-form-btns{gap:8px;display:flex}.home-footer{text-align:center;margin-top:24px;animation:.6s .4s both fade-up}.this-week-card{border-color:var(--gold-dim);background:linear-gradient(135deg, #f5c5180a 0%, var(--bg-card) 100%);align-items:center;gap:24px;padding:24px;animation:.6s fade-up;display:flex}.this-week-poster{object-fit:cover;border-radius:var(--radius);width:140px;height:210px;box-shadow:0 8px 32px #0006, 0 0 24px var(--gold-glow);border:2px solid var(--gold-dim);flex-shrink:0}.this-week-poster-placeholder{border-radius:var(--radius);width:140px;height:210px;color:var(--text-dim);text-align:center;background:linear-gradient(135deg,#1a1a2e,#16213e);flex-shrink:0;place-items:center;padding:12px;font-size:.9rem;display:grid}.this-week-info{flex-direction:column;gap:4px;display:flex}.this-week-badge{font:700 .7rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gold);background:#f5c5181a;border-radius:12px;width:fit-content;padding:4px 12px}.this-week-title{font:900 1.8rem var(--font-display);color:var(--text-bright);line-height:1.2}.this-week-meta{color:var(--gold);font-size:.95rem;font-weight:500}.this-week-from{color:var(--text-dim);margin-top:4px;font-size:.85rem}.this-week-date{color:var(--text-dim);font-size:.8rem}@media (width<=600px){.this-week-card{text-align:center;flex-direction:column}.this-week-info{align-items:center}.this-week-title{font-size:1.4rem}}.empty-state{text-align:center;color:var(--text-dim);padding:40px 20px}.empty-state-icon{opacity:.5;margin-bottom:12px;font-size:3rem}.wishlist{max-width:700px;margin:0 auto;padding:20px}.wishlist-header{text-align:center;margin-bottom:32px;animation:.6s fade-up}.wishlist-header h1{font:900 2.2rem var(--font-display);color:var(--text-bright)}.wishlist-entries{flex-direction:column;gap:8px;display:flex}.wishlist-item{cursor:default;align-items:center;gap:14px;padding:14px 16px;transition:all .25s;display:flex;position:relative}.wishlist-item:hover{background:var(--bg-card-hover)}.wishlist-item.top-pick{border-color:var(--gold-dim);box-shadow:0 0 20px #f5c51814}.wishlist-rank{font:700 1rem var(--font-mono);color:var(--text-dim);text-align:center;min-width:28px}.wishlist-item.top-pick .wishlist-rank{color:var(--gold)}.wishlist-poster{object-fit:cover;border-radius:6px;flex-shrink:0;width:46px;height:69px}.wishlist-poster-placeholder{background:var(--bg-card);width:46px;height:69px;color:var(--text-dim);border-radius:6px;flex-shrink:0;place-items:center;font-size:.6rem;display:grid}.wishlist-info{flex:1;min-width:0}.wishlist-title{font:600 .95rem var(--font-body);color:var(--text-bright);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wishlist-meta{color:var(--text-dim);font-size:.8rem}.wishlist-actions{flex-shrink:0;gap:2px;display:flex}.wishlist-actions .btn-icon{width:32px;height:32px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;font-size:1rem;transition:all .2s;display:grid}.wishlist-actions .btn-icon:hover{background:var(--bg-card);color:var(--text)}.wishlist-actions .btn-icon:hover.btn-danger{color:var(--red);background:#e6243a1a}.top-pick-label{font:700 .6rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--gold);background:#f5c5181a;border-radius:8px;padding:2px 8px}.night-view{max-width:1000px;margin:0 auto;padding:20px}.night-nav{justify-content:space-between;align-items:center;margin-bottom:16px;animation:.4s fade-in;display:flex}.night-nav-actions{gap:8px;display:flex}.night-header{text-align:center;margin-bottom:36px;animation:.6s fade-up}.night-header h1{font:900 2.6rem var(--font-display);color:var(--text-bright);text-shadow:0 0 40px #f5c5181a}.night-date{color:var(--text-dim);margin-top:6px;font-size:.95rem}.phase-badge{font:600 .7rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-radius:20px;align-items:center;gap:6px;margin-top:10px;padding:5px 18px;display:inline-flex}.phase-badge.nominating{color:var(--blue);background:#64c8ff1f;border:1px solid #64c8ff40}.phase-badge.voting{color:var(--gold);border:1px solid var(--gold-glow);background:#f5c5181f;animation:3s ease-in-out infinite pulse-glow}.phase-badge.decided{color:var(--green);background:#50c8781f;border:1px solid #50c87840}.carousel-wrapper{margin:0 -20px 36px;padding:20px 0;animation:.6s .1s both fade-up;position:relative}.carousel-empty{text-align:center;color:var(--text-dim);padding:80px 20px;animation:.5s fade-up}.carousel-empty-icon{opacity:.3;margin-bottom:16px;font-size:4rem;animation:6s ease-in-out infinite float}.carousel-track{scroll-snap-type:x mandatory;scrollbar-width:none;gap:24px;padding:20px 48px;display:flex;overflow-x:auto}.carousel-track::-webkit-scrollbar{display:none}.carousel-card{scroll-snap-align:center;perspective:1200px;cursor:pointer;flex:0 0 280px;transition:transform .4s cubic-bezier(.4,0,.2,1),filter .3s;animation:.5s both fade-up}.carousel-card:first-child{animation-delay:0s}.carousel-card:nth-child(2){animation-delay:80ms}.carousel-card:nth-child(3){animation-delay:.16s}.carousel-card:nth-child(4){animation-delay:.24s}.carousel-card:nth-child(5){animation-delay:.32s}.carousel-card:nth-child(6){animation-delay:.4s}.carousel-card:hover{transform:scale(1.04)}.carousel-card.active{z-index:2;transform:scale(1.08)}.carousel-card.winner{box-shadow:0 0 50px var(--gold-glow), 0 0 100px #f5c5181f}.carousel-card.leading .card-front{border-color:var(--gold-dim);box-shadow:0 0 20px #f5c5181a}.card-flipper{width:100%;height:420px;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,0,.2,1);position:relative}.card-flipper.flipped{transform:rotateY(180deg)}.card-front,.card-back{backface-visibility:hidden;border-radius:var(--radius);border:1px solid var(--border);position:absolute;inset:0;overflow:hidden}.card-front{background:#0d0d15}.card-poster{object-fit:cover;width:100%;height:100%;transition:transform .6s}.carousel-card:hover .card-poster{transform:scale(1.05)}.card-poster-placeholder{width:100%;height:100%;color:var(--text-dim);text-align:center;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);place-items:center;padding:20px;font-size:1rem;display:grid}.card-overlay{opacity:0;background:linear-gradient(#0000 0%,#00000080 60%,#000000f2 100%);flex-direction:column;justify-content:flex-end;padding:18px;transition:opacity .35s;display:flex;position:absolute;inset:0}.carousel-card:hover .card-overlay,.carousel-card.active .card-overlay{opacity:1}.card-title{font:700 1.1rem var(--font-display);color:var(--text-bright)}.card-year{color:var(--text-dim);font-size:.85rem}.card-tmdb-rating{color:var(--gold);font-size:.85rem}.card-nominated{color:var(--text-dim);margin-top:4px;font-size:.72rem}.flip-btn{margin-top:8px;font-size:.75rem}.winner-crown{filter:drop-shadow(0 0 12px var(--gold-glow));z-index:3;font-size:2.4rem;animation:2s ease-in-out infinite crown-bob;position:absolute;top:-10px;right:-10px}.card-vote-section{border-top:1px solid var(--border);background:linear-gradient(#000000b3,#000000f2);justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:absolute;bottom:0;left:0;right:0}.vote-count{font-size:.9rem;font-weight:600}.btn-vote{padding:8px 24px;font-size:.85rem}.voted-badge{color:var(--gold);align-items:center;gap:4px;font-size:.9rem;font-weight:700;display:flex}.card-back{background:var(--bg-deep);cursor:pointer;flex-direction:column;gap:12px;padding:24px;display:flex;transform:rotateY(180deg)}.card-back h3{font:700 1.1rem var(--font-display);color:var(--text-bright)}.card-overview{color:var(--text-dim);flex:1;font-size:.85rem;line-height:1.6;overflow-y:auto}.card-back-meta{color:var(--text-dim);flex-direction:column;gap:4px;font-size:.8rem;display:flex}.carousel-arrow{border:1px solid var(--border);width:48px;height:48px;color:var(--text);cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#06060ccc;border-radius:50%;place-items:center;font-size:2rem;transition:all .25s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{border-color:var(--gold-dim);box-shadow:0 0 16px var(--gold-glow);background:#ffffff14}.carousel-arrow:disabled{opacity:.15;cursor:default}.carousel-arrow.left{left:6px}.carousel-arrow.right{right:6px}.carousel-dots{justify-content:center;gap:10px;margin-top:18px;display:flex}.carousel-dot{background:var(--text-dim);opacity:.2;cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;transition:all .3s}.carousel-dot.active{opacity:1;background:var(--gold);box-shadow:0 0 8px var(--gold-glow);transform:scale(1.4)}.movie-search{max-width:600px;margin:0 auto 24px;animation:.5s fade-up}.search-row{gap:10px;display:flex}.search-name{max-width:160px}.search-loading{text-align:center;color:var(--text-dim);padding:16px;font-size:.9rem}.search-results{border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#06060cf2;margin-top:8px;overflow:hidden;box-shadow:0 16px 48px #0006}.search-result{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;text-align:left;font:400 .9rem var(--font-body);background:0 0;align-items:center;gap:14px;padding:12px 16px;transition:all .2s;display:flex}.search-result:hover{background:var(--bg-card-hover);padding-left:20px}.search-result:last-child{border-bottom:none}.search-poster{object-fit:cover;border-radius:6px;flex-shrink:0;width:46px;height:69px}.search-poster-placeholder{background:var(--bg-card);width:46px;height:69px;color:var(--text-dim);border-radius:6px;flex-shrink:0;place-items:center;font-size:.6rem;display:grid}.search-info{flex-direction:column;gap:2px;display:flex}.search-title{color:var(--text-bright);font-weight:600}.search-year{color:var(--text-dim);font-size:.8rem}.search-rating{color:var(--gold);font-size:.8rem}.search-no-key{text-align:center;color:var(--text-dim);padding:28px}.search-no-key code{background:var(--bg-card);font:.85rem var(--font-mono);border-radius:4px;padding:2px 8px}.search-no-key a{color:var(--gold);text-decoration:underline}.nominated-list{max-width:600px;margin:24px auto}.nominated-list h3{font:700 1rem var(--font-display);color:var(--text-bright);margin-bottom:10px}.nominated-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:10px 14px;font-size:.9rem;transition:background .2s;display:flex}.nominated-item:hover{background:var(--bg-card)}.nominated-by{color:var(--text-dim);margin-left:auto;font-size:.8rem}.phase-controls{max-width:700px;margin:0 auto;animation:.5s fade-up}.phase-advance{margin:28px auto;display:block}.voter-input{align-items:center;gap:14px;max-width:400px;margin:0 auto 28px;display:flex}.voter-input label{white-space:nowrap;color:var(--text-dim);font-size:.9rem;font-weight:500}.vote-tally{margin:28px auto}.vote-tally h3{font:700 1rem var(--font-display);color:var(--text-bright);margin-bottom:16px}.tally-row{align-items:center;gap:14px;padding:10px 0;display:flex}.tally-title{min-width:120px;font-size:.9rem;font-weight:500}.tally-bar-wrap{background:var(--bg-card);border-radius:14px;flex:1;height:28px;position:relative;overflow:hidden}.tally-bar{background:linear-gradient(90deg, var(--gold-dim) 0%, var(--gold) 50%, var(--gold-bright) 100%);background-size:200% 100%;border-radius:14px;min-width:0;height:100%;transition:width .7s cubic-bezier(.4,0,.2,1);animation:3s linear infinite shimmer;position:relative}.tally-bar:after{content:"";background:#ffffff4d;border-radius:0 14px 14px 0;width:6px;height:100%;position:absolute;top:0;right:0}.tally-count{text-align:right;min-width:28px;font:700 1rem var(--font-mono);color:var(--gold)}.winner-overlay{z-index:100;cursor:pointer;background:#000000f2;place-items:center;animation:.5s fade-in;display:grid;position:fixed;inset:0}.winner-reveal{text-align:center;padding:40px;position:relative}.winner-glow{background:radial-gradient(circle, var(--gold-glow) 0%, #f5c5181a 40%, transparent 70%);pointer-events:none;width:500px;height:500px;animation:3s ease-in-out infinite glow-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes glow-pulse{0%,to{opacity:.5;transform:translate(-50%,-50%)scale(1)}50%{opacity:.9;transform:translate(-50%,-50%)scale(1.3)}}.winner-reveal:before{content:"";pointer-events:none;border:2px solid #f5c51826;border-radius:50%;width:300px;height:300px;animation:3s ease-out infinite spotlight;position:absolute;top:50%;left:50%}.winner-content{z-index:1;position:relative}.winner-verdict{font:900 1.8rem var(--font-display);color:var(--gold);letter-spacing:.2em;text-shadow:0 0 30px var(--gold-glow);margin-bottom:28px;animation:.8s verdict-in}@keyframes verdict-in{0%{opacity:0;letter-spacing:.5em;transform:translateY(-30px)scale(.85)}}.winner-poster-wrap{margin-bottom:24px;animation:1s .3s both poster-in;display:inline-block;position:relative}@keyframes poster-in{0%{opacity:0;transform:scale(.6)rotateY(-20deg)}}.winner-poster{object-fit:cover;border-radius:var(--radius);width:260px;height:390px;box-shadow:0 0 80px var(--gold-glow), 0 20px 80px #0009;border:3px solid var(--gold)}.winner-poster-placeholder{background:var(--bg-card);border-radius:var(--radius);border:3px solid var(--gold);width:260px;height:390px;color:var(--text);place-items:center;font-size:1.2rem;display:grid}.winner-badge{background:linear-gradient(135deg, var(--gold), var(--gold-bright));color:#000;font:800 .85rem var(--font-body);letter-spacing:.1em;box-shadow:0 4px 20px var(--gold-glow);border-radius:24px;padding:8px 28px;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)}.winner-title{font:900 2.4rem var(--font-display);color:var(--text-bright);text-shadow:0 0 40px #ffffff1a;animation:.8s .6s both title-in}@keyframes title-in{0%{opacity:0;transform:translateY(15px)}}.winner-year{color:var(--text-dim);margin-top:6px;font-size:1rem}.winner-votes{color:var(--gold);margin-top:10px;font-size:1.2rem;font-weight:700;animation:.5s 1s both fade-up}.winner-dismiss{color:var(--text-dim);margin-top:36px;font-size:.8rem;animation:1s 2.5s both fade-in}.review-section{margin-top:36px;animation:.5s .2s both fade-up}.review-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.review-header h3{font:700 1.2rem var(--font-display);color:var(--text-bright)}.review-form{flex-direction:column;gap:14px;margin-bottom:18px;padding:24px;display:flex}.review-textarea{resize:vertical;min-height:80px}.review-form-btns{gap:8px;display:flex}.star-picker{gap:4px;display:flex}.star{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:1.8rem;transition:all .2s}.star.filled{color:var(--gold);text-shadow:0 0 10px var(--gold-glow)}.star:hover{transform:scale(1.3)rotate(-5deg)}.review-empty{color:var(--text-dim);padding:12px 0;font-style:italic}.review-card{margin-bottom:12px;padding:18px;animation:.4s both fade-up-sm}.review-card-top{align-items:center;gap:12px;margin-bottom:8px;display:flex}.review-author{color:var(--text-bright);font-weight:600}.review-stars{color:var(--gold);font-size:.9rem}.review-date{color:var(--text-dim);margin-left:auto;font-size:.8rem}.review-text{color:var(--text);font-size:.9rem;line-height:1.6}.history{max-width:800px;margin:0 auto;padding:20px}.history-header{text-align:center;margin-bottom:36px;animation:.6s fade-up}.history-header h1{font:900 2.4rem var(--font-display);color:var(--text-bright)}.history-empty{text-align:center;color:var(--text-dim);flex-direction:column;align-items:center;gap:20px;padding:60px 20px;display:flex}.history-list{flex-direction:column;gap:14px;display:flex}.history-card{cursor:pointer;gap:18px;padding:18px;animation:.5s both slide-left;display:flex}.history-card:first-child{animation-delay:0s}.history-card:nth-child(2){animation-delay:60ms}.history-card:nth-child(3){animation-delay:.12s}.history-card:nth-child(4){animation-delay:.18s}.history-card:nth-child(5){animation-delay:.24s}.history-card:hover{transform:translate(6px)}.history-poster{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:80px;height:120px;box-shadow:0 4px 16px #0000004d}.history-info{flex-direction:column;justify-content:center;gap:4px;display:flex}.history-info h3{font:700 1.1rem var(--font-display);color:var(--text-bright)}.history-date{color:var(--text-dim);font-size:.85rem}.history-winner{color:var(--gold);font-size:.9rem;font-weight:600}.history-rating{color:var(--gold);font-size:.85rem}.history-meta{color:var(--text-dim);font-size:.8rem}.rate-page{max-width:700px;margin:0 auto;padding:20px}.rate-users{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:28px;display:flex}.rate-user-pill{border:1px solid var(--border);background:var(--bg-card);color:var(--text);font:500 .85rem var(--font-body);cursor:pointer;border-radius:24px;padding:8px 20px;transition:all .25s}.rate-user-pill:hover{border-color:var(--gold-dim);background:var(--bg-card-hover)}.rate-user-pill.active{border-color:var(--gold);color:var(--gold);background:#f5c5181a;font-weight:600}.rate-wishlist{animation:.4s fade-up}.rate-movie-card{margin-bottom:12px;padding:16px}.rate-movie-top{align-items:center;gap:14px;display:flex}.rate-movie-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rate-movie-rank{font:600 .65rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}.rate-form{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin-top:14px;padding-top:14px;animation:.3s fade-up-sm;display:flex}.rate-comments{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;display:flex}.rate-comment{flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;display:flex}.rate-comment-author{color:var(--text-bright);font-weight:600}.rate-comment-stars{color:var(--gold);font-size:.8rem}.rate-comment-text{color:var(--text-dim);width:100%;font-style:italic}.rate-comment-delete{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.75rem;transition:all .2s}.rate-comment-delete:hover{color:var(--red);background:#e6243a1a}.rate-feed{animation:.4s fade-up}.rate-feed-item{margin-bottom:10px;padding:14px}.rate-feed-top{align-items:flex-start;gap:14px;display:flex}.rate-feed-poster{object-fit:cover;border-radius:6px;flex-shrink:0;width:46px;height:69px}.rate-feed-body{flex:1;min-width:0}.rate-feed-header{flex-wrap:wrap;align-items:center;gap:6px;font-size:.9rem;display:flex}.rate-feed-author{color:var(--text-bright);font-weight:600}.rate-feed-action{color:var(--text-dim)}.rate-feed-movie{color:var(--text);font-weight:600}.rate-feed-stars{color:var(--gold);margin-left:4px}.rate-feed-text{color:var(--text-dim);margin-top:6px;font-size:.85rem;font-style:italic}.rate-feed-meta{color:var(--text-dim);margin-top:4px;font-size:.75rem;display:block}.lineup-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.lineup-card{text-align:center;padding:18px 14px;transition:all .15s;position:relative;overflow:hidden}.lineup-card.lineup-active{border-color:var(--gold);box-shadow:0 0 30px var(--gold-glow);background:#f5c51814;transform:scale(1.05)}.lineup-card.lineup-winner{border-color:var(--gold);box-shadow:0 0 40px var(--gold-glow), 0 0 80px #f5c5181a;background:#f5c5181a;animation:2s ease-in-out infinite pulse-glow}.lineup-poster{object-fit:cover;border-radius:var(--radius-sm);width:120px;height:180px;margin:0 auto 10px;transition:box-shadow .2s;box-shadow:0 4px 16px #0006}.lineup-card.lineup-active .lineup-poster{box-shadow:0 4px 20px #0006, 0 0 16px var(--gold-glow)}.lineup-poster-placeholder{border-radius:var(--radius-sm);width:120px;height:180px;color:var(--text-dim);background:linear-gradient(135deg,#1a1a2e,#16213e);place-items:center;margin:0 auto 10px;padding:8px;font-size:.7rem;display:grid}.lineup-info{flex-direction:column;gap:2px;display:flex}.lineup-user{font:600 .65rem var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}.lineup-title{font:600 .85rem var(--font-body);color:var(--text-bright);line-height:1.2}.lineup-meta{color:var(--text-dim);font-size:.75rem}.lineup-crown{filter:drop-shadow(0 0 8px var(--gold-glow));font-size:1.6rem;animation:2s ease-in-out infinite crown-bob;position:absolute;top:6px;right:6px}.pick-spinning{font:700 1.2rem var(--font-display);color:var(--gold);letter-spacing:.1em;animation:.6s ease-in-out infinite marquee-blink}.pick-result{animation:.5s fade-up}.pick-winner-text{font:900 1.4rem var(--font-display);color:var(--text-bright);margin-bottom:4px}.pick-winner-sub{color:var(--text-dim);font-size:.9rem}.not-found{text-align:center;place-items:center;gap:16px;min-height:60vh;animation:.5s fade-up;display:grid}@media (width<=600px){.logo{font-size:2.2rem}.marquee-border{padding:16px 24px}.marquee-border:before,.marquee-border:after{content:"✦  ✦  ✦  ✦  ✦"}.night-header h1{font-size:1.8rem}.carousel-card{flex:0 0 240px}.card-flipper{height:360px}.search-row{flex-direction:column}.search-name{max-width:none}.winner-poster{width:200px;height:300px}.winner-title{font-size:1.8rem}.top-pick-card{flex:0 0 140px}.top-pick-poster{width:100px;height:150px}.tally-title{min-width:80px;font-size:.8rem}.night-grid{grid-template-columns:1fr}}
