@font-face{font-family:"Press Start 2P";src:url(/fonts/press-start-2p.woff2) format("woff2");font-weight:400;font-display:swap}:root{--bg: #1a0a0f;--bg-deep: #120608;--red: #ec2426;--red-dark: #9c1518;--orange: #ff7a1a;--yellow: #ffd23f;--pale-yellow: #fff58b;--cream: #f5e9d9;--px-font: "Press Start 2P", monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;background:var(--bg-deep);overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#app{position:relative;width:100%;height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden}#game-canvas{display:block;touch-action:none;image-rendering:pixelated;background:var(--bg)}#crt-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(to bottom,#0000,#0000 2px,#0000001f 3px);z-index:5}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#120608eb;font-family:var(--px-font);color:var(--cream);text-align:center}.overlay-inner{width:min(340px,92vw);max-height:100dvh;overflow-y:auto;padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:8px}.hidden{display:none!important}.brand-logo{width:150px;max-width:60%;margin-bottom:34px}.game-title{font-size:34px;line-height:1.25;letter-spacing:-4px;color:var(--red);text-shadow:3px 3px 0 var(--red-dark),6px 6px 0 rgba(0,0,0,.6)}.tagline{font-size:9px;line-height:1.7;color:var(--pale-yellow);white-space:pre-line}.btn{font-family:var(--px-font);border:none;cursor:pointer;color:var(--cream);text-transform:uppercase}.btn-primary{background:var(--red);font-size:13px;padding:14px 20px;border:3px solid var(--cream);box-shadow:4px 4px 0 var(--red-dark),7px 7px #00000080;transition:transform .05s}.btn-primary:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--red-dark)}.btn-secondary{background:var(--orange);color:var(--bg-deep);font-size:11px;padding:11px 16px;border:3px solid var(--cream);box-shadow:4px 4px #00000080}.btn-secondary:active{transform:translate(2px,2px);box-shadow:1px 1px #00000080}.btn-ghost{background:transparent;border:2px solid var(--cream);opacity:.7;font-size:9px;padding:8px 10px}.btn-timer{display:flex;flex-direction:column;gap:8px;align-items:center}.timer-dial{font-size:22px;color:var(--pale-yellow)}.hint{font-size:8px;opacity:.8}.challenge-banner{font-size:9px;line-height:1.7;color:var(--orange);border:2px dashed var(--orange);padding:8px 10px;animation:voucher-pop .35s ease-out}.btn-daily{font-size:9px;padding:11px 14px}.daily-line{width:100%;font-size:10px;line-height:1.7;color:var(--bg-deep);background:var(--pale-yellow);border:3px solid var(--yellow);box-shadow:4px 4px #00000080;padding:8px;animation:voucher-pop .35s ease-out}.go-good{color:#3fd96b}.go-bad{color:var(--red)}.blink{animation:blink 1s steps(2,start) infinite}@keyframes blink{50%{opacity:0}}.highscore-line{font-size:9px;color:var(--yellow);line-height:1.6}.start-footer{display:flex;gap:12px;margin-top:4px}.legal{font-size:7px;line-height:1.6;opacity:.55}.legal a{color:var(--cream);text-decoration:underline}.go-title{font-size:20px;letter-spacing:-2px;color:var(--red);text-shadow:3px 3px 0 var(--red-dark)}.ko-art{image-rendering:pixelated;line-height:0}.ko-art canvas{image-rendering:pixelated}.killer-line{font-size:8px;color:var(--pale-yellow);line-height:1.7}.score-panel{width:100%;border:3px solid var(--cream);padding:10px 12px;display:flex;flex-direction:column;gap:8px;background:#00000059}.score-row{display:flex;justify-content:space-between;font-size:10px;line-height:1.4}.score-value{color:var(--yellow)}.score-row-total{font-size:13px}.score-row-total .score-value{color:var(--orange)}.big-timer{font-size:28px;color:var(--pale-yellow);text-shadow:3px 3px 0 rgba(0,0,0,.6)}.big-timer.urgent{color:var(--red);animation:blink .5s steps(2,start) infinite}.new-record{font-size:10px;color:var(--green, #3fd96b);color:#3fd96b}.tier-card{width:100%;border:3px solid var(--orange);background:#ff7a1a1f;padding:10px}.tier-title{font-size:12px;color:var(--orange);line-height:1.6}.tier-sub{font-size:8px;line-height:1.7;margin-top:6px}.tier-card.voucher{border:3px dashed var(--yellow);background:#ffd23f1a;animation:voucher-pop .35s ease-out}.tier-card.voucher .tier-title{color:var(--yellow)}@keyframes voucher-pop{0%{transform:scale(.8)}60%{transform:scale(1.06)}to{transform:scale(1)}}.tier-ladder{display:flex;gap:6px;width:100%;justify-content:center}.tier-step{flex:1;border:2px solid var(--cream);opacity:.45;font-size:7px;line-height:1.6;padding:6px 2px}.tier-step.reached{opacity:1;border-color:var(--yellow);color:var(--yellow)}.ramen-line{font-size:8px;color:var(--cream);opacity:.85;line-height:1.7}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:#000000bf;display:flex;align-items:center;justify-content:center;font-family:var(--px-font);color:var(--cream)}.modal{position:relative;width:min(320px,90vw);background:var(--bg);border:3px solid var(--red);box-shadow:6px 6px #0009;padding:26px 18px 22px;display:flex;flex-direction:column;gap:14px;text-align:center}.modal h3{font-size:12px;line-height:1.6;color:var(--pale-yellow)}.modal-tier{font-size:9px;color:var(--orange)}.modal-x{position:absolute;top:6px;right:10px;background:none;border:none;color:var(--cream);font-size:18px;font-family:var(--px-font);cursor:pointer}#email-input{font-family:var(--px-font);font-size:10px;padding:12px 10px;background:var(--bg-deep);border:2px solid var(--cream);color:var(--cream);width:100%}#email-input:focus{outline:none;border-color:var(--yellow)}.consent{display:flex;gap:8px;align-items:flex-start;font-size:7px;line-height:1.7;text-align:left;cursor:pointer}.consent input{margin-top:2px;accent-color:var(--red)}.modal-error{font-size:8px;color:var(--red);line-height:1.6}#modal-step-form,#modal-step-loading,#modal-step-code{display:flex;flex-direction:column;gap:14px}.loading-devil{font-size:34px;animation:bounce .5s infinite alternate}@keyframes bounce{to{transform:translateY(-8px) rotate(10deg)}}#modal-step-loading p:last-child{font-size:9px}.code-box{border:3px dashed var(--yellow);padding:14px 8px;font-size:13px;color:var(--yellow);letter-spacing:1px;background:#ffd23f14}.proto-note{font-size:7px;opacity:.6;line-height:1.7}.code-expiry{font-size:8px;color:var(--orange);line-height:1.7}a.btn{text-decoration:none;display:inline-block;text-align:center}
