@font-face{font-family:Vazirmatn;src:local('Vazirmatn')}
html,body{margin:0;height:100%;overflow:hidden;background:#0b2a4a;font-family:Vazirmatn,Tahoma,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none}
#game-root{width:100vw!important;height:100vh!important;height:100dvh!important;max-width:none!important}
#startBtn,#retryBtn,#dpad,#dpad-action,#hud{display:none!important}
#cv{position:absolute;inset:0;width:100%;height:100%;display:block}
.scr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;color:#fff8e6;z-index:30;overflow:hidden;direction:rtl}
.scr.off{display:none}
.bgimg{background:#0b2a4a url(assets/title_bg.webp) center/cover}
.dim{background:rgba(6,24,48,.72);justify-content:center}
h2{margin:8px 0;font-size:26px;color:#ffd77a;text-shadow:0 2px 0 #0a2342}
.btn{position:relative;border:none;background:url(assets/btn_primary.webp) center/100% 100% no-repeat;width:230px;height:78px;color:#fff;font:800 24px Vazirmatn,Tahoma;cursor:pointer;text-shadow:0 2px 2px #0008;transition:transform .12s;padding-bottom:6px}
.btn:active{transform:scale(.93)}
.btn.s{background-image:url(assets/btn_secondary.webp);width:170px;height:66px;font-size:19px}
.panel{background:url(assets/ui_panel_frame.webp) center/100% 100% no-repeat;width:min(92vw,370px);padding:46px 34px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.coins{display:flex;align-items:center;gap:6px;background:#0a2342cc;border:2px solid #3fc6c4;border-radius:20px;padding:2px 12px;font-weight:800;font-size:18px}
.coins img{width:26px}
.top{position:absolute;top:max(12px,env(safe-area-inset-top));inset-inline:12px;display:flex;justify-content:space-between;align-items:center}
.logo{width:min(80vw,340px);margin-top:12vh;animation:bob 2.4s ease-in-out infinite;filter:drop-shadow(0 8px 10px #0007)}
@keyframes bob{50%{transform:translateY(-10px) rotate(-1.5deg)}}
.menuBtns{margin-top:auto;margin-bottom:12vh;display:flex;flex-direction:column;align-items:center;gap:6px}
.map{position:relative;width:100%;max-width:420px;flex:1;margin-top:70px}
.node{position:absolute;width:86px;height:86px;transform:translate(50%,-50%);border:none;background:center/contain no-repeat;cursor:pointer;color:#fff;font:900 26px Vazirmatn;text-shadow:0 2px 3px #000}
.node .nm{position:absolute;top:84px;inset-inline:-40px;font-size:13px;font-weight:700;white-space:nowrap;text-align:center}
.node .st{position:absolute;top:-16px;inset-inline:0;display:flex;justify-content:center}
.node .st img{width:22px}
.upg{display:flex;align-items:center;gap:8px;width:100%;background:#0a2342cc;border-radius:12px;padding:6px 10px;box-sizing:border-box;border:2px solid #2a7fb5}
.upg .t{flex:1;text-align:start;min-width:0}
.upg .t b{display:block;font-size:16px}
.pips{display:flex;gap:3px}.pips i{width:12px;height:8px;border-radius:2px;background:#24476b}.pips i.on{background:#3fe0d0}
.buy{border:none;border-radius:10px;background:#e8a93a;color:#3a1d00;font:800 15px Vazirmatn;padding:6px 10px;cursor:pointer;min-width:74px;min-height:40px}
.buy:disabled{background:#56677a;color:#ccc}
#hud2{position:absolute;inset:0;pointer-events:none;z-index:20;color:#fff;direction:rtl}
#hud2 .bar{position:absolute;top:max(10px,env(safe-area-inset-top));inset-inline:10px;display:flex;gap:6px;justify-content:space-between;align-items:center}
.chip{background:#0a2342d0;border:2px solid #3fc6c4;border-radius:14px;padding:2px 10px;font-weight:800;font-size:15px;white-space:nowrap}
.hearts{color:#ff6b6b;font-size:17px}
#pauseB{pointer-events:auto;width:46px;height:46px;border:none;background:url(assets/icon_pause.webp) center/contain no-repeat;cursor:pointer}
#nitroB{pointer-events:auto;position:absolute;bottom:max(24px,env(safe-area-inset-bottom));inset-inline-end:18px;width:92px;height:92px;border-radius:50%;border:4px solid #3fc6c4;background:#0a2342cc url(assets/icon_nitro.webp) center/70% no-repeat;cursor:pointer}
#nitroB.rdy{animation:pulse .6s infinite alternate;border-color:#ffd77a}
@keyframes pulse{to{transform:scale(1.1);box-shadow:0 0 22px #ffd77a}}
#nbar{position:absolute;bottom:max(30px,env(safe-area-inset-bottom));inset-inline-start:18px;width:150px;height:16px;border-radius:10px;background:#0a2342cc;border:2px solid #3fc6c4;overflow:hidden}
#nbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#f0c060,#e88a2a)}
#tip{position:absolute;top:30%;inset-inline:0;text-align:center;font-size:21px;font-weight:800;text-shadow:0 2px 4px #000;transition:opacity .3s}
#cd{position:absolute;top:38%;inset-inline:0;text-align:center;font-size:90px;font-weight:900;color:#ffd77a;text-shadow:0 5px 0 #0a2342}
#hand{position:absolute;bottom:22%;inset-inline-start:calc(50% - 25px);width:50px;height:50px;border-radius:50%;background:#fff8;border:3px solid #fff;animation:sw 1.4s ease-in-out infinite}
@keyframes sw{0%,100%{transform:translateX(-70px)}50%{transform:translateX(70px)}}
.stars{display:flex;gap:6px}.stars img{width:62px;transform:scale(0);animation:pop .4s forwards}
@keyframes pop{70%{transform:scale(1.25)}to{transform:scale(1)}}
.row{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}
p{margin:2px 0;line-height:1.8}
