:root{
  --verde:#0b7a4b;--verde-2:#10a364;--verde-claro:#e7f7ef;
  --azul:#0f2a4a;--azul-2:#1d4f8a;--amarelo:#ffc542;--coral:#ff6b4a;
  --cap:#e8336f;--cap-2:#8a2be2;
  --tinta:#14213d;--cinza:#5b6475;--linha:#e6e9ef;--fundo:#f7f9fc;--branco:#fff;
  --r:18px;--sombra:0 10px 30px rgba(15,42,74,.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--tinta);background:var(--fundo);line-height:1.55;overflow-x:hidden}
a{color:inherit}
img{max-width:100%}
.wrap{max-width:1180px;margin:auto;padding:0 20px}
[x-cloak]{display:none!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;font:inherit;font-weight:700;border-radius:999px;padding:14px 26px;transition:.18s;text-decoration:none;position:relative;overflow:hidden}
.btn-prim{background:var(--verde);color:#fff;box-shadow:0 8px 20px rgba(11,122,75,.28)}
.btn-prim:hover{background:var(--verde-2);transform:translateY(-2px)}
.btn-prim::after{content:'';position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:brilho 3.2s infinite}
@keyframes brilho{0%,60%{left:-60%}100%{left:130%}}
.btn-sec{background:#fff;color:var(--azul);border:2px solid var(--linha)}
.btn-sec:hover{border-color:var(--azul-2)}
.btn-amar{background:var(--amarelo);color:var(--azul)}
.btn-amar:hover{transform:translateY(-2px) scale(1.02)}
.btn-cap{background:linear-gradient(135deg,var(--amarelo),#ffdd7a);color:#6b1236;box-shadow:0 10px 28px rgba(255,197,66,.45)}
.btn-cap:hover{transform:translateY(-2px) scale(1.03)}
.btn-sm{padding:9px 16px;font-size:14px}
.btn:disabled{opacity:.5;cursor:not-allowed}
.tag{display:inline-block;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--verde-claro);color:var(--verde)}

/* reveal ao rolar */
.rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}

/* topo */
.barra-camp{background:var(--azul);color:#fff;font-size:14px;text-align:center;padding:9px 12px}
.barra-camp b{color:var(--amarelo)}
.barra-cap{display:block;background:linear-gradient(90deg,var(--cap),var(--cap-2),var(--cap));background-size:200% 100%;animation:fluxo 6s linear infinite;color:#fff;text-align:center;font-size:14px;font-weight:600;padding:9px 12px;text-decoration:none}
.barra-cap b{color:var(--amarelo)}
@keyframes fluxo{to{background-position:200% 0}}
header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:12px}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;line-height:1}
.logo-mark{width:42px;height:42px;flex:none;filter:drop-shadow(0 4px 8px rgba(11,122,75,.28));transition:transform .25s}
.logo:hover .logo-mark{transform:rotate(-6deg) scale(1.05)}
.logo .lm-check{stroke-dasharray:30;stroke-dashoffset:30;animation:lmCheck .7s .25s cubic-bezier(.6,.1,.3,1) forwards}
.logo .lm-brilho{transform-origin:39.5px 7.5px;animation:lmBrilho 3.2s 1s ease-in-out infinite}
@keyframes lmCheck{to{stroke-dashoffset:0}}
@keyframes lmBrilho{0%,70%,100%{transform:scale(1);opacity:1}80%{transform:scale(1.5) rotate(45deg);opacity:.7}}
.logo-txt{display:flex;flex-direction:column;gap:1px}
.lt-1{font-size:11px;font-weight:700;letter-spacing:.34em;text-transform:uppercase;color:var(--azul-2);padding-left:1px}
.lt-2{position:relative;font-size:25px;font-weight:800;letter-spacing:-.035em;color:var(--verde);padding-bottom:4px}
.lt-swoosh{position:absolute;left:1px;right:-2px;bottom:-3px;width:calc(100% + 1px);height:9px}
.logo small{display:block;font-size:11px;font-weight:600;color:var(--cinza)}
.nav-links{display:flex;gap:18px;font-weight:600;font-size:14.5px;white-space:nowrap}
.nav-links a{text-decoration:none;color:var(--cinza)}
.nav-links a:hover{color:var(--verde)}
.nav-links a.cap-link{color:var(--cap)}
.nav-dir{display:flex;align-items:center;gap:10px}
.xp-pill{display:flex;align-items:center;gap:8px;border:1.5px solid var(--linha);background:#fff;border-radius:999px;padding:5px 12px 5px 6px;cursor:pointer;font:inherit;font-weight:700;font-size:13px;color:var(--azul)}
.xp-pill .lv{width:28px;height:28px;border-radius:50%;background:var(--verde-claro);display:grid;place-items:center;font-size:15px}
.xp-pill .br{width:54px;height:6px;border-radius:9px;background:var(--linha);overflow:hidden}
.xp-pill .br i{display:block;height:100%;background:linear-gradient(90deg,var(--verde-2),var(--amarelo));transition:width .6s}
@media(max-width:1120px){.nav-links{display:none}}
@media(max-width:560px){.logo small{display:none}.xp-pill .br,.xp-pill .xt{display:none}.nav .btn-sm{padding:9px 13px;font-size:13px;white-space:nowrap}}

/* painel XP */
.xp-painel{position:fixed;top:80px;right:16px;z-index:55;width:320px;max-width:calc(100% - 32px);background:#fff;border-radius:20px;box-shadow:0 20px 50px rgba(15,42,74,.25);padding:20px;border:1px solid var(--linha)}
.xp-painel h4{color:var(--azul);font-size:16px}
.xp-painel .nv{display:flex;align-items:center;gap:12px;margin:12px 0}
.xp-painel .nv .big{font-size:36px}
.xp-painel .barra{height:10px;background:var(--linha);border-radius:9px;overflow:hidden}
.xp-painel .barra i{display:block;height:100%;background:linear-gradient(90deg,var(--verde-2),var(--amarelo))}
.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.bdg{text-align:center;font-size:11px;color:var(--cinza);line-height:1.2}
.bdg span{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 4px;border-radius:14px;background:var(--fundo);font-size:22px;filter:grayscale(1);opacity:.4;transition:.3s}
.bdg.on span{filter:none;opacity:1;background:#fff4d6;box-shadow:0 0 0 2px var(--amarelo)}
.xp-float{position:fixed;z-index:210;pointer-events:none;font-weight:800;color:var(--verde);background:#fff;border-radius:999px;padding:4px 10px;box-shadow:0 6px 16px rgba(0,0,0,.15);font-size:13px;animation:sobeXP 1.4s ease forwards;white-space:nowrap}
@keyframes sobeXP{0%{opacity:0;transform:translate(-50%,0) scale(.7)}15%{opacity:1;transform:translate(-50%,-10px) scale(1.05)}100%{opacity:0;transform:translate(-50%,-70px)}}

/* hero */
.hero{padding:56px 0 40px;position:relative;overflow:hidden}
.blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:flutua 14s ease-in-out infinite;z-index:-1}
.blob.b1{width:520px;height:520px;background:#c9f0dc;top:-180px;right:-120px}
.blob.b2{width:420px;height:420px;background:#dbe7fb;top:40px;left:-160px;animation-delay:-5s}
.blob.b3{width:300px;height:300px;background:#ffe2ec;bottom:-120px;right:30%;animation-delay:-9s}
@keyframes flutua{0%,100%{transform:translate(0,0)}50%{transform:translate(30px,40px)}}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
@media(max-width:920px){.hero-grid{grid-template-columns:1fr}}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.06;letter-spacing:-1.2px;color:var(--azul);font-weight:800}
.hero h1 .rot{display:inline-block;color:var(--verde);background:linear-gradient(transparent 62%,#ffe08a 62%);animation:troca .5s ease}
@keyframes troca{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.hero p.lead{font-size:19px;color:var(--cinza);margin:20px 0 28px;max-width:560px}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.selos{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;font-size:14px;color:var(--cinza);font-weight:600}
.hero-card{background:#fff;border-radius:24px;box-shadow:var(--sombra);padding:26px;position:relative}
.hero-card h3{font-size:18px;color:var(--azul);margin-bottom:4px}
.hero-card .sub{font-size:14px;color:var(--cinza);margin-bottom:16px}
.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mini{border:1.5px solid var(--linha);border-radius:14px;padding:14px 8px;text-align:center;cursor:pointer;transition:.18s;background:#fff;font:inherit}
.mini:hover{border-color:var(--verde);background:var(--verde-claro);transform:translateY(-3px) rotate(-1deg)}
.mini .ic{font-size:28px;display:inline-block;animation:pula 3s ease-in-out infinite}
.mini:nth-child(2) .ic{animation-delay:.3s}.mini:nth-child(3) .ic{animation-delay:.6s}.mini:nth-child(4) .ic{animation-delay:.9s}.mini:nth-child(5) .ic{animation-delay:1.2s}.mini:nth-child(6) .ic{animation-delay:1.5s}
@keyframes pula{0%,80%,100%{transform:none}88%{transform:translateY(-6px) scale(1.1)}}
.mini .nm{font-size:13px;font-weight:700;margin-top:4px;color:var(--azul)}
.mini.cap{grid-column:1/-1;display:flex;align-items:center;gap:12px;text-align:left;padding:14px 16px;background:linear-gradient(135deg,#fff0f5,#f5ecff);border-color:#f7c4d8}
.mini.cap .nm{font-size:15px;color:var(--cap)}
.mini.cap small{display:block;color:var(--cinza);font-weight:600;font-size:12px}
.vivo{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:var(--cinza);background:var(--fundo);border-radius:12px;padding:10px 12px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--verde-2);box-shadow:0 0 0 0 rgba(16,163,100,.6);animation:pulse 1.8s infinite;flex:none}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(16,163,100,0)}100%{box-shadow:0 0 0 0 rgba(16,163,100,0)}}

/* ticker */
.ticker{background:var(--azul);color:#fff;overflow:hidden;white-space:nowrap;padding:14px 0}
.ticker .trilho{display:inline-flex;gap:14px;animation:corre 40s linear infinite}
.ticker:hover .trilho{animation-play-state:paused}
@keyframes corre{to{transform:translateX(-50%)}}
.ticker button{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:999px;padding:8px 16px;font:inherit;font-weight:600;font-size:14px;cursor:pointer}
.ticker button:hover{background:rgba(255,255,255,.2)}

/* seções */
section{padding:72px 0}
.sec-head{text-align:center;max-width:740px;margin:0 auto 40px}
.sec-head h2{font-size:clamp(28px,3.6vw,42px);color:var(--azul);letter-spacing:-.6px;line-height:1.15}
.sec-head p{color:var(--cinza);margin-top:10px;font-size:17px}

/* ============ BANESE CAP ============ */
.cap-sec{position:relative;overflow:hidden;background:radial-gradient(900px 500px at 15% 10%,#ff5c8f 0,transparent 60%),radial-gradient(800px 500px at 90% 90%,#7b2ff7 0,transparent 60%),linear-gradient(135deg,#b3124f,#5a1aa8);color:#fff;padding:80px 0}
.moeda{position:absolute;font-size:34px;opacity:.85;animation:cai linear infinite;pointer-events:none;top:-60px}
@keyframes cai{0%{transform:translateY(0) rotate(0)}100%{transform:translateY(900px) rotate(540deg)}}
.cap-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;position:relative}
@media(max-width:920px){.cap-grid{grid-template-columns:1fr}}
.cap-sec .tag{background:rgba(255,255,255,.18);color:#fff}
.cap-sec h2{font-size:clamp(32px,4.6vw,54px);line-height:1.05;letter-spacing:-1px;margin:14px 0}
.premio{display:inline-block;font-size:clamp(46px,8vw,88px);font-weight:800;line-height:1;letter-spacing:-2px;background:linear-gradient(90deg,#ffe08a,#fff,#ffc542,#fff,#ffe08a);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fluxo 4s linear infinite;filter:drop-shadow(0 6px 24px rgba(255,197,66,.45))}
.premio-desc{font-size:17px;opacity:.92;margin-top:8px;max-width:520px}
.cap-passos{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 26px}
.cap-passos div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:10px 14px;font-size:14px;font-weight:600}
.cap-passos b{color:var(--amarelo);margin-right:4px}
.countdown{display:flex;gap:10px;margin:18px 0}
.countdown div{background:rgba(0,0,0,.25);border-radius:14px;padding:10px 12px;min-width:66px;text-align:center}
.countdown b{display:block;font-size:28px;font-variant-numeric:tabular-nums}
.countdown small{font-size:11px;opacity:.8;text-transform:uppercase;letter-spacing:.5px}
.bilhete{background:#fff;color:var(--tinta);border-radius:24px;padding:24px;box-shadow:0 30px 60px rgba(0,0,0,.3);position:relative;animation:balanca 6s ease-in-out infinite}
@keyframes balanca{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.2deg) translateY(-6px)}}
.bilhete::before,.bilhete::after{content:'';position:absolute;top:50%;width:28px;height:28px;border-radius:50%;background:#7a1f86;transform:translateY(-50%)}
.bilhete::before{left:-14px}.bilhete::after{right:-14px}
.bilhete .topo{display:flex;justify-content:space-between;align-items:center;border-bottom:2px dashed var(--linha);padding-bottom:12px;margin-bottom:14px}
.bilhete .topo b{color:var(--cap);font-size:18px}
.cap-aviso{font-size:12px;opacity:.8;margin-top:18px;max-width:560px}

/* sorteio */
.numeros{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}
.numeros button{aspect-ratio:1;border-radius:50%;border:1.5px solid var(--linha);background:#fff;font:inherit;font-weight:700;font-size:13px;cursor:pointer;color:var(--azul);transition:.15s}
.numeros button.on{background:var(--cap);border-color:var(--cap);color:#fff;transform:scale(1.08)}
.numeros button.hit{background:var(--amarelo);border-color:var(--amarelo);color:#6b1236;animation:pop .4s}
@keyframes pop{50%{transform:scale(1.35)}}
.globo{display:flex;align-items:center;gap:12px;margin:14px 0}
.globo .bola{width:62px;height:62px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,#ffc542 60%,#e0a100);display:grid;place-items:center;font-size:24px;font-weight:800;color:#6b1236;box-shadow:inset -4px -6px 10px rgba(0,0,0,.15)}
.globo .bola.gira{animation:gira .35s linear infinite}
@keyframes gira{to{transform:rotate(360deg)}}
.sorteados{display:flex;gap:6px;flex-wrap:wrap}
.sorteados span{width:34px;height:34px;border-radius:50%;background:var(--azul);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;animation:pop .4s}
.sorteados span.hit{background:var(--amarelo);color:#6b1236}

/* passos */
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:820px){.passos{grid-template-columns:1fr}}
.passo{background:#fff;border-radius:var(--r);padding:26px;box-shadow:var(--sombra);transition:.25s}
.passo:hover{transform:translateY(-6px)}
.passo .n{width:44px;height:44px;border-radius:12px;background:var(--azul);color:#fff;font-weight:800;display:grid;place-items:center;margin-bottom:14px;font-size:18px}
.passo h3{color:var(--azul);font-size:18px;margin-bottom:6px}
.passo p{color:var(--cinza);font-size:15px}

/* produtos */
.filtros{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:28px}
.chip{border:1.5px solid var(--linha);background:#fff;border-radius:999px;padding:9px 16px;font:inherit;font-weight:600;font-size:14px;cursor:pointer;color:var(--cinza);transition:.15s}
.chip:hover{border-color:var(--verde)}
.chip.on{background:var(--azul);color:#fff;border-color:var(--azul)}
.grid-prod{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.card{background:#fff;border-radius:var(--r);padding:22px;border:1.5px solid var(--linha);display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;inset:0 0 auto 0;height:4px;background:var(--c,var(--verde));transform:scaleX(0);transform-origin:left;transition:.35s}
.card:hover{box-shadow:var(--sombra);transform:translateY(-6px)}
.card:hover::before{transform:scaleX(1)}
.card .ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:28px;background:var(--verde-claro);margin-bottom:14px;transition:.3s}
.card:hover .ic{transform:rotate(-8deg) scale(1.12)}
.card h3{font-size:17px;color:var(--azul)}
.card .gancho{font-size:14px;color:var(--cinza);margin:6px 0 12px;flex:1}
.card .mini-acoes{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.card .mini-acoes button{border:0;background:var(--fundo);border-radius:999px;padding:5px 10px;font:inherit;font-size:12px;font-weight:700;color:var(--azul);cursor:pointer}
.card .mini-acoes button:hover{background:var(--verde-claro);color:var(--verde)}
.card .acoes{display:flex;gap:8px;align-items:center}
.card .cmp{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cinza);cursor:pointer;margin-left:auto}
.card .cmp input{accent-color:var(--verde);width:16px;height:16px}
.card .badge{position:absolute;top:14px;right:14px;font-size:11px;font-weight:800;background:#fff4d6;color:#a26b00;padding:4px 9px;border-radius:999px}
.card.destaque-cap{grid-column:span 2;background:linear-gradient(135deg,#fff0f5,#f5ecff);border-color:#f7c4d8}
.card.destaque-cap .badge{background:var(--cap);color:#fff;animation:pulseBadge 2s infinite}
@keyframes pulseBadge{50%{transform:scale(1.08)}}
.card .jogado{position:absolute;bottom:14px;right:14px;font-size:11px;font-weight:800;color:var(--verde)}
@media(max-width:620px){.card.destaque-cap{grid-column:auto}}

/* arena */
.arena{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.arena button{background:#fff;border:1.5px solid var(--linha);border-radius:18px;padding:18px 10px;font:inherit;cursor:pointer;transition:.2s;position:relative}
.arena button:hover{transform:translateY(-5px) rotate(1deg);border-color:var(--verde);box-shadow:var(--sombra)}
.arena .ic{font-size:34px}
.arena b{display:block;color:var(--azul);font-size:14px;margin-top:6px}
.arena small{color:var(--cinza);font-size:12px;font-weight:600}
.arena .ok{position:absolute;top:8px;right:10px;font-size:14px}

/* barra comparar */
.barra-cmp{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;z-index:45;background:var(--azul);color:#fff;border-radius:999px;padding:10px 10px 10px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 14px 34px rgba(0,0,0,.25);max-width:calc(100% - 100px)}
.barra-cmp .its{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* quiz home */
.quiz-box{background:linear-gradient(135deg,var(--azul),var(--azul-2));border-radius:28px;padding:44px;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}
@media(max-width:880px){.quiz-box{grid-template-columns:1fr;padding:26px}}
.quiz-box h2{font-size:clamp(28px,3.4vw,38px);line-height:1.15}
.quiz-box p{opacity:.85;margin-top:10px}
.quiz{background:#fff;color:var(--tinta);border-radius:20px;padding:26px;min-height:340px}
.prog{height:6px;background:var(--linha);border-radius:9px;overflow:hidden;margin-bottom:18px}
.prog i{display:block;height:100%;background:var(--verde-2);transition:.3s}
.quiz h3{color:var(--azul);font-size:19px;margin-bottom:14px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.opts{grid-template-columns:1fr}}
.opt{border:1.5px solid var(--linha);background:#fff;border-radius:14px;padding:13px 14px;text-align:left;font:inherit;font-weight:600;font-size:14px;cursor:pointer;display:flex;gap:10px;align-items:center;transition:.15s}
.opt:hover{border-color:var(--verde);transform:translateX(3px)}
.opt.on{border-color:var(--verde);background:var(--verde-claro);color:var(--verde)}
.quiz-nav{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:10px}
.rec{display:flex;flex-direction:column;gap:10px}
.rec-it{display:flex;align-items:center;gap:12px;border:1.5px solid var(--linha);border-radius:14px;padding:12px 14px;animation:troca .5s ease both}
.rec-it:nth-child(2){animation-delay:.12s}.rec-it:nth-child(3){animation-delay:.24s}
.rec-it .ic{font-size:24px}
.rec-it b{color:var(--azul)}
.rec-it small{display:block;color:var(--cinza);font-size:13px}
.rec-it:first-child{border-color:var(--verde);background:var(--verde-claro)}

/* tabela */
.tbl-wrap{overflow-x:auto;background:#fff;border-radius:var(--r);border:1px solid var(--linha)}
table{width:100%;border-collapse:collapse}
th,td{padding:12px 14px;border-bottom:1px solid var(--linha);text-align:left;vertical-align:top;font-size:14px}
th{background:var(--fundo);color:var(--azul);font-size:14px}
td:first-child{font-weight:700;color:var(--cinza)}
tr{animation:troca .4s ease both}
th.hl,td.hl{background:var(--verde-claro)}
th.hl{color:var(--verde)}

/* porque / faq / cta */
.porque{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:900px){.porque{grid-template-columns:1fr 1fr}}
.pq{background:#fff;border-radius:var(--r);padding:22px;border:1.5px solid var(--linha)}
.pq .ic{font-size:30px}
.pq h4{color:var(--azul);margin:8px 0 4px}
.pq p{font-size:14px;color:var(--cinza)}
.faq{max-width:820px;margin:auto}
.faq details{background:#fff;border:1.5px solid var(--linha);border-radius:14px;padding:16px 20px;margin-bottom:10px}
.faq summary{font-weight:700;color:var(--azul);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:22px;color:var(--verde)}
.faq details[open] summary::after{content:'–'}
.faq p{color:var(--cinza);margin-top:10px;font-size:15px}
.cta-final{background:var(--verde);color:#fff;border-radius:28px;padding:48px 24px;text-align:center;position:relative;overflow:hidden}
.cta-final h2{font-size:clamp(26px,3.4vw,38px)}
.cta-final p{opacity:.9;margin:10px 0 24px}
footer{padding:40px 0 110px;color:var(--cinza);font-size:13px;text-align:center}
footer p{max-width:780px;margin:6px auto}

/* modal */
.ov{position:fixed;inset:0;background:rgba(10,20,40,.55);z-index:60;display:grid;place-items:center;padding:16px;backdrop-filter:blur(3px)}
.modal{background:#fff;border-radius:24px;width:100%;max-width:640px;max-height:92vh;overflow:auto;padding:28px;position:relative;animation:sobe .25s ease}
.modal.lg{max-width:900px}
.modal.prod{max-width:760px;padding:0}
@keyframes sobe{from{transform:translateY(24px) scale(.97);opacity:0}}
.fechar{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:0;background:var(--fundo);font-size:20px;cursor:pointer;z-index:2}
.modal h2{color:var(--azul);font-size:24px;padding-right:40px}
.prod-top{padding:24px 28px 0;background:linear-gradient(180deg,var(--fundo),#fff)}
.prod-top .ic-big{font-size:44px;display:inline-block;animation:pula 2.4s ease-in-out infinite}
.abas{display:flex;gap:4px;overflow-x:auto;margin-top:16px;border-bottom:1.5px solid var(--linha);scrollbar-width:none}
.abas::-webkit-scrollbar{display:none}
.abas button{border:0;background:transparent;font:inherit;font-weight:700;font-size:14px;color:var(--cinza);padding:10px 14px;cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}
.abas button.on{color:var(--azul);border-color:var(--verde)}
.prod-corpo{padding:22px 28px 26px}
.prod-pe{position:sticky;bottom:0;background:#fff;border-top:1px solid var(--linha);padding:14px 28px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.lista{list-style:none;margin:14px 0}
.lista li{padding:7px 0 7px 30px;position:relative;font-size:15px;animation:troca .4s ease both}
.lista li:nth-child(2){animation-delay:.07s}.lista li:nth-child(3){animation-delay:.14s}.lista li:nth-child(4){animation-delay:.21s}
.lista li::before{content:'✓';position:absolute;left:0;top:7px;width:21px;height:21px;border-radius:50%;background:var(--verde-claro);color:var(--verde);font-weight:800;font-size:12px;display:grid;place-items:center}
.aviso{font-size:12.5px;color:var(--cinza);background:var(--fundo);border-radius:12px;padding:10px 12px;margin-top:14px}

/* simulador */
.sim label{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:var(--azul);margin:14px 0 6px}
.sim label span{color:var(--verde);font-size:15px}
.sim input[type=range]{width:100%;accent-color:var(--verde);height:28px}
.sim .resultado{background:var(--azul);color:#fff;border-radius:18px;padding:18px 20px;margin-top:16px}
.sim .resultado small{opacity:.8;font-weight:600}
.sim .resultado .grande{font-size:34px;font-weight:800;line-height:1.1;color:var(--amarelo);font-variant-numeric:tabular-nums}
.barras{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.barra-l{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;font-size:13px;font-weight:600}
.barra-l .trilho{grid-column:2/4;height:10px;background:rgba(0,0,0,.06);border-radius:9px;overflow:hidden}
.barra-l .trilho i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--coral),#ff9f43);transition:width .6s cubic-bezier(.2,.8,.2,1)}
.duas{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
@media(max-width:520px){.duas{grid-template-columns:1fr}}
.duas>div{border-radius:16px;padding:14px 16px;border:1.5px solid var(--linha)}
.duas .ruim{background:#fff3f0;border-color:#ffd3c8}
.duas .bom{background:var(--verde-claro);border-color:#bfe7d3}
.duas b{display:block;font-size:22px;font-variant-numeric:tabular-nums}
.duas small{color:var(--cinza);font-weight:600}
.pessoas-grid{display:flex;flex-wrap:wrap;gap:3px;margin-top:12px;font-size:20px}
.pessoas-grid span{animation:pop .3s both}
.sel{width:100%;border:1.5px solid var(--linha);border-radius:12px;padding:11px 12px;font:inherit;background:#fff}
.chart{width:100%;height:auto;margin-top:12px;background:var(--fundo);border-radius:14px;padding:10px}

/* caso */
.caso{display:grid;gap:14px}
.caso .pers{display:flex;gap:14px;align-items:center}
.caso .pers .av{width:64px;height:64px;border-radius:18px;background:var(--fundo);display:grid;place-items:center;font-size:36px}
.caso .flip{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:520px){.caso .flip{grid-template-columns:1fr}}
.caso .flip div{border-radius:16px;padding:16px;font-size:14.5px}
.caso .flip .sem{background:#fff3f0;border:1.5px solid #ffd3c8}
.caso .flip .com{background:var(--verde-claro);border:1.5px solid #bfe7d3}
.caso .flip b{display:block;margin-bottom:6px}

/* jogo riscos */
.jogo-hud{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;font-weight:800;color:var(--azul)}
.jogo-hud span{background:var(--fundo);border-radius:999px;padding:6px 12px;font-size:14px}
.tabuleiro{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:380px;margin:0 auto;user-select:none;-webkit-user-select:none;touch-action:manipulation}
.buraco{aspect-ratio:1;border-radius:22px;background:radial-gradient(circle at 50% 70%,#dfe6ef,#f3f6fa 70%);border:2px solid var(--linha);display:grid;place-items:center;font-size:clamp(34px,10vw,48px);cursor:pointer;position:relative;overflow:hidden;transition:background .15s}
.buraco:active{transform:scale(.95)}
.buraco .it{animation:surge .18s ease-out}
@keyframes surge{from{transform:translateY(60%) scale(.4);opacity:0}}
.buraco.alvo{background:radial-gradient(circle at 50% 70%,#ffe3dc,#fff5f2 70%);border-color:#ffc2b3}
.buraco.armad{background:radial-gradient(circle at 50% 70%,#e3f5ea,#f4fbf7 70%);border-color:#bfe7d3}
.fx{position:absolute;top:8px;left:50%;transform:translateX(-50%);font-size:16px;font-weight:800;animation:sobeXP .6s forwards;pointer-events:none}
.fx.bom{color:var(--verde)}.fx.ruim{color:#c0392b}
.tempo-bar{height:8px;background:var(--linha);border-radius:9px;overflow:hidden;margin-bottom:12px}
.tempo-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--verde-2),var(--amarelo),var(--coral));transition:width 1s linear}
.jogo-tela{text-align:center;padding:10px 0}
.jogo-tela .big{font-size:56px}
.estrelas{font-size:36px;letter-spacing:4px;margin:6px 0}
.combo{color:var(--coral);animation:pop .3s}

/* quiz produto */
.vm{display:flex;gap:10px;margin-top:14px}
.vm button{flex:1;border:2px solid var(--linha);background:#fff;border-radius:16px;padding:16px;font:inherit;font-weight:800;font-size:16px;cursor:pointer;transition:.15s}
.vm button:hover{transform:translateY(-2px)}
.vm button.certo{background:var(--verde-claro);border-color:var(--verde);color:var(--verde)}
.vm button.errado{background:#fff3f0;border-color:#e74c3c;color:#c0392b;animation:treme .35s}
@keyframes treme{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.cartao-q{background:var(--fundo);border-radius:18px;padding:20px;font-size:18px;font-weight:700;color:var(--azul);min-height:96px;display:flex;align-items:center;animation:troca .35s}
.exp{margin-top:12px;padding:12px 14px;border-radius:12px;font-size:14px;animation:troca .3s}
.exp.ok{background:var(--verde-claro);color:#0a5c39}
.exp.no{background:#fff3f0;color:#8a2a1c}

/* form */
.steps{display:flex;gap:6px;margin:14px 0 20px}
.steps i{flex:1;height:5px;border-radius:9px;background:var(--linha);transition:.3s}
.steps i.on{background:var(--verde-2)}
label.f{display:block;font-size:13px;font-weight:700;color:var(--azul);margin:12px 0 6px}
.inp{width:100%;border:1.5px solid var(--linha);border-radius:12px;padding:13px 14px;font:inherit;font-size:15px;background:#fff}
.inp:focus{outline:none;border-color:var(--verde)}
.row2{display:grid;grid-template-columns:1fr 90px;gap:10px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--cinza);margin-top:14px}
.chk input{margin-top:3px;accent-color:var(--verde);width:18px;height:18px;flex:none}
.erro{color:#c0392b;font-size:14px;font-weight:600;margin-top:10px}
.multi{display:flex;flex-wrap:wrap;gap:8px}
.multi .chip{font-size:13px;padding:7px 12px}
.multi .chip.on{background:var(--verde);border-color:var(--verde)}
.ok-box{text-align:center;padding:10px 0}
.ok-box .ic-big{font-size:64px;animation:pop .6s}
.vagas{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#a26b00;background:#fff4d6;border-radius:10px;padding:8px 12px;margin-top:12px}

/* toast */
.toast{position:fixed;left:18px;bottom:18px;z-index:50;background:#fff;border-radius:16px;box-shadow:0 14px 34px rgba(15,42,74,.2);padding:12px 16px 12px 12px;display:flex;gap:12px;align-items:center;max-width:340px;border:1px solid var(--linha)}
.toast .av{width:42px;height:42px;border-radius:12px;background:var(--verde-claro);display:grid;place-items:center;font-size:22px;flex:none}
.toast b{color:var(--azul);font-size:14px}
.toast p{font-size:13px;color:var(--cinza);line-height:1.35}
.toast small{font-size:11.5px;color:var(--verde);font-weight:700}
@media(max-width:600px){.toast{left:10px;right:84px;bottom:18px;max-width:none}}



/* ============ MINI-HISTÓRIAS ============ */
.mini .jogue{display:block;font-size:11px;font-weight:700;color:var(--verde);margin-top:2px;opacity:.8}
.modo-sw{display:flex;gap:6px;background:var(--fundo);border-radius:999px;padding:4px;margin-bottom:14px;width:max-content;max-width:100%}
.modo-sw button{border:0;background:transparent;border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;font-size:13px;color:var(--cinza);cursor:pointer;white-space:nowrap}
.modo-sw button.on{background:#fff;color:var(--azul);box-shadow:0 2px 8px rgba(0,0,0,.08)}
.passos-prev{display:flex;gap:6px;justify-content:center;margin-top:10px;font-size:22px}
.passos-prev span{background:var(--fundo);border-radius:12px;padding:6px 8px}
.hud-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.hud-h .etapa{font-weight:800;color:var(--azul);font-size:13px;background:var(--fundo);border-radius:999px;padding:5px 12px}
.medidor{display:flex;align-items:center;gap:6px;flex:1;min-width:110px}
.medidor div{flex:1;height:9px;background:var(--linha);border-radius:9px;overflow:hidden}
.medidor i{display:block;height:100%;background:linear-gradient(90deg,var(--verde-2),var(--amarelo));transition:width .6s cubic-bezier(.2,.8,.2,1)}
.cena{position:relative;height:300px;border-radius:22px;overflow:hidden;user-select:none;-webkit-user-select:none;touch-action:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
@media(max-width:520px){.cena{height:260px}}
.cena.esfregando{cursor:grab}
.ci{position:absolute;transform:translate(-50%,-50%);line-height:1;transition:left .35s ease,top .35s ease,font-size .35s ease,opacity .3s;cursor:default;z-index:2}
.ci .boing{display:inline-block;animation:boing .35s ease}
@keyframes boing{40%{transform:scale(1.25) rotate(-6deg)}}
.ci.alvo-ativo{cursor:pointer;z-index:3}
.ci.alvo-ativo::after{content:'';position:absolute;inset:-12px;border-radius:50%;border:3px dashed rgba(16,163,100,.8);animation:giraBorda 6s linear infinite,pulsaAlvo 1.4s ease-in-out infinite;pointer-events:none}
@keyframes giraBorda{to{rotate:360deg}}
@keyframes pulsaAlvo{50%{scale:1.12;opacity:.6}}
.ci.protegido .boing{filter:drop-shadow(0 0 10px rgba(16,163,100,.9))}
.ci .esc{position:absolute;right:-14px;top:-10px;font-size:20px;animation:pula 2.4s ease-in-out infinite}
.ci.sujeira{pointer-events:none;z-index:4}
.ci.pula .boing,.ci.pula{animation:pulaCont 1s ease-in-out infinite}
@keyframes pulaCont{50%{margin-top:-10px}}
.ci.treme{animation:tremeC .25s linear infinite}
@keyframes tremeC{25%{margin-left:-4px}75%{margin-left:4px}}
.ci.pisca{animation:piscaC .5s steps(2) infinite}
@keyframes piscaC{50%{opacity:.2}}
.ci.flutua{animation:flutuaC 4s ease-in-out infinite}
@keyframes flutuaC{50%{margin-top:-8px;margin-left:6px}}
.ci.gira{animation:giraC 1s linear infinite}
@keyframes giraC{to{rotate:360deg}}
.ci.gira-lento{animation:giraC 14s linear infinite}
.ci.brilha .boing{filter:drop-shadow(0 0 8px #ffe066) drop-shadow(0 0 16px #fff3bf)}
.ci.apagado{opacity:.35;filter:grayscale(.7)}
.ci.entra{animation:entraC .5s cubic-bezier(.2,1.4,.4,1)}
@keyframes entraC{from{scale:0;opacity:0}}
.ci.cai{animation:caiC 1.1s linear infinite}
@keyframes caiC{from{top:-6%}to{top:104%}}
.cfx{position:absolute;transform:translate(-50%,-50%);font-size:26px;pointer-events:none;z-index:6;animation:cfx .9s ease-out forwards}
@keyframes cfx{0%{opacity:0;scale:.5}20%{opacity:1;scale:1.2}100%{opacity:0;translate:0 -60px}}
.cena-msg{position:absolute;left:50%;top:12px;transform:translateX(-50%);background:rgba(15,42,74,.88);color:#fff;font-weight:700;font-size:14px;padding:8px 16px;border-radius:999px;z-index:8;max-width:92%;text-align:center}
.incidente{background:#fff5f5;border-radius:18px;padding:14px 16px;text-align:center;border:2px solid #ff8787;animation:sobe .3s ease}
.incidente.positivo{background:#fff9db}
.alerta-cena{position:absolute;inset:0;z-index:5;pointer-events:none;box-shadow:inset 0 0 0 4px #ff6b6b,inset 0 0 60px rgba(255,80,80,.55);border-radius:22px;animation:alertaPulsa .8s ease-in-out infinite}
@keyframes alertaPulsa{50%{opacity:.35}}
.incidente.positivo{border-color:var(--amarelo)}
.incidente b{display:block;color:var(--azul);font-size:15px;margin-bottom:8px}
.contagem{height:8px;background:var(--linha);border-radius:9px;overflow:hidden;margin-bottom:10px}
.contagem i{display:block;height:100%;background:linear-gradient(90deg,var(--coral),#ffa94d);transition:width .1s linear}
.custo{font-size:13px;color:#c0392b;font-weight:600;margin-bottom:8px}
.btn-acionar{background:linear-gradient(135deg,var(--verde),var(--verde-2));color:#fff;font-size:15px;padding:12px 22px;animation:pulseBadge 1s infinite;box-shadow:0 8px 20px rgba(11,122,75,.35)}
.incidente.positivo .btn-acionar{background:linear-gradient(135deg,var(--cap),var(--cap-2))}
.ctrl{margin-top:12px;min-height:84px}
.ctrl .instr{font-weight:700;color:var(--azul);font-size:15.5px;margin-bottom:8px}
.pbar{height:8px;background:var(--linha);border-radius:9px;overflow:hidden;margin-bottom:8px}
.pbar i{display:block;height:100%;background:var(--verde-2);transition:width .2s}
.bandeja{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bandeja small{color:var(--cinza);font-size:12px;font-weight:600}
.peca{width:58px;height:58px;border-radius:16px;border:2px dashed #bfe7d3;background:var(--verde-claro);font-size:30px;cursor:grab;touch-action:none;transition:.2s}
.peca:hover{transform:translateY(-3px) rotate(-4deg)}
.peca.usado{opacity:.15;transform:scale(.8);pointer-events:none}
.btn-segurar{width:100%;padding:16px;font-size:16px;touch-action:none;user-select:none;-webkit-user-select:none}
.btn-segurar:active{transform:scale(.98);background:var(--verde-2)}
.escolhas{display:grid;gap:8px}
.ghost{position:fixed;transform:translate(-50%,-50%);font-size:44px;pointer-events:none;z-index:300;filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}
/* jogo compacto no celular */
@media(max-width:600px){
  .ov{padding:0}
  .modal.prod{max-height:100dvh;height:100dvh;border-radius:0}
  .modal.prod.modo-jogo .prod-top{padding:14px 16px 0}
  .modal.prod.modo-jogo .prod-top p,.modal.prod.modo-jogo .prod-top .ic-big{display:none}
  .modal.prod.modo-jogo .prod-top h2{font-size:18px}
  .modal.prod.modo-jogo .prod-corpo{padding:12px 16px 16px}
  .modal.prod.modo-jogo .prod-pe{display:none}
  .modal.prod.modo-jogo .abas{margin-top:8px}
  .modal.prod.modo-jogo .abas button{padding:8px 10px;font-size:13px}
  .modo-sw{margin-bottom:8px}
  .cena{height:240px}
  .ctrl .instr{font-size:14.5px}
  .peca{width:52px;height:52px;font-size:26px}
}

/* ============ CAPTURA RÁPIDA ============ */
.btn-full{width:100%}
.hero-cap{display:grid;grid-template-columns:1.2fr 1fr 1.2fr auto;gap:8px;margin-top:22px;background:#fff;border-radius:18px;padding:10px;box-shadow:var(--sombra);max-width:640px}
.hero-cap .inp{padding:11px 12px;font-size:14px}
.hero-cap .btn{padding:11px 18px;white-space:nowrap}
.hero-cap .chk{font-size:12px}
@media(max-width:700px){.hero-cap{grid-template-columns:1fr 1fr}.hero-cap select{grid-column:1/-1}.hero-cap .btn{grid-column:1/-1}}
.modal-cap{max-width:560px}
.prod-chips{display:flex;flex-wrap:wrap;gap:8px}
.pchip{display:flex;align-items:center;gap:6px;border:1.5px solid var(--linha);background:#fff;border-radius:14px;padding:9px 12px;font:inherit;font-weight:700;font-size:14px;color:var(--azul);cursor:pointer;transition:.15s}
.pchip span:first-child{font-size:20px}
.pchip:hover{border-color:var(--verde)}
.pchip.on{background:var(--verde-claro);border-color:var(--verde);color:var(--verde);transform:scale(1.04)}
.pchip.mais{color:var(--cinza);border-style:dashed}
.cap-campos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.cap-campos{grid-template-columns:1fr}}
.mini-seg{font-size:12px;color:var(--cinza);text-align:center;margin-top:10px}
.completar{background:var(--fundo);border-radius:18px;padding:16px;margin-top:16px}
/* ============ APP WEB: barra de abas, instalar ============ */
.tabbar{display:none}
@media(max-width:700px){
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);align-items:end;position:fixed;left:0;right:0;bottom:0;z-index:48;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--linha);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -6px 24px rgba(15,42,74,.08)}
  .tabbar a,.tabbar button{display:flex;flex-direction:column;align-items:center;gap:1px;font:inherit;font-size:11px;font-weight:700;color:var(--cinza);text-decoration:none;border:0;background:none;padding:4px 0;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .tabbar span{font-size:21px;line-height:1.1;transition:transform .2s}
  .tabbar a.on{color:var(--verde)}
  .tabbar a.on span{transform:translateY(-2px) scale(1.12)}
  .tabbar .tab-cta{color:var(--verde)}
  .tabbar .tab-cta span{display:grid;place-items:center;width:52px;height:52px;margin-top:-26px;border-radius:50%;background:linear-gradient(135deg,var(--verde),var(--verde-2));color:#fff;font-size:24px;box-shadow:0 8px 20px rgba(11,122,75,.45);border:4px solid #fff;animation:pulseCta 2.4s infinite}
  @keyframes pulseCta{0%,100%{box-shadow:0 8px 20px rgba(11,122,75,.45),0 0 0 0 rgba(16,163,100,.45)}50%{box-shadow:0 8px 20px rgba(11,122,75,.45),0 0 0 10px rgba(16,163,100,0)}}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .toast{bottom:calc(150px + env(safe-area-inset-bottom));right:10px}
  .barra-cmp{bottom:calc(78px + env(safe-area-inset-bottom))}
  .chat-fab-wrap{bottom:calc(82px + env(safe-area-inset-bottom))!important;right:12px!important}
  .chat-fab{width:54px;height:54px;font-size:23px}
}
.instalar-banner{position:fixed;left:12px;right:12px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:60;max-width:460px;margin:auto;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--linha);border-radius:18px;padding:12px 38px 12px 12px;box-shadow:0 18px 44px rgba(15,42,74,.25)}
@media(min-width:701px){.instalar-banner{bottom:20px;left:20px;right:auto}}
.instalar-banner b{display:block;color:var(--azul);font-size:15px}
.instalar-banner small{color:var(--cinza);font-size:12.5px;line-height:1.3;display:block}
.instalar-banner>div:nth-child(2){flex:1}
.instalar-banner .x{position:absolute;top:6px;right:8px;border:0;background:none;font-size:20px;color:var(--cinza);cursor:pointer}
.ib-ic{flex:none;width:46px;height:46px;border-radius:12px;background:linear-gradient(160deg,#10915a,var(--verde));color:#fff;display:grid;place-items:center;font-weight:900;font-size:24px;box-shadow:0 6px 14px rgba(11,122,75,.35)}
.ib-ic.grande{width:72px;height:72px;font-size:38px;border-radius:18px;margin:0 auto 6px}
.ios-modal{text-align:center}
.ios-passos{list-style:none;padding:0;margin:0 0 12px;display:grid;gap:10px;text-align:left}
.ios-passos li{display:flex;gap:10px;align-items:center;background:var(--verde-claro);border-radius:14px;padding:10px 12px;font-size:14.5px;line-height:1.35}
.ios-passos li>span{flex:none;width:26px;height:26px;border-radius:50%;background:var(--verde);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px}
.ios-passos svg{width:18px;height:18px;vertical-align:-3px;color:#0a84ff}
.btn-app{white-space:nowrap}
@media(max-width:560px){.btn-app{display:none!important}}
/* modo app instalado: sem faixas de site, respeita o notch */
.modo-app body{padding-top:env(safe-area-inset-top)}
.modo-app .barra-cap{display:none}
.modo-app header{top:env(safe-area-inset-top)}

/* ============ CONTA: Google / Apple / e-mail ============ */
.sociais{display:grid;gap:10px;margin:4px 0 2px}
.g-btn{display:flex;justify-content:center;min-height:44px}
.apple-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:340px;margin:auto;height:44px;border-radius:999px;border:0;background:#000;color:#fff;font:inherit;font-weight:600;font-size:15px;cursor:pointer}
.apple-btn svg{width:18px;height:18px}
.ou{display:flex;align-items:center;gap:10px;color:var(--cinza);font-size:12.5px;margin:6px 0 0}
.ou::before,.ou::after{content:"";flex:1;height:1px;background:var(--linha)}
.ok-msg{color:var(--verde);font-size:14px;font-weight:700;margin-top:10px;background:var(--verde-claro);padding:10px 12px;border-radius:12px}
.cad-troca{margin-top:12px;font-size:14px;color:var(--cinza);text-align:center}
.cad-troca a{color:var(--verde);font-weight:700}
.cad-modal{text-align:left}
.cad-modal>div:first-of-type,.cad-modal>h2,.cad-modal>p:first-of-type{text-align:center}
.aviso-email{display:block;width:100%;margin-top:8px;border:1px dashed #f0b429;background:#fff8e6;color:#8a5a00;border-radius:12px;padding:9px 10px;font:inherit;font-size:13px;font-weight:700;text-align:left;cursor:pointer}

/* ============ CHAT IA ============ */
.chat-fab-wrap{position:fixed;right:18px;bottom:18px;z-index:52;display:flex;align-items:flex-end;gap:10px}
.chat-fab{width:60px;height:60px;border-radius:50%;border:0;background:linear-gradient(135deg,var(--azul),var(--azul-2));color:#fff;font-size:26px;cursor:pointer;box-shadow:0 10px 26px rgba(15,42,74,.4);position:relative;transition:.2s}
.chat-fab:hover{transform:scale(1.07)}
.badge-n{position:absolute;top:-4px;right:-4px;background:#e03131;color:#fff;border-radius:999px;font-size:12px;min-width:22px;height:22px;display:grid;place-items:center;animation:pulseBadge 1.4s infinite}
.chat-teaser{background:#fff;border-radius:16px 16px 4px 16px;padding:12px 30px 12px 14px;font-size:14px;font-weight:600;color:var(--azul);box-shadow:0 10px 30px rgba(15,42,74,.2);max-width:250px;position:relative;cursor:pointer;margin-bottom:8px}
.chat-teaser button{position:absolute;top:6px;right:8px;border:0;background:none;font-size:16px;color:var(--cinza);cursor:pointer}
.chat-painel{position:fixed;right:18px;bottom:90px;z-index:56;width:370px;max-width:calc(100vw - 24px);height:min(560px,calc(100vh - 190px));background:#fff;border-radius:22px;box-shadow:0 24px 60px rgba(15,42,74,.3);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--linha)}
@media(max-width:600px){.chat-painel{right:0;left:0;bottom:0;top:0;width:auto;max-width:none;height:auto;border-radius:0;z-index:70}}
.chat-top{display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(135deg,var(--azul),var(--azul-2));color:#fff}
.chat-top small{display:block;opacity:.8;font-size:12px}
.chat-top .x{margin-left:auto;border:0;background:rgba(255,255,255,.15);color:#fff;width:32px;height:32px;border-radius:50%;font-size:18px;cursor:pointer}
.chat-av{width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:24px;position:relative}
.chat-av i{position:absolute;right:0;bottom:0;width:11px;height:11px;border-radius:50%;background:#40c057;border:2px solid #fff}
.chat-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:8px;background:#f4f6fa}
.msg{max-width:84%;padding:10px 13px;border-radius:16px;font-size:14.5px;line-height:1.45;animation:troca .25s ease;white-space:pre-wrap;word-wrap:break-word}
.msg.bot{background:#fff;color:var(--tinta);border-bottom-left-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.msg.cliente{background:var(--verde);color:#fff;margin-left:auto;border-bottom-right-radius:4px}
.msg.digit{display:flex;gap:4px;padding:14px}
.msg.digit i{width:7px;height:7px;border-radius:50%;background:#adb5bd;animation:pulaDot 1s infinite}
.msg.digit i:nth-child(2){animation-delay:.15s}.msg.digit i:nth-child(3){animation-delay:.3s}
@keyframes pulaDot{40%{transform:translateY(-5px)}}
.msg-acao{border:1.5px dashed var(--verde);background:var(--verde-claro);color:var(--verde);font:inherit;font-weight:700;font-size:13px;border-radius:12px;padding:8px 12px;cursor:pointer;align-self:flex-start}
.chat-conf{background:#fff;border:2px solid var(--verde);border-radius:16px;padding:14px;display:grid;gap:6px;font-size:14px;animation:sobe .3s ease}
.chat-conf b{color:var(--azul)}
.chat-conf small{color:var(--cinza);font-size:11.5px}
.chat-sug{display:flex;gap:6px;overflow-x:auto;padding:8px 12px;background:#f4f6fa;scrollbar-width:none}
.chat-sug button{flex:none;border:1.5px solid var(--verde);background:#fff;color:var(--verde);border-radius:999px;padding:7px 12px;font:inherit;font-weight:700;font-size:13px;cursor:pointer}
.chat-in{display:flex;gap:8px;padding:10px;border-top:1px solid var(--linha)}
.chat-in input{flex:1;border:1.5px solid var(--linha);border-radius:999px;padding:11px 14px;font:inherit;font-size:15px}
.chat-in input:focus{outline:none;border-color:var(--verde)}
.chat-in button{width:44px;height:44px;border-radius:50%;border:0;background:var(--verde);color:#fff;font-size:18px;cursor:pointer}
.chat-in button:disabled{opacity:.4}
.chat-disc{font-size:10.5px;color:var(--cinza);text-align:center;padding:0 10px 8px}

/* ============ CIDADE PROTEGIDA ============ */
.cidade-sec{background:linear-gradient(180deg,#eaf6ff,#f7f9fc)}
.cidade{position:relative;background:#fff;border-radius:28px;box-shadow:var(--sombra);padding:16px;border:1px solid var(--linha)}
.cid-hud{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.moedas{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#fff4d6,#ffe8a3);border-radius:16px;padding:8px 14px;font-size:20px}
.moedas b{font-size:24px;color:#7a4f00;font-variant-numeric:tabular-nums}
.moedas small{font-size:12px;font-weight:700;color:#a26b00}
.cid-stat{background:var(--fundo);border-radius:14px;padding:6px 12px;text-align:center}
.cid-stat small{display:block;font-size:11px;color:var(--cinza);font-weight:700}
.cid-stat b{color:var(--azul);font-variant-numeric:tabular-nums}
.cid-stat.bom b{color:var(--verde)}.cid-stat.ruim b{color:#c0392b}
.ia-badge{margin-left:auto;font-size:12px;font-weight:800;background:#efe1ff;color:#6741d9;border-radius:999px;padding:6px 12px}
.ia-badge.off{background:var(--fundo);color:var(--cinza)}
.cid-corpo{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}
@media(max-width:860px){.cid-corpo{grid-template-columns:1fr}.ia-badge{margin-left:0}}
.mapa{border-radius:22px;overflow:hidden;background:linear-gradient(#cfe8ff 0 16%,#a8dba8 16%);padding:14px;position:relative}
.mapa::before{content:'☁️';position:absolute;top:6px;left:12%;font-size:28px;animation:flutuaC 6s ease-in-out infinite}
.mapa::after{content:'☀️';position:absolute;top:4px;right:6%;font-size:28px}
.mapa-chao{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px;perspective:600px}
.lote{aspect-ratio:1.15;border-radius:18px;border:0;cursor:pointer;position:relative;background:#c9b48a;box-shadow:inset 0 -6px 0 rgba(0,0,0,.12),0 4px 0 #8f7b55;transition:transform .15s;font:inherit}
.lote:hover{transform:translateY(-3px)}
.lote:active{transform:translateY(1px) scale(.98)}
.lote.vazio{background:repeating-linear-gradient(45deg,#d8c79f 0 10px,#cfbd93 10px 20px)}
.lote.sel{outline:3px solid var(--azul);outline-offset:2px}
.lote.prot{box-shadow:inset 0 -6px 0 rgba(0,0,0,.12),0 4px 0 #8f7b55,0 0 0 3px rgba(16,163,100,.8),0 0 18px rgba(16,163,100,.6)}
.lote.dano{filter:grayscale(.6) brightness(.85)}
.lote .mais{display:flex;flex-direction:column;align-items:center;color:#6b5a3a;font-size:26px;font-weight:800;line-height:1}
.lote .mais small{font-size:11px;margin-top:4px}
.pred{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}
.pred .ic{font-size:clamp(34px,7vw,52px);line-height:1;filter:drop-shadow(0 4px 2px rgba(0,0,0,.2))}
.lote.cheio .pred .ic{animation:pulaT 1.4s ease-in-out infinite}
.pred .nv{font-size:11px;font-weight:800;color:#5c4a28;background:rgba(255,255,255,.6);border-radius:999px;padding:1px 7px;margin-top:4px}
.pred .esc{position:absolute;top:6px;right:8px;font-size:18px}
.pred .avaria{position:absolute;top:8px;left:10px;font-size:22px;animation:tremeC .3s infinite}
.pilha{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:#fff;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:800;color:#7a4f00;box-shadow:0 3px 8px rgba(0,0,0,.15);white-space:nowrap;animation:pop .4s;z-index:2}
.fila-wrap{margin-top:14px;background:rgba(255,255,255,.7);border-radius:16px;padding:10px}
.fila{display:flex;gap:4px;min-height:36px;align-items:center;font-size:26px;overflow:hidden}
.fila .cli{animation:entraFila .5s ease both}
@keyframes entraFila{from{transform:translateX(60px);opacity:0}}
.acoes-cid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.acoes-cid .btn{padding:14px 10px;font-size:15px;user-select:none;-webkit-user-select:none;touch-action:manipulation}
.cid-lado{display:flex;flex-direction:column;gap:12px}
.cid-card{background:var(--fundo);border-radius:18px;padding:14px;animation:troca .3s ease}
.cid-card h3{color:var(--azul);font-size:16px}
.cid-card p{font-size:14px;color:var(--cinza);margin:6px 0 12px}
.cid-card.dica{background:#fff9db;border:1.5px dashed #fcc419;animation:pulseBadge 2s infinite}
.cid-tit{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.cid-tit .x{border:0;background:#fff;width:30px;height:30px;border-radius:50%;font-size:18px;cursor:pointer}
.loja-pred{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.loja-pred button{background:#fff;border:1.5px solid var(--linha);border-radius:14px;padding:10px 4px;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;transition:.15s}
.loja-pred button:hover{border-color:var(--verde);transform:translateY(-2px)}
.loja-pred button.caro{opacity:.45}
.loja-pred .ic{font-size:28px}
.loja-pred b{font-size:12.5px;color:var(--azul)}
.loja-pred small{font-size:10.5px;color:var(--cinza);font-weight:700}
.cid-info{font-weight:600}
.cid-botoes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.prot-btn{background:#fff;border:2px solid var(--verde);color:var(--verde);font-size:14px}
.prot-btn.on{background:var(--verde);color:#fff}
.cid-real{font-size:12.5px;color:var(--cinza);margin-top:10px;font-weight:600}
.cid-real a{color:var(--verde);font-weight:800}
.resumo{display:grid;gap:4px;font-size:13px}
.resumo small{color:var(--cinza)}
.lnk{border:0;background:none;color:var(--cinza);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer;justify-self:start}
.ev-ov{position:absolute;inset:0;background:rgba(10,20,40,.55);border-radius:28px;display:grid;place-items:center;z-index:10;padding:14px;backdrop-filter:blur(2px)}
.ev-card{background:#fff;border-radius:22px;padding:22px;max-width:400px;width:100%;text-align:center;border:3px solid #ff8787;animation:sobe .3s ease;box-shadow:0 20px 50px rgba(0,0,0,.3)}
.ev-card.prot{border-color:var(--verde-2)}
.ev-card.tent{border-color:var(--amarelo)}
.ev-emoji{font-size:64px;animation:tremeC .3s 4}
.ev-ia{display:inline-block;font-size:11px;font-weight:800;color:#6741d9;background:#efe1ff;border-radius:999px;padding:3px 10px;margin:4px 0}
.ev-card h3{color:var(--azul);font-size:20px}
.ev-card p{color:var(--cinza);font-size:14.5px;margin:6px 0 12px}
.ev-cmp{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.ev-cmp div{border-radius:14px;padding:10px}
.ev-cmp .ruim{background:#fff3f0}.ev-cmp .bom{background:var(--verde-claro)}
.ev-cmp small{display:block;font-size:11.5px;color:var(--cinza);font-weight:700}
.ev-cmp b{font-size:18px}
.ev-res{font-weight:800!important;color:var(--azul)!important}
.ev-esc{display:grid;gap:8px}
.ev-cta{display:block;margin-top:12px;font-weight:800;color:var(--verde);font-size:14px}
.cid-fx{position:fixed;z-index:220;pointer-events:none;font-weight:800;font-size:18px;color:#7a4f00;text-shadow:0 2px 0 #fff;animation:sobeXP .9s ease forwards;white-space:nowrap}

/* ============ ARCADE ============ */
.arc-intro{text-align:center;padding:10px 0}
.arc-ic{font-size:64px;display:inline-block;animation:pulaT 1.6s ease-in-out infinite}
@keyframes pulaT{50%{translate:0 -10px}}
.arc-intro h3{color:var(--azul);font-size:22px;margin-top:4px}
.arc-intro p{color:var(--cinza);max-width:460px;margin:8px auto 12px}
.arc-tags{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-bottom:14px}
.arc-tags span{background:var(--fundo);border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:700;color:var(--azul)}
.arc-hud{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;font-weight:800;color:var(--azul)}
.arc-hud .pts{font-size:18px;background:#fff4d6;border-radius:999px;padding:4px 12px;color:#7a4f00;font-variant-numeric:tabular-nums}
.esc-hud{font-size:13px;background:#fff3f0;color:#c0392b;border-radius:999px;padding:4px 10px}
.esc-hud.on{background:var(--verde-claro);color:var(--verde);font-size:16px}
.arc-tempo{flex:1;min-width:80px;height:8px;background:var(--linha);border-radius:9px;overflow:hidden}
.arc-tempo i{display:block;height:100%;background:linear-gradient(90deg,var(--coral),var(--amarelo),var(--verde-2))}
.arc-palco{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px rgba(15,42,74,.15)}
.arc-palco.tremer{animation:tremeC .08s linear 4}
.arc-cv{display:block;width:100%;height:clamp(280px,calc(100vh - 380px),440px);touch-action:none;user-select:none;-webkit-user-select:none;cursor:pointer}
.arc-cv.m-memoria{height:clamp(320px,calc(100vh - 380px),460px)}
@media(max-width:600px){.arc-cv{height:min(62vh,500px)}.arc-cv.m-bichinho{height:min(44vh,380px)}}
.arc-banner{position:absolute;left:50%;top:12px;transform:translateX(-50%);background:rgba(15,42,74,.9);color:#fff;font-weight:800;font-size:14px;padding:8px 16px;border-radius:999px;white-space:nowrap;max-width:94%;overflow:hidden;text-overflow:ellipsis;animation:sobe .25s ease;pointer-events:none}
.arc-banner.bom{background:rgba(11,122,75,.95)}
.arc-banner.ruim{background:rgba(201,42,42,.95)}
.arc-banner.alerta{background:rgba(230,119,0,.95)}
.arc-fx{position:absolute;transform:translate(-50%,-50%);font-weight:900;font-size:18px;pointer-events:none;animation:sobeXP .9s ease forwards;text-shadow:0 2px 0 #fff,0 0 8px #fff;white-space:nowrap}
.arc-fx.bom{color:var(--verde)}.arc-fx.ruim{color:#e03131;font-size:30px}
.arc-fim{position:absolute;inset:0;background:rgba(255,255,255,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;animation:sobe .3s ease;overflow:auto}
.arc-fim h3{color:var(--azul);font-size:28px}
.arc-fim .rec{font-weight:800;color:#a26b00}
.arc-fim p{color:var(--cinza);max-width:420px;margin:10px 0}
.arc-placar{display:flex;gap:10px;margin-top:10px}
.arc-placar div{border-radius:14px;padding:8px 14px;min-width:110px}
.arc-placar .bom{background:var(--verde-claro)}.arc-placar .ruim{background:#fff3f0}
.arc-placar b{display:block;font-size:24px}
.arc-placar small{font-size:11.5px;color:var(--cinza);font-weight:700}
.arc-bts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.arc-dica{font-size:12.5px;color:var(--cinza);text-align:center;margin-top:8px}
.pet-ctrl{margin-top:10px}
.pet-med{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}
.pet-med div{display:flex;align-items:center;gap:4px;font-size:16px}
.pet-med i{flex:1;height:9px;background:var(--linha);border-radius:9px;overflow:hidden}
.pet-med b{display:block;height:100%;transition:width .2s}
.pet-bts{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.pet-bts button{border:1.5px solid var(--linha);background:#fff;border-radius:14px;padding:8px 2px;font-size:24px;cursor:pointer;display:flex;flex-direction:column;align-items:center;transition:.15s;touch-action:manipulation}
.pet-bts button:active{transform:scale(.94)}
.pet-bts small{font-size:10.5px;font-weight:700;color:var(--azul)}
.pet-bts .plano{border-color:var(--verde);background:var(--verde-claro)}
.pet-bts .plano.on{background:var(--verde)}.pet-bts .plano.on small{color:#fff}
.modal.prod.modo-jogo .prod-pe{display:none}

/* ============ SOCIAL / RANKING ============ */
.arc-nivel{font-size:13px;background:var(--fundo);border-radius:999px;padding:4px 10px;color:var(--azul)}
.arc-desafio{font-size:13px;background:#fff4d6;color:#a26b00;border-radius:999px;padding:4px 10px}
.arc-desafio-box{background:#fff4d6;color:#7a4f00;font-weight:800;border-radius:14px;padding:10px 14px;margin:0 auto 12px;max-width:420px}
.arc-jog{font-size:12.5px;color:var(--cinza);margin-bottom:12px}
.arc-fim{justify-content:flex-start;padding-top:18px}
.arc-fim .nv-fim{color:var(--cinza);font-weight:700;font-size:12.5px}
.arc-desafio-res{background:#fff4d6;color:#7a4f00;font-weight:800;border-radius:12px;padding:8px 12px;margin-top:8px}
.fim-rank{width:100%;max-width:380px;margin:10px 0}
.fim-rank .carreg{font-size:13px;color:var(--cinza)}
.fim-rank .pos{display:block;color:var(--verde);margin-bottom:6px}
.salvar-nome{background:#fff4d6;border-radius:14px;padding:12px;display:grid;gap:6px;text-align:left}
.salvar-nome div{display:flex;gap:6px}
.salvar-nome input{flex:1;border:1.5px solid #ffd43b;border-radius:10px;padding:9px 12px;font:inherit;min-width:0}
.salvar-nome small{font-size:11.5px;color:var(--cinza)}
.mini-top{list-style:none;display:grid;gap:4px;text-align:left}
.mini-top li{display:grid;grid-template-columns:34px 1fr auto;gap:6px;background:var(--fundo);border-radius:10px;padding:6px 10px;font-size:13.5px}
.mini-top li.eu,.top10 li.eu,.turma li.eu{background:var(--verde-claro);outline:2px solid var(--verde-2)}
.msg-fim{font-size:13px!important;margin:8px 0 0!important}
.arc-bts{margin-top:8px}
.rank-sec{background:linear-gradient(180deg,#fff9db,#f7f9fc)}
.rank-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}
@media(max-width:860px){.rank-grid{grid-template-columns:1fr}}
.rank-card{background:#fff;border-radius:22px;padding:18px;box-shadow:var(--sombra);border:1px solid var(--linha)}
.rank-card p{font-size:14px;color:var(--cinza);margin:4px 0 10px}
.rank-lado{display:grid;gap:18px;align-content:start}
.rank-filtros{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.rank-filtros select{flex:1;min-width:200px}
.seg{display:flex;background:var(--fundo);border-radius:12px;padding:3px}
.seg button{border:0;background:transparent;border-radius:10px;padding:8px 14px;font:inherit;font-weight:700;font-size:13px;color:var(--cinza);cursor:pointer}
.seg button.on{background:#fff;color:var(--azul);box-shadow:0 2px 6px rgba(0,0,0,.08)}
.top10{list-style:none;display:grid;gap:6px}
.top10 li{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:8px;background:var(--fundo);border-radius:14px;padding:10px 14px;animation:troca .3s ease both}
.top10 li.podio{background:linear-gradient(90deg,#fff4d6,#fff)}
.top10 .md{font-size:22px;text-align:center;font-weight:800;color:var(--cinza)}
.top10 .ap small{display:block;font-size:11.5px;color:var(--cinza)}
.top10 .pt{font-size:17px;color:var(--azul);font-variant-numeric:tabular-nums}
.top10 li.vazio{display:block;text-align:center;color:var(--cinza);font-size:14px}
.minha-pos{margin-top:8px;background:var(--verde-claro);color:var(--verde);font-weight:800;border-radius:12px;padding:10px 14px;font-size:14px}
.rank-off{font-size:12px;color:var(--cinza);margin-top:8px}
.meta-card{background:linear-gradient(135deg,#0b7a4b,#1d4f8a);color:#fff;border:0}
.meta-card p{color:rgba(255,255,255,.85)}
.meta-bar{height:14px;background:rgba(255,255,255,.2);border-radius:9px;overflow:hidden;margin:6px 0}
.meta-bar i{display:block;height:100%;background:linear-gradient(90deg,#ffd43b,#fff);transition:width 1s}
.meta-card small{color:rgba(255,255,255,.9);font-weight:700}
.jog-top{display:flex;justify-content:space-between;align-items:center}
.turma{list-style:none;display:grid;gap:4px;margin:8px 0}
.turma li{display:flex;justify-content:space-between;background:var(--fundo);border-radius:10px;padding:7px 12px;font-size:14px}
.share-modal{max-width:720px}
.share-grid{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}
@media(max-width:600px){.share-grid{grid-template-columns:1fr}.share-img{max-width:200px;margin:auto}}
.share-img{width:100%;border-radius:16px;box-shadow:0 10px 24px rgba(0,0,0,.2)}
.share-acoes{display:grid;gap:8px}
.redes{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.redes a{display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--fundo);border-radius:12px;padding:10px 4px;text-decoration:none;font-size:22px;transition:.15s}
.redes a:hover{transform:translateY(-2px);background:var(--verde-claro)}
.redes small{font-size:11px;font-weight:700;color:var(--azul)}

/* ============ INDIQUE E GANHE ============ */
.acoes-cid{grid-template-columns:1fr 1fr 1fr}
@media(max-width:520px){.acoes-cid{grid-template-columns:1fr 1fr}.acoes-cid .btn-indicar{grid-column:1/-1}}
.btn-indicar{background:linear-gradient(135deg,#7048e8,#ae3ec9);color:#fff;font-size:14px!important}
.btn-indicar.tem{background:linear-gradient(135deg,#f08c00,#e8590c);animation:pulseBadge 1.1s infinite}
.cid-card.indique{background:linear-gradient(135deg,#f3f0ff,#fff0f6);border:1.5px solid #d0bfff}
.cid-card.indique b{color:#5f3dc4}
.cid-card.indique p b{color:#7a4f00}
.ind-stats{display:flex;gap:6px;flex-wrap:wrap;margin:-4px 0 10px}
.ind-stats span{background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;color:var(--azul)}
.btn-resgatar{background:linear-gradient(135deg,#f08c00,#e8590c);color:#fff;margin-bottom:8px;animation:pulseBadge 1.2s infinite}
.cid-card.indique small{display:block;font-size:11.5px;color:var(--cinza);margin-top:8px}

/* ============ SOM ============ */
.som-ctl{display:inline-flex;gap:4px;margin-left:auto}
.som-b,.som-top{border:1px solid var(--linha);background:#fff;border-radius:999px;width:34px;height:34px;display:grid;place-items:center;font-size:16px;cursor:pointer;transition:.15s;padding:0;line-height:1}
.som-b:hover,.som-top:hover{transform:scale(1.08)}
.som-b.off,.som-top.off{opacity:.55;filter:grayscale(1)}
.som-b.off:not(:first-child){position:relative}
.som-b.off:not(:first-child)::after{content:"";position:absolute;width:22px;height:2px;background:#c0392b;transform:rotate(-45deg);border-radius:2px}
.som-top{width:38px;height:38px;flex:none}
.som-intro{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;color:var(--cinza);font-size:12.5px}
.som-intro .som-ctl{margin-left:0}
.cid-hud .som-ctl{margin-left:0}

.ci-img{height:1.05em;width:auto;display:block;pointer-events:none;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 3px 2px rgba(0,0,0,.15))}

/* ============ AVISO DE PARCERIA ============ */
.aviso-parceiro{background:#eef4fb;border-bottom:1px solid #d6e4f5;color:#23415f;font-size:13px;line-height:1.45}
.aviso-parceiro .wrap{display:flex;gap:8px;align-items:flex-start;padding-top:8px;padding-bottom:8px}
.aviso-parceiro p{margin:0}
.lnk-p{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--azul-2);text-decoration:underline;cursor:pointer}
.nota-parceiro{font-size:12.5px;color:#23415f;background:#eef4fb;border-radius:12px;padding:9px 11px;margin-top:10px;line-height:1.4}
.sobre-lista{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.sobre-lista li{display:flex;gap:12px;align-items:flex-start;background:#f7f9fc;border:1px solid var(--linha);border-radius:14px;padding:11px 13px;font-size:14px;line-height:1.45;color:#3b4555}
.sobre-lista li>span{font-size:22px;line-height:1}
.sobre-lista div>b:first-child{display:block;color:var(--azul);font-size:14.5px}
.modo-app .aviso-parceiro{font-size:12px}

/* rostinho da Akira no lugar do emoji 🐶 */
img.emj-akira{height:1.08em;width:auto;display:inline-block;vertical-align:-.16em;pointer-events:none;user-select:none;-webkit-user-drag:none}
@media(max-width:700px){.nav-dir>.btn-prim.btn-sm{display:none}.lt-2{font-size:23px}.logo-mark{width:38px;height:38px}}
.card-pet .ic{background:#f1f3f5!important;box-shadow:inset 0 0 0 2px #1b1e24}

/* aviso de cookies (assets/ads.js) */
#pc-cookies{position:fixed;left:12px;right:12px;bottom:12px;z-index:80;max-width:560px;margin:auto;background:#fff;border:1px solid var(--linha);border-radius:16px;box-shadow:0 14px 34px rgba(15,42,74,.2);padding:12px 14px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:14px;padding-bottom:calc(12px + env(safe-area-inset-bottom))}
#pc-cookies p{flex:1 1 220px;color:var(--tinta)}
#pc-cookies a{color:var(--verde);font-weight:600}
#pc-cookies div{display:flex;gap:8px;margin-left:auto}

/* coberturas oficiais (Banese Corretora) na página do produto */
.oficial{margin-top:16px;padding:14px 16px;border-radius:14px;background:var(--verde-claro);border-left:4px solid var(--verde)}
.oficial h4{color:var(--verde);margin-bottom:6px}
.oficial p{font-size:14px;margin:4px 0 8px}
.oficial b{display:block;font-size:13.5px;color:var(--azul);margin-top:8px}
.oficial ul{padding-left:20px;font-size:14px}
.oficial small{display:block;margin-top:8px;font-size:12px;color:var(--cinza)}
