*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-deep: #0a0a0c;--bg-surface: #111114;--bg-raised: #1a1a1e;--bg-overlay: rgba(10, 10, 12, .92);--accent-primary: #00ff41;--accent-primary-dim: rgba(0, 255, 65, .15);--accent-primary-glow: rgba(0, 255, 65, .4);--accent-amber: #ffb000;--accent-amber-dim: rgba(255, 176, 0, .15);--accent-cyan: #00e5ff;--accent-cyan-dim: rgba(0, 229, 255, .15);--accent-red: #ff3333;--accent-red-dim: rgba(255, 51, 51, .15);--text-primary: #e0ffe0;--text-secondary: #88cc88;--text-tertiary: #446644;--border: #1a3a1a;--border-bright: #00ff41;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 2px;--radius: 4px;--radius-lg: 8px;--font-pixel: "Press Start 2P", monospace;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--transition-fast: .15s ease;--transition: .25s ease;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-mono);background-color:var(--bg-deep);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}[data-theme=crt] body:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.15) 2px,rgba(0,0,0,.15) 3px);pointer-events:none;z-index:9999;opacity:.4}[data-theme=crt] body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.5) 100%);pointer-events:none;z-index:9998}[data-theme=clean] body:after,[data-theme=clean] body:before{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-pixel);font-weight:400;line-height:1.4;color:var(--text-primary)}h1{font-size:1.1rem}h2{font-size:.9rem}h3,h4{font-size:.875rem}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-cyan)}.container{max-width:1100px;margin:0 auto;padding:0 var(--space-lg)}.text-glow{text-shadow:0 0 4px var(--accent-primary-glow),0 0 12px var(--accent-primary-glow)}.text-glow-amber{text-shadow:0 0 4px rgba(255,176,0,.4),0 0 12px rgba(255,176,0,.4)}.pixel-border{border:1px solid var(--accent-primary);box-shadow:0 0 4px var(--accent-primary-glow),inset 0 0 4px var(--accent-primary-dim)}.pixel-border-amber{border:1px solid var(--accent-amber);box-shadow:0 0 4px #ffb0004d,inset 0 0 4px var(--accent-amber-dim)}.btn{font-family:var(--font-pixel);font-size:.875rem;padding:var(--space-sm) var(--space-lg);border:1px solid var(--accent-primary);background:transparent;color:var(--accent-primary);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-fast);min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.btn:hover{background-color:var(--accent-primary-dim);box-shadow:0 0 8px var(--accent-primary-glow)}.btn:active{transform:scale(.97)}.btn--filled{background-color:var(--accent-primary);color:var(--bg-deep)}.btn--filled:hover{background-color:#3f6}.btn--amber{border-color:var(--accent-amber);color:var(--accent-amber)}.btn--amber:hover{background-color:var(--accent-amber-dim);box-shadow:0 0 8px #ffb0004d}button,[role=button],input[type=submit],input[type=button],input[type=reset]{min-height:44px;min-width:44px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}::selection{background-color:var(--accent-primary);color:var(--bg-deep)}*:focus-visible{outline:3px solid var(--accent-primary);outline-offset:2px}*:focus-visible{box-shadow:0 0 0 3px var(--accent-primary-glow)}*:focus:not(:focus-visible){outline:none;box-shadow:none}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-to-content{position:absolute;top:-100%;left:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--accent-primary);color:var(--bg-deep);font-family:var(--font-pixel);font-size:.875rem;z-index:10000;text-decoration:none}.skip-to-content:focus{top:var(--space-md)}::view-transition-old(root){animation:fade-out .15s ease forwards}::view-transition-new(root){animation:fade-in .15s ease forwards}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}@media(max-width:768px){html{font-size:15px}.container{padding:0 var(--space-md)}h1{font-size:.9rem}h2{font-size:.875rem}}@media(max-width:480px){html{font-size:14px}.container{padding:0 var(--space-sm)}}main.main--immersive>:not(router-outlet){flex:1;display:flex;flex-direction:column;min-height:0}main.main--immersive .container{flex:1;display:flex;flex-direction:column;min-height:0;padding:0;max-width:100%;margin:0}main.main--immersive app-touch-controls,main.main--immersive .tetris-info,main.main--immersive .invaders-lives,main.main--immersive .breakout-lives{flex-shrink:0}main.main--immersive app-high-scores{display:none}main.main--immersive canvas{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important}main.main--immersive .memory-board,main.main--immersive .p2048-board{flex:1;min-height:0}main.main--immersive .memory-info{flex-shrink:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html{scroll-behavior:auto}.text-glow,.text-glow-amber{text-shadow:none}[data-theme=crt] body:after,[data-theme=crt] body:before{display:none}}@media print{body:before,body:after{display:none!important}body{background:#fff;color:#000}}
