@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Roboto:wght@300;400;500;700&family=Yusei+Magic&display=swap");*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%}body,html{overflow:hidden}body{font-family:Roboto,sans-serif;line-height:1.6;color:#fff;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background-image:url(/background/bg.jpeg);background-size:100% 100%;background-position:50%;background-repeat:no-repeat;background-attachment:fixed;position:relative}body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(76,29,149,.4),rgba(109,40,217,.3),rgba(147,51,234,.2),rgba(192,132,252,.3));z-index:-1;animation:gradientShift 15s ease infinite}*{-webkit-tap-highlight-color:transparent}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:600;line-height:1.2;margin-bottom:1rem;text-align:center}h1.font-redaction{font-family:Chetkiy,serif;font-size:6.5rem;font-weight:700;text-align:center;margin-bottom:2rem;color:#fff;text-shadow:0 0 10px hsla(0,0%,100%,.8),0 0 20px rgba(147,51,234,.6),0 0 30px rgba(192,132,252,.4),0 0 40px rgba(233,213,255,.3),0 0 70px rgba(147,51,234,.2);animation:titleGlow 2s ease-in-out infinite alternate;position:relative}h1.font-redaction:before{content:"";position:absolute;top:-20px;left:-20px;right:-20px;bottom:-20px;background:radial-gradient(circle at center,rgba(192,132,252,.2) 0,transparent 70%);filter:blur(20px);z-index:-1;animation:auraFloat 6s ease-in-out infinite}@keyframes titleGlow{0%{text-shadow:0 0 10px hsla(0,0%,100%,.8),0 0 20px rgba(147,51,234,.6),0 0 30px rgba(192,132,252,.4),0 0 40px rgba(233,213,255,.3),0 0 70px rgba(147,51,234,.2)}to{text-shadow:0 0 15px hsla(0,0%,100%,.9),0 0 25px rgba(147,51,234,.7),0 0 35px rgba(192,132,252,.5),0 0 45px rgba(233,213,255,.4),0 0 75px rgba(147,51,234,.3)}}@keyframes auraFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.container{max-width:1200px;margin:0 auto;padding:0 1rem;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.subtitle{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:600;text-align:center;margin-bottom:2rem;color:#fff;opacity:.9;letter-spacing:1px;text-shadow:0 0 10px hsla(0,0%,100%,.4),0 0 20px rgba(147,51,234,.3)}.subtitle:after,.subtitle:before{color:#c084fc;text-shadow:0 0 15px rgba(192,132,252,.6)}.button{display:flex;line-height:1.5rem;align-items:center;justify-content:center;padding:1rem 2rem;width:280px;margin:0 auto;border-radius:2rem;background:linear-gradient(135deg,#4c1d95,#6d28d9 50%,#7c3aed);color:#fff;text-decoration:none;transition:all .4s ease;font-weight:600;font-size:1.1rem;text-transform:uppercase;letter-spacing:2px;box-shadow:0 4px 12px rgba(109,40,217,.5),0 0 20px rgba(147,51,234,.3),inset 0 0 10px hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.1);position:relative;overflow:hidden;cursor:pointer;z-index:10}.button:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,hsla(0,0%,100%,.2) 0,transparent 60%);transform:scale(0);transition:transform .6s ease-out}.button:after{content:"";position:absolute;top:-100%;left:-100%;width:300%;height:300%;background:linear-gradient(45deg,transparent,hsla(0,0%,100%,.1) 45%,hsla(0,0%,100%,.4) 50%,hsla(0,0%,100%,.1) 55%,transparent);transform:rotate(45deg);transition:all .5s ease-out}.button:hover{background:linear-gradient(135deg,#6d28d9,#7c3aed 50%,#8b5cf6);transform:translateY(-3px);box-shadow:0 6px 20px rgba(109,40,217,.7),0 0 30px rgba(147,51,234,.4),inset 0 0 15px hsla(0,0%,100%,.3)}.button:hover:before{transform:scale(1) rotate(45deg)}.button:hover:after{top:-30%;left:-30%;animation:glitter 1.5s linear infinite}@keyframes glitter{0%{transform:translate(-100%,-100%) rotate(45deg)}to{transform:translate(100%,100%) rotate(45deg)}}a,button{color:inherit}a,a:hover,button,button:hover{text-decoration:none}.card{background:hsla(0,0%,100%,.05);border-radius:1rem;padding:1.5rem;box-shadow:0 4px 6px rgba(0,0,0,.1);margin:1rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1)}.grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}input,select,textarea{font-family:Roboto,sans-serif;padding:.75rem;border-radius:.5rem;border:1px solid hsla(0,0%,100%,.1);background:hsla(0,0%,100%,.05);color:#fff;width:100%;margin-bottom:1rem}input:focus,select:focus,textarea:focus{outline:none;border-color:#6d28d9;box-shadow:0 0 0 2px rgba(109,40,217,.2)}.stars{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(circle at center,transparent 0,rgba(0,0,0,.8) 100%),url("data:image/svg+xml,%3Csvg viewBox='0 0 2000 2000' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeBlend mode='screen'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.3;animation:twinkle 8s linear infinite}@keyframes twinkle{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.sparkles{background-image:url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='10' cy='10' r='2' fill='%23fff' fill-opacity='0.2'/%3E%3C/svg%3E");animation:sparkle 4s linear infinite}@keyframes sparkle{0%{background-position:0 0}to{background-position:100px 100px}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#4c1d95;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#6d28d9}.movie-card{position:relative;border-radius:1rem;transition:transform .3s ease}.movie-card img{width:100%;height:auto;border-radius:1rem}.movie-info{position:absolute;bottom:0;left:0;right:0;padding:1rem;background:linear-gradient(transparent,rgba(0,0,0,.8))}.lobby-container{max-width:800px;background:hsla(0,0%,100%,.05)}.member-list{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0}.member-item{background:hsla(0,0%,100%,.1);padding:.5rem 1rem;border-radius:2rem;font-size:.9rem}.vote-button{background:rgba(109,40,217,.2);border:2px solid #6d28d9;padding:.5rem 1rem;border-radius:2rem}.vote-button:hover{background:#6d28d9;transform:scale(1.05)}.loading{display:inline-block;width:50px;height:50px;border-radius:50%;border:3px solid rgba(109,40,217,.3);border-top-color:#6d28d9;animation:spin 1s ease-in-out infinite}.logo-container{position:absolute;top:18px;left:29px;z-index:50;transition:opacity .3s ease}.logo-container:hover{opacity:.8}.logo{height:75px;width:auto;filter:invert(1)}.nav-container{position:fixed;top:6rem;left:50%;transform:translateX(-50%);width:min(90%,650px);padding:1rem 2rem;background:hsla(0,0%,100%,.1);border-radius:2.5rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;gap:2rem;box-shadow:0 4px 30px rgba(0,0,0,.1);z-index:40;transition:all .3s ease;margin:0}.nav-link{color:#fff;text-decoration:none;font-size:1.1rem;font-weight:500;padding:.5rem 1rem;border-radius:1.5rem;transition:all .3s ease;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:#0ff;transition:all .3s ease;transform:translateX(-50%)}.nav-link.active:after,.nav-link:hover:after{width:80%}.selection-container{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3rem;padding:0 1rem;position:relative;z-index:30;margin:0;overflow:hidden;width:100%;max-width:none}.selection-title{font-family:Yusei Magic,sans-serif;font-weight:400;font-style:normal;font-size:2.5rem;color:#fff;text-align:center;margin:0}.mode-buttons{display:flex;flex-direction:column;gap:2rem;align-items:center;justify-content:center;width:100%;max-width:800px;padding:0 1rem;margin:0}@media (min-width:768px){.mode-buttons{flex-direction:row}}.mode-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 3rem;background:linear-gradient(135deg,#4c1d95,#6d28d9 50%,#7c3aed);border:1px solid hsla(0,0%,100%,.1);border-radius:1.5rem;color:#fff;cursor:pointer;transition:all .4s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);min-width:250px;position:relative;overflow:hidden;text-decoration:none;box-shadow:0 4px 12px rgba(109,40,217,.5),0 0 20px rgba(147,51,234,.3),inset 0 0 10px hsla(0,0%,100%,.2)}.mode-button:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,hsla(0,0%,100%,.2) 0,transparent 60%);transform:scale(0);transition:transform .6s ease-out}.mode-button:after{content:"";position:absolute;top:-100%;left:-100%;width:300%;height:300%;background:linear-gradient(45deg,transparent,hsla(0,0%,100%,.1) 45%,hsla(0,0%,100%,.4) 50%,hsla(0,0%,100%,.1) 55%,transparent);transform:rotate(45deg);transition:all .5s ease-out}.mode-button:hover{background:linear-gradient(135deg,#6d28d9,#7c3aed 50%,#8b5cf6);transform:translateY(-3px);box-shadow:0 6px 20px rgba(109,40,217,.7),0 0 30px rgba(147,51,234,.4),inset 0 0 15px hsla(0,0%,100%,.3)}.mode-button:hover:before{transform:scale(1) rotate(45deg)}.mode-button:hover:after{top:-30%;left:-30%;animation:glitter 1.5s linear infinite}.mode-button span:first-child{font-size:1.5rem;font-weight:600;text-shadow:0 0 10px hsla(0,0%,100%,.5)}.mode-button span:last-child{font-size:1rem;opacity:.9}.mode-button span,.mode-buttons a{text-decoration:none}.mode-buttons a{color:inherit}.mode-buttons a:hover{text-decoration:none}.selection-page h1.font-redaction{font-size:3rem;margin:0;z-index:50;position:fixed;top:1rem;left:0;right:0;text-align:center;width:100%;padding:0 1rem}.solo-form-container{width:100%;min-width:800px;max-width:1200px;margin:0 auto;padding:2rem;background:rgba(17,24,39,.8);border-radius:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border:1px solid hsla(0,0%,100%,.1);box-shadow:0 0 20px rgba(147,51,234,.2),0 0 40px rgba(192,132,252,.1);max-height:80vh;overflow-y:auto;position:relative;z-index:30}.solo-form{gap:1.5rem}.form-group,.solo-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#fff;font-size:1.1rem;font-weight:500;text-shadow:0 0 10px hsla(0,0%,100%,.3)}.form-group input,.form-group select,.form-group textarea{padding:.8rem 1rem;background:rgba(17,24,39,.8);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;color:#fff;font-size:1rem;transition:all .3s ease}.form-group select{background-color:rgba(17,24,39,.8);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.5em 1.5em}.form-group select option{background-color:rgba(17,24,39,.8);color:#fff;padding:.5rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:rgba(147,51,234,.5);box-shadow:0 0 15px rgba(147,51,234,.2)}.form-group textarea{min-height:100px;resize:vertical}.form-group.checkbox{flex-direction:row;align-items:center;gap:.5rem;margin-top:.5rem}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.form-group.checkbox input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:#6d28d9;margin:0}.submit-button{margin-top:1rem;padding:1rem 2rem;background:linear-gradient(135deg,#4c1d95,#6d28d9 50%,#7c3aed);border:none;border-radius:1rem;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(109,40,217,.5),0 0 20px rgba(147,51,234,.3)}.submit-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(109,40,217,.7),0 0 30px rgba(147,51,234,.4)}.back-button{position:fixed;top:2rem;left:2rem;z-index:50;color:#fff;font-size:1.2rem;font-weight:500;padding:.5rem 1rem;border-radius:1rem;background:rgba(109,40,217,.2);border:1px solid rgba(147,51,234,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease;text-shadow:0 0 10px hsla(0,0%,100%,.3);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.back-button:hover{background:rgba(147,51,234,.3);border-color:rgba(192,132,252,.8);box-shadow:0 0 20px rgba(147,51,234,.4),0 0 40px rgba(192,132,252,.2);transform:translateX(-3px)}.back-button span{display:inline-block;position:relative}.back-button span:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:.5rem;z-index:-1;opacity:0;transition:opacity .3s ease}.back-button:hover span:before{opacity:.5;animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{opacity:.5;box-shadow:0 0 10px rgba(147,51,234,.5)}to{opacity:.8;box-shadow:0 0 20px rgba(147,51,234,.8)}}.content-type-options,.language-options{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.8rem;padding:.5rem;background:rgba(17,24,39,.8);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;margin-bottom:.5rem}.language-option{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:.5rem;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.language-option:hover{background:rgba(147,51,234,.1)}.language-option input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:#6d28d9;margin:0}.language-option span{color:#fff;font-size:.95rem}.content-type-option{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:.5rem;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.content-type-option:hover{background:rgba(147,51,234,.1)}.content-type-option input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:#6d28d9;margin:0}.content-type-option span{color:#fff;font-size:.95rem}.recommendations-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;align-items:center}.recommendations-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;width:100%;margin-bottom:2rem;justify-content:center}.recommendation-card{background:rgba(30,20,60,.8);border-radius:12px;box-shadow:0 10px 20px rgba(0,0,0,.3);transition:transform .3s ease,box-shadow .3s ease;height:100%;display:flex;flex-direction:column;cursor:pointer;max-width:100%;min-height:400px;max-height:450px}.recommendation-card:hover{box-shadow:0 15px 30px rgba(0,0,0,.4)}.recommendation-image{height:200px;overflow:hidden;position:relative;flex-shrink:0}.recommendation-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.recommendation-card:hover .recommendation-image img{transform:scale(1.05)}.recommendation-content{padding:1.25rem;flex-grow:1;display:flex;flex-direction:column;overflow:hidden}.recommendation-content h3{font-family:Playfair Display,serif;font-size:1.2rem;margin-bottom:.5rem;color:#fff;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.recommendation-meta{display:flex;align-items:center;margin-bottom:.75rem;font-size:.9rem;color:hsla(0,0%,100%,.8)}.recommendation-meta span{margin-right:.5rem}.recommendation-genres{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.genre-tag{background:rgba(147,51,234,.3);border:1px solid rgba(147,51,234,.5);border-radius:20px;padding:.25rem .75rem;font-size:.8rem;color:hsla(0,0%,100%,.9);white-space:nowrap}.carousel-content .recommendation-description{font-size:.95rem;line-height:1.5;color:hsla(0,0%,100%,.9);display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;margin-top:.5rem;margin-bottom:1rem;max-height:6rem}.recommendation-links{display:flex;gap:.75rem;margin-top:auto}.movie-link{display:inline-block;padding:.4rem .8rem;border-radius:20px;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s ease;text-align:center}.movie-link.imdb{background-color:rgba(245,197,24,.2);color:#f5c518;border:1px solid rgba(245,197,24,.4)}.movie-link.imdb:hover{background-color:rgba(245,197,24,.3);box-shadow:0 0 10px rgba(245,197,24,.3)}.movie-link.tmdb{background-color:rgba(1,180,228,.2);color:#01b4e4;border:1px solid rgba(1,180,228,.4)}.movie-link.tmdb:hover{background-color:rgba(1,180,228,.3);box-shadow:0 0 10px rgba(1,180,228,.3)}.carousel-content .recommendation-content h3{font-family:Playfair Display,serif;font-size:1.3rem;margin-bottom:.75rem;color:#fff;line-height:1.4;overflow:visible;text-overflow:clip;white-space:normal;display:block;-webkit-line-clamp:none;line-clamp:none;-webkit-box-orient:initial}.carousel-content .recommendation-links{display:flex;gap:.75rem;margin-top:auto;padding-top:1rem}.carousel-container{width:100%;display:flex;flex-direction:column;align-items:center;margin-bottom:2rem;padding:1rem 0}.carousel-indicators{display:flex;justify-content:center;margin-bottom:1.5rem;gap:.5rem}.carousel-indicator{width:2rem;height:2rem;border-radius:50%;background:rgba(30,20,60,.6);border:1px solid hsla(0,0%,100%,.2);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.carousel-indicator.active{background:rgba(147,51,234,.8);box-shadow:0 0 15px rgba(147,51,234,.5);transform:scale(1.1)}.carousel-wrapper{gap:1.5rem}.carousel-content{max-width:800px;align-items:center;justify-content:center;position:relative;perspective:1000px}.carousel-content,.carousel-content .recommendation-card{width:100%;height:auto;min-height:650px;display:flex;overflow:visible}.carousel-content .recommendation-card{margin:0 auto;max-width:600px;flex-direction:column;position:absolute;top:0;left:0;right:0;transform-origin:center center;box-shadow:0 10px 30px rgba(0,0,0,.3);cursor:pointer;backface-visibility:hidden}.carousel-content .recommendation-card.active{z-index:3;cursor:pointer;box-shadow:0 15px 40px rgba(0,0,0,.5)}.carousel-content .recommendation-card.next,.carousel-content .recommendation-card.prev{z-index:2;pointer-events:auto;cursor:pointer;filter:brightness(.8)}.carousel-content .recommendation-card.prev{transform-origin:left center}.carousel-content .recommendation-card.next{transform-origin:right center}.carousel-wrapper{width:100%;gap:0;position:relative;padding:0 1rem;overflow:visible}.carousel-button,.carousel-wrapper{display:flex;align-items:center;justify-content:center}.carousel-button{width:3rem;height:3rem;border-radius:50%;background:rgba(147,51,234,.3);border:1px solid hsla(0,0%,100%,.2);color:#fff;font-size:1.2rem;cursor:pointer;transition:all .3s ease;box-shadow:0 0 15px rgba(147,51,234,.3);z-index:10;position:absolute}.carousel-button.prev-button{left:0}.carousel-button.next-button{right:0}.recommendation-card.placeholder-card{background:linear-gradient(135deg,rgba(147,51,234,.1),rgba(79,70,229,.1));border:2px dashed rgba(147,51,234,.3);box-shadow:0 5px 20px rgba(147,51,234,.1)}.placeholder-poster{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(147,51,234,.05),rgba(79,70,229,.05));color:hsla(0,0%,100%,.7);text-align:center;padding:2rem}.placeholder-poster i{font-size:3rem;margin-bottom:1rem;color:rgba(147,51,234,.6)}.placeholder-poster p{font-size:1.2rem;font-weight:500;opacity:.8}.recommendation-card.placeholder-card .recommendation-content h3{background:linear-gradient(90deg,rgba(147,51,234,.2),rgba(79,70,229,.2));border-radius:4px;height:1.5rem;margin-bottom:1rem;animation:pulse 1.5s infinite}.recommendation-card.placeholder-card .recommendation-description,.recommendation-card.placeholder-card .recommendation-genres,.recommendation-card.placeholder-card .recommendation-meta{background:linear-gradient(90deg,rgba(147,51,234,.1),rgba(79,70,229,.1));border-radius:4px;height:1rem;margin-bottom:.75rem;animation:pulse 1.5s infinite;animation-delay:.2s}.recommendation-card.placeholder-card .recommendation-description{height:5rem;animation-delay:.4s}@keyframes pulse{0%{opacity:.6}50%{opacity:.8}to{opacity:.6}}@media (max-width:768px){.recommendations-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.recommendation-card{min-height:380px}.recommendation-image{height:180px}.carousel-content{min-height:700px;max-width:600px;perspective:800px}.carousel-content .recommendation-card{min-height:700px}.carousel-wrapper{padding:0 2.5rem}.carousel-button{width:2.75rem;height:2.75rem}}@media (max-width:480px){.form-container{padding:1rem}.carousel-content{perspective:600px}.carousel-content,.carousel-content .recommendation-card{min-height:750px;max-width:100%}.carousel-button{width:2.5rem;height:2.5rem;top:50%;transform:translateY(-50%)}.carousel-button.prev-button{left:-.5rem}.carousel-button.next-button{right:-.5rem}.carousel-button:hover{transform:translateY(-50%) scale(1.1)}.carousel-button:active{transform:translateY(-50%) scale(.95)}.carousel-indicator{width:1.75rem;height:1.75rem;font-size:.9rem}.carousel-content .recommendation-content h3{font-size:1.2rem}.carousel-content .recommendation-card.next,.carousel-content .recommendation-card.prev{opacity:.4!important;filter:brightness(.6)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:2rem;background:rgba(17,24,39,.8);border-radius:1rem;padding:2rem;border:1px solid hsla(0,0%,100%,.1);box-shadow:0 0 20px rgba(147,51,234,.2),0 0 40px rgba(192,132,252,.1)}.wizard-icon{font-size:5rem;color:#fff;text-shadow:0 0 10px hsla(0,0%,100%,.8),0 0 20px rgba(147,51,234,.6),0 0 30px rgba(192,132,252,.4);animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.loading-text{font-family:Yusei Magic,sans-serif;font-size:1.8rem;color:#fff;text-align:center;text-shadow:0 0 10px hsla(0,0%,100%,.8),0 0 20px rgba(147,51,234,.6);max-width:600px;margin:0 auto;padding:1rem;background:rgba(147,51,234,.1);border-radius:1rem;border:1px solid rgba(147,51,234,.2)}@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css");@import url("https://fonts.googleapis.com/css2?family=Yusei+Magic&display=swap");.warning-message{gap:1rem;background:rgba(234,179,8,.1);color:#fbbf24;font-size:.9rem}.warning-message i{font-size:1.2rem}.warning-message p{margin:0;font-family:Yusei Magic,sans-serif}.loading-spinner{display:flex;align-items:center;justify-content:center}.loading-spinner i{font-size:1.2rem;color:#fff}.recommendations-section{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.recommendations-section h2{font-family:Playfair Display,serif;font-size:2.5rem;margin-bottom:2rem;text-align:center;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.recommendations-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:2rem}.movie-card{background:rgba(30,20,60,.8);border-radius:12px;overflow:hidden;box-shadow:0 10px 20px rgba(0,0,0,.3);transition:transform .3s ease,box-shadow .3s ease;height:100%;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1)}.movie-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.4)}.movie-poster{height:300px;overflow:hidden;position:relative}.movie-poster img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s ease}.movie-card:hover .movie-poster img{transform:scale(1.05)}.no-poster{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#2c1f4a,#1a1333);color:hsla(0,0%,100%,.7)}.no-poster i{font-size:3rem;margin-bottom:1rem}.movie-info{flex-grow:1;display:flex;flex-direction:column}.movie-info h3{font-family:Playfair Display,serif;line-height:1.3}.movie-meta{display:flex;align-items:center;margin-bottom:.75rem;font-size:.9rem;color:hsla(0,0%,100%,.8)}.movie-meta .year{margin-right:1rem}.movie-meta .rating{display:flex;align-items:center}.movie-meta .rating i{color:gold;margin-right:.25rem}.genres{font-size:.9rem;color:hsla(0,0%,100%,.7);margin-bottom:1rem}.movie-overview{margin-bottom:1rem;font-size:.95rem;line-height:1.5;color:hsla(0,0%,100%,.9);flex-grow:1}.movie-overview p{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ai-explanation{margin-top:1rem;padding-top:1rem;border-top:1px solid hsla(0,0%,100%,.1);font-size:.9rem}.ai-explanation p{color:hsla(0,0%,100%,.85);margin-bottom:.5rem}.movie-cast,.movie-director{font-size:.85rem;margin-top:.75rem;color:hsla(0,0%,100%,.8)}.movie-cast p,.movie-director p{margin:0}.error-message{background:rgba(239,68,68,.2);color:#fecaca;border:1px solid rgba(239,68,68,.3)}.submit-button:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.recommendation-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem;width:100%;max-width:var(--card-width);margin-left:auto;margin-right:auto}.recommendation-actions .submit-button{flex:1;min-width:180px;max-width:calc(var(--card-width) / 2 - .5rem)}.group-options{display:flex;gap:2rem;justify-content:center;align-items:flex-start;margin-top:2rem}.option-card{background:rgba(17,24,39,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;padding:2rem;width:100%;max-width:400px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.option-card h3{color:#fff;font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.option-card input{width:100%;padding:.75rem 1rem;margin-bottom:1rem;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:.5rem;color:#fff;font-size:1rem}.option-card input::-moz-placeholder{color:hsla(0,0%,100%,.5)}.option-card input::placeholder{color:hsla(0,0%,100%,.5)}.lobby-container{background:rgba(17,24,39,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;padding:2rem;width:100%;max-width:600px;margin:2rem auto;box-shadow:0 4px 6px rgba(0,0,0,.1)}.group-info{margin-bottom:2rem}.group-info h3{color:#fff;font-size:1.5rem;margin-bottom:1rem;text-align:center}.members-list{background:hsla(0,0%,100%,.05);border-radius:.5rem;padding:1rem}.members-list h4{color:#fff;font-size:1.1rem;margin-bottom:.75rem}.members-list ul{list-style:none;padding:0;margin:0}.members-list li{color:hsla(0,0%,100%,.8);padding:.5rem 0;border-bottom:1px solid hsla(0,0%,100%,.1)}.members-list li:last-child{border-bottom:none}.lobby-actions{display:flex;gap:1rem;justify-content:center}.start-button{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;padding:.75rem 2rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.start-button:disabled{background:rgba(79,70,229,.5);cursor:not-allowed}.leave-button{background:hsla(0,0%,100%,.1);color:#fff;padding:.75rem 2rem;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.leave-button:hover{background:hsla(0,0%,100%,.2)}.error-message{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#ef4444;border-radius:.5rem;margin-top:1rem}.error-message,.voting-info{padding:1rem;text-align:center}.voting-info{background:rgba(17,24,39,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;margin:1rem 0;color:#fff}.voting-info p{margin:.5rem 0;font-size:1.1rem}.voted-message{color:#4ade80;font-weight:600}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;padding:2rem;max-width:1400px;margin:0 auto}.recommendation-card{background:rgba(17,24,39,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;overflow:hidden;transition:transform .3s ease}.recommendation-card:hover{transform:translateY(-5px)}.movie-poster{width:100%;height:450px;-o-object-fit:cover;object-fit:cover;border-bottom:1px solid hsla(0,0%,100%,.1)}.movie-info{padding:1.5rem;color:#fff}.movie-info h3{font-size:1.5rem;margin-bottom:.5rem;color:#fff}.release-date{color:hsla(0,0%,100%,.7);font-size:.9rem;margin-bottom:1rem}.overview{color:hsla(0,0%,100%,.9);margin-bottom:1rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.vote-count{display:flex;justify-content:space-between;margin-bottom:1rem;color:hsla(0,0%,100%,.7);font-size:.9rem}.vote-button{width:100%;padding:.75rem;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.vote-button:hover{background:linear-gradient(135deg,#4338ca,#6d28d9);box-shadow:0 0 20px rgba(147,51,234,.4)}.vote-button:disabled{background:rgba(79,70,229,.5);cursor:not-allowed;transform:none!important}.session-info{background:rgba(17,24,39,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.1);border-radius:1rem;padding:1rem;margin:1rem 0;text-align:center;color:#fff}.session-info p{margin:.5rem 0;font-size:1.1rem}.content-type-options,.language-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-top:.5rem}.content-type-option,.language-option{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:hsla(0,0%,100%,.05);border-radius:.5rem;cursor:pointer;transition:all .3s ease}.content-type-option:hover,.language-option:hover{background:hsla(0,0%,100%,.1)}.content-type-option input,.language-option input{width:1.2rem;height:1.2rem;cursor:pointer}.content-type-option span,.language-option span{color:#fff;font-size:.9rem}.warning-message{background:rgba(234,179,8,.2);color:#fef3c7;padding:1rem;border-radius:.5rem;margin:1rem 0;display:flex;align-items:center;gap:.5rem;border:1px solid rgba(234,179,8,.3)}.warning-message i{color:#fbbf24}.loading-spinner{display:inline-block;width:1.5rem;height:1.5rem;border-radius:50%;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}