:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.space-wrapper{display:flex;flex-direction:column;height:100vh;width:100vw;background:#000428;touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;top:0;left:0}.space-game{flex:1;width:100%;height:100%;touch-action:none}.back-button{position:absolute;top:1rem;left:1rem;color:#fff;text-decoration:none;font-size:2rem;z-index:10;background:#0000004d;padding:.5rem 1rem;border-radius:50%;transition:transform .2s}.back-button:hover{transform:scale(1.1)}@media (max-width: 768px){.space-wrapper{padding:0}.spaceship{font-size:3em;bottom:10%}.star{font-size:2em}.laser{font-size:1.2em}.game-info h2{font-size:1.5rem}.back-button{font-size:1.5rem;padding:.3rem .8rem}}:root{--primary: #FF6B6B;--secondary: #4BD4FF;--background: #7CD8FF;--card-front: #FFB156;--card-back: #FFECEC;--success: #76E4B8}body{margin:0;padding:0;background:var(--background);min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:Nunito,sans-serif;overflow:hidden}.game-wrapper{width:calc(100vw - 20px);height:calc(100vh - 20px);margin:10px;padding:20px;display:flex;flex-direction:column;background:#fff;box-sizing:border-box;border-radius:30px;box-shadow:0 10px 30px #0000001a;position:relative;z-index:2}.game-info{text-align:center;padding:10px 0}.game-info h2{font-size:1.8em;margin:0;color:var(--primary);display:flex;align-items:center;justify-content:center;gap:10px}.game-info p{font-size:1em;color:#fff;background:var(--primary);padding:8px 20px;border-radius:20px;margin:10px auto 0;display:inline-block}.memory-game{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%;flex:1;align-content:center;padding:12px 0}.card{width:100%;aspect-ratio:1;perspective:1000px;cursor:pointer;position:relative}.card-inner{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .6s;transform-style:preserve-3d;border-radius:15px}.card.flipped .card-inner{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;align-items:center;justify-content:center;font-size:2.5em;border-radius:15px;border:4px solid white;box-shadow:0 4px 8px #0000001a}.card-front{background:var(--card-front);color:#fff}.card-front:after{content:"?";font-size:2em;color:#ffffffe6}.card-back{background:var(--card-back);transform:rotateY(180deg)}.card.matched .card-back{background:var(--success);animation:matchPulse .5s ease-out}@keyframes matchPulse{0%{transform:rotateY(180deg) scale(1)}50%{transform:rotateY(180deg) scale(1.1)}to{transform:rotateY(180deg) scale(1)}}@keyframes float{0%,to{transform:translate(0)}50%{transform:translateY(-10px)}}.back-button{position:absolute;top:15px;left:15px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--secondary);border-radius:50%;text-decoration:none;color:#fff;font-size:1.4em;border:3px solid white}@media (min-width: 768px){.game-wrapper{width:500px;height:auto}}.victory-message{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.victory-message>div{background:#fff;padding:30px;border-radius:30px;width:90%;max-width:320px;text-align:center;animation:fadeIn .3s ease-out}.victory-message h3{font-size:2.2em;margin:0 0 15px;color:var(--primary)}.victory-message p{font-size:1.3em;margin:15px 0;color:#fff;background:var(--primary);padding:10px 20px;border-radius:15px;display:inline-block;box-shadow:0 2px 8px #0000001a}.new-game-btn{background:var(--primary);color:#fff;border:none;width:100%;padding:15px;font-size:1.4em;border-radius:15px;cursor:pointer;margin-top:20px;font-weight:700;box-shadow:0 4px 15px #0000001a;transition:transform .2s}.new-game-btn:hover{transform:scale(1.05)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.menu-wrapper{width:calc(100vw - 20px);height:calc(100vh - 20px);margin:10px;padding:20px;display:flex;flex-direction:column;align-items:center;background:#fff;box-sizing:border-box;border-radius:30px;box-shadow:0 10px 30px #0000001a}.menu-wrapper h1{font-size:2em;color:var(--primary);margin:20px 0}.menu-grid{width:100%;max-width:500px;display:flex;flex-direction:column;gap:15px;padding:20px}.menu-item{background:var(--card-front);padding:20px;border-radius:20px;text-decoration:none;color:#fff;display:flex;align-items:center;gap:15px;transition:transform .2s;border:4px solid white;box-shadow:0 4px 15px #0000001a}.menu-item:hover{transform:translateY(-2px)}.game-icon{font-size:2em}.game-name{font-size:1.4em;font-weight:700}@media (min-width: 768px){.menu-wrapper{width:600px;height:auto;margin:20px}.menu-wrapper h1{font-size:2.5em}.menu-item{padding:25px}.game-icon{font-size:2.5em}.game-name{font-size:1.6em}}
