@font-face{font-family:'Nunito';src:url(fonts/nunito.woff2) format('woff2');font-weight:200 1000;font-display:swap}
@font-face{font-family:'Fredoka';src:url(fonts/fredoka.woff2) format('woff2');font-weight:300 700;font-display:swap}
@font-face{font-family:'Noto Sans Arabic';src:url(fonts/noto-sans-arabic.woff2) format('woff2');font-weight:400 800;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+08A0-08FF,U+FB50-FDFF,U+FE70-FEFF}
[dir=rtl] body{font-family:'Noto Sans Arabic','Nunito',system-ui,sans-serif}
.boardwrap,.board,.clip,.cell,#map,.map,.worldmap{direction:ltr}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{height:100%;overflow:hidden;overscroll-behavior:none}
body{font-family:'Nunito',system-ui,sans-serif;color:#1D2742;background:#F2F6FB;-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;touch-action:manipulation}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
b{font-weight:800}
#app{position:relative;height:100%;max-width:480px;margin:0 auto;overflow:hidden;background:linear-gradient(180deg,#EAF6EF 0,#F2F6FB 240px)}
.screen{position:absolute;inset:0;padding:calc(env(safe-area-inset-top) + 10px) 16px calc(env(safe-area-inset-bottom) + 12px);overflow-y:auto;-webkit-overflow-scrolling:touch;display:none}
.screen.on{display:block;animation:fadein .22s ease-out}
#game.screen.on{display:flex;flex-direction:column;overflow:hidden}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.row{display:flex;align-items:center;gap:10px}.sb{justify-content:space-between}.grow{flex:1;min-width:0}
.center{text-align:center}.small{font-size:13px}.tiny{font-size:11px}.muted{color:#6B7690}
.card{background:#fff;border-radius:20px;box-shadow:0 4px 14px rgba(29,39,66,.07),0 1px 2px rgba(29,39,66,.05);padding:13px 15px;margin-bottom:10px}
.kicker{font-size:12.5px;font-weight:800;color:#12A05C;letter-spacing:.2px}
.topbar{display:flex;justify-content:space-between;align-items:center;margin:2px 0 10px}
.brand{display:flex;gap:9px;align-items:center}
.bname{font-family:'Fredoka';font-weight:700;font-size:20px;line-height:1}
.bsub{font-size:11px;color:#6B7690;font-weight:700;margin-top:3px}
.streak{background:#fff;border-radius:99px;padding:6px 12px;font-weight:900;font-size:14px;color:#E8590C;box-shadow:0 3px 10px rgba(232,89,12,.15);border:2px solid #FFE1C7;white-space:nowrap}
.big{font-family:'Fredoka';font-weight:700;font-size:23px;line-height:1.15;margin-top:2px}
.clock{font-size:11.5px;text-align:right;color:#6B7690;line-height:1.3;white-space:nowrap}.clock b{color:#1D2742;font-size:14px}
.bar{height:12px;border-radius:99px;background:#E6ECF4;margin:10px 0 7px;overflow:hidden}
.bar>div{height:100%;border-radius:99px;background:linear-gradient(90deg,#12B76A,#7BD83F 70%,#FFC93C);transition:width .4s ease}
.bar.thin{height:8px;margin:5px 0 0}
.mapcard{padding:8px 10px 8px;position:relative}
.map{width:100%;display:block}
.map path{transition:fill .6s}
.ufl{font-family:'Nunito';font-weight:900;font-size:13px;text-anchor:middle;pointer-events:none}
.ufl.sm{font-size:10.5px}.ufl.out{font-size:11.5px;fill:#3B4660;text-anchor:start}
.pin{font-family:'Nunito';font-weight:900;font-size:12.5px;fill:#fff;text-anchor:middle}
.legend{display:flex;align-items:center;gap:8px;justify-content:center;font-size:11px;color:#6B7690;font-weight:700;margin-top:2px}
.lg{width:90px;height:8px;border-radius:9px;background:linear-gradient(90deg,rgb(232,244,234),rgb(14,154,85))}
.simtag{position:absolute;top:8px;left:12px;font-size:10px;font-weight:800;color:#8A95AB;background:#F2F6FB;border-radius:99px;padding:2px 8px}
.mystate{display:flex;align-items:center;gap:11px;padding:10px 14px;border:2px solid #FFD2A8;cursor:pointer}
.trocar{font-size:11.5px;font-weight:800;color:#2F6BFF;background:#EEF3FF;border-radius:99px;padding:4px 9px}
.stchip{display:inline-flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;border-radius:12px;font-family:'Fredoka';font-weight:700;font-size:16px;color:#fff;background:#00A859}
.stchip.xs{width:28px;height:28px;font-size:11.5px;border-radius:8px}
.stname{font-family:'Fredoka';font-weight:600;font-size:18px}
.up{color:#12A05C;font-weight:900}.down{color:#E5484D;font-weight:900}
.btn{display:flex;width:100%;align-items:center;justify-content:center;gap:10px;border-radius:18px;font-family:'Fredoka';font-weight:700;color:#fff;font-size:19px;padding:13px 16px;margin-bottom:10px;transition:transform .08s}
.btn:active{transform:translateY(3px)}
.btn[disabled]{opacity:.55}
.btn.primary{background:linear-gradient(180deg,#4A7DFF,#2F6BFF);box-shadow:0 5px 0 #1F4FCC,0 9px 18px rgba(47,107,255,.3)}
.btn.big{font-size:24px;padding:15px;margin:4px 0 8px}
.btn.orange{background:linear-gradient(180deg,#FFA040,#FF8A1F);box-shadow:0 5px 0 #D96A05,0 9px 18px rgba(255,138,31,.3);font-size:16px;text-align:left;justify-content:flex-start}
.btn.orange small{display:block;font-family:'Nunito';font-weight:800;font-size:11.5px;opacity:.95}
.btn.orange .play{flex:none;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:15px}
.btn.orange.center-btn{justify-content:center;text-align:center;margin-top:16px}
.btn.ghost{background:#EEF2F8;color:#1D2742;box-shadow:none;font-size:16px}
.mini{display:flex;gap:8px;margin-top:12px}.mini>div{flex:1;background:#fff;border-radius:14px;padding:9px 6px;text-align:center;box-shadow:0 2px 8px rgba(29,39,66,.06)}
.mini>div[role=button]{cursor:pointer}
.mini b{display:block;font-size:13px}.mini span{font-size:11.5px;color:#6B7690;font-weight:700}
.adban{margin-top:12px;border:2px dashed #C9D3E3;border-radius:14px;height:50px;display:flex;align-items:center;justify-content:center;gap:8px;color:#6B7690;font-weight:700;font-size:13px}
.adtag{background:#FFC93C;color:#5a4300;font-weight:900;font-size:11px;border-radius:6px;padding:2px 7px}
.foot{text-align:center;font-size:11px;color:#9AA4B8;margin:12px 0 4px}.foot a{color:#9AA4B8}
/* jogo */
.gtop{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex:none}
.iconbtn{width:42px;height:42px;border-radius:13px;background:#fff;box-shadow:0 2px 8px rgba(29,39,66,.08);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;line-height:1;padding-bottom:4px;flex:none}
.lote{font-family:'Fredoka';font-weight:700;font-size:20px;line-height:1.1}
.pts{background:#fff;border-radius:13px;box-shadow:0 2px 8px rgba(29,39,66,.08);padding:4px 10px;text-align:center;min-width:56px}
.pts b{display:block;font-family:'Fredoka';font-size:20px;color:#2F6BFF;line-height:1.1}.pts span{font-size:10.5px;color:#6B7690;font-weight:800}
.pts.bump{animation:ptsb .3s}
@keyframes ptsb{40%{transform:scale(1.15)}}
.lifebar{margin-bottom:8px;flex:none}
.hearts{display:flex;gap:4px;align-items:center}.hearts .small{margin-left:5px;font-weight:800}
.heart{width:24px;height:22px;transition:transform .2s,opacity .2s}.heart.off{opacity:.22;filter:grayscale(1)}
.heart.lost{animation:hlost .5s}
@keyframes hlost{30%{transform:scale(1.5) rotate(-12deg)}100%{transform:scale(1)}}
.adpill{background:#FFF4D6;border:2px solid #FFD66B;color:#7A5600;border-radius:99px;padding:5px 11px;font-weight:900;font-size:13px}.adpill span{font-weight:700;font-size:11px}
.adpill[hidden]{display:none}
.lotprog{background:#fff;border-radius:14px;padding:8px 12px 10px;margin-bottom:10px;box-shadow:0 2px 8px rgba(29,39,66,.06);flex:none}
.boardwrap{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:12px 0 14px}
.board{position:relative;background:#E3EAF5;border-radius:18px;box-shadow:0 0 0 8px #E3EAF5,0 0 0 18px #fff,0 10px 30px 18px rgba(29,39,66,.10)}
.clip{position:absolute;inset:-8px;overflow:hidden;border-radius:22px;touch-action:none}
.dots{position:absolute;left:8px;top:8px;right:8px;bottom:8px}
.cell{position:absolute;left:8px;top:8px;will-change:transform;contain:layout paint}
.tile{position:absolute;inset:3px;background:#fff;border-radius:11px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 0 #C9D3E3}
.tile svg{width:72%;height:72%}
.cell.U svg{transform:rotate(-90deg)}.cell.D svg{transform:rotate(90deg)}.cell.L svg{transform:rotate(180deg)}
.cell.sliding{z-index:5}
.cell.sliding .tile{box-shadow:0 3px 0 #F3B47A,0 0 0 3px #FFB066,0 8px 18px rgba(255,138,31,.45)}
.cell.v.sliding .tile{box-shadow:0 3px 0 #9DB6F5,0 0 0 3px #7FA2FF,0 8px 18px rgba(47,107,255,.4)}
.cell.hit .tile{background:#FFE8EA;box-shadow:0 3px 0 #F3A8B0,0 0 0 3px #FF6B7A}
.cell.hint .tile:after{content:'';position:absolute;inset:-5px;border-radius:14px;border:3px solid #12B76A;animation:hintp 0.9s ease-in-out infinite}
@keyframes hintp{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.4}}
.hand{position:absolute;z-index:8;font-size:34px;pointer-events:none;animation:hand 1s ease-in-out infinite;filter:drop-shadow(0 3px 4px rgba(0,0,0,.25))}
@keyframes hand{0%,100%{transform:translate(0,0)}50%{transform:translate(4px,10px)}}
.float{position:absolute;z-index:20;pointer-events:none;background:#12B76A;color:#fff;font-family:'Fredoka';font-weight:700;font-size:15px;padding:5px 11px;border-radius:99px;box-shadow:0 6px 14px rgba(18,183,106,.35);white-space:nowrap;will-change:transform,opacity}
.float.bad{background:#E5484D;box-shadow:0 6px 14px rgba(229,72,77,.35)}
.float.combo{background:#FF8A1F;font-size:19px;box-shadow:0 6px 14px rgba(255,138,31,.4)}
.ripple{position:absolute;z-index:4;border-radius:50%;border:3px solid rgba(47,107,255,.55);background:rgba(47,107,255,.12);pointer-events:none}
.tip{display:flex;gap:10px;font-size:13.5px;line-height:1.35;padding:10px 14px;align-items:flex-start;flex:none}
.tip[hidden]{display:none}
.tipi{font-size:20px}
.tools{justify-content:center;gap:12px;flex:none}
.tool{background:#fff;border-radius:14px;width:100px;padding:7px 0;text-align:center;font-size:19px;font-weight:800;box-shadow:0 2px 8px rgba(29,39,66,.08)}
.tool:active{transform:scale(.96)}
.tool[disabled]{opacity:.45}
.tool span{display:block;font-size:12px;color:#6B7690}
.pz{display:block;margin:2px auto 3px}
/* sobreposições */
.overlay{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadein .2s}
.overlay[hidden]{display:none}
.overlay.dim{background:rgba(20,30,55,.55)}
#ovPick{background:rgba(234,246,239,.97)}
.sheet{background:#fff;border-radius:26px;padding:22px 18px 12px;width:100%;max-width:420px;box-shadow:0 20px 50px rgba(0,0,0,.2)}
.sheet .btn{margin-top:8px}
.ptitle{font-family:'Fredoka';font-weight:700;font-size:25px;text-align:center;margin-bottom:4px}
.ufgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:14px 0 8px}
.ufgrid button{border-radius:12px;background:#F2F6FB;font-family:'Fredoka';font-weight:700;font-size:16px;padding:10px 0;border:2px solid transparent}
.ufgrid button.on{background:#EEF9F2;border-color:#12B76A;color:#0E8F4F}
.done{position:relative;width:100%;max-width:400px;background:#fff;border-radius:28px;padding:48px 18px 12px;box-shadow:0 20px 50px rgba(0,0,0,.3);animation:popin .45s cubic-bezier(.2,1.4,.4,1)}
@keyframes popin{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}
.medal{position:absolute;left:50%;top:-38px;margin-left:-40px;width:80px;height:80px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.15)}
.dtitle{font-family:'Fredoka';font-weight:700;font-size:30px;text-align:center;line-height:1.1}
.dsub{font-size:13px;font-weight:700;margin-top:3px}
.stats{display:flex;gap:8px;margin-top:14px}.stats>div{flex:1;background:#F2F6FB;border-radius:14px;padding:8px 4px;text-align:center}
.stats b{display:block;font-family:'Fredoka';font-size:19px}.stats span{font-size:11px;color:#6B7690;font-weight:700}
.gain{display:flex;align-items:center;gap:12px;background:#EAF8F0;border-radius:16px;padding:11px 14px;margin:12px 0 10px;font-size:16px;line-height:1.25;font-weight:700}
.gain b{color:#0E8F4F}
.rankchg{border:2px solid #FFE08A;background:#FFFBEB;border-radius:16px;padding:8px 12px;margin-bottom:14px}
.rctitle{font-family:'Fredoka';font-weight:700;font-size:17px;margin-bottom:4px}
.rrow{display:flex;align-items:center;gap:9px;padding:5px 7px;border-radius:11px;font-size:14px;font-weight:700}
.rrow.me{background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.06)}
.pos{width:28px;font-family:'Fredoka';font-weight:700;font-size:15px;color:#6B7690;flex:none}
/* anúncio */
.overlay.ad{background:#10172B;flex-direction:column;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 16px) 20px calc(env(safe-area-inset-bottom) + 20px)}
.adtop{width:100%;display:flex;justify-content:space-between;align-items:center}
.adlabel{background:#FFC93C;color:#4a3700;font-weight:900;font-size:13px;border-radius:8px;padding:4px 10px}
.adcount{width:40px;height:40px;border-radius:50%;border:3px solid rgba(255,255,255,.5);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Fredoka';font-weight:700;font-size:18px}
.adbody{flex:1;display:flex;align-items:center;justify-content:center;width:100%}
.adfake{width:100%;max-width:360px;background:linear-gradient(160deg,#2F6BFF,#7C4DFF);border-radius:24px;padding:28px 22px;color:#fff;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.adicon{font-size:56px}.adh{font-family:'Fredoka';font-weight:700;font-size:22px;margin:8px 0}
.adp{font-size:14px;opacity:.9;line-height:1.4}
.adprog{height:6px;background:rgba(255,255,255,.25);border-radius:9px;margin-top:18px;overflow:hidden}.adprog div{height:100%;width:0;background:#FFC93C}
.overlay.ad .btn{max-width:360px}
/* ranking */
.rtop{display:flex;justify-content:space-between;align-items:center;margin:2px 0 10px}
.rtitle{font-family:'Fredoka';font-weight:700;font-size:25px}
.tabs{display:flex;background:#E3EAF5;border-radius:15px;padding:4px;margin-bottom:10px}
.tabs button{flex:1;text-align:center;padding:9px 0;border-radius:11px;font-weight:800;font-size:15px;color:#5B6780}
.tabs .on{background:#fff;color:#2F6BFF;box-shadow:0 2px 6px rgba(29,39,66,.1)}
.list{padding:10px 10px 6px}.list[hidden]{display:none}
.lh{margin:0 4px 6px}
.srow{display:flex;align-items:center;gap:9px;padding:6px 7px;border-radius:13px}
.srow.me{background:#EEF9F2;border:2px solid #9BE0B8}
.srow .nm{font-weight:800;font-size:14px;display:flex;justify-content:space-between;gap:6px}
.srow .bar{height:7px;margin:4px 0 0}
.seu{background:#12B76A;color:#fff;font-size:10px;border-radius:99px;padding:1px 7px;margin-left:5px;vertical-align:2px}
.lgrow{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:12px;font-weight:700;font-size:14px}
.lgrow.me{background:#EEF3FF;border:2px solid #A9C0FF}
.av{width:28px;height:28px;border-radius:50%;background:#FFE7CF;color:#C2570C;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:13px;flex:none}
.lgrow.me .av{background:#2F6BFF;color:#fff}
.lgrow .pp{margin-left:auto;font-weight:900}
.cut{border-top:2px dashed #E3B341;margin:6px 4px;text-align:center;font-size:11px;font-weight:800;color:#B7791F;padding-top:2px}
.cut.down{border-color:#F3A8B0;color:#C2414A}
.lghead{display:flex;justify-content:space-between;align-items:flex-start;margin:2px 4px 8px}
.lgname{font-family:'Fredoka';font-weight:700;font-size:21px}
.ends{background:#FFF1E2;border-radius:12px;padding:5px 10px;font-size:11px;font-weight:800;color:#C2570C;text-align:right}.ends b{display:block;font-size:15px;color:#1D2742}
.youbar{background:#2F6BFF;color:#fff;border-radius:13px;padding:8px 12px;font-weight:800;font-size:14px;margin:0 4px 8px}
#confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:60;display:none}
#toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 90px);transform:translateX(-50%) translateY(20px);background:#1D2742;color:#fff;border-radius:99px;padding:9px 16px;font-weight:800;font-size:14px;opacity:0;transition:all .25s;z-index:70;pointer-events:none;white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis}
#toast.on{opacity:1;transform:translateX(-50%)}
@media (max-height:700px){.tip{display:none}.lotprog{padding:6px 12px 8px}}
.gap{text-align:center;color:#9AA4B8;font-weight:900;letter-spacing:3px;line-height:1;padding:2px 0}
.scopes{display:flex;gap:6px;margin:0 0 10px}
.scopes button{flex:1;background:#fff;border-radius:12px;padding:8px 4px;font-weight:800;font-size:13px;color:#5B6780;box-shadow:0 2px 8px rgba(29,39,66,.06)}
.scopes button.on{background:#2F6BFF;color:#fff}
.gear{width:42px;height:42px;border-radius:13px;background:#fff;box-shadow:0 2px 8px rgba(29,39,66,.08);font-size:18px;flex:none}
.topactions{display:flex;align-items:center;gap:8px}
.net{background:#FFF4D6;border-radius:14px;padding:8px 12px;font-weight:800;font-size:13px;margin-bottom:10px;line-height:1.35}
.net[hidden]{display:none}
.tabs{overflow-x:auto}
.tabs button{white-space:nowrap;padding:9px 12px}
.picklist{max-height:42vh;overflow:auto;margin:10px 0;display:flex;flex-direction:column;gap:6px}
.picklist button{text-align:start;background:#F2F6FB;border-radius:12px;padding:10px 12px;font-weight:800}
.picklist button.on{background:#EEF9F2;box-shadow:inset 0 0 0 2px #12B76A}
.search,.namein{width:100%;border:0;background:#F2F6FB;border-radius:12px;padding:12px 14px;font:inherit;font-weight:700}
.search{margin-top:8px}
.setrow{display:block;width:100%;text-align:start;background:#F2F6FB;border-radius:12px;padding:12px;font-weight:800;margin-bottom:8px}
.setrow[hidden]{display:none}
#googleBtn{display:flex;justify-content:center;margin:0 0 8px}
#googleBtn[hidden]{display:none}
.price{font-family:Fredoka,Nunito,sans-serif;font-weight:700;font-size:28px;margin:8px 0}
.langrow{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px}
.langrow button{background:#F2F6FB;border-radius:99px;padding:6px 10px;font-weight:800;font-size:13px}
.langrow button.on{background:#2F6BFF;color:#fff}
.sheet.scroll{max-height:min(88vh,720px);overflow:auto}
.links{display:flex;justify-content:center;gap:14px;margin-top:4px}
.links a{color:#6B7690;font-weight:800}
body.has-banner #home{padding-bottom:calc(env(safe-area-inset-bottom) + 70px)}
.stepback{font-weight:800;color:#2F6BFF;margin-bottom:4px}
