@import "https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700;800&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}img,svg,video{max-width:100%;display:block}input,button,textarea,select{font:inherit}ul,ol{list-style:none}a{color:inherit;text-decoration:none}:root{--green:#00a651;--green-light:#00c962;--green-dark:#007a3d;--red:#d32f2f;--red-light:#ef5350;--red-dark:#b71c1c;--gold:#f9a825;--gold-light:#ffc107;--gold-dark:#e65100;--blue:#1565c0;--blue-light:#1976d2;--blue-dark:#0d47a1;--bg-primary:#fff;--bg-secondary:#f5f7fa;--bg-elevated:#fff;--bg-surface:#f0f2f5;--text-primary:#1a1a2e;--text-secondary:#4a5568;--text-muted:#9aa5b4;--text-inverse:#fff;--text-on-green:#fff;--border-subtle:#e2e8f0;--border-medium:#cbd5e0;--border-focus:var(--green);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--font-heading:"Comfortaa", cursive;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--shadow-sm:0 1px 4px #00000014;--shadow-md:0 4px 16px #0000001a;--shadow-lg:0 8px 32px #00000021;--shadow-xl:0 16px 48px #00000029;--card-bg:#fff;--card-border:#e2e8f0;--card-shadow:0 2px 12px #00000014;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--glass-bg:#ffffff0d;--glass-bg-hover:#ffffff14;--glass-border:1px solid #ffffff1f;--glass-blur:blur(16px)}body{font-family:var(--font-body);background:var(--bg-secondary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6;overflow-x:hidden}#root{min-height:100vh}.container{width:100%;max-width:1200px;padding:0 var(--space-md);margin:0 auto}.container-sm{max-width:600px}.container-md{max-width:800px}.glass-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--card-shadow);transition:box-shadow var(--transition-base)}.glass-card:hover{box-shadow:var(--shadow-md)}.glass-card-solid{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-xl);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;-webkit-user-select:none;user-select:none;letter-spacing:.01em;border:2px solid #0000;padding:12px 24px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--green);color:#fff;box-shadow:0 4px 14px #00a65159}.btn-primary:hover:not(:disabled){background:var(--green-dark);transform:translateY(-1px);box-shadow:0 6px 20px #00a65173}.btn-secondary{background:var(--red);color:#fff;box-shadow:0 4px 14px #d32f2f4d}.btn-secondary:hover:not(:disabled){background:var(--red-dark);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border:2px solid var(--border-medium);background:0 0}.btn-outline:hover:not(:disabled){border-color:var(--green);color:var(--green);background:#00a6510d}.btn-gold{background:var(--gold);color:var(--text-primary);box-shadow:0 4px 14px #f9a82559}.btn-gold:hover:not(:disabled){background:var(--gold-dark);color:#fff;transform:translateY(-1px)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover:not(:disabled){background:var(--red-dark)}.btn-sm{font-size:var(--text-xs);border-radius:var(--radius-lg);padding:7px 16px}.btn-lg{font-size:var(--text-base);padding:14px 32px}.btn-block{width:100%}.btn-icon{border-radius:var(--radius-full);aspect-ratio:1;width:44px;padding:10px}@media (width>=640px){.btn{font-size:var(--text-base);padding:13px 28px}.btn-lg{font-size:var(--text-lg);padding:16px 40px}}.form-group{margin-bottom:var(--space-lg)}.form-label{margin-bottom:var(--space-sm);font-size:var(--text-sm);color:var(--text-secondary);font-weight:600;display:block}.form-input,.form-select{background:var(--bg-secondary);border:2px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:var(--text-base);transition:all var(--transition-base);outline:none;padding:13px 16px}.form-input::placeholder{color:var(--text-muted)}.form-input:focus,.form-select:focus{border-color:var(--green);background:#fff;box-shadow:0 0 0 3px #00a65126}.form-input.error,.form-select.error{border-color:var(--red);box-shadow:0 0 0 3px #d32f2f1f}.form-error{margin-top:var(--space-xs);font-size:var(--text-sm);color:var(--red)}.form-hint{margin-top:var(--space-xs);font-size:var(--text-xs);color:var(--text-muted)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%234a5568' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.form-select option{color:var(--text-primary);background:#fff}.step-indicator{justify-content:center;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xl);display:flex}.step-dot{border-radius:var(--radius-full);background:var(--border-medium);width:10px;height:10px;transition:all var(--transition-base)}.step-dot.active{background:var(--green);width:32px;box-shadow:0 0 0 3px #00a65133}.step-dot.completed{background:var(--green-dark)}.step-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.team-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px;display:grid}.team-card{border:2px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;display:flex}.team-card:hover:not(.disabled):not(.selected){border-color:var(--green);transform:translateY(-2px);box-shadow:0 2px 8px #00a65126}.team-card.selected{border-color:var(--green);background:#00a65114;box-shadow:0 0 0 3px #00a65133}.team-card.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.team-card .team-flag{object-fit:cover;border-radius:3px;width:48px;height:auto;display:block;box-shadow:0 1px 4px #00000026}.team-card .team-name{color:var(--text-secondary);text-align:center;font-size:.62rem;font-weight:600;line-height:1.2}@media (width>=640px){.team-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.team-card{padding:10px 6px}.team-card .team-flag{width:56px}.team-card .team-name{font-size:var(--text-xs)}}.selection-slots{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.selection-slot{border:2px dashed var(--border-medium);border-radius:var(--radius-lg);min-height:90px;transition:all var(--transition-base);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:12px 6px;display:flex}.selection-slot.filled{border-style:solid}.selection-slot.gold-border{border-color:var(--gold);background:#f9a8250f}.selection-slot.silver-border{background:#9e9e9e0f;border-color:#9e9e9e}.selection-slot.bronze-border{background:#bf8c5a0f;border-color:#bf8c5a}.selection-slot.filled:not(.gold-border):not(.silver-border):not(.bronze-border){border-color:var(--green);background:#00a6510f}.selection-slot .slot-emoji{font-size:1.4rem}.selection-slot .slot-label{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.selection-slot .slot-flag{border-radius:3px;width:44px;height:auto;box-shadow:0 1px 4px #00000026}.selection-slot .slot-team{font-size:var(--text-xs);color:var(--text-primary);text-align:center;font-weight:700}@media (width>=640px){.selection-slots{grid-template-columns:repeat(4,1fr)}.selection-slot{min-height:110px;padding:var(--space-md) var(--space-sm)}.selection-slot .slot-flag{width:52px}.selection-slot .slot-team{font-size:var(--text-sm)}}.confed-tabs{margin-bottom:var(--space-md);scrollbar-width:none;gap:6px;padding-bottom:6px;display:flex;overflow-x:auto}.confed-tabs::-webkit-scrollbar{display:none}.confed-tab{border-radius:var(--radius-full);font-size:var(--text-xs);white-space:nowrap;border:2px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);background:#fff;padding:6px 14px;font-weight:700}.confed-tab:hover{border-color:var(--green);color:var(--green)}.confed-tab.active{background:var(--green);color:#fff;border-color:var(--green)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes checkmark{0%{stroke-dashoffset:50px}to{stroke-dashoffset:0}}@keyframes bounce{0%,53%,to{transform:translateY(0)}40%{transform:translateY(-16px)}70%{transform:translateY(-8px)}}@keyframes stripeMove{0%{background-position:0 0}to{background-position:40px 0}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease forwards}.animate-fade-in-up{animation:.5s forwards fadeInUp}.animate-fade-in-down{animation:.5s forwards fadeInDown}.animate-scale-in{animation:scaleIn var(--transition-spring) forwards}.animate-slide-up{animation:.5s forwards slideUp}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-float{animation:3s ease-in-out infinite float}.animate-bounce{animation:.8s bounce}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.page-transition{animation:.35s forwards fadeInUp}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}.heading{font-family:var(--font-heading);font-weight:700;line-height:1.2}.heading-xl{font-size:clamp(1.6rem,6vw,2.5rem)}.heading-lg{font-size:clamp(1.3rem, 4vw, var(--text-3xl))}.heading-md{font-size:clamp(1.1rem, 3vw, var(--text-2xl))}.heading-sm{font-size:var(--text-xl)}.text-center{text-align:center}.text-left{text-align:left}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-blue{color:var(--blue)}.text-green{color:var(--green)}.text-gold{color:var(--gold-dark)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.py-2xl{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.py-3xl{padding-top:var(--space-3xl);padding-bottom:var(--space-3xl)}.hero-stripe{background:var(--green);background-image:repeating-linear-gradient(45deg,#ffffff0f 0 10px,#0000 10px 20px);animation:1.5s linear infinite stripeMove}.admin-header{padding:var(--space-md) var(--space-lg);z-index:100;color:#fff;background:#1a1a2e;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.admin-header h1{font-family:var(--font-heading);font-size:var(--text-lg);color:#fff;font-weight:600}.admin-header .btn-outline{color:#fff;border-color:#ffffff80}.admin-header .btn-outline:hover{color:#fff;background:#ffffff1a;border-color:#fff}.admin-content{padding:var(--space-lg) var(--space-md);background:#f5f7fa;max-width:1200px;min-height:calc(100vh - 64px);margin:0 auto}@media (width>=640px){.admin-content{padding:var(--space-xl) var(--space-lg)}}.admin-stat-cards{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.admin-stat-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}.admin-stat-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base);background:#fff}.admin-stat-card:hover{box-shadow:var(--shadow-md)}.admin-stat-value{font-family:var(--font-heading);font-size:var(--text-4xl);color:var(--green);margin-bottom:var(--space-xs);font-weight:700}.admin-stat-label{font-size:var(--text-sm);color:var(--text-secondary)}.admin-nav-cards{gap:var(--space-md);grid-template-columns:1fr;display:grid}@media (width>=480px){.admin-nav-cards{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.admin-nav-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}.admin-nav-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-xl);cursor:pointer;transition:all var(--transition-base);text-align:center;box-shadow:var(--shadow-sm);background:#fff}.admin-nav-card:hover{box-shadow:var(--shadow-md);border-color:var(--green);transform:translateY(-3px)}.admin-nav-card .nav-icon{margin-bottom:var(--space-md);font-size:2.5rem}.admin-nav-card .nav-title{font-family:var(--font-heading);font-size:var(--text-lg);margin-bottom:var(--space-sm);color:var(--text-primary);font-weight:600}.admin-nav-card .nav-desc{font-size:var(--text-sm);color:var(--text-secondary)}.table-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);background:#fff;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th{padding:var(--space-md);text-align:left;color:var(--text-secondary);border-bottom:2px solid var(--border-subtle);white-space:nowrap;background:var(--bg-secondary);font-weight:700}.data-table td{padding:var(--space-md);border-bottom:1px solid var(--border-subtle);white-space:nowrap;color:var(--text-primary)}.data-table tr:hover td{background:#00a6510a}.data-table tr:last-child td{border-bottom:none}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;width:100%;height:100%;padding:var(--space-md);background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;top:0;left:0}.modal-content{border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-xl);background:#fff;animation:.3s scaleIn;overflow-y:auto}.modal-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.modal-title{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:600}.modal-close{color:var(--text-muted);font-size:var(--text-xl);cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-full);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.spinner{border:3px solid var(--border-subtle);border-top-color:var(--green);border-radius:var(--radius-full);width:32px;height:32px;animation:.8s linear infinite spin}.spinner-sm{border-width:2px;width:20px;height:20px}.loading-container{justify-content:center;align-items:center;gap:var(--space-md);padding:var(--space-3xl);flex-direction:column;display:flex}.badge{border-radius:var(--radius-full);font-size:var(--text-xs);align-items:center;padding:4px 12px;font-weight:700;display:inline-flex}.badge-blue{color:var(--blue);background:#1565c01a}.badge-green{color:var(--green-dark);background:#00a6511f}.badge-gold{color:var(--gold-dark);background:#f9a82526}.badge-red{color:var(--red);background:#d32f2f1a}.confetti-container{pointer-events:none;z-index:999;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.confetti-piece{width:10px;height:10px;animation:linear forwards confetti-fall;position:absolute;top:-10px}.back-btn{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-bottom:var(--space-lg);background:0 0;border:none;font-weight:600;display:inline-flex}.back-btn:hover{color:var(--green);background:#00a6510f}.alert{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:var(--text-sm);margin-bottom:var(--space-md);font-weight:500}.alert-error{color:var(--red-dark);background:#d32f2f14;border:1px solid #d32f2f40}.alert-success{color:var(--green-dark);background:#00a65114;border:1px solid #00a65140}.alert-info{color:var(--blue-dark);background:#1565c014;border:1px solid #1565c033}.alert-warning{color:#7c4a00;background:#f9a8251a;border:1px solid #f9a8254d}.whatsapp-float{z-index:900;border-radius:var(--radius-full);cursor:pointer;width:54px;height:54px;transition:all var(--transition-base);background:#25d366;border:none;justify-content:center;align-items:center;animation:2.5s ease-in-out infinite pulse;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 16px #25d36673}.whatsapp-float:hover{transform:scale(1.1)}.whatsapp-float svg{fill:#fff;width:28px;height:28px}.logo-img{border-radius:var(--radius-lg);object-fit:cover;width:120px;height:120px;box-shadow:var(--shadow-md);margin:0 auto}.prize-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;transition:all var(--transition-base);box-shadow:var(--shadow-sm);background:#fff}.prize-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.prize-card .prize-icon{margin-bottom:var(--space-sm);font-size:2rem}.prize-card .prize-name{font-family:var(--font-heading);font-size:var(--text-base);margin-bottom:var(--space-xs);font-weight:600}.prize-card .prize-value{font-size:var(--text-lg);color:var(--gold-dark);font-weight:700}.prizes-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.countdown-grid{gap:var(--space-sm);flex-wrap:wrap;justify-content:center;display:flex}.countdown-item{border:2px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:center;min-width:60px;box-shadow:var(--shadow-sm);background:#fff;padding:12px 16px}.countdown-value{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--green);margin-bottom:2px;font-weight:700;line-height:1}.countdown-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.countdown-seconds .countdown-value{color:var(--red);animation:1s ease-in-out infinite pulse}.success-checkmark{width:80px;height:80px;margin:0 auto var(--space-lg);border-radius:var(--radius-full);background:#00a6511f;justify-content:center;align-items:center;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards scaleIn;display:flex}.success-checkmark svg{width:40px;height:40px}.success-checkmark .checkmark-path{stroke:var(--green);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke-dasharray:50;stroke-dashoffset:50px;animation:.6s .3s forwards checkmark}.filter-row{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.filter-row .form-input,.filter-row .form-select{flex:1;min-width:160px}.empty-state{text-align:center;padding:var(--space-3xl) var(--space-lg)}.empty-state .empty-icon{margin-bottom:var(--space-md);opacity:.4;font-size:3rem}.empty-state .empty-text{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-lg)}
