/* Acabamento do aplicativo. Paleta e conteúdo originais preservados. */
:root{--sombra:0 4px 18px rgba(71,35,104,.045);--linha:#eee9f3}
body{padding-top:44px}
button,a,input,select,textarea,summary{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7B2FBE!important;outline-offset:3px}
[hidden]{display:none!important}
.app{max-width:560px}
.card{border:1px solid var(--linha)}
.topo-app{padding-bottom:18px}
.nome{font-size:21px}
.titulete{font-size:15px;color:var(--tinta);letter-spacing:0}
.demo-panel{position:fixed;top:0;left:0;right:0;z-index:60;background:#faf8fd;border-bottom:1px solid var(--linha);font-size:12px;color:var(--tinta-2)}
.demo-panel summary{padding:10px 18px;cursor:pointer;text-align:center;font-weight:700;min-height:40px}
.demo-panel .demo-sel{position:static;transform:none;display:flex;flex-wrap:wrap;justify-content:center;max-width:none;background:transparent;box-shadow:none;border-radius:0;padding:6px 14px 12px}
.demo-panel .demo-sel button{color:var(--roxo-mais);background:var(--lilas);min-height:40px;padding:8px 12px}
.demo-panel .demo-sel button.on{color:#fff}
.demo-panel .demo-sel span{display:none}
.nav-inf{max-width:560px;padding-bottom:max(10px,env(safe-area-inset-bottom));box-shadow:0 -4px 24px #3d175b08}
.aba{min-height:54px;font-size:11px}
.nav-marca{display:none}
.home-resumo{display:grid;grid-template-columns:1fr;gap:12px;margin:0 16px 18px}
.home-resumo .semana,.home-resumo .destaque{margin:0}
.home-resumo .semana{padding:18px;display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:left;column-gap:18px}
.home-resumo .sem-tri{grid-column:1/-1;justify-self:start}
.home-resumo .sem-n{margin:8px 0;grid-row:2/4}
.home-resumo .sem-n b{font-size:38px}
.home-resumo .sem-n span{font-size:12px}
.home-resumo .sem-bebe{margin:8px 0;font-size:13px}
.home-resumo .sem-barra{margin:0;width:100%}
.home-resumo .sem-falta{grid-column:2;font-size:11px;margin-top:6px}
.home-resumo .destaque{padding:18px 20px;background:linear-gradient(120deg,#7129b4,#9443bf);border-radius:20px;box-shadow:0 6px 18px #7b2fbe18}
.home-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 16px 14px}
.home-tools .mapa-atalho,.home-tools .ferramenta-abre{width:100%;margin:0;padding:14px;gap:10px;border:1px solid var(--linha);border-radius:18px;background:#fff;align-items:center}
.home-tools small,.home-tools .ma-seta,.home-tools .fa-seta{display:none}
.home-tools b,.home-tools .fa-tx b{font-size:12.5px;line-height:1.4}
.home-tools .ma-ico{width:26px;height:26px;flex-shrink:0}
.home-tools .ma-ico svg{width:18px}
.dica{margin-top:20px}
.meal-list{display:grid;gap:12px;margin:0 16px}
.meal-list>.ref{margin:0;align-self:start}
.meal-list .ref-cab{padding-top:18px;padding-bottom:18px}
.meal-list .chip{border-radius:10px;padding:8px 10px;background:#f5f1fa;color:#514162}
.meal-list .op-p{background:#fbf8fe}
.meal-list .op-p .chip{box-shadow:none;background:#fff}
.trocas-toggle{display:block;background:#fff;border:1px solid #ded0ed;border-radius:12px;color:var(--roxo-mais);font:inherit;font-size:13px;font-weight:800;padding:11px 16px;width:100%;cursor:pointer;margin:10px 0}
.trocas-toggle:hover{background:var(--lilas)}
.kc-form,.kc-result,.ft-bloco{padding:24px}
#v-kcal .kc-aviso,#v-ficha .ft-tabs{margin-left:16px;margin-right:16px}
.kc-result{border-color:#d7b8eb}
.kc-result .kc-num b{font-variant-numeric:tabular-nums}
.ft-row{flex-wrap:wrap}.ft-row .ft-nome{min-width:140px}
.ft-tab[aria-pressed=true]{border-color:var(--roxo)}
.modal{overscroll-behavior:contain;z-index:80}
.skip-link{position:fixed;top:-100px;left:20px;background:#fff;padding:12px;z-index:100}
.skip-link:focus{top:44px}
.rodape-marca{text-align:center;font-size:11px;color:var(--tinta-2);padding:24px 16px}
.rodape-marca a{color:inherit;text-underline-offset:3px}
@media(min-width:768px){
 body{padding-bottom:24px}
 .app{max-width:1200px;padding:20px 32px 24px 244px}
 .nav-inf{position:fixed;top:64px;bottom:24px;left:max(20px,calc((100vw - 1200px)/2 + 20px));right:auto;width:202px;max-width:none;margin:0;flex-direction:column;justify-content:flex-start;gap:8px;padding:20px 12px;border:1px solid var(--linha);border-radius:24px;background:#fff;box-shadow:var(--sombra)}
 .nav-marca{display:flex;align-items:center;gap:10px;padding:12px 10px 30px;font-weight:900;color:var(--roxo-mais);font-size:19px}
 .nav-marca img{width:32px;height:32px}
 .aba{flex:0 0 auto;flex-direction:row;text-align:left;justify-content:flex-start;padding:14px;gap:12px;font-size:13px;border-radius:12px}
 .aba:hover{background:#faf7fd}
 .aba.on{background:var(--lilas)}
 .home-resumo{grid-template-columns:1fr 1fr}
 .home-resumo .semana{display:block;text-align:center;padding:18px}
 .home-resumo .sem-n{margin:4px 0}.home-resumo .sem-bebe{justify-content:center}
 .home-resumo .sem-barra{margin:10px 0}
 .home-resumo .destaque{flex-direction:column;justify-content:center;text-align:center;gap:10px}
 .home-resumo .macros{justify-content:center}
 .meal-list{grid-template-columns:1fr}
 .meal-list .ref-nome{font-size:14px}.meal-list .ref-ic{width:34px;height:34px}
 .meal-list .marcar{width:40px;height:40px;margin-right:8px}
 #v-aulas,#v-ficha,#v-kcal,#v-plano,#v-perfil,#v-evolucao,#v-comunidade{max-width:850px;margin:auto}
 .instalar{max-width:none}
 .au-trilha{max-width:none}
}
@media(min-width:1024px){.meal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.home-resumo .destaque{flex-direction:row;text-align:left;gap:20px}.home-resumo .macros{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
