@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700;800&display=swap";:root{--bg:#0a0f1e;--surface:#ffffff0a;--border:#ffffff14;--text:#f1f5f9;--muted:#64748b;--accent:#3b82f6;--accent-dim:#3b82f640;--success:#10b981;--success-dim:#10b98133;--danger:#ef4444;--danger-dim:#ef444426;--gold:#f59e0b;--gold-dim:#f59e0b33;--radius:16px;--radius-pill:9999px}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);justify-content:center;align-items:center;font-family:Outfit,sans-serif;display:flex}#root{background:radial-gradient(70% 50% at 50% -10%,#3b82f614 0%,#0000 60%);flex-direction:column;width:100%;max-width:480px;height:100dvh;display:flex;position:relative;overflow:hidden}h1,h2,h3{letter-spacing:-.5px;font-weight:800}.glass{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px)}.btn{border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:15px 32px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700;transition:opacity .15s,transform .15s;display:inline-flex}.btn:active{opacity:.85;transform:scale(.95)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-blue{background:var(--accent);color:#fff;box-shadow:0 0 24px #3b82f659}.btn-green{background:var(--success);color:#fff;box-shadow:0 0 24px #10b98159}.btn-gold{background:var(--gold);color:#1a1000;box-shadow:0 0 24px #f59e0b59}.progress-track{background:var(--border);border-radius:var(--radius-pill);height:2px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), #818cf8);border-radius:var(--radius-pill);height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.stage-header{z-index:10;background:linear-gradient(#0a0f1ef2 70%,#0000);padding:20px 24px 14px;position:absolute;top:0;left:0;right:0}.stage-label{letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-size:.7rem}.stage-name{color:var(--text);margin-bottom:10px;font-size:1.1rem;font-weight:700}.stage-canvas{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;height:100%;padding:100px 24px 32px;display:flex;position:relative;overflow:hidden}.game-input{text-align:center;letter-spacing:8px;background:var(--surface);border:1.5px solid var(--border);width:100%;color:var(--text);border-radius:var(--radius);outline:none;padding:18px 20px;font-family:Outfit,sans-serif;font-size:2rem;font-weight:700;transition:border-color .2s}.game-input:focus{border-color:var(--accent)}.badge{border-radius:var(--radius-pill);letter-spacing:2px;text-transform:uppercase;align-items:center;gap:6px;padding:6px 16px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-blue{background:var(--accent-dim);color:var(--accent);border:1px solid #3b82f64d}.badge-green{background:var(--success-dim);color:var(--success);border:1px solid #10b9814d}.badge-danger{background:var(--danger-dim);color:var(--danger);border:1px solid #ef44444d}.badge-gold{background:var(--gold-dim);color:var(--gold);border:1px solid #f59e0b4d}@keyframes fall{0%{opacity:1;transform:translateY(-20px)rotate(0)}to{opacity:0;transform:translateY(110vh)rotate(540deg)}}.confetti-piece{border-radius:2px;animation:linear infinite fall;position:absolute;top:0}
