body{opacity:0;transition:opacity .45s ease,transform .45s ease;animation:fadeInPage .45s ease forwards}body.fade-out{opacity:0;transform:translateY(-24px)}@keyframes fadeInPage{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeInUp .7s ease both}.seat-card{display:flex;flex-direction:column;gap:1.5rem}.seat-grid{display:grid;gap:1rem}.seat-row{display:grid;grid-template-columns:minmax(40px,auto) minmax(0,1fr);gap:1rem;align-items:center}.row-label{color:#cbd5e1;font-weight:700;letter-spacing:.15em;text-transform:uppercase;text-align:right}.row-seats{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:.25rem;justify-content:center}@media (min-width: 640px){.row-seats{gap:.5rem}}.seat-btn{width:64px;height:56px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;border:none;background:transparent;color:#e2e8f0;transition:transform .22s cubic-bezier(.2,.9,.2,1),box-shadow .22s ease;position:relative;overflow:visible;z-index:40}.seat-svg{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;opacity:1;filter:drop-shadow(0 10px 18px rgba(0,0,0,.6))}.seat-btn:before{content:none}.seat-btn .seat-number{position:relative;z-index:45;font-size:.78rem;letter-spacing:.03em}.seat-btn:hover:not(:disabled){transform:translateY(-6px) scale(1.02)}.seat-btn:hover:not(:disabled):after{content:attr(data-price);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);padding:.36rem .88rem;border-radius:9999px;font-size:.72rem;letter-spacing:.02em;white-space:nowrap;background:#111827f5;color:#f8fafc;border:1px solid rgba(255,255,255,.12);box-shadow:0 14px 32px #00000059}.seat-btn:disabled{cursor:not-allowed;opacity:.45}.seat-btn.selected{box-shadow:0 18px 60px #dc143c47,0 6px 22px #0009;transform:translateY(-8px) scale(1.04)}.seat-btn.selected:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px;background:linear-gradient(180deg,#dc143c2e,#dc143c14);pointer-events:none;z-index:44}.cinema-screen{width:min(96%,1240px);height:120px;margin:2rem auto 0;border-radius:220px 220px 60px 60px/140px 140px 40px 40px;background:radial-gradient(1200px 300px at 50% 10%,#fffffff2,#ffffff1f 25%,#ffffff05 45%),linear-gradient(180deg,#ffffff0f,#ffffff05);box-shadow:0 0 160px #ffffff59,inset 0 0 60px #ffffff2e;position:relative;overflow:hidden;z-index:10}.cinema-screen:before{content:"SCREEN";position:absolute;bottom:16px;left:50%;transform:translate(-50%);color:#ffffff80;letter-spacing:.45em;text-transform:uppercase;font-size:.75rem;font-weight:700;z-index:1}.cinema-screen:after{content:"";position:absolute;left:50%;bottom:-16px;width:260%;height:120px;transform:translate(-50%);background:radial-gradient(circle,rgba(255,255,255,.22),transparent 60%);filter:blur(32px)}.booking-bar{position:fixed;left:1rem;right:1rem;bottom:1rem;max-width:1360px;margin:0 auto;padding:1rem 1.5rem;background:linear-gradient(90deg,#fada4c,#ec9d05);border-radius:28px;box-shadow:0 30px 80px #f9731638;transform:translateY(120%);opacity:0;pointer-events:none;transition:transform .4s ease,opacity .4s ease;z-index:70}.booking-bar.active{transform:translateY(0);opacity:1;pointer-events:auto}.toast{position:fixed;left:50%;bottom:110px;transform:translate(-50%) translateY(16px);background:#0f172af2;color:#f8fafc;padding:.9rem 1.2rem;border-radius:9999px;box-shadow:0 30px 80px #00000059;opacity:0;transition:opacity .3s ease,transform .3s ease;z-index:75;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.hidden,.screen-shelf{display:none}.screen-shelf-inner{width:min(96%,1200px);border-radius:9999px;background:#ffffff14;padding:1rem 0;box-shadow:0 0 80px #ffffff1f;border:1px solid rgba(255,255,255,.06)}.screen-shelf-inner .screen-label{display:block;color:#f8fafc;font-size:.95rem;font-weight:700;letter-spacing:.4em;text-transform:uppercase;text-align:center}.bottom-basket{transform:translateY(100%);transition:transform .35s ease}.bottom-basket.active{transform:translateY(0)}.bottom-basket{position:fixed;left:0;bottom:0;width:100%;z-index:60;padding:1rem 1.5rem;background:linear-gradient(90deg,#f6c21d,#f59e0b);box-shadow:0 -20px 60px #f9731638}.bottom-basket-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.bottom-basket .basket-info{display:flex;align-items:center;gap:1.5rem;color:#111827;font-weight:700}.bottom-basket .basket-info span{display:inline-flex;align-items:baseline;gap:.35rem}.bottom-basket button{min-width:180px}.payment-method-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem 1.1rem;border-radius:1rem;border:1px solid rgba(148,163,184,.16);background:#fff;color:#111827;font-weight:700;transition:all .2s ease}.payment-method-btn.selected,.payment-method-btn:hover{border-color:#b91c1c;color:#b91c1c;box-shadow:0 18px 40px #b91c1c24}.pay-button{background:#9ca3af;transition:background-color .3s ease,transform .15s ease,box-shadow .2s ease}.pay-button.active{background:#b91c1c;box-shadow:0 18px 40px #b91c1c2e;transform:translateY(-1px)}.card-brand-logo{opacity:.35;filter:grayscale(80%);transition:opacity .18s ease,transform .18s ease,filter .18s ease}.card-brand-logo.active-card{opacity:1;filter:none;transform:scale(1.05)}.signin-box{max-width:480px!important;width:90%;margin:0 auto!important;height:auto;padding:40px}.signin-container{height:auto;padding-bottom:50px}.signin-container .brand-header{font-size:32px;margin-bottom:20px}#signinForm label,#signinForm .input-group,#signinForm .remember-forgot,#signinForm .remember-row,#signinForm>div{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%;box-sizing:border-box}#signinForm input,.signin-box input,.signin-box .password-input,.signin-box .signin-submit-btn{width:100%!important;box-sizing:border-box}.signin-container .password-wrapper{position:relative;display:block;width:100%;max-width:100%;margin:0}#togglePassword{position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:10;cursor:pointer;color:#a0aec0}.fade-out,.fade-out-page{opacity:0;transform:translateY(-24px);transition:opacity .45s ease,transform .45s ease}html{scroll-behavior:smooth}@media (max-width: 768px){.seat-row{grid-template-columns:1fr}.row-label{text-align:left}.seat-btn{width:36px;height:36px}}.signup-box{display:flex;flex-direction:column;padding:32px 24px 40px;min-height:100%;overflow-y:visible}.signup-box form,.signin-box form{gap:.5rem!important}.signin-box input,.signin-box textarea,.signin-box select{width:100%!important;max-width:100%!important;margin:0!important;box-sizing:border-box}.signup-box{max-width:460px;width:100%;margin:0 auto}.signup-box a{display:inline-block}.password-input{padding-right:2.5rem!important}.password-toggle-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#9ca3af;cursor:pointer;transition:color .2s ease}.password-toggle-icon:hover{color:#f87171}.brand-header{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:2.25rem;font-weight:800;background:linear-gradient(90deg,#ef4444,#ec4899);color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 auto 1rem;text-align:center}#signinForm input[type=email],#signinForm input[type=password]{width:100%!important;max-width:100%!important;padding:10px 15px!important;margin:0!important;display:block!important;border-width:1px!important;border-color:#94a3b859!important;text-align:left!important}.signup-footer-link{margin-top:20px!important;display:block;text-align:center;color:#60a5fa}.signup-footer-link:hover{color:#3b82f6}.logo{width:60px!important;margin-bottom:5px!important}.form-logo img,.signup-logo img,.logo img{width:80px!important;height:auto!important;margin:0 auto!important;display:block!important}.heroSwiper{width:100%;height:100%;position:relative}.swiper-slide{display:flex;justify-content:center;align-items:center;transition:opacity .5s ease}.swiper-slide img{-o-object-fit:cover;object-fit:cover}.swiper-pagination{bottom:10px!important;z-index:50!important}.swiper-pagination-bullet{width:10px!important;height:10px!important;background:#888!important;opacity:1!important;border-radius:50%!important;margin:0 5px!important;transition:all .4s ease!important}.swiper-pagination-bullet-active{background:#ef4444!important;width:30px!important;border-radius:5px!important}
