@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes glow{0%{text-shadow:0 0 10px rgba(255,90,95,.5)}to{text-shadow:0 0 20px rgba(255,90,95,.8),0 0 30px rgba(255,0,128,.6)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 5px rgba(255,90,95,.3)}50%{transform:scale(1.02);box-shadow:0 0 15px rgba(255,90,95,.5)}to{transform:scale(1);box-shadow:0 0 5px rgba(255,90,95,.3)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.tournament-page{position:relative;min-height:100vh;width:100%;padding:100px var(--spacing-lg) var(--spacing-lg);color:var(--color-text-primary);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow:hidden}.tournament-page-header{text-align:center;margin-bottom:var(--spacing-xl);width:100%;z-index:1}.tournament-page-header img{max-width:800px;height:auto;margin:48px auto 24px;display:block;border-radius:16px;box-shadow:none;transition:transform .5s ease;filter:none}.tournament-page-header img:hover{transform:scale(1.01)}.tournament-page p{text-align:center;font-size:1.2rem;margin-bottom:var(--spacing-lg);color:var(--color-text-secondary);max-width:800px;margin-left:auto;margin-right:auto;line-height:1.6;letter-spacing:.3px}.tournament-tabs{display:flex;justify-content:center;margin-bottom:var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.15);padding-bottom:4px}.tab-button,.tournament-tabs{position:relative;overflow:hidden}.tab-button{padding:1rem 2rem;background:transparent;color:var(--color-text-secondary);border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1.1rem;font-weight:600;transition:all .4s cubic-bezier(.175,.885,.32,1.275);letter-spacing:.5px;margin:0 .75rem}.tab-button:hover{color:var(--color-accent);transform:translateY(-2px)}.tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent);text-shadow:0 0 10px var(--color-accent-light)}.tournament-container{animation:fadeIn .8s ease-out .7s forwards;padding:.5rem}.active-tournament{background:rgba(15,23,42,.7);border-radius:20px;padding:2.5rem;margin-bottom:3rem;border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 36px rgba(0,0,0,.25);animation:slideUp .6s ease-out;position:relative;overflow:hidden}.active-tournament:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--tournament-gradient);border-radius:4px 4px 0 0}.tournament-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1.5rem}.tournament-header h3{font-size:2rem;color:var(--tournament-accent);margin:0;text-shadow:0 0 10px var(--tournament-accent-light);position:relative;display:inline-block;font-weight:700;letter-spacing:.5px}.tournament-timer{padding:.85rem 1.5rem;border-radius:12px;display:flex;align-items:center;gap:1rem;border:1px solid rgba(98,0,234,.25);animation:pulse 3s infinite alternate;box-shadow:0 4px 12px rgba(255,90,95,.15)}.timer-label{font-size:1rem;color:rgba(255,255,255,.8);font-weight:500}.timer-value{font-size:1.2rem;font-weight:700;color:var(--tournament-accent);letter-spacing:.5px}.tournament-description{font-size:1.15rem;line-height:1.7;margin-bottom:2rem;color:rgba(255,255,255,.95);padding:1.5rem;background:rgba(0,0,0,.25);border-radius:12px;border-left:4px solid var(--tournament-accent);box-shadow:inset 0 2px 10px rgba(0,0,0,.2)}.tournament-course{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem;background:rgba(255,255,255,.05);border-radius:10px;border:1px solid rgba(255,255,255,.1)}.course-label{font-size:1.05rem;color:rgba(255,255,255,.7);font-weight:500}.course-value{font-size:1.1rem;color:#fff;font-weight:600}.tournament-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.tournament-detail{background:rgba(255,255,255,.05);padding:1rem 1.5rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:.5rem}.detail-label{font-size:.9rem;color:rgba(255,255,255,.7);font-weight:500}.detail-value{font-size:1.1rem;color:#fff;font-weight:600}.tournament-prizes{margin-bottom:2.5rem}.tournament-prizes h4{font-size:1.5rem;color:var(--tournament-accent);margin-bottom:1.5rem;position:relative;display:inline-block;font-weight:700}.tournament-prizes h4:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:var(--tournament-gradient);border-radius:3px}.prizes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}.prize-item{background:rgba(15,23,42,.5);padding:1.25rem;border-radius:12px;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease;border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 12px rgba(0,0,0,.15)}.prize-item:hover{background:rgba(15,23,42,.7);transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,.25);border-color:var(--tournament-accent-light)}.prize-rank{font-weight:700;color:var(--tournament-accent);background:rgba(98,0,234,.15);padding:.4rem 1rem;border-radius:8px;transition:all .3s ease;letter-spacing:.5px}.prize-reward{color:rgba(255,255,255,.95);font-weight:600;font-size:1.05rem}.tournament-participation{background:rgba(15,23,42,.5);padding:2rem;border-radius:16px;margin-bottom:2.5rem;border:1px solid rgba(255,255,255,.08);text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.2)}.user-score{display:flex;justify-content:center;align-items:center;gap:1.25rem;margin-bottom:1.5rem}.score-label{font-size:1.2rem;color:rgba(255,255,255,.8);font-weight:600}.score-value{font-size:2.5rem;font-weight:800;color:var(--color-accent);text-shadow:none;animation:none;letter-spacing:1px}.participation-message{font-size:1.15rem;color:rgba(255,255,255,.95);margin-bottom:2rem;line-height:1.6}.start-quiz-button{padding:1rem 2.5rem;background:var(--tournament-gradient);background-size:200% auto;color:white;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 6px 18px rgba(255,90,95,.35);letter-spacing:.5px}.start-quiz-button:hover{box-shadow:0 10px 28px rgba(255,90,95,.45)}.register-button{padding:1rem 2.5rem;background:var(--tournament-gradient);background-size:200% auto;color:white;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:1.15rem;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 6px 18px rgba(255,90,95,.35);letter-spacing:.5px;display:block;margin:0 auto 2.5rem;max-width:320px;width:100%}.register-button:hover{background-position:100%;transform:translateY(-5px) scale(1.05);box-shadow:0 10px 28px rgba(255,90,95,.45)}.tournament-leaderboard{margin-bottom:2.5rem}.tournament-leaderboard h4{font-size:1.5rem;color:var(--tournament-accent);margin-bottom:1.5rem;position:relative;display:inline-block;font-weight:700}.tournament-leaderboard h4:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:var(--tournament-gradient);border-radius:3px}.leaderboard-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:1.5rem;background:rgba(15,23,42,.5);border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.25)}.leaderboard-table thead{background:rgba(15,23,42,.7)}.leaderboard-table th{padding:1.25rem 1.5rem;text-align:left;color:rgba(255,255,255,.95);font-weight:700;border-bottom:2px solid var(--tournament-accent-light);letter-spacing:.5px;font-size:1.05rem}.leaderboard-table td{padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.9);transition:all .3s ease;font-size:1rem}.leaderboard-table tr:hover td{background:rgba(98,0,234,.08)}.leaderboard-table tr.current-user td{background:rgba(98,0,234,.15);font-weight:600}.no-participants{text-align:center;padding:2rem;color:rgba(255,255,255,.7);font-style:italic;background:rgba(15,23,42,.3);border-radius:12px;border:1px dashed rgba(255,255,255,.15)}.upcoming-tournaments{margin-top:4rem;position:relative}.upcoming-tournaments h3{font-size:2rem;color:var(--color-accent);margin-bottom:2rem;text-align:center;font-weight:700;background:var(--gradient-accent);-webkit-background-clip:text;background-clip:text;color:transparent}.upcoming-tournaments h3:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:60px;height:3px;background:var(--tournament-gradient);border-radius:3px}.tournament-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.tournament-card{background:rgba(20,20,40,.92);border-radius:20px;padding:1.75rem;border:2px solid var(--color-accent);transition:all .3s cubic-bezier(.175,.885,.32,1.275);cursor:pointer;display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(98,0,234,.1);margin-bottom:1.5rem}.tournament-card:hover{border-color:var(--color-accent-light);box-shadow:0 12px 30px var(--color-accent-light);background:rgba(30,41,59,.97);transform:translateY(-8px) scale(1.02)}.tournament-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,var(--tournament-accent),var(--tournament-secondary-light));border-radius:4px 0 0 4px}.tournament-card h4{font-size:1.4rem;margin-bottom:1rem;color:var(--color-accent);font-weight:700;letter-spacing:.5px;text-align:center}.tournament-card p{color:var(--color-text-secondary);text-align:center}.tournament-course{font-size:1.05rem;color:rgba(255,255,255,.9);margin-bottom:1rem;font-weight:500}.tournament-fee,.tournament-time{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;font-size:1rem;color:rgba(255,255,255,.8);transition:all .4s ease}.tournament-time:before{content:"🕒";font-size:1rem}.tournament-fee:before{content:"💰";font-size:1rem}.tournament-top-prize{margin-top:auto;padding-top:1rem;border-top:1px solid rgba(255,255,255,.15);font-size:1rem;color:var(--tournament-accent);font-weight:600;display:flex;align-items:center;gap:.75rem;transition:all .4s ease}.tournament-top-prize:before{content:"🏆";font-size:1.1rem}.no-active-tournament{text-align:center;padding:4rem 2rem;background:rgba(15,23,42,.5);border-radius:16px;border:1px dashed rgba(255,255,255,.15);margin-bottom:3rem;box-shadow:0 8px 24px rgba(0,0,0,.2)}.no-active-tournament p{color:rgba(255,255,255,.8);font-size:1.3rem;margin-bottom:0;font-weight:500;letter-spacing:.5px}.tournament-page-info{display:flex;justify-content:center;gap:32px;margin-top:32px;flex-wrap:wrap;z-index:1}.info-card{background:rgba(20,20,40,.92);border-radius:16px;padding:2rem;border:2px solid var(--color-accent);box-shadow:0 8px 32px rgba(98,0,234,.1);min-width:280px;text-align:center}.info-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px var(--color-accent-light);border-color:var(--color-accent-light)}.info-card h3{font-size:1.5rem;color:var(--color-accent);margin-bottom:1.5rem;position:relative;display:inline-block;font-weight:700}.info-card h3:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:var(--gradient-accent);border-radius:3px}.info-card ul{list-style-type:none;padding:0;margin:0}.info-card li{position:relative;padding-left:1.75rem;margin-bottom:1rem;color:rgba(255,255,255,.9);line-height:1.6;font-size:1.05rem}.info-card li:last-child{margin-bottom:0}.info-card li:before{content:"•";position:absolute;left:0;color:var(--color-accent);font-size:1.5rem;line-height:1}.tournament-quiz-container{background:rgba(15,23,42,.7);border-radius:20px;padding:2.5rem;margin-bottom:3rem;border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 36px rgba(0,0,0,.25)}.tournament-quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1.5rem}.tournament-quiz-header h3{font-size:2rem;color:var(--color-accent);margin:0 0 1rem;text-align:center;font-weight:700}.active-powerup{display:flex;align-items:center;gap:1rem;background:rgba(98,0,234,.15);padding:.85rem 1.5rem;border-radius:12px;border:1px solid var(--color-accent);color:var(--color-accent);box-shadow:0 0 8px rgba(98,0,234,.08);font-weight:600;margin-top:1rem}.powerup-label{font-size:1rem;color:rgba(255,255,255,.8);font-weight:500}.powerup-value{font-size:1.1rem;font-weight:700;color:#ff5a5f}.powerups-container{margin-top:2.5rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.powerups-container h4{font-size:1.5rem;color:var(--color-accent);margin-bottom:1.5rem;font-weight:700;text-align:center}.powerups-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.powerup-button{background:rgba(15,23,42,.5);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;cursor:pointer;transition:all .3s ease;color:#fff;font-weight:600;font-size:1.1rem;text-align:left}.powerup-button:not(:disabled):hover{background:rgba(15,23,42,.7);transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,.25);border-color:var(--tournament-accent-light)}.powerup-button.active{background:rgba(98,0,234,.15);border-color:var(--tournament-accent-light)}.stars-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.floating-planet{position:absolute;border-radius:50%;opacity:.5;z-index:0}.planet-1{width:150px;height:150px;background:radial-gradient(circle at 30% 30%,#8a2be2,#4b0082);top:15%;left:5%;box-shadow:0 0 30px rgba(138,43,226,.5);animation:float 20s ease-in-out infinite}.planet-2{width:100px;height:100px;background:radial-gradient(circle at 30% 30%,#7b2cbf,#5c6bc0);bottom:10%;right:10%;box-shadow:0 0 20px rgba(92,107,192,.5);animation:float 15s ease-in-out infinite reverse}.floating-comet{position:absolute;width:100px;height:3px;background:linear-gradient(90deg,transparent,#b388ff);top:30%;right:-100px;transform:rotate(-15deg);animation:cometMove 10s linear infinite;opacity:0;box-shadow:0 0 10px rgba(179,136,255,.8);z-index:0}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(20px,20px)}}@keyframes cometMove{0%{right:-100px;opacity:0}10%{opacity:1}90%{opacity:1}to{right:120%;opacity:0}}.info-card,.tournament-page-info{text-align:center}.info-card,.leaderboard-table tr.current-user td,.prize-rank,.score-value,.tab-button.active,.tournament-card:hover h4,.tournament-header h3,.tournament-leaderboard h4,.tournament-prizes h4,.tournament-tabs{text-shadow:none;box-shadow:none}.tournament-timer{background:rgba(98,0,234,.15);border:1.5px solid var(--color-accent);color:var(--color-accent);box-shadow:0 0 8px rgba(98,0,234,.08);text-shadow:none}.active-tournament,.tournament-quiz-container{border:2px solid var(--color-accent);background:rgba(20,20,40,.92);box-shadow:0 8px 32px rgba(98,0,234,.1)}.start-quiz-button{background:var(--gradient-accent);color:var(--color-text-primary);border:none;border-radius:12px;font-weight:600;font-size:1.15rem;box-shadow:0 6px 18px rgba(98,0,234,.18);transition:all .3s}.start-quiz-button:hover{background-position:100%;transform:translateY(-5px) scale(1.05);box-shadow:0 10px 28px rgba(98,0,234,.25)}