/* Simulador CFC — camada web: porta de entrada, barra de conta, rodapé e
   página de histórico. Complementa (não substitui) app.css, que veio do
   simulador offline. Paleta idêntica à identidade do projeto.

   Data-base: 16/08/2026 */

/* ---------- porta de entrada ---------- */
.gate{
  position:fixed; inset:0; z-index:50; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg,#0D1B2A 0%,#1E3D5A 100%); padding:24px;
}
.gate.hidden{display:none}
.gate-box{
  width:100%; max-width:380px; background:#fff; border-radius:12px; padding:32px 30px 26px;
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}
.gate-marca{font-size:1.35rem; font-weight:700; color:#0D1B2A; letter-spacing:-.02em}
.gate-marca span{color:#26B3A6}
.gate-sub{margin:6px 0 22px; font-size:.82rem; color:#5B6B7B}
.gate-box label{display:block; font-size:.75rem; font-weight:700; text-transform:uppercase;
  letter-spacing:.06em; color:#5B6B7B; margin-bottom:6px}
.gate-box input{
  width:100%; padding:11px 12px; margin-bottom:16px; border:1px solid #D3D9E0; border-radius:6px;
  font-size:.95rem; font-family:inherit; color:#16202B; background:#fff;
}
.gate-box input:focus{outline:none; border-color:#26B3A6; box-shadow:0 0 0 3px rgba(38,179,166,.16)}
.gate-box .btn{width:100%; margin-top:4px}
.gate-erro{
  margin:14px 0 0; padding:10px 12px; border-left:3px solid #C0392B; background:#FBEDEC;
  color:#8E2A20; font-size:.82rem; border-radius:4px;
}
.gate-erro.hidden{display:none}
.gate-nota{margin:18px 0 0; font-size:.72rem; color:#8A97A4; line-height:1.5}

/* ---------- barra de conta ---------- */
.conta{background:#0D1B2A; color:#C9D3DD; font-size:.78rem; border-bottom:1px solid rgba(255,255,255,.08)}
.conta .wrap{display:flex; align-items:center; gap:10px; padding:8px 20px; flex-wrap:wrap}
.conta-user{font-weight:700; color:#fff}
.conta-sep{opacity:.4}
.conta-link{color:#26B3A6; text-decoration:none; font-weight:600}
.conta-link:hover{text-decoration:underline}
.conta-estado{margin-left:auto; font-size:.74rem; color:#8A97A4}
.conta-estado.ok{color:#26B3A6}
.conta-estado.falha{color:#E8836F}
.conta-estado.aguardando{color:#D4AF37}
.conta-sair{
  background:transparent; border:1px solid rgba(255,255,255,.22); color:#C9D3DD; cursor:pointer;
  border-radius:5px; padding:4px 12px; font-family:inherit; font-size:.74rem;
}
.conta-sair:hover{border-color:#26B3A6; color:#fff}

/* ---------- rodapé ---------- */
.rodape{margin-top:40px; padding:18px 0; background:#0D1B2A; color:#8A97A4; font-size:.74rem}
.rodape .wrap{padding:0 20px}

/* ---------- página de histórico ---------- */
.vazio{padding:26px; text-align:center; color:#5B6B7B; font-size:.86rem}
.lista-sessoes{width:100%; border-collapse:collapse}
.lista-sessoes tr{cursor:default}
.lista-sessoes .aprov{color:#1E8E7E; font-weight:700}
.lista-sessoes .reprov{color:#C0392B; font-weight:700}
.evolucao{display:flex; align-items:flex-end; gap:6px; height:130px; padding:12px 0 0;
  border-bottom:1px solid #E6E9EE; overflow-x:auto}
.evolucao .col{flex:0 0 34px; display:flex; flex-direction:column; justify-content:flex-end;
  align-items:center; height:100%}
.evolucao .col i{display:block; width:100%; background:#1E3D5A; border-radius:3px 3px 0 0; min-height:2px}
.evolucao .col.aprov i{background:#26B3A6}
.evolucao .col small{font-size:.62rem; color:#5B6B7B; margin-top:4px; white-space:nowrap}
.evolucao .col b{font-size:.68rem; color:#16202B; margin-bottom:3px}
.legenda{font-size:.72rem; color:#5B6B7B; margin-top:8px}
