.navigation{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:100;width:100%}.nav-container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;height:70px}.nav-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:#fff;font-weight:700;font-size:1.25rem;transition:all .2s ease}.nav-logo:hover{transform:translateY(-1px)}.nav-logo-icon{width:110px;height:40px;padding:.25rem;border-radius:.5rem;display:flex;align-items:center;justify-content:center}.nav-logo-icon img{max-width:100%;height:auto}.nav-logo-text{color:#fff}.nav-links{display:flex;align-items:center;gap:.5rem}.nav-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:.5rem;text-decoration:none;color:#ffffffb3;font-weight:500;font-size:.875rem;transition:all .2s ease;border:1px solid transparent}.nav-link:hover{color:#fff;background:#ffffff1a;border-color:#fff3}.nav-link--active{color:#fff;background:#7c3aed4d;border-color:#7c3aed80;box-shadow:0 0 20px #7c3aed33}.nav-link--active:hover{background:#7c3aed66}.breadcrumb-item{color:#fff9;font-size:.875rem;font-weight:500;padding:.5rem 1rem;background:#ffffff0d;border-radius:.375rem;border:1px solid rgba(255,255,255,.1)}@media (max-width: 768px){.nav-container{flex-direction:column;height:auto;padding:1rem;gap:1rem}.nav-links{order:2;width:100%;justify-content:center}.nav-breadcrumb{order:3}.nav-link{flex:1;justify-content:center;min-width:0}.nav-link span{display:none}}@media (max-width: 480px){.nav-logo-text{display:none}.nav-container{padding:.75rem}.breadcrumb-item{font-size:.75rem;padding:.375rem .75rem}}.homepage{min-height:100vh}.homepage .container{padding:1rem}.main-content{display:flex;justify-content:center;align-items:center;min-height:80vh}.welcome-section{text-align:center;max-width:900px;margin:0 auto}.welcome-title{font-size:3rem;font-weight:700;color:#fff;margin-bottom:2rem;line-height:1.2}.welcome-description{font-size:1.125rem;color:#d1d5db;margin-bottom:3rem;line-height:1.6}.auth-section{margin-bottom:4rem}.info-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}.info-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;padding:2rem;text-align:center;transition:all .3s ease;display:flex;gap:2rem;flex-direction:column}.info-card:hover{background:#ffffff1a;transform:translateY(-2px)}.info-icon{width:4rem;height:4rem;background:#7c3aed33;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#a78bfa}.info-card h3{color:#fff;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.info-card p{color:#d1d5db;font-size:.875rem;line-height:1.5}@media (max-width: 768px){.welcome-title{font-size:2rem}.welcome-description{font-size:1rem}.info-cards{grid-template-columns:1fr;gap:1.5rem}.main-content{min-height:70vh}}@media (max-width: 480px){.welcome-title{font-size:1.75rem}.info-card{padding:1.5rem}.homepage .container{padding:1rem .5rem}}.candidate-card{background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:16px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000001a}.candidate-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0003;border-color:#ffffff40;background:#ffffff1f}.candidate-card.eliminated{opacity:.6;filter:grayscale(100%)}.candidate-card.voted-for{border-color:#10b981;box-shadow:0 0 0 2px #10b98133,0 8px 32px #10b98126}.elimination-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;backdrop-filter:blur(3px) grayscale(100%);-webkit-backdrop-filter:blur(3px) grayscale(100%);align-items:center;justify-content:center;z-index:1;animation:fadeIn .5s ease-in-out}.elimination-overlay-tag{border-color:#ff000040;box-shadow:0 0 0 2px #f003,0 8px 32px #ff000026;position:absolute;left:0;padding:.5rem;background:#ff000040;width:fit-content;border-bottom-right-radius:6px;font-weight:700;text-transform:uppercase}.revoke-elimination-btn{width:100%;height:44px;border-radius:12px;background:#34d3992d;border:1px solid #00fca8;color:#fff;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:2}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.elimination-badge{background:#fff3;border:2px solid rgba(255,255,255,.3);border-radius:12px;padding:12px 20px;text-align:center;color:#fff;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:1px}.candidate-content{padding:24px;display:flex;flex-direction:column;height:100%}.candidate-image{width:120px;height:120px;margin:0 auto 20px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);padding:4px;box-shadow:0 8px 24px #00000026}.candidate-image img{width:100%;height:100%;object-fit:cover;border-radius:50%}.candidate-info{text-align:center;margin-bottom:20px;flex-grow:1;display:flex;flex-direction:column;justify-content:center;gap:1rem}.candidate-name{font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:8px;line-height:1.3;min-height:24px}.candidate-description{font-size:14px;color:#ffffffb3;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;display:flex;justify-content:center}.candidate-description span{text-decoration:none}.candidate-stats{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:20px;min-height:32px}.nb_votes-container{display:flex;gap:1rem;line-height:1}.votes-container{display:flex;align-items:center;gap:6px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:20px;padding:6px 12px}.nb_votes-count{font-size:1.3rem}.heart-icon{color:#ef4444}.heart-icon svg{width:100%;height:100%}.votes-count{font-size:14px;font-weight:600;color:#ef4444}.trending-icon{width:18px;height:18px;color:#10b981;animation:pulse 2s infinite}.trending-icon svg{width:100%;height:100%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.candidate-actions{display:flex;gap:8px;margin-top:auto}.vote-btn{flex:1;padding:12px 16px;border:none;border-radius:12px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.vote-btn.primary{background:linear-gradient(135deg,#7c3aed,#3b82f6);color:#fff;box-shadow:0 4px 12px #7c3aed4d}.vote-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed66}.vote-btn.voted{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.vote-btn.disabled{background:#ffffff1a;color:#ffffff80;cursor:not-allowed;border:1px solid rgba(255,255,255,.1)}.vote-btn.loading{pointer-events:none}.loading-text{animation:pulse 1.5s infinite}.eliminate-btn{width:100%;height:44px;border-radius:12px;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.eliminate-btn:hover{background:#ef444440;transform:scale(1.05)}.eliminate-btn svg{width:18px;height:18px}@media (max-width: 768px){.candidate-card{height:380px}.candidate-content{padding:20px}.candidate-image{width:100px;height:100px;margin-bottom:16px}.candidate-name{font-size:16px}.candidate-description{font-size:13px;min-height:57px}}@media (max-width: 480px){.candidate-card{height:360px}.candidate-content{padding:16px}.candidate-image{width:80px;height:80px;margin-bottom:12px}.candidate-name{font-size:15px}.candidate-description{font-size:12px;min-height:54px}.vote-btn{padding:10px 12px;font-size:13px}}.vote-page{padding-bottom:2rem;width:100%;min-height:100vh}.vote-page .container{padding:2rem 1rem;max-width:90%;box-sizing:border-box}.season-info{width:50%;margin-bottom:2rem}.season-info .card{padding:1.5rem}.season-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.season-header h2{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.5rem}.season-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.stat{color:#d1d5db;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.instructions{margin-bottom:2rem;width:50%}.instruction-card{background:#3b82f633;border:1px solid rgba(59,130,246,.3);padding:1.5rem;height:100%}.instruction-content{display:flex;align-items:center;gap:.75rem}.instruction-icon{font-size:1.5rem;color:#60a5fa}.instruction-content h3{color:#fff;font-weight:600;margin-bottom:.25rem}.instruction-content p{color:#bfdbfe;margin:0}.filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.search-container{position:relative;flex:1;min-width:200px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#999;pointer-events:none}.select{min-width:150px}.candidates{margin-bottom:2rem;width:100%}.grid-5{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;width:100%;max-width:100%;box-sizing:border-box}.no-results{text-align:center;padding:4rem 1rem}.no-results h3{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:1rem}.no-results p{color:#d1d5db}.auth-required{display:flex;align-items:center;justify-content:center;min-height:60vh}.auth-required .card{text-align:center;max-width:400px;padding:2rem}.auth-required h2{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:1rem}.auth-required p{color:#d1d5db;margin-bottom:1.5rem}@media (max-width: 768px){.vote-page .container{padding:1.5rem .75rem}.grid-5{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.season_instruction_container{flex-direction:column;width:100%}.season_instruction_container .season-info,.season_instruction_container .instructions{width:100%;margin-bottom:.5rem}.filters{margin-top:1rem}}@media (max-width: 480px){.vote-page .container{padding:1rem .5rem}.grid-5{grid-template-columns:1fr;gap:1rem}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:modalBackdropFadeIn .3s ease-out}.modal-container{position:relative;width:100%;max-width:28rem;background:#ffffff14;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;box-shadow:0 20px 40px #0000001a;transform:scale(.95);transition:all .3s cubic-bezier(.4,0,.2,1);animation:modalSlideIn .3s ease-out}.modal-success{border:1px solid rgba(16,185,129,.3);box-shadow:0 20px 40px #10b98126,0 4px 20px #0000001a}.modal-error{border:1px solid rgba(239,68,68,.3);box-shadow:0 20px 40px #ef444426,0 4px 20px #0000001a}.modal-warning{border:1px solid rgba(245,158,11,.3);box-shadow:0 20px 40px #f59e0b26,0 4px 20px #0000001a}.modal-info{border:1px solid rgba(59,130,246,.3);box-shadow:0 20px 40px #3b82f626,0 4px 20px #0000001a}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1.5rem 1rem}.modal-header-content{display:flex;align-items:center;gap:.75rem}.modal-icon{padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.modal-icon-success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#10b981}.modal-icon-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.modal-icon-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:#f59e0b}.modal-icon-info{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#3b82f6}.modal-title{font-size:1.125rem;font-weight:700;color:#fff;margin:0;line-height:1.3}.modal-close-btn{padding:.5rem;border-radius:50%;color:#fff9;background:none;border:none;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{color:#fff;background:#ffffff1a}.modal-content{padding:0 1.5rem 1.5rem}.modal-data{margin-bottom:1rem}.modal-data-string{color:#fffc;line-height:1.6;margin:0}.modal-data-object{display:flex;flex-direction:column;gap:.5rem}.modal-data-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.modal-data-key{color:#fff9;text-transform:capitalize;font-weight:500;min-width:0;flex-shrink:0}.modal-data-value{color:#ffffffe6;text-align:right;flex:1;word-break:break-word}.modal-data-json{color:#fffc;font-size:.875rem;white-space:pre-wrap;overflow:auto;max-height:10rem;margin:0;padding:.75rem;background:#0003;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.modal-children{color:#fffc}.modal-actions{padding:0 1.5rem 1.5rem}.modal-btn-primary{width:100%;padding:.75rem 1rem;border:none;border-radius:12px;font-weight:600;color:#fff;background:linear-gradient(135deg,#7c3aed,#3b82f6);box-shadow:0 4px 12px #7c3aed4d;cursor:pointer;transition:all .2s ease;font-size:.875rem}.modal-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed66}.modal-btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #7c3aed4d}@keyframes modalBackdropFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.modal-backdrop{padding:.5rem}.modal-container{max-width:100%;margin:0 .5rem}.modal-header{padding:1.25rem 1.25rem .75rem}.modal-content,.modal-actions{padding:0 1.25rem 1.25rem}.modal-title{font-size:1rem}.modal-data-row{flex-direction:column;gap:.25rem;align-items:flex-start}.modal-data-key{font-size:.875rem}.modal-data-value{text-align:left;font-size:.875rem}}@media (max-width: 480px){.modal-header{padding:1rem 1rem .5rem}.modal-content,.modal-actions{padding:0 1rem 1rem}.modal-header-content{gap:.5rem}.modal-icon{padding:.375rem}.modal-title{font-size:.9rem}.modal-btn-primary{padding:.625rem .875rem;font-size:.8rem}}.admin-page{min-height:100vh}.admin-page .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-page .header-left{display:flex;align-items:center;gap:20px}.admin-page .logo{display:flex;align-items:center;gap:12px}.admin-page .logo-icon{font-size:24px;background:#e74c3c;padding:6px;border-radius:6px}.admin-page .logo h1{font-size:24px;font-weight:700;color:#fff}.admin-page .admin-alert{margin:1rem;width:100%}.admin-page .alert-card{background:#e74c3c33;border-color:#e74c3c66}.admin-page .alert-content{display:flex;align-items:center;gap:15px}.admin-page .alert-icon{font-size:20px}.admin-page .alert-content h3{margin-bottom:5px;color:#fff}.admin-page .alert-content p{color:#bdc3c7;margin:0;font-size:14px}.controls{margin:1rem;width:100%}.admin-page .controls{margin-bottom:40px}.admin-page .controls .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.admin-page .control-title{font-size:16px;font-weight:700;margin-bottom:15px;color:#fff}.control-title{display:flex;align-items:center}.admin-page .stats-list{display:flex;flex-direction:column;gap:8px}.admin-page .stat-row{display:flex;justify-content:space-between;color:#fff;font-size:14px}.admin-page .actions{display:flex;flex-direction:column;gap:8px}.admin-page .top-candidate{color:#fff}.admin-page .candidate-name{font-weight:700;margin-bottom:4px}.admin-page .candidate-votes{font-size:14px;color:#bdc3c7}.admin-page .candidates-section{margin-bottom:40px}.admin-page .section-title{font-size:24px;font-weight:700;margin-bottom:20px;color:#fff}.admin-page .candidates-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem}.admin-page .access-denied{display:flex;align-items:center;justify-content:center;min-height:60vh}.admin-page .access-denied .card{text-align:center;max-width:400px}.admin-page .access-icon{font-size:64px;margin-bottom:20px}.admin-page .access-denied h2{font-size:24px;margin-bottom:15px;color:#fff}.admin-page .access-denied p{color:#bdc3c7;margin-bottom:25px}.section-title{display:flex;align-items:center}.admin-vote-count{display:flex;justify-content:start;padding:.4rem}.admin-vote-delete{position:absolute;right:0;padding:.4rem;cursor:pointer;transition:.3s}.admin-vote-delete:hover{transform:scale(1.2)}.admin-vote-supress{position:absolute;right:0;transition:.3s;cursor:pointer;padding:.4rem;z-index:10000}.admin-vote-supress:hover{transform:scale(1.1)}@media (max-width: 1280px){.admin-page .candidates-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 1024px){.admin-page .controls .grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.admin-page .header{flex-direction:column;gap:20px}.admin-page .controls .grid-4{grid-template-columns:1fr}.admin-page .candidates-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.admin-page .controls .grid-4{grid-template-columns:1fr}}@media (max-width: 480px){.admin-page .candidates-grid{grid-template-columns:1fr}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#1e1b4b,#1e3a8a,#312e81);background-size:cover;height:100%;width:100%;color:#fff}.status-indicators{width:100%;display:flex;gap:1rem}.container{max-width:90%;margin:0 auto;padding:0 1rem}.season_instruction_container{display:flex;gap:1rem;width:100%}.btn{width:290px;margin:0 auto;padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;font-size:1rem;text-align:center;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#7c3aed,#3b82f6);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 25px #7c3aed4d}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.__twitch{width:100%;max-width:280px;font-size:.8rem;display:block;margin:0 auto;background:linear-gradient(135deg,#9146ff,#6441a5);border:none;color:#fff;font-weight:700;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 8px #9146ff4d}.__twitch:hover{transform:translateY(-2px);box-shadow:0 6px 12px #9146ff80}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-outline:hover:not(:disabled){background:#ffffff1a}.btn-sm{padding:.5rem 1rem;font-size:.75rem}.btn-lg{padding:1rem 2rem;font-size:1.125rem}.card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:1rem;padding:1.5rem}.alert-card{display:flex;gap:1rem;margin-bottom:1rem;height:100%}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-primary{background:#7c3aed;color:#fff}.badge-success{background:#10b981;color:#fff}.badge-danger{background:#ef4444;color:#fff}.badge-secondary{background:#fff3;color:#fff}.input{width:100%;padding:.75rem 2.2rem;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;background:#ffffff1a;color:#fff;font-size:.875rem}.input::placeholder{color:#ffffff80}.input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a}.select{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;background:#ffffff1a;color:#fff;font-size:.875rem;cursor:pointer}.select:focus{outline:none;border-color:#7c3aed}.grid{display:grid;gap:1.5rem}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.sm\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 768px){.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:grid-cols-5{grid-template-columns:repeat(5,1fr)}}@media (min-width: 1280px){.xl\:grid-cols-5{grid-template-columns:repeat(5,1fr)}}.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-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-16{padding-top:4rem;padding-bottom:4rem}.px-4{padding-left:1rem;padding-right:1rem}.opacity-50{opacity:.5}.grayscale{filter:grayscale(100%)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.transition-all{transition:all .3s ease}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:shadow-xl:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.text-red-400{color:#f87171}.text-blue-400{color:#60a5fa}.text-yellow-400{color:#fbbf24}.text-purple-400{color:#a78bfa}.bg-green-600{background-color:#059669}.bg-red-500{background-color:#ef4444}.bg-blue-500{background-color:#3b82f6}.bg-purple-600{background-color:#7c3aed}.ring-2{box-shadow:0 0 0 2px currentColor}.ring-green-500{--tw-ring-color: #10b981;box-shadow:0 0 0 2px var(--tw-ring-color)}.aspect-square{aspect-ratio:1 / 1}.rounded-lg{border-radius:.5rem}.rounded-full{border-radius:9999px}.overflow-hidden{overflow:hidden}.object-cover{object-fit:cover}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.relative{position:relative}.absolute{position:absolute}.inset-0{top:0;right:0;bottom:0;left:0}.z-10{z-index:10}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.max-w-md{max-width:28rem}.max-w-2xl{max-width:42rem}.mx-auto{margin-left:auto;margin-right:auto}.leading-tight{line-height:1.25}.leading-relaxed{line-height:1.625}.text-transparent{color:transparent}.bg-clip-text{background-clip:text;-webkit-background-clip:text}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-yellow-400{--tw-gradient-from: #fbbf24;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(251, 191, 36, 0))}.to-orange-500{--tw-gradient-to: #f97316}.from-purple-600{--tw-gradient-from: #7c3aed;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(124, 58, 237, 0))}.to-blue-600{--tw-gradient-to: #2563eb}.from-purple-700{--tw-gradient-from: #6d28d9;--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(109, 40, 217, 0))}.to-blue-700{--tw-gradient-to: #1d4ed8}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.flex-1{flex:1 1 0%}.w-4{width:1rem}.h-4{height:1rem}.w-5{width:1.25rem}.h-5{height:1.25rem}.w-6{width:1.5rem}.h-6{height:1.5rem}.w-8{width:2rem}.h-8{height:2rem}.w-16{width:4rem}.h-16{height:4rem}.w-48{width:12rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.auth-button__user-info{display:flex;align-items:center;gap:1rem}.auth-button__user-details{display:flex;align-items:center;gap:.5rem}.auth-button__avatar{width:2rem;height:2rem;border-radius:50%;overflow:hidden;background:#7c3aed;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}.auth-button__avatar img{width:100%;height:100%;object-fit:cover}.auth-button__username{font-weight:500;color:#fff}.auth-button__twitch-icon,.auth-button__logout-icon{width:1rem;height:1rem}.user-info__homepage p{font-size:1.2rem}@media (min-width: 640px){.sm\:flex-row{flex-direction:row}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}}.admin-login{min-height:100vh;background:linear-gradient(135deg,#1e1b4b,#1e3a8a,#312e81);position:relative}.admin-login:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.15) 0%,transparent 50%);pointer-events:none}.admin-login__container{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 70px);padding:2rem 1rem;position:relative;z-index:1}.admin-login__content{background:#ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:3rem;width:100%;max-width:480px;box-shadow:0 20px 40px #0000001a}.admin-login__header{text-align:center;margin-bottom:2rem}.admin-login__icon{width:80px;height:80px;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;box-shadow:0 8px 24px #ef44444d}.admin-login__title{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.5rem;line-height:1.2}.admin-login__subtitle{color:#ffffffb3;font-size:1rem;line-height:1.5}.admin-login__warning{display:flex;align-items:center;gap:.75rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:1rem;margin-bottom:1.5rem;color:#fca5a5;font-size:.875rem;font-weight:500}.admin-login__demo{background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.admin-login__demo h3{color:#60a5fa;font-size:1rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.demo-credentials{display:flex;flex-direction:column;gap:.75rem}.credential-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.credential-item .label{color:#ffffffb3;min-width:100px}.credential-item code{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:.25rem .5rem;color:#60a5fa;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;-webkit-user-select:all;user-select:all}.admin-login__form{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;color:#fff;font-weight:600;font-size:.875rem;margin-bottom:.5rem}.form-input{width:100%;padding:1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.form-input:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a;background:#ffffff1f}.form-input::placeholder{color:#fff6}.form-input:disabled{opacity:.5;cursor:not-allowed}.password-input-container{position:relative}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff9;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:#fffc}.password-toggle:disabled{opacity:.5;cursor:not-allowed}.error-message{display:flex;align-items:center;gap:.5rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:.75rem;color:#fca5a5;font-size:.875rem;margin-bottom:1rem}.attempts{margin-left:auto;font-weight:600;color:#ef4444}.blocked-message{display:flex;align-items:center;gap:.5rem;background:#ef444433;border:1px solid rgba(239,68,68,.4);border-radius:8px;padding:1rem;color:#fca5a5;font-size:.875rem;font-weight:600;margin-bottom:1rem;text-align:center}.submit-btn{width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;color:#fff;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px #ef44444d}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.admin-login__footer{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.footer-link{color:#ffffffb3;text-decoration:none;font-size:.875rem;font-weight:500;transition:color .2s ease}.footer-link:hover{color:#fff}.admin-login__security{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.security-item{display:flex;align-items:center;gap:.5rem;color:#fff9;font-size:.75rem;text-align:center;justify-content:center}.security-icon{font-size:1rem}@media (max-width: 768px){.admin-login__container{padding:1rem}.admin-login__content{padding:2rem;border-radius:16px}.admin-login__title{font-size:1.5rem}.admin-login__icon{width:60px;height:60px;margin-bottom:1rem}.admin-login__footer{flex-direction:column;gap:1rem}.admin-login__security{grid-template-columns:1fr;gap:.75rem}}@media (max-width: 480px){.admin-login__content{padding:1.5rem}.demo-credentials{gap:.5rem}.credential-item{flex-direction:column;align-items:flex-start;gap:.25rem}.credential-item .label{min-width:auto}}.candidate-registration{min-height:100vh;background:linear-gradient(135deg,#1e1b4b,#1e3a8a,#312e81);position:relative}.candidate-registration:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 70%,rgba(16,185,129,.15) 0%,transparent 50%),radial-gradient(circle at 70% 30%,rgba(59,130,246,.1) 0%,transparent 50%);pointer-events:none}.candidate-registration__container{position:relative;z-index:1;padding:2rem 1rem;max-width:800px;margin:0 auto}.registration-content{background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:24px;overflow:hidden}.registration-header{text-align:center;padding:3rem 2rem 2rem;background:linear-gradient(135deg,#10b9811a,#3b82f61a);border-bottom:1px solid rgba(255,255,255,.1)}.header-icon{width:80px;height:80px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;box-shadow:0 8px 24px #10b9814d}.header-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.75rem;line-height:1.2}.header-subtitle{color:#fffc;font-size:1.125rem;line-height:1.6;max-width:600px;margin:0 auto}.form-container{padding:3rem}.registration-form{display:flex;flex-direction:column;gap:3rem}.form-section{display:flex;flex-direction:column}.form-section-header h2{color:#fff;font-size:1.25rem;font-weight:600;margin-bottom:.55rem;display:flex;align-items:center;gap:.5rem}.form-section-header p{color:#ffffffb3;font-size:1rem;margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{color:#fff;font-weight:600;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.form-label.required:after{content:"*";color:#ef4444;margin-left:.25rem}.form-input,.form-textarea{padding:1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;font-size:1rem;transition:all .2s ease;resize:vertical}.form-input:focus,.form-textarea:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;background:#ffffff1f}.form-input::placeholder,.form-textarea::placeholder{color:#fff6}.form-input.error,.form-textarea.error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.error-text{color:#fca5a5;font-size:.875rem;font-weight:500}.form-hint{color:#fff9;font-size:.75rem;font-style:italic}.character-count{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:#fff9}.character-count .error{color:#ef4444}.character-count .minimum{color:#ffffff80}.photo-upload-container{position:relative}.photo-input{position:absolute;opacity:0;pointer-events:none}.photo-upload-label{display:block;cursor:pointer;border-radius:12px;overflow:hidden;transition:all .2s ease}.photo-upload-label.uploading{cursor:not-allowed}.photo-placeholder{background:#ffffff0d;border:2px dashed rgba(255,255,255,.3);border-radius:12px;padding:3rem 2rem;text-align:center;color:#ffffffb3;transition:all .2s ease}.photo-placeholder:hover{border-color:#10b981;background:#10b9810d;color:#10b981}.photo-placeholder span{display:block;font-weight:600;margin:.5rem 0}.photo-placeholder small{font-size:.75rem;opacity:.8}.upload-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;color:#10b981;background:#10b9810d;border:2px solid rgba(16,185,129,.3);border-radius:12px}.photo-uploaded{display:flex;align-items:center;justify-content:space-between;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:12px;padding:1rem}.photo-info{display:flex;flex-direction:column;gap:.25rem}.photo-info span{color:#10b981;font-weight:600;font-size:.875rem}.photo-info small{color:#fff9;font-size:.75rem;word-break:break-all}.remove-photo-btn{background:#ef444433;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;padding:.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.remove-photo-btn:hover{background:#ef44444d}.conditions-box{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:1.5rem;color:#ffffffe6}.conditions-box h3{color:#60a5fa;font-size:1rem;font-weight:600;margin-bottom:1rem}.conditions-box ul{list-style:none;padding:0;margin:0}.conditions-box li{padding:.5rem 0 .5rem 1.5rem;position:relative;font-size:.875rem;line-height:1.5}.conditions-box li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.form-actions{display:flex;flex-direction:column;gap:1rem;align-items:center;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.submit-btn{width:100%;max-width:400px;padding:1.25rem 2rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;color:#fff;font-weight:600;font-size:1.125rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:0 4px 12px #10b9814d}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.submit-btn.loading{pointer-events:none}.cancel-link{color:#ffffffb3;text-decoration:none;font-size:.875rem;transition:color .2s ease}.cancel-link:hover{color:#fff}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-content{text-align:center;padding:4rem 2rem;max-width:600px;margin:0 auto}.success-icon{width:120px;height:120px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;color:#fff;box-shadow:0 20px 40px #10b9814d}.success-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:1rem}.success-message{color:#fffc;font-size:1.125rem;line-height:1.6;margin-bottom:2rem}.success-info{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;margin-bottom:3rem;text-align:left}.info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.info-item:last-child{border-bottom:none}.info-label{color:#ffffffb3;font-weight:600}.twitch-link{color:#a855f7;text-decoration:none;font-size:.875rem}.twitch-link:hover{text-decoration:underline}.success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.text-green-400{color:#34d399}.form-upload-link a{color:#fff;text-decoration:underline}@media (max-width: 768px){.candidate-registration__container{padding:1rem}.registration-content{border-radius:16px}.registration-header{padding:2rem 1.5rem 1.5rem}.header-title{font-size:2rem}.header-icon{width:60px;height:60px;margin-bottom:1rem}.form-container{padding:2rem 1.5rem}.form-row{grid-template-columns:1fr;gap:1rem}.success-content{padding:3rem 1.5rem}.success-title{font-size:2rem}.success-actions{flex-direction:column;align-items:center}.success-actions .btn{width:100%;max-width:300px}.info-item{flex-direction:column;align-items:flex-start;gap:.25rem}}@media (max-width: 480px){.registration-header,.form-container{padding:1.5rem 1rem}.form-input,.form-textarea{padding:.875rem}.photo-placeholder{padding:2rem 1rem}.submit-btn{font-size:1rem;padding:1rem 1.5rem}}.footer{text-align:center;padding:1rem;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);position:sticky;top:0;z-index:100;width:100%;font-size:.9rem;color:#fff}.footer a{text-decoration:none;font-weight:500;color:#fff}.footer a:hover{text-decoration:underline}
