/* primeiro-acesso.css: tela do primeiro acesso (troca da senha inicial), 11/10/2026.
   Dona: frente de contas e primeiro acesso (docs/RODADA-2026-10-11-APPS-TEXLEAD.md). Tudo sob .slpa,
   sem tocar no app.css. Marca TexLead: marinho #0c1322, âmbar #f59e0b, tinta #b45309; botão âmbar com
   texto marinho. Logomarca reversa sempre sobre o marinho, então vale nos dois temas. 320 a 1920. */
.slpa {
  --slpa-marinho: #0c1322;
  --slpa-ambar: #f59e0b;
  --slpa-ambar-forte: #d97706;
  --slpa-tinta: #b45309;
  --slpa-cartao: #ffffff;
  --slpa-texto: #0c1322;
  --slpa-suave: #5a6779; /* 22/10/2026: cores da paleta declarada (seulead.json), contraste conferido */
  --slpa-borda: #cbd5e1;
  --slpa-campo: #ffffff;
  --slpa-erro-fundo: #fef2f2;
  --slpa-erro-texto: #b91c1c;
  --slpa-ok: var(--ok-tinta, #0b6132); /* sucesso da casa (app.css --ok-tinta) */
  --slpa-foco: #b45309;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  background: var(--slpa-marinho);
  color: var(--slpa-texto);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  padding: max(24px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right))
           max(24px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  box-sizing: border-box;
}
@media (prefers-color-scheme: dark) {
  .slpa {
    --slpa-cartao: #141d33;
    --slpa-texto: #f1f5f9;
    --slpa-suave: #cbd5e1;
    --slpa-borda: #334155;
    --slpa-campo: #0c1322;
    --slpa-erro-fundo: #7f1d1d;
    --slpa-erro-texto: #fecaca;
    --slpa-ok: #f59e0b; /* no escuro, regra cumprida em âmbar da marca: o app.css não tem sucesso escuro */
    --slpa-foco: #f59e0b;
  }
}
html.slpa-aberto, html.slpa-aberto body { overflow: hidden; }
.slpa *, .slpa *::before, .slpa *::after { box-sizing: border-box; }

.slpa__miolo {
  width: 100%;
  max-width: 440px;
  margin: 0 auto;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.slpa__logo { display: block; height: 44px; width: auto; max-width: 100%; margin: 0 auto 20px; }
.slpa__cartao {
  background: var(--slpa-cartao);
  border-radius: 16px;
  padding: 24px 20px;
  border-top: 4px solid var(--slpa-ambar);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .35);
}
.slpa__titulo { margin: 0 0 6px; font-size: 1.375rem; line-height: 1.25; font-weight: 700; color: var(--slpa-texto); }
.slpa__texto { margin: 0 0 18px; font-size: .9375rem; line-height: 1.5; color: var(--slpa-suave); overflow-wrap: anywhere; }
.slpa__texto strong { color: var(--slpa-texto); font-weight: 600; }

.slpa__campo { margin: 0 0 14px; }
.slpa__rotulo { display: block; margin: 0 0 6px; font-size: .875rem; font-weight: 600; color: var(--slpa-texto); }
.slpa__linha { position: relative; display: flex; align-items: stretch; }
.slpa__entrada {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 48px;
  padding: 10px 56px 10px 14px;
  font: inherit;
  font-size: 16px; /* 16 px: o iOS não amplia a tela no foco */
  color: var(--slpa-texto);
  background: var(--slpa-campo);
  border: 1px solid var(--slpa-borda);
  border-radius: 10px;
  outline: none;
}
.slpa__entrada:focus-visible { border-color: var(--slpa-foco); box-shadow: 0 0 0 3px rgba(245, 158, 11, .35); }
.slpa__olho {
  position: absolute;
  top: 2px;
  right: 2px;
  bottom: 2px;
  min-width: 44px;
  min-height: 44px;
  padding: 0 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--slpa-suave);
  font: inherit;
  font-size: .8125rem;
  font-weight: 600;
  cursor: pointer;
}
.slpa__olho:hover { color: var(--slpa-texto); }
.slpa__olho:focus-visible { outline: 2px solid var(--slpa-foco); outline-offset: -2px; }

.slpa__regras { list-style: none; margin: 4px 0 16px; padding: 0; font-size: .875rem; line-height: 1.4; color: var(--slpa-suave); }
.slpa__regras li { position: relative; padding: 3px 0 3px 22px; }
.slpa__regras li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: .62em;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 2px solid var(--slpa-borda);
}
.slpa__regras li.slpa--ok { color: var(--slpa-ok); }
.slpa__regras li.slpa--ok::before { border-color: var(--slpa-ok); background: var(--slpa-ok); }

.slpa__erro {
  display: none;
  margin: 0 0 14px;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--slpa-erro-fundo);
  color: var(--slpa-erro-texto);
  font-size: .9rem;
  line-height: 1.45;
}
.slpa__erro.slpa--visivel { display: block; }

.slpa__botao {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 10px 16px;
  border: 0;
  border-radius: 10px;
  background: var(--slpa-ambar);
  color: var(--slpa-marinho);
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
}
.slpa__botao:hover { background: var(--slpa-ambar-forte); }
.slpa__botao:focus-visible { outline: 3px solid var(--slpa-texto); outline-offset: 2px; }
.slpa__botao[disabled] { opacity: .7; cursor: progress; }
.slpa__sair {
  display: block;
  width: 100%;
  min-height: 44px;
  margin-top: 8px;
  border: 0;
  background: transparent;
  color: var(--slpa-suave);
  font: inherit;
  font-size: .9rem;
  text-decoration: underline;
  cursor: pointer;
}
.slpa__sair:focus-visible { outline: 2px solid var(--slpa-foco); outline-offset: 2px; }
.slpa__aviso { margin: 14px 0 0; font-size: .8125rem; line-height: 1.45; color: #cbd5e1; text-align: center; }
.slpa__oculto {
  position: absolute;
  width: 1px; height: 1px; margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}

@media (min-width: 600px) {
  .slpa__cartao { padding: 32px 32px 28px; }
  .slpa__logo { height: 52px; margin-bottom: 24px; }
}
@media (prefers-reduced-motion: no-preference) {
  .slpa__cartao { animation: slpa-entra .22s ease-out; }
  @keyframes slpa-entra { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
}
