:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:#0a0a0a;color:#fafafa}.game-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;gap:.75rem;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.game-title{margin:0;font-size:2rem;font-weight:800;letter-spacing:-.03em;background:linear-gradient(135deg,#fbbf24,#f59e0b,#d97706);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.game-subtitle{margin:0 0 .5rem;font-size:.85rem;color:#fff6;letter-spacing:.15em;text-transform:uppercase;font-weight:500}.canvas-wrapper{position:relative;border-radius:.75rem;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 40px #3b82f626,0 4px 20px #0006}.canvas-wrapper canvas{display:block}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:.75rem}.overlay-content{text-align:center}.starter-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.6rem;animation:fadeIn .6s ease-out}.starter-icon{width:72px;height:72px;border-radius:50%;background:#fbbf241f;border:2px solid rgba(251,191,36,.3);display:grid;place-items:center;margin-bottom:.25rem;animation:float 2.5s ease-in-out infinite}.starter-title{margin:0;font-size:1.6rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#fbbf24,#f59e0b,#d97706);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.starter-tagline{margin:0;font-size:.8rem;color:#ffffff73;letter-spacing:.2em;text-transform:uppercase}.play-btn{margin-top:.5rem;padding:.7rem 2.4rem;font-size:.9rem;font-weight:800;letter-spacing:.15em;color:#0f172a;background:linear-gradient(135deg,#fbbf24,#f59e0b);border:none;border-radius:.5rem;cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 16px #fbbf2459;font-family:inherit}.play-btn:hover{transform:scale(1.05);box-shadow:0 6px 24px #fbbf2480}.play-btn:active{transform:scale(.97)}.starter-controls{display:flex;gap:1.25rem;font-size:.72rem;color:#ffffff59;margin-top:.25rem}.starter-controls kbd{display:inline-block;padding:.1rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.65rem;border:1px solid rgba(255,255,255,.15);border-radius:.2rem;background:#ffffff0d;margin-right:.3rem}.starter-hint{margin:0;font-size:.72rem;color:#ffffff40}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.tap-text{margin:0;font-size:1.25rem;font-weight:700;color:#fbbf24;animation:pulse 1.5s ease-in-out infinite}.hint-text{margin:.5rem 0 0;font-size:.85rem;color:#ffffff80}.gameover-text{margin:0 0 .25rem;font-size:1.75rem;font-weight:800;color:#ef4444}.score-text{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#fff}.new-record{margin:0 0 .5rem;font-size:.9rem;font-weight:700;color:#22c55e;animation:pulse 1s ease-in-out infinite}.over-buttons{display:flex;flex-direction:column;align-items:center;gap:.6rem;margin-top:.75rem}.retry-btn{margin-top:0}.back-btn{padding:.45rem 1.6rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;color:#fff9;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:.4rem;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.back-btn:hover{background:#ffffff1a;color:#ffffffd9}.stats-bar{display:flex;gap:2rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;color:#ffffff80}.controls-info{font-size:.75rem;color:#ffffff4d}.controls-info kbd{display:inline-block;padding:.15rem .4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;border:1px solid rgba(255,255,255,.15);border-radius:.25rem;background:#ffffff0d;margin:0 .15rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
