@font-face{font-family:Jua;src:url(/fonts/jua-subset.woff2)format("woff2");font-display:swap}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{color:#4e342e;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;word-break:keep-all;background:#ffd8a8;margin:0;font-family:Jua,system-ui,Malgun Gothic,sans-serif}#app{position:fixed;inset:0}#game{touch-action:none;position:absolute;inset:0;overflow:hidden}#game canvas{width:100%;height:100%;display:block}#ui{pointer-events:none;max-width:720px;margin:0 auto;padding:8px 12px;position:absolute;top:0;left:0;right:0}#ui button{pointer-events:auto}.joystick{pointer-events:none;z-index:5;background:#3e27231f;border:2px solid #3e272340;border-radius:50%;width:112px;height:112px;margin:-56px 0 0 -56px;position:absolute}.joystick[hidden]{display:none}.joystick-knob{background:#ffffffd9;border-radius:50%;width:48px;height:48px;position:absolute;top:50%;left:50%;box-shadow:0 2px 6px #00000040}#ui{padding-top:calc(8px + env(safe-area-inset-top))}.hud-top{background:#fff8efe6;border-radius:14px 14px 0 0;justify-content:space-between;align-items:center;padding:4px 6px 4px 12px;display:flex}.money{font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.sub{color:#8d6e63;margin-top:2px;font-size:12px}.shop-bar{background:#fff8efe6;border-radius:0 0 14px 14px;align-items:center;gap:10px;padding:2px 12px 8px;display:flex}.shop-name{white-space:nowrap;text-overflow:ellipsis;max-width:45%;font-size:13px;font-weight:700;overflow:hidden}.shop-bar .bar{flex:1}.bar{background:#ffe0b2;border-radius:999px;height:18px;position:relative;overflow:hidden}.bar .fill{background:linear-gradient(90deg,#66bb6a,#2e7d32);height:100%;transition:width .2s}.bar-text{color:#3e2723;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;inset:0}.next-shop{color:#3e2723;cursor:pointer;background:#f9a825;border:0;border-radius:12px;width:100%;margin-top:8px;padding:12px;font-size:16px;font-weight:800;animation:.8s infinite alternate pulse;display:block;box-shadow:0 4px #c17900}.next-shop[hidden]{display:none}.next-shop:disabled{opacity:.6;animation:none}@keyframes pulse{to{transform:scale(1.03)}}.icon-btn{cursor:pointer;background:#3e272314;border:0;border-radius:50%;width:34px;height:34px;font-size:17px}.icon-btn[hidden]{display:none}.popup{z-index:20;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.popup .card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:340px;padding:20px}.popup .big{font-size:28px;font-weight:800}.popup button{color:#fff;cursor:pointer;background:#43a047;border:0;border-radius:10px;width:100%;margin-top:8px;padding:12px;font-weight:700;display:block}.popup button.ad{background:#1e88e5}.popup button.ghost{color:#8d6e63;background:0 0}.popup button.danger{background:#c62828}.popup button:disabled{opacity:.5;cursor:default}.popup input{border:2px solid #ffe0b2;border-radius:10px;width:100%;margin-top:10px;padding:12px;font-size:15px}.popup .benefits{text-align:left;padding-left:20px;line-height:1.7}.popup a{color:#8d6e63}.popup .links{margin-top:12px;line-height:1.8}.hud-right{align-items:center;gap:6px;display:flex}.premium-btn[hidden]{display:none}.premium-btn{color:#fff;cursor:pointer;background:#4e342e;border:0;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.premium-btn.active{color:#3e2723;background:#f9a825}.toast{left:50%;top:calc(150px + env(safe-area-inset-top));text-align:center;color:#fff;z-index:30;background:#3e2723;border-radius:12px;max-width:min(420px,100% - 32px);padding:12px 16px;font-size:14px;position:fixed;transform:translate(-50%)}.fx-layer{pointer-events:none;z-index:4;position:absolute;inset:0;overflow:hidden}.floater{white-space:nowrap;will-change:transform, opacity;text-shadow:0 2px #fff,0 0 6px #fffc;font-size:22px;font-weight:900;position:absolute;top:0;left:0}.floater.money{color:#2e7d32}.floater.pay{color:#e65100;font-size:18px}.goal-pill{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));color:#fff;white-space:nowrap;pointer-events:none;z-index:6;background:#3e2723d1;border-radius:999px;max-width:calc(100% - 32px);padding:8px 16px;font-size:15px;font-weight:700;position:absolute;transform:translate(-50%)}.goal-pill:empty{display:none}.fps{color:#9f9;z-index:50;pointer-events:none;background:#0000008c;border-radius:6px;padding:2px 6px;font:11px/1.4 monospace;position:fixed;bottom:6px;left:6px}.upgrade-panel{left:50%;bottom:calc(64px + env(safe-area-inset-bottom));z-index:8;background:#fffcf5f5;border-radius:16px;gap:6px;width:min(380px,100% - 24px);padding:10px 12px;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 6px 20px #0003}.upgrade-panel[hidden]{display:none}.up-title{color:#6d4c8f;font-size:15px;font-weight:800}.up-row{grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:14px;display:grid}.up-icon{text-align:center;font-size:20px}.up-lvl{color:#8d6e63;font-size:12px;font-weight:600}.up-row button{color:#fff;cursor:pointer;background:#43a047;border:0;border-radius:10px;min-width:84px;padding:8px 10px;font-weight:800}.up-row button:disabled{cursor:default;background:#bdbdbd}.up-row button.bought{animation:.35s ease-out bought}@keyframes bought{0%{transform:scale(1.2)}to{transform:scale(1)}}.floater.unlock{color:#e65100;font-size:24px}#loading{text-align:center;z-index:40;color:#6d4c41;background:#ffd8a8;place-content:center;font-weight:800;display:grid;position:absolute;inset:0}#loading .spin{font-size:56px;animation:1.2s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.gift-btn{right:12px;top:calc(118px + env(safe-area-inset-top));cursor:pointer;z-index:7;background:#fff3e0;border:0;border-radius:50%;width:52px;height:52px;font-size:26px;animation:2.4s infinite wiggle;position:absolute;box-shadow:0 3px #e0a96d,0 4px 10px #00000026}.gift-btn[hidden]{display:none}.gift-btn .dot{background:#e53935;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;top:4px;right:4px}.gift-btn .dot[hidden]{display:none}@keyframes wiggle{0%,88%,to{transform:rotate(0)}92%{transform:rotate(-12deg)}96%{transform:rotate(12deg)}}.boost-chip{right:70px;top:calc(128px + env(safe-area-inset-top));color:#3e2723;z-index:7;pointer-events:none;font-variant-numeric:tabular-nums;background:#f9a825;border-radius:999px;padding:6px 10px;font-size:14px;font-weight:800;position:absolute}.boost-chip[hidden]{display:none}.boost-panel{right:12px;top:calc(178px + env(safe-area-inset-top));z-index:9;background:#fffcf5f7;border-radius:16px;gap:8px;width:min(340px,100% - 24px);padding:12px;font-size:14px;display:grid;position:absolute;box-shadow:0 6px 20px #0003}.boost-panel[hidden]{display:none}.bp-title{color:#e65100;font-weight:800}.bp-row{grid-template-columns:1fr auto;align-items:center;gap:8px;display:grid}.bp-row button{color:#fff;cursor:pointer;white-space:nowrap;background:#1e88e5;border:0;border-radius:10px;padding:8px 10px;font-weight:800}.bp-row button:disabled{cursor:default;background:#bdbdbd}.boost-panel .ghost{color:#8d6e63;cursor:pointer;background:0 0;border:0;padding:4px}.tut-bubble{color:#3e2723;text-align:center;z-index:6;pointer-events:none;will-change:transform;background:#fff;border-radius:14px;max-width:min(280px,100% - 24px);padding:10px 14px;font-size:15px;font-weight:800;line-height:1.35;position:absolute;top:0;left:0;box-shadow:0 4px 14px #0003}.tut-bubble:after{content:"";border:9px solid #0000;border-top-color:#fff;border-bottom:0;margin-left:-9px;position:absolute;bottom:-9px;left:50%}body.tutorial .goal-pill{display:none}.hud-top,.shop-bar{background:#fffaf0ed}.hud-top{border:3px solid #d7261e;border-bottom:0}.shop-bar{border:3px solid #d7261e;border-top:0}.money{color:#b71c1c;text-shadow:0 2px #ffe0b2}.shop-name{color:#4e342e}.next-shop{color:#fff;background:#d7261e;font-size:18px;box-shadow:0 4px #8e1510}.goal-pill{background:#b71c1ce6;border:2px solid #fff3e0}.popup .card{border:4px solid #d7261e}.popup h2{color:#b71c1c}input,button{font-family:inherit}.rush-pill{left:50%;top:calc(112px + env(safe-area-inset-top));z-index:5;color:#fff;white-space:nowrap;pointer-events:none;background:linear-gradient(90deg,#ff6f00,#d7261e);border-radius:999px;padding:6px 14px;font-weight:800;animation:.8s ease-in-out infinite alternate rush-pulse;position:absolute;transform:translate(-50%);box-shadow:0 3px #8e0000}.rush-pill[hidden]{display:none}@keyframes rush-pulse{0%{transform:translate(-50%)scale(1)}to{transform:translate(-50%)scale(1.06)}}.floater.vip{color:#f9a825;font-size:22px}.next-preview{text-align:center;background:#fff8e1;border:2px dashed #d7261e;border-radius:12px;margin-top:8px;padding:8px 10px}.next-preview[hidden]{display:none}.np-title{color:#b71c1c;font-size:16px;font-weight:800}.np-menus{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:4px;display:flex}.np-menu{background:#fff;border:1px solid #ffcc80;border-radius:999px;padding:2px 8px;font-size:13px}.np-menu.new{color:#fff;background:#d7261e;border-color:#d7261e;font-weight:800}.np-menu.new:after{content:" NEW";font-size:10px}.np-rules{color:#6d4c41;margin-top:4px;font-size:13px}.run-record{text-align:center;color:#4e342e;background:#fff;border:2px solid #ffcc80;border-radius:12px;margin-top:8px;padding:6px 10px;font-size:14px}.run-record[hidden]{display:none}.run-record b{color:#b71c1c}.rank-link{cursor:pointer;color:#1e88e5;background:0 0;border:0;padding:0 2px;font-family:inherit;font-size:16px;text-decoration:underline}.popup .rank-link{color:#1e88e5;background:0 0;width:auto;margin:0;padding:0 4px;font-size:14px;display:inline}.popup .rank-card{flex-direction:column;max-width:420px;max-height:calc(100dvh - 32px);padding:16px;display:flex}.rank-nick{color:#5d4037;margin-bottom:6px;font-size:14px}.rank-tag{color:#fff;background:#1a1a2e;border-radius:999px;padding:1px 6px;font-size:11px}.rank-edit{gap:6px;display:flex}.popup .rank-edit input{flex:1;margin:0;padding:8px 10px}.popup .rank-edit button{width:auto;margin:0;padding:8px 14px}.rank-tabs{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.popup .rank-tabs button{color:#6d4c41;background:#fff3e0;margin:0;padding:8px 0;font-size:14px}.popup .rank-tabs button.on{color:#fff;background:#d7261e}.rank-shop{color:#4e342e;justify-content:space-between;align-items:center;margin-top:6px;font-weight:800;display:flex}.rank-shop[hidden]{display:none}.popup .rank-shop button{color:#b71c1c;background:#fff3e0;width:36px;margin:0;padding:4px 0;font-size:18px}.rank-head,.rank-list li{text-align:left;grid-template-columns:40px 1fr auto;align-items:center;gap:6px;padding:6px 8px;display:grid}.rank-head{color:#8d6e63;border-bottom:1px solid #ffe0b2;margin-top:4px;font-size:11px}.rank-list{flex:1;min-height:120px;margin:0;padding:0;list-style:none;overflow-y:auto}.rank-list li{border-bottom:1px solid #fff3e0;font-size:14px}.rank-list li.me{background:#fff8e1;font-weight:800}.rank-list li.empty{text-align:center;color:#8d6e63;padding:18px 8px;display:block}.rank-list .rk{text-align:center;color:#b71c1c;font-weight:800}.rank-list .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rank-list .vl{color:#5d4037;white-space:nowrap;font-size:12px}.rank-me{background:#fff3e0;border-radius:10px;margin-top:6px;padding:8px;font-size:14px}.rank-note{margin-top:6px}.rank-device{text-align:left;margin-top:4px}.rank-device code{-webkit-user-select:all;user-select:all;word-break:break-all;font-size:11px}.clear-card{pointer-events:auto;background:#fffaf0f7;border:4px solid #d7261e;border-radius:16px;margin-top:8px;padding:12px;animation:.45s cubic-bezier(.2,1.4,.4,1) cc-in;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000040}.clear-card[hidden]{display:none}@keyframes cc-in{0%{opacity:0;transform:translateY(-20px)scale(.85)}}.cc-title{text-align:center;color:#b71c1c;text-shadow:0 2px #ffe082;font-size:26px;font-weight:900}.cc-stats{text-align:center;color:#6d4c41;margin-top:4px;font-size:14px}.clear-card .run-record{margin-top:6px}.confetti{pointer-events:none;position:absolute;inset:0}.confetti i{opacity:0;border-radius:2px;width:8px;height:12px;animation:1.8s ease-in forwards confetti;position:absolute;top:-12px}@keyframes confetti{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(var(--dx), 260px) rotate(540deg)}}.floater.angry{color:#c62828;font-size:20px}.floater.tip{color:#f9a825;font-size:16px}.floater.clear{color:#d7261e;font-size:30px}.floater.boost{color:#2e7d32;font-size:20px}.floater.thanks{color:#6a1b9a;background:#fff;border-radius:999px;padding:2px 10px;font-size:17px;box-shadow:0 2px #00000026}.hud-coin{z-index:6;pointer-events:none;font-size:20px;transition:transform .6s cubic-bezier(.5,0,.8,.6),opacity .6s;position:fixed}.money.bump{animation:.3s money-bump}@keyframes money-bump{50%{transform:scale(1.18)}}
