/* Turbo Pista v4 — interface de jogo de corrida infantil */
:root{
  --tinta:#16264d; --azul:#1f6fe5; --azul2:#0f4fb8; --verde:#22b14c; --verde2:#148a37;
  --amarelo:#ffc928; --amarelo2:#e09a00; --laranja:#ff7a1a; --rosa:#ff4fd8; --branco:#fff;
  --fonte: ui-rounded, "SF Pro Rounded", "Arial Rounded MT Bold", "Nunito", "Varela Round", "Trebuchet MS", system-ui, sans-serif;
  --sat: env(safe-area-inset-top, 0px); --sab: env(safe-area-inset-bottom, 0px);
  --sal: env(safe-area-inset-left, 0px); --sar: env(safe-area-inset-right, 0px);
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html,body{width:100%;height:100%;overflow:hidden;background:#0e1d3d;color:var(--tinta);
  font-family:var(--fonte);touch-action:none;overscroll-behavior:none;user-select:none;-webkit-user-select:none;}
#c3d{position:fixed;inset:0;width:100%;height:100%;display:block;}
#fx2d{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:2;}
[hidden]{display:none !important;}

/* ---------- botões de brinquedo ---------- */
.btn{font-family:inherit;font-weight:900;border:4px solid var(--tinta);border-radius:22px;cursor:pointer;
  color:#fff;letter-spacing:.5px;text-shadow:0 2px 0 rgba(0,0,0,.25);position:relative;
  box-shadow:0 6px 0 var(--tinta),inset 0 -6px 0 rgba(0,0,0,.15),inset 0 4px 0 rgba(255,255,255,.35);
  transition:transform .08s,box-shadow .08s;min-height:56px;}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--tinta),inset 0 -4px 0 rgba(0,0,0,.15);}
