*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f7fa;color:#1a1a2e;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#root,.login-page,body{min-height:100vh}.login-page{align-items:center;background:linear-gradient(135deg,#0d1b2a,#1b2a4a 50%,#162040);display:flex;justify-content:center;overflow:hidden;padding:20px;position:relative}.login-page:before{background:radial-gradient(circle at 20% 80%,#c0392b14 0,#0000 50%),radial-gradient(circle at 80% 20%,#c0392b0f 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.login-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff0d;max-width:440px;padding:40px;position:relative;width:100%;z-index:1}.login-header{margin-bottom:32px;text-align:center}.login-logo-img{border-radius:8px;height:auto;margin-bottom:16px;width:200px}.login-header h1{color:#1b2a4a;font-size:22px;font-weight:700;letter-spacing:.5px;margin-bottom:6px}.login-header p{color:#666;font-size:14px}.login-form{margin-bottom:24px}.login-form .form-group{margin-bottom:20px}.login-form label{color:#1b2a4a;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.login-form .form-input{border:2px solid #e0e0e0;border-radius:10px;box-sizing:border-box;font-size:16px;padding:14px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.login-form .form-input:focus{border-color:#1b2a4a;box-shadow:0 0 0 3px #1b2a4a1a;outline:none}.login-form .form-input::placeholder{color:#aaa}.login-error{background:#c0392b1a;border:1px solid #c0392b4d;border-radius:8px;color:#c0392b;font-size:14px;margin-bottom:20px;padding:12px 16px}.login-button{background:linear-gradient(135deg,#c0392b,#a93226);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;padding:14px;transition:all .2s ease;width:100%}.login-button:hover:not(:disabled){box-shadow:0 6px 20px #c0392b66;transform:translateY(-2px)}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-footer{text-align:center}.login-footer p{color:#999;font-size:12px}.leagues-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.league-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:20px;transition:all .2s ease}.league-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.league-card-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.league-logo{border:1px solid #e0e0e0;border-radius:8px;height:48px;object-fit:cover;width:48px}.league-logo-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;width:48px}.league-card-title{flex:1 1}.league-card-title h3{color:#1a1a1a;font-size:18px;margin:0 0 4px}.league-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#666;display:-webkit-box;font-size:14px;line-height:1.5;margin-bottom:12px;overflow:hidden}.league-card-meta{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;padding-top:12px}.league-card-contact{color:#666;font-size:13px}.league-card-actions{display:flex;gap:8px}.badge.badge-active{background-color:#d4edda;color:#155724}.badge.badge-inactive{background-color:#f8d7da;color:#721c24}.blind-structures-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 2fr;margin-top:20px}@media (max-width:1024px){.blind-structures-layout{grid-template-columns:1fr}}.levels-panel,.structures-panel{height:-webkit-fit-content;height:fit-content;min-height:400px}.structures-list{flex-direction:column}.structure-item,.structures-list{display:flex;gap:12px;padding:16px}.structure-item{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;justify-content:space-between;transition:all .2s ease}.structure-item:hover{background-color:#f8f9ff;border-color:#667eea}.structure-item.active{background-color:#f0f2ff;border-color:#667eea}.structure-info{flex:1 1}.structure-info h4{align-items:center;color:#1a1a1a;display:flex;font-size:16px;margin:0 0 4px}.structure-actions{display:flex;flex-wrap:wrap;gap:8px}.break-row{background-color:#fff3cd!important}.break-row:hover{background-color:#ffe8a1!important}.modal-body{max-height:600px;overflow-y:auto}.levels-panel .empty-state,.structures-panel .empty-state{padding:40px 20px}.btn-sm{font-size:13px}.badge{border-radius:4px;font-weight:500;padding:4px 8px}.badge-success{background-color:#d4edda;color:#155724}.badge-info{background-color:#d1ecf1;color:#0c5460}.badge-secondary{background-color:#e2e3e5;color:#383d41}.data-table tbody tr.break-row td{font-style:italic}.game-info-card{margin-bottom:24px}.game-info-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.game-info-item{display:flex;flex-direction:column}.info-label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.info-value{color:#1a1a2e;font-size:18px;font-weight:600}.info-detail{color:#888;font-size:13px;margin-top:2px}.game-info-header{display:flex;justify-content:flex-end;margin-bottom:16px}.game-info-edit{padding:4px 0}.game-info-edit-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:16px}.game-info-edit-grid .form-group{margin-bottom:0}.game-info-edit-grid .form-group label{color:#666;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.game-info-edit-grid .form-input,.game-info-edit-grid .form-select{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:8px 12px;transition:border-color .2s ease;width:100%}.game-info-edit-grid .form-input:focus,.game-info-edit-grid .form-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.game-info-edit-actions{border-top:1px solid #eee;display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:8px;margin-bottom:20px;padding-bottom:0}.tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:12px 24px;transition:all .2s ease}.tab.active,.tab:hover{color:#3498db}.tab.active{border-bottom-color:#3498db}.tables-management{display:flex;flex-direction:column;gap:16px;padding:16px}.table-manage-card{background:#f8f9fa;border:1px solid #e8ecef;border-radius:12px;padding:20px;transition:box-shadow .2s ease}.table-manage-card:hover{box-shadow:0 2px 8px #00000014}.table-manage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.table-manage-title{align-items:center;display:flex;gap:12px}.table-manage-title h4{color:#1a1a2e;font-size:16px;font-weight:700;margin:0}.table-manage-info{background:#0000000d;border-radius:10px;color:#7f8c8d;font-size:13px;font-weight:500;padding:2px 10px}.table-manage-dealer{align-items:center;background:#fff;border:1px solid #e8ecef;border-radius:8px;display:flex;gap:10px;margin-bottom:14px;padding:10px 14px}.dealer-section-label{color:#666;flex-shrink:0;font-size:13px;font-weight:600}.dealer-assignment{align-items:center;display:flex;gap:8px}.btn-icon{align-items:center;border:none;border-radius:50%;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:24px}.btn-icon-danger{background:#e74c3c1a;color:#e74c3c}.btn-icon-danger:hover{background:#e74c3c;color:#fff}.btn-icon-danger:disabled{cursor:not-allowed;opacity:.4}.table-manage-seats{display:flex;flex-wrap:wrap;gap:6px}.mini-seat{align-items:center;border-radius:50%;display:flex;font-size:11px;font-weight:600;height:28px;justify-content:center;transition:all .15s ease;width:28px}.mini-seat.occupied{background:#27ae60;color:#fff}.mini-seat.empty{background:#eee;border:1px dashed #ccc;color:#999}.table-seating{margin-bottom:24px}.table-seating h4{color:#1a1a2e;font-size:16px;font-weight:600;margin-bottom:16px}.table-dealer-label{color:#27ae60;font-size:14px;font-weight:400}.seats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.seat-card{border-radius:10px;padding:16px;text-align:center;transition:all .2s ease}.seat-card.occupied{background:linear-gradient(145deg,#27ae60,#229954);color:#fff}.seat-card.empty{background:#f5f7fa;border:2px dashed #ddd;color:#999}.seat-number{font-size:11px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;opacity:.8;text-transform:uppercase}.seat-card .player-name{font-size:14px;font-weight:600}.empty-label{font-size:13px;font-style:italic}.place-badge{border-radius:6px;display:inline-block;font-size:13px;font-weight:700;padding:4px 12px}.place-badge.place-1{background:linear-gradient(135deg,#f1c40f,#f39c12);color:#fff}.place-badge.place-2{background:linear-gradient(135deg,#bdc3c7,#95a5a6);color:#fff}.place-badge.place-3{background:linear-gradient(135deg,#e67e22,#d35400);color:#fff}.place-badge.place-4,.place-badge.place-5{background:#f5f7fa;color:#666}.gd-toast{animation:gdToastIn .3s ease-out;border-radius:10px;bottom:30px;box-shadow:0 4px 16px #00000026;font-size:14px;font-weight:600;left:50%;padding:12px 28px;position:fixed;transform:translateX(-50%);z-index:5000}.gd-toast.success{background:#27ae60;color:#fff}.gd-toast.error{background:#e74c3c;color:#fff}@keyframes gdToastIn{0%{opacity:0;transform:translateX(-50%) translateY(10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.schedules-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-top:0}.schedule-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;transition:all .3s ease}.schedule-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.schedule-card.inactive{border-color:#e0e0e0;opacity:.7}.schedule-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.schedule-header h3{color:#2c3e50;font-size:1.25rem;margin:0}.schedule-details{margin-bottom:1.5rem}.detail-row{align-items:center;display:flex;font-size:.95rem;justify-content:space-between;padding:.5rem 0}.detail-row .label{color:#7f8c8d;font-weight:500}.detail-row span:last-child{color:#2c3e50;font-weight:600}.schedule-actions{display:flex;flex-wrap:wrap;gap:.5rem}.schedule-actions .btn{flex:1 1;min-width:80px}.recurrence-selector{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);margin-bottom:.5rem}.recurrence-button{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.recurrence-button:hover{background:#f8f9ff;border-color:#667eea}.recurrence-button.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.days-selector{display:flex;flex-wrap:wrap;gap:.5rem}.day-button{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;flex:1 1;font-weight:600;min-width:60px;padding:.75rem 1rem;transition:all .2s ease}.day-button:hover{background:#f8f9ff;border-color:#667eea}.day-button.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff}.dealer-assignments{border-top:1px dashed #e0e0e0;margin-top:.75rem;padding-top:.75rem}.dealer-assignments-title{color:#7f8c8d;font-size:.85rem;font-weight:700;letter-spacing:.05em;margin-bottom:.35rem;text-transform:uppercase}.dealer-row{font-size:.9rem}.dealer-table-assignments{display:flex;flex-direction:column;gap:.5rem}.dealer-table-row{align-items:center;display:flex;gap:.75rem}.dealer-table-label{color:#2c3e50;font-size:.9rem;font-weight:600;min-width:65px;white-space:nowrap}.dealer-select{flex:1 1}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:20px;width:20px}.empty-state{background:#fff;border-radius:12px;margin-top:2rem;padding:4rem 2rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#2c3e50;margin-bottom:.5rem}.empty-state p{color:#7f8c8d;margin-bottom:2rem}.loading-state{padding:4rem 2rem;text-align:center}.loading-spinner{border:4px solid #f3f3f3;border-top-color:#667eea;height:50px;margin:0 auto 1rem;width:50px}.generate-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.generate-modal{animation:generateSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:420px;padding:2.5rem 3rem;text-align:center;width:90%}@keyframes generateSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.generate-icon{animation:generatePulse 1.5s ease-in-out infinite;font-size:3rem;margin-bottom:.75rem}@keyframes generatePulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.generate-modal h3{color:#2c3e50;font-size:1.4rem;margin:0 0 .25rem}.generate-schedule-name{color:#667eea;font-size:1rem;font-weight:600;margin:0 0 1.5rem}.generate-progress-bar{background:#e9ecef;border-radius:5px;height:10px;margin-bottom:1rem;overflow:hidden;width:100%}.generate-progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:5px;height:100%;transition:width .4s ease}.generate-step{color:#555;font-size:.95rem;font-weight:500;margin:0 0 .25rem}.generate-percent{color:#999;font-size:.85rem;margin:0}@media (max-width:900px){.page-content{margin-left:0;padding:20px}.schedules-grid{grid-template-columns:1fr}.schedule-actions{flex-direction:column}.recurrence-selector{grid-template-columns:repeat(2,1fr)}.recurrence-button{font-size:13px;padding:.6rem .75rem}.schedule-actions .btn{width:100%}.days-selector{justify-content:space-between}.day-button{flex-basis:calc(14.28% - 0.5rem);flex-grow:0;flex-shrink:0;font-size:.85rem;min-width:45px;padding:.5rem}}.kiosk-fullscreen{background:linear-gradient(135deg,#1a1a2e,#16213e);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:2000}.kiosk-topbar{align-items:center;background:#0000004d;border-bottom:1px solid #ffffff1a;display:flex;flex-shrink:0;justify-content:space-between;padding:10px 24px}.kiosk-topbar-left{align-items:center;display:flex;gap:16px}.kiosk-topbar-logo{border-radius:8px;flex-shrink:0;height:100px;object-fit:cover;width:100px}.kiosk-topbar-left h2{color:#fff;font-size:18px;font-weight:700;letter-spacing:1px;margin:0}.kiosk-topbar-divider{color:#ffffff4d;font-size:20px;font-weight:300}.kiosk-topbar-venue{color:#ffffffd9;font-size:15px;font-weight:500}.kiosk-topbar-left .kiosk-game-badge{background:#3498db66;border-radius:12px;color:#ffffffe6;font-size:12px;font-weight:600;padding:4px 12px}.kiosk-admin-login-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#ffffffb3;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:all .2s ease}.kiosk-admin-login-btn:hover{background:#fff3;color:#fff}.kiosk-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.kiosk-table-tabs{display:flex;flex-shrink:0;gap:4px;padding:10px 24px}.kiosk-table-tab{background:#ffffff0d;border:2px solid #fff3;border-radius:8px 8px 0 0;color:#ffffffb3;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px;transition:all .2s ease}.kiosk-table-tab:hover{background:#ffffff1a;color:#fff}.kiosk-table-tab.active{background:#2ecc7133;border-color:#2ecc71;color:#2ecc71}.kiosk-table-tab.full{border-color:#e74c3c80;color:#e74c3ccc}.kiosk-table-tab.full.active{background:#e74c3c26;border-color:#e74c3c;color:#e74c3c}.kiosk-table-area{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:10px 40px 20px;position:relative}.kiosk-poker-table{aspect-ratio:1.6/1;max-width:900px;position:relative;width:80%}.kiosk-table-felt{align-items:center;background:linear-gradient(145deg,#0d7a3f,#0a5d30);border:10px solid #5d3a1a;border-radius:50%/40%;box-shadow:inset 0 0 80px #00000080,0 8px 40px #0009,0 0 0 4px #8b4513,0 0 0 8px #3d2510;display:flex;flex-direction:column;height:60%;justify-content:center;left:15%;position:absolute;top:20%;width:70%}.kiosk-table-felt:after{border:2px solid #ffffff1f;border-radius:50%/40%;content:"";height:75%;pointer-events:none;position:absolute;width:85%}.kiosk-table-center{align-items:center;color:#fff;display:flex;flex-direction:column;gap:6px;text-align:center;z-index:1}.kiosk-table-center .bar-name{color:#fff;font-size:22px;font-weight:700;letter-spacing:1px;text-shadow:0 2px 4px #0006;text-transform:uppercase}.kiosk-table-center .game-type-badge{background:#3498db66;border-radius:12px;color:#ffffffe6;font-size:13px;font-weight:600;padding:4px 14px}.kiosk-table-center .start-time{background:#2ecc714d;border-radius:12px;color:#fffc;font-size:13px;font-weight:600;padding:4px 14px}.kiosk-seat{align-items:center;border-radius:50%;cursor:pointer;display:flex;flex-direction:column;font-size:11px;height:62px;justify-content:center;position:absolute;transform:translate(-50%,-50%);transition:all .3s ease;width:62px}.kiosk-seat.empty{background:#0006;border:2px dashed #fff6}.kiosk-seat.empty:hover{background:#2ecc714d;border-color:#2ecc71;transform:translate(-50%,-50%) scale(1.15)}.kiosk-seat.occupied{background:linear-gradient(145deg,#34495e,#2c3e50);border:3px solid #3498db;box-shadow:0 4px 12px #3498db66;cursor:default}.kiosk-seat .empty-seat-icon{color:#ffffff80;font-size:26px}.kiosk-seat .seat-label{bottom:-18px;color:#fff9;font-size:10px;font-weight:600;position:absolute;white-space:nowrap}.kiosk-seat .player-avatar{font-size:28px}.kiosk-seat .player-name{bottom:-18px;color:#fff;font-size:10px;font-weight:700;position:absolute;text-align:center;white-space:nowrap}.kiosk-vip-icon{filter:drop-shadow(0 1px 3px rgba(0,0,0,.5));height:50px;pointer-events:none;position:absolute;right:-27px;top:-20px;width:50px;z-index:2}.kiosk-seat.vip-current{border:3px solid #f1c40f!important;box-shadow:0 0 12px #f1c40f80;cursor:default!important;opacity:.55}.kiosk-seat.vip-target{animation:vipPulse 1.4s ease-in-out infinite;cursor:pointer!important}.kiosk-seat.vip-target.empty{background:#2ecc7133;border-color:#2ecc71}.kiosk-seat.vip-target.occupied{cursor:pointer!important}.kiosk-seat.vip-blocked{cursor:not-allowed!important;filter:grayscale(60%);opacity:.35}@keyframes vipPulse{0%,to{box-shadow:0 0 8px #2ecc714d}50%{box-shadow:0 0 20px #2ecc71b3,0 0 30px #2ecc714d}}.kiosk-vip-select-banner{align-items:center;background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 4px 20px #f39c1266;display:flex;gap:16px;justify-content:center;left:0;padding:14px 24px;position:fixed;right:0;top:0;z-index:2500}.vip-select-text{align-items:center;color:#fff;display:flex;font-size:17px;font-weight:700;gap:10px;letter-spacing:.5px}.vip-banner-icon{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3));height:28px;width:28px}.vip-select-error{background:#e74c3ccc;border-radius:6px;color:#fff;font-size:13px;font-weight:600;padding:4px 12px}.vip-select-cancel{background:#00000040;border:2px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:8px 20px;transition:all .2s ease}.vip-select-cancel:hover{background:#0006;border-color:#fff}.kiosk-dealer{align-items:center;background:linear-gradient(145deg,#f39c12,#e67e22);border:3px solid #fff;border-radius:50%;box-shadow:0 4px 15px #f39c1280;display:flex;flex-direction:column;height:56px;justify-content:center;position:absolute;transform:translate(-50%,-50%);width:56px;z-index:10}.kiosk-dealer .dealer-avatar{font-size:24px}.kiosk-dealer .dealer-label{color:#fff;font-size:9px;font-weight:700;text-transform:uppercase}.kiosk-player-count{margin-top:16px;text-align:center}.kiosk-player-count .count-badge{background:#ffffff1a;border:2px solid #fff3;border-radius:20px;color:#fff;display:inline-block;font-size:14px;font-weight:600;padding:8px 20px}.kiosk-user-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:3000}.kiosk-user-modal{background:#1e2a3a;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 8px 40px #00000080;max-width:400px;padding:32px;width:90%}.kiosk-user-modal h3{color:#fff;font-size:20px;margin:0 0 8px;text-align:center}.kiosk-user-modal .modal-subtitle{color:#fff9;font-size:13px;margin-bottom:24px;text-align:center}.kiosk-user-modal .kiosk-form-group{margin-bottom:16px}.kiosk-user-modal label{color:#ffffffb3;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.kiosk-user-modal input{background:#ffffff14;border:1px solid #fff3;border-radius:8px;box-sizing:border-box;color:#fff;font-size:16px;outline:none;padding:12px 14px;width:100%}.kiosk-user-modal input:focus{background:#ffffff1f;border-color:#3498db}.kiosk-user-modal input::placeholder{color:#ffffff4d}.kiosk-modal-actions{display:flex;gap:12px;margin-top:24px}.kiosk-modal-actions button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:15px;font-weight:700;padding:12px;transition:all .2s ease}.kiosk-modal-actions .kiosk-btn-primary{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.kiosk-modal-actions .kiosk-btn-primary:hover{background:linear-gradient(135deg,#27ae60,#1e8449)}.kiosk-modal-actions .kiosk-btn-primary:disabled{cursor:not-allowed;opacity:.5}.kiosk-modal-actions .kiosk-btn-secondary{background:#ffffff1a;border:1px solid #fff3;color:#ffffffb3}.kiosk-modal-actions .kiosk-btn-secondary:hover{background:#ffffff26;color:#fff}.kiosk-modal-error{color:#e74c3c}.kiosk-modal-error,.kiosk-modal-status{font-size:13px;margin-top:12px;text-align:center}.kiosk-modal-status{color:#2ecc71;font-weight:600}.kiosk-info-tooltip{cursor:help;display:inline-block;margin-left:6px;position:relative}.kiosk-info-icon{align-items:center;background:#3498db99;border-radius:50%;color:#fff;display:inline-flex;font-size:10px;font-style:italic;font-weight:700;height:16px;justify-content:center;line-height:1;width:16px}.kiosk-info-tooltip:hover:after{background:#000000d9;border-radius:6px;bottom:calc(100% + 6px);color:#fff;content:"For in game alerts";font-size:12px;font-style:normal;font-weight:500;left:50%;padding:6px 12px;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:10}.kiosk-info-tooltip:hover:before{border:4px solid #0000;border-top-color:#000000d9;bottom:calc(100% + 2px);content:"";left:50%;position:absolute;transform:translateX(-50%);z-index:10}.kiosk-game-select{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:40px}.kiosk-game-select h2{color:#fff;font-size:28px;margin-bottom:8px}.kiosk-game-select p{color:#fff9;font-size:16px;margin-bottom:32px}.kiosk-game-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-width:900px;width:100%}.kiosk-game-card{background:#ffffff0f;border:2px solid #ffffff1a;border-radius:12px;cursor:pointer;padding:20px;transition:all .2s ease}.kiosk-game-card:hover{background:#ffffff1a;border-color:#2ecc71;transform:translateY(-2px)}.kiosk-game-card h4{color:#fff;font-size:18px;margin:0 0 8px}.kiosk-game-card .game-card-info{color:#fff9;display:flex;flex-direction:column;font-size:13px;gap:4px}.kiosk-game-card .game-card-seats{color:#2ecc71;font-size:14px;font-weight:600;margin-top:8px}.kiosk-game-card.full .game-card-seats{color:#e74c3c}.kiosk-waiting-list-area{padding:0 24px 16px;text-align:center}.kiosk-waiting-btn{background:linear-gradient(135deg,#e67e22,#d35400);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px 32px;transition:all .2s ease}.kiosk-waiting-btn:hover{background:linear-gradient(135deg,#d35400,#a04000)}.kiosk-waiting-btn:disabled{cursor:not-allowed;opacity:.5}.kiosk-waiting-info{color:#ffffff80;font-size:13px;margin-top:8px}.kiosk-toast{animation:slideUp .3s ease-out;border-radius:12px;bottom:40px;box-shadow:0 4px 20px #0006;font-size:16px;font-weight:600;left:50%;padding:16px 32px;position:fixed;transform:translateX(-50%);z-index:5000}.kiosk-toast.success{background:#2ecc71;color:#fff}.kiosk-toast.error{background:#e74c3c;color:#fff}@keyframes slideUp{0%{opacity:0;transform:translateX(-50%) translateY(20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.kiosk-loading{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center}.kiosk-loading .kiosk-spinner{animation:spin 2s linear infinite;font-size:60px;margin-bottom:16px}.kiosk-loading p{color:#ffffffb3;font-size:18px}.admin-layout,.app{min-height:100vh}.admin-layout{display:flex}.sidebar{background:#1b2a4a;color:#fff;height:100vh;overflow-y:auto;padding:20px 0;position:fixed;width:250px}.sidebar-header{border-bottom:1px solid #ffffff1a;margin-bottom:12px;padding:16px 20px;text-align:center}.sidebar-logo{border-radius:6px;height:auto;margin-bottom:6px;width:140px}.sidebar-header h1{font-size:20px;font-weight:700;margin-bottom:4px}.sidebar-header p{color:#ffffff80;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}.sidebar-nav{list-style:none}.sidebar-nav li{margin-bottom:4px}.sidebar-nav a{align-items:center;color:#fffc;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 20px;text-decoration:none;transition:all .2s ease}.sidebar-nav a.active,.sidebar-nav a:hover{background:#ffffff1a;color:#fff}.sidebar-nav a.active{border-left:3px solid #c0392b}.nav-icon{font-size:18px}.sidebar-footer{border-top:1px solid #ffffff1a;bottom:0;left:0;padding:20px;position:absolute;right:0}.user-info{gap:12px;margin-bottom:12px}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:#c0392b;border-radius:50%;font-size:16px;font-weight:700;height:40px;justify-content:center;width:40px}.user-details{flex:1 1}.user-name{font-size:14px;font-weight:600}.user-role{color:#fff9;font-size:12px}.logout-button{background:#e74c3c33;border:1px solid #e74c3c66;border-radius:6px;color:#e74c3c;cursor:pointer;font-size:14px;font-weight:500;padding:10px;transition:all .2s ease;width:100%}.logout-button:hover{background:#e74c3c4d}.main-content{background:#f5f7fa;flex:1 1;margin-left:250px;min-height:100vh;padding:30px}.page-container{display:flex;min-height:100vh}.page-content{background:#f5f7fa;box-sizing:border-box;flex:1 1;margin-left:250px;min-height:100vh;overflow-y:auto;padding:30px}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.page-header h1,.page-header h2{color:#1b2a4a;font-size:28px;font-weight:700;margin:0 0 4px}.page-header p{color:#666;font-size:14px;margin:0}.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:20px;padding:24px}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.card-header h3{color:#1b2a4a;font-size:18px;font-weight:600}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:24px}.stat-card .stat-icon{font-size:32px;margin-bottom:12px}.stat-card .stat-value{color:#1b2a4a;font-size:32px;font-weight:700;margin-bottom:4px}.stat-card .stat-label{color:#666;font-size:14px}.data-table{border-collapse:collapse;width:100%}.data-table td,.data-table th{border-bottom:1px solid #eee;padding:14px 16px;text-align:left}.data-table th{background:#f8f9fa;color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.data-table td{color:#333;font-size:14px}.data-table tr:hover{background:#f8f9fa}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.btn-primary{background:#1b2a4a;color:#fff}.btn-primary:hover{background:#152238}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover{background:#e0e0e0}.btn-danger{background:#e74c3c;color:#fff}.btn-danger:hover{background:#c0392b}.btn-success{background:#27ae60;color:#fff}.btn-success:hover{background:#229954}.btn-sm{font-size:12px;padding:6px 12px}.badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 10px}.badge-success{background:#27ae6026;color:#27ae60}.badge-warning{background:#f39c1226;color:#f39c12}.badge-danger{background:#e74c3c26;color:#e74c3c}.badge-info{background:#1b2a4a1f;color:#1b2a4a}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-input{border:1px solid #ddd;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .2s ease;width:100%}.form-input:focus{border-color:#1b2a4a;outline:none}.form-select{background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:12px 16px;width:100%}.form-select:focus{border-color:#1b2a4a;outline:none}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{max-width:500px}.modal,.modal-content{background:#fff;border-radius:12px;max-height:90vh;overflow-y:auto;width:100%}.modal-content{box-shadow:0 4px 20px #00000026;max-width:600px;padding:0 24px 24px}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{font-size:18px;font-weight:600}.modal-close{background:none;border:none;color:#666;cursor:pointer;font-size:24px}.modal-body{padding:24px}.modal-footer{border-top:1px solid #eee;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.action-buttons{display:flex;gap:8px}.empty-state{color:#666;padding:60px 20px;text-align:center}.empty-state-icon{font-size:48px;margin-bottom:16px}.empty-state h3{color:#333;font-size:18px;margin-bottom:8px}.empty-state p{font-size:14px;margin-bottom:20px}.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f0f0f0;border-radius:50%;border-top-color:#c0392b;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.error-message{background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:8px;color:#e74c3c}.error-message,.success-message{font-size:14px;margin-bottom:20px;padding:12px 16px}.success-message{background:#27ae601a;border:1px solid #27ae604d;border-radius:8px;color:#27ae60}
/*# sourceMappingURL=main.98e0d0ad.css.map*/