/* Mapa dos Sinais do Seu Corpo — visual mobile first, letras grandes (público 55+) */
:root{--verde:#00AA45;--verde-esc:#06301A;--verde-claro:#E8F6EE;--limao:#7DFF3A;--tinta:#14221a;--tinta2:#4b5a51;--borda:#dfe7e2;--fundo:#f6f8f6;--branco:#fff;--alerta:#b07a00;--raio:16px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;line-height:1.5;color:var(--tinta);background:var(--fundo)}
.tela{max-width:560px;margin:0 auto;min-height:100vh;min-height:100dvh;padding:20px 18px 120px;display:flex;flex-direction:column}
.topo{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding-top:4px}
.marca{font-weight:700;color:var(--verde-esc);font-size:17px;display:flex;align-items:center;gap:8px}
.marca img{height:40px}
.passo{font-size:14px;color:var(--tinta2)}
.progresso{height:8px;background:#e3ebe6;border-radius:99px;overflow:hidden;margin-bottom:24px}
.progresso>i{display:block;height:100%;background:linear-gradient(90deg,var(--verde),#35c46f);border-radius:99px;transition:width .6s ease}
h1{font-size:26px;line-height:1.2;margin:8px 0 12px;letter-spacing:-.01em}
h2{font-size:22px;line-height:1.3;margin:4px 0 14px}
p.lead{font-size:17px;color:var(--tinta2);margin:0 0 20px}
.cartao{background:var(--branco);border:1px solid var(--borda);border-radius:var(--raio);padding:14px 16px}
.btn{display:block;width:100%;border:0;border-radius:12px;padding:15px 18px;font-size:18px;font-weight:700;cursor:pointer;text-align:center;text-decoration:none;transition:transform .08s ease,background .2s}
.btn:active{transform:scale(.98)}
.btn-pri{background:var(--verde);color:#fff;box-shadow:0 6px 18px rgba(0,170,69,.28)}
.btn-pri:disabled{background:#b9c9bf;box-shadow:none;cursor:not-allowed}
.btn-sec{background:#fff;color:var(--verde-esc);border:2px solid var(--borda)}
.rodape-fixo{position:fixed;left:0;right:0;bottom:0;padding:14px 18px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(246,248,246,0),var(--fundo) 30%)}
.rodape-fixo .dentro{max-width:560px;margin:0 auto}
/* alternativas */
.opcoes{display:flex;flex-direction:column;gap:10px}
.op{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:#fff;border:1.5px solid var(--borda);border-radius:12px;padding:13px 14px;font-size:17px;color:var(--tinta);cursor:pointer;transition:border-color .15s,background .15s}
.op .bola{flex:0 0 22px;height:22px;border-radius:50%;border:2px solid #b8c7be;display:flex;align-items:center;justify-content:center}
.op[aria-checked="true"]{border-color:var(--verde);background:var(--verde-claro)}
.op[aria-checked="true"] .bola{border-color:var(--verde);background:var(--verde)}
.op[aria-checked="true"] .bola::after{content:"";width:8px;height:8px;border-radius:50%;background:#fff}
.op small{display:block;font-size:14px;line-height:1.35;color:var(--tinta2);margin-top:2px}
.bloco-nome{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--verde);margin:0 0 4px}
.op .caixinha{flex:0 0 22px;height:22px;border-radius:6px;border:2px solid #b8c7be;display:flex;align-items:center;justify-content:center}
.op[aria-checked="true"] .caixinha{border-color:var(--verde);background:var(--verde)}
.op[aria-checked="true"] .caixinha::after{content:"✓";color:#fff;font-size:14px;font-weight:800}
.cartao.alerta{border-color:#e8c46a;background:#fff8e6;margin-top:14px}
.titulo-entrada{font-size:25px;line-height:1.22;margin:6px 0 10px}
.chamada{font-weight:700;color:var(--verde-esc);margin:0 0 16px}
.idade{background:rgba(255,255,255,.1);border-radius:14px;padding:12px 14px;margin:6px 0 12px}
.idade span{display:block;font-size:15px;color:#d6efe0}.idade b{display:block;font-size:40px;line-height:1.1;color:var(--limao)}.idade small{display:block;font-size:13px;color:#cfe8d9;margin-top:4px;line-height:1.35}
/* mensagens de apoio na análise de cada resposta */
.analise .apoio{margin-top:14px!important;font-size:17px!important;color:var(--limao);font-weight:600;line-height:1.4}
.analise .estat{margin-top:10px!important;font-size:13px!important;color:#cfe8d9}
.selo-claro{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--verde-claro);color:var(--verde);padding:4px 10px;border-radius:99px;margin-bottom:8px}
/* folhas desenhadas no fundo, no estilo do símbolo da marca (bem suaves, não atrapalham a leitura) */
body.com-folhas::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.09;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%2300AA45' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M50 4C82 18 96 56 50 96C4 56 18 18 50 4Z'/%3E%3Cpath d='M50 12V90M50 34L33 22M50 34L67 22M50 52L28 38M50 52L72 38M50 70L32 58M50 70L68 58'/%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%2300AA45' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M50 4C82 18 96 56 50 96C4 56 18 18 50 4Z'/%3E%3Cpath d='M50 12V90M50 34L33 22M50 34L67 22M50 52L28 38M50 52L72 38M50 70L32 58M50 70L68 58'/%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 4C82 18 96 56 50 96C4 56 18 18 50 4Z' fill='%2300AA45'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-size:170px,230px,90px;background-position:right -50px top 70px,left -80px bottom 120px,right 18px bottom 150px}
body.com-folhas .tela{position:relative;z-index:1}
.rodape-fixo{z-index:10}.demo{z-index:11!important}
@media (min-width:700px){body.com-folhas::before{background-size:260px,340px,130px;background-position:right 6% top 80px,left 4% bottom 80px,right 12% bottom 140px}}
/* perguntas de número */
.unidade{font-size:15px;color:var(--tinta2);margin:-6px 0 12px}
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.num{background:#fff;border:1.5px solid var(--borda);border-radius:12px;padding:14px 0;font-size:24px;color:var(--tinta);cursor:pointer;transition:border-color .15s,background .15s}
.num[aria-checked="true"]{border-color:var(--verde);background:var(--verde);color:#fff}
/* formulário */
label.campo{display:block;margin-bottom:14px;font-weight:600;font-size:16px}
label.campo input{display:block;width:100%;margin-top:5px;font-size:17px;padding:12px 14px;border:1.5px solid var(--borda);border-radius:12px;background:#fff}
label.campo input:focus{outline:none;border-color:var(--verde)}
.aceite{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--tinta2);margin:12px 0;cursor:pointer}
.aceite input{flex:0 0 22px;width:22px;height:22px;margin-top:2px;accent-color:var(--verde)}
.aceite b{color:var(--tinta)}
.erro{color:#b02a2a;font-size:14px;margin-top:-8px;margin-bottom:12px;display:none}
.pequeno{font-size:14px;color:var(--tinta2)}
/* análise após cada resposta */
.analise{position:fixed;inset:0;background:rgba(6,48,26,.92);color:#fff;display:none;align-items:center;justify-content:center;padding:24px;z-index:20}
.analise.on{display:flex;animation:aparece .25s ease}
.analise .caixa{max-width:480px;text-align:center}
.analise .giro{width:54px;height:54px;border-radius:50%;border:5px solid rgba(255,255,255,.25);border-top-color:var(--limao);margin:0 auto 18px;animation:gira .9s linear infinite}
.analise p{font-size:19px;margin:0}
@keyframes gira{to{transform:rotate(360deg)}}@keyframes aparece{from{opacity:0}to{opacity:1}}
.entra{animation:entra .35s ease}@keyframes entra{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
/* gráficos */
.grafico{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:14px 16px;margin:8px 0 18px}
.grafico .tit{font-weight:700;margin-bottom:4px}.grafico .sub{font-size:15px;color:var(--tinta2);margin-bottom:12px}
.legenda{display:flex;gap:16px;font-size:15px;color:var(--tinta2);margin-top:8px}.legenda i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}
/* entrada */
.hero{background:linear-gradient(160deg,var(--verde-esc),#0d5a30);color:#fff;border-radius:18px;padding:20px 18px;margin-bottom:16px}
.hero h1{color:#fff}.hero p{color:#d6efe0;font-size:16.5px;margin:0}
.lista-check{list-style:none;padding:0;margin:0 0 20px}.lista-check li{padding:9px 0 9px 34px;position:relative;font-size:16.5px;border-bottom:1px solid var(--borda)}
.lista-check li::before{content:"✓";position:absolute;left:4px;top:9px;width:24px;height:24px;border-radius:50%;background:var(--verde-claro);color:var(--verde);font-weight:800;text-align:center;line-height:24px;font-size:15px}
.aviso{font-size:14px;color:var(--tinta2);background:#fff;border:1px solid var(--borda);border-radius:12px;padding:12px 14px;margin-top:16px}
.selo{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:rgba(125,255,58,.18);color:var(--limao);padding:4px 10px;border-radius:99px;margin-bottom:12px}
/* VSL estilo YouTube */
body.aula{background:#0f0f0f;color:#f1f1f1}
.aula .tela{max-width:960px;padding:0 0 120px}
.yt-top{display:flex;align-items:center;gap:10px;padding:12px 16px;font-weight:700}
.yt-top .ponto{width:10px;height:10px;border-radius:50%;background:#ff3b30}
.player{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}
.player .capa{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:radial-gradient(circle at 50% 40%,#123b25,#000 70%);cursor:pointer}
.player .play{width:84px;height:84px;border-radius:50%;background:rgba(255,0,0,.92);display:flex;align-items:center;justify-content:center}
.player .play::after{content:"";border-left:28px solid #fff;border-top:17px solid transparent;border-bottom:17px solid transparent;margin-left:6px}
.player .reserva{font-size:15px;color:#bbb}
.player .barra{position:absolute;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.2)}.player .barra i{display:block;height:100%;width:0;background:#ff0000}
.player .tempo{position:absolute;right:10px;bottom:12px;font-size:14px;background:rgba(0,0,0,.6);padding:2px 8px;border-radius:4px}
.badge-aula{position:absolute;left:12px;top:12px;background:rgba(0,0,0,.6);font-size:13px;font-weight:700;letter-spacing:.05em;padding:4px 10px;border-radius:4px}
.yt-info{padding:14px 16px}
.yt-info h1{color:#f1f1f1;font-size:19px;margin:0 0 10px}
.canal{display:flex;align-items:center;gap:12px;margin:10px 0}.canal .av{width:42px;height:42px;border-radius:50%;background:var(--verde);display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff}
.canal b{display:block}.canal span{font-size:14px;color:#aaa}
.descricao{background:#272727;border-radius:12px;padding:12px 14px;font-size:14.5px;color:#ddd;margin:12px 0}
.comentarios{border-top:1px solid #333;margin-top:12px;padding-top:14px}
.comentarios .vazio{background:#1d1d1d;border:1px dashed #444;border-radius:12px;padding:16px;font-size:15px;color:#aaa;text-align:center}
.cta-loja{display:none}.cta-loja.on{display:block;animation:entra .4s ease}
.aula .rodape-fixo{background:linear-gradient(180deg,rgba(15,15,15,0),#0f0f0f 30%)}
.aula .rodape-fixo .dentro{max-width:960px;padding:0 16px}
.espera{font-size:15px;color:#aaa;text-align:center;margin-top:6px}
.demo{position:fixed;left:8px;bottom:96px;opacity:.85;z-index:30;font-size:12px;background:#fff3cd;color:#6b4e00;border:1px solid #e8d08a;border-radius:8px;padding:4px 8px}
@media (min-width:700px){.aula .tela{padding-top:16px}.player{border-radius:12px}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* resultado: barra tipo termômetro e kits (11/11) */
.termo{margin:14px 0}.termo-tit{display:flex;justify-content:space-between;font-size:15.5px;margin-bottom:6px}
.termo-barra{position:relative;height:14px;border-radius:99px;background:linear-gradient(90deg,#7B3FA0 0%,#D93A2B 35%,#F08A1C 55%,#F5C33B 72%,#00AA45 88%)}
.termo-pino{position:absolute;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:#fff;border:5px solid;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.termo-legenda{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12.5px;color:#4b5a51;margin-top:8px}.termo-legenda i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}
.kits-tit{display:block;font-size:19px;margin:6px 0 10px}.kits-sub{font-weight:700;margin:16px 0 8px;font-size:15px}
.kit-destaque{display:block;position:relative;background:#fff;border:3px solid #00AA45;border-radius:18px;overflow:hidden;color:inherit;text-decoration:none;box-shadow:0 6px 20px rgba(0,170,69,.18)}
.kit-destaque img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
.kit-selo{position:absolute;top:12px;left:12px;background:#00AA45;color:#fff;font-weight:700;font-size:13px;padding:6px 12px;border-radius:99px}
.kit-info{padding:12px 16px 16px}.kit-info b{font-size:18px;display:block}.kit-info small{display:block;color:#4b5a51;font-size:13.5px;margin-top:2px}.kit-info p{margin:8px 0 0;font-size:15px}.kit-porque{color:#2d5c3d}
.kit-btn{display:block;text-align:center;margin-top:12px;background:#00AA45;color:#fff;font-weight:700;padding:12px;border-radius:12px}
.kits-linha{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}
.kit-mini{flex:0 0 42%;scroll-snap-align:start;background:#fff;border:1px solid #dfe7e2;border-radius:14px;overflow:hidden;color:inherit;text-decoration:none;font-size:13.5px}
.kit-mini img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}.kit-mini b{display:block;padding:8px 10px;line-height:1.25}

/* jogo: placar no topo, retorno rápido, data de nascimento (11/11) */
.placar{background:#fff;border:1px solid #dfe7e2;border-radius:14px;padding:10px 14px 14px;margin:10px 0 14px}
.placar-tit{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:#4b5a51;margin-bottom:8px}.placar-tit b{font-size:18px}
.placar .termo-barra{height:12px}
.placar-chip{position:absolute;top:-34px;transform:translateX(-50%) scale(.6);opacity:0;font-weight:800;font-size:16px;padding:3px 10px;border-radius:99px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.18);white-space:nowrap;transition:all .25s ease;pointer-events:none}
.placar-chip.on{opacity:1;transform:translateX(-50%) scale(1)}.placar-chip.mais{color:#00873a}.placar-chip.menos{color:#c0392b}
.retorno{position:fixed;left:12px;right:12px;bottom:92px;max-width:520px;margin:0 auto;background:#0f3d24;color:#fff;border-radius:16px;padding:14px 16px;display:flex;gap:12px;align-items:center;z-index:20;opacity:0;transform:translateY(20px);pointer-events:none;transition:all .2s ease}
.retorno.on{opacity:1;transform:none;pointer-events:auto}
.retorno-emoji{font-size:34px;line-height:1}.retorno p{margin:0;font-size:16px;line-height:1.35}.retorno-apoio{margin-top:6px!important;color:var(--limao);font-weight:600}.retorno-estat{margin-top:6px!important;font-size:12.5px!important;color:#cfe8d9}
.campo-data{width:100%;font-size:26px;letter-spacing:2px;text-align:center;padding:14px;border:2px solid #cfdcd4;border-radius:14px;margin-top:8px}.campo-data:focus{outline:none;border-color:#00AA45}
.idade-calc{text-align:center;font-size:18px;margin-top:12px;color:#7b8a81;min-height:1.4em}.idade-calc.ok{color:#00873a;font-weight:700}
.termo-vazio .termo-barra{background:repeating-linear-gradient(90deg,#e6ece8 0 10px,#f3f6f4 10px 20px)}.termo-vazio b{color:#9aa8a0;font-weight:500}
#corpo.entra{animation:aparece .25s ease}
.placar-tit{position:relative}.placar-tit .placar-chip{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.6)}.placar-tit .placar-chip.on{transform:translate(-50%,-50%) scale(1)}

.kit-para{display:block;color:#00873a;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.3px;line-height:1.25}
.kit-mini .kit-para{padding:8px 10px 0}.kit-mini b{padding-top:3px!important;font-weight:500;color:#4b5a51;font-size:13px}
.kit-info .kit-para{font-size:14px;margin-bottom:2px}

/* listas com ícones (11/11) */
.sinal-grupo{margin-top:14px}.sinal-tit{margin:0 0 6px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.4px}
.sinais{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:8px}
.sinal{display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.3}
.sinal-ic{flex:0 0 36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center}
.retorno-dica{margin-top:8px!important;font-size:12.5px!important;color:#9fc4ad;text-align:right}
.btn-zap{background:#1fa855}.btn-zap::before{content:"";display:inline-block;width:20px;height:20px;margin-right:8px;vertical-align:-4px;background:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27white%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M7.9 20A9 9 0 1 0 4 16.1L2 22Z%27/%3E%3C/svg%3E") center/contain no-repeat}
.kit-benef{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.kit-benef li{display:flex;gap:10px;align-items:flex-start;font-size:16.5px;font-weight:700;line-height:1.3;color:#14221a}
.kit-benef li span{flex:0 0 26px;height:26px;border-radius:50%;background:#00AA45;color:#fff;display:flex;align-items:center;justify-content:center}.kit-benef li svg{width:16px;height:16px}
.dica-email{font-size:14px;color:#9a5b00;margin:-4px 0 8px}.dica-email a{color:#00873a;font-weight:700}
.idade-campo{color:#00873a;font-weight:700;font-size:15px;margin:-4px 0 8px;min-height:0}
[hidden]{display:none!important}
