body{ margin:0; min-height:100vh; display:grid; place-items:center; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; background: radial-gradient(1200px 700px at 50% 30%, #1a2340 0%, #0b1020 55%, #070a14 100%); color:#e9eefc; } .wrap{ width:min(1000px, 96vw); display:grid; grid-template-columns: 1fr 260px; gap:14px; align-items:start; } .card{ background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; box-shadow: 0 10px 30px rgba(0,0,0,0.35); overflow:hidden; } .topbar{ display:flex; justify-content:space-between; align-items:center; padding:10px 12px; background: rgba(255,255,255,0.05); border-bottom: 1px solid rgba(255,255,255,0.08); gap:10px; flex-wrap:wrap; } .pill{ display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; background: rgba(0,0,0,0.25); border: 1px solid rgba(255,255,255,0.10); font-weight:600; letter-spacing:0.2px; } .btn{ cursor:pointer; padding:8px 10px; border-radius:10px; border:1px solid rgba(255,255,255,0.14); background: rgba(255,255,255,0.08); color:#e9eefc; font-weight:700; user-select:none; } .btn:active{ transform: translateY(1px); } canvas{ display:block; width:100%; aspect-ratio: 16/9; background: linear-gradient(#0c1430, #060a16); } .side{ padding:12px; } h2{ margin:0 0 8px 0; font-size:16px; } .rule{ font-size:13px; line-height:1.45; opacity:0.95; margin-bottom:10px; } .kbd{ display:inline-block; padding:2px 8px; border:1px solid rgba(255,255,255,0.18); border-bottom-width:2px; border-radius:8px; background: rgba(0,0,0,0.25); font-weight:800; letter-spacing:0.3px; } .legend{ display:grid; gap:8px; margin-top:10px; font-size:13px; } .row{ display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; background: rgba(0,0,0,0.20); border:1px solid rgba(255,255,255,0.10); border-radius:12px; } .dot{ width:12px; height:12px; border-radius:999px; display:inline-block; margin-right:8px; box-shadow: 0 0 14px rgba(255,255,255,0.10); } .shoot-btn{ width:100%; margin-top:10px; padding:12px 10px; border-radius:12px; border:1px solid rgba(255,255,255,0.18); background: rgba(120,180,255,0.15); font-weight:900; cursor:pointer; } .muted{ opacity:0.75; font-size:12px; margin-top:8px; }
Target Blaster
TopAIGames
Score: 0
Last:

How to Play

There’s a shoot line in the middle of the screen. Press Space to shoot.
If a moving target overlaps the shoot line when you press Space, you hit it and gain its points. If you miss, you lose 2 points.
Target5 pts
Target10 pts
Target15 pts
Target20 pts
Tip: higher points = smaller/faster target.