@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap";:root{--bg-primary: #06060e;--bg-secondary: #0d0d1a;--bg-card: rgba(20, 20, 40, .6);--bg-card-hover: rgba(30, 30, 60, .8);--text-primary: #f0f0ff;--text-secondary: #8888aa;--text-muted: #555577;--accent-purple: #8b5cf6;--accent-cyan: #06b6d4;--accent-pink: #ec4899;--accent-green: #10b981;--accent-orange: #f59e0b;--gradient-main: linear-gradient(135deg, #8b5cf6 0%, #06b6d4 50%, #ec4899 100%);--gradient-card: linear-gradient(135deg, rgba(139, 92, 246, .1) 0%, rgba(6, 182, 212, .05) 100%);--gradient-glow: radial-gradient(circle, rgba(139, 92, 246, .15) 0%, transparent 70%);--border-subtle: 1px solid rgba(139, 92, 246, .15);--border-glow: 1px solid rgba(139, 92, 246, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--shadow-glow: 0 0 30px rgba(139, 92, 246, .2);--shadow-glow-hover: 0 0 50px rgba(139, 92, 246, .35);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,system-ui,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}body.is-game-page{overflow:hidden;height:100vh;display:flex;flex-direction:column}body.is-game-page main{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}body:before{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 20%,rgba(139,92,246,.06) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(6,182,212,.04) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(236,72,153,.03) 0%,transparent 50%);pointer-events:none;z-index:0;animation:ambientDrift 20s ease-in-out infinite alternate}@keyframes ambientDrift{0%{transform:translate(0) rotate(0)}to{transform:translate(-2%,-2%) rotate(3deg)}}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:700;line-height:1.2;letter-spacing:-.02em}a{color:var(--accent-purple);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-cyan)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg);position:relative;z-index:1}.header{position:sticky;top:0;z-index:100;padding:var(--space-md) 0;backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);background:#06060ecc;border-bottom:var(--border-subtle)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg)}.logo{display:flex;align-items:center;gap:var(--space-sm);font-family:Outfit,sans-serif;font-weight:800;font-size:1.5rem;color:var(--text-primary);text-decoration:none;transition:transform var(--transition-base)}.logo:hover{transform:scale(1.03);color:var(--text-primary)}.logo-icon{font-size:1.8rem;filter:drop-shadow(0 0 10px rgba(139,92,246,.5))}.logo-text{background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;align-items:center;gap:var(--space-lg);list-style:none}.nav-links a{color:var(--text-secondary);font-weight:500;font-size:.95rem;transition:color var(--transition-fast);position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--gradient-main);transition:width var(--transition-base);border-radius:2px}.nav-links a:hover{color:var(--text-primary)}.nav-links a:hover:after{width:100%}.hero{text-align:center;padding:var(--space-3xl) 0 var(--space-2xl)}.hero-title{font-size:clamp(2.5rem,6vw,4rem);font-weight:900;margin-bottom:var(--space-md);background:var(--gradient-main);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 30px rgba(139,92,246,.3))}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.25rem);color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.7}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-lg);padding:var(--space-xl) 0 var(--space-3xl)}.game-card{position:relative;background:var(--bg-card);border:var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-slow);text-decoration:none;color:inherit;display:block}.game-card:before{content:"";position:absolute;inset:0;background:var(--gradient-card);opacity:0;transition:opacity var(--transition-base)}.game-card:hover{transform:translateY(-6px);border-color:#8b5cf666;box-shadow:var(--shadow-glow-hover);color:inherit}.game-card:hover:before{opacity:1}.game-card-preview{width:100%;aspect-ratio:16 / 10;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:4rem;border-bottom:var(--border-subtle);position:relative;overflow:hidden}.game-card-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 60%,var(--bg-card) 100%)}.game-card-content{position:relative;z-index:1;padding:var(--space-lg)}.game-card-title{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;margin-bottom:var(--space-xs)}.game-card-desc{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin-bottom:var(--space-md)}.game-card-meta{display:flex;align-items:center;gap:var(--space-sm)}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.badge-easy{background:#10b98126;color:var(--accent-green);border:1px solid rgba(16,185,129,.25)}.badge-medium{background:#f59e0b26;color:var(--accent-orange);border:1px solid rgba(245,158,11,.25)}.badge-hard{background:#ec489926;color:var(--accent-pink);border:1px solid rgba(236,72,153,.25)}.badge-category{background:#8b5cf626;color:var(--accent-purple);border:1px solid rgba(139,92,246,.25)}.game-page{display:flex;flex-direction:column;flex:1;min-height:0;padding:var(--space-sm) var(--space-md) 0;overflow:hidden}.game-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding-bottom:var(--space-sm);flex-wrap:wrap;gap:var(--space-sm)}.game-title{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:800}.back-link{display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--text-secondary);font-weight:500;font-size:.9rem;padding:4px var(--space-md);border-radius:var(--radius-sm);background:var(--bg-card);border:var(--border-subtle);transition:all var(--transition-fast)}.back-link:hover{color:var(--text-primary);border-color:#8b5cf666;background:var(--bg-card-hover)}.game-container{width:100%;height:calc(100vh - 130px);border-radius:var(--radius-md);overflow:hidden;border:var(--border-glow);box-shadow:var(--shadow-glow);background:var(--bg-secondary)}.game-container canvas{display:block!important}.game-container astro-island,.game-container astro-island>*,.game-container>astro-island,.game-container>astro-island>*{display:block!important;width:100%!important;height:100%!important}.game-instructions{display:none}.game-instructions h3{font-size:1rem;margin-bottom:var(--space-sm);color:var(--text-primary)}.game-instructions p{color:var(--text-secondary);font-size:.9rem;line-height:1.6}.game-instructions kbd{display:inline-block;padding:2px 8px;background:var(--bg-secondary);border:1px solid rgba(139,92,246,.2);border-radius:4px;font-size:.8rem;font-family:Inter,monospace;color:var(--accent-cyan)}.footer{text-align:center;padding:var(--space-2xl) 0 var(--space-xl);color:var(--text-muted);font-size:.85rem;border-top:var(--border-subtle);position:relative;z-index:1}.footer-heart{color:var(--accent-pink)}@media(max-width:768px){.container{padding:0 var(--space-md)}.games-grid{grid-template-columns:1fr}.nav-links{gap:var(--space-md)}.game-page{padding:0}.game-header{display:none}.game-container{height:calc(100vh - 56px);border-radius:0;border-left:none;border-right:none}}@media(max-width:480px){.hero{padding:var(--space-2xl) 0 var(--space-xl)}.nav-links{display:none}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.animate-in:nth-child(1){animation-delay:.05s}.animate-in:nth-child(2){animation-delay:.1s}.animate-in:nth-child(3){animation-delay:.15s}.animate-in:nth-child(4){animation-delay:.2s}.animate-in:nth-child(5){animation-delay:.25s}