.btn.grande{font-size:28px;padding:14px 34px;min-height:76px;min-width:240px;}
.btn.medio{font-size:20px;padding:10px 18px;min-height:64px;flex:1;}
.btn.pequeno{font-size:16px;padding:8px 12px;flex:1;}
.btn.verde{background:linear-gradient(#3fd36a,var(--verde));}
.btn.amarelo{background:linear-gradient(#ffdc55,var(--amarelo));color:var(--tinta);text-shadow:0 1px 0 rgba(255,255,255,.6);}
.btn.azul{background:linear-gradient(#4b8ff5,var(--azul));}
.btn.branco{background:linear-gradient(#fff,#e7eef8);color:var(--tinta);text-shadow:none;}
.btn.redondo{width:60px;height:60px;min-height:60px;border-radius:50%;background:rgba(255,255,255,.94);color:var(--tinta);
  font-size:24px;padding:0;text-shadow:none;box-shadow:0 4px 0 var(--tinta);}
.btn.seta{width:76px;height:76px;border-radius:50%;background:linear-gradient(#ffdc55,var(--amarelo));color:var(--tinta);font-size:30px;padding:0;text-shadow:none;}
.btn:disabled{filter:grayscale(.7) brightness(.9);cursor:default;}
.pulsa{animation:pulsa 1.1s ease-in-out infinite;}
@keyframes pulsa{50%{transform:scale(1.06);}}
.linha-btn{display:flex;gap:10px;margin-top:12px;width:100%;}

/* ---------- telas ---------- */
.tela{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:calc(12px + var(--sat)) calc(14px + var(--sar)) calc(12px + var(--sab)) calc(14px + var(--sal));
  opacity:0;visibility:hidden;transform:scale(1.04);transition:opacity .45s ease,transform .45s ease,visibility 0s .45s;pointer-events:none;}
.tela.ativa{opacity:1;visibility:visible;transform:none;transition:opacity .45s ease,transform .45s ease;pointer-events:auto;}
.cartao{background:rgba(255,255,255,.96);border:5px solid var(--tinta);border-radius:30px;padding:20px;
  width:min(440px,100%);max-height:100%;overflow:auto;text-align:center;box-shadow:0 10px 0 var(--tinta),0 20px 40px rgba(0,0,0,.35);}
.cartao h2{font-size:30px;margin-bottom:6px;}
.cartao p{font-size:16px;margin-bottom:14px;}
#pausa,#opcoes,#copa{background:rgba(14,29,61,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);}

/* ---------- abertura ---------- */
#abertura{padding:0;background:#0e1d3d;}
#abertura .capa{position:absolute;inset:0;}
#abertura .capa img{width:100%;height:100%;object-fit:cover;animation:zoomCapa 18s ease-out both;}
@keyframes zoomCapa{from{transform:scale(1.12);}to{transform:scale(1);}}
#abertura::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,29,61,.55) 0%,rgba(14,29,61,0) 30%,rgba(14,29,61,0) 55%,rgba(14,29,61,.75) 100%);}
.abertura-conteudo{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;
  padding:calc(26px + var(--sat)) 16px calc(34px + var(--sab));}
.logo{display:flex;flex-direction:column;align-items:center;line-height:.86;font-weight:900;font-style:italic;transform:rotate(-4deg);
  filter:drop-shadow(0 6px 0 var(--tinta)) drop-shadow(0 12px 18px rgba(0,0,0,.4));}
.logo .l1{font-size:clamp(54px,15vw,104px);color:var(--amarelo);-webkit-text-stroke:3px var(--tinta);paint-order:stroke fill;letter-spacing:2px;}
.logo .l2{font-size:clamp(64px,18vw,124px);color:#fff;-webkit-text-stroke:3px var(--tinta);paint-order:stroke fill;
  background:linear-gradient(#fff 40%,#ffd9b8);-webkit-background-clip:text;background-clip:text;}
.logo .l3{font-size:clamp(20px,5.4vw,34px);color:#fff;background:var(--laranja);border:3px solid var(--tinta);border-radius:14px;padding:4px 14px 6px;margin-top:8px;font-style:normal;transform:rotate(2deg);}
.logo.pequeno .l1{font-size:26px;-webkit-text-stroke:2px var(--tinta);} .logo.pequeno .l2{font-size:32px;-webkit-text-stroke:2px var(--tinta);}
.logo.pequeno{filter:drop-shadow(0 3px 0 var(--tinta));}
.dir-menu{display:flex;align-items:center;gap:8px;}
.carregando{width:min(320px,80vw);text-align:center;color:#fff;font-weight:900;text-shadow:0 2px 0 var(--tinta);}
.carregando .barra{height:18px;border:3px solid var(--tinta);border-radius:12px;background:rgba(255,255,255,.85);overflow:hidden;margin-bottom:6px;}
.carregando .barra i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--amarelo),var(--laranja));transition:width .3s;}

/* ---------- menu ---------- */
#menu,#garagem{justify-content:space-between;}
.topo-menu{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.moedas-total{background:rgba(255,255,255,.95);border:4px solid var(--tinta);border-radius:20px;padding:6px 16px;font-size:24px;font-weight:900;color:#b77d00;box-shadow:0 4px 0 var(--tinta);}
.moedas-total b{color:var(--tinta);}
.trofeu-menu{font-size:30px;filter:drop-shadow(0 3px 0 var(--tinta));}
.painel-menu{width:min(560px,100%);display:flex;flex-direction:column;align-items:center;gap:10px;
  background:linear-gradient(rgba(255,255,255,.0),rgba(255,255,255,0));}
.pistas{display:flex;gap:10px;width:100%;}
.pista-card{flex:1;min-height:118px;border:4px solid var(--tinta);border-radius:20px;background:rgba(255,255,255,.95);
  font-family:inherit;font-weight:900;color:var(--tinta);font-size:14px;padding:6px 4px;cursor:pointer;box-shadow:0 5px 0 var(--tinta);
  display:flex;flex-direction:column;align-items:center;gap:2px;position:relative;}
.pista-card canvas{width:70px;height:56px;}
.pista-card.sel{background:linear-gradient(#fff4c2,#ffd75a);transform:translateY(-3px);}
.pista-card.trancada{background:#d9dee8;color:#6b7690;}
.pista-card.trancada canvas{opacity:.35;}
.pista-card .cad{position:absolute;top:30px;font-size:28px;}
.pista-card .rec{font-size:13px;color:#8a5a00;}
.acoes-menu{width:100%;display:flex;flex-direction:column;align-items:center;}
.acoes-menu .btn.grande{width:100%;}

/* ---------- garagem ---------- */
.painel-garagem{width:min(560px,100%);display:flex;flex-direction:column;align-items:center;gap:10px;}
.seletor{display:flex;align-items:center;gap:10px;width:100%;}
.gar-info{flex:1;background:rgba(255,255,255,.95);border:4px solid var(--tinta);border-radius:20px;padding:8px 12px;box-shadow:0 5px 0 var(--tinta);}
.gar-nome{font-size:26px;font-weight:900;text-align:center;}
.stats{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;font-size:15px;font-weight:900;align-items:center;margin-top:4px;}
.stats .b{height:10px;border-radius:6px;background:#dfe6f2;overflow:hidden;border:2px solid var(--tinta);}
.stats .b i{display:block;height:100%;background:linear-gradient(90deg,var(--verde),var(--amarelo));}
.cores{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;background:rgba(255,255,255,.9);border:4px solid var(--tinta);border-radius:20px;padding:10px;box-shadow:0 5px 0 var(--tinta);}
.cor{width:52px;height:52px;border-radius:50%;border:4px solid var(--tinta);cursor:pointer;position:relative;box-shadow:inset -5px -7px 0 rgba(0,0,0,.2),inset 4px 4px 0 rgba(255,255,255,.35);}
.cor.sel{outline:5px solid var(--verde);outline-offset:2px;}
.cor .preco{position:absolute;inset:auto -6px -8px -6px;background:var(--tinta);color:#ffd75a;font-size:13px;font-weight:900;border-radius:8px;text-align:center;}
.painel-garagem .btn.grande{width:100%;}

/* ---------- opções ---------- */
.opc{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 4px;border-bottom:2px dashed #d5dcea;font-weight:900;font-size:17px;cursor:pointer;flex-wrap:wrap;}
.opc small{display:block;font-size:14px;color:#5d6b88;font-weight:700;}
.opc input{position:absolute;opacity:0;pointer-events:none;}
.opc i{width:64px;height:36px;border-radius:20px;background:#c7cfdd;border:3px solid var(--tinta);position:relative;flex:none;transition:background .2s;}
.opc i::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid var(--tinta);transition:left .2s;}
.opc input:checked + i{background:var(--verde);}
.opc input:checked + i::after{left:29px;}
.segmentos{display:flex;gap:4px;}
.segmentos button{font-family:inherit;font-weight:900;font-size:14px;border:3px solid var(--tinta);border-radius:12px;padding:8px 9px;background:#fff;color:var(--tinta);cursor:pointer;min-height:44px;}
.segmentos button.sel{background:var(--amarelo);}
#opcoes .btn{margin-top:14px;width:100%;}

/* ---------- HUD ---------- */
#hud{position:fixed;inset:0;z-index:5;pointer-events:none;color:#fff;}
#hud .hud-pos{position:absolute;left:calc(12px + var(--sal));top:calc(10px + var(--sat));font-weight:900;font-style:italic;line-height:1;
  -webkit-text-stroke:2px var(--tinta);paint-order:stroke fill;filter:drop-shadow(0 4px 0 var(--tinta));}
#hud .hud-pos b{font-size:64px;color:var(--amarelo);}
#hud .hud-pos small{font-size:26px;}
#hud .hud-pos.p1 b{color:#ffe14d;} #hud .hud-pos.pulo{animation:posPulo .5s ease-out;}
@keyframes posPulo{40%{transform:scale(1.35) rotate(-6deg);}}
#hud .hud-volta{position:absolute;left:calc(14px + var(--sal));top:calc(84px + var(--sat));display:flex;flex-direction:column;gap:2px;
  background:rgba(14,29,61,.72);border:3px solid #fff;border-radius:14px;padding:4px 10px;font-weight:900;font-size:15px;}
#hud-tempo{font-size:16px;color:#cfe0ff;font-variant-numeric:tabular-nums;}
#hud .hud-moedas{position:absolute;left:50%;top:calc(12px + var(--sat));transform:translateX(-50%);background:rgba(14,29,61,.72);border:3px solid #ffd75a;
  border-radius:16px;padding:4px 14px;font-size:22px;font-weight:900;color:#ffd75a;}
#hud .hud-moedas.pega{animation:pega .35s ease-out;}
@keyframes pega{50%{transform:translateX(-50%) scale(1.3);}}
#minimapa{position:absolute;right:calc(10px + var(--sar));top:calc(10px + var(--sat));width:110px;height:110px;
  background:rgba(14,29,61,.55);border:3px solid #fff;border-radius:18px;}
.hud-botoes{position:absolute;right:calc(10px + var(--sar));top:calc(130px + var(--sat));display:flex;flex-direction:column;gap:12px;pointer-events:auto;}
.velocimetro{position:absolute;left:50%;bottom:calc(10px + var(--sab));z-index:1;transform:translateX(-50%);width:140px;text-align:center;}
.velocimetro svg{width:140px;height:82px;display:block;filter:drop-shadow(0 3px 0 rgba(14,29,61,.8));}
.vel-fundo{fill:none;stroke:rgba(14,29,61,.6);stroke-width:12;stroke-linecap:round;}
.vel-arco{fill:none;stroke:url(#g);stroke:#ffd23f;stroke-width:9;stroke-linecap:round;stroke-dasharray:151;stroke-dashoffset:151;transition:stroke .2s;}
.velocimetro.turbo .vel-arco{stroke:#5fe3ff;}
.vel-num{position:absolute;left:0;right:0;top:34px;font-weight:900;line-height:.9;-webkit-text-stroke:2px var(--tinta);paint-order:stroke fill;}
.vel-num b{font-size:34px;font-variant-numeric:tabular-nums;} .vel-num small{display:block;font-size:13px;-webkit-text-stroke:0;color:#dfe8ff;text-shadow:0 1px 0 var(--tinta);}
.turbo-barra{position:relative;margin:4px auto 0;width:130px;height:16px;border:3px solid #fff;border-radius:10px;background:rgba(14,29,61,.7);overflow:hidden;}
.turbo-barra i{display:block;height:100%;width:30%;background:linear-gradient(90deg,#5fe3ff,#2d7ff9);}
.turbo-barra .seg{position:absolute;top:0;bottom:0;left:33.3%;width:3px;background:#fff;} .turbo-barra .seg.s2{left:66.6%;}
.turbo-barra.pronto{box-shadow:0 0 12px #5fe3ff;}
#hud-msg{position:absolute;left:0;right:0;top:28%;text-align:center;font-size:40px;font-weight:900;font-style:italic;color:#fff;
  -webkit-text-stroke:3px var(--tinta);paint-order:stroke fill;filter:drop-shadow(0 5px 0 var(--tinta));opacity:0;transform:scale(.6);}
#hud-msg.mostra{animation:msg 1.4s ease-out both;}
@keyframes msg{12%{opacity:1;transform:scale(1.12);}22%{transform:scale(1);}80%{opacity:1;}100%{opacity:0;transform:scale(1) translateY(-20px);}}
#contagem{position:absolute;left:0;right:0;top:22%;text-align:center;font-size:min(36vw,190px);font-weight:900;font-style:italic;color:var(--amarelo);
  -webkit-text-stroke:5px var(--tinta);paint-order:stroke fill;filter:drop-shadow(0 8px 0 var(--tinta));}
#contagem.bate{animation:bate .9s ease-out both;}
#contagem.vai{color:#3fe36a;}
@keyframes bate{0%{opacity:0;transform:scale(2.2);}18%{opacity:1;transform:scale(.92);}30%{transform:scale(1);}85%{opacity:1;}100%{opacity:0;transform:scale(.8);}}
#selo-replay{position:absolute;right:calc(130px + var(--sar));top:calc(16px + var(--sat));color:#ff4d4d;font-weight:900;font-size:22px;-webkit-text-stroke:1px #fff;animation:pulsa 1s infinite;}
#perf{position:absolute;left:8px;bottom:calc(100px + var(--sab));font:12px/1.3 monospace;background:rgba(0,0,0,.6);color:#9f9;padding:4px 6px;border-radius:6px;white-space:pre;}

/* ---------- controles de toque (alvos >= 72 px) ---------- */
#toque{position:fixed;inset:auto 0 0 0;z-index:6;display:flex;justify-content:space-between;align-items:flex-end;
  padding:0 calc(12px + var(--sar)) calc(12px + var(--sab)) calc(12px + var(--sal));pointer-events:none;}
#toque .t-esq,#toque .t-dir{pointer-events:auto;display:flex;align-items:flex-end;gap:12px;}
.bt{font-family:inherit;font-weight:900;width:84px;height:84px;border-radius:50%;border:4px solid var(--tinta);background:rgba(255,255,255,.88);
  color:var(--tinta);font-size:34px;box-shadow:0 5px 0 var(--tinta);touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;}
.bt small{font-size:13px;margin-top:2px;}
.bt.on{transform:translateY(4px);box-shadow:0 1px 0 var(--tinta);background:var(--amarelo);}
.par-setas{display:flex;gap:12px;}
.par-setas .bt{width:88px;height:88px;border-radius:26px;}
.bt.turbo{background:linear-gradient(#7fe9ff,#2d9cf9);color:#fff;-webkit-text-stroke:1px var(--tinta);}
.bt.turbo.vazio{filter:grayscale(.8) brightness(.9);}
.bt.turbo.pronto{animation:pulsa .8s infinite;}
.bt.pulo{background:linear-gradient(#ffb0ec,var(--rosa));color:#fff;-webkit-text-stroke:1px var(--tinta);}
.bt.gas{background:linear-gradient(#5fe38a,var(--verde));color:#fff;width:96px;height:96px;}
.bt.freio{background:linear-gradient(#ff8a8a,#e23b3b);color:#fff;width:76px;height:76px;}
#toque.auto .bt.gas,#toque.auto .bt.freio{display:none;}
.t-dir{flex-wrap:wrap-reverse;justify-content:flex-end;max-width:200px;}
.volante{width:170px;height:118px;border:4px solid var(--tinta);border-radius:60px;background:rgba(255,255,255,.82);position:relative;touch-action:none;box-shadow:0 5px 0 var(--tinta);}
.volante .aro{position:absolute;left:50%;top:50%;width:72px;height:72px;margin:-40px 0 0 -36px;border-radius:50%;border:8px solid var(--tinta);background:radial-gradient(#fff 30%,#ffd75a 31%);}
.volante .aro span{position:absolute;left:50%;top:-6px;width:8px;height:20px;margin-left:-4px;background:var(--laranja);border-radius:4px;}
.volante small{position:absolute;bottom:2px;left:0;right:0;text-align:center;font-weight:900;font-size:13px;}
.dica-inclinar{background:rgba(255,255,255,.9);border:3px solid var(--tinta);border-radius:16px;padding:8px 12px;font-weight:900;}

/* ---------- resultado ---------- */
#resultado{justify-content:space-between;}
.res-topo{text-align:center;}
.res-titulo{font-size:clamp(44px,12vw,76px);font-weight:900;font-style:italic;color:var(--amarelo);-webkit-text-stroke:3px var(--tinta);paint-order:stroke fill;filter:drop-shadow(0 6px 0 var(--tinta));}
.res-sub{font-size:18px;font-weight:900;color:#fff;text-shadow:0 2px 0 var(--tinta);}
.res-painel{width:min(460px,100%);background:rgba(255,255,255,.95);border:5px solid var(--tinta);border-radius:26px;padding:12px;box-shadow:0 8px 0 var(--tinta);}
.res-lista{list-style:none;display:grid;gap:4px;}
.res-lista li{display:flex;align-items:center;gap:8px;font-weight:900;font-size:16px;background:#eef3fb;border-radius:12px;padding:4px 8px;}
.res-lista li.eu{background:#fff1b8;outline:3px solid var(--amarelo2);}
.res-lista .bola{width:20px;height:20px;border-radius:50%;border:3px solid var(--tinta);flex:none;}
.res-lista .t{margin-left:auto;font-size:15px;color:#5d6b88;font-variant-numeric:tabular-nums;}
.res-ganho{margin-top:8px;font-weight:900;font-size:20px;color:#b77d00;text-align:center;}
.res-novidade{font-weight:900;font-size:15px;color:var(--verde2);text-align:center;min-height:0;}
.tabela{list-style:none;text-align:left;display:grid;gap:5px;margin:8px 0 14px;}
.tabela li{display:flex;gap:8px;align-items:center;font-weight:900;font-size:18px;background:#eef3fb;border-radius:12px;padding:6px 10px;}
.tabela li.eu{background:#fff1b8;}
.tabela li b{margin-left:auto;}
#copa .btn.grande{width:100%;}
#copa .btn.pequeno{margin-top:10px;width:100%;}

/* ---------- celular deitado / telas baixas ---------- */
@media (max-height:500px){
  .btn.grande{font-size:22px;min-height:64px;padding:8px 20px;}
  .btn.medio{min-height:56px;font-size:17px;}
  .logo .l1{font-size:46px;} .logo .l2{font-size:54px;} .logo .l3{font-size:18px;}
  #menu .painel-menu{flex-direction:row;flex-wrap:wrap;width:min(760px,100%);}
  .pistas{flex:1 1 100%;}
  .pista-card{min-height:92px;} .pista-card canvas{width:56px;height:40px;}
  #hud .hud-pos b{font-size:46px;} #hud .hud-pos small{font-size:20px;}
  #hud .hud-volta{top:calc(64px + var(--sat));}
  #minimapa{width:92px;height:92px;}
  .hud-botoes{flex-direction:row;top:calc(10px + var(--sat));right:calc(112px + var(--sar));}
  .bt{width:76px;height:76px;font-size:30px;} .par-setas .bt{width:80px;height:80px;}
  .bt.gas{width:84px;height:84px;}
  .t-dir{max-width:none;flex-wrap:nowrap;}
  .velocimetro{transform:translateX(-50%) scale(.85);transform-origin:bottom center;}
  .res-titulo{font-size:40px;} .res-painel{padding:8px;} .res-lista li{font-size:14px;padding:2px 8px;}
  #resultado{flex-direction:row;align-items:flex-end;}
  .res-topo{align-self:flex-start;text-align:left;}
  .res-painel{width:min(420px,58%);}
  .cartao{padding:12px;} .cartao h2{font-size:24px;}
  .opc{padding:6px 4px;}
  #garagem{align-items:flex-end;justify-content:flex-end;}
  #garagem .topo-menu{position:absolute;top:calc(10px + var(--sat));left:calc(14px + var(--sal));right:calc(14px + var(--sar));width:auto;}
  .painel-garagem{width:min(430px,54%);gap:8px;}
  .gar-nome{font-size:20px;} .stats{font-size:13px;}
  .cor{width:44px;height:44px;} .cores{gap:6px;padding:6px;}
}
@media (max-width:380px){ .bt{width:76px;height:76px;} .par-setas .bt{width:78px;height:78px;} }
@media (prefers-reduced-motion:reduce){
  .pulsa,.bt.turbo.pronto,#selo-replay{animation:none;}
  #abertura .capa img{animation:none;}
  .tela{transition:opacity .2s;transform:none;}
}

/* celular em pé: velocímetro sobe para não ficar sob os botões */
@media (orientation:portrait) and (max-width:600px){ body.toque .velocimetro{bottom:calc(112px + var(--sab));transform:translateX(-50%) scale(.9);transform-origin:bottom center;} }

/* ================= melhorado 10/10 ================= */
/* estrelas por pista, no menu e no resultado */
.pista-card .estrelas{font-size:21px;letter-spacing:1px;line-height:1;}
.pista-card .estrelas i,.res-estrelas i{font-style:normal;color:#c9d1e0;-webkit-text-stroke:1.5px var(--tinta);paint-order:stroke fill;}
.pista-card .estrelas i{-webkit-text-stroke:0;color:#b9c3d6;text-shadow:0 0 1px var(--tinta),0 1px 0 var(--tinta);}
.pista-card .estrelas i.on{color:#ffb800;text-shadow:0 0 1px var(--tinta),0 2px 0 var(--tinta);}
.estrelas-total{background:rgba(255,255,255,.95);border:4px solid var(--tinta);border-radius:20px;padding:6px 12px;font-size:20px;font-weight:900;box-shadow:0 4px 0 var(--tinta);white-space:nowrap;}
.res-estrelas{display:flex;justify-content:center;gap:6px;margin-top:4px;min-height:60px;}
.res-estrelas i{font-size:56px;line-height:1;transform:scale(.6);opacity:.55;-webkit-text-stroke:3px var(--tinta);transition:transform .3s cubic-bezier(.3,1.8,.5,1),color .2s,opacity .2s;}
.res-estrelas i.on{color:#ffd23f;transform:scale(1);opacity:1;filter:drop-shadow(0 4px 0 var(--tinta));}
.res-estrelas i.nova{animation:estrelaNova .7s ease-out;}
@keyframes estrelaNova{0%{transform:scale(2) rotate(-25deg);}60%{transform:scale(.9) rotate(6deg);}100%{transform:scale(1);}}
/* dica da 1ª corrida */
#dica{position:absolute;left:50%;top:calc(42% + var(--sat));transform:translateX(-50%);max-width:calc(100% - 32px);text-align:center;
  background:rgba(255,255,255,.96);color:var(--tinta);border:4px solid var(--tinta);border-radius:22px;padding:10px 18px;
  font-size:24px;font-weight:900;box-shadow:0 6px 0 var(--tinta);white-space:nowrap;}
#dica.entra{animation:dicaEntra .45s cubic-bezier(.3,1.6,.5,1);}
@keyframes dicaEntra{0%{transform:translateX(-50%) scale(.5);opacity:0;}100%{transform:translateX(-50%) scale(1);opacity:1;}}
.destaque{animation:destaque 1s ease-in-out infinite;border-radius:30px;}
@keyframes destaque{0%,100%{box-shadow:0 0 0 0 rgba(255,210,63,.95);}50%{box-shadow:0 0 0 14px rgba(255,210,63,.0),0 0 0 6px #ffd23f;}}
#btn-rever-dicas{width:100%;margin-top:10px;}
/* opção "Menos movimento": desliga as animações que pulsam */
body.menos-mov .pulsa,body.menos-mov .bt.turbo.pronto,body.menos-mov #selo-replay,body.menos-mov #abertura .capa img,
body.menos-mov .destaque,body.menos-mov .res-estrelas i.nova,body.menos-mov #dica.entra{animation:none;}
body.menos-mov .destaque{box-shadow:0 0 0 6px #ffd23f;}
@media (max-width:420px){
  .estrelas-total{font-size:16px;padding:4px 8px;} .dir-menu{gap:5px;} .moedas-total{font-size:20px;padding:4px 10px;}
  .topo-menu .logo.pequeno{display:none;}
  #dica{font-size:20px;padding:8px 12px;white-space:normal;}
}
@media (max-height:500px){ #dica{top:calc(30% + var(--sat));font-size:20px;} .res-estrelas{justify-content:flex-start;min-height:44px;} .res-estrelas i{font-size:40px;} }
