@font-face{font-family:Vazirmatn;src:local('Vazirmatn')}
html,body{margin:0;height:100%;overflow:hidden;background:#141a33;font-family:Vazirmatn,Tahoma,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none}
#game-root{width:100vw!important;max-width:100vw!important;height:100vh;height:100dvh}
#startBtn,#retryBtn,#dpad,#dpad-action{display:none!important}
#cv{position:fixed;inset:0;width:100vw;height:100dvh;display:block}
.scr{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;z-index:30;color:#fbe7b0;text-align:center;line-height:1.8;padding:20px;box-sizing:border-box}
.dim{background:rgba(12,16,40,.62);backdrop-filter:blur(3px)}
.hide{display:none!important}
.logo{width:min(62vw,280px);animation:bob 3s ease-in-out infinite;filter:drop-shadow(0 8px 20px rgba(255,200,80,.45))}
@keyframes bob{50%{transform:translateY(-10px) rotate(-2deg)}}
h1{margin:0;font-size:46px;color:#ffd45e;text-shadow:0 3px 0 #6b3a10,0 0 24px rgba(255,200,90,.7)}
h2{margin:0;font-size:28px;color:#ffd45e;text-shadow:0 2px 0 #5a2f0d}
.btn{font-family:inherit;font-weight:800;font-size:20px;color:#3a1d05;min-width:200px;min-height:64px;border:0;cursor:pointer;background:url(assets/primary_button.webp) center/100% 100% no-repeat;padding:0 26px;transition:transform .1s}
.btn:active{transform:scale(.93)}
.btn.sm{min-width:150px;min-height:52px;font-size:17px}
.row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.coins{display:flex;align-items:center;gap:6px;font-size:20px;font-weight:800;color:#ffe08a}
.coins img{width:34px}
.panel{width:min(88vw,360px);background:url(assets/menu_card_frame.webp) center/100% 100% no-repeat;padding:44px 28px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:10px;color:#3d2208}
.respanel{background-image:url(assets/results_panel.webp)}
.map{position:relative;width:min(92vw,380px);height:min(64vh,560px)}
.node{position:absolute;width:84px;transform:translate(50%,-50%);cursor:pointer;display:flex;flex-direction:column;align-items:center;color:#fff;font-weight:800;font-size:13px;text-shadow:0 1px 3px #000}
.node img{width:74px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.5))}
.node.lock{cursor:default;opacity:.85}
.node .st{color:#ffd45e;font-size:15px}
.node .num{position:absolute;top:22px;font-size:20px}
.item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;background:rgba(255,240,200,.5);border-radius:12px;font-weight:700;font-size:15px}
.item button{font-family:inherit;font-weight:800;border:0;border-radius:10px;padding:6px 12px;background:#2a7f86;color:#fff;cursor:pointer;min-height:40px}
.item button.own{background:#8a6a2a}
.sw{width:26px;height:26px;border-radius:50%;flex:none}
#hud2{position:fixed;top:max(10px,env(safe-area-inset-top));inset-inline:10px;z-index:20;display:flex;justify-content:space-between;align-items:center;pointer-events:none}
.hbar{background:url(assets/hud_bar_frame.webp) center/100% 100% no-repeat;padding:8px 18px;display:flex;align-items:center;gap:10px;color:#fff3c9;font-weight:800;font-size:18px;min-height:44px}
.hbar img{width:28px}
.hearts{color:#ff5a6a;font-size:20px}
#pauseB{pointer-events:auto;width:50px;height:50px;border:0;background:url(assets/icon_pause.webp) center/contain no-repeat;cursor:pointer}
#prog{position:fixed;top:calc(max(10px,env(safe-area-inset-top)) + 58px);inset-inline:24px;height:8px;border-radius:5px;background:rgba(0,0,0,.35);z-index:20;overflow:hidden}
#prog i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ffd45e,#ff9b3d)}
#tut{position:fixed;bottom:16%;inset-inline:0;z-index:21;text-align:center;color:#fff;font-size:20px;font-weight:800;text-shadow:0 2px 6px #000;pointer-events:none;transition:opacity .4s}
.hand{display:block;margin:6px auto;width:46px;height:46px;border-radius:50%;border:4px solid #ffd45e;animation:tap 1s infinite}
@keyframes tap{50%{transform:scale(.7);opacity:.6}}
.bigstars{font-size:46px;color:#5b4320}
.bigstars b{color:#ffc93a;text-shadow:0 0 12px #ffb000;display:inline-block;animation:pop .5s backwards}
@keyframes pop{from{transform:scale(0)}}
.muted{opacity:.8;font-size:14px}