/* Telas de entrada comuns da fábrica (Entrar, Criar conta, Nova senha). Origem: Sempre Certo, app/estilo.css, commit db996d3 (16/10/2026).
   Peça comum: o produto copia este arquivo sem alterar; cor, destaque e fonte entram pelas variáveis abaixo, no :root ou no elemento da raiz. */
.telas-entrada {
  --entrada-cor: var(--marinho, #23394e);
  --entrada-destaque: var(--pessego, #f0a96d);
  --entrada-aviso-fundo: #e3ebf3;
  --entrada-aviso-texto: #182a3a;
  --entrada-fonte-titulo: system-ui, sans-serif;
  display: flex; flex-direction: column; min-height: 100%; box-sizing: border-box;
  font-family: system-ui, sans-serif;
}
.telas-entrada *, .telas-entrada *::before, .telas-entrada *::after { box-sizing: border-box; }
.telas-entrada .entrada-marca img { width: 36px; height: 36px; flex-shrink: 0; }
.telas-entrada .entrada-conta { display: flex; flex-direction: column; flex-grow: 1; min-height: 0; }
.telas-entrada .e-codigo-linha { display: flex; gap: 8px; }
.telas-entrada .entrada-slot-rodape:empty { display: none; }
.telas-entrada .e-entrar-email { margin-top: 4px; }
.telas-entrada .e-regra { font-size: 15px; line-height: 1.4; color: #59625c; margin-top: 6px; }
.telas-entrada .pag-rolagem { padding: 20px 20px 24px; gap: 16px; }
.telas-entrada .pag-titulo { margin: 0; font-size: 26px; font-weight: 700; }
.telas-entrada .pag-preco { background: var(--entrada-cor); color: #fff; border-radius: 16px; padding: 16px; display: flex; flex-direction: column; gap: 6px; }
.telas-entrada .pag-preco div { font-size: 15px; color: #dce4ec; }
.telas-entrada .pag-preco strong { font-family: var(--entrada-fonte-titulo); font-size: 30px; font-weight: 700; }
.telas-entrada .p-nota { background: #fffefb; border: 1px solid #dcd6cb; border-radius: 14px; padding: 14px; font-size: 16px; line-height: 1.45; }
.telas-entrada .pag-rodape { padding: 12px 20px 20px; border-top: 1px solid #dcd6cb; flex-shrink: 0; }
.telas-entrada .e-aviso { background: var(--entrada-aviso-fundo); color: var(--entrada-aviso-texto); border-radius: 10px; padding: 10px 12px; font-size: 15px; text-align: center; }
.telas-entrada .e-titulo-conta { padding: 14px 0 4px; }
.telas-entrada { background: #fffefb; color: #1a221f; }
.telas-entrada [hidden] { display: none !important; }
.telas-entrada .entrada-modo { display: contents; }
.telas-entrada .entrada-rolagem { flex-grow: 1; min-height: 0; overflow-y: auto; padding: 28px 24px 28px; display: flex; flex-direction: column; gap: 18px; }
.telas-entrada .conta-rolagem { padding: 8px 24px 28px; }
.telas-entrada .entrada-marca { display: flex; align-items: center; gap: 10px; }
.telas-entrada .entrada-marca svg { width: 36px; height: 36px; flex-shrink: 0; }
.telas-entrada .entrada-marca span { font-family: var(--entrada-fonte-titulo); font-size: 24px; font-weight: 700; color: var(--entrada-cor); letter-spacing: -0.01em; }
.telas-entrada .conta-topo { padding: 24px 24px 4px; display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.telas-entrada .conta-voltar { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; color: #1a221f; margin-left: -12px; background: transparent; border: 0; cursor: pointer; padding: 0; }
.telas-entrada .e-titulo { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; padding: 18px 0 4px; }
.telas-entrada .e-titulo h1 { margin: 0; font-size: 31px; font-weight: 700; line-height: 1.1; }
.telas-entrada .e-titulo div { font-size: 17px; color: #59625c; }
.telas-entrada .e-botao { display: flex; align-items: center; justify-content: center; height: 56px; border-radius: 12px; border: 1.5px solid #dcd6cb; background: #fff; color: #1a221f; font-family: inherit; font-size: 17px; font-weight: 600; cursor: pointer; width: 100%; padding: 0; }
.telas-entrada .e-social { flex-shrink: 0; gap: 12px; border-color: #dadce0; background: #fff; color: #1f1f1f; }
.telas-entrada .e-logo { flex-shrink: 0; }
.telas-entrada .e-divisor { display: flex; align-items: center; gap: 12px; color: #59625c; font-size: 16px; }
.telas-entrada .e-divisor span { flex-grow: 1; height: 1px; background: #dcd6cb; }
.telas-entrada .e-rotulo { display: flex; flex-direction: column; gap: 8px; font-size: 17px; font-weight: 600; color: #1a221f; }
.telas-entrada .e-rotulo-texto { font-size: 17px; font-weight: 600; color: #1a221f; }
.telas-entrada .e-grupo { display: flex; flex-direction: column; gap: 8px; }
.telas-entrada .e-linha { display: flex; align-items: center; justify-content: space-between; }
.telas-entrada .e-comece { text-align: center; font-size: 16px; color: #59625c; }
.telas-entrada .e-comece a { color: var(--entrada-cor); font-weight: 700; }
.telas-entrada .e-esqueceu-linha { display: flex; justify-content: center; }
.telas-entrada .e-esqueceu { font-size: 15px; font-weight: 600; color: #59625c; text-decoration: underline; text-underline-offset: 3px; min-height: 48px; min-width: 48px; padding: 0 6px; display: flex; align-items: center; justify-content: center; }
.telas-entrada .e-campo { height: 56px; min-height: 0; border-radius: 12px; border: 1.5px solid #dcd6cb; background: #fff; padding: 0 16px; font-family: inherit; font-size: 18px; color: #1a221f; width: 100%; box-sizing: border-box; display: block; }
.telas-entrada .e-campo-olho { padding-right: 56px; }
.telas-entrada .e-relativo { position: relative; }
.telas-entrada .e-olho { position: absolute; right: 6px; top: 4px; width: 48px; height: 48px; border: 0; background: transparent; color: #59625c; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.telas-entrada .e-entrar { display: flex; align-items: center; justify-content: center; height: 58px; border-radius: 12px; border: 0; background: var(--entrada-destaque); color: var(--entrada-cor); font-family: inherit; font-size: 19px; font-weight: 700; cursor: pointer; width: 100%; flex-shrink: 0; padding: 0; }
.telas-entrada .e-entrar:disabled { background: #eceae3; color: #59625c; cursor: default; }
.telas-entrada .e-rodape-texto { text-align: center; font-size: 16px; color: #59625c; }
.telas-entrada .e-rodape-texto a { color: var(--entrada-cor); font-weight: 700; }
.telas-entrada .e-link { align-self: center; min-height: 48px; background: transparent; border: 0; font-family: inherit; font-size: 16px; font-weight: 700; color: var(--entrada-cor); cursor: pointer; text-decoration: underline; padding: 0; }
.telas-entrada .e-link-esquerda { align-self: flex-start; font-size: 17px; }
.telas-entrada .e-campo-desconto { text-transform: uppercase; letter-spacing: 0.08em; flex-grow: 1; width: auto; min-width: 0; }
.telas-entrada .e-erro { font-size: 15px; font-weight: 700; color: #a03528; text-align: center; }
.telas-entrada .pronto-corpo { flex-grow: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 24px 20px; text-align: center; }
.telas-entrada .pronto-selo { width: 104px; height: 104px; border-radius: 52px; background: var(--entrada-cor); color: #fff; display: flex; align-items: center; justify-content: center; }
.telas-entrada .pronto-corpo h1 { margin: 0; font-size: 28px; font-weight: 700; }
.telas-entrada .pronto-sub { font-size: 18px; color: #2b3530; }
.telas-entrada .pronto-entrar { display: flex; align-items: center; justify-content: center; width: 100%; height: 60px; border-radius: 16px; background: var(--entrada-cor); color: #fff; border: 0; font-family: inherit; font-size: 19px; font-weight: 700; margin-top: 12px; cursor: pointer; }
.telas-entrada a.pronto-entrar { text-decoration: none; box-sizing: border-box; }
.telas-entrada .pronto-segundo { background: transparent; color: var(--entrada-cor); border: 2px solid var(--entrada-cor); }
.telas-entrada .e-aceite-frase { font-size: 15px; line-height: 1.5; color: #59625c; }
.telas-entrada .e-aceite-frase strong { color: #2b3530; }
.telas-entrada .e-aceite-frase a { color: var(--entrada-cor); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
