/* Central do Panteão — etapa 3 (login). O visual completo do protótipo v3 entra nas etapas 4 e 5. */
:root {
  --fundo: #f6f3ec; --cartao: #fffdf8; --texto: #1f2430; --suave: #5d6475; --borda: #ddd5c4;
  --ouro: #a77d2c; --ouro-forte: #8a6420; --erro: #a12d2d; --erro-fundo: #fbeaea;
  --critico: #a12d2d; --alto: #b4641a; --baixo: #6b7280;
}
@media (prefers-color-scheme: dark) {
  :root {
    --fundo: #141820; --cartao: #1c212c; --texto: #e9e4d8; --suave: #a6adbb; --borda: #2f3645;
    --ouro: #d2a64f; --ouro-forte: #e3bb66; --erro: #f08a8a; --erro-fundo: #3a1f22;
    --critico: #f08a8a; --alto: #f0b067; --baixo: #a6adbb;
  }
}
* { box-sizing: border-box; }
html { color-scheme: light dark; }
body { margin: 0; min-height: 100vh; background: var(--fundo); color: var(--texto);
  font: 16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; display: flex; justify-content: center; align-items: flex-start; padding: 48px 16px; }
main.cartao { width: 100%; max-width: 400px; background: var(--cartao); border: 1px solid var(--borda); border-radius: 12px; padding: 28px; }
main.largo { width: 100%; max-width: 1100px; }
h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 600; font-size: 1.5rem; margin: 0 0 16px; color: var(--ouro-forte); letter-spacing: .02em; }
h2 { font-family: Georgia, serif; font-size: 1.15rem; margin: 24px 0 12px; }
.marca { display: flex; align-items: center; gap: 12px; }
.marca h1 { margin: 0; }
header.marca { margin-bottom: 20px; }
form { display: grid; gap: 14px; }
label { display: grid; gap: 6px; font-size: .9rem; color: var(--suave); }
input { font: inherit; padding: 10px 12px; border: 1px solid var(--borda); border-radius: 8px; background: var(--fundo); color: var(--texto); }
input:focus { outline: 2px solid var(--ouro); outline-offset: 1px; }
button, .botao { font: inherit; padding: 10px 14px; border: 0; border-radius: 8px; background: var(--ouro); color: #fff; cursor: pointer; text-decoration: none; display: inline-block; text-align: center; }
button:hover, .botao:hover { background: var(--ouro-forte); }
button.secundario { background: transparent; color: var(--texto); border: 1px solid var(--borda); padding: 6px 10px; font-size: .85rem; }
.erro { background: var(--erro-fundo); color: var(--erro); border-radius: 8px; padding: 10px 12px; }
.dica { color: var(--suave); font-size: .9rem; }
code { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
code.chave { word-break: break-all; }
.qr { text-align: center; }
.qr img { background: #fff; padding: 8px; border-radius: 8px; image-rendering: pixelated; }
ol.codigos { columns: 2; font-size: 1.1rem; }
.topo { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; border-bottom: 1px solid var(--borda); padding-bottom: 16px; }
.conta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--suave); font-size: .9rem; }
.conta form { display: inline; }
table { width: 100%; border-collapse: collapse; background: var(--cartao); border: 1px solid var(--borda); border-radius: 8px; }
th, td { text-align: left; padding: 10px; border-bottom: 1px solid var(--borda); vertical-align: top; font-size: .92rem; }
tr.lido { opacity: .6; }
.prio { font-weight: 600; text-transform: uppercase; font-size: .75rem; letter-spacing: .05em; }
.prio.critico { color: var(--critico); } .prio.alto { color: var(--alto); } .prio.baixo { color: var(--baixo); }
.cont { color: var(--suave); }
@media (max-width: 640px) { th:nth-child(3), td:nth-child(3) { display: none; } }
