:root{--bg-primary:#f8f9fa;--bg-secondary:#fff;--bg-card:#fff;--text-primary:#1e293b;--text-secondary:#64748b;--accent:#8b5cf6;--accent-hover:#7c3aed;--border:#e2e8f0;--shadow:0 4px 6px -1px #0000001a;--input-bg:#fff}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-card:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--accent:#a78bfa;--accent-hover:#8b5cf6;--border:#334155;--shadow:0 4px 20px #0006;--input-bg:#0f172a}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;background-color:var(--bg-primary);color:#1e293b;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;transition:background-color .3s,color .3s}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.navbar{background:var(--bg-primary);border-bottom:1px solid var(--border);padding:16px 24px}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:auto;max-width:1200px}.theme-toggle{align-items:center;background:#0000;border:1px solid #fff3;border-radius:50%;cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;padding:8px;transition:all .3s;width:40px}.theme-toggle:hover{background:#ffffff1a;transform:rotate(15deg)}.logo{color:var(--text-primary);font-size:26px;font-weight:700;text-decoration:none}.nav-links{align-items:center;display:flex;gap:20px}.nav-links a{color:var(--text-primary);font-size:16px;text-decoration:none}.btn-primary{background:#2563eb;border-radius:6px;color:#fff!important;padding:8px 14px}.user-menu{position:relative}.user-trigger{cursor:pointer;gap:10px}.avatar,.user-trigger{align-items:center;display:flex}.avatar{background:#2563eb;border-radius:50%;color:#fff;font-weight:700;height:36px;justify-content:center;width:36px}.username{color:var(--text-primary);font-size:15px}.dropdown{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);min-width:140px;overflow:hidden;position:absolute;right:0;top:48px}.dropdown-link{color:var(--text-primary)!important;display:block;font-size:14px;padding:10px 16px;text-decoration:none;transition:background .2s}.dropdown-link:hover{background:var(--bg-primary)}.dropdown button{background:none;border:none;cursor:pointer;padding:10px 16px;width:100%}.dropdown button:hover{background:#f1f5f9}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:1000}.cinema-home{background:radial-gradient(circle at top,var(--bg-secondary),var(--bg-primary) 60%);color:var(--text-primary)}.cinema-hero{align-items:center;display:flex;gap:80px;justify-content:space-between;min-height:90vh;padding:120px 6%;position:relative;z-index:1}.hero-left{max-width:520px}.hero-badge{background:#8b5cf626;border-radius:999px;color:var(--accent);display:inline-block;font-size:12px;margin-bottom:20px;padding:8px 14px}.hero-left h1{font-size:54px;font-weight:800;line-height:1.05;margin-bottom:20px}.hero-left h1 span{color:#8b5cf6}.hero-left p{color:var(--text-secondary);font-size:18px;margin-bottom:36px}.hero-left button{background:#8b5cf6;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:16px;padding:16px 34px}.hero-left button:hover{background:#7c3aed}.hero-right{display:flex;gap:14px}.hero-right img{border-radius:18px;height:auto;max-width:230px;min-height:400px;object-fit:cover;opacity:.9;width:100%}.hero-right img:nth-child(2),.hero-right img:nth-child(4){margin-top:40px}.cinema-categories{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);padding:60px 6%}.cinema-categories div{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;box-shadow:0 4px 10px #0000000d;color:var(--text-primary);cursor:pointer;font-size:18px;padding:26px;text-align:center;transition:all .3s}.cinema-categories div:hover{background:var(--bg-primary);border-color:var(--accent)}.cinema-categories div.active{background:#8b5cf6;box-shadow:0 4px 20px #8b5cf666;color:#fff;transform:scale(1.05)}.cinema-events{padding:80px 6%}.events-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:36px}.events-header h2{font-size:32px}.events-header span{color:#8b5cf6;cursor:pointer}.events-grid{grid-gap:26px;gap:26px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.cinema-card{background:var(--bg-card);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);cursor:pointer;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.cinema-card:hover{transform:translateY(-6px)}.cinema-card img{display:block;height:180px;object-fit:cover;width:100%}.card-info{padding:16px}.card-info h3{color:var(--text-primary);font-size:18px;margin-bottom:6px}.card-info p{color:var(--text-secondary);font-size:14px;margin-bottom:6px}.card-info span{color:#8b5cf6;font-size:13px}@media (max-width:1024px){.cinema-hero{flex-direction:column;gap:50px;padding:80px 6%;text-align:center}.hero-left{margin:0 auto;max-width:80%}.hero-right{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);justify-items:center;margin:0 auto;max-width:600px;width:100%}.hero-right img{height:300px;margin-top:0!important;min-height:auto;width:100%}}@media (max-width:480px){.hero-left h1{font-size:32px}.hero-right img{height:200px}}@media (max-width:768px){.cinema-categories{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.cinema-categories{gap:12px;grid-template-columns:1fr;padding:40px 4%}.cinema-categories div{font-size:16px;padding:20px}}.footer{background:#0b0f1a;border-top:1px solid #ffffff14;color:#cbd5f5;padding:70px 6% 30px}.footer-container{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1.5fr 1fr 1fr}.footer h2{color:#fff;margin-bottom:10px}.footer h4{color:#fff;margin-bottom:14px}.footer p{font-size:14px;line-height:1.6}.license{font-size:13px;margin-top:10px;opacity:.85}.socials{margin-top:20px}.socials span{display:block;font-size:14px;margin-bottom:8px}.icons{display:flex;gap:12px}.icons a{align-items:center;background:#ffffff14;border-radius:50%;color:#fff;display:flex;height:36px;justify-content:center;text-decoration:none;transition:background .3s;width:36px}.icons a:hover{background:#8b5cf6}.footer-links ul{list-style:none;padding:0}.footer-links li{cursor:pointer;font-size:14px;margin-bottom:10px}.footer-links li:hover{color:#8b5cf6}.footer-contact p{font-size:14px;margin-bottom:10px}.footer-bottom{border-top:1px solid #ffffff14;color:#94a3b8;font-size:13px;margin-top:50px;padding-top:20px;text-align:center}@media (max-width:900px){.footer-container{gap:40px;grid-template-columns:1fr}}.dashboard{background:radial-gradient(circle at top,var(--bg-secondary),var(--bg-primary) 60%);color:var(--text-primary);min-height:100vh;padding:100px 6% 60px}.dashboard h2{display:inline-block;font-size:36px;font-weight:800;left:50%;margin-bottom:40px;position:relative;text-align:center;transform:translateX(-50%)}.dashboard h2:after{background:#8b5cf6;border-radius:2px;content:"";display:block;height:4px;margin:10px auto 0;width:60px}.events-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.event-card{background:var(--bg-card);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);cursor:pointer;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.event-card:hover{box-shadow:0 10px 30px #8b5cf626;transform:translateY(-8px)}.event-card img{height:200px;object-fit:cover;transition:opacity .3s;width:100%}.event-card:hover img{opacity:.9}.card-body{padding:24px}.card-body h3{color:var(--text-primary);font-size:20px;font-weight:700;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-body p{color:var(--text-secondary);font-size:15px;margin-bottom:6px}.card-body .date{color:#8b5cf6;font-size:14px;font-weight:500;margin-bottom:20px}.card-body button{background:#0000;border:1px solid #8b5cf6;border-radius:12px;color:#8b5cf6;cursor:pointer;font-size:15px;font-weight:600;padding:12px;transition:all .3s;width:100%}.card-body button:hover{background:#8b5cf6;color:#fff}.payment-sidebar-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000080;display:flex;height:100%;justify-content:flex-end;left:0;position:fixed;top:0;width:100%;z-index:1000}.payment-sidebar{background:#0f172a;box-shadow:-5px 0 30px #00000080;display:flex;flex-direction:column;height:100%;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:400px}.payment-sidebar.open{transform:translateX(0)}.payment-sidebar-content{color:#fff;overflow-y:auto;padding:30px}.sidebar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.sidebar-header h3{font-size:1.5rem;margin:0}.close-btn{background:none;font-size:2rem;line-height:1}.order-summary{background:#ffffff0d;border-radius:12px;margin-bottom:30px;padding:20px}.order-summary h4{color:#fbbf24;margin:0 0 10px}.form-group label{color:#94a3b8;font-size:.9rem}.form-group input{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;color:#fff;font-size:1rem;padding:12px;width:100%}.form-group input:focus{border-color:#fbbf24;outline:none}.card-group{background:#ffffff0d;border-radius:8px;padding:15px}.pay-btn{background:#fbbf24;border:none;border-radius:8px;color:#0f172a;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:20px;padding:15px;transition:all .3s;width:100%}.pay-btn:disabled{cursor:not-allowed;opacity:.7}.pay-btn:hover:not(:disabled){background:#f59e0b}.error-msg,.success{text-align:center}.success{padding-top:50%}.success h3{color:#10b981;font-size:2rem}.ticket-quantity-select{background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg fill='none' stroke='%2394a3b8' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M3 9V5h4m10 0h4v4m0 6v4h-4M7 19H3v-4'/%3E%3C/svg%3E");background-position:10px;background-repeat:no-repeat;background-size:16px;border:1px solid #dbeafe;border-radius:10px;box-shadow:0 4px 12px #00000014;color:#1e293b;cursor:pointer;font-size:14px;font-weight:500;padding:8px 14px 8px 10px;transition:all .2s ease;width:50%}.ticket-quantity-select:hover{border-color:#3b82f6}.ticket-quantity-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb40;outline:none}.event-page{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.hero-section{align-items:flex-end;display:flex;height:500px;padding-bottom:50px;position:relative}.hero-bg{-webkit-mask-image:linear-gradient(180deg,#000 60%,#0000);mask-image:linear-gradient(180deg,#000 60%,#0000);object-fit:cover;z-index:1}.hero-bg,.hero-overlay{height:100%;left:0;position:absolute;top:0;width:100%}.hero-overlay{background:linear-gradient(180deg,#0f172a4d,#0f172a);z-index:2}.hero-content{margin:0 auto;max-width:1200px;padding:0 20px;position:relative;width:100%;z-index:3}.hero-tags .tag{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff3;border-radius:20px;color:#fff;display:inline-block;font-size:.9rem;margin-bottom:15px;padding:5px 12px;text-shadow:0 2px 4px #00000080}.event-title{color:#fff;font-size:3rem;font-weight:800;margin:10px 0;text-shadow:0 4px 6px #000c,0 1px 3px #000c}.event-meta{color:#fff;display:flex;font-size:1.1rem;gap:20px;opacity:1;text-shadow:0 2px 4px #000c}.main-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:2fr 1fr;margin:0 auto;max-width:1200px;padding:40px 20px;position:relative;z-index:3}.countdown-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-card);border:1px solid var(--border);border-radius:16px;display:flex;justify-content:space-around;margin-bottom:30px;padding:20px}.timer-box{display:flex;flex-direction:column;text-align:center}.timer-box .time{color:var(--accent);font-size:2rem;font-weight:700}.timer-box .label{font-size:.8rem;letter-spacing:1px;opacity:.7;text-transform:uppercase}.tabs{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;display:flex;gap:15px;margin-bottom:30px;padding:8px}.tabs button{background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.tabs button:hover{background:var(--bg-card);color:var(--text-primary)}.tabs button.active{background:linear-gradient(135deg,#fbbf24,#d97706);box-shadow:0 4px 12px #fbbf244d;color:#0f172a}.tab-content{color:var(--text-secondary);line-height:1.6}.ticket-item{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);display:flex;justify-content:space-between;margin-bottom:15px;overflow:hidden;padding:20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.ticket-item:hover{background:var(--bg-primary);border-color:var(--accent);transform:translateY(-2px)}.ticket-info h4{color:var(--text-primary);font-size:1.2rem;font-weight:700;margin:0 0 5px}.ticket-info .price{color:#fbbf24;font-size:1.1rem;font-weight:700}.buy-btn{background:linear-gradient(135deg,#fbbf24,#d97706);border:none;border-radius:30px;box-shadow:0 4px 6px #0000001a;color:#0f172a;cursor:pointer;font-size:1rem;font-weight:700;letter-spacing:.5px;padding:12px 30px;text-transform:uppercase;transition:all .3s ease}.buy-btn:hover{box-shadow:0 6px 15px #fbbf2466;filter:brightness(1.1);transform:translateY(-1px)}.buy-btn:active{transform:translateY(1px)}.event-status{background:#ef4444;color:#fff;cursor:pointer}.event-content button:hover{background:#1e40af}.event-description{color:var(--text-secondary);line-height:1.6;margin-top:20px}.book-page{margin:60px auto;max-width:700px;padding:20px}.book-page h2{font-size:26px;margin-bottom:20px}.ticket-card{align-items:center;border:1px solid #ddd;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:16px;padding:16px}.ticket-card h3{margin:0}.ticket-card button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:10px 16px}.ticket-card button:hover{background:#1e40af}.booking-summary{background:#f9f9f9;border:1px solid #ccc;border-radius:10px;margin-top:30px;padding:20px}.auth-page{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);margin:80px auto;max-width:420px;padding:30px;text-align:center}.auth-page h2{color:var(--text-primary);font-size:26px;margin-bottom:20px}.auth-page input{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:15px;margin-bottom:14px;padding:12px;width:100%}.auth-page button{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:12px;width:100%}.auth-page button:hover{background:#1e40af}.auth-page .toggle-link{color:#2563eb;cursor:pointer;font-size:14px;margin-top:16px}.payment-page-container{align-items:center;background:#0f172a;display:flex;justify-content:center;min-height:80vh;padding:20px}.payment-card-box{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000004d;max-width:500px;padding:40px;width:100%}.payment-card-box h2{color:#1e293b;margin-bottom:20px;text-align:center}.amount-display{background:#f1f5f9;border-radius:8px;color:#475569;font-size:1.2rem;margin-bottom:30px;padding:15px;text-align:center}.amount-display span{color:#2563eb;font-size:1.5rem;font-weight:700}.stripe-card-element{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px}.pay-now-btn{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:30px;padding:16px;transition:background .3s;width:100%}.pay-now-btn:hover:not(:disabled){background:#1d4ed8}.pay-now-btn:disabled{background:#94a3b8;cursor:not-allowed}.success-view .success-card{background:#fff;border-radius:16px;color:#1e293b;padding:50px;text-align:center}.success-card h1{color:#10b981;margin-bottom:20px}.success-card button{background:#1e293b;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:20px;padding:10px 20px}.admin-container{background:var(--bg-primary);display:flex;min-height:100vh}.admin-sidebar{background:var(--bg-card);border-right:1px solid var(--border);box-shadow:2px 0 10px #0000001a;color:var(--text-primary);display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:100}.sidebar-header{border-bottom:1px solid #ffffff1a;padding:24px 20px}.sidebar-header h2{font-size:20px;font-weight:700;margin:0}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;padding:20px 0}.sidebar-nav button{background:none;border:none;border-left:3px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:15px;font-weight:500;padding:14px 20px;text-align:left;transition:all .2s}.sidebar-nav button:hover{background:var(--bg-primary);color:var(--text-primary)}.sidebar-nav button.active{background:#3b82f61a;border-left-color:#3b82f6;color:#3b82f6}.sidebar-nav .logout-btn{border-top:1px solid #ffffff1a;color:#ef4444;margin-top:auto}.sidebar-nav .logout-btn:hover{background:#ef44441a}.admin-main{flex:1 1;margin-left:260px;padding:30px;width:calc(100% - 260px)}.bookings-view h1,.dashboard-view h1,.events-view h1,.users-view h1{color:var(--text-primary);font-size:28px;margin:0 0 30px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:30px}.stat-card{animation:fadeIn .5s ease-out forwards;background:var(--bg-card);border-left:1px solid;border:1px solid var(--border);border-left-width:4px;border-radius:12px;box-shadow:var(--shadow);cursor:pointer;opacity:0;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:first-child{animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.stat-card:nth-child(4){animation-delay:.4s}.stat-card:hover{box-shadow:0 12px 24px #00000026;transform:translateY(-8px) scale(1.02)}.stat-card.users{border-left-color:#3b82f6}.stat-card.events{border-left-color:#8b5cf6}.stat-card.bookings{border-left-color:#10b981}.stat-card.revenue{border-left-color:#f59e0b}.stat-card h3{color:var(--text-secondary);font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.stat-card .stat-number{color:var(--text-primary);font-size:32px;font-weight:700;margin:0}.view-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.view-header h1{margin:0}.btn-delete,.btn-edit,.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;overflow:hidden;padding:10px 20px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-delete,.btn-edit,.btn-primary{transform-origin:center}.btn-delete:active,.btn-edit:active,.btn-primary:active{transform:scale(.95)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.btn-secondary{background:#e2e8f0;color:#475569}.btn-secondary:hover{background:#cbd5e1}.btn-edit{background:linear-gradient(135deg,#10b981,#059669);color:#fff;margin-right:8px;padding:8px 16px}.btn-edit:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;padding:8px 16px}.btn-delete:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.table-container{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.admin-table{border-collapse:collapse;width:100%}.admin-table thead{background:var(--bg-primary)}.admin-table th{border-bottom:2px solid var(--border);color:var(--text-secondary);font-size:13px;font-weight:600;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.admin-table td{border-bottom:1px solid var(--border);color:var(--text-primary);padding:16px}.admin-table tbody tr{transition:all .2s ease}.admin-table tbody tr:hover{background:var(--bg-primary);box-shadow:0 2px 8px #0000000d;transform:scale(1.01)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table td.actions{white-space:nowrap}.admin-table td small{color:#94a3b8;display:block;font-size:12px;margin-top:2px}.event-thumb{border-radius:6px;height:40px;object-fit:cover;width:60px}.badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.badge.admin{background:#dbeafe;color:#1e40af}.badge.user{background:#f3e8ff;color:#6b21a8}.badge.verified{background:#d1fae5;color:#065f46}.badge.pending{background:#fef3c7;color:#92400e}.badge.confirmed{background:#d1fae5;color:#065f46}.badge.failed{background:#fee2e2;color:#991b1b}.modal-overlay{animation:fadeIn .3s ease-out}.modal-content.event-modal,.modal-content.staff-modal,.modal-content.stats-modal{animation:scaleIn .3s ease-out;background:var(--bg-card);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid var(--border);padding:24px}.modal-header h2{color:var(--text-primary);font-size:20px;margin:0}.close-btn{background:#f1f5f9;color:#64748b;font-size:20px;transition:all .2s}.close-btn:hover{background:#e2e8f0;color:#1e293b}.event-form,.staff-form{padding:24px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-group input,.form-group textarea{background-color:var(--input-bg);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:14px;padding:12px;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group textarea{resize:vertical}.ticket-types-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.ticket-type-row{align-items:center;display:flex;gap:10px;margin-bottom:10px}.ticket-type-row input{flex:1 1;margin-bottom:0}.btn-remove{align-items:center;background:#fee2e2;border:none;border-radius:6px;color:#991b1b;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-remove:hover{background:#fecaca}.btn-add-row{background:none;border:1px dashed #3b82f6;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:14px;margin-top:10px;padding:8px;transition:all .2s;width:100%}.btn-add-row:hover{background:#eff6ff}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.loading{align-items:center;color:#64748b;display:flex;font-size:18px;height:100vh;justify-content:center}@media (max-width:1024px){.admin-sidebar{width:70px}.sidebar-header h2,.sidebar-nav button .nav-label{display:none}.sidebar-nav button{font-size:20px;padding:14px 0;text-align:center}.admin-main{margin-left:70px;width:calc(100% - 70px)}}@media (max-width:768px){.admin-container{flex-direction:column}.admin-sidebar{align-items:center;border-bottom:1px solid var(--border);border-right:none;flex-direction:row;height:auto;overflow-x:auto;padding:0 10px;position:relative;width:100%}.sidebar-header{border-bottom:none;border-right:1px solid #ffffff1a;margin-right:10px;padding:10px}.sidebar-header h2{display:block;font-size:18px;white-space:nowrap}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:0}.sidebar-nav button{align-items:center;border-bottom:3px solid #0000;border-left:none;color:var(--text-primary);display:flex;flex:1 1;font-size:28px;justify-content:center;opacity:.8;padding:12px;text-align:center;white-space:nowrap}.sidebar-nav button.active{background:#0000;border-bottom-color:var(--accent);border-left:none;color:var(--accent);opacity:1}.sidebar-nav .logout-btn{border-left:1px solid #ffffff1a;border-top:none;margin-left:auto;margin-top:0;padding:0 20px}.nav-label{display:none}.nav-icon{display:inline-block;margin-right:0}.admin-main{margin-left:0;padding:15px;width:100%}.stats-grid{grid-template-columns:1fr}.table-container{overflow-x:auto}}.stats-modal .admin-table td{color:#334155!important}.stats-modal .admin-table th{color:#475569!important}.staff-dashboard{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;padding:40px 6%}.dashboard-header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;margin-bottom:40px;padding-bottom:20px}.dashboard-header h2{color:var(--text-primary);font-size:32px;margin:0}.scanner-section{margin:0 auto;max-width:600px;text-align:center}.scanner-box{background:#000;border:4px solid var(--border);border-radius:20px;margin-bottom:30px;min-height:400px;overflow:hidden;position:relative}.manual-entry{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:30px}.manual-entry h3{color:var(--text-primary);margin-bottom:20px;margin-top:0}.input-group{display:flex;gap:10px;margin-bottom:20px}.input-group input{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);flex:1 1;font-size:16px;padding:14px}.verify-btn{background:var(--accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:14px 24px;transition:background .3s}.verify-btn:hover{background:var(--accent-hover)}.result-card{animation:slideUp .3s ease-out;background:var(--bg-card);border-radius:16px;box-shadow:var(--shadow);margin-top:30px;padding:30px;text-align:left}.result-card.success{background:#10b9810d;border-left:6px solid #10b981}[data-theme=dark] .result-card.success{background:#10b9811a}.result-card.error{background:#ef44440d;border-left:6px solid #ef4444}[data-theme=dark] .result-card.error{background:#ef44441a}.status-badge{border-radius:20px;display:inline-block;font-size:14px;font-weight:700;margin-bottom:20px;padding:6px 14px}.status-badge.valid{background:#d1fae5;color:#065f46}.status-badge.invalid{background:#fee2e2;color:#991b1b}.ticket-details p{border-bottom:1px solid var(--border);color:var(--text-secondary);display:flex;font-size:16px;justify-content:space-between;margin:10px 0;padding-bottom:8px}.ticket-details strong{color:var(--text-primary)}.action-buttons{display:flex;gap:14px;margin-top:24px}.redeem-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;font-weight:600}.close-btn-secondary,.redeem-btn{cursor:pointer;flex:1 1;padding:12px}.close-btn-secondary{background:#0000;border:1px solid var(--border);border-radius:8px;color:var(--text-secondary)}.close-btn-secondary:hover{background:var(--bg-primary);color:var(--text-primary)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scanner-layout{grid-template-columns:1fr}.scanner-card{margin:0 auto;max-width:600px}.scanner-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.scanner-wrapper{background:#000;border-radius:8px;padding:10px;position:relative}#reader,.stop-btn{width:100%}.stop-btn{background:#dc3545;color:#fff;margin-top:10px}.start-scan-btn{padding:15px;width:100%}.manual-divider{color:var(--text-secondary);margin:10px 0;text-align:center}.manual-scan-form{display:flex;gap:10px}.manual-input{background:var(--input-bg);border:1px solid var(--border);border-radius:5px;color:var(--text-primary);flex:1 1;padding:10px}.error-msg{background-color:#fee2e233;border:1px solid #ef444433;border-radius:5px;color:#ef4444}.error-msg,.success-msg{margin-top:20px;padding:15px}.success-msg{background-color:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.ticket-status-badge{margin-bottom:15px;text-align:center}.status-valid{background:#dcfce7;color:#166534}.status-used,.status-valid{border-radius:20px;font-weight:700;padding:5px 15px}.status-used{background:#fee2e2;color:#991b1b}.ticket-id{color:var(--text-secondary);font-size:.8em}.invalidate-btn{background:#dc2626;border:none;color:#fff;margin-top:15px;width:100%}.profile-page{background:#fff;display:flex;font-family:Inter,sans-serif;justify-content:center;min-height:100vh;padding:0}.profile-container{background:var(--bg-card);border:1px solid var(--border);max-width:600px;padding-bottom:40px;width:100%}.profile-header-minimal{align-items:center;display:flex;justify-content:space-between;padding:20px}.brand-logo{color:var(--text-primary);font-size:20px;font-weight:800}.country-flag{background:var(--bg-primary);border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);font-size:14px;padding:4px 8px}.user-section{padding:10px 20px 20px;text-align:center}.avatar-large{align-items:center;background:#2563eb;border-radius:50%;color:#fff;display:flex;font-size:32px;font-weight:700;height:80px;justify-content:center;margin:0 auto 16px;width:80px}.user-name{color:var(--text-primary);font-size:22px;margin-bottom:4px}.user-email{color:#64748b;font-size:14px}.stats-row{border-bottom:1px solid var(--border);border-top:1px solid var(--border);display:flex;justify-content:space-around;padding:15px 0}.stat-value{display:block;font-size:18px;font-weight:700}.stat-label{color:#64748b;font-size:12px;text-transform:uppercase}.profile-tabs{border-bottom:1px solid #f1f5f9;display:flex;overflow-x:auto;padding:0 10px;scrollbar-width:none}.profile-tabs::-webkit-scrollbar{display:none}.tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-weight:600;padding:16px 20px;white-space:nowrap}.tab-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.tab-btn.active{border-bottom-color:#2563eb;color:#2563eb}.tab-content{padding:20px}.ticket-card-list{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:16px}.ticket-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.ticket-header h3{color:var(--text-primary);font-size:16px;margin:0;max-width:75%}.ticket-status{background:#dcfce7;border-radius:12px;color:#166534;font-size:11px;font-weight:600;padding:2px 8px}.ticket-body-mini{color:#475569;font-size:14px;margin-bottom:16px}.ticket-actions{display:flex;gap:10px}.view-btn{background:var(--text-primary);border:none;border-radius:8px;color:var(--bg-card)}.download-btn-outline,.view-btn{cursor:pointer;flex:1 1;font-weight:600;padding:10px}.download-btn-outline{background:#0000;border:1px solid var(--border);border-radius:8px;color:var(--text-primary)}.download-btn-full{background:#fff;border:none;border-radius:12px;color:#0f172a;cursor:pointer;font-size:14px;font-weight:700;margin-top:20px;padding:14px;text-transform:uppercase;width:100%}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content.ticket-modal{background:#0000;max-width:360px;width:100%}.modal-header{align-items:center;color:#fff;display:flex;justify-content:space-between;margin-bottom:16px}.modal-header h3{font-size:18px;margin:0}.close-btn{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;height:32px;width:32px}.ticket-visual{background:#fff;border-radius:20px;box-shadow:0 10px 30px #00000040;overflow:hidden}.ticket-top{background:#0f172a;color:#fff;padding:24px;text-align:center}.brand-small{color:#94a3b8;display:block;font-size:10px;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.ticket-top h2{font-size:20px;line-height:1.3;margin-bottom:16px}.ticket-meta{display:flex;gap:30px;justify-content:center}.ticket-meta label{color:#94a3b8;display:block;font-size:10px;text-transform:uppercase}.ticket-meta p{font-size:14px;font-weight:600}.ticket-divider{background:#0f172a;height:30px;margin-top:-1px;position:relative}.dashed-line{border-top:2px dashed #fff3;left:0;position:absolute;right:0;top:50%}.circle-left,.circle-right{background:#0009;border-radius:50%;height:30px;position:absolute;top:50%;transform:translateY(-50%);width:30px}.circle-left{left:-15px}.circle-right{right:-15px}.ticket-bottom{background:#fff;padding:24px}.ticket-details-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:24px}.ticket-details-grid label{color:#64748b;display:block;font-size:11px;margin-bottom:2px;text-transform:uppercase}.ticket-details-grid p{color:#0f172a;font-size:14px;font-weight:600}.qr-section{text-align:center}.qr-section img{display:inline-block;height:140px;margin-bottom:10px;width:140px}.print-page-container{align-items:center;background:#e2e8f0;display:flex;font-family:Inter,sans-serif;height:297mm;justify-content:center;width:210mm}.print-ticket{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 10px 40px #0000001a;overflow:hidden;width:190mm}.print-header{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:30px;position:relative;text-align:center}.print-header h1{font-size:28px;font-weight:800;letter-spacing:1px;margin:0;text-transform:uppercase}.print-match{align-items:center;border-bottom:1px dashed #fff3;display:flex;gap:40px;justify-content:center;margin-top:25px;padding-bottom:25px}.print-team{font-size:22px;font-weight:700;text-align:center;width:40%}.print-vs{background:#ffffff1a;border-radius:50%;font-size:16px;font-weight:900;padding:8px 12px}.print-details{display:flex;font-size:14px;justify-content:space-between;margin-top:20px;opacity:.9}.print-info-boxes{grid-gap:15px;background:#f8fafc;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);padding:25px 30px}.print-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #00000005;padding:15px;text-align:center}.print-box strong{color:#0f172a;display:block;font-size:24px;font-weight:800;margin-top:5px}.print-bottom{display:flex;gap:20px;padding:25px 30px}.print-user-info{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex:1 1;padding:20px}.print-user-info p{border-bottom:1px solid #f1f5f9;color:#475569;font-size:14px;margin:8px 0;padding-bottom:8px}.print-user-info p strong{color:#0f172a;display:inline-block;width:80px}.print-qr-box{align-items:center;background:#fff;border:2px solid #0f172a;border-radius:12px;display:flex;height:180px;justify-content:center;padding:10px;width:180px}.print-qr-box img{height:100%;object-fit:contain;width:100%}.print-footer{background:#f8fafc;border-top:1px solid #e2e8f0;color:#94a3b8;font-size:12px;font-weight:500;padding:15px;text-align:center}.footer-page-container{background:radial-gradient(circle at top,var(--bg-secondary),var(--bg-primary) 80%);color:var(--text-primary);min-height:80vh;padding:120px 10%}.footer-page-container h1{color:#8b5cf6;font-size:42px;margin-bottom:24px;text-align:center}.footer-page-container h3{color:#fff;font-size:24px;margin-bottom:12px;margin-top:30px}.footer-page-container li,.footer-page-container p{color:var(--text-secondary);font-size:18px;line-height:1.6;margin-bottom:12px}.footer-page-container ul{padding-left:20px}.contact-details{display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin-top:50px}.contact-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;min-width:250px;padding:30px;text-align:center}.contact-card h3{color:#8b5cf6;margin-top:0}.faq-list{margin:40px auto;max-width:800px}.faq-item{background:var(--bg-card);border-left:1px solid #8b5cf6;border:1px solid var(--border);border-left-width:4px;border-radius:12px;margin-bottom:20px;padding:24px}.faq-item h3{color:#fff;font-size:20px;margin-top:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.fade-in{animation:fadeIn .5s ease-out forwards}.fade-in-down{animation:fadeInDown .4s ease-out forwards}.slide-in-right{animation:slideInRight .5s ease-out forwards}.slide-in-left{animation:slideInLeft .5s ease-out forwards}.scale-in{animation:scaleIn .3s ease-out forwards}.stagger-item{animation:fadeIn .5s ease-out forwards;opacity:0}.stagger-item:first-child{animation-delay:.1s}.stagger-item:nth-child(2){animation-delay:.2s}.stagger-item:nth-child(3){animation-delay:.3s}.stagger-item:nth-child(4){animation-delay:.4s}.stagger-item:nth-child(5){animation-delay:.5s}.stagger-item:nth-child(6){animation-delay:.6s}.stagger-item:nth-child(7){animation-delay:.7s}.stagger-item:nth-child(8){animation-delay:.8s}.smooth-transition{transition:all .3s cubic-bezier(.4,0,.2,1)}.smooth-hover{transition:transform .2s ease,box-shadow .2s ease}.smooth-hover:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.btn-animate{overflow:hidden;position:relative;transition:all .3s ease}.btn-animate:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-animate:active:before{height:300px;width:300px}.spinner{animation:spin 1s linear infinite;border:4px solid #0000001a;border-left-color:#3b82f6;border-radius:50%;height:40px;width:40px}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px}.glow-on-hover{transition:box-shadow .3s ease}.glow-on-hover:hover{box-shadow:0 0 20px #3b82f666}.flip-card{perspective:1000px}.flip-card-inner{transform-style:preserve-3d;transition:transform .6s}.flip-card:hover .flip-card-inner{transform:rotateY(180deg)}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.shake{animation:shake .5s}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.animated-gradient{animation:gradientShift 3s ease infinite;background-size:200% 200%}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.float{animation:float 3s ease-in-out infinite}.underline-expand{position:relative}.underline-expand:after{background:currentColor;bottom:0;content:"";height:2px;left:50%;position:absolute;transition:width .3s ease,left .3s ease;width:0}.underline-expand:hover:after{left:0;width:100%}.page-enter{opacity:0;transform:translateY(30px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .4s ease,transform .4s ease}.modal-backdrop-enter{opacity:0}.modal-backdrop-enter-active{opacity:1;transition:opacity .3s ease}.modal-content-enter{opacity:0;transform:scale(.9) translateY(-20px)}.modal-content-enter-active{opacity:1;transform:scale(1) translateY(0);transition:opacity .3s ease,transform .3s ease}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}.notification-enter{animation:slideInFromRight .4s ease-out}@keyframes progressBar{0%{width:0}to{width:100%}}.progress-animate{animation:progressBar 2s ease-out forwards}
/*# sourceMappingURL=main.384715c4.css.map*/