@import "https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";
:root{--bg-primary:#0f0a2e;--bg-secondary:#1a1145;--bg-card:#201654;--bg-card-hover:#2a1b6b;--text-primary:#fff;--text-secondary:#d4ccf0;--text-muted:#9b8ec4;--coral:#ff6b6b;--coral-light:#ff8e53;--purple:#845ec2;--purple-light:#b39cd0;--teal:#00c9a7;--teal-dark:#00a88e;--yellow:#ffc75f;--pink:#ff6f91;--blue:#4facfe;--lime:#c5f82a;--gradient-hero:linear-gradient(135deg,#ff6b6b 0%,#ff8e53 50%,#ffc75f 100%);--gradient-primary:linear-gradient(135deg,#ff6b6b 0%,#ff8e53 100%);--gradient-secondary:linear-gradient(135deg,#845ec2 0%,#b39cd0 100%);--gradient-success:linear-gradient(135deg,#00c9a7 0%,#00a88e 100%);--gradient-danger:linear-gradient(135deg,#ff6b6b 0%,#ff6f91 100%);--gradient-warning:linear-gradient(135deg,#ffc75f 0%,#ff8e53 100%);--gradient-fun:linear-gradient(135deg,#845ec2 0%,#ff6f91 50%,#ffc75f 100%);--gradient-card:linear-gradient(145deg,#845ec226 0%,#ff6b6b14 100%);--border-color:#b4a0ff33;--border-radius:16px;--border-radius-sm:12px;--border-radius-xs:8px;--border-radius-pill:50px;--shadow-sm:0 4px 12px #0000004d;--shadow-md:0 8px 32px #00000059;--shadow-lg:0 16px 48px #00000073;--shadow-glow-coral:0 0 30px #ff6b6b4d;--shadow-glow-purple:0 0 30px #845ec24d;--shadow-glow-teal:0 0 30px #00c9a74d;--shadow-fun:0 8px 0 #0003}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Nunito,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle at 20% 30%,#845ec240 0%,#0000 40%),radial-gradient(circle at 80% 20%,#ff6b6b33 0%,#0000 40%),radial-gradient(circle at 50% 80%,#00c9a726 0%,#0000 40%),radial-gradient(circle at 90% 70%,#ffc75f1f 0%,#0000 30%);width:200%;height:200%;animation:20s ease-in-out infinite meshFloat;position:fixed;top:-50%;left:-50%}@keyframes meshFloat{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(2%,-2%)rotate(1deg)}50%{transform:translate(-1%,3%)rotate(-1deg)}75%{transform:translate(-3%,-1%)rotate(.5deg)}}.container{max-width:1200px;margin:0 auto;padding:0 24px}.card{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--border-radius);padding:28px;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.card:before{content:"";background:var(--gradient-fun);opacity:0;height:4px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.card:hover{box-shadow:var(--shadow-md),var(--shadow-glow-purple);border-color:#b4a0ff59;transform:translateY(-4px)}.card:hover:before{opacity:1}.card-glass{box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#201654e6 0%,#1a1145f2 100%);border:2px solid #b4a0ff40}.card-glass:before{opacity:1;height:4px}.btn{border-radius:var(--border-radius-pill);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border:none;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-family:Nunito,sans-serif;font-size:16px;font-weight:800;text-decoration:none;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-fun),var(--shadow-glow-coral)}.btn-primary:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 12px #00000026,0 0 40px #ff6b6b66}.btn-primary:active{transform:translateY(0)scale(.98);box-shadow:0 2px #0003}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:2px solid var(--border-color);box-shadow:var(--shadow-fun)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--purple-light);transform:translateY(-3px)scale(1.03);box-shadow:0 12px #00000026}.btn-success{background:var(--gradient-success);color:#fff;box-shadow:var(--shadow-fun),var(--shadow-glow-teal)}.btn-success:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 12px #00000026,0 0 40px #00c9a766}.btn-danger{background:var(--gradient-danger);color:#fff;box-shadow:var(--shadow-fun)}.btn-danger:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 12px #00000026}.btn-warning{background:var(--gradient-warning);color:#1a1145;box-shadow:var(--shadow-fun)}.btn-warning:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 12px #00000026}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:var(--shadow-fun)!important;transform:none!important}.btn-lg{padding:18px 40px;font-size:18px}.btn-block{width:100%}.input-group{margin-bottom:20px}.input-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:14px;font-weight:700;display:block}.input{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:var(--border-radius-sm);width:100%;color:var(--text-primary);padding:16px 20px;font-family:Nunito,sans-serif;font-size:16px;font-weight:600;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.input:focus{border-color:var(--coral);box-shadow:0 0 0 4px #ff6b6b33,var(--shadow-glow-coral);outline:none;transform:scale(1.02)}.input::placeholder{color:var(--text-muted);font-weight:400}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ff6b6b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;padding-right:48px}.lobby-code{background:var(--bg-secondary);border:3px solid #0000;border-image:var(--gradient-fun)1;letter-spacing:10px;color:var(--yellow);box-shadow:var(--shadow-md);border-radius:0;gap:10px;padding:20px 28px;font-family:Nunito,monospace;font-size:36px;font-weight:900;display:inline-flex;position:relative}.lobby-code:after{content:"";border-radius:var(--border-radius);background:var(--gradient-fun);-webkit-mask-composite:xor;pointer-events:none;padding:3px;position:absolute;inset:-3px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.lobby-code-compact{letter-spacing:5px;padding:10px 16px;font-size:18px}.lobby-code-input{text-align:center;text-transform:uppercase;letter-spacing:10px;border:3px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-secondary);color:var(--yellow);font-family:Nunito,sans-serif;font-size:32px;font-weight:900}.lobby-code-input:focus{border-color:var(--yellow);box-shadow:0 0 0 4px #ffc75f33}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}}h1{background:var(--gradient-hero);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:52px;font-weight:900;line-height:1.1}h2{margin-bottom:16px;font-size:28px;font-weight:800}h3{margin-bottom:12px;font-size:20px;font-weight:700}.hero{text-align:center;padding:80px 0;position:relative}.hero-subtitle{color:var(--text-secondary);max-width:600px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:22px;font-weight:600}.badge{text-transform:uppercase;letter-spacing:.8px;border-radius:var(--border-radius-pill);border:2px solid #0000;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:800;display:inline-flex}.badge-waiting{color:var(--yellow);background:#ffc75f33;border-color:#ffc75f4d}.badge-active{color:var(--teal);background:#00c9a733;border-color:#00c9a74d}.badge-completed{color:var(--purple-light);background:#845ec233;border-color:#845ec24d}.badge-easy{color:var(--teal);background:#00c9a733;border-color:#00c9a74d}.badge-medium{color:var(--yellow);background:#ffc75f33;border-color:#ffc75f4d}.badge-hard{color:var(--coral);background:#ff6b6b33;border-color:#ff6b6b4d}.player-list{list-style:none}.player-item{border-bottom:2px solid var(--border-color);border-radius:var(--border-radius-xs);justify-content:space-between;align-items:center;padding:16px;transition:all .25s;display:flex}.player-item:hover{background:#845ec21a}.player-item.is-current{background:#ff6b6b1a;border-color:#ff6b6b33}.player-item:last-child{border-bottom:none}.player-rank{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:900;display:flex}.player-rank.gold{color:#1a1145;background:linear-gradient(135deg,gold 0%,#fa0 100%);border-color:gold;font-size:20px;box-shadow:0 0 20px #ffd70066}.player-rank.silver{color:#1a1145;background:linear-gradient(135deg,#e8e8e8 0%,#b0b0b0 100%);border-color:silver;font-size:20px}.player-rank.bronze{color:#1a1145;background:linear-gradient(135deg,#ff8c42 0%,#cd6600 100%);border-color:#cd6600;font-size:20px}.player-info{flex:1;margin-left:16px}.player-meta{color:var(--text-muted);margin-left:8px;font-size:12px;font-weight:600}.player-name{font-weight:700}.player-score{background:var(--gradient-hero);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:900}.question-card{text-align:center;padding:40px}.question-progress{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;font-size:15px;font-weight:700}.question-text{margin-bottom:32px;font-size:26px;font-weight:800;line-height:1.4}.answers-grid{grid-template-columns:repeat(2,1fr);gap:16px;max-width:700px;margin:0 auto;display:grid}@media (max-width:600px){.answers-grid{grid-template-columns:1fr}}.answer-btn{text-align:left;background:var(--bg-secondary);border:3px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;padding:20px 24px;font-family:Nunito,sans-serif;font-size:17px;font-weight:700;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.answer-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff14,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.answer-btn:hover:not(:disabled){border-color:var(--purple);box-shadow:var(--shadow-md),var(--shadow-glow-purple);background:#845ec226;transform:translateY(-4px)scale(1.02)}.answer-btn:hover:not(:disabled):before{left:100%}.answer-btn.selected{border-color:var(--purple);background:#845ec240;box-shadow:0 0 0 3px #845ec24d}.answer-btn.correct{border-color:var(--teal);box-shadow:0 0 0 3px #00c9a74d,var(--shadow-glow-teal);background:#00c9a740;animation:.5s cubic-bezier(.34,1.56,.64,1) correctPop}.answer-btn.incorrect{border-color:var(--coral);background:#ff6b6b40;animation:.5s shake;box-shadow:0 0 0 3px #ff6b6b4d}@keyframes correctPop{0%{transform:scale(1)}30%{transform:scale(1.08)}60%{transform:scale(.98)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)rotate(-1deg)}40%{transform:translate(8px)rotate(1deg)}60%{transform:translate(-4px)rotate(-.5deg)}80%{transform:translate(4px)rotate(.5deg)}}.loading{justify-content:center;align-items:center;padding:60px;display:flex}.spinner{border:4px solid var(--border-color);border-top-color:var(--coral);border-right-color:var(--purple);border-radius:50%;width:52px;height:52px;animation:.8s cubic-bezier(.4,0,.2,1) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.waiting-dots{gap:6px;display:inline-flex}.waiting-dots span{border-radius:50%;width:12px;height:12px;animation:1.4s ease-in-out infinite both bounce}.waiting-dots span:first-child{background:var(--coral);animation-delay:-.32s}.waiting-dots span:nth-child(2){background:var(--purple);animation-delay:-.16s}.waiting-dots span:nth-child(3){background:var(--teal);animation-delay:0}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1.2)}}.nav{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 0;display:flex}.nav-logo{background:var(--gradient-hero);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;gap:10px;font-size:22px;font-weight:900;text-decoration:none;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:inline-flex}.nav-logo:hover{transform:scale(1.05)}.nav-logo-mark{background:var(--gradient-primary);border-radius:50%;width:16px;height:16px;animation:2s ease-in-out infinite pulse;display:inline-flex;box-shadow:0 0 20px #ff6b6b80}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 20px #ff6b6b80}50%{transform:scale(1.2);box-shadow:0 0 30px #ff6b6bb3}}.nav-links{align-items:center;gap:20px;display:flex}.nav-link{color:var(--text-secondary);border-radius:var(--border-radius-pill);padding:8px 16px;font-weight:700;text-decoration:none;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.nav-link:hover{color:var(--text-primary);background:#845ec226;transform:scale(1.05)}.timer-display{border-radius:var(--border-radius-pill);min-width:120px;color:var(--blue);background:#4facfe1f;border:3px solid #4facfe66;justify-content:center;align-items:baseline;gap:10px;margin:0 auto 16px;padding:14px 20px;font-weight:800;display:inline-flex}.timer-display strong{font-size:42px;line-height:1}.timer-display.is-danger{color:var(--coral);background:#ff6b6b26;border-color:#ff6b6b80;animation:.5s ease-in-out infinite timerPulse}@keyframes timerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width:640px){.container{padding:0 16px}.nav,.nav-links{flex-wrap:wrap;gap:12px}h1{font-size:38px}.hero{padding:48px 0}.question-card{padding:24px 16px}.lobby-code{letter-spacing:6px;font-size:28px}}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.gap-4{gap:16px}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}
