@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";:root{font-family:"Press Start 2P",cursive,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffe6;background-color:#111;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;justify-content:center;background:radial-gradient(circle at center,#2a2a2a,#000);overflow:hidden}#app{text-align:center;position:relative;box-shadow:0 0 50px #000c;border-radius:8px;overflow:hidden;width:960px;height:540px}canvas{display:block;background-color:#000;image-rendering:pixelated}.ui-overlay{position:absolute;top:0;left:0;width:100%;padding:15px;box-sizing:border-box;display:flex;justify-content:space-between;pointer-events:none;background:linear-gradient(to bottom,#000c,#0000);text-shadow:2px 2px 0 #000;font-size:14px;z-index:10}#score{color:#4ade80}#timer{color:#fff}#status{color:#fbbf24}.message-overlay{position:absolute;top:20%;left:50%;transform:translate(-50%,-50%);color:#ef4444;font-size:20px;text-shadow:2px 2px 0 #000;text-align:center;display:none;pointer-events:none;background:#000c;padding:15px 25px;border:2px solid #ef4444;border-radius:8px;z-index:20;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275)}.start-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;z-index:100;transition:opacity .3s ease}.start-overlay.title-screen{justify-content:flex-start;padding-top:0;background-image:url(/title-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;text-shadow:4px 4px 0 #000,-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000;-webkit-backdrop-filter:none;backdrop-filter:none}#game-over-screen{justify-content:flex-start;padding-top:50px;background-image:url(/game-over-bg.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;-webkit-backdrop-filter:none;backdrop-filter:none}.title-logo{width:62%;max-width:460px;height:auto;margin-bottom:40px;margin-top:-60px;image-rendering:pixelated;animation:float 3s ease-in-out infinite}.game-title{font-size:64px;color:#f90;text-shadow:6px 6px 0 #500,8px 8px 0 #000;margin-bottom:40px;text-transform:uppercase;letter-spacing:4px;line-height:1.2;transform:rotate(-2deg);animation:float 3s ease-in-out infinite}.start-overlay .press-start{color:#fff;font-family:"Press Start 2P",cursive;font-size:32px;text-transform:uppercase;text-align:center;text-shadow:3px 3px 0 #000;position:absolute;bottom:50px;width:100%;margin-top:0}.blink{animation:blinker 1s linear infinite}.start-overlay h1{font-size:32px;color:#ef4444;text-shadow:4px 4px 0 #500;margin-bottom:10px;text-transform:uppercase;letter-spacing:2px}.start-overlay p{font-size:12px;color:#aaa;margin-bottom:30px;line-height:1.6;max-width:600px}.start-overlay button{background:#0009;color:#fff;border:2px solid #fff;padding:15px 25px;margin:10px;font-family:"Press Start 2P",cursive;font-size:14px;cursor:pointer;transition:all .2s ease;text-transform:uppercase;position:relative;overflow:hidden;min-width:350px;display:flex;flex-direction:column;align-items:center}.start-overlay button .sub-text{font-size:10px;color:#ccc;margin-top:5px;text-transform:none}.start-overlay button:hover{background:#fff;color:#000;transform:scale(1.05);box-shadow:0 0 15px #ffffff80}.start-overlay button:hover .sub-text{color:#333}.start-overlay button:active{transform:scale(.95)}.start-overlay button.selected{background:#ef4444;border-color:#ef4444;color:#fff;box-shadow:0 0 20px #ef444499}.start-overlay button.selected .sub-text{color:#ffd}@keyframes pulse{0%{transform:scale(1);text-shadow:4px 4px 0 #500}50%{transform:scale(1.05);text-shadow:6px 6px 0 #500}to{transform:scale(1);text-shadow:4px 4px 0 #500}}@keyframes float{0%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(-2deg)}to{transform:translateY(0) rotate(-2deg)}}@keyframes blinker{50%{opacity:0}}@keyframes popIn{0%{transform:translate(-50%,-50%) scale(.5);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}
