*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;background:radial-gradient(circle at top,rgba(88,101,242,.35),transparent 60%),linear-gradient(180deg,#050b2c,#041a3b 55%,#00143a);min-height:100vh}body{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes popIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fadeSlideUp{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes glowPulse{0%{box-shadow:0 0 0 rgba(0,255,136,.2)}50%{box-shadow:0 0 16px rgba(0,255,136,.45)}to{box-shadow:0 0 0 rgba(0,255,136,.2)}}#game-canvas{display:block;max-width:100%;height:100%;touch-action:none}body.gameplay-active{overflow:hidden;height:100vh;overscroll-behavior:none}body.gameplay-active .game-main{overflow:hidden}.game-screen{min-height:100dvh;height:100dvh;display:flex;flex-direction:column}.game-header{padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;background:rgba(0,31,92,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid hsla(0,0%,100%,.1);padding-top:calc(1rem + env(safe-area-inset-top))}.game-header h1{font-size:1.8rem;font-weight:700;background:linear-gradient(90deg,#fff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-actions{display:flex;gap:1rem;align-items:center}.wallet-badge{padding:.5rem 1rem;background:rgba(0,255,136,.2);border:1px solid rgba(0,255,136,.5);border-radius:20px;font-size:.9rem}.game-main{flex:1 1;flex-direction:column;gap:2rem;padding:2rem 2rem calc(2rem + env(safe-area-inset-bottom))}.game-main,.player-name-modal{display:flex;align-items:center}.player-name-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);justify-content:center;z-index:50;animation:fadeSlideUp .2s ease-out}.player-name-card{width:min(420px,92vw);background:rgba(0,31,92,.95);border:2px solid rgba(0,255,136,.4);border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.3)}.player-name-card h3{font-size:1.4rem;margin-bottom:.5rem}.player-name-card p{color:hsla(0,0%,100%,.75);margin-bottom:1rem}.player-name-card input{width:100%;padding:.75rem .9rem;border-radius:10px;border:1px solid hsla(0,0%,100%,.2);background:rgba(0,0,0,.2);color:#fff;margin-bottom:.75rem}.player-name-actions{display:flex;gap:.75rem;justify-content:center}.how-to-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:60;animation:fadeSlideUp .2s ease-out}.how-to-card{width:min(420px,92vw);background:rgba(0,31,92,.95);border:2px solid rgba(0,255,136,.35);border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 12px 30px rgba(0,0,0,.3)}.how-to-card h3{font-size:1.4rem;margin-bottom:.75rem}.how-to-list{list-style:none;margin:0 0 1rem;padding:0;color:hsla(0,0%,100%,.85)}.how-to-list li{padding:.35rem 0}.checkbox-row{display:flex;gap:.5rem;align-items:center;justify-content:center;font-size:.9rem;color:hsla(0,0%,100%,.75);margin-bottom:.75rem}.checkbox-row input{accent-color:#0f8}.how-to-actions{display:flex;justify-content:center}.game-footer{text-align:center;font-size:.85rem;color:hsla(0,0%,100%,.7);background:rgba(0,31,92,.6);padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#0052ff,#0f8);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,255,136,.4)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary.btn-large{padding:1rem 2rem;font-size:1.2rem}.btn-loading{opacity:.85}.btn-content{display:inline-flex;align-items:center;gap:.5rem}.btn-spinner{width:14px;height:14px;border-radius:50%;border:2px solid hsla(0,0%,100%,.4);border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.btn-secondary{padding:.5rem 1rem;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.3);border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.btn-secondary:hover{background:hsla(0,0%,100%,.2)}.btn-secondary.btn-small{padding:.4rem .8rem;font-size:.85rem}.btn-secondary.btn-large{padding:1rem 2rem;font-size:1.1rem}.btn-disconnect{padding:.4rem .8rem;background:rgba(255,0,0,.2);border:1px solid rgba(255,0,0,.5);border-radius:6px;font-size:.85rem}.btn-control,.btn-disconnect{color:#fff;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.btn-control{padding:.75rem 1.5rem;background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.3);border-radius:8px;font-weight:600;font-size:1rem;transition:transform .2s ease,box-shadow .2s ease}.btn-control:hover{background:hsla(0,0%,100%,.25);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.2)}.btn-jump{background:linear-gradient(135deg,#0f8,#0052ff);font-size:1.05rem}.auth-prompt{text-align:center;padding:3rem;max-width:500px}.auth-prompt h2{font-size:2rem;margin-bottom:1rem}.auth-prompt p{font-size:1.1rem;margin-bottom:2rem;color:hsla(0,0%,100%,.9)}.error-message{color:#ff6b6b;font-size:.9rem;margin-top:.5rem}.wallet-auth,.wallet-connect,.wallet-connected{display:flex;flex-direction:column;align-items:center;gap:.5rem}.wallet-loading{font-size:.9rem;color:hsla(0,0%,100%,.7)}.wallet-info{display:flex;align-items:center;gap:1rem}.points-badge{padding:.45rem .9rem;background:rgba(0,255,136,.15);border:1px solid rgba(0,255,136,.4);border-radius:999px;font-size:.9rem;color:#0f8}.game-canvas-container{max-width:900px;flex-direction:column;align-items:center;gap:1rem;touch-action:none}.game-canvas-container,.game-hud{position:relative;width:100%;display:flex}.game-hud{gap:2rem;padding:1rem;background:linear-gradient(135deg,rgba(0,31,92,.8),rgba(0,82,255,.35));border-radius:8px;max-width:800px;justify-content:center;border:1px solid rgba(0,255,136,.2);box-shadow:0 6px 18px rgba(0,0,0,.25)}.hud-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;border-radius:10px;background:rgba(0,0,0,.2);border:1px solid hsla(0,0%,100%,.08);min-width:90px;animation:popIn .25s ease-out}.hud-label{font-size:.85rem;color:hsla(0,0%,100%,.7);letter-spacing:.04em;text-transform:uppercase}.hud-value{font-size:1.5rem;font-weight:700;color:#0f8;text-shadow:0 2px 8px rgba(0,255,136,.35)}.btn-mute{position:absolute;right:10px;top:10px;border:1px solid hsla(0,0%,100%,.25);background:rgba(0,0,0,.25);border-radius:999px;padding:.35rem .5rem;color:#fff;cursor:pointer;transition:transform .2s ease,background .2s ease;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.btn-mute:hover{transform:scale(1.05);background:hsla(0,0%,100%,.1)}.btn-mute.muted{opacity:.7}.game-canvas{background:#001f5c;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.3);border:2px solid #0052ff;width:100%;height:clamp(260px,55dvh,560px);image-rendering:pixelated;image-rendering:crisp-edges}.game-pause-overlay,.game-start-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,31,92,.95);padding:3rem;border-radius:16px;text-align:center;border:2px solid rgba(0,255,136,.5);z-index:10}.overlay-fade-in{animation:fadeSlideUp .2s ease-out}.game-pause-overlay h2,.game-start-overlay h2{font-size:2.5rem;margin-bottom:1rem;background:linear-gradient(90deg,#fff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.game-start-overlay p{margin-bottom:.5rem;color:hsla(0,0%,100%,.9)}.game-controls{display:flex;gap:1rem;margin-top:1rem}.game-instructions{text-align:center;font-size:.9rem;color:hsla(0,0%,100%,.7)}.game-instructions p{margin:.25rem 0}.game-over-screen{width:100%;max-width:600px;padding:2rem}.game-over-content{background:rgba(0,31,92,.8);padding:3rem;border-radius:16px;border:2px solid rgba(0,255,136,.5);text-align:center}.game-over-content h2{font-size:3rem;margin-bottom:1.5rem;background:linear-gradient(90deg,#fff,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.new-record-badge{background:linear-gradient(135deg,#0f8,#0052ff);padding:.75rem 1.5rem;border-radius:20px;font-weight:700;margin-bottom:2rem;font-size:1.1rem}.final-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:2rem}.stat-card{background:rgba(0,82,255,.3);padding:1.5rem;border-radius:12px;border:1px solid rgba(0,255,136,.3);transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.25)}.stat-label{font-size:.85rem;color:hsla(0,0%,100%,.7);margin-bottom:.5rem}.stat-value{font-size:2rem;font-weight:700;color:#0f8}.save-status{margin:1.5rem 0;padding:1rem;border-radius:8px}.save-status.success{background:rgba(0,255,136,.2);border:1px solid rgba(0,255,136,.5);color:#0f8}.save-status.error{background:hsla(0,100%,71%,.2);border:1px solid hsla(0,100%,71%,.5);color:#ff6b6b}.game-over-actions{margin-top:2rem}.guest-cta{margin-top:1.5rem;padding:1.5rem;border-radius:16px;background:rgba(0,31,92,.6);border:1px solid hsla(0,0%,100%,.1);text-align:center;display:flex;flex-direction:column;gap:.75rem;align-items:center}.guest-cta p{color:hsla(0,0%,100%,.85);font-size:1rem}.share-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}.share-status{width:100%;text-align:center;font-size:.9rem;color:hsla(0,0%,100%,.75)}.landing{width:100%;max-width:1100px;display:flex;flex-direction:column;gap:2rem;padding:2rem 0 1rem}.landing-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:2rem;gap:2rem;align-items:center;background:linear-gradient(135deg,rgba(0,82,255,.2),rgba(88,101,242,.18));border:1px solid hsla(0,0%,100%,.08);border-radius:20px;padding:2.5rem;box-shadow:0 18px 40px rgba(0,0,0,.25)}.hero-copy{display:flex;flex-direction:column;gap:1rem}.hero-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:hsla(0,0%,100%,.6)}.hero-title{font-size:clamp(2rem,4vw,3.2rem);font-weight:700;line-height:1.1}.hero-subtitle{font-size:1.05rem;color:hsla(0,0%,100%,.85)}.hero-cta{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.cta-glow{animation:glowPulse 2.2s ease-in-out infinite}.hero-note{font-size:.95rem;color:hsla(0,0%,100%,.7)}.gif-frame,.hero-media{display:flex;justify-content:center;align-items:center}.gif-frame{width:min(100%,420px);aspect-ratio:16/9;border-radius:16px;border:1px dashed hsla(0,0%,100%,.25);background:linear-gradient(135deg,rgba(0,31,92,.6),rgba(0,82,255,.35));padding:1rem;text-align:center}.gif-placeholder{font-size:.95rem;color:hsla(0,0%,100%,.7)}.landing-howto{background:rgba(0,31,92,.5);border-radius:16px;padding:1.5rem 2rem;border:1px solid hsla(0,0%,100%,.08)}.landing-howto h3{font-size:1.4rem;margin-bottom:.75rem}.landing-howto ul{list-style:none;display:grid;grid-gap:.5rem;gap:.5rem;color:hsla(0,0%,100%,.85)}.landing-howto li:before{content:"•";color:#0f8;margin-right:.5rem}.leaderboard-panel{width:100%;max-width:900px;background:rgba(0,31,92,.8);padding:2rem;border-radius:16px;border:2px solid rgba(0,255,136,.3)}.rewards-panel{width:100%;max-width:600px;background:rgba(0,31,92,.75);padding:2rem;border-radius:16px;border:1px solid rgba(0,255,136,.35);text-align:center;box-shadow:0 12px 28px rgba(0,0,0,.25)}.rewards-panel h2{font-size:1.8rem;margin-bottom:1rem;background:linear-gradient(90deg,#fff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.rewards-balance{font-size:1.4rem;font-weight:700;color:#0f8;margin-bottom:.5rem}.rewards-note{color:hsla(0,0%,100%,.75);font-size:1rem}.rewards-streak{margin-top:1.25rem;padding-top:1rem;border-top:1px solid hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.85)}.leaderboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.leaderboard-header h2{font-size:1.8rem;background:linear-gradient(90deg,#fff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.leaderboard-note{margin-top:.35rem;font-size:.9rem;color:hsla(0,0%,100%,.7)}.leaderboard-empty,.leaderboard-error,.leaderboard-loading{text-align:center;padding:3rem;color:hsla(0,0%,100%,.7)}.leaderboard-error{color:#ff6b6b}.leaderboard-table{display:flex;flex-direction:column;gap:.5rem}.leaderboard-row{display:grid;grid-template-columns:80px 1fr 120px 100px 100px;grid-gap:1rem;gap:1rem;padding:1rem;background:rgba(0,82,255,.2);border-radius:8px;border:1px solid hsla(0,0%,100%,.1);align-items:center}.leaderboard-row.header{background:rgba(0,255,136,.2);font-weight:700;border:1px solid rgba(0,255,136,.4)}.rank-col{text-align:center;font-size:1.2rem}.address-col{font-family:Courier New,monospace;font-size:.9rem;overflow:hidden;text-overflow:ellipsis}.coins-col,.distance-col,.score-col{text-align:right;font-weight:600}.score-col{color:#0f8}@media (max-width:768px){.game-header{flex-direction:column;gap:1rem;padding:1rem}.game-header h1{font-size:1.5rem}.header-actions{flex-wrap:wrap;justify-content:center}.game-main{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom))}.game-hud{flex-wrap:wrap;gap:1rem;font-size:.9rem}.hud-value{font-size:1.2rem}.hud-label{font-size:.7rem}.game-canvas{height:clamp(240px,50dvh,420px)}.game-pause-overlay,.game-start-overlay{padding:2rem 1.5rem;width:90%}.game-pause-overlay h2,.game-start-overlay h2{font-size:1.8rem}.game-controls{flex-direction:column;width:100%}.btn-control{width:100%}.btn-jump{font-size:1.2rem;padding:1rem 1.5rem}.landing{padding:1rem 0 .5rem}.landing-hero{padding:1.5rem}.hero-cta{align-items:stretch}.hero-title{font-size:2rem}.landing-howto{padding:1.25rem}.game-hud{padding:.75rem}.hud-stat{min-width:110px;padding:.4rem .6rem}.final-stats{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}.leaderboard-row{grid-template-columns:60px 1fr 80px 60px 70px;font-size:.85rem;padding:.75rem;gap:.5rem}.rank-col{font-size:1rem}.address-col{font-size:.75rem}}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Inter_f367f3;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Inter_Fallback_f367f3;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_f367f3{font-family:__Inter_f367f3,__Inter_Fallback_f367f3;font-style:normal}