:root{--color-bg: #0A0A0A;--color-surface: #1C1C1E;--color-primary: #FF3B30;--color-primary-glow: rgba(255, 59, 48, .5);--color-bg: #050505;--color-surface: #121212;--color-text-primary: #FFFFFF;--color-text-secondary: #A1A1A6;--color-border: rgba(255, 255, 255, .1);--color-glass: rgba(255, 255, 255, .03);--color-glass-border: rgba(255, 255, 255, .08);--font-family: "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS", sans-serif;--line-height: 1.5;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4.5rem;--spacing-xl: 7rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-full: 9999px}@media(max-width:768px){:root{--spacing-xs: .35rem;--spacing-sm: .75rem;--spacing-md: 1.5rem;--spacing-lg: 3rem;--spacing-xl: 5rem}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg);background-image:radial-gradient(circle at 50% 0%,#1a0505 0%,transparent 60%),radial-gradient(circle at 80% 40%,rgba(255,59,48,.05) 0%,transparent 40%);color:var(--color-text-primary);line-height:var(--line-height);overflow-x:hidden;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary)}img{max-width:100%;display:block}h1,h2,h3{font-weight:800;letter-spacing:-.03em;line-height:1.1}.container{width:90%;max-width:1200px;margin:0 auto}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:var(--radius-full);font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.25,1,.5,1);border:none;font-size:1rem}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 4px 20px var(--color-primary-glow)}.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 30px var(--color-primary-glow);color:#fff}.btn-secondary{background:var(--color-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--color-border);color:#fff}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3;color:#fff;transform:translateY(-2px)}.glass-card{background:var(--color-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--color-glass-border);border-radius:var(--radius-lg);transition:all .4s ease}.glass-card:hover{background:#ffffff0f;border-color:#ffffff26;transform:translateY(-5px);box-shadow:0 20px 40px #0006}.horizontal-scroll{display:flex;overflow-x:auto;gap:var(--spacing-md);width:100vw;margin-left:50%;transform:translate(-50%);padding-left:5vw;padding-right:5vw;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}@media(min-width:1024px){.horizontal-scroll{padding-left:max(var(--spacing-md),calc((100vw - 1200px) / 2 + var(--spacing-md)))}.horizontal-scroll.center-desktop{justify-content:center;padding-left:var(--spacing-md)}}.horizontal-scroll{-ms-overflow-style:none;scrollbar-width:none}.horizontal-scroll::-webkit-scrollbar{display:none}.scroll-card{flex:0 0 auto;width:280px;scroll-snap-align:center}@media(min-width:768px){.scroll-card{width:320px}}.horizontal-snap-start{scroll-snap-align:start}.game-scroll-card{flex:0 0 auto;width:60vw;min-width:250px;max-width:280px;height:320px;scroll-snap-align:start}@media(min-width:768px){.game-scroll-card{width:280px;max-width:none;height:360px}}.section-padding{padding:var(--spacing-xl) 0}.visible-mobile{display:block}.hidden-mobile{display:none!important}@media(min-width:768px){.visible-mobile{display:none!important}.hidden-mobile{display:flex!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .8s ease-out forwards}#root{width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
