@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--card-color:oklch(0.57 0.23 264);--card-hover:oklch(0.55 0.25 264);--card-revealed:oklch(0.55 0.2 150);--card-selected:oklch(0.85 0.12 260);--bg-color:var(--background,oklch(1 0 0));--text-primary:var(--foreground,oklch(0.145 0 0));--text-secondary:var(--muted-foreground,oklch(0.556 0 0));--shadow-sm:0 2px 4px 0 oklch(0 0 0/0.05);--shadow:0 4px 8px -2px oklch(0 0 0/0.1),0 2px 4px -1px oklch(0 0 0/0.06);--shadow-md:0 8px 15px -3px oklch(0 0 0/0.1),0 4px 6px -2px oklch(0 0 0/0.05);--radius:0.75rem}body{background-color:var(--bg-color);margin:0;padding:0}.game-start-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:2rem auto;max-width:600px;padding:2rem;background-color:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-md);border:1px solid var(--border);text-align:center;animation:fadeIn .8s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.game-description{margin-bottom:2rem}.game-description p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.start-button{background-color:var(--primary);color:white;font-size:1.25rem;font-weight:600;padding:.85rem 2.5rem;border:none;border-radius:var(--radius);cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 4px 10px -3px oklch(from var(--primary) l c h/.25);position:relative;overflow:hidden}.start-button:hover{background-color:oklch(from var(--primary) calc(l - .02) c h);transform:translateY(-3px) scale(1.03);box-shadow:0 10px 20px -5px oklch(from var(--primary) l c h/.35)}.start-button:active{transform:translateY(1px);box-shadow:0 2px 5px -2px oklch(from var(--primary) l c h/.2)}.start-button:after{content:"";position:absolute;top:-50%;left:-60%;width:200%;height:200%;background:radial-gradient(circle,oklch(1 0 0/.2) 0,transparent 60%);opacity:0;transform:rotate(45deg);transition:opacity .6s}.start-button:hover:after{opacity:.8;animation:pulse-light 2s infinite}@keyframes pulse-light{0%{opacity:.1}50%{opacity:.3}to{opacity:.1}}.game-header-wrapper{position:relative;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;align-items:center}.game-header-wrapper>:first-child{position:absolute;left:0;top:1rem;align-self:flex-start}.game-message{font-size:1.4rem;color:var(--foreground);margin-bottom:1.75rem;min-height:2.2rem;font-weight:600;padding:.5rem 1.5rem;background-color:var(--card);border-radius:var(--radius);display:inline-block;box-shadow:0 5px 15px -5px oklch(0 0 0/.1);border:1px solid var(--border);animation:messageGlow 3s infinite}@keyframes messageGlow{0%,to{box-shadow:0 5px 15px -5px oklch(0 0 0/.1)}50%{box-shadow:0 5px 25px -2px oklch(from var(--primary) l c h/.2)}}.timer-container{height:10px;background-color:oklch(.9 .03 240);border-radius:10px;margin-bottom:2.5rem;overflow:hidden;box-shadow:inset 0 2px 4px oklch(0 0 0/.1);position:relative}.timer-progress{height:100%;background:linear-gradient(90deg,oklch(from var(--primary) calc(l - .1) c h),var(--primary) 50%,oklch(from var(--primary) calc(l + .05) c h));border-radius:10px;transition:width .1s linear;box-shadow:0 0 10px oklch(from var(--primary) l c h/.5)}.timer-progress:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 25%,oklch(1 0 0/.1) 0,oklch(1 0 0/.1) 50%,transparent 0,transparent 75%,oklch(1 0 0/.1) 0);background-size:20px 20px;animation:timer-stripes 1s linear infinite;border-radius:10px;pointer-events:none}@keyframes timer-stripes{0%{background-position:0 0}to{background-position:20px 0}}.game-board{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:1rem;margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto;pointer-events:none;background:transparent!important;transform:none!important;transition:none!important}.game-board,.number-card{width:100%;aspect-ratio:1/1;box-shadow:none}.number-card{height:auto;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:600;background-color:var(--card-color);color:white;border-radius:var(--radius);cursor:pointer;border:none;position:relative;transform:translateZ(0);will-change:transform,box-shadow;transition:transform .2s ease-out,background-color .2s ease-out,box-shadow .2s ease-out;isolation:isolate;pointer-events:auto}.number-card:before{display:none}.number-card:hover:before{opacity:0}.number-card:hover:not(.revealed):not(.selected){background-color:var(--card-hover);transform:translate3d(0,-3px,0);box-shadow:0 5px 10px -3px oklch(0 0 0/.15);z-index:10}.number-card.selected,.number-card:hover:not(.revealed):not(.selected){transition:transform .2s ease-out,background-color .2s ease-out,box-shadow .2s ease-out}.number-card.selected{background-color:var(--card-selected);color:var(--text-primary);transform:translateZ(0) scale(1.05);box-shadow:0 10px 25px -5px oklch(from var(--card-selected) l c h/.4);z-index:5}.number-card.revealed{background-color:var(--card-revealed);box-shadow:0 0 10px 2px oklch(from var(--card-revealed) l c h/.3);z-index:5;animation:none}.number-card.wrong{background-color:oklch(.65 .25 25);color:white;transform:translateZ(0) scale(1.05);box-shadow:0 0 20px 5px oklch(.65 .25 25/.5);z-index:10;transition:transform .2s ease-out,background-color .3s ease-out,box-shadow .3s ease-out}@keyframes wrongShake{0%,to{transform:translateZ(0) scale(1.05)}20%,60%{transform:translate3d(-5px,0,0) scale(1.05)}40%,80%{transform:translate3d(5px,0,0) scale(1.05)}}@keyframes pulse{0%,to{box-shadow:0 0 15px 5px oklch(from var(--card-revealed) l c h/.3)}50%{box-shadow:0 0 15px 5px oklch(from var(--card-revealed) l c h/.3)}}.game-info{display:flex;justify-content:center;gap:2.5rem;margin:2.5rem 0}.game-stat{display:flex;flex-direction:column;align-items:center;background-color:var(--card);padding:1rem 1.5rem;border-radius:var(--radius);box-shadow:0 5px 15px -5px oklch(0 0 0/.1);min-width:100px;border:1px solid var(--border);position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.game-stat:hover{transform:translateY(-3px);box-shadow:0 8px 20px -6px oklch(0 0 0/.15)}.game-stat:before{content:"";position:absolute;top:-5px;left:0;right:0;height:5px;background:linear-gradient(90deg,oklch(from var(--primary) calc(l - .1) c h),var(--primary),oklch(from var(--primary) calc(l + .05) c h))}.game-stat span:first-child{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.75rem;font-weight:800;color:var(--text-primary);text-shadow:0 1px 2px oklch(0 0 0/.1);position:relative;display:inline-block}.stat-value:after{content:"";position:absolute;bottom:-5px;left:25%;width:50%;height:3px;background-color:var(--primary);border-radius:3px;opacity:.7}.game-result{background-color:var(--card);padding:2.5rem;border-radius:var(--radius);margin-top:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border);position:relative;overflow:hidden}.game-result:before{top:-100px;right:-100px;width:200px;height:200px}.game-result:after,.game-result:before{content:"";position:absolute;background:radial-gradient(circle,var(--primary) 0,transparent 70%);opacity:.1;border-radius:100%}.game-result:after{bottom:-80px;left:-80px;width:160px;height:160px}.game-result h2{font-size:2.25rem;font-weight:800;color:var(--foreground);margin-bottom:1.25rem;background:linear-gradient(135deg,var(--primary),oklch(from var(--primary) l c h/.7));-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.game-result p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2.5rem;line-height:1.6}.final-score{font-weight:800;color:var(--primary);font-size:3rem;display:block;margin:1.5rem 0;text-shadow:0 2px 10px oklch(from var(--primary) l c h/.3)}.home-button,.restart-button{display:inline-block;padding:.85rem 1.75rem;margin:0 .75rem;border-radius:var(--radius);font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);text-decoration:none;box-shadow:0 4px 10px -3px oklch(0 0 0/.1);position:relative;overflow:hidden}.home-button:before,.restart-button:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,oklch(1 0 0/.2),transparent);transform:translateX(-100%);transition:transform .8s ease}.home-button:hover:before,.restart-button:hover:before{transform:translateX(100%)}.restart-button{background-color:var(--primary);color:white;border:none}.restart-button:hover{background-color:oklch(from var(--primary) calc(l - .02) c h);transform:translateY(-2px);box-shadow:0 8px 15px -5px oklch(from var(--primary) l c h/.25)}.restart-button:active{transform:translateY(1px);box-shadow:0 2px 5px -2px oklch(from var(--primary) l c h/.2)}.home-button{background-color:var(--card);color:var(--text-secondary);border:1px solid var(--border)}.home-button:hover{background-color:var(--accent);color:var(--accent-foreground);transform:translateY(-2px);box-shadow:0 8px 15px -5px oklch(0 0 0/.1)}.home-button:active{transform:translateY(1px);box-shadow:0 2px 5px -2px oklch(0 0 0/.1)}@media (max-width:650px){.game-board{gap:.75rem;max-width:90%}.number-card{font-size:calc(1rem + 1vw)}.game-info{flex-direction:row;justify-content:space-between;gap:.5rem;margin:1.5rem 0}.game-stat{padding:.5rem .75rem;min-width:0;flex:1}.game-stat span:first-child{font-size:.7rem;margin-bottom:.25rem}.stat-value{font-size:1.2rem}}