/* Telas de conta: entrar, cadastro, recuperar senha e painel do arrematante (.cn-*) */
.cn { color: var(--mv-texto); padding: 4px 4px 10px; }
.cn h1, .cn h2, .cn h3 { text-align: left; }

/* Cartão centralizado (entrar / recuperar senha) */
.cn-cartao {
  max-width: 460px;
  margin: 20px auto 30px;
  border: 1px solid #e4e4ee;
  border-radius: 14px;
  padding: 30px 28px;
  box-shadow: 0 10px 30px rgba(23, 23, 47, .08);
  background: #fff;
}

.cn-cartao .cn-icone {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--mv-navy);
  color: var(--mv-ouro-claro);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  margin-bottom: 14px;
}

.cn .cn-cartao h1 { color: var(--mv-navy); font-size: 1.5rem; font-weight: 800; margin: 0 0 4px; }
.cn-sub { color: #6b6b85; margin-bottom: 20px; }

.cn-campo { margin-bottom: 14px; }
.cn-campo small { display: block; color: #8a8aa6; font-weight: 400; margin-top: 2px; }
.cn-campo input:disabled { background: #f4f4f8; color: #8a8aa6; }

.cn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  border-radius: 10px;
  padding: 12px 22px;
  background: var(--mv-navy);
  color: #fff;
  font-weight: 800;
  font-size: 1rem;
  cursor: pointer;
}

.cn-btn:hover { background: #33335f; color: #fff; text-decoration: none; }
.cn-btn-ouro { background: var(--mv-ouro); }
.cn-btn-ouro:hover { background: #9c7224; }
.cn-btn-largo { width: 100%; }

.cn-links { margin-top: 18px; text-align: center; color: #6b6b85; font-size: .92rem; }
.cn-links p { margin: 6px 0; }
.cn-links a { font-weight: 700; color: var(--mv-navy); }

#entrarResult .alert, #cadastroResult .alert { border-radius: 10px; }

/* Cadastro em seções */
.cn-topo { margin-bottom: 18px; }
.cn .cn-topo h1 { color: var(--mv-navy); font-size: 1.7rem; font-weight: 800; margin: 0 0 4px; }

.cn-secao {
  border: 1px solid #e4e4ee;
  border-radius: 12px;
  padding: 20px 20px 6px;
  margin-bottom: 16px;
  background: #fff;
}

.cn-secao legend, .cn-secao h2 {
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--mv-ouro);
  font-weight: 800;
  margin-bottom: 14px;
  width: auto;
}

.cn-opcoes { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 14px; }

.cn-opcoes label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #d6d6e3;
  border-radius: 999px;
  padding: 7px 14px;
  font-weight: 600;
  cursor: pointer;
  margin: 0;
}

.cn-opcoes input { width: auto; margin: 0; accent-color: var(--mv-navy); }
.cn-opcoes label:has(input:checked) { border-color: var(--mv-navy); background: #f0f0f6; }

.cn-enviar { display: flex; justify-content: flex-end; margin-top: 6px; }

/* Painel */
.cn-abas {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  border-bottom: 1px solid #ececf3;
  margin-bottom: 22px;
}

.cn-abas a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 10px 14px;
  color: #6b6b85;
  font-weight: 600;
  border-bottom: 3px solid transparent;
  margin-bottom: -1px;
}

.cn-abas a:hover { color: var(--mv-navy); text-decoration: none; }
.cn-abas a.is-active { color: var(--mv-navy); border-bottom-color: var(--mv-ouro); }
.cn-abas .cn-sair { margin-left: auto; }

.cn-aviso {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  border-radius: 12px;
  padding: 16px 18px;
  margin-bottom: 20px;
}

.cn-aviso i { font-size: 1.3rem; margin-top: 2px; }
.cn-aviso p { margin: 0; }
.cn-aviso-ok { background: #e9f7ef; color: #14532d; }
.cn-aviso-pendente { background: #fff7e6; color: #7a4b00; }
.cn-aviso a { font-weight: 700; color: inherit; text-decoration: underline; }

.cn-atalhos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }

.cn-atalhos a {
  display: flex;
  flex-direction: column;
  gap: 6px;
  border: 1px solid #e4e4ee;
  border-radius: 12px;
  padding: 18px;
  color: var(--mv-texto);
  background: #fafafd;
}

.cn-atalhos a:hover { border-color: var(--mv-ouro); text-decoration: none; color: var(--mv-texto); }
.cn-atalhos i { font-size: 1.3rem; color: var(--mv-ouro); }
.cn-atalhos strong { color: var(--mv-navy); font-size: 1.05rem; }
.cn-atalhos span { font-size: .9rem; color: #6b6b85; }

/* Seus lances */
.cn-tabela { width: 100%; border-collapse: collapse; font-size: .93rem; }
.cn-tabela th { text-align: left; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: #8a8aa6; padding: 8px 10px; border-bottom: 1px solid #ececf3; }
.cn-tabela td { padding: 12px 10px; border-bottom: 1px solid #f0f0f5; vertical-align: top; }
.cn-tabela td a { font-weight: 700; color: var(--mv-navy); }
.cn-tabela .cn-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }

.cn-selo { display: inline-block; font-size: .78rem; font-weight: 700; border-radius: 999px; padding: 3px 10px; white-space: nowrap; }
.cn-selo-vencendo { background: #e9f7ef; color: #14532d; }
.cn-selo-superado { background: #fdecec; color: #b42318; }

.cn-vazio { text-align: center; color: #6b6b85; padding: 30px 10px; }

/* Documentos */
.cn-docs { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.cn-docs ul { margin: 0; padding-left: 18px; }
.cn-docs li { margin: 6px 0; }
.cn #gallery-sort { list-style: none; padding: 0; margin: 0; }
.cn #gallery-sort li { padding: 8px 0; border-bottom: 1px solid #f0f0f5; margin: 0; }
.cn #gallery-sort a { font-weight: 700; color: var(--mv-navy); }
.cn .sentDate { display: block; font-size: .82rem; color: #8a8aa6; }
.cn .fileinput-button { border-radius: 10px; font-weight: 700; padding: 11px 18px; }

@media (max-width: 767.98px) {
  .cn-atalhos, .cn-docs { grid-template-columns: 1fr; }
  .cn-abas a { padding: 8px 10px; }
  .cn-abas .cn-sair { margin-left: 0; }
  .cn-tabela thead { display: none; }
  .cn-tabela tr { display: block; border-bottom: 1px solid #ececf3; padding: 8px 0; }
  .cn-tabela td { display: flex; justify-content: space-between; gap: 10px; border: 0; padding: 4px 0; }
  .cn-tabela td::before { content: attr(data-rotulo); color: #8a8aa6; font-size: .82rem; }
  .cn-tabela .cn-num { text-align: right; }
  .cn-enviar .cn-btn { width: 100%; }
}
