/* =========================================================
   SISTEMA STAFF - ESTILOS GERAIS
   Arquivo CSS principal unificado.
   ========================================================= */

/* =========================================================
   RESET E CONFIGURAÇÕES GERAIS
========================================================= */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: Arial, Helvetica, sans-serif;
}

body {
  min-height: 100vh;
  padding: 30px 15px;
  background: #f3f5f9;
  color: #1d1d1d;
  display: flex;
  justify-content: center;
}

.hidden {
  display: none;
}


/* =========================================================
   CONTAINERS GERAIS
========================================================= */

.container,
.pagina-corridas {
  width: 100%;
  max-width: 760px;
}


/* =========================================================
   CABEÇALHO DO CADASTRO / LOGIN
========================================================= */

.header {
  padding: 35px;
  color: #ffffff;
  background: linear-gradient(135deg, #111827, #1f2937);
  border-radius: 20px 20px 0 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.header h1 {
  margin-bottom: 10px;
  font-size: 32px;
}

.header p {
  line-height: 1.5;
  opacity: 0.85;
}


/* =========================================================
   ÁREA DE FORMULÁRIO
========================================================= */

.form-area {
  padding: 35px;
  background: #ffffff;
  border-radius: 0 0 20px 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.section-title {
  margin: 35px 0 25px;
  padding-left: 12px;
  border-left: 5px solid #2563eb;
  color: #111827;
  font-size: 18px;
  font-weight: 700;
}

.section-title:first-child {
  margin-top: 0;
}


/* =========================================================
   CAMPOS DE FORMULÁRIO
========================================================= */

.field {
  margin-bottom: 22px;
}

.field label {
  display: block;
  margin-bottom: 8px;
  color: #374151;
  font-size: 14px;
  font-weight: 600;
}

.field input,
.field select,
.field textarea {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #d1d5db;
  border-radius: 12px;
  background: #f9fafb;
  font-size: 15px;
  transition: 0.2s;
}

.field textarea {
  resize: vertical;
}

.field input:focus,
.field select:focus,
.field textarea:focus {
  outline: none;
  border-color: #2563eb;
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);
}

.field.valid input,
.field.valid textarea {
  border-color: #16a34a;
  background: #f0fdf4;
}

.field.invalid input,
.field.invalid textarea {
  border-color: #dc2626;
  background: #fff7f7;
}


/* =========================================================
   MENSAGENS DE APOIO E ERRO
========================================================= */

.helper {
  margin-top: 6px;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.4;
}

.error {
  display: none;
  margin-top: 6px;
  color: #dc2626;
  font-size: 12px;
}

.field.invalid .error {
  display: block;
}

.success-message {
  display: none;
  margin-top: 22px;
  padding: 16px;
  border: 1px solid #a7f3d0;
  border-radius: 14px;
  background: #ecfdf5;
  color: #047857;
  font-size: 14px;
  line-height: 1.5;
}


/* =========================================================
   GRIDS
========================================================= */

.grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}


/* =========================================================
   OPÇÕES DE PIX
========================================================= */

.pix-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  margin-bottom: 18px;
}

.pix-card {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px;
  border: 1px solid #d1d5db;
  border-radius: 14px;
  background: #f9fafb;
  cursor: pointer;
  transition: 0.2s;
}

.pix-card:hover,
.pix-card:has(input:checked) {
  border-color: #2563eb;
  background: #eff6ff;
}

.pix-card input {
  margin-top: 3px;
}

.pix-card strong {
  display: block;
  margin-bottom: 4px;
  color: #111827;
  font-size: 14px;
}

.pix-card span {
  display: block;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.3;
  word-break: break-word;
}


/* =========================================================
   UPLOAD E PRÉ-VISUALIZAÇÃO DE FOTO
========================================================= */

.file-preview {
  display: none;
  align-items: center;
  gap: 14px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #f8fafc;
}

.file-preview img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border: 2px solid #e5e7eb;
  border-radius: 50%;
}

.file-preview div {
  color: #4b5563;
  font-size: 13px;
  line-height: 1.4;
}


/* =========================================================
   CHECKBOX
========================================================= */

.checkbox {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 10px;
}

.checkbox input {
  margin-top: 4px;
  transform: scale(1.2);
}

.checkbox label {
  color: #4b5563;
  font-size: 14px;
  line-height: 1.5;
}


/* =========================================================
   BOTÕES GERAIS
========================================================= */

.submit-btn {
  width: 100%;
  margin-top: 30px;
  padding: 18px;
  border: none;
  border-radius: 14px;
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}


.logout-btn {
  padding: 18px 24px;
  border: none;
  border-radius: 14px;
  background: linear-gradient(135deg, #dc2626, #b91c1c);
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.logout-btn:hover {
  transform: translateY(-1px);
  opacity: 0.95;
}

.submit-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(37, 99, 235, 0.25);
}

.submit-btn:disabled {
  opacity: 0.65;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.login-shortcut {
  width: 100%;
  margin-top: 12px;
  padding: 13px;
  border: none;
  border-radius: 12px;
  background: #111827;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.login-shortcut:hover {
  background: #374151;
}

.back-corridas-btn {
  width: 100%;
  margin-top: 12px;
  padding: 16px;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  background: #ffffff;
  color: #1f2937;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.back-corridas-btn:hover {
  background: #f8fafc;
  transform: translateY(-1px);
}

.btn-admin {
  width: auto;
  margin-top: 0;
}

/* =========================================================
   TEXTO DE RODAPÉ
========================================================= */

.footer-text {
  margin-top: 25px;
  color: #6b7280;
  text-align: center;
  font-size: 13px;
  line-height: 1.5;
}


/* =========================================================
   PÁGINA DE CORRIDAS
========================================================= */

.pagina-corridas {
  display: flex;
  flex-direction: column;
  gap: 24px;
}


/* =========================================================
   CARD DO STAFF LOGADO
========================================================= */

.card-staff {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 22px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.foto-staff-wrapper {
  flex-shrink: 0;
}

.foto-staff {
  display: block;
  width: 96px;
  height: 96px;
  object-fit: cover;
  border: 3px solid #e5e7eb;
  border-radius: 50%;
  background: #e5e7eb;
}

.dados-staff {
  flex: 1;
}

.label-card {
  margin-bottom: 4px;
  color: #6b7280;
  font-size: 13px;
  font-weight: 600;
}

.dados-staff h2 {
  margin-bottom: 8px;
  color: #111827;
  font-size: 24px;
}

.dados-staff p {
  margin: 3px 0;
  color: #4b5563;
  font-size: 14px;
  line-height: 1.4;
}

.botao-sair {
  flex-shrink: 0;
  padding: 11px 18px;
  border: none;
  border-radius: 12px;
  background: #111827;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.botao-sair:hover {
  background: #374151;
}

.acoes-staff {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}

.botao-admin {
  padding: 11px 18px;
  border: none;
  border-radius: 12px;
  background: #2563eb;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.botao-admin:hover {
  background: #1d4ed8;
}

/* =========================================================
   CABEÇALHO DAS CORRIDAS
========================================================= */

.cabecalho-corridas {
  padding: 28px 30px;
  border-radius: 20px;
  background: linear-gradient(135deg, #111827, #1f2937);
  color: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.cabecalho-corridas h1 {
  margin-bottom: 8px;
  font-size: 30px;
}

.cabecalho-corridas h2 {
  margin-bottom: 8px;
  font-size: 30px;
}

.cabecalho-corridas p {
  font-size: 15px;
  line-height: 1.5;
  opacity: 0.85;
}


/* =========================================================
   LISTA E CARDS DE CORRIDAS
========================================================= */

.lista-corridas {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.lista-corridas > p {
  padding: 22px;
  border-radius: 18px;
  background: #ffffff;
  color: #4b5563;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.card-corrida {
  padding: 26px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.card-corrida h2 {
  margin-bottom: 18px;
  color: #111827;
  font-size: 24px;
}

.card-corrida p {
  margin-bottom: 8px;
  color: #374151;
  font-size: 15px;
  line-height: 1.45;
}

.card-corrida p strong {
  color: #111827;
}

.botao-inscricao,
.card-corrida button:disabled {
  margin-top: 18px;
  padding: 14px 18px;
  border: none;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 700;
}

.botao-inscricao {
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
  color: #ffffff;
  cursor: pointer;
  transition: 0.2s;
}

.botao-inscricao:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(37, 99, 235, 0.22);
}

.botao-inscricao:disabled {
  opacity: 0.7;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.card-corrida button:disabled {
  background: #dcfce7;
  color: #166534;
  cursor: default;
}

.delete-btn {
  padding: 10px 14px;
  border: none;
  border-radius: 10px;
  background: linear-gradient(135deg, #dc2626, #b91c1c);
  color: white;
  font-weight: 600;
  cursor: pointer;
  transition: 0.2s;
}

.delete-btn:hover {
  opacity: 0.95;
  transform: translateY(-1px);
}

/* =========================================================
   MINHAS INSCRIÇÕES
========================================================= */

.secao-minhas-inscricoes {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.lista-minhas-inscricoes {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.lista-minhas-inscricoes > p {
  padding: 22px;
  border-radius: 18px;
  background: #ffffff;
  color: #4b5563;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.card-minha-inscricao {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 24px 26px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.conteudo-minha-inscricao h3 {
  margin-bottom: 14px;
  color: #111827;
  font-size: 22px;
}

.conteudo-minha-inscricao p {
  margin-bottom: 7px;
  color: #374151;
  font-size: 15px;
  line-height: 1.45;
}

.conteudo-minha-inscricao p strong {
  color: #111827;
}

.status-inscricao {
  flex-shrink: 0;
  min-width: 128px;
  padding: 14px 18px;
  border-radius: 999px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
}

.status-inscrito {
  background: #dbeafe;
  color: #1d4ed8;
}

.status-confirmado {
  background: #dcfce7;
  color: #166534;
}

.status-cancelado {
  background: #fee2e2;
  color: #b91c1c;
}

/* =========================================================
   RESPONSIVIDADE
========================================================= */

@media (max-width: 700px) {
  body {
    padding: 20px 12px;
  }

  .header,
  .form-area,
  .cabecalho-corridas,
  .card-corrida {
    padding: 24px;
  }

  .header h1,
  .cabecalho-corridas h1 {
    font-size: 26px;
  }

  .grid,
  .pix-options {
    grid-template-columns: 1fr;
  }

  .card-staff {
    flex-direction: column;
    align-items: flex-start;
  }

  .foto-staff {
    width: 88px;
    height: 88px;
  }

  .dados-staff h2 {
    font-size: 22px;
  }

  .botao-sair,
  .botao-inscricao,
  .card-corrida button:disabled {
    width: 100%;
  }
     .titulo-secao {
    padding: 24px;
  }

  .titulo-secao h2 {
    font-size: 24px;
  }

  .card-minha-inscricao {
    flex-direction: column;
    align-items: flex-start;
  }

  .status-inscricao {
    min-width: auto;
    width: 100%;
  }

   .acoes-staff {
  width: 100%;
  flex-direction: column;
}

.botao-admin {
  width: 100%;
}
}

/* =========================================================
   ADMIN
========================================================= */

.pagina-admin {
  width: 100%;
  max-width: 1100px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.admin-acoes {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.admin-acoes .submit-btn {
  width: auto;
  margin-top: 0;
}

.form-admin.hidden {
  display: none;
}

.secao-corridas-admin {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.card-corrida-admin {
  padding: 24px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.card-corrida-admin h3 {
  margin-bottom: 16px;
  font-size: 24px;
}

.card-corrida-admin p {
  margin-bottom: 8px;
}

.admin-status {
  display: inline-flex;
  margin-top: 18px;
  padding: 10px 16px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
}

.admin-status.aberta {
  background: #dcfce7;
  color: #166534;
}

.admin-status.encerrada {
  background: #fee2e2;
  color: #b91c1c;
}

.ativo-confirmado {
  background: #16a34a !important;
  color: #ffffff !important;
}

.ativo-cancelado {
  background: #dc2626 !important;
  color: #ffffff !important;
}

.admin-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
}

.botao-ver-inscritos {
  padding: 11px 18px;
  border: none;
  border-radius: 12px;
  background: #111827;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.botao-ver-inscritos:hover {
  background: #374151;
}

.lista-inscritos-admin {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid #e5e7eb;
}

.card-inscrito-admin {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
}

.foto-inscrito-admin {
  width: 72px;
  height: 72px;
  flex-shrink: 0;
  object-fit: cover;
  border-radius: 50%;
  background: #e5e7eb;
}

.dados-inscrito-admin {
  flex: 1;
}

.dados-inscrito-admin h4 {
  margin-bottom: 8px;
  font-size: 18px;
  color: #111827;
}

.dados-inscrito-admin p {
  margin-bottom: 4px;
  font-size: 14px;
  color: #374151;
}

.acoes-inscrito-admin {
  display: flex;
  gap: 10px;
}

.botao-confirmar-inscrito,
.botao-cancelar-inscrito {
  padding: 10px 14px;
  border: none;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.botao-confirmar-inscrito {
  background: #dcfce7;
  color: #166534;
}

.botao-cancelar-inscrito {
  background: #fee2e2;
  color: #b91c1c;
}

.botao-confirmar-inscrito:disabled,
.botao-cancelar-inscrito:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

@media (max-width: 700px) {
  .admin-card-footer,
  .card-inscrito-admin,
  .acoes-inscrito-admin {
    flex-direction: column;
    align-items: flex-start;
  }

  .botao-ver-inscritos,
  .botao-confirmar-inscrito,
  .botao-cancelar-inscrito {
    width: 100%;
  }

  .acoes-inscrito-admin {
    width: 100%;
  }
   .botao-alterar-status-corrida {
  width: 100%;
}
}


.botao-alterar-status-corrida {
  padding: 11px 18px;
  border: none;
  border-radius: 12px;
  background: #f59e0b;
  color: #111827;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
}

.botao-alterar-status-corrida:hover {
  background: #d97706;
}

.botao-alterar-status-corrida:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}


/* =========================================================
   DIAS DA CORRIDA
========================================================= */

.gerenciar-dias {
  margin-top: 24px;
  padding: 22px;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #f8fafc;
}

.gerenciar-dias h4 {
  margin-bottom: 18px;
  color: #111827;
  font-size: 18px;
}

.gerenciar-dias input {
  width: 100%;
  margin-bottom: 12px;
  padding: 12px 14px;
  border: 1px solid #d1d5db;
  border-radius: 12px;
  background: #ffffff;
  font-size: 14px;
}

.gerenciar-dias input:focus {
  outline: none;
  border-color: #2563eb;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);
}

.gerenciar-dias button {
  padding: 12px 18px;
  border: none;
  border-radius: 12px;
  background: #2563eb;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.gerenciar-dias button:hover {
  background: #1d4ed8;
}

#dias-corrida {
  margin-top: 18px;
}

.dia-corrida-card {
  margin-top: 14px;
  padding: 18px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid #e5e7eb;
}

.dia-corrida-card p {
  margin-bottom: 8px;
  color: #374151;
  font-size: 14px;
}

.dia-corrida-card p strong {
  color: #111827;
}

.dia-corrida-card button {
  margin-top: 10px;
  background: #dc2626;
}

.dia-corrida-card button:hover {
  background: #b91c1c;
}

.campo-dia-corrida {
  width: 100%;
  height: 46px;
  padding: 0 14px;
  border: 1px solid #cfd6df;
  border-radius: 12px;
  background: #fff;
  font-size: 14px;
  color: #111827;
  outline: none;
}

.gerenciar-dias button {
  width: fit-content;
  margin-top: 8px;
}

/* =========================================================
   RESPONSIVO - DIAS DA CORRIDA
========================================================= */

@media (min-width: 768px) {

  .gerenciar-dias {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .gerenciar-dias h4 {
    grid-column: 1 / -1;
  }

  .gerenciar-dias button {
    width: fit-content;
  }

  .gerenciar-dias #dias-corrida,
  .gerenciar-dias div[id^="dias-corrida-"] {
    grid-column: 1 / -1;
  }
}

/* =========================================================
   DISPONIBILIDADE DO STAFF
========================================================= */

.disponibilidade-corrida {
  margin-top: 22px;
  padding: 18px;
  border: 1px solid #dbeafe;
  border-radius: 18px;
  background: #eff6ff;
}

.disponibilidade-corrida h4 {
  margin-bottom: 6px;
  color: #111827;
  font-size: 17px;
}

.disponibilidade-corrida > p {
  margin-bottom: 14px;
  color: #4b5563;
  font-size: 14px;
}

.lista-dias-disponibilidade {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.checkbox-dia-disponibilidade {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px;
  border: 1px solid #d1d5db;
  border-radius: 14px;
  background: #ffffff;
  cursor: pointer;
  transition: 0.2s;
}

.checkbox-dia-disponibilidade:hover {
  border-color: #2563eb;
  background: #f8fafc;
}

.checkbox-dia-disponibilidade:has(input:checked) {
  border-color: #2563eb;
  background: #dbeafe;
}

.checkbox-dia-disponibilidade input {
  margin-top: 4px;
  transform: scale(1.25);
  cursor: pointer;
}

.checkbox-dia-disponibilidade span {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.checkbox-dia-disponibilidade strong {
  color: #111827;
  font-size: 15px;
}

.checkbox-dia-disponibilidade small {
  color: #6b7280;
  font-size: 13px;
  line-height: 1.35;
}

.botao-inscricao:disabled {
  background: #d1d5db;
  color: #6b7280;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.aviso-disponibilidade {
  border-color: #fde68a;
  background: #fffbeb;
}

.aviso-disponibilidade p {
  margin-bottom: 0;
  color: #92400e;
}

.texto-disponibilidade-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 14px;
  padding: 14px 16px;
  border-radius: 14px;
  background: #dbeafe;
  border: 1px solid #93c5fd;
}

.texto-disponibilidade-info strong {
  color: #1d4ed8;
  font-size: 15px;
  line-height: 1.5;
}

.texto-disponibilidade-info span {
  color: #374151;
  font-size: 14px;
  line-height: 1.5;
}

.texto-disponibilidade-alerta {
  margin-bottom: 16px;
  padding: 14px 16px;
  border-radius: 14px;
  background: #fee2e2;
  border: 1px solid #fca5a5;
  color: #991b1b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
}

.texto-disponibilidade-alerta strong {
  display: inline-block;
  margin-bottom: 4px;
  font-size: 15px;
}


/* =========================================================
   TAGS - MINHA DISPONIBILIDADE
========================================================= */

.minha-disponibilidade {
  margin-top: 18px;
}

.minha-disponibilidade p {
  margin-bottom: 10px !important;
}

.tags-disponibilidade {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tag-disponibilidade {
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  border-radius: 999px;
  background: #dbeafe;
  border: 1px solid #93c5fd;
  color: #1d4ed8;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}

/* =========================================================
   MELHORIAS VISUAIS - MINHAS INSCRIÇÕES
========================================================= */

.card-minha-inscricao {
  align-items: flex-start;
}

.conteudo-minha-inscricao {
  flex: 1;
}

.conteudo-minha-inscricao h3 {
  margin-bottom: 16px;
}

.conteudo-minha-inscricao p {
  margin-bottom: 9px;
}

.status-inscricao {
  margin-top: 4px;
}

/* =========================================================
   RESPONSIVO - TAGS DISPONIBILIDADE
========================================================= */

@media (max-width: 700px) {

  .tags-disponibilidade {
    gap: 8px;
  }

  .tag-disponibilidade {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* =========================================================
   DISPONIBILIDADE STAFF - ADMIN
========================================================= */

.admin-disponibilidade-staff {
  margin-top: 14px;
}

.admin-disponibilidade-staff p {
  margin-bottom: 8px;
}

.admin-tags-disponibilidade {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-tag-disponibilidade {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 999px;
  background: #dbeafe;
  border: 1px solid #93c5fd;
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
}


[id^="dias-corrida-"] {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-top: 24px;
}

.dia-corrida-card {
  padding: 16px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #dde3ea;
}

.dia-corrida-card button {
  width: 100%;
  margin-top: 12px;
}

@media (max-width: 1100px) {
  [id^="dias-corrida-"] {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 650px) {
  [id^="dias-corrida-"] {
    grid-template-columns: 1fr;
  }
}


.botao-admin-secundario {
  background: #2563eb;
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 12px 18px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.2s;
}

.botao-admin-secundario:hover {
  background: #1d4ed8;
}
/* =========================================================
   AJUSTES CADASTRO DE CORRIDA - ADMIN
========================================================= */

.preview-dias-corrida {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin: 20px 0 28px;
}

.preview-dias-corrida > p {
  grid-column: 1 / -1;
  color: #6b7280;
}

.form-admin textarea#corrida-local {
  min-height: 110px;
  line-height: 1.45;
}

.form-admin textarea#corrida-observacoes {
  min-height: 180px;
  line-height: 1.5;
  resize: vertical;
  overflow-y: hidden;
}

@media (max-width: 900px) {
  .preview-dias-corrida {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 650px) {
  .preview-dias-corrida {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   CORREÇÃO FORÇADA - CADASTRO DE CORRIDA ADMIN
   Mantém cada campo separado e corrige labels/date inputs
========================================================= */

.form-admin .grid-cadastro-corrida,
.form-admin .grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 18px;
  row-gap: 22px;
  align-items: start;
}

.form-admin .grid-cadastro-corrida > .field,
.form-admin .grid > .field {
  display: flex;
  flex-direction: column;
  margin: 0 !important;
}

.form-admin .field {
  margin-bottom: 22px !important;
}

.form-admin .grid .field {
  margin-bottom: 0 !important;
}

.form-admin label,
.form-admin .field label {
  display: block !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  color: #374151;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.form-admin input,
.form-admin select,
.form-admin textarea,
.form-admin .field input,
.form-admin .field select,
.form-admin .field textarea {
  display: block !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  border: 1px solid #d1d5db;
  border-radius: 14px !important;
  background: #f9fafb;
  color: #111827;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
  appearance: auto;
  -webkit-appearance: auto;
}

.form-admin input[type="date"] {
  height: 54px !important;
}

.form-admin textarea {
  min-height: 96px !important;
  resize: vertical;
}

.form-admin .section-title {
  margin: 30px 0 22px !important;
}

.form-admin .section-title:first-child {
  margin-top: 0 !important;
}

@media (max-width: 700px) {
  .form-admin .grid-cadastro-corrida,
  .form-admin .grid {
    grid-template-columns: 1fr !important;
    row-gap: 22px !important;
  }

  .form-admin .field {
    margin-bottom: 22px !important;
  }

  .form-admin .grid .field {
    margin-bottom: 0 !important;
  }
}



/* =========================================================
   ALTURA OBSERVAÇÕES - ADMIN
========================================================= */

#corrida-observacoes {
  min-height: 180px !important;
  line-height: 1.5 !important;
  resize: vertical;
  overflow-y: hidden;
}

/* =========================================================
   AJUSTES ADMIN - UX CORRIDAS
========================================================= */

.form-admin .field-spaced {
  margin-top: 26px !important;
}

.corrida-status-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0 0 18px;
  padding: 16px 18px;
  border-radius: 16px;
  border: 1px solid #bbf7d0;
  background: #dcfce7;
  color: #14532d;
}

.corrida-status-card strong {
  font-size: 16px;
  line-height: 1.25;
}

.corrida-status-card span {
  font-size: 14px;
  font-weight: 700;
}

.corrida-status-card.encerrada {
  border-color: #fecaca;
  background: #fee2e2;
  color: #991b1b;
}

.admin-card-footer {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch !important;
  gap: 12px !important;
  margin-top: 22px !important;
}

.admin-card-footer .admin-status {
  grid-column: 1 / -1;
  justify-content: center;
  width: fit-content;
  margin: 0 0 4px !important;
}

.admin-card-footer button,
.admin-card-footer .botao-admin-secundario,
.admin-card-footer .delete-btn,
.admin-card-footer .botao-ver-inscritos,
.admin-card-footer .botao-alterar-status-corrida {
  width: 100% !important;
  min-height: 48px;
  margin: 0 !important;
  text-align: center;
}

.botao-toggle-dias {
  width: 100%;
  margin-bottom: 16px;
  background: #111827 !important;
}

.botao-toggle-dias:hover {
  background: #374151 !important;
}

.dias-corrida-container.hidden {
  display: none !important;
}

@media (max-width: 700px) {
  .admin-card-footer {
    grid-template-columns: 1fr !important;
  }

  .admin-card-footer .admin-status {
    width: 100%;
  }
}

/* =========================================================
   AJUSTES CADASTRO DE DIAS - ADMIN
========================================================= */

.label-opcional {
  font-size: 12px;
  font-weight: 600;
  color: #6b7280;
}

.checkbox-admin-linha {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin: 10px 0 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #374151;
  cursor: pointer;
}

.checkbox-admin-linha input[type="checkbox"] {
  width: 18px !important;
  min-height: 18px !important;
  height: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
}

.form-admin input:disabled {
  background: #e5e7eb !important;
  color: #6b7280 !important;
  cursor: not-allowed;
}

/* Painel compacto de inscritos */
.admin-inscritos-painel {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.admin-inscritos-resumo {
  display: grid;
  grid-template-columns: repeat(5, minmax(110px, 1fr));
  gap: 10px;
}

.admin-inscritos-resumo > div {
  padding: 14px;
  border-radius: 14px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  text-align: center;
}

.admin-inscritos-resumo strong {
  display: block;
  font-size: 22px;
  color: #111827;
}

.admin-inscritos-resumo span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #6b7280;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.admin-inscritos-acoes-massa,
.admin-inscritos-filtros,
.admin-filtros-status,
.admin-contador-selecao {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.botao-admin-batch,
.admin-filtro-inscrito {
  border: none;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.botao-admin-batch {
  background: #111827;
  color: #ffffff;
}

.botao-confirmar-reservar {
  background: #2563eb;
}

.admin-filtro-inscrito {
  background: #f3f4f6;
  color: #374151;
  border: 1px solid #e5e7eb;
}

.admin-filtro-inscrito.ativo {
  background: #111827;
  color: #ffffff;
  border-color: #111827;
}

.admin-busca-inscrito {
  min-width: 240px;
  flex: 1;
  padding: 12px 14px;
  border: 1px solid #d1d5db;
  border-radius: 12px;
  font-size: 14px;
}

.admin-contador-selecao {
  justify-content: space-between;
  padding: 10px 12px;
  border-radius: 12px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 13px;
  font-weight: 800;
}

.admin-lista-compacta-inscritos {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.linha-inscrito-admin {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #ffffff;
  overflow: hidden;
}

.linha-inscrito-principal {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 12px;
}

.linha-inscrito-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.linha-inscrito-check input {
  width: 18px;
  height: 18px;
  cursor: pointer;
}

.botao-expandir-inscrito {
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 9px;
  background: #f3f4f6;
  color: #111827;
  font-size: 16px;
  font-weight: 800;
  cursor: pointer;
}

.linha-inscrito-nome {
  min-width: 0;
}

.linha-inscrito-nome strong,
.linha-inscrito-nome small {
  display: block;
}

.linha-inscrito-nome strong {
  font-size: 15px;
  color: #111827;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.linha-inscrito-nome small {
  margin-top: 2px;
  font-size: 12px;
  color: #6b7280;
}


.linha-inscrito-icones {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  white-space: nowrap;
}

.icone-tipo-dia {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #f3f4f6;
  border: 1px solid #e5e7eb;
  font-size: 15px;
  line-height: 1;
}

.icone-tipo-dia.ativo {
  background: #ecfdf5;
  border-color: #86efac;
  opacity: 1;
}

.icone-tipo-dia.inativo {
  opacity: 0.28;
}

.admin-status-inscricao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.admin-status-inscricao.pendente,
.admin-status-inscricao.inscrito {
  background: #fef3c7;
  color: #92400e;
}

.admin-status-inscricao.confirmado {
  background: #dcfce7;
  color: #166534;
}

.admin-status-inscricao.lista_espera {
  background: #dbeafe;
  color: #1d4ed8;
}

.admin-status-inscricao.cancelado {
  background: #fee2e2;
  color: #991b1b;
}

.linha-inscrito-acoes {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.linha-inscrito-acoes button {
  padding: 8px 10px;
  border: none;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.botao-lista-espera-inscrito {
  background: #dbeafe;
  color: #1d4ed8;
}

.linha-inscrito-acoes button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.linha-inscrito-detalhes {
  padding: 12px;
  border-top: 1px solid #e5e7eb;
  background: #f9fafb;
}

.detalhes-inscrito-header {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.foto-inscrito-admin {
  width: 76px;
  height: 76px;
  border-radius: 16px;
  overflow: hidden;
  background: #e5e7eb;
  border: 1px solid #d1d5db;
  flex: 0 0 auto;
}

.foto-inscrito-admin img,
.foto-inscrito-placeholder {
  width: 100%;
  height: 100%;
}

.foto-inscrito-admin img {
  display: block;
  object-fit: cover;
}

.foto-inscrito-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  text-align: center;
  font-size: 11px;
  font-weight: 800;
  color: #6b7280;
}

.detalhes-inscrito-info-principal {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
}

.detalhes-inscrito-info-principal > strong {
  font-size: 16px;
  color: #111827;
}

.detalhes-inscrito-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(160px, 1fr));
  gap: 8px 14px;
  margin-bottom: 12px;
}

.detalhes-inscrito-grid p {
  margin: 0;
  font-size: 13px;
  color: #374151;
}

@media (max-width: 900px) {
  .admin-inscritos-resumo {
    grid-template-columns: repeat(2, 1fr);
  }

  .linha-inscrito-principal {
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 8px;
    row-gap: 10px;
    padding: 12px 10px;
  }

  .linha-inscrito-icones {
    grid-column: 4;
    justify-self: end;
  }

  .linha-inscrito-principal .admin-status-inscricao {
    grid-column: 1 / -1;
  }

  .icone-tipo-dia {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }

  .detalhes-inscrito-header {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .linha-inscrito-acoes {
    justify-content: stretch;
  }

  .linha-inscrito-acoes button,
  .botao-admin-batch,
  .admin-filtro-inscrito {
    flex: 1;
  }

  .detalhes-inscrito-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .admin-inscritos-resumo {
    grid-template-columns: 1fr;
  }

  .admin-busca-inscrito,
  .botao-admin-batch,
  .admin-filtro-inscrito {
    width: 100%;
  }
}


.linha-inscrito-principal {
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  align-items: start;
}

.linha-inscrito-nome {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.linha-inscrito-nome-topo {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
}

.linha-inscrito-nome-topo strong {
  flex: 1;
}

.linha-inscrito-icones {
  flex-shrink: 0;
  margin-top: 2px;
}

@media (max-width: 640px) {
  .linha-inscrito-principal {
    gap: 8px;
  }

  .linha-inscrito-nome-topo {
    gap: 8px;
  }

  .icone-tipo-dia {
    width: 26px;
    height: 26px;
    font-size: 13px;
  }
}


/* Ajuste: resumo compacto dos inscritos */
.admin-inscritos-resumo.admin-inscritos-resumo-compacto {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.admin-inscritos-resumo-compacto .resumo-dupla {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.admin-inscritos-resumo-compacto .resumo-card {
  padding: 10px 12px;
  border-radius: 14px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  text-align: center;
}

.admin-inscritos-resumo-compacto .resumo-card-total {
  padding: 12px;
}

.admin-inscritos-resumo-compacto .resumo-card strong {
  display: block;
  font-size: 22px;
  line-height: 1.05;
  color: #111827;
}

.admin-inscritos-resumo-compacto .resumo-card-total strong {
  font-size: 28px;
}

.admin-inscritos-resumo-compacto .resumo-card span {
  display: block;
  margin-top: 4px;
  font-size: 11px;
  line-height: 1.15;
  color: #6b7280;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}

@media (max-width: 520px) {
  .admin-inscritos-resumo.admin-inscritos-resumo-compacto {
    grid-template-columns: 1fr;
  }

  .admin-inscritos-resumo-compacto .resumo-dupla {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-inscritos-resumo-compacto .resumo-card {
    padding: 9px 8px;
  }

  .admin-inscritos-resumo-compacto .resumo-card-total {
    padding: 11px 8px;
  }
}


/* FIX FINAL v111: resumo compacto real no mobile e desktop */
.admin-inscritos-resumo.admin-inscritos-resumo-compacto {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto > .resumo-card,
.admin-inscritos-resumo.admin-inscritos-resumo-compacto > .resumo-dupla {
  width: 100% !important;
  box-sizing: border-box !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto > .resumo-dupla {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto .resumo-card {
  min-height: 72px !important;
  padding: 9px 8px !important;
  border-radius: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto .resumo-card-total {
  min-height: 78px !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto .resumo-card strong {
  font-size: 24px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto .resumo-card-total strong {
  font-size: 30px !important;
}

.admin-inscritos-resumo.admin-inscritos-resumo-compacto .resumo-card span {
  font-size: 11px !important;
  line-height: 1.15 !important;
  margin-top: 5px !important;
}

/* =========================================================
   AJUSTES VISUAIS V112
========================================================= */

.botao-editar-cadastro {
  padding: 11px 18px;
  border: none;
  border-radius: 12px;
  background: #2563eb;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: 0.2s;
}

.botao-editar-cadastro:hover {
  background: #1d4ed8;
}

.status-lista_espera,
.status-reserva {
  background: #e0f2fe;
  color: #075985;
}

.admin-topo-painel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 18px;
}

.admin-cabecalho-principal {
  margin: 0;
}

.admin-acoes {
  align-items: stretch;
}

.admin-acoes .submit-btn {
  height: 100%;
  min-height: 72px;
  padding-inline: 26px;
}

.admin-corrida-status-acoes {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 18px 0;
  padding: 14px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
}

.admin-corrida-status-acoes .admin-status {
  margin: 0;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.admin-corrida-status-acoes .botao-alterar-status-corrida {
  margin: 0;
  min-height: 42px;
}

.botao-alterar-status-corrida.acao-abrir {
  background: #16a34a;
  color: #ffffff;
}

.botao-alterar-status-corrida.acao-abrir:hover {
  background: #15803d;
}

.botao-alterar-status-corrida.acao-encerrar {
  background: #f59e0b;
  color: #111827;
}

.gerenciar-dias {
  margin-top: 18px;
  padding: 0;
  border: none;
  background: transparent;
}

.gerenciar-dias .botao-toggle-dias {
  width: auto;
  margin: 0;
  background: #475569 !important;
}

.dias-corrida-container:not(.hidden) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #f8fafc;
}

.admin-card-footer {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.admin-card-footer .botao-ver-inscritos {
  background: #2563eb;
}

.admin-card-footer .botao-ver-inscritos:hover {
  background: #1d4ed8;
}

.admin-card-footer .botao-editar-corrida {
  background: #64748b;
}

.admin-card-footer .botao-editar-corrida:hover {
  background: #475569;
}

.admin-card-footer .botao-exportar-admin {
  background: #16a34a;
}

.admin-card-footer .botao-exportar-admin:hover {
  background: #15803d;
}

.admin-inscritos-acoes-massa {
  align-items: stretch;
}

@media (max-width: 700px) {
  .acoes-staff {
    width: 100%;
    flex-direction: column;
  }

  .botao-admin,
  .botao-editar-cadastro,
  .botao-sair {
    width: 100%;
  }

  .admin-topo-painel {
    grid-template-columns: 1fr;
  }

  .admin-acoes .submit-btn {
    width: 100%;
    min-height: 54px;
  }

  .admin-corrida-status-acoes {
    flex-direction: column;
    align-items: stretch;
  }

  .admin-corrida-status-acoes .admin-status,
  .admin-corrida-status-acoes .botao-alterar-status-corrida,
  .gerenciar-dias .botao-toggle-dias {
    width: 100%;
    justify-content: center;
  }

  .dias-corrida-container:not(.hidden),
  .admin-card-footer {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   AJUSTE V116 - BOTÕES DOS CARDS DE CORRIDA MAIS COMPACTOS
   ========================================================= */
.admin-card-footer {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 10px !important;
  margin-top: 18px !important;
}

.admin-card-footer .botao-ver-inscritos {
  grid-column: 1 / -1;
}

.admin-card-footer button,
.admin-card-footer .botao-admin-secundario,
.admin-card-footer .delete-btn,
.admin-card-footer .botao-ver-inscritos {
  width: 100% !important;
  min-height: 38px !important;
  padding: 10px 12px !important;
  margin: 0 !important;
  border-radius: 13px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
}

.gerenciar-dias {
  margin-top: 16px !important;
}

.gerenciar-dias .botao-toggle-dias {
  width: 100% !important;
  min-height: 38px !important;
  padding: 10px 12px !important;
  border-radius: 13px !important;
}

@media (max-width: 700px) {
  .admin-card-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 16px !important;
  }

  .admin-card-footer .botao-ver-inscritos {
    grid-column: 1 / -1;
  }

  .admin-card-footer button,
  .admin-card-footer .botao-admin-secundario,
  .admin-card-footer .delete-btn,
  .admin-card-footer .botao-ver-inscritos,
  .gerenciar-dias .botao-toggle-dias {
    min-height: 42px !important;
    padding: 9px 10px !important;
    font-size: 13px !important;
  }
}

/* =========================================================
   AJUSTE V125 - BOTÕES FLUTUANTES: CALENDÁRIO ADMIN + WHATSAPP STAFF
   ========================================================= */
.floating-calendar-btn,
.floating-whatsapp {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9990;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  color: #ffffff;
  font-weight: 800;
  font-size: 14px;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.22);
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.floating-calendar-btn:hover,
.floating-whatsapp:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.28);
  filter: brightness(1.03);
}

.floating-calendar-btn {
  background: linear-gradient(135deg, #2563eb, #1d4ed8);
}

.floating-whatsapp {
  background: linear-gradient(135deg, #22c55e, #16a34a);
}

.floating-whatsapp-icon {
  width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
  font-size: 18px;
  font-weight: 900;
}

.floating-calendar-modal.hidden {
  display: none !important;
}

.floating-calendar-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}

.floating-calendar-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.58);
  backdrop-filter: blur(3px);
}

.floating-calendar-box {
  position: relative;
  z-index: 1;
  width: min(520px, 100%);
  max-height: calc(100vh - 36px);
  overflow: auto;
  padding: 20px;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.35);
}

.floating-calendar-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.floating-calendar-label {
  margin: 0 0 4px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.floating-calendar-header h2 {
  margin: 0;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.15;
}

.floating-calendar-close {
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 999px;
  background: #f1f5f9;
  color: #0f172a;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.floating-calendar-controls {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.floating-calendar-nav-row,
.floating-calendar-selects {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.floating-calendar-selects {
  grid-template-columns: minmax(0, 1fr) 110px;
}

.floating-calendar-controls button,
.floating-calendar-selects select,
.floating-calendar-selects input {
  min-height: 40px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #f8fafc;
  color: #0f172a;
  font-weight: 700;
  font-size: 13px;
}

.floating-calendar-controls button {
  cursor: pointer;
}

.floating-calendar-today {
  background: #dbeafe !important;
  border-color: #bfdbfe !important;
  color: #1d4ed8 !important;
}

.floating-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

.floating-calendar-weekdays {
  margin-top: 14px;
  margin-bottom: 6px;
}

.floating-calendar-weekday {
  padding: 8px 4px;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.floating-calendar-day {
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e2e8f0;
  border-radius: 13px;
  background: #ffffff;
  color: #0f172a;
  font-size: 14px;
  font-weight: 800;
}

button.floating-calendar-day {
  cursor: default;
}

.floating-calendar-day.muted {
  background: #f8fafc;
  color: #cbd5e1;
}

.floating-calendar-day.today {
  background: #2563eb;
  border-color: #2563eb;
  color: #ffffff;
  box-shadow: 0 8px 18px rgba(37, 99, 235, 0.28);
}

@media (max-width: 700px) {
  .floating-calendar-btn,
  .floating-whatsapp {
    right: 14px;
    bottom: 14px;
    min-height: 50px;
    padding: 0 14px;
    font-size: 13px;
  }

  .floating-calendar-modal {
    align-items: flex-end;
    padding: 10px;
  }

  .floating-calendar-box {
    width: 100%;
    max-height: calc(100vh - 20px);
    padding: 16px;
    border-radius: 20px;
  }

  .floating-calendar-header h2 {
    font-size: 21px;
  }

  .floating-calendar-controls,
  .floating-calendar-nav-row {
    gap: 8px;
  }

  .floating-calendar-today {
    width: 100%;
  }

  .floating-calendar-day {
    min-height: 40px;
    border-radius: 11px;
    font-size: 13px;
  }
}

/* =========================================================
   AJUSTES V127 - ADMIN INSCRITOS MAIS COMPACTO E OPERACIONAL
========================================================= */

.pagina-admin .card-staff {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 16px !important;
  padding: 16px 18px !important;
}

.pagina-admin .foto-staff {
  width: 72px !important;
  height: 72px !important;
}

.pagina-admin .dados-staff h2 {
  margin: 2px 0 4px !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
}

.pagina-admin .dados-staff p {
  margin: 2px 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

.pagina-admin .label-card {
  margin-bottom: 2px !important;
  font-size: 11px !important;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.pagina-admin .logout-btn {
  align-self: center;
  min-width: 92px;
  margin: 0 !important;
}

.corrida-progresso-vagas {
  margin-top: 12px;
}

.corrida-progresso-topo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}

.corrida-progresso-topo strong {
  font-size: 12px !important;
}

.corrida-progresso-trilho {
  width: 100%;
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(15,23,42,0.08);
}

.corrida-progresso-barra {
  height: 100%;
  border-radius: inherit;
  transition: width 0.25s ease;
}

.corrida-progresso-barra.baixo { background: #fca5a5; }
.corrida-progresso-barra.medio { background: #facc15; }
.corrida-progresso-barra.alto { background: #60a5fa; }
.corrida-progresso-barra.completo { background: #22c55e; }

.admin-inscritos-resumo.admin-inscritos-resumo-v127 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

.admin-inscritos-resumo-v127 .resumo-dupla {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.admin-inscritos-resumo-v127 .resumo-card {
  min-height: 70px !important;
  padding: 10px 8px !important;
  border-radius: 11px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #e5e7eb !important;
}

.admin-inscritos-resumo-v127 .resumo-card-total,
.admin-inscritos-resumo-v127 .resumo-card-vagas {
  background: #eff6ff !important;
  border-color: #bfdbfe !important;
}

.admin-inscritos-resumo-v127 .resumo-card-confirmados {
  background: #ecfdf5 !important;
  border-color: #bbf7d0 !important;
}

.admin-inscritos-resumo-v127 .resumo-card-pendentes {
  background: #fffbeb !important;
  border-color: #fde68a !important;
}

.admin-inscritos-resumo-v127 .resumo-card-espera {
  background: #eef2ff !important;
  border-color: #c7d2fe !important;
}

.admin-inscritos-resumo-v127 .resumo-card-cancelados {
  background: #fef2f2 !important;
  border-color: #fecaca !important;
}

.admin-inscritos-filtros-v127 {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 12px !important;
  border-radius: 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e5e7eb !important;
}

.admin-inscritos-filtros-v127 .admin-busca-inscrito {
  width: 100%;
  min-height: 42px;
  border-radius: 12px;
}

.admin-filtros-linha {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 190px;
  gap: 10px;
  align-items: end;
}

.admin-toggles-tipo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.admin-toggle-tipo {
  min-height: 42px;
  padding: 9px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 13px;
  background: #ffffff;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
  cursor: pointer;
}

.admin-toggle-tipo.ativo {
  background: #111827;
  border-color: #111827;
  color: #ffffff;
}

.admin-status-select-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.admin-status-select-wrap span {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.admin-status-select {
  min-height: 42px;
  width: 100%;
  padding: 0 12px;
  border: 1px solid #cbd5e1;
  border-radius: 13px;
  background: #ffffff;
  color: #111827;
  font-size: 13px;
  font-weight: 800;
}

.admin-inscritos-acoes-v127 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px !important;
  align-items: center !important;
  padding: 12px !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
}

.admin-selecionar-exibidos {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #111827;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.admin-selecionar-exibidos input {
  width: 18px;
  height: 18px;
}

.admin-inscritos-acoes-v127 .admin-contador-selecao {
  justify-content: flex-end;
  font-size: 12px;
  font-weight: 800;
  color: #64748b;
}

.admin-inscritos-acoes-v127 .botao-confirmar-selecionados {
  min-height: 42px;
  background: #16a34a;
  white-space: nowrap;
}

.admin-inscritos-acoes-v127 .botao-confirmar-selecionados:hover {
  background: #15803d;
}

@media (max-width: 700px) {
  .pagina-admin .card-staff {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 14px !important;
  }

  .pagina-admin .foto-staff {
    width: 58px !important;
    height: 58px !important;
  }

  .pagina-admin .dados-staff h2 {
    font-size: 17px !important;
  }

  .pagina-admin .logout-btn {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 40px;
  }

  .admin-filtros-linha,
  .admin-inscritos-acoes-v127 {
    grid-template-columns: 1fr !important;
  }

  .admin-toggles-tipo {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .admin-toggle-tipo {
    min-height: 40px;
    padding: 8px 7px;
    font-size: 12px;
  }

  .admin-inscritos-acoes-v127 .admin-contador-selecao {
    justify-content: flex-start;
  }
}

/* =========================================================
   AJUSTES V128 - PAGAMENTO PIX E CARD DE CORRIDA MAIS LIMPO
========================================================= */

.corrida-status-card {
  position: relative;
}

.corrida-status-topo-linha {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}

.corrida-status-topo-linha strong,
.corrida-status-topo-linha span {
  display: block;
}

.botao-status-compacto,
.botao-alterar-status-corrida.botao-status-compacto {
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
  margin-top: 14px !important;
}

.admin-card-footer-v128 .botao-gerar-pagamento-pix,
.admin-card-footer-v128 .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
}

.admin-card-footer-v128 .botao-gerar-pagamento-pix {
  background: #0f766e !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-gerar-pagamento-pix:hover {
  background: #115e59 !important;
}

.admin-card-footer-v128 button,
.admin-card-footer-v128 .botao-admin-secundario,
.admin-card-footer-v128 .delete-btn,
.admin-card-footer-v128 .botao-ver-inscritos {
  min-height: 41px !important;
  padding: 9px 11px !important;
  font-size: 13px !important;
}

@media (max-width: 700px) {
  .admin-card-footer-v128 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .admin-card-footer-v128 .botao-gerar-pagamento-pix,
  .admin-card-footer-v128 .botao-ver-inscritos {
    grid-column: 1 / -1 !important;
  }

  .admin-card-footer-v128 button,
  .admin-card-footer-v128 .botao-admin-secundario,
  .admin-card-footer-v128 .delete-btn,
  .admin-card-footer-v128 .botao-ver-inscritos {
    min-height: 39px !important;
    padding: 8px 9px !important;
    font-size: 12.5px !important;
  }
}

/* =========================================================
   AJUSTES V130 - ADMIN: QR LOCAL, STATUS MAIS CLARO E AÇÕES
========================================================= */

.admin-acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.admin-acoes .btn-ver-painel-staff {
  width: auto !important;
  min-height: 42px;
  padding: 10px 14px !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: none !important;
}

.admin-acoes .btn-ver-painel-staff:hover {
  background: #e2e8f0 !important;
}

.corrida-status-card.aberta,
.card-corrida-admin .corrida-status-card.aberta {
  background: #ecfdf5 !important;
  border-color: #bbf7d0 !important;
  color: #14532d !important;
}

.corrida-status-card.encerrada,
.card-corrida-admin .corrida-status-card.encerrada {
  background: #f8fafc !important;
  border-color: #cbd5e1 !important;
  color: #334155 !important;
}

.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.16) !important;
  color: #0f172a !important;
  font-size: 17px !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-encerrar {
  background: #fff7ed !important;
  border-color: #fed7aa !important;
  color: #7c2d12 !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-abrir {
  background: #ecfdf5 !important;
  border-color: #86efac !important;
  color: #14532d !important;
}

.botao-alterar-status-corrida.botao-status-compacto:hover {
  transform: translateY(-1px);
  filter: brightness(0.98);
}

.corrida-vagas-texto,
.corrida-progresso-percentual {
  transition: color 0.2s ease;
}

@media (max-width: 700px) {
  .admin-acoes {
    display: grid;
    grid-template-columns: 1fr;
  }

  .admin-acoes .btn-ver-painel-staff,
  .admin-acoes .btn-admin {
    width: 100% !important;
  }
}


/* =========================================================
   AJUSTES V131 - CARD ADMIN LOGADO E VAGAS ATUALIZADAS
========================================================= */

.pagina-admin .card-staff {
  grid-template-columns: auto minmax(0, 1fr) minmax(230px, auto) !important;
}

.admin-card-acoes-logado {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  align-items: center;
  min-width: 250px;
}

.admin-card-acao,
.pagina-admin .admin-card-acao.logout-btn {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border-radius: 12px !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: none !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: center !important;
  cursor: pointer;
}

.admin-card-acao-perfil,
.admin-card-acao-corridas {
  background: #f8fafc !important;
  color: #0f172a !important;
}

.admin-card-acao-perfil:hover,
.admin-card-acao-corridas:hover {
  background: #e2e8f0 !important;
}

.pagina-admin .admin-card-acao-sair.logout-btn {
  background: #fee2e2 !important;
  border-color: #fecaca !important;
  color: #991b1b !important;
}

.pagina-admin .admin-card-acao-sair.logout-btn:hover {
  background: #fecaca !important;
}

@media (max-width: 760px) {
  .pagina-admin .card-staff {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  .admin-card-acoes-logado {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .admin-card-acao,
  .pagina-admin .admin-card-acao.logout-btn {
    min-height: 36px !important;
    padding: 8px 6px !important;
    font-size: 12px !important;
  }
}

.pagina-admin .admin-card-acoes-logado .logout-btn {
  grid-column: auto !important;
}

@media (max-width: 700px) {
  .pagina-admin .admin-card-acoes-logado .logout-btn {
    grid-column: auto !important;
    width: 100% !important;
  }
}

/* =========================================================
   AJUSTES V132 - CARD LOGADO PADRÃO EM ADMIN/CORRIDAS/CADASTRO
========================================================= */
.pagina-corridas .card-staff,
.card-staff-cadastro,
.pagina-admin .card-staff {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) minmax(230px, auto) !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 16px 18px !important;
}

.pagina-corridas .foto-staff,
.card-staff-cadastro .foto-staff,
.pagina-admin .foto-staff {
  width: 72px !important;
  height: 72px !important;
}

.pagina-corridas .dados-staff h2,
.card-staff-cadastro .dados-staff h2,
.pagina-admin .dados-staff h2 {
  margin: 2px 0 4px !important;
  font-size: 20px !important;
  line-height: 1.15 !important;
}

.pagina-corridas .dados-staff p,
.card-staff-cadastro .dados-staff p,
.pagina-admin .dados-staff p {
  margin: 2px 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

.pagina-corridas .acoes-staff.admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.pagina-admin .admin-card-acoes-logado {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  align-items: center;
  min-width: 250px;
  width: auto;
}

.card-staff-cadastro {
  margin-bottom: 20px;
}

.pagina-corridas .admin-card-acoes-logado .logout-btn,
.card-staff-cadastro .admin-card-acoes-logado .logout-btn,
.pagina-admin .admin-card-acoes-logado .logout-btn {
  grid-column: auto !important;
  width: 100% !important;
}

@media (max-width: 760px) {
  .pagina-corridas .card-staff,
  .card-staff-cadastro,
  .pagina-admin .card-staff {
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 12px !important;
    padding: 14px !important;
  }

  .pagina-corridas .foto-staff,
  .card-staff-cadastro .foto-staff,
  .pagina-admin .foto-staff {
    width: 58px !important;
    height: 58px !important;
  }

  .pagina-corridas .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .pagina-admin .admin-card-acoes-logado {
    grid-column: 1 / -1;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .pagina-corridas .admin-card-acao,
  .card-staff-cadastro .admin-card-acao,
  .pagina-admin .admin-card-acao,
  .pagina-corridas .admin-card-acao.logout-btn,
  .card-staff-cadastro .admin-card-acao.logout-btn,
  .pagina-admin .admin-card-acao.logout-btn {
    min-height: 36px !important;
    padding: 8px 6px !important;
    font-size: 12px !important;
  }
}

@media (max-width: 430px) {
  .pagina-corridas .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .pagina-admin .admin-card-acoes-logado {
    grid-template-columns: 1fr;
  }
}

/* v133 - WhatsApp operacional */
.botao-whatsapp-inscrito {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 8px 10px;
  border: none;
  border-radius: 9px;
  background: #dcfce7;
  color: #166534;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.1;
  text-decoration: none;
  cursor: pointer;
}

.botao-whatsapp-inscrito:hover {
  background: #bbf7d0;
}

.botao-whatsapp-inscrito:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

/* =========================================================
   AJUSTES V135 - ADMIN: INSCRITOS, STATUS E EDIÇÃO DE DIAS
========================================================= */

.card-corrida-admin .corrida-status-card.aberta {
  background: #ecfdf5 !important;
  border: 1px solid #22c55e !important;
  color: #14532d !important;
}

.card-corrida-admin .corrida-status-card.encerrada {
  background: #fef2f2 !important;
  border: 1px solid #ef4444 !important;
  color: #7f1d1d !important;
}

.corrida-status-topo-linha > div {
  min-width: 0;
}

.corrida-vagas-texto {
  margin-top: 3px;
  font-size: 12.5px;
  line-height: 1.25;
}

.corrida-inscritos-texto {
  font-weight: 700;
}

.corrida-confirmados-texto {
  opacity: 0.88;
}

.corrida-progresso-vagas + .corrida-progresso-vagas {
  margin-top: 9px;
}

.corrida-progresso-inscritos .corrida-progresso-barra.baixo {
  background: #38bdf8;
}

.corrida-progresso-inscritos .corrida-progresso-barra.medio {
  background: #0ea5e9;
}

.corrida-progresso-inscritos .corrida-progresso-barra.alto,
.corrida-progresso-inscritos .corrida-progresso-barra.completo {
  background: #0284c7;
}

.botao-alterar-status-corrida.botao-status-compacto:disabled {
  font-size: 18px !important;
  opacity: 0.75;
}

.dia-corrida-acoes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.dia-corrida-acoes button {
  margin-top: 0 !important;
  min-height: 38px;
}

.dia-corrida-acoes .botao-editar-dia {
  background: #2563eb !important;
  color: #ffffff !important;
}

.dia-corrida-acoes .botao-editar-dia:hover {
  background: #1d4ed8 !important;
}

.dia-corrida-acoes .delete-btn {
  background: #dc2626 !important;
  color: #ffffff !important;
}

@media (max-width: 700px) {
  .corrida-status-topo-linha {
    grid-template-columns: minmax(0, 1fr) 34px;
  }

  .corrida-vagas-texto {
    font-size: 12px;
  }
}

/* =========================================================
   AJUSTES V136 - ADMIN MAIS COMPACTO + BOTÕES COLORIDOS
========================================================= */

/* Botões do card logado: padrão mais forte e consistente */
.pagina-corridas .admin-card-acao,
.card-staff-cadastro .admin-card-acao,
.pagina-admin .admin-card-acao,
.pagina-corridas .admin-card-acao.logout-btn,
.card-staff-cadastro .admin-card-acao.logout-btn,
.pagina-admin .admin-card-acao.logout-btn {
  border: none !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.10) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease !important;
}

.pagina-corridas .admin-card-acao:hover,
.card-staff-cadastro .admin-card-acao:hover,
.pagina-admin .admin-card-acao:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.14) !important;
  filter: brightness(0.98);
}

/* Staff / página corridas */
.pagina-corridas .admin-card-acao-corridas {
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
  color: #ffffff !important;
}

.pagina-corridas .admin-card-acao-perfil,
.card-staff-cadastro .admin-card-acao-perfil {
  background: linear-gradient(135deg, #2563eb, #60a5fa) !important;
  color: #ffffff !important;
}

.pagina-corridas .admin-card-acao-sair.logout-btn,
.card-staff-cadastro .admin-card-acao-sair.logout-btn {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
  color: #ffffff !important;
}

/* Admin: diferenciação azul + roxo */
.pagina-admin .admin-card-acao-perfil {
  background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
  color: #ffffff !important;
}

.pagina-admin .admin-card-acao-corridas {
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
  color: #ffffff !important;
}

.pagina-admin .admin-card-acao-sair.logout-btn {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
  border: none !important;
  color: #ffffff !important;
}

/* Mantém botões do card logado em colunas também no mobile estreito */
@media (max-width: 430px) {
  .pagina-corridas .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .pagina-admin .admin-card-acoes-logado {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

/* Hero único do admin */
.admin-hero-gerenciamento {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  background:
    radial-gradient(circle at top right, rgba(168, 85, 247, 0.35), transparent 34%),
    linear-gradient(135deg, #111827 0%, #1e1b4b 52%, #312e81 100%) !important;
  border: 1px solid rgba(129, 140, 248, 0.35);
}

.admin-hero-gerenciamento h1 {
  margin: 0 0 8px;
}

.admin-eyebrow {
  margin: 0 0 6px !important;
  font-size: 12px !important;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #c4b5fd;
  opacity: 1 !important;
}

.admin-hero-btn {
  width: auto !important;
  min-width: 180px;
  margin: 0 !important;
  padding: 15px 22px !important;
  border: none !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #7c3aed, #2563eb) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 32px rgba(37, 99, 235, 0.28);
}

.admin-hero-btn:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}

.secao-corridas-admin {
  margin-top: 0;
}

@media (max-width: 700px) {
  .admin-hero-gerenciamento {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .admin-hero-btn {
    width: 100% !important;
    min-width: 0;
    min-height: 52px;
  }
}

/* =========================================================
   AJUSTES V137 - POLIMENTO VISUAL COMPLETO DO ADMIN
========================================================= */

.pagina-admin {
  gap: 20px;
}

.pagina-admin .card-staff {
  border: 1px solid rgba(124, 58, 237, 0.12) !important;
  box-shadow: 0 18px 48px rgba(30, 27, 75, 0.10) !important;
}

.pagina-admin .label-card {
  color: #6d28d9 !important;
}

.pagina-admin .foto-staff {
  border: 3px solid #ede9fe !important;
  box-shadow: 0 10px 24px rgba(76, 29, 149, 0.15) !important;
}

.admin-hero-gerenciamento {
  position: relative;
  overflow: hidden;
  box-shadow: 0 22px 50px rgba(30, 27, 75, 0.26) !important;
}

.admin-hero-gerenciamento::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -90px;
  width: 220px;
  height: 220px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  pointer-events: none;
}

.admin-hero-texto,
.admin-hero-btn {
  position: relative;
  z-index: 1;
}

.admin-hero-btn {
  box-shadow: 0 16px 34px rgba(124, 58, 237, 0.34) !important;
}

.form-admin {
  border: 1px solid rgba(124, 58, 237, 0.14);
  border-radius: 26px;
  background: linear-gradient(180deg, #ffffff 0%, #fafaff 100%);
  box-shadow: 0 18px 44px rgba(30, 27, 75, 0.10);
  overflow: hidden;
}

.form-admin .form-area {
  background: transparent !important;
  box-shadow: none !important;
}

.form-admin .section-title {
  color: #1e1b4b !important;
}

.form-admin .section-title::after {
  content: "";
  display: block;
  width: 44px;
  height: 4px;
  margin-top: 8px;
  border-radius: 999px;
  background: linear-gradient(135deg, #7c3aed, #2563eb);
}

.form-admin label,
.form-admin .field label {
  color: #334155 !important;
}

.form-admin input,
.form-admin select,
.form-admin textarea,
.form-admin .field input,
.form-admin .field select,
.form-admin .field textarea {
  border-color: #dbe3f0 !important;
  background: #ffffff !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

.form-admin input:focus,
.form-admin select:focus,
.form-admin textarea:focus,
.form-admin .field input:focus,
.form-admin .field select:focus,
.form-admin .field textarea:focus {
  border-color: #7c3aed !important;
  box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12) !important;
  outline: none !important;
}

.preview-dias-corrida {
  border-radius: 18px !important;
  background: #f8fafc !important;
  border: 1px dashed #c4b5fd !important;
}

.card-corrida-admin {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(124, 58, 237, 0.10);
  background: linear-gradient(180deg, #ffffff 0%, #fbfbff 100%) !important;
  box-shadow: 0 18px 46px rgba(30, 27, 75, 0.10) !important;
}

.card-corrida-admin::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, #7c3aed, #2563eb, #14b8a6);
}

.card-corrida-admin h3 {
  color: #0f172a;
  letter-spacing: -0.03em;
}

.card-corrida-admin p {
  color: #475569;
}

.card-corrida-admin p strong {
  color: #111827;
}

.card-corrida-admin .corrida-status-card.aberta {
  background: linear-gradient(180deg, #ecfdf5 0%, #f0fdf4 100%) !important;
  border-color: #86efac !important;
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.12) !important;
}

.card-corrida-admin .corrida-status-card.encerrada {
  background: linear-gradient(180deg, #fef2f2 0%, #fff7f7 100%) !important;
  border-color: #fca5a5 !important;
  box-shadow: inset 0 0 0 1px rgba(239, 68, 68, 0.10) !important;
}

.botao-alterar-status-corrida.botao-status-compacto {
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12) !important;
}

.dias-corrida-container:not(.hidden) {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
  border-color: #e2e8f0 !important;
}

.dia-corrida-card {
  border: 1px solid #e2e8f0 !important;
  background: #ffffff !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
}

.gerenciar-dias .botao-toggle-dias {
  background: linear-gradient(135deg, #334155, #475569) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(51, 65, 85, 0.16) !important;
}

.admin-card-footer-v128 .botao-editar-corrida {
  background: linear-gradient(135deg, #4f46e5, #6366f1) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-excluir-corrida,
.admin-card-footer-v128 .delete-btn {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-exportar-pdf {
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-exportar-excel {
  background: linear-gradient(135deg, #15803d, #22c55e) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-gerar-pagamento-pix {
  background: linear-gradient(135deg, #7c2d12, #f97316) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 .botao-ver-inscritos {
  background: linear-gradient(135deg, #1d4ed8, #2563eb) !important;
  color: #ffffff !important;
}

.admin-card-footer-v128 button,
.admin-card-footer-v128 .botao-admin-secundario,
.admin-card-footer-v128 .delete-btn,
.admin-card-footer-v128 .botao-ver-inscritos,
.botao-admin-secundario,
.botao-admin-batch,
.admin-filtro-inscrito,
.admin-toggle-tipo,
.botao-confirmar-inscrito,
.botao-cancelar-inscrito,
.linha-inscrito-acoes button,
.botao-whatsapp-inscrito {
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.10) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease !important;
}

.admin-card-footer-v128 button:hover,
.admin-card-footer-v128 .botao-admin-secundario:hover,
.admin-card-footer-v128 .delete-btn:hover,
.admin-card-footer-v128 .botao-ver-inscritos:hover,
.botao-admin-secundario:hover,
.botao-admin-batch:hover,
.admin-filtro-inscrito:hover,
.admin-toggle-tipo:hover,
.botao-confirmar-inscrito:hover,
.botao-cancelar-inscrito:hover,
.linha-inscrito-acoes button:hover,
.botao-whatsapp-inscrito:hover {
  transform: translateY(-1px);
  box-shadow: 0 11px 24px rgba(15, 23, 42, 0.14) !important;
  filter: brightness(1.02);
}

.lista-inscritos-admin {
  border-top-color: #e0e7ff !important;
}

.admin-inscritos-painel {
  padding: 14px;
  border-radius: 22px;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  border: 1px solid #e0e7ff;
}

.admin-inscritos-resumo-v127 .resumo-card {
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.055) !important;
}

.admin-inscritos-resumo-v127 .resumo-card-total,
.admin-inscritos-resumo-v127 .resumo-card-vagas {
  background: linear-gradient(180deg, #eff6ff 0%, #ffffff 100%) !important;
  border-color: #bfdbfe !important;
}

.admin-inscritos-resumo-v127 .resumo-card-confirmados {
  background: linear-gradient(180deg, #ecfdf5 0%, #ffffff 100%) !important;
}

.admin-inscritos-resumo-v127 .resumo-card-pendentes {
  background: linear-gradient(180deg, #fffbeb 0%, #ffffff 100%) !important;
}

.admin-inscritos-resumo-v127 .resumo-card-espera {
  background: linear-gradient(180deg, #eef2ff 0%, #ffffff 100%) !important;
}

.admin-inscritos-resumo-v127 .resumo-card-cancelados {
  background: linear-gradient(180deg, #fef2f2 0%, #ffffff 100%) !important;
}

.admin-inscritos-filtros-v127,
.admin-inscritos-acoes-v127 {
  border-color: #e0e7ff !important;
  box-shadow: 0 10px 24px rgba(30, 27, 75, 0.06) !important;
}

.admin-toggle-tipo.ativo,
.admin-filtro-inscrito.ativo {
  background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
  border-color: transparent !important;
  color: #ffffff !important;
}

.admin-status-select,
.admin-busca-inscrito {
  border-color: #dbe3f0 !important;
}

.admin-status-select:focus,
.admin-busca-inscrito:focus {
  border-color: #7c3aed !important;
  box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.11) !important;
  outline: none !important;
}

.linha-inscrito-admin {
  border-color: #e2e8f0 !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.045) !important;
}

.linha-inscrito-admin:hover {
  border-color: #c4b5fd !important;
}

.botao-expandir-inscrito {
  background: #eef2ff !important;
  color: #3730a3 !important;
}

.linha-inscrito-detalhes {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
}

.foto-inscrito-admin {
  border-color: #c4b5fd !important;
  box-shadow: 0 8px 20px rgba(76, 29, 149, 0.10) !important;
}

.botao-confirmar-inscrito {
  background: linear-gradient(135deg, #16a34a, #22c55e) !important;
  color: #ffffff !important;
}

.botao-cancelar-inscrito {
  background: linear-gradient(135deg, #dc2626, #ef4444) !important;
  color: #ffffff !important;
}

.botao-lista-espera-inscrito {
  background: linear-gradient(135deg, #2563eb, #60a5fa) !important;
  color: #ffffff !important;
}

.botao-whatsapp-inscrito {
  background: linear-gradient(135deg, #16a34a, #22c55e) !important;
  color: #ffffff !important;
}

.floating-calendar-btn {
  background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
  box-shadow: 0 16px 32px rgba(79, 70, 229, 0.28) !important;
}

@media (max-width: 700px) {
  .card-corrida-admin {
    padding: 22px 18px !important;
    border-radius: 24px !important;
  }

  .admin-inscritos-painel {
    padding: 10px;
    border-radius: 18px;
  }

  .admin-card-footer-v128 button,
  .admin-card-footer-v128 .botao-admin-secundario,
  .admin-card-footer-v128 .delete-btn,
  .admin-card-footer-v128 .botao-ver-inscritos {
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.10) !important;
  }
}

/* v138 - polimento visual geral */
:root{
  --admin-indigo:#4f46e5;
  --admin-purple:#7c3aed;
  --admin-cyan:#0891b2;
  --soft-border:#dbe3ef;
}
body{background:linear-gradient(180deg,#f7f8fc 0%,#eef2f8 42%,#f8fafc 100%);}
.pagina-admin,.container{animation:fadeInSistema .28s ease-out;}
@keyframes fadeInSistema{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.card-staff{border:1px solid rgba(148,163,184,.22);box-shadow:0 22px 55px rgba(15,23,42,.10);}
.admin-card-acoes-logado{gap:10px;}
.admin-card-acao{border:0!important;color:#fff!important;font-weight:800;box-shadow:0 10px 22px rgba(15,23,42,.12);transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;}
.admin-card-acao:hover{transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 14px 30px rgba(15,23,42,.16);}
.admin-card-acao-perfil{background:linear-gradient(135deg,#2563eb,#06b6d4)!important;}
.admin-card-acao-corridas{background:linear-gradient(135deg,#0f766e,#14b8a6)!important;}
.admin-card-acao-sair,.logout-btn{background:linear-gradient(135deg,#ef4444,#b91c1c)!important;color:#fff!important;}
.pagina-admin .admin-card-acao-perfil{background:linear-gradient(135deg,var(--admin-indigo),var(--admin-purple))!important;}
.pagina-admin .admin-card-acao-corridas{background:linear-gradient(135deg,#0e7490,#2563eb)!important;}
.admin-hero-gerenciamento{background:radial-gradient(circle at top right,rgba(168,85,247,.34),transparent 34%),linear-gradient(135deg,#101827 0%,#1e1b4b 46%,#312e81 100%)!important;box-shadow:0 22px 48px rgba(49,46,129,.22);}
.admin-hero-btn,.btn-admin{background:linear-gradient(135deg,#22c55e,#0ea5e9)!important;border:0!important;box-shadow:0 16px 32px rgba(14,165,233,.25);}
.form-area,.form-admin .form-area,.card-corrida-admin,.login-card{border:1px solid rgba(148,163,184,.22);box-shadow:0 20px 50px rgba(15,23,42,.09);}
.form-area input,.form-area select,.form-area textarea,.login-card input{background:#f8fafc;border:1px solid #dbe3ef!important;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;}
.form-area input:focus,.form-area select:focus,.form-area textarea:focus,.login-card input:focus{outline:none;border-color:#6366f1!important;box-shadow:0 0 0 4px rgba(99,102,241,.12);background:#fff;}
.field-checkbox-admin{display:flex;align-items:stretch;}
.checkbox-admin-card{width:100%;display:flex;gap:12px;align-items:flex-start;padding:15px 16px;border-radius:18px;background:linear-gradient(135deg,#f8fafc,#eef2ff);border:1px solid #c7d2fe;box-shadow:0 10px 24px rgba(79,70,229,.08);cursor:pointer;}
.checkbox-admin-card input{width:22px;height:22px;margin-top:2px;accent-color:#4f46e5;flex:0 0 auto;}
.checkbox-admin-card strong{display:block;color:#172033;font-size:15px;line-height:1.25;}
.checkbox-admin-card small{display:block;margin-top:3px;color:#64748b;font-size:12px;line-height:1.35;}
.checkbox-admin-card-compacto{min-height:100%;align-items:center;}
.field-ate-ultimo{align-self:end;}
.checkbox-admin-linha{display:flex;align-items:center;gap:10px;margin-top:14px;}
.botao-admin-secundario,.botao-ver-inscritos,.botao-toggle-dias{border:0!important;background:linear-gradient(135deg,#eef2ff,#e0f2fe)!important;color:#1e3a8a!important;font-weight:800;box-shadow:0 10px 22px rgba(37,99,235,.10);}
.botao-ver-inscritos{background:linear-gradient(135deg,#2563eb,#4f46e5)!important;color:#fff!important;}
.delete-btn{background:linear-gradient(135deg,#fee2e2,#fecaca)!important;color:#991b1b!important;border:1px solid #fecaca!important;}
.card-corrida-admin{background:linear-gradient(180deg,#ffffff,#fbfdff);border-radius:28px;}
.card-corrida-admin h3{letter-spacing:-.03em;}
.badge-tenis{display:inline-flex;align-items:center;gap:6px;margin:0 0 14px;padding:7px 11px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:13px;font-weight:800;border:1px solid #c7d2fe;}
.corrida-status-card.aberta{background:linear-gradient(135deg,#ecfdf5,#f0fdfa)!important;border:1px solid #86efac!important;}
.corrida-status-card.encerrada{background:linear-gradient(135deg,#fef2f2,#fff7ed)!important;border:1px solid #fca5a5!important;}
.file-preview-foto img{width:78px!important;height:78px!important;border-radius:22px!important;object-fit:cover;object-position:center;}
.helper-foto{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:10px 12px;margin:8px 0;color:#475569;line-height:1.4;}
.label-obrigatorio{font-size:12px;color:#2563eb;font-weight:800;}
#calcado{min-height:48px;}
.login-card h1,.header h1,.cabecalho-corridas h1{letter-spacing:-.04em;}
@media (max-width:720px){.admin-card-acoes-logado{grid-template-columns:repeat(3,1fr)!important;display:grid!important}.admin-card-acao{font-size:13px;padding:13px 8px!important}.admin-hero-gerenciamento{gap:18px}.checkbox-admin-card{border-radius:16px}.field-ate-ultimo{align-self:stretch}}

/* v139 - gestão de dias e checkboxes inline */
.checkbox-admin-card,
.checkbox-admin-inline {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}

.checkbox-admin-card input[type="checkbox"],
.checkbox-admin-inline input[type="checkbox"],
#novo-dia-ate-ultimo,
#corrida-patrocinador-tenis {
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 18px !important;
  accent-color: #4f46e5;
}

.checkbox-admin-card span,
.checkbox-admin-inline span {
  flex: 1 1 auto;
  min-width: 0;
}

.field-ate-ultimo-inline {
  align-self: end;
}

.dia-corrida-card-editavel {
  border: 1px solid rgba(99, 102, 241, .18) !important;
  background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
}

.dia-editavel-topo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

.badge-dia-existente,
.badge-dia-novo {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 800;
}

.badge-dia-existente {
  color: #3730a3;
  background: #eef2ff;
  border: 1px solid #c7d2fe;
}

.badge-dia-novo {
  color: #166534;
  background: #dcfce7;
  border: 1px solid #bbf7d0;
}

.grid-dia-editavel {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.dia-corrida-acoes-editavel {
  margin-top: 14px;
  display: flex;
  justify-content: flex-end;
}

@media (max-width: 720px) {
  .grid-dia-editavel {
    grid-template-columns: 1fr;
  }

  .field-ate-ultimo-inline {
    align-self: stretch;
  }
}


/* v141 - correção mobile: checkbox inline e cadastro de novo dia recolhido na edição */
.novo-dia-form-bloco.hidden,
.botao-toggle-novo-dia.hidden {
  display: none !important;
}

.botao-toggle-novo-dia {
  width: 100%;
  margin: 8px 0 16px;
}

.field-checkbox-admin {
  min-width: 0;
}

.field-checkbox-admin .checkbox-admin-card,
.field-checkbox-admin .checkbox-admin-inline {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px;
  box-sizing: border-box;
  text-align: left;
}

.field-checkbox-admin .checkbox-admin-card input[type="checkbox"],
.field-checkbox-admin .checkbox-admin-inline input[type="checkbox"],
#novo-dia-ate-ultimo,
#corrida-patrocinador-tenis {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  display: inline-block !important;
  position: static !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.field-checkbox-admin .checkbox-admin-card span,
.field-checkbox-admin .checkbox-admin-inline span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

@media (max-width: 720px) {
  .field-checkbox-admin .checkbox-admin-card,
  .field-checkbox-admin .checkbox-admin-inline {
    align-items: center !important;
    padding: 14px 16px !important;
  }

  .field-checkbox-admin .checkbox-admin-card strong,
  .field-checkbox-admin .checkbox-admin-inline strong {
    font-size: 15px !important;
    line-height: 1.25 !important;
  }
}

/* v142 - painel de relatórios e correção definitiva dos checkboxes mobile */
.relatorios-admin {
  width: 100%;
  display: block;
}

.botao-relatorios-toggle {
  width: 100%;
}

.relatorios-painel {
  width: 100%;
  margin-top: 10px;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid #dbe4ef;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 14px 30px rgba(15, 23, 42, .08);
}

.relatorios-painel.hidden {
  display: none !important;
}

.relatorios-secao + .relatorios-secao {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #e5e7eb;
}

.relatorios-label {
  display: block;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #64748b;
}

.relatorios-formato-toggle {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.relatorio-formato-opcao,
.relatorio-acao {
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #172033;
  border-radius: 14px;
  padding: 11px 12px;
  font-weight: 800;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
}

.relatorio-formato-opcao:hover,
.relatorio-acao:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(15, 23, 42, .10);
}

.relatorio-formato-opcao.ativo {
  border-color: #4f46e5;
  background: linear-gradient(135deg, #eef2ff, #e0e7ff);
  color: #312e81;
  box-shadow: inset 0 0 0 1px rgba(79, 70, 229, .25);
}

.relatorios-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.relatorio-acao:disabled {
  opacity: .65;
  cursor: wait;
  transform: none;
}

.relatorio-feedback {
  display: none;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 700;
}

.relatorio-feedback.ativo {
  display: block;
}

.relatorio-feedback.info {
  color: #334155;
  background: #f1f5f9;
}

.relatorio-feedback.sucesso {
  color: #166534;
  background: #dcfce7;
}

.relatorio-feedback.erro {
  color: #991b1b;
  background: #fee2e2;
}

.field-checkbox-admin,
.field-ate-ultimo,
.field-ate-ultimo-inline {
  display: block !important;
  align-self: stretch !important;
}

.field-checkbox-admin > label.checkbox-admin-card,
.field-checkbox-admin > label.checkbox-admin-inline,
.checkbox-admin-card.checkbox-admin-card-compacto,
.checkbox-admin-card.checkbox-admin-inline {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  box-sizing: border-box !important;
}

.field-checkbox-admin > label.checkbox-admin-card input[type="checkbox"],
.field-checkbox-admin > label.checkbox-admin-inline input[type="checkbox"],
.checkbox-admin-card.checkbox-admin-inline input[type="checkbox"],
#novo-dia-ate-ultimo,
#corrida-patrocinador-tenis {
  position: static !important;
  display: inline-block !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  width: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.field-checkbox-admin > label.checkbox-admin-card span,
.field-checkbox-admin > label.checkbox-admin-inline span,
.checkbox-admin-card.checkbox-admin-inline span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  text-align: left !important;
}

@media (max-width: 720px) {
  .relatorios-grid {
    grid-template-columns: 1fr;
  }

  .relatorio-formato-opcao,
  .relatorio-acao {
    padding: 12px 10px;
    font-size: 14px;
  }

  .field-checkbox-admin > label.checkbox-admin-card,
  .field-checkbox-admin > label.checkbox-admin-inline,
  .checkbox-admin-card.checkbox-admin-card-compacto,
  .checkbox-admin-card.checkbox-admin-inline {
    flex-direction: row !important;
    align-items: center !important;
    padding: 14px 16px !important;
  }
}

/* v143 - acabamento relatórios, checkbox mobile e atalhos flutuantes */
.admin-card-footer .relatorios-admin,
.admin-card-footer-v128 .relatorios-admin {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-top: 4px !important;
}

.botao-relatorios-toggle {
  width: 100% !important;
  min-height: 56px !important;
  border: none !important;
  border-radius: 18px !important;
  padding: 15px 18px !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  font-size: 15px !important;
  background: linear-gradient(135deg, #4f46e5 0%, #2563eb 55%, #0891b2 100%) !important;
  box-shadow: 0 14px 30px rgba(37, 99, 235, .24) !important;
}

.relatorios-painel {
  margin-top: 6px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  border: 1px solid rgba(99, 102, 241, .18) !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  box-shadow: 0 16px 36px rgba(15, 23, 42, .10) !important;
}

.relatorios-label {
  margin-bottom: 10px !important;
  color: #334155 !important;
  font-size: 13px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.relatorios-formato-toggle,
.relatorios-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.relatorio-formato-opcao,
.relatorio-acao {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  min-height: 52px !important;
  padding: 12px 10px !important;
  border: 1px solid #dbe4f0 !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  color: #172033 !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .06) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.relatorio-formato-opcao.ativo {
  color: #ffffff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%) !important;
  box-shadow: 0 12px 26px rgba(79, 70, 229, .26) !important;
}

.relatorio-acao:hover,
.relatorio-formato-opcao:hover {
  transform: translateY(-1px) !important;
  box-shadow: none !important;
}

.relatorio-feedback.ativo {
  font-size: 13px !important;
  line-height: 1.35 !important;
}

.form-admin .field-checkbox-admin,
.form-admin .field-ate-ultimo,
.grid .field-checkbox-admin,
.grid-dia-editavel .field-checkbox-admin {
  display: block !important;
  width: 100% !important;
}

.form-admin .field-checkbox-admin > label.checkbox-admin-card,
.form-admin .field-checkbox-admin > label.checkbox-admin-inline,
.grid .field-checkbox-admin > label.checkbox-admin-card,
.grid-dia-editavel .field-checkbox-admin > label.checkbox-admin-card,
.field-checkbox-admin > label.checkbox-admin-card.checkbox-admin-inline {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 12px !important;
  row-gap: 0 !important;
  width: 100% !important;
  min-height: 64px !important;
  padding: 14px 16px !important;
  box-sizing: border-box !important;
}

.form-admin .field-checkbox-admin > label.checkbox-admin-card > input[type="checkbox"],
.form-admin .field-checkbox-admin > label.checkbox-admin-inline > input[type="checkbox"],
.grid .field-checkbox-admin > label.checkbox-admin-card > input[type="checkbox"],
.grid-dia-editavel .field-checkbox-admin > label.checkbox-admin-card > input[type="checkbox"],
.field-checkbox-admin > label.checkbox-admin-card.checkbox-admin-inline > input[type="checkbox"],
#corrida-patrocinador-tenis,
#novo-dia-ate-ultimo {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: static !important;
  display: block !important;
  width: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  height: 22px !important;
  min-height: 22px !important;
  max-height: 22px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 5px !important;
  flex: none !important;
  transform: none !important;
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
}

.form-admin .field-checkbox-admin > label.checkbox-admin-card > span,
.form-admin .field-checkbox-admin > label.checkbox-admin-inline > span,
.grid .field-checkbox-admin > label.checkbox-admin-card > span,
.grid-dia-editavel .field-checkbox-admin > label.checkbox-admin-card > span,
.field-checkbox-admin > label.checkbox-admin-card.checkbox-admin-inline > span {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: block !important;
  margin: 0 !important;
  min-width: 0 !important;
}

.field-checkbox-admin > label.checkbox-admin-card.checkbox-admin-inline strong {
  display: block !important;
  margin: 0 !important;
  line-height: 1.25 !important;
}

.floating-calendar-btn,
.floating-yescom-btn {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 999px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 23px !important;
  gap: 0 !important;
}

.floating-calendar-btn span:not(:first-child) {
  display: none !important;
}

.floating-yescom-btn {
  position: fixed !important;
  right: 94px !important;
  bottom: 24px !important;
  z-index: 999 !important;
  border: none !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
  box-shadow: 0 14px 28px rgba(15, 118, 110, .28) !important;
  cursor: pointer !important;
}

.floating-yescom-modal.hidden { display: none !important; }
.floating-yescom-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1001 !important;
}
.floating-yescom-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, .46) !important;
}
.floating-yescom-box {
  position: relative !important;
  width: min(1040px, calc(100vw - 28px)) !important;
  height: min(760px, calc(100vh - 52px)) !important;
  margin: 26px auto !important;
  background: #ffffff !important;
  border-radius: 22px !important;
  box-shadow: 0 28px 70px rgba(15, 23, 42, .34) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
.floating-yescom-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid #e5e7eb !important;
}
.floating-yescom-header h2 { margin: 0 !important; font-size: 20px !important; color: #172033 !important; }
.floating-yescom-frame {
  width: 100% !important;
  flex: 1 1 auto !important;
  border: 0 !important;
  background: #ffffff !important;
}
.floating-yescom-help {
  margin: 0 !important;
  padding: 10px 16px 4px !important;
  font-size: 12px !important;
  color: #64748b !important;
}
.floating-yescom-link {
  margin: 0 16px 14px !important;
  display: inline-flex !important;
  align-self: flex-start !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  background: #eef2ff !important;
  color: #3730a3 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

@media (max-width: 720px) {
  .relatorios-formato-toggle,
  .relatorios-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .relatorio-formato-opcao,
  .relatorio-acao {
    min-height: 50px !important;
    padding: 11px 8px !important;
    font-size: 13px !important;
  }

  .floating-calendar-btn {
    right: 22px !important;
    bottom: 24px !important;
  }

  .floating-yescom-btn {
    right: 90px !important;
    bottom: 24px !important;
  }

  .floating-yescom-box {
    width: calc(100vw - 20px) !important;
    height: calc(100vh - 38px) !important;
    margin: 19px auto !important;
    border-radius: 18px !important;
  }
}

/* v144 - ajustes visuais relatórios, checkbox e atalhos flutuantes */
.admin-card-footer,
.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

.admin-card-footer > .relatorios-admin,
.admin-card-footer-v128 > .relatorios-admin {
  grid-column: 1 / -1 !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 2px 0 0 !important;
  justify-self: stretch !important;
}

.admin-card-footer > .relatorios-admin > .botao-relatorios-toggle,
.admin-card-footer-v128 > .relatorios-admin > .botao-relatorios-toggle {
  width: 100% !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 56px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #5638f2 0%, #2364e8 58%, #07a5b8 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 28px rgba(37, 99, 235, .24) !important;
}

.admin-card-footer > .relatorios-admin > .relatorios-painel,
.admin-card-footer-v128 > .relatorios-admin > .relatorios-painel {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

.relatorios-formato-toggle,
.relatorios-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.relatorio-formato-opcao,
.relatorio-acao {
  border: 1px solid rgba(148, 163, 184, .45) !important;
  border-radius: 12px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .08) !important;
  color: #172033 !important;
  font-weight: 900 !important;
}

.relatorio-formato-opcao.ativo {
  background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 100%) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  box-shadow: 0 12px 28px rgba(79, 70, 229, .28) !important;
}

.field-checkbox-admin,
.field-ate-ultimo,
.field-ate-ultimo-inline {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

.field-checkbox-admin > .checkbox-admin-card,
.field-checkbox-admin > .checkbox-admin-inline,
.field-checkbox-admin label.checkbox-admin-card,
.field-checkbox-admin label.checkbox-admin-inline,
label.checkbox-admin-card.checkbox-admin-inline,
label.checkbox-admin-card.checkbox-admin-card-compacto {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 62px !important;
  padding: 14px 16px !important;
  box-sizing: border-box !important;
}

.field-checkbox-admin input[type="checkbox"],
.checkbox-admin-card input[type="checkbox"],
.checkbox-admin-inline input[type="checkbox"],
#corrida-patrocinador-tenis,
#novo-dia-ate-ultimo {
  position: relative !important;
  inset: auto !important;
  display: inline-block !important;
  float: none !important;
  width: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  height: 22px !important;
  min-height: 22px !important;
  max-height: 22px !important;
  flex: 0 0 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  align-self: center !important;
}

.field-checkbox-admin span,
.checkbox-admin-card span,
.checkbox-admin-inline span {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  text-align: left !important;
}

.field-checkbox-admin strong,
.checkbox-admin-card strong,
.checkbox-admin-inline strong {
  display: block !important;
  margin: 0 !important;
  line-height: 1.22 !important;
}

.floating-calendar-btn,
.floating-yescom-btn {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  border-radius: 999px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 22px !important;
}

.floating-calendar-btn span:not(:first-child),
.floating-yescom-btn span:not(:first-child) {
  display: none !important;
}

.floating-yescom-btn {
  position: fixed !important;
  right: 92px !important;
  bottom: 24px !important;
  z-index: 999 !important;
  border: 0 !important;
  color: #ffffff !important;
  background: linear-gradient(135deg, #0891b2, #14b8a6) !important;
  box-shadow: 0 14px 28px rgba(8, 145, 178, .28) !important;
  cursor: pointer !important;
}

@media (max-width: 720px) {
  .admin-card-footer,
  .admin-card-footer-v128 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .admin-card-footer > .botao-toggle-dias,
  .admin-card-footer-v128 > .botao-toggle-dias,
  .admin-card-footer > .relatorios-admin,
  .admin-card-footer-v128 > .relatorios-admin,
  .admin-card-footer > .botao-ver-inscritos,
  .admin-card-footer-v128 > .botao-ver-inscritos {
    grid-column: 1 / -1 !important;
  }

  .relatorios-formato-toggle,
  .relatorios-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .relatorio-formato-opcao,
  .relatorio-acao {
    min-height: 52px !important;
    font-size: 13px !important;
    padding: 11px 8px !important;
  }

  .floating-calendar-btn {
    right: 20px !important;
    bottom: 24px !important;
  }

  .floating-yescom-btn {
    right: 86px !important;
    bottom: 24px !important;
  }
}

/* =====================================================
   V146 - Ajustes visuais e operacionais
   ===================================================== */

/* Cadeado sempre com fundo branco; o card mantém cor por status */
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  background: #ffffff !important;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.14) !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-encerrar {
  background: #ffffff !important;
  border-color: #86efac !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-abrir {
  background: #ffffff !important;
  border-color: #fca5a5 !important;
}

/* Ícones nos botões dos cards */
.admin-card-footer-v128 button,
.gerenciar-dias .botao-toggle-dias,
.relatorios-admin .botao-relatorios-toggle {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.btn-ico {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15em;
  line-height: 1;
  flex: 0 0 auto;
}

/* Quantidade exibida nos filtros de inscritos */
.admin-inscritos-contagem-exibidos {
  margin: 14px 0 10px;
  padding: 11px 14px;
  border-radius: 16px;
  background: linear-gradient(135deg, #f8fafc, #eef2ff);
  border: 1px solid rgba(148, 163, 184, 0.28);
  color: #475569;
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: -0.01em;
}

/* Novo cadastro não deve reservar espaço visual para card logado */
.card-staff-cadastro.hidden {
  display: none !important;
}

/* =====================================================
   V147 - Banner da corrida, ícones persistentes e WhatsApp circular
   ===================================================== */
.field-banner-corrida {
  grid-column: 1 / -1;
}

.field-banner-corrida input[type="file"] {
  padding: 13px;
  background: #f8fafc;
  border: 1px dashed rgba(37, 99, 235, 0.35);
  cursor: pointer;
}

.corrida-banner-preview {
  margin-top: 12px;
  padding: 10px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f8fafc, #eef2ff);
  border: 1px solid rgba(148, 163, 184, 0.28);
}

.corrida-banner-preview img {
  display: block;
  width: 100%;
  max-height: 220px;
  object-fit: cover;
  aspect-ratio: 16 / 9;
  border-radius: 14px;
}

.corrida-banner-preview span {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-size: 0.86rem;
  font-weight: 700;
}

.botao-remover-banner {
  margin-top: 10px !important;
  width: auto !important;
  min-height: 38px !important;
  padding: 9px 14px !important;
  background: #fff1f2 !important;
  color: #be123c !important;
  border: 1px solid #fecdd3 !important;
  box-shadow: none !important;
}

.corrida-card-banner,
.corrida-card-banner-admin {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 20px;
  margin: 0 0 18px;
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.16);
  background: #e5e7eb;
}

.card-corrida .corrida-card-banner {
  margin: -4px 0 20px;
}

.card-corrida-admin .corrida-card-banner-admin {
  margin-bottom: 18px;
}

/* Botão de WhatsApp como círculo simples, no padrão dos flutuantes */
.floating-whatsapp {
  width: 74px !important;
  min-width: 74px !important;
  height: 74px !important;
  min-height: 74px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  gap: 0 !important;
}

.floating-whatsapp-icon {
  width: 44px !important;
  height: 38px !important;
  background: rgba(255, 255, 255, 0.2) !important;
  font-size: 25px !important;
}

.floating-whatsapp-text {
  display: none !important;
}

@media (max-width: 700px) {
  .corrida-card-banner,
  .corrida-card-banner-admin {
    border-radius: 18px;
    margin-bottom: 16px;
  }

  .floating-whatsapp {
    width: 70px !important;
    min-width: 70px !important;
    height: 70px !important;
    min-height: 70px !important;
  }
}


/* V148 - ícone de WhatsApp/chat centralizado */
.floating-whatsapp-icon svg {
  display: block;
  width: 30px;
  height: 30px;
}
.botao-ver-inscritos .btn-ico {
  display: inline-flex !important;
}

/* =========================================================
   V149 - AJUSTES BANNER / WHATSAPP / DIAS EDITÁVEIS
========================================================= */
.card-minha-inscricao .minha-inscricao-banner,
.card-minha-inscricao .corrida-card-banner {
  display: block;
  width: calc(100% + 48px);
  margin: -24px -24px 22px;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 24px 24px 0 0;
  border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.floating-whatsapp {
  width: 72px;
  height: 72px;
  min-height: 72px;
  padding: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #25d366, #16a34a);
}

.floating-whatsapp-icon {
  width: 54px;
  height: 54px;
  background: rgba(255, 255, 255, 0.18);
}

.whatsapp-logo-svg {
  display: block;
  width: 38px;
  height: 38px;
}

.dia-corrida-card-editavel {
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: #ffffff;
}

.dia-editavel-resumo {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 14px;
}

.dia-resumo-toggle {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #111827;
  text-align: left;
  cursor: pointer;
}

.dia-toggle-ico {
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: linear-gradient(135deg, #e0f2fe, #ede9fe);
  color: #2563eb;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
}

.dia-resumo-texto {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dia-resumo-texto strong {
  font-size: 15px;
  color: #111827;
}

.dia-resumo-texto small {
  color: #6b7280;
  font-size: 13px;
  line-height: 1.35;
}

.delete-btn-dia-resumo {
  padding: 9px 12px !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  white-space: nowrap;
}

.dia-editavel-corpo {
  padding: 0 14px 16px;
  border-top: 1px solid rgba(148, 163, 184, 0.2);
}

.dia-editavel-corpo.hidden {
  display: none !important;
}

.dia-corrida-card-editavel.is-open .dia-editavel-resumo {
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.04), rgba(124, 58, 237, 0.05));
}

@media (max-width: 650px) {
  .card-minha-inscricao .minha-inscricao-banner,
  .card-minha-inscricao .corrida-card-banner {
    width: calc(100% + 32px);
    margin: -16px -16px 18px;
    border-radius: 20px 20px 0 0;
  }

  .dia-editavel-resumo {
    grid-template-columns: 1fr;
  }

  .delete-btn-dia-resumo {
    width: 100%;
  }
}

/* v153 - semáforo de inscrições e revisão de espaçamento do cadastro */
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  background: #ffffff !important;
  border: 2px solid rgba(148, 163, 184, 0.28) !important;
  color: #0f172a !important;
  box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 62px !important;
  height: 62px !important;
  min-width: 62px !important;
  min-height: 62px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-encerrar,
.botao-status-compacto.acao-encerrar {
  background: #ffffff !important;
  border-color: rgba(34, 197, 94, 0.55) !important;
}

.botao-alterar-status-corrida.botao-status-compacto.acao-abrir,
.botao-status-compacto.acao-abrir {
  background: #ffffff !important;
  border-color: rgba(239, 68, 68, 0.55) !important;
}

.status-semaforo-indicador {
  display: block;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.32), 0 5px 14px rgba(15, 23, 42, 0.18);
}

.status-semaforo-indicador.status-aberto {
  background: #19d653;
}

.status-semaforo-indicador.status-fechado {
  background: #ef1f2d;
}

.status-semaforo-indicador.status-aberto::after {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(25, 214, 83, 0.24);
  animation: statusPulseVerde 1.8s ease-out infinite;
}

@keyframes statusPulseVerde {
  0% { transform: scale(1); opacity: .75; }
  80%, 100% { transform: scale(2.05); opacity: 0; }
}

.status-semaforo-texto {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.status-semaforo-carregando {
  font-size: 26px;
  line-height: 1;
  color: #475569;
}

#staffForm.form-area {
  padding-top: 34px;
}

#staffForm .section-title {
  margin: 30px 0 18px !important;
  line-height: 1.15;
}

#staffForm .section-title:first-child {
  margin-top: 0 !important;
}

#staffForm .field {
  margin: 0 0 20px !important;
}

#staffForm .grid {
  gap: 20px !important;
  margin: 0 0 0 !important;
}

#staffForm label {
  display: block;
  margin: 0 0 8px !important;
  line-height: 1.25;
}

#staffForm input,
#staffForm select,
#staffForm textarea {
  margin: 0 !important;
}

#staffForm .helper,
#staffForm .error {
  margin-top: 8px !important;
  line-height: 1.38;
}

#staffForm .pix-options {
  display: grid;
  gap: 12px;
  margin: 0 0 12px !important;
}

#staffForm .pix-card {
  margin: 0 !important;
}

#staffForm #fieldObservacoes {
  margin-top: 22px !important;
}

#staffForm #fieldTermos.checkbox {
  margin: 22px 0 22px !important;
  align-items: flex-start;
  gap: 12px;
}

#staffForm #fieldTermos input[type="checkbox"] {
  flex: 0 0 20px;
  width: 20px !important;
  height: 20px !important;
  margin-top: 3px !important;
}

@media (max-width: 720px) {
  #staffForm.form-area {
    padding: 30px 22px !important;
  }

  #staffForm .section-title {
    margin: 26px 0 16px !important;
  }

  #staffForm .field {
    margin-bottom: 18px !important;
  }

  #staffForm .grid {
    gap: 0 !important;
  }

  #staffForm input,
  #staffForm select,
  #staffForm textarea {
    min-height: 56px;
  }
}
.status-semaforo-indicador { position: relative; }

/* v154 - correções críticas: semáforo menor e edição estável */
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  border-width: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: absolute !important;
  right: 18px !important;
  top: 18px !important;
  transform: none !important;
  overflow: visible !important;
}

.status-semaforo-indicador {
  position: relative !important;
  width: 24px !important;
  height: 24px !important;
  border: 3px solid #ffffff !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.22) !important;
}

.status-semaforo-indicador.status-aberto::after {
  width: 24px !important;
  height: 24px !important;
  left: -3px !important;
  top: -3px !important;
}

.card-corrida-admin .corrida-status-card,
.corrida-status-card {
  position: relative !important;
  padding-right: 76px !important;
}

@media (max-width: 520px) {
  .botao-alterar-status-corrida.botao-status-compacto,
  .botao-status-compacto {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    right: 14px !important;
    top: 16px !important;
  }

  .status-semaforo-indicador {
    width: 22px !important;
    height: 22px !important;
  }

  .status-semaforo-indicador.status-aberto::after {
    width: 22px !important;
    height: 22px !important;
  }

  .card-corrida-admin .corrida-status-card,
  .corrida-status-card {
    padding-right: 64px !important;
  }
}

/* v155 - ajustes críticos: semáforo transparente e dias editáveis */
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  right: 20px !important;
  top: 20px !important;
  padding: 0 !important;
  overflow: visible !important;
}

.status-semaforo-indicador {
  width: 20px !important;
  height: 20px !important;
  border: 3px solid rgba(255,255,255,.88) !important;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.22) !important;
}

.status-semaforo-indicador.status-aberto::after {
  width: 20px !important;
  height: 20px !important;
  left: -3px !important;
  top: -3px !important;
}

.card-corrida-admin .corrida-status-card,
.corrida-status-card {
  padding-right: 58px !important;
}

.dia-corrida-card-editavel .dia-resumo-toggle,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle,
.dia-corrida-card .dia-resumo-toggle {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #111827 !important;
  box-shadow: none !important;
}

.dia-corrida-card-editavel .dia-resumo-toggle:hover,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle:hover,
.dia-corrida-card .dia-resumo-toggle:hover {
  background: transparent !important;
  color: #111827 !important;
}

.dia-corrida-card-editavel .dia-toggle-ico,
.gerenciar-dias .dia-corrida-card-editavel .dia-toggle-ico {
  background: linear-gradient(135deg, #e0f2fe, #ede9fe) !important;
  color: #2563eb !important;
}

.dia-corrida-card-editavel .delete-btn-dia-resumo,
.gerenciar-dias .dia-corrida-card-editavel .delete-btn-dia-resumo,
.dia-corrida-card .delete-btn-dia-resumo {
  background: #fee2e2 !important;
  color: #991b1b !important;
  border: 1px solid rgba(239, 68, 68, .22) !important;
  box-shadow: none !important;
}

.dia-corrida-card-editavel .delete-btn-dia-resumo:hover,
.gerenciar-dias .dia-corrida-card-editavel .delete-btn-dia-resumo:hover,
.dia-corrida-card .delete-btn-dia-resumo:hover {
  background: #fecaca !important;
}

@media (max-width: 520px) {
  .botao-alterar-status-corrida.botao-status-compacto,
  .botao-status-compacto {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    right: 18px !important;
    top: 18px !important;
  }

  .status-semaforo-indicador {
    width: 18px !important;
    height: 18px !important;
  }

  .status-semaforo-indicador.status-aberto::after {
    width: 18px !important;
    height: 18px !important;
  }

  .card-corrida-admin .corrida-status-card,
  .corrida-status-card {
    padding-right: 52px !important;
  }
}

/* v156 - correções finais: semáforo sem disco branco, cabeçalho padronizado e dias editáveis */
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  right: 24px !important;
  top: 24px !important;
  overflow: visible !important;
}

.botao-alterar-status-corrida.botao-status-compacto::before,
.botao-alterar-status-corrida.botao-status-compacto::after,
.botao-status-compacto::before,
.botao-status-compacto::after {
  display: none !important;
  content: none !important;
}

.status-semaforo-indicador {
  display: block !important;
  position: relative !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 999px !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,.45), 0 7px 16px rgba(15,23,42,.18) !important;
}

.status-semaforo-indicador.status-aberto {
  background: #18d957 !important;
}

.status-semaforo-indicador.status-fechado {
  background: #ff1f35 !important;
}

.status-semaforo-indicador.status-aberto::after {
  content: "" !important;
  position: absolute !important;
  inset: -6px !important;
  width: auto !important;
  height: auto !important;
  left: -6px !important;
  top: -6px !important;
  border-radius: 999px !important;
  background: rgba(24,217,87,.18) !important;
  border: 0 !important;
  box-shadow: none !important;
  animation: statusPulseVerde 1.8s ease-out infinite !important;
}

.status-semaforo-indicador.status-fechado::after {
  display: none !important;
  content: none !important;
}

.status-semaforo-texto {
  display: none !important;
}

/* Padroniza cabeçalhos de admin/corridas: botão do meio sempre roxo */
.pagina-corridas .admin-card-acao-perfil,
.pagina-admin .admin-card-acao-perfil,
.card-staff-cadastro .admin-card-acao-perfil {
  background: linear-gradient(135deg, #5b3df5, #8b2ff5) !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 14px 28px rgba(91, 61, 245, .22) !important;
}

.pagina-corridas .admin-card-acao-corridas,
.pagina-admin .admin-card-acao-corridas,
.card-staff-cadastro .admin-card-acao-corridas {
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 14px 28px rgba(20, 184, 166, .20) !important;
}

/* Corrige resumo fechado dos dias no formulário de edição */
.dia-corrida-card-editavel .dia-resumo-toggle,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle,
.dia-corrida-card .dia-resumo-toggle {
  background: linear-gradient(135deg, #eef6ff, #f8fbff) !important;
  color: #0f172a !important;
  border: 1px solid rgba(148, 163, 184, .22) !important;
  box-shadow: none !important;
}

.dia-corrida-card-editavel .dia-resumo-toggle strong,
.dia-corrida-card-editavel .dia-resumo-toggle span,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle strong,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle span {
  color: #0f172a !important;
}

.dia-corrida-card-editavel .dia-toggle-ico,
.gerenciar-dias .dia-corrida-card-editavel .dia-toggle-ico {
  background: #eff6ff !important;
  color: #2563eb !important;
  border: 1px solid rgba(37, 99, 235, .16) !important;
}

/* Versão visível do pacote */
.version-badge {
  position: fixed;
  top: 8px;
  right: 10px;
  z-index: 9999;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.82);
  color: #ffffff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .18);
  backdrop-filter: blur(8px);
  pointer-events: none;
}

/* v164 - ações rápidas refinadas, WhatsApp oficial e dias sem borda */
.linha-inscrito-principal {
  grid-template-columns: auto auto minmax(0, 1fr) auto !important;
  align-items: center !important;
}

.linha-inscrito-acoes-rapidas {
  grid-column: 1 / -1;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 10px !important;
  flex-wrap: nowrap !important;
}

.botao-acao-inscrito,
.linha-inscrito-acoes .botao-acao-inscrito,
.botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 16px rgba(15, 23, 42, .10) !important;
}

.botao-confirmar-inscrito.botao-acao-inscrito {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.botao-lista-espera-inscrito.botao-acao-inscrito {
  background: #dbeafe !important;
  color: #1d4ed8 !important;
}

.botao-cancelar-inscrito.botao-acao-inscrito {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}

.botao-whatsapp-confirmado {
  background: #16a34a !important;
  color: #ffffff !important;
}

.botao-whatsapp-bloqueado,
.botao-whatsapp-bloqueado:disabled {
  background: #e5e7eb !important;
  color: #9ca3af !important;
  opacity: .75 !important;
  cursor: not-allowed !important;
}

.linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled {
  opacity: .42 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

.detalhes-inscrito-header {
  grid-template-columns: auto minmax(180px, 1fr) !important;
}

.admin-card-footer,
.admin-card-footer-v128 {
  gap: 8px !important;
}

.admin-card-footer > .relatorios-admin,
.admin-card-footer-v128 > .relatorios-admin {
  margin: 0 !important;
}

.admin-card-footer > .relatorios-admin > .botao-relatorios-toggle,
.admin-card-footer-v128 > .relatorios-admin > .botao-relatorios-toggle {
  min-height: 48px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  border-radius: 12px !important;
}

.card-corrida-admin .botao-ver-inscritos,
.card-corrida-admin .botao-editar-corrida,
.card-corrida-admin .delete-btn,
.card-corrida-admin .botao-toggle-dias {
  min-height: 48px !important;
}

.preview-dias-corrida,
.dia-corrida-card-editavel,
.dia-corrida-card-editavel.is-open,
.dia-corrida-card-editavel.is-open .dia-editavel-resumo,
.dia-corrida-card-editavel .dia-editavel-resumo,
.gerenciar-dias .dia-corrida-card-editavel,
.gerenciar-dias .dia-corrida-card-editavel.is-open .dia-editavel-resumo {
  background: #ffffff !important;
  background-image: none !important;
}

.dia-corrida-card-editavel .dia-resumo-toggle,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle,
.dia-corrida-card .dia-resumo-toggle {
  background: #ffffff !important;
  background-image: none !important;
}

@media (max-width: 520px) {
  .linha-inscrito-acoes-rapidas {
    justify-content: flex-start !important;
    padding-left: 58px !important;
  }

  .botao-acao-inscrito,
  .linha-inscrito-acoes .botao-acao-inscrito,
  .botao-whatsapp-inscrito.botao-acao-inscrito {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    font-size: 16px !important;
  }
}


/* v164 - refinamento dos botões rápidos dos inscritos */
.linha-inscrito-acoes-rapidas {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  justify-content: stretch !important;
  align-items: stretch !important;
  padding: 0 !important;
  margin-top: 6px !important;
}

.botao-acao-inscrito,
.linha-inscrito-acoes .botao-acao-inscrito,
.botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 100% !important;
  height: 38px !important;
  min-width: 0 !important;
  min-height: 38px !important;
  border-radius: 12px !important;
  border: 2px solid currentColor !important;
  box-shadow: none !important;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease !important;
}

.botao-acao-inscrito:hover:not(:disabled) {
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 28px rgba(15, 23, 42, .14) !important;
  filter: saturate(1.05) !important;
}

.icone-acao-svg {
  width: 21px !important;
  height: 21px !important;
  stroke: currentColor !important;
  stroke-width: 3 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  fill: none !important;
}

.icone-whatsapp-oficial {
  width: 25px !important;
  height: 25px !important;
  display: block !important;
}

.botao-confirmar-inscrito.botao-acao-inscrito {
  background: transparent !important;
  color: #16a34a !important;
}

.botao-lista-espera-inscrito.botao-acao-inscrito {
  background: transparent !important;
  color: #2563eb !important;
}

.botao-cancelar-inscrito.botao-acao-inscrito {
  background: transparent !important;
  color: #dc2626 !important;
}

.botao-whatsapp-confirmado.botao-acao-inscrito {
  background: transparent !important;
  color: #16a34a !important;
}

.botao-whatsapp-bloqueado.botao-acao-inscrito,
.botao-whatsapp-bloqueado.botao-acao-inscrito:disabled {
  background: linear-gradient(135deg, #f3f4f6, #e5e7eb) !important;
  color: #9ca3af !important;
  opacity: .82 !important;
  box-shadow: none !important;
}

.linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled:not(.botao-whatsapp-bloqueado) {
  opacity: .50 !important;
  filter: grayscale(.15) !important;
}

/* v164 - remove fundo e bordas internas dos dias cadastrados na edição */
.gerenciar-dias .dia-corrida-card-editavel,
.gerenciar-dias .dia-corrida-card-editavel.is-open,
.gerenciar-dias .dia-corrida-card-editavel .dia-editavel-resumo,
.gerenciar-dias .dia-corrida-card-editavel.is-open .dia-editavel-resumo,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle:hover,
.dia-corrida-card-editavel .dia-resumo-toggle,
.dia-corrida-card .dia-resumo-toggle {
  background: #ffffff !important;
  background-image: none !important;
  border-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (max-width: 520px) {
  .linha-inscrito-acoes-rapidas {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 7px !important;
    padding-left: 0 !important;
  }

  .botao-acao-inscrito,
  .linha-inscrito-acoes .botao-acao-inscrito,
  .botao-whatsapp-inscrito.botao-acao-inscrito {
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    border-radius: 11px !important;
  }
}


/* v165 */
.gerenciar-dias .dia-editavel-resumo * { border-color: transparent !important; }


/* v169 - refinamento real dos botões rápidos e dias editáveis */
.linha-inscrito-acoes-rapidas {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 7px !important;
  margin-top: 2px !important;
  padding: 0 !important;
}

.linha-inscrito-principal .admin-status-inscricao {
  margin-bottom: 2px !important;
}

.botao-acao-inscrito,
.linha-inscrito-acoes .botao-acao-inscrito,
.botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 100% !important;
  height: 32px !important;
  min-width: 0 !important;
  min-height: 32px !important;
  padding: 0 !important;
  border-radius: 10px !important;
  border: 1.5px solid currentColor !important;
  background: transparent !important;
  box-shadow: none !important;
}

.botao-acao-inscrito:hover:not(:disabled) {
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 16px rgba(15, 23, 42, .08) !important;
}

.botao-confirmar-inscrito.botao-acao-inscrito {
  color: #16a34a !important;
  background: transparent !important;
}

.botao-lista-espera-inscrito.botao-acao-inscrito {
  color: #2563eb !important;
  background: transparent !important;
}

.botao-cancelar-inscrito.botao-acao-inscrito {
  color: #dc2626 !important;
  background: transparent !important;
}

.botao-whatsapp-confirmado.botao-acao-inscrito {
  color: #16a34a !important;
  background: transparent !important;
}

.botao-whatsapp-bloqueado.botao-acao-inscrito,
.botao-whatsapp-bloqueado.botao-acao-inscrito:disabled {
  color: #9ca3af !important;
  background: transparent !important;
  opacity: .55 !important;
}

.icone-acao-svg {
  width: 18px !important;
  height: 18px !important;
  stroke: currentColor !important;
  stroke-width: 3 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  fill: none !important;
}

.icone-whatsapp-outline {
  width: 19px !important;
  height: 19px !important;
  display: block !important;
  stroke: currentColor !important;
  stroke-width: 1.85 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  fill: none !important;
}

.linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled:not(.botao-whatsapp-bloqueado) {
  opacity: .38 !important;
  background: transparent !important;
}

.gerenciar-dias .dia-corrida-card-editavel,
.gerenciar-dias .dia-corrida-card-editavel.is-open {
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05) !important;
}

.gerenciar-dias .dia-corrida-card-editavel .dia-editavel-resumo,
.gerenciar-dias .dia-corrida-card-editavel.is-open .dia-editavel-resumo,
.gerenciar-dias .dia-corrida-card-editavel .dia-resumo-toggle,
.gerenciar-dias .dia-corrida-card-editavel.is-open .dia-resumo-toggle,
.gerenciar-dias .dia-editavel-resumo,
.gerenciar-dias .dia-resumo-toggle {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

.gerenciar-dias .dia-editavel-resumo::before,
.gerenciar-dias .dia-editavel-resumo::after,
.gerenciar-dias .dia-resumo-toggle::before,
.gerenciar-dias .dia-resumo-toggle::after {
  display: none !important;
  border: 0 !important;
  background: transparent !important;
}

@media (max-width: 520px) {
  .linha-inscrito-acoes-rapidas {
    gap: 7px !important;
    margin-top: 2px !important;
  }

  .botao-acao-inscrito,
  .linha-inscrito-acoes .botao-acao-inscrito,
  .botao-whatsapp-inscrito.botao-acao-inscrito {
    height: 32px !important;
    min-height: 32px !important;
    border-radius: 10px !important;
  }
}


/* v169 - refinamento do card de inscritos: espaçamento e seta */
.linha-inscrito-principal {
  column-gap: 9px !important;
  row-gap: 6px !important;
}

.linha-inscrito-nome {
  gap: 0 !important;
}

.linha-inscrito-nome strong {
  line-height: 1.12 !important;
}

.linha-inscrito-nome small {
  margin-top: 0 !important;
  line-height: 1.15 !important;
}

.botao-expandir-inscrito {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border: 1px solid #dbe3ff !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, #f8faff 0%, #eef2ff 100%) !important;
  color: #4f46e5 !important;
  box-shadow: 0 6px 14px rgba(79, 70, 229, .10) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease !important;
}

.botao-expandir-inscrito:hover {
  transform: translateY(-1px) !important;
  border-color: #c4b5fd !important;
  box-shadow: 0 8px 18px rgba(79, 70, 229, .16) !important;
}

.icone-expandir-inscrito {
  width: 15px !important;
  height: 15px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  transition: transform .18s ease !important;
}

.linha-inscrito-admin:not(.is-collapsed) .icone-expandir-inscrito,
.linha-inscrito-admin.aberto .icone-expandir-inscrito,
.linha-inscrito-admin.expandido .icone-expandir-inscrito {
  transform: rotate(90deg) !important;
}

@media (max-width: 520px) {
  .linha-inscrito-principal {
    row-gap: 5px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .linha-inscrito-nome strong {
    font-size: 15px !important;
    line-height: 1.08 !important;
  }

  .linha-inscrito-nome small {
    font-size: 12px !important;
    margin-top: -1px !important;
  }

  .botao-expandir-inscrito {
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    border-radius: 9px !important;
  }
}


/* v169 - ajuste real do card de inscritos: nome/dias próximos e seta refinada */
.linha-inscrito-principal {
  display: grid !important;
  grid-template-columns: auto auto minmax(0, 1fr) auto !important;
  grid-template-areas:
    "check expand nome tipos"
    "status status status status"
    "acoes acoes acoes acoes" !important;
  align-items: center !important;
  column-gap: 9px !important;
  row-gap: 8px !important;
  padding: 11px 12px 12px !important;
}

.linha-inscrito-check { grid-area: check !important; }
.botao-expandir-inscrito { grid-area: expand !important; }
.linha-inscrito-nome { 
  grid-area: nome !important; 
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 1px !important;
  align-self: center !important;
}
.linha-inscrito-icones { 
  grid-area: tipos !important; 
  justify-self: end !important; 
  align-self: center !important;
  margin-top: 0 !important;
}
.admin-status-inscricao { grid-area: status !important; width: 100% !important; }
.linha-inscrito-acoes-rapidas { grid-area: acoes !important; }

.linha-inscrito-nome-topo { display: contents !important; }
.linha-inscrito-nome strong {
  display: block !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.01em !important;
}
.linha-inscrito-nome small {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.12 !important;
  color: #6b7280 !important;
}

.botao-expandir-inscrito {
  width: 29px !important;
  height: 29px !important;
  min-width: 29px !important;
  border: 1px solid #dbe3ff !important;
  border-radius: 10px !important;
  background: #f4f6ff !important;
  color: #4f46e5 !important;
  box-shadow: 0 5px 12px rgba(79, 70, 229, .09) !important;
}

.botao-expandir-inscrito .icone-expandir-inscrito {
  width: 14px !important;
  height: 14px !important;
  stroke-width: 2.4 !important;
}

.linha-inscrito-admin.aberto .botao-expandir-inscrito,
.linha-inscrito-admin.expandido .botao-expandir-inscrito,
.linha-inscrito-admin:not(.is-collapsed) .botao-expandir-inscrito {
  background: #eef2ff !important;
  border-color: #c7d2fe !important;
}

.linha-inscrito-admin.aberto .icone-expandir-inscrito,
.linha-inscrito-admin.expandido .icone-expandir-inscrito,
.linha-inscrito-admin:not(.is-collapsed) .icone-expandir-inscrito {
  transform: rotate(90deg) !important;
}

@media (max-width: 520px) {
  .linha-inscrito-principal {
    column-gap: 8px !important;
    row-gap: 7px !important;
    padding: 10px 10px 11px !important;
  }
  .linha-inscrito-nome strong { font-size: 15px !important; line-height: 1.06 !important; }
  .linha-inscrito-nome small { font-size: 12px !important; line-height: 1.08 !important; }
  .botao-expandir-inscrito { width: 28px !important; height: 28px !important; min-width: 28px !important; }
}


/* v169 - mantém a seta SVG estilizada após abrir/fechar card */
.linha-inscrito-admin.is-collapsed .icone-expandir-inscrito {
  transform: rotate(0deg) !important;
}

.linha-inscrito-admin.is-expanded .icone-expandir-inscrito,
.linha-inscrito-admin:not(.is-collapsed) .icone-expandir-inscrito {
  transform: rotate(90deg) !important;
}

.botao-expandir-inscrito {
  font-size: 0 !important;
  line-height: 0 !important;
}

.botao-expandir-inscrito svg {
  display: block !important;
}


/* v185 - seta outline consistente no card de inscritos */
.botao-expandir-inscrito {
  font-size: 0 !important;
  line-height: 0 !important;
}
.botao-expandir-inscrito .icone-expandir-inscrito {
  width: 15px !important;
  height: 15px !important;
  display: block !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  transform-origin: 50% 50% !important;
  transition: transform .16s ease !important;
}
.botao-expandir-inscrito .icone-expandir-inscrito path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.linha-inscrito-admin.is-collapsed .botao-expandir-inscrito .icone-expandir-inscrito {
  transform: rotate(0deg) !important;
}
.linha-inscrito-admin.is-expanded .botao-expandir-inscrito .icone-expandir-inscrito {
  transform: rotate(90deg) !important;
}

/* v185 - busca admin na edição de cadastro */
.admin-editar-staff-panel {
  background: #ffffff;
  border: 1px solid rgba(124, 58, 237, 0.18);
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.07);
  padding: 16px;
  margin: 0 0 18px;
}

.admin-editar-staff-header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.admin-editar-staff-header strong {
  display: block;
  color: #1f2937;
  font-size: 15px;
  line-height: 1.2;
}

.admin-editar-staff-header span {
  display: block;
  color: #6b7280;
  font-size: 12px;
  margin-top: 4px;
}

.admin-editar-staff-busca {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.admin-editar-staff-busca input {
  height: 42px;
  border: 1px solid #d8dce8;
  border-radius: 12px;
  padding: 0 12px;
  font-size: 14px;
  outline: none;
  background: #fff;
}

.admin-editar-staff-busca input:focus {
  border-color: #7c3aed;
  box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.12);
}

.admin-editar-staff-busca button {
  height: 42px;
  border: 0;
  border-radius: 12px;
  padding: 0 18px;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  background: linear-gradient(135deg, #7c3aed, #a855f7);
  box-shadow: 0 8px 18px rgba(124, 58, 237, 0.22);
}

.admin-editar-staff-busca button:disabled {
  opacity: .7;
  cursor: wait;
}

.admin-editar-staff-status {
  min-height: 18px;
  color: #475569;
  font-size: 12px;
  margin-top: 8px;
  font-weight: 700;
}

.campo-bloqueado-edicao {
  background: #f3f4f6 !important;
  color: #6b7280 !important;
  cursor: not-allowed;
}

@media (max-width: 640px) {
  .admin-editar-staff-busca {
    grid-template-columns: 1fr;
  }

  .admin-editar-staff-busca button {
    width: 100%;
  }
}


/* v185 - melhoria visual cadastro/edição, blocos e foto */
body.pagina-cadastro-geral,
body.pagina-editar-cadastro {
  min-height: 100vh;
  background:
    radial-gradient(circle at 14% 0%, rgba(124, 58, 237, 0.13), transparent 32%),
    radial-gradient(circle at 86% 12%, rgba(14, 165, 233, 0.15), transparent 30%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 44%, #f8fafc 100%) !important;
}

body.pagina-editar-cadastro {
  background:
    radial-gradient(circle at 15% 0%, rgba(16, 185, 129, 0.13), transparent 31%),
    radial-gradient(circle at 84% 8%, rgba(124, 58, 237, 0.14), transparent 32%),
    linear-gradient(180deg, #f7fdfb 0%, #eef7ff 48%, #f8fafc 100%) !important;
}

body.pagina-cadastro-geral .container,
body.pagina-editar-cadastro .container {
  position: relative;
}

body.pagina-cadastro-geral .header,
body.pagina-editar-cadastro .header {
  background: rgba(255,255,255,0.82);
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 24px;
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.09);
  backdrop-filter: blur(10px);
  padding: 24px 22px;
  margin-bottom: 18px;
}

body.pagina-cadastro-geral #staffForm.form-area,
body.pagina-editar-cadastro #staffForm.form-area {
  background: rgba(255,255,255,0.94);
  border: 1px solid rgba(148, 163, 184, 0.22);
  border-radius: 26px;
  box-shadow: 0 20px 54px rgba(15, 23, 42, 0.10);
  overflow: hidden;
}

#staffForm .section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  padding: 12px 14px 12px 46px !important;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(124,58,237,.10), rgba(14,165,233,.08));
  border: 1px solid rgba(124,58,237,.13);
  color: #312e81 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: .01em;
  position: relative;
}

#staffForm .section-title::before {
  content: "";
  position: absolute;
  left: 14px;
  width: 22px;
  height: 22px;
  border-radius: 9px;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  box-shadow: 0 7px 14px rgba(124,58,237,.20);
}

body.pagina-editar-cadastro #staffForm .section-title {
  background: linear-gradient(135deg, rgba(16,185,129,.11), rgba(124,58,237,.08));
  border-color: rgba(16,185,129,.18);
  color: #064e3b !important;
}

body.pagina-editar-cadastro #staffForm .section-title::before {
  background: linear-gradient(135deg, #10b981, #7c3aed);
}

#staffForm .field {
  background: rgba(248,250,252,0.62);
  border: 1px solid rgba(226,232,240,.72);
  border-radius: 16px;
  padding: 12px !important;
}

#staffForm .grid .field {
  height: calc(100% - 20px);
}

#staffForm .pix-card {
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 20px rgba(15,23,42,.04);
}

.foto-input-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.foto-input-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border-radius: 14px;
  font-weight: 900;
  font-size: 13px;
  cursor: pointer;
  border: 1px solid rgba(124,58,237,.22);
  color: #5b21b6;
  background: rgba(124,58,237,.07);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.foto-input-btn-camera {
  color: #047857;
  border-color: rgba(16,185,129,.28);
  background: rgba(16,185,129,.08);
}

.foto-input-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 18px rgba(15,23,42,.08);
}

.foto-input-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.photo-cropper-stage {
  touch-action: none;
}

@media (max-width: 720px) {
  body.pagina-cadastro-geral .header,
  body.pagina-editar-cadastro .header {
    padding: 20px 18px;
    border-radius: 22px;
  }

  #staffForm .section-title {
    padding-left: 44px !important;
  }

  #staffForm .field {
    padding: 11px !important;
  }

  .foto-input-actions {
    grid-template-columns: 1fr;
  }
}

/* v185 - ajustes visuais cadastro/admin */
body.pagina-cadastro-geral .header,
body.pagina-editar-cadastro .header {
  color: #ffffff !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(14,165,233,.28), transparent 28%),
    linear-gradient(135deg, #111827 0%, #1e1b4b 52%, #312e81 100%) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 22px 48px rgba(30, 27, 75, .22) !important;
}

body.pagina-editar-cadastro .header {
  background:
    radial-gradient(circle at 88% 14%, rgba(34,197,94,.24), transparent 30%),
    linear-gradient(135deg, #052e2b 0%, #0f3b59 52%, #312e81 100%) !important;
}

body.pagina-cadastro-geral .header h1,
body.pagina-editar-cadastro .header h1,
body.pagina-cadastro-geral .header p,
body.pagina-editar-cadastro .header p {
  color: #ffffff !important;
}

body.pagina-cadastro-geral .header p,
body.pagina-editar-cadastro .header p {
  opacity: .88 !important;
}

.foto-input-actions {
  gap: 12px !important;
}

.foto-input-btn {
  min-height: 54px !important;
  border-radius: 18px !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  padding: 13px 16px !important;
  font-size: 14px !important;
  background: linear-gradient(135deg, rgba(124,58,237,.10), rgba(14,165,233,.08)) !important;
  border: 1px solid rgba(124,58,237,.26) !important;
  box-shadow: 0 10px 22px rgba(124,58,237,.10) !important;
}

.foto-input-btn-camera {
  color: #047857 !important;
  background: linear-gradient(135deg, rgba(16,185,129,.12), rgba(20,184,166,.07)) !important;
  border-color: rgba(16,185,129,.32) !important;
  box-shadow: 0 10px 22px rgba(16,185,129,.10) !important;
}

.foto-input-ico {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  border-radius: 13px;
  background: rgba(255,255,255,.82);
  box-shadow: inset 0 0 0 1px rgba(148,163,184,.22);
  font-size: 17px;
}

.corrida-status-card .corrida-progresso-vagas {
  display: none !important;
}

.corrida-progressos-fora-card {
  margin: 14px 0 24px;
  padding: 0 12px;
}

.corrida-progressos-fora-card .corrida-progresso-vagas {
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.corrida-progressos-fora-card .corrida-progresso-topo {
  padding: 0 2px 6px !important;
}

.corrida-progressos-fora-card .corrida-progresso-trilho {
  height: 9px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(148,163,184,.25) !important;
}

@media (max-width: 720px) {
  .foto-input-btn {
    min-height: 50px !important;
    padding: 12px 14px !important;
  }
  .corrida-progressos-fora-card {
    padding: 0 10px;
    margin-top: 12px;
  }
}

/* =========================================================
   AJUSTES V186 - BANNER, CARD CORRIDA E INSCRITOS
========================================================= */
.form-admin .section-title {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 40px !important;
  padding: 12px 14px 12px 46px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, rgba(124,58,237,.10), rgba(14,165,233,.08)) !important;
  border: 1px solid rgba(124,58,237,.13) !important;
  color: #312e81 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  position: relative !important;
}

.form-admin .section-title::before {
  content: "";
  position: absolute;
  left: 14px;
  width: 22px;
  height: 22px;
  border-radius: 9px;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  box-shadow: 0 7px 14px rgba(124,58,237,.20);
}

.form-admin .section-title::after { display: none !important; }

.field-banner-corrida small { line-height: 1.35; }

.card-corrida-admin {
  margin-bottom: 34px !important;
}

.corrida-status-label-destaque {
  font-size: 15px !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
}

.corrida-status-subtitulo {
  margin-top: 4px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  opacity: .82;
}

.corrida-progresso-rotulo {
  font-size: 12.5px !important;
  font-weight: 900 !important;
  color: #334155 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.corrida-progresso-confirmados .corrida-progresso-barra.confirmados-verde,
.corrida-progresso-confirmados-barra.confirmados-verde {
  background: #22c55e !important;
}

.corrida-resumo-sutil {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 13px 0 4px;
}

.corrida-resumo-sutil > div {
  padding: 10px 11px;
  border-radius: 14px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  min-width: 0;
}

.corrida-resumo-sutil strong,
.corrida-resumo-sutil span {
  display: block;
}

.corrida-resumo-sutil strong {
  margin-bottom: 4px;
  font-size: 10.6px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: #64748b;
}

.corrida-resumo-sutil span {
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
  color: #0f172a;
}

.admin-inscritos-filtros-v186 {
  display: grid !important;
  gap: 11px !important;
  padding: 12px !important;
  border-radius: 14px !important;
  background: #f8fafc !important;
  border: 1px solid #e5e7eb !important;
}

.admin-filtros-topo-v186 {
  display: grid;
  grid-template-columns: minmax(165px, 220px) minmax(0, 1fr);
  gap: 10px;
  align-items: end;
}

.admin-busca-wrap-v186 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.admin-busca-wrap-v186 span,
.admin-status-select-wrap span {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748b;
}

.admin-inscritos-filtros-v186 .admin-busca-inscrito,
.admin-inscritos-filtros-v186 .admin-status-select {
  width: 100%;
  min-height: 42px;
  border-radius: 13px;
}

.admin-inscritos-filtros-v186 .admin-toggles-tipo {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.admin-inscritos-contagem-exibidos {
  margin: 11px 0 0;
  font-size: 12.5px;
  font-weight: 900;
  color: #475569;
}

.admin-inscritos-acoes-v127 {
  margin-top: 10px !important;
}

.admin-lista-compacta-inscritos {
  margin-top: 14px;
}

@media (max-width: 700px) {
  .corrida-resumo-sutil,
  .admin-filtros-topo-v186 {
    grid-template-columns: 1fr;
  }

  .card-corrida-admin {
    margin-bottom: 28px !important;
  }
}

/* AJUSTES V187 - layout solicitado */
.corrida-resumo-sutil-v187{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.corrida-resumo-sutil-v187 > div{
  margin:0;
}
.corrida-resumo-sutil-v187 .corrida-resumo-duas-colunas{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.corrida-resumo-sutil-v187 .corrida-resumo-duas-colunas > div{
  min-width:0;
  border:1px solid rgba(148,163,184,.28);
  background:rgba(248,250,252,.92);
  border-radius:18px;
  padding:14px 16px;
}
.admin-inscritos-filtros-v186 .admin-toggles-tipo .admin-toggle-tipo{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.admin-inscritos-filtros-v186 .admin-toggles-tipo .btn-ico{
  display:inline-flex;
  line-height:1;
}
.admin-inscritos-filtros-v186 .admin-inscritos-contagem-exibidos{
  margin-top:14px;
  width:100%;
}
.admin-inscritos-acoes-v187{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:0;
  margin:14px 0 14px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.admin-inscritos-acoes-v187 .admin-contador-selecao{
  order:1;
  width:100%;
}
.admin-inscritos-acoes-v187 .admin-selecionar-exibidos{
  order:2;
  width:100%;
  justify-content:flex-start;
  padding:14px 16px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:16px;
  background:#fff;
}
.botao-confirmar-selecionados-final{
  width:100%;
  margin:16px 0 4px;
}
@media(max-width:520px){
  .corrida-resumo-sutil-v187 .corrida-resumo-duas-colunas{grid-template-columns:1fr 1fr;gap:10px;}
  .corrida-resumo-sutil-v187 .corrida-resumo-duas-colunas > div{padding:13px 14px;}
}

/* =========================================================
   AJUSTES V188 - painel de inscritos limpo e intuitivo
========================================================= */
.admin-inscritos-painel {
  background: #ffffff !important;
  border-radius: 22px !important;
  padding: 14px !important;
  border: 1px solid rgba(226, 232, 240, .75) !important;
  box-shadow: 0 14px 38px rgba(15, 23, 42, .06) !important;
}

.admin-inscritos-resumo-v127 {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  gap: 8px !important;
}

.admin-inscritos-resumo-v127 .resumo-card {
  border: 0 !important;
  background: #f8fafc !important;
  box-shadow: none !important;
  border-radius: 16px !important;
  padding: 12px 10px !important;
}

.admin-inscritos-filtros-v188 {
  margin-top: 14px !important;
  padding: 14px !important;
  border: 0 !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 26px rgba(15, 23, 42, .055) !important;
  display: grid !important;
  gap: 12px !important;
}

.admin-filtros-grid-v188 {
  display: grid !important;
  grid-template-columns: minmax(138px, 180px) minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: end !important;
}

.admin-inscritos-filtros-v188 label {
  min-width: 0 !important;
}

.admin-inscritos-filtros-v188 .admin-status-select-wrap,
.admin-inscritos-filtros-v188 .admin-busca-wrap-v186,
.admin-dia-filtro-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

.admin-inscritos-filtros-v188 .admin-status-select-wrap span,
.admin-inscritos-filtros-v188 .admin-busca-wrap-v186 span,
.admin-dia-filtro-wrap span {
  font-size: 10.6px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .055em !important;
  color: #64748b !important;
}

.admin-inscritos-filtros-v188 .admin-status-select,
.admin-inscritos-filtros-v188 .admin-busca-inscrito,
.admin-inscritos-filtros-v188 .admin-dia-select {
  width: 100% !important;
  min-height: 42px !important;
  border-radius: 14px !important;
  border: 1px solid #e2e8f0 !important;
  background: #f8fafc !important;
  color: #0f172a !important;
  box-shadow: none !important;
}

.admin-inscritos-filtros-v188 .admin-toggles-tipo {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.admin-inscritos-filtros-v188 .admin-toggle-tipo {
  min-height: 40px !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 7px !important;
  border: 0 !important;
  box-shadow: none !important;
}

.admin-inscritos-filtros-v188 .admin-toggle-tipo:not(.ativo) {
  background: #f1f5f9 !important;
  color: #64748b !important;
  opacity: .72 !important;
}

.admin-inscritos-filtros-v188 .admin-toggle-tipo .btn-ico {
  display: inline-flex !important;
  line-height: 1 !important;
  font-size: 16px !important;
}

.admin-inscritos-filtros-v188 .admin-inscritos-contagem-exibidos {
  margin: 0 !important;
  padding-top: 2px !important;
  font-size: 12.5px !important;
  font-weight: 900 !important;
  color: #475569 !important;
}

.admin-selecao-clean-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  padding-top: 4px !important;
  border-top: 1px solid #f1f5f9 !important;
}

.admin-selecionar-exibidos,
.admin-somente-selecionados {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #334155 !important;
  font-size: 12.5px !important;
  font-weight: 900 !important;
}

.admin-selecionar-exibidos input,
.admin-somente-selecionados input {
  width: 18px !important;
  height: 18px !important;
  accent-color: #7c3aed !important;
}

.admin-lista-compacta-inscritos {
  margin-top: 14px !important;
  display: grid !important;
  gap: 9px !important;
}

.linha-inscrito-admin {
  border: 0 !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .055) !important;
  overflow: hidden !important;
}

.linha-inscrito-admin:hover {
  box-shadow: 0 12px 30px rgba(15, 23, 42, .075) !important;
}

.linha-inscrito-principal {
  grid-template-columns: auto auto minmax(0, 1fr) auto !important;
  grid-template-areas:
    "check expand nome tipos"
    "status status status status"
    "acoes acoes acoes acoes" !important;
  padding: 11px 11px 12px !important;
  row-gap: 7px !important;
  column-gap: 8px !important;
}

.linha-inscrito-check span {
  border-color: #cbd5e1 !important;
  background: #ffffff !important;
}

.botao-expandir-inscrito {
  border: 0 !important;
  background: #f8fafc !important;
  color: #64748b !important;
  box-shadow: none !important;
}

.linha-inscrito-nome strong {
  color: #0f172a !important;
  font-size: 15px !important;
  letter-spacing: -.015em !important;
}

.linha-inscrito-nome small {
  color: #64748b !important;
  font-size: 12px !important;
}

.linha-inscrito-icones {
  gap: 5px !important;
}

.icone-tipo-dia {
  width: 25px !important;
  height: 25px !important;
  border-radius: 999px !important;
  background: #f1f5f9 !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: 13px !important;
}

.icone-tipo-dia.ativo {
  background: #eef2ff !important;
}

.admin-status-inscricao {
  width: fit-content !important;
  max-width: 100% !important;
  justify-self: start !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 5px 10px !important;
  border-radius: 999px !important;
  border: 0 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  line-height: 1 !important;
  text-transform: none !important;
}

.admin-status-inscricao::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  opacity: .75;
}

.admin-status-inscricao.pendente,
.admin-status-inscricao.inscrito {
  background: #f8fafc !important;
  color: #64748b !important;
}

.admin-status-inscricao.confirmado {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.admin-status-inscricao.lista_espera {
  background: #fef3c7 !important;
  color: #b45309 !important;
}

.admin-status-inscricao.cancelado {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}

.linha-inscrito-acoes-rapidas {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 7px !important;
  margin-top: 0 !important;
  width: 100% !important;
}

.botao-acao-inscrito,
.linha-inscrito-acoes .botao-acao-inscrito,
.botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  border-radius: 999px !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.botao-confirmar-inscrito.botao-acao-inscrito {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.botao-lista-espera-inscrito.botao-acao-inscrito {
  background: #fef3c7 !important;
  color: #b45309 !important;
}

.botao-cancelar-inscrito.botao-acao-inscrito {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}

.botao-whatsapp-confirmado.botao-acao-inscrito {
  background: #22c55e !important;
  color: #22c55e !important;
}

.botao-whatsapp-bloqueado.botao-acao-inscrito,
.botao-whatsapp-bloqueado.botao-acao-inscrito:disabled {
  background: #f1f5f9 !important;
  color: #cbd5e1 !important;
  opacity: 1 !important;
}

.icone-acao-svg {
  width: 18px !important;
  height: 18px !important;
  stroke: currentColor !important;
  stroke-width: 3 !important;
  fill: none !important;
}

.botao-lista-espera-inscrito .icone-acao-svg circle {
  fill: none !important;
}

.icone-whatsapp-oficial-v188 {
  width: 24px !important;
  height: 24px !important;
  display: block !important;
}

.linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled:not(.botao-whatsapp-bloqueado) {
  opacity: .38 !important;
  filter: grayscale(.2) !important;
}

.linha-inscrito-detalhes {
  background: #f8fafc !important;
  border-top: 1px solid #f1f5f9 !important;
}

.admin-barra-lote-v188 {
  position: sticky !important;
  bottom: 12px !important;
  z-index: 40 !important;
  display: none !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  margin-top: 14px !important;
  padding: 10px !important;
  border-radius: 18px !important;
  background: rgba(15, 23, 42, .92) !important;
  color: #ffffff !important;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .26) !important;
  backdrop-filter: blur(10px) !important;
}

.admin-barra-lote-v188.ativo {
  display: grid !important;
}

.admin-barra-lote-v188 .admin-contador-selecao {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
  color: #ffffff !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
}

.admin-barra-lote-v188 .admin-contador-selecao strong {
  color: #ffffff !important;
  font-size: 13px !important;
}

.admin-barra-lote-v188 .admin-contador-selecao span {
  color: rgba(255,255,255,.76) !important;
}

.admin-barra-lote-v188 .botao-confirmar-selecionados-final {
  width: auto !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-radius: 13px !important;
  background: linear-gradient(135deg, #22c55e, #16a34a) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

@media (max-width: 520px) {
  .admin-inscritos-painel {
    padding: 10px !important;
    border-radius: 18px !important;
  }

  .admin-filtros-grid-v188 {
    grid-template-columns: 1fr !important;
  }

  .admin-selecao-clean-row {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .linha-inscrito-acoes-rapidas {
    gap: 7px !important;
  }

  .botao-acao-inscrito,
  .linha-inscrito-acoes .botao-acao-inscrito,
  .botao-whatsapp-inscrito.botao-acao-inscrito {
    width: 33px !important;
    height: 33px !important;
    min-width: 33px !important;
    min-height: 33px !important;
  }

  .admin-barra-lote-v188 {
    left: 10px !important;
    right: 10px !important;
    bottom: 10px !important;
    grid-template-columns: 1fr !important;
  }

  .admin-barra-lote-v188 .botao-confirmar-selecionados-final {
    width: 100% !important;
  }
}

/* =========================================================
   AJUSTES V189 - limpeza visual inscritos, filtros e barra flutuante
========================================================= */
.card-corrida-admin .admin-inscritos-painel {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 18px 0 96px !important;
  margin-top: 18px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 18px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-dupla {
  display: contents !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
  min-height: 74px !important;
  padding: 10px 6px !important;
  border-radius: 15px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(226, 232, 240, .55) !important;
  box-shadow: none !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card strong {
  font-size: 25px !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card span {
  font-size: 9.5px !important;
  letter-spacing: .045em !important;
  line-height: 1.15 !important;
}

.card-corrida-admin .admin-inscritos-filtros-v188 {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
}

.card-corrida-admin .admin-inscritos-filtros-v188 .admin-status-select,
.card-corrida-admin .admin-inscritos-filtros-v188 .admin-busca-inscrito,
.card-corrida-admin .admin-inscritos-filtros-v188 .admin-dia-select {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .035) !important;
}

.card-corrida-admin .admin-inscritos-filtros-v188 .admin-inscritos-contagem-exibidos {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  color: #475569 !important;
}

.card-corrida-admin .admin-selecao-clean-row {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

.card-corrida-admin .admin-selecionar-exibidos,
.card-corrida-admin .admin-somente-selecionados {
  min-height: 44px !important;
  padding: 9px 10px !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, .035) !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  font-size: 12px !important;
  line-height: 1.15 !important;
}

.card-corrida-admin .admin-selecionar-exibidos input,
.card-corrida-admin .admin-somente-selecionados input,
.card-corrida-admin .linha-inscrito-check input {
  accent-color: #7c3aed !important;
}

.card-corrida-admin .admin-lista-compacta-inscritos {
  margin-top: 14px !important;
  gap: 10px !important;
}

.card-corrida-admin .linha-inscrito-admin {
  background: #ffffff !important;
  border: 1px solid rgba(226, 232, 240, .62) !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, .045) !important;
}

.card-corrida-admin .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes .botao-acao-inscrito,
.card-corrida-admin .botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 42px !important;
  height: 36px !important;
  min-width: 42px !important;
  min-height: 36px !important;
  border-radius: 999px !important;
}

.card-corrida-admin .linha-inscrito-acoes-rapidas {
  justify-content: space-between !important;
}

.card-corrida-admin .admin-barra-lote-v188 {
  position: fixed !important;
  left: max(14px, calc((100vw - 620px) / 2 + 14px)) !important;
  right: max(14px, calc((100vw - 620px) / 2 + 14px)) !important;
  bottom: 18px !important;
  z-index: 9999 !important;
  display: none !important;
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 10px !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .96) !important;
  color: #0f172a !important;
  border: 1px solid rgba(226, 232, 240, .9) !important;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .18) !important;
  backdrop-filter: blur(14px) !important;
}

.card-corrida-admin .admin-barra-lote-v188.ativo {
  display: grid !important;
}

.card-corrida-admin .admin-barra-lote-v188 .admin-contador-selecao {
  min-height: 48px !important;
  justify-content: center !important;
  padding: 8px 12px !important;
  border-radius: 15px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  color: #0f172a !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}

.card-corrida-admin .admin-barra-lote-v188 .admin-contador-selecao strong {
  color: #0f172a !important;
  font-size: 14px !important;
}

.card-corrida-admin .admin-barra-lote-v188 .admin-contador-selecao span {
  color: #64748b !important;
  font-weight: 800 !important;
}

.card-corrida-admin .admin-barra-lote-v188 .botao-confirmar-selecionados-final {
  min-height: 50px !important;
  width: 100% !important;
  border-radius: 15px !important;
  background: linear-gradient(135deg, #22c55e, #16a34a) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(22, 163, 74, .22) !important;
}

@media (max-width: 520px) {
  .card-corrida-admin .admin-inscritos-painel {
    padding: 16px 0 116px !important;
  }

  .card-corrida-admin .admin-inscritos-resumo-v127 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 7px !important;
  }

  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
    min-height: 68px !important;
    border-radius: 14px !important;
    padding: 9px 4px !important;
  }

  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card strong {
    font-size: 23px !important;
  }

  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card span {
    font-size: 8.8px !important;
  }

  .card-corrida-admin .admin-selecao-clean-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
  }

  .card-corrida-admin .admin-selecionar-exibidos,
  .card-corrida-admin .admin-somente-selecionados {
    font-size: 11.2px !important;
    padding: 8px 8px !important;
  }

  .card-corrida-admin .admin-barra-lote-v188 {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 9px !important;
  }

  .card-corrida-admin .admin-barra-lote-v188 .admin-contador-selecao {
    min-height: 42px !important;
    text-align: center !important;
    align-items: center !important;
  }
}

/* v190 - barra única de ocupação e ajustes finos painel inscritos */
.corrida-progresso-segmentado {
  margin-top: 8px;
}

.corrida-progresso-segmentado-topo strong {
  font-size: 13px;
  color: #334155;
}

.corrida-progresso-segmentado-trilho {
  display: flex;
  width: 100%;
  height: 13px;
  overflow: hidden;
  border-radius: 999px;
  background: #f1f5f9;
  border: 1px solid rgba(226, 232, 240, .9);
}

.corrida-progresso-segmentado-trilho .segmento {
  display: block;
  min-width: 0;
  height: 100%;
  transition: width .25s ease;
}

.segmentado-confirmados { background: #22c55e; }
.segmentado-pendentes { background: #60a5fa; }
.segmentado-livres { background: #e5e7eb; }

.corrida-progresso-segmentado-legenda {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 12px;
  margin-top: 7px;
  font-size: 11px;
  font-weight: 800;
  color: #64748b;
}

.corrida-progresso-segmentado-legenda span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.legenda-cor {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 999px;
}

.legenda-cor.confirmados { background: #22c55e; }
.legenda-cor.pendentes { background: #60a5fa; }
.legenda-cor.livres { background: #e5e7eb; border: 1px solid #cbd5e1; }

.card-corrida-admin .admin-inscritos-painel {
  gap: 10px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 {
  margin: 6px 0 10px !important;
  gap: 6px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
  min-height: 58px !important;
  padding: 7px 4px !important;
  border-radius: 13px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card strong {
  font-size: 21px !important;
  margin-bottom: 4px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card span {
  font-size: 8.3px !important;
}

.card-corrida-admin .admin-inscritos-filtros-v188 {
  margin: 0 0 8px !important;
}

.card-corrida-admin .admin-tag-exibindo,
.card-corrida-admin .admin-inscritos-filtros-v188 .admin-inscritos-contagem-exibidos {
  font-size: 12px !important;
  padding: 7px 11px !important;
  margin-top: 2px !important;
}

.botao-whatsapp-confirmado.botao-acao-inscrito,
.card-corrida-admin .botao-whatsapp-confirmado.botao-acao-inscrito {
  background: #ecfdf5 !important;
  color: #22c55e !important;
}

.botao-whatsapp-confirmado .icone-whatsapp-oficial-v188 path:first-child {
  fill: currentColor !important;
}

@media (max-width: 520px) {
  .card-corrida-admin .admin-inscritos-painel {
    padding: 10px 0 110px !important;
  }
  .card-corrida-admin .admin-inscritos-resumo-v127 {
    margin-top: 4px !important;
    margin-bottom: 8px !important;
  }
  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
    min-height: 54px !important;
    padding: 6px 3px !important;
  }
  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card strong {
    font-size: 20px !important;
  }
  .corrida-progresso-segmentado-legenda {
    gap: 5px 8px;
    font-size: 10px;
  }
}

/* v192 - ajustes finos: barra unificada, espaçamentos e ordem da tag exibindo */
.corrida-progresso-segmentado-trilho {
  height: 9px !important;
  border-radius: 999px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(148, 163, 184, .25) !important;
}

.corrida-progresso-segmentado {
  margin-top: 6px !important;
}

.card-corrida-admin .admin-inscritos-painel {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 {
  margin-top: -2px !important;
  margin-bottom: 8px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
  min-height: 50px !important;
  padding: 5px 3px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card strong {
  font-size: 18px !important;
  margin-bottom: 2px !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card span {
  font-size: 7.8px !important;
  line-height: 1.05 !important;
}

.card-corrida-admin .admin-inscritos-filtros-v188 {
  margin-top: 0 !important;
  gap: 9px !important;
}

.card-corrida-admin .admin-selecao-clean-row {
  order: 10 !important;
  border-top: 0 !important;
  padding-top: 2px !important;
  margin-top: 0 !important;
}

.card-corrida-admin .admin-tag-exibindo,
.card-corrida-admin .admin-inscritos-filtros-v188 .admin-inscritos-contagem-exibidos {
  order: 11 !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-top: -2px !important;
  padding: 6px 10px !important;
  font-size: 11.5px !important;
  border-radius: 999px !important;
}

.card-corrida-admin .admin-lista-compacta-inscritos {
  margin-top: 8px !important;
}

@media (max-width: 520px) {
  .card-corrida-admin .admin-inscritos-painel {
    padding-top: 0 !important;
  }
  .card-corrida-admin .admin-inscritos-resumo-v127 {
    margin-top: -4px !important;
    margin-bottom: 6px !important;
  }
  .card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
    min-height: 48px !important;
  }
}


/* v2.4 - ajuste real do semáforo dentro do box de inscrições */
.corrida-status-topo-linha{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
}
.card-corrida-admin .corrida-status-card,
.corrida-status-card{
  display:flex !important;
  align-items:center !important;
  min-height:86px !important;
}
.card-corrida-admin .corrida-status-card .corrida-status-topo-linha,
.corrida-status-card .corrida-status-topo-linha{
  width:100% !important;
}
.botao-alterar-status-corrida.botao-status-compacto,
.botao-status-compacto{
  position:static !important;
  flex:0 0 42px !important;
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  transform:none !important;
}
.status-semaforo-indicador{
  margin:0 auto !important;
}
@media (max-width:520px){
  .card-corrida-admin .corrida-status-card,
  .corrida-status-card{
    min-height:82px !important;
    padding-right:18px !important;
  }
  .botao-alterar-status-corrida.botao-status-compacto,
  .botao-status-compacto{
    flex-basis:40px !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }
}


/* =========================================================
   LOGIN / INDEX
   Estilos da tela inicial unificados a partir do antigo login.css.
   Mantidos escopados em .login-page para não afetar Admin/Cadastro/Corridas.
   ========================================================= */
.login-page {
  min-height: 100vh;
  background: radial-gradient(circle at top left, rgba(37,99,235,.13), transparent 34%), linear-gradient(180deg, #f7f8fc 0%, #eef2f8 48%, #f8fafc 100%);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
}

.login-page .container {
  width: 100%;
  max-width: 520px;
}

.login-page .login-card {
  background: #fff;
  padding: 35px;
  border-radius: 28px;
  border: 1px solid rgba(148,163,184,.22);
  box-shadow: 0 24px 60px rgba(15,23,42,.13);
}

.login-page .login-card h1 {
  font-size: 32px;
  margin-bottom: 10px;
  color: #111827;
  letter-spacing: -.04em;
}

.login-page .subtitle {
  color: #6b7280;
  margin-bottom: 30px;
  line-height: 1.5;
}

.login-page .field {
  margin-bottom: 20px;
}

.login-page .field label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #374151;
}

.login-page .field input {
  width: 100%;
  padding: 15px;
  border-radius: 14px;
  border: 1px solid #dbe3ef;
  background: #f8fafc;
  font-size: 15px;
  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.login-page .field input:focus {
  outline: none;
  border-color: #6366f1;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(99,102,241,.12);
}

.login-page .error {
  display: none;
  margin-top: 6px;
  color: #dc2626;
  font-size: 12px;
}

.login-page .field.invalid .error {
  display: block;
}

.login-page #loginBtn,
.login-page button[type="submit"] {
  width: 100%;
  border: 0;
  padding: 16px;
  border-radius: 14px;
  background: linear-gradient(135deg, #2563eb, #4f46e5);
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 16px 32px rgba(37,99,235,.24);
}

.login-page .result {
  margin-top: 30px;
}

.login-page .hidden {
  display: none;
}

.login-page .staff-card {
  display: flex;
  gap: 18px;
  align-items: center;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 18px;
}

.login-page .staff-card img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #e5e7eb;
}

.login-page .staff-info h2 {
  margin-bottom: 8px;
  color: #111827;
}

.login-page .staff-info p {
  color: #4b5563;
  font-size: 14px;
  margin-bottom: 4px;
}

.login-page .cadastro-link {
  display: block;
  width: 100%;
  margin-top: 14px;
  padding: 15px;
  border-radius: 16px;
  border: 1px solid #d1d5db;
  background: linear-gradient(135deg, #eef2ff, #e0f2fe);
  color: #1e3a8a;
  text-align: center;
  text-decoration: none;
  font-size: 15px;
  font-weight: 800;
}

.login-page .cadastro-link:hover {
  background: #eef2ff;
  border-color: #2563eb;
  color: #1d4ed8;
}

/* v2.4 - segurança, senha e controles admin */
.password-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.password-wrapper input {
  width: 100%;
  padding-right: 48px !important;
}

.password-toggle {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.08);
  cursor: pointer;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.password-toggle:hover {
  background: rgba(15, 23, 42, 0.15);
}

.login-status {
  min-height: 20px;
  margin: 8px 0 12px;
  font-size: 0.9rem;
  line-height: 1.35;
}

.login-status.error { color: #b91c1c; }
.login-status.success { color: #047857; }
.login-status.info { color: #475569; }

.forgot-password-btn,
.security-action-btn {
  width: 100%;
  margin-top: 10px;
  border: 0;
  border-radius: 14px;
  padding: 12px 16px;
  font-weight: 700;
  cursor: pointer;
  background: #e2e8f0;
  color: #0f172a;
}

.security-action-btn.secondary {
  background: #ede9fe;
  color: #5b21b6;
}

.account-security-panel {
  margin: 24px 0;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(148, 163, 184, 0.25);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
}

.admin-meta-panel {
  margin-bottom: 18px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(15, 23, 42, 0.04);
}

.admin-meta-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 0.92rem;
  margin-bottom: 8px;
  word-break: break-word;
}

.admin-checkbox-inline {
  margin-top: 10px;
}

.danger-delete-btn {
  width: 100%;
  margin-top: 18px;
  padding: 13px 16px;
  border: 0;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, #dc2626, #991b1b);
  font-weight: 800;
  cursor: pointer;
}

.danger-delete-btn:hover {
  filter: brightness(0.96);
}


/* =========================================================
   v2.4 - correção logout + polimento página Corridas
========================================================= */
.version-badge {
  cursor: help;
  user-select: none;
}
.version-badge:hover,
.version-badge:focus {
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(15, 23, 42, .18);
}

.pagina-corridas {
  max-width: 1180px;
  margin: 0 auto;
  padding: 34px clamp(16px, 4vw, 34px) 64px;
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.pagina-corridas .card-staff {
  border-radius: 34px;
  background: rgba(255, 255, 255, .92);
  border: 1px solid rgba(124, 58, 237, .13);
  box-shadow: 0 24px 60px rgba(15, 23, 42, .10);
}

.cabecalho-corridas {
  position: relative;
  overflow: hidden;
  padding: 34px clamp(22px, 4vw, 42px) !important;
  border-radius: 30px !important;
  background: radial-gradient(circle at top right, rgba(34, 211, 238, .24), transparent 32%),
              radial-gradient(circle at bottom left, rgba(168, 85, 247, .30), transparent 38%),
              linear-gradient(135deg, #101827 0%, #1e1b4b 48%, #312e81 100%) !important;
  border: 1px solid rgba(129, 140, 248, .35);
  box-shadow: 0 22px 48px rgba(49, 46, 129, .22) !important;
}
.cabecalho-corridas::before {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -110px;
  width: 320px;
  height: 320px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .10);
}
.cabecalho-corridas h1,
.cabecalho-corridas h2 {
  position: relative;
  margin: 0 0 10px !important;
  font-size: clamp(32px, 5vw, 56px) !important;
  line-height: .98;
  letter-spacing: -.055em !important;
  color: #ffffff;
}
.cabecalho-corridas p {
  position: relative;
  margin: 0;
  max-width: 720px;
  color: rgba(255, 255, 255, .84) !important;
  font-size: clamp(16px, 2.8vw, 20px) !important;
}

.lista-corridas,
.lista-minhas-inscricoes {
  gap: 22px !important;
}
.lista-corridas > p,
.lista-minhas-inscricoes > p {
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 24px !important;
  background: linear-gradient(180deg, #ffffff, #f8fafc) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08) !important;
}

.card-corrida,
.card-minha-inscricao {
  position: relative;
  overflow: hidden;
  padding: clamp(22px, 3.5vw, 34px) !important;
  border-radius: 30px !important;
  background: linear-gradient(180deg, #ffffff, #fbfdff) !important;
  border: 1px solid rgba(148, 163, 184, .22);
  box-shadow: 0 22px 55px rgba(15, 23, 42, .10) !important;
}
.card-corrida::before,
.card-minha-inscricao::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 5px;
  background: linear-gradient(90deg, #22c55e, #06b6d4, #7c3aed);
}

.corrida-banner-wrap {
  margin: calc(-1 * clamp(22px, 3.5vw, 34px)) calc(-1 * clamp(22px, 3.5vw, 34px)) 24px;
  background: linear-gradient(135deg, #0f172a, #312e81);
}
.corrida-card-banner,
.card-corrida .corrida-card-banner,
.card-minha-inscricao .corrida-card-banner,
.card-minha-inscricao .minha-inscricao-banner {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  display: block;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.corrida-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}
.corrida-eyebrow {
  display: inline-flex;
  margin-bottom: 8px;
  color: #7c3aed;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .14em;
}
.card-corrida h2,
.conteudo-minha-inscricao h3 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: clamp(28px, 4vw, 44px) !important;
  line-height: 1.02;
  letter-spacing: -.055em;
}
.card-corrida-sem-banner h2 {
  font-size: clamp(38px, 7vw, 68px) !important;
}
.card-corrida-com-banner h2 {
  max-width: 820px;
}

.corrida-status-card.aberta {
  min-width: 190px;
  margin: 0 !important;
  padding: 13px 16px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, #ecfdf5, #e0f2fe) !important;
  border: 1px solid rgba(34, 197, 94, .26) !important;
  box-shadow: 0 12px 26px rgba(14, 165, 233, .10);
}
.corrida-status-card.aberta strong {
  color: #047857 !important;
  font-size: 14px;
}
.corrida-status-card.aberta span {
  color: #475569 !important;
  font-size: 12px;
}

.corrida-resumo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0 22px;
}
.corrida-resumo-item {
  padding: 14px 15px;
  border-radius: 20px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
}
.corrida-resumo-item strong {
  display: block;
  margin-bottom: 4px;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .10em;
}
.corrida-resumo-item span {
  display: block;
  color: #0f172a;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.35;
}
.corrida-resumo-local {
  grid-column: 1 / -1;
}

.disponibilidade-corrida {
  margin-top: 22px !important;
  padding: clamp(18px, 3vw, 24px) !important;
  border-radius: 26px !important;
  background: linear-gradient(180deg, #f8fafc, #eef2ff) !important;
  border: 1px solid rgba(199, 210, 254, .9) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75);
}
.disponibilidade-corrida h4 {
  margin: 0 0 14px !important;
  color: #111827 !important;
  font-size: clamp(20px, 3vw, 26px) !important;
  letter-spacing: -.035em;
}
.texto-disponibilidade-info,
.texto-disponibilidade-alerta {
  border-radius: 20px !important;
  padding: 15px 17px !important;
}
.texto-disponibilidade-info {
  background: linear-gradient(135deg, #eff6ff, #eef2ff) !important;
  border: 1px solid #bfdbfe !important;
}
.texto-disponibilidade-alerta {
  background: linear-gradient(135deg, #fff7ed, #fef2f2) !important;
  border: 1px solid #fed7aa !important;
  color: #9a3412 !important;
}
.texto-disponibilidade-alerta strong {
  color: #c2410c !important;
}
.lista-dias-disponibilidade {
  gap: 12px !important;
}
.checkbox-dia-disponibilidade {
  align-items: center !important;
  gap: 14px !important;
  padding: 16px !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .78) !important;
  border: 1px solid #dbe3ef !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}
.checkbox-dia-disponibilidade:hover {
  transform: translateY(-1px);
  border-color: #818cf8 !important;
  box-shadow: 0 14px 28px rgba(79, 70, 229, .10);
}
.checkbox-dia-disponibilidade:has(input:checked) {
  background: linear-gradient(135deg, #ecfeff, #eef2ff) !important;
  border-color: #6366f1 !important;
}
.checkbox-dia-disponibilidade input[type="checkbox"] {
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  accent-color: #4f46e5;
}
.checkbox-dia-disponibilidade strong {
  font-size: 15px !important;
}
.checkbox-dia-disponibilidade small {
  color: #64748b !important;
}

.botao-inscricao {
  width: 100%;
  min-height: 56px;
  margin-top: 22px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, #22c55e, #0ea5e9) !important;
  color: #ffffff !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  box-shadow: 0 16px 32px rgba(14, 165, 233, .22);
}
.botao-inscricao:not(:disabled):hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 38px rgba(14, 165, 233, .28);
}
.botao-inscricao:disabled {
  background: linear-gradient(135deg, #e2e8f0, #cbd5e1) !important;
  color: #64748b !important;
  box-shadow: none !important;
}

.card-minha-inscricao {
  display: grid !important;
  grid-template-columns: 1fr auto;
  align-items: start !important;
}
.conteudo-minha-inscricao {
  min-width: 0;
}
.status-inscricao {
  border-radius: 999px !important;
  font-weight: 900 !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .08);
}
.tags-disponibilidade {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.tag-disponibilidade {
  display: inline-flex;
  align-items: center;
  padding: 8px 10px;
  border-radius: 999px;
  background: #eef2ff;
  border: 1px solid #c7d2fe;
  color: #4338ca;
  font-size: 12px;
  font-weight: 850;
}

@media (max-width: 760px) {
  .pagina-corridas {
    padding-top: 22px;
    gap: 22px;
  }
  .corrida-card-head,
  .card-minha-inscricao {
    display: flex !important;
    flex-direction: column;
    gap: 14px;
  }
  .corrida-status-card.aberta,
  .status-inscricao {
    width: 100%;
    min-width: 0;
  }
  .corrida-resumo-grid {
    grid-template-columns: 1fr 1fr;
  }
  .corrida-resumo-local {
    grid-column: 1 / -1;
  }
  .card-corrida h2,
  .conteudo-minha-inscricao h3 {
    font-size: clamp(28px, 9vw, 42px) !important;
  }
  .card-corrida-sem-banner h2 {
    font-size: clamp(36px, 11vw, 54px) !important;
  }
}
@media (max-width: 480px) {
  .corrida-resumo-grid {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   v2.4 - refinamentos Corridas + badge clicável
========================================================= */
.version-badge {
  appearance: none !important;
  border: 0 !important;
  text-align: center !important;
  cursor: pointer !important;
  z-index: 9999 !important;
  touch-action: manipulation;
}
.version-badge:active {
  transform: scale(.96) !important;
}

.corrida-status-card.aberta {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  min-height: 112px !important;
  padding: 20px 24px !important;
  text-align: center !important;
  background: radial-gradient(circle at top left, rgba(34, 197, 94, .20), transparent 42%),
              linear-gradient(135deg, #ecfdf5 0%, #e0f2fe 100%) !important;
  border: 1px solid rgba(16, 185, 129, .34) !important;
  box-shadow: 0 18px 36px rgba(14, 165, 233, .13), inset 0 1px 0 rgba(255,255,255,.80) !important;
}
.corrida-status-card.aberta .status-semaforo-indicador {
  display: block !important;
  flex: 0 0 auto !important;
  width: 24px !important;
  height: 24px !important;
}
.corrida-status-card.aberta strong {
  display: block !important;
  font-size: clamp(17px, 2.6vw, 22px) !important;
  line-height: 1.1 !important;
  color: #047857 !important;
  letter-spacing: -.02em !important;
}
.corrida-status-card.aberta span:not(.status-semaforo-indicador) {
  display: block !important;
  margin-top: 8px !important;
  color: #334155 !important;
  font-size: clamp(14px, 2.2vw, 17px) !important;
  font-weight: 800 !important;
}

.disponibilidade-corrida {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border: 1px solid rgba(203, 213, 225, .95) !important;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .07) !important;
}
.disponibilidade-corrida h4 {
  margin-bottom: 18px !important;
  font-size: clamp(23px, 4vw, 32px) !important;
  line-height: 1.08 !important;
}
.texto-disponibilidade-info,
.texto-disponibilidade-alerta {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  gap: 14px !important;
  align-items: start !important;
  padding: 18px 18px !important;
  margin-bottom: 14px !important;
  border-radius: 22px !important;
  line-height: 1.5 !important;
}
.texto-disponibilidade-info {
  background: linear-gradient(135deg, #eff6ff 0%, #f5f3ff 100%) !important;
  border: 1px solid rgba(147, 197, 253, .70) !important;
  color: #1e3a8a !important;
}
.texto-disponibilidade-alerta {
  background: linear-gradient(135deg, #fff7ed 0%, #fffaf0 100%) !important;
  border: 1px solid rgba(251, 191, 36, .55) !important;
  color: #7c2d12 !important;
}
.texto-disponibilidade-info .aviso-icone,
.texto-disponibilidade-alerta .aviso-icone {
  width: 42px !important;
  height: 42px !important;
  border-radius: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .08) !important;
}
.texto-disponibilidade-info .aviso-icone {
  color: #ffffff !important;
  background: linear-gradient(135deg, #2563eb, #7c3aed) !important;
}
.texto-disponibilidade-alerta .aviso-icone {
  color: #ffffff !important;
  background: linear-gradient(135deg, #f97316, #dc2626) !important;
}
.texto-disponibilidade-info strong,
.texto-disponibilidade-alerta strong {
  display: block !important;
  margin: 0 0 5px !important;
  font-size: clamp(17px, 2.8vw, 21px) !important;
  line-height: 1.18 !important;
  font-weight: 950 !important;
  letter-spacing: -.025em !important;
}
.texto-disponibilidade-info span,
.texto-disponibilidade-alerta span {
  display: block !important;
  color: inherit !important;
  font-size: clamp(14px, 2.45vw, 17px) !important;
  font-weight: 650 !important;
}
.texto-disponibilidade-info b,
.texto-disponibilidade-alerta b {
  font-weight: 950 !important;
}

@media (max-width: 760px) {
  .corrida-status-card.aberta {
    min-height: 104px !important;
    width: 100% !important;
  }
  .texto-disponibilidade-info,
  .texto-disponibilidade-alerta {
    grid-template-columns: 38px 1fr !important;
    padding: 16px !important;
    gap: 12px !important;
  }
  .texto-disponibilidade-info .aviso-icone,
  .texto-disponibilidade-alerta .aviso-icone {
    width: 38px !important;
    height: 38px !important;
    border-radius: 14px !important;
  }
}

/* =========================================================
   v2.4 - logout mobile, badge tocável, login e status de corrida
========================================================= */
.version-badge {
  position: fixed !important;
  top: max(14px, env(safe-area-inset-top)) !important;
  right: 16px !important;
  z-index: 2147483000 !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  touch-action: manipulation !important;
}
.version-popover {
  position: fixed;
  top: calc(max(14px, env(safe-area-inset-top)) + 54px);
  right: 16px;
  width: min(330px, calc(100vw - 32px));
  z-index: 2147483001;
  padding: 16px 18px 16px;
  border-radius: 20px;
  background: rgba(15, 23, 42, .96);
  color: #fff;
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 24px 60px rgba(15,23,42,.35);
  backdrop-filter: blur(12px);
}
.version-popover strong {
  display: block;
  font-size: 18px;
  margin-bottom: 8px;
}
.version-popover p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: 13px;
  line-height: 1.45;
}
.version-popover-close {
  position: absolute;
  top: 8px;
  right: 10px;
  border: 0;
  background: transparent;
  color: rgba(255,255,255,.82);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.login-page {
  background:
    radial-gradient(circle at 14% 10%, rgba(124,58,237,.14), transparent 32%),
    radial-gradient(circle at 88% 16%, rgba(14,165,233,.14), transparent 34%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 52%, #f8fafc 100%) !important;
}
.login-page .login-card {
  position: relative;
  overflow: hidden;
  padding: 38px 34px 32px !important;
  border-radius: 32px !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(124,58,237,.14) !important;
  box-shadow: 0 26px 70px rgba(15,23,42,.14) !important;
}
.login-page .login-card::before {
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:6px;
  background:linear-gradient(90deg,#22c55e,#06b6d4,#7c3aed);
}
.login-page .login-card h1 {
  font-size: clamp(34px, 7vw, 46px) !important;
  line-height: .96 !important;
  margin-bottom: 12px !important;
}
.login-page .subtitle {
  font-size: 16px !important;
  color: #64748b !important;
  margin-bottom: 28px !important;
}
.login-page .field label {
  color:#334155 !important;
  font-size: 13px !important;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.login-page .field input {
  min-height: 54px;
  border-radius: 18px !important;
  font-weight: 650;
  color: #0f172a;
}
.login-page #loginBtn,
.login-page button[type="submit"] {
  min-height: 56px;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #10b981, #06b6d4, #7c3aed) !important;
  box-shadow: 0 18px 34px rgba(14,165,233,.22) !important;
}
.login-page .forgot-password-btn,
.login-page .cadastro-link {
  border-radius: 18px !important;
}

.password-toggle {
  right: 9px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 13px !important;
  background: #eef2ff !important;
  color: #475569 !important;
  border: 1px solid rgba(99,102,241,.18) !important;
}
.password-toggle:hover,
.password-toggle.is-visible {
  background: #e0e7ff !important;
  color: #4338ca !important;
}
.password-icon {
  width: 20px;
  height: 20px;
  display: block;
  background: currentColor;
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
.password-icon-eye {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C5 5 2 12 2 12s3 7 10 7 10-7 10-7-3-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-2.2a1.8 1.8 0 1 0 0-3.6 1.8 1.8 0 0 0 0 3.6Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5C5 5 2 12 2 12s3 7 10 7 10-7 10-7-3-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-2.2a1.8 1.8 0 1 0 0-3.6 1.8 1.8 0 0 0 0 3.6Z'/%3E%3C/svg%3E");
}
.password-icon-eye-off {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m3.3 2 18.7 18.7-1.3 1.3-3.1-3.1A11.2 11.2 0 0 1 12 20C5 20 2 12 2 12a18.4 18.4 0 0 1 5-6.6L2 3.3 3.3 2Zm7 7 4.7 4.7A3.5 3.5 0 0 0 10.3 9ZM12 4c7 0 10 8 10 8a18 18 0 0 1-2.8 4.3l-2.3-2.3a5 5 0 0 0-6.9-6.9L8.3 5.4A11.8 11.8 0 0 1 12 4Z'/%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m3.3 2 18.7 18.7-1.3 1.3-3.1-3.1A11.2 11.2 0 0 1 12 20C5 20 2 12 2 12a18.4 18.4 0 0 1 5-6.6L2 3.3 3.3 2Zm7 7 4.7 4.7A3.5 3.5 0 0 0 10.3 9ZM12 4c7 0 10 8 10 8a18 18 0 0 1-2.8 4.3l-2.3-2.3a5 5 0 0 0-6.9-6.9L8.3 5.4A11.8 11.8 0 0 1 12 4Z'/%3E%3C/svg%3E");
}

.corrida-status-card.aberta {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-height: 106px !important;
  padding: 22px clamp(22px, 4vw, 34px) !important;
  text-align: left !important;
  border-radius: 28px !important;
}
.corrida-status-card.aberta > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
.corrida-status-card.aberta strong {
  font-size: clamp(22px, 4.8vw, 34px) !important;
  line-height: 1.05 !important;
  margin: 0 0 8px !important;
}
.corrida-status-card.aberta span:not(.status-semaforo-indicador) {
  margin-top: 0 !important;
  font-size: clamp(16px, 3.2vw, 23px) !important;
  line-height: 1.22 !important;
  color: #166534 !important;
}
.corrida-status-card.aberta .status-semaforo-indicador {
  order: 2 !important;
  flex: 0 0 58px !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  margin: 0 !important;
  align-self: center !important;
  border: 8px solid rgba(255,255,255,.92) !important;
  box-shadow: 0 16px 34px rgba(34,197,94,.30), 0 0 0 1px rgba(34,197,94,.18) !important;
}

.texto-disponibilidade-info,
.texto-disponibilidade-alerta {
  grid-template-columns: 1fr !important;
  gap: 9px !important;
  padding: 20px 20px !important;
  border-radius: 24px !important;
}
.texto-disponibilidade-info .aviso-icone,
.texto-disponibilidade-alerta .aviso-icone {
  display: none !important;
}
.texto-disponibilidade-info {
  background: linear-gradient(135deg, #f8fafc, #eef6ff) !important;
  border-color: rgba(96,165,250,.36) !important;
  color: #1e3a8a !important;
}
.texto-disponibilidade-alerta {
  background: linear-gradient(135deg, #fffaf0, #fff7ed) !important;
  border-color: rgba(251,146,60,.32) !important;
  color: #7c2d12 !important;
}
.texto-disponibilidade-info strong,
.texto-disponibilidade-alerta strong {
  font-size: clamp(18px, 3.4vw, 24px) !important;
}
.texto-disponibilidade-info span,
.texto-disponibilidade-alerta span {
  font-size: clamp(15px, 2.8vw, 18px) !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
}

@media (max-width: 760px) {
  .corrida-card-head {
    align-items: stretch !important;
  }
  .corrida-status-card.aberta {
    min-height: 110px !important;
    width: 100% !important;
    padding: 22px 24px !important;
  }
  .corrida-status-card.aberta .status-semaforo-indicador {
    flex-basis: 54px !important;
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
  }
}

/* v2.5 - ajustes de segurança, login e corrida */
.login-page .login-card {
  max-width: 440px;
}
.keep-connected-option {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 4px 0 14px;
  color: #475569;
  font-weight: 700;
  font-size: 14px;
}
.keep-connected-option input {
  width: 18px !important;
  height: 18px !important;
  accent-color: #7c3aed;
}
.login-secondary-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 12px;
}
.login-page .forgot-password-btn,
.login-page .cadastro-link {
  min-height: 46px !important;
  border-radius: 16px !important;
  padding: 10px 12px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  background: #f8fafc !important;
  color: #475569 !important;
  border: 1px solid #dbe3ef !important;
  box-shadow: none !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.login-page .forgot-password-btn:hover,
.login-page .cadastro-link:hover {
  background: #eef2ff !important;
  color: #4f46e5 !important;
  border-color: #c7d2fe !important;
}
@media (max-width: 420px) {
  .login-secondary-actions { grid-template-columns: 1fr; }
}

.corrida-status-card.aberta {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 18px !important;
  text-align: left !important;
}
.corrida-status-card.aberta > div {
  order: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.corrida-status-card.aberta .status-semaforo-indicador {
  order: 2;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
}
.checkbox-todos-dias {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 14px;
  padding: 16px 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, #eef2ff, #f8fafc);
  border: 1px solid rgba(99,102,241,.24);
  color: #312e81;
  font-weight: 900;
  box-shadow: 0 14px 30px rgba(15,23,42,.06);
}
.checkbox-todos-dias input,
.checkbox-dia-disponibilidade input {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px;
  accent-color: #7c3aed;
}
.texto-disponibilidade-info,
.texto-disponibilidade-alerta {
  align-items: flex-start !important;
  border-radius: 24px !important;
  padding: 18px 20px !important;
  box-shadow: 0 16px 34px rgba(15,23,42,.06) !important;
}
.texto-disponibilidade-info {
  background: linear-gradient(135deg, #eff6ff, #eef2ff) !important;
  border: 1px solid rgba(96,165,250,.26) !important;
  color: #1e3a8a !important;
}
.texto-disponibilidade-alerta {
  background: linear-gradient(135deg, #fff7ed, #fffaf0) !important;
  border: 1px solid rgba(251,146,60,.26) !important;
  color: #7c2d12 !important;
}
.texto-disponibilidade-info .aviso-icone,
.texto-disponibilidade-alerta .aviso-icone {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  font-size: 18px !important;
  font-weight: 900 !important;
}
.texto-disponibilidade-info .aviso-icone {
  background: #dbeafe !important;
  color: #2563eb !important;
}
.texto-disponibilidade-alerta .aviso-icone {
  background: #ffedd5 !important;
  color: #ea580c !important;
}

.pcd-card {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 18px;
  margin: 6px 0 18px;
  border-radius: 22px;
  background: linear-gradient(135deg, #f8fafc, #eef2ff);
  border: 1px solid #dbe3ef;
  box-shadow: 0 14px 30px rgba(15,23,42,.05);
  cursor: pointer;
}
.pcd-card input {
  width: 22px !important;
  height: 22px !important;
  min-width: 22px;
  margin-top: 2px;
  accent-color: #7c3aed;
}
.pcd-card strong {
  display: block;
  color: #111827;
  font-size: 16px;
  margin-bottom: 4px;
}
.pcd-card small {
  display: block;
  color: #64748b;
  font-size: 13px;
  line-height: 1.45;
}
.foto-input-actions-compact {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  margin: 12px 0 !important;
}
.foto-input-actions-compact .foto-input-btn {
  min-height: 58px !important;
  border-radius: 18px !important;
  justify-content: center !important;
  gap: 10px !important;
  font-size: 15px !important;
}
.foto-icon-gallery,
.foto-icon-camera {
  position: relative;
  width: 24px !important;
  height: 24px !important;
  display: inline-block !important;
  background: currentColor;
  opacity: .95;
}
.foto-icon-gallery {
  clip-path: polygon(10% 15%, 90% 15%, 90% 85%, 10% 85%);
}
.foto-icon-gallery::after {
  content: "";
  position: absolute;
  left: 5px;
  bottom: 5px;
  width: 14px;
  height: 8px;
  background: #fff;
  clip-path: polygon(0 100%, 42% 35%, 62% 60%, 78% 25%, 100% 100%);
}
.foto-icon-camera {
  clip-path: polygon(8% 28%, 32% 28%, 38% 16%, 62% 16%, 68% 28%, 92% 28%, 92% 84%, 8% 84%);
}
.foto-icon-camera::after {
  content: "";
  position: absolute;
  inset: 7px;
  border-radius: 999px;
  background: #fff;
}
.version-badge {
  cursor: pointer !important;
  touch-action: manipulation;
  z-index: 10020 !important;
}
.version-popover {
  z-index: 10030 !important;
  pointer-events: auto !important;
}
@media (max-width: 760px) {
  .foto-input-actions-compact { grid-template-columns: 1fr 1fr !important; }
  .corrida-status-card.aberta {
    min-height: 112px !important;
    padding: 22px 24px !important;
  }
}


/* v2.6 - ajuste PCD e ícones flat dos botões de foto */
.pcd-card small {
  font-size: 13.5px !important;
  line-height: 1.5 !important;
}

.foto-input-actions-compact .foto-input-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  text-align: center !important;
  line-height: 1 !important;
}

.foto-input-actions-compact .foto-input-btn span:not(.foto-input-ico) {
  display: inline-flex !important;
  align-items: center !important;
  line-height: 1 !important;
}

.foto-input-ico.foto-icon-gallery,
.foto-input-ico.foto-icon-camera,
.foto-icon-gallery,
.foto-icon-camera {
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px !important;
  display: inline-block !important;
  background: currentColor !important;
  opacity: .95 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  clip-path: none !important;
  mask-repeat: no-repeat !important;
  mask-position: center !important;
  mask-size: contain !important;
  -webkit-mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  -webkit-mask-size: contain !important;
}

.foto-icon-gallery {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4h14a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v8.1l3.4-3.4a2 2 0 0 1 2.8 0l2.1 2.1 1.3-1.3a2 2 0 0 1 2.8 0L20 16.1V7a1 1 0 0 0-1-1H5Zm3.8 7.1L4 17.9V18h16v-.1l-5-5-2.7 2.7-3.5-2.5ZM17 8a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E") !important;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 4h14a3 3 0 0 1 3 3v10a3 3 0 0 1-3 3H5a3 3 0 0 1-3-3V7a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v8.1l3.4-3.4a2 2 0 0 1 2.8 0l2.1 2.1 1.3-1.3a2 2 0 0 1 2.8 0L20 16.1V7a1 1 0 0 0-1-1H5Zm3.8 7.1L4 17.9V18h16v-.1l-5-5-2.7 2.7-3.5-2.5ZM17 8a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E") !important;
}

.foto-icon-camera {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4h6l1.4 2H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.6L9 4Zm3 14a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E") !important;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 4h6l1.4 2H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.6L9 4Zm3 14a5 5 0 1 0 0-10 5 5 0 0 0 0 10Zm0-2a3 3 0 1 1 0-6 3 3 0 0 1 0 6Z'/%3E%3C/svg%3E") !important;
}

.foto-icon-gallery::after,
.foto-icon-camera::after {
  display: none !important;
  content: none !important;
}


/* v2.7 - segurança visível só para admin e botões de foto refinados */
.foto-input-actions-compact .foto-input-btn {
  min-height: 58px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 14px 16px !important;
  white-space: nowrap !important;
}

.foto-input-actions-compact .foto-input-btn .foto-input-ico {
  width: 22px !important;
  height: 22px !important;
  flex: 0 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  top: 0 !important;
  margin: 0 !important;
  vertical-align: middle !important;
  border-radius: 0 !important;
  background-color: currentColor !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: .95 !important;
}

.foto-input-actions-compact .foto-input-btn span:not(.foto-input-ico) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  position: relative !important;
  top: 0 !important;
  margin: 0 !important;
}

.foto-input-actions-compact .foto-icon-gallery,
.foto-input-actions-compact .foto-icon-camera {
  clip-path: none !important;
  -webkit-clip-path: none !important;
}

.foto-input-actions-compact .foto-icon-gallery::after,
.foto-input-actions-compact .foto-icon-camera::after {
  content: none !important;
}

.foto-input-actions-compact .foto-icon-gallery {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 5h14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2Zm0 2v9.8l3.4-3.4a1 1 0 0 1 1.4 0l2.2 2.2 3.2-4.1a1 1 0 0 1 1.6 0L19 13.2V7H5Zm11-1.25a1.75 1.75 0 1 0 0 3.5 1.75 1.75 0 0 0 0-3.5Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M5 5h14a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2Zm0 2v9.8l3.4-3.4a1 1 0 0 1 1.4 0l2.2 2.2 3.2-4.1a1 1 0 0 1 1.6 0L19 13.2V7H5Zm11-1.25a1.75 1.75 0 1 0 0 3.5 1.75 1.75 0 0 0 0-3.5Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.foto-input-actions-compact .foto-icon-camera {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8.4 5.2 7 7H5a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2l-1.4-1.8A2 2 0 0 0 14 4.5h-4a2 2 0 0 0-1.6.7ZM12 9a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M8.4 5.2 7 7H5a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2l-1.4-1.8A2 2 0 0 0 14 4.5h-4a2 2 0 0 0-1.6.7ZM12 9a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm0 2a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

@media (max-width: 420px) {
  .foto-input-actions-compact .foto-input-btn {
    font-size: 14px !important;
    gap: 8px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* v2.8 - refinamento visual de corridas/admin e segurança por Auth */
.pagina-corridas {
  max-width: 1040px !important;
  padding-left: clamp(14px, 3vw, 24px) !important;
  padding-right: clamp(14px, 3vw, 24px) !important;
}

.pagina-corridas .card-staff,
.pagina-corridas .cabecalho-corridas,
.pagina-corridas .lista-corridas,
.pagina-corridas .secao-minhas-inscricoes,
.pagina-corridas .lista-minhas-inscricoes {
  width: 100% !important;
}

.card-corrida,
.card-minha-inscricao,
.card-corrida-admin {
  overflow: hidden !important;
}

.card-corrida,
.card-minha-inscricao {
  padding: clamp(18px, 3vw, 26px) !important;
}

.corrida-banner-wrap {
  margin: calc(-1 * clamp(18px, 3vw, 26px)) calc(-1 * clamp(18px, 3vw, 26px)) 24px !important;
  border-radius: 30px 30px 0 0 !important;
  overflow: hidden !important;
}

.corrida-card-banner,
.card-corrida .corrida-card-banner,
.card-minha-inscricao .corrida-card-banner,
.card-minha-inscricao .minha-inscricao-banner {
  border-radius: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

.card-corrida-admin {
  padding: clamp(18px, 3vw, 26px) !important;
}

.card-corrida-admin .corrida-card-banner-admin {
  width: calc(100% + (2 * clamp(18px, 3vw, 26px))) !important;
  max-width: none !important;
  margin: calc(-1 * clamp(18px, 3vw, 26px)) calc(-1 * clamp(18px, 3vw, 26px)) 24px !important;
  border-radius: 30px 30px 0 0 !important;
  box-shadow: none !important;
}

.corrida-card-head {
  align-items: center !important;
}

.corrida-status-card.aberta {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-height: 92px !important;
  padding: 18px clamp(18px, 4vw, 28px) !important;
}

.corrida-status-card.aberta > .status-semaforo-indicador,
.corrida-status-card.aberta .status-semaforo-indicador,
.card-corrida-admin .status-semaforo-indicador {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  flex-basis: 42px !important;
  border-width: 6px !important;
  align-self: center !important;
}

.corrida-status-card.aberta .status-semaforo-indicador::after,
.card-corrida-admin .status-semaforo-indicador::after {
  inset: -15px !important;
}

.corrida-status-card.aberta strong {
  font-size: clamp(20px, 4vw, 30px) !important;
}

.corrida-status-card.aberta span:not(.status-semaforo-indicador) {
  font-size: clamp(15px, 2.8vw, 20px) !important;
}

.card-corrida-admin .corrida-status-card {
  padding: 18px clamp(18px, 4vw, 28px) !important;
  border-radius: 28px !important;
}

.card-corrida-admin .corrida-status-topo-linha {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: 100% !important;
}

.card-corrida-admin .botao-status-compacto {
  flex: 0 0 48px !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  padding: 0 !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.card-corrida-admin .botao-status-compacto .status-semaforo-texto {
  display: none !important;
}

.disponibilidade-corrida {
  padding: clamp(18px, 3vw, 24px) !important;
}

.texto-disponibilidade-info,
.texto-disponibilidade-alerta {
  display: grid !important;
  grid-template-columns: 42px 1fr !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 18px !important;
}

.texto-disponibilidade-info .aviso-icone,
.texto-disponibilidade-alerta .aviso-icone {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 15px !important;
  font-weight: 900 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.texto-disponibilidade-info .aviso-icone {
  background: rgba(37, 99, 235, .10) !important;
  color: #2563eb !important;
}

.texto-disponibilidade-alerta .aviso-icone {
  background: rgba(234, 88, 12, .10) !important;
  color: #ea580c !important;
}

.texto-disponibilidade-info strong,
.texto-disponibilidade-alerta strong {
  font-size: clamp(17px, 3.2vw, 22px) !important;
  line-height: 1.3 !important;
}

.texto-disponibilidade-info span,
.texto-disponibilidade-alerta span {
  font-size: clamp(14px, 2.7vw, 17px) !important;
  line-height: 1.48 !important;
}

@media (max-width: 760px) {
  .pagina-corridas {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .card-corrida,
  .card-minha-inscricao {
    border-radius: 28px !important;
  }
  .corrida-card-head {
    gap: 16px !important;
  }
  .corrida-status-card.aberta {
    min-height: 88px !important;
    padding: 17px 20px !important;
  }
  .corrida-status-card.aberta .status-semaforo-indicador,
  .card-corrida-admin .status-semaforo-indicador {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    flex-basis: 40px !important;
  }
}


/* =========================================================
   v2.9 - padronização mobile da página Corridas e banner
========================================================= */
.pagina-corridas {
  max-width: 760px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 30px 0 64px !important;
  gap: 20px !important;
}

.pagina-corridas .card-staff,
.pagina-corridas .cabecalho-corridas,
.pagina-corridas .card-corrida,
.pagina-corridas .card-minha-inscricao,
.pagina-corridas .lista-corridas > p,
.pagina-corridas .lista-minhas-inscricoes > p {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.pagina-corridas .card-staff {
  border-radius: 28px !important;
}

.pagina-corridas .cabecalho-corridas {
  border-radius: 28px !important;
  padding: 30px 36px !important;
  margin: 0 !important;
}

.pagina-corridas .cabecalho-corridas h1,
.pagina-corridas .cabecalho-corridas h2 {
  font-size: clamp(34px, 8.8vw, 54px) !important;
}

.lista-corridas,
.lista-minhas-inscricoes {
  gap: 18px !important;
}

.card-corrida,
.card-minha-inscricao {
  border-radius: 28px !important;
  padding: 28px !important;
}

.card-corrida-com-banner,
.card-minha-inscricao:has(.corrida-card-banner),
.card-minha-inscricao:has(.minha-inscricao-banner) {
  padding-top: 0 !important;
}

.card-corrida-com-banner::before,
.card-minha-inscricao:has(.corrida-card-banner)::before,
.card-minha-inscricao:has(.minha-inscricao-banner)::before,
.card-corrida-admin:has(.corrida-card-banner-admin)::before {
  display: none !important;
}

.card-corrida-com-banner .corrida-banner-wrap,
.card-minha-inscricao .corrida-banner-wrap {
  margin: 0 -28px 24px !important;
  border-radius: 28px 28px 0 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}

.card-corrida-com-banner .corrida-card-banner,
.card-minha-inscricao .corrida-card-banner,
.card-minha-inscricao .minha-inscricao-banner {
  border-radius: 28px 28px 0 0 !important;
  width: 100% !important;
  display: block !important;
  margin: 0 !important;
}

.card-corrida-admin:has(.corrida-card-banner-admin) {
  padding-top: 0 !important;
}

.card-corrida-admin .corrida-card-banner-admin {
  width: calc(100% + 56px) !important;
  max-width: none !important;
  margin: 0 -28px 24px !important;
  border-radius: 28px 28px 0 0 !important;
  display: block !important;
}

.card-corrida-sem-banner::before,
.card-corrida-admin:not(:has(.corrida-card-banner-admin))::before {
  display: block !important;
}

.corrida-status-card.aberta,
.card-corrida-admin .corrida-status-card.aberta {
  min-height: 78px !important;
  padding: 16px 22px !important;
  border-radius: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

.corrida-status-card.aberta .status-semaforo-indicador,
.card-corrida-admin .corrida-status-card.aberta .status-semaforo-indicador,
.card-corrida-admin .status-semaforo-indicador {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  flex: 0 0 34px !important;
  border-width: 5px !important;
  align-self: center !important;
}

.corrida-status-card.aberta .status-semaforo-indicador::after,
.card-corrida-admin .status-semaforo-indicador::after {
  inset: -12px !important;
}

@media (max-width: 760px) {
  .pagina-corridas {
    max-width: 760px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 30px !important;
    gap: 20px !important;
  }
  .pagina-corridas .cabecalho-corridas {
    padding: 30px 32px !important;
    border-radius: 28px !important;
  }
  .card-corrida,
  .card-minha-inscricao {
    padding: 28px !important;
    border-radius: 28px !important;
  }
  .card-corrida-com-banner,
  .card-minha-inscricao:has(.corrida-card-banner),
  .card-minha-inscricao:has(.minha-inscricao-banner) {
    padding-top: 0 !important;
  }
  .card-corrida-com-banner .corrida-banner-wrap,
  .card-minha-inscricao .corrida-banner-wrap {
    margin: 0 -28px 24px !important;
    border-radius: 28px 28px 0 0 !important;
  }
  .card-corrida-com-banner .corrida-card-banner,
  .card-minha-inscricao .corrida-card-banner,
  .card-minha-inscricao .minha-inscricao-banner {
    border-radius: 28px 28px 0 0 !important;
  }
}

@media (max-width: 420px) {
  .pagina-corridas {
    gap: 18px !important;
  }
  .pagina-corridas .cabecalho-corridas {
    padding: 28px 28px !important;
  }
  .card-corrida,
  .card-minha-inscricao {
    padding: 24px !important;
    border-radius: 26px !important;
  }
  .card-corrida-com-banner .corrida-banner-wrap,
  .card-minha-inscricao .corrida-banner-wrap {
    margin: 0 -24px 22px !important;
    border-radius: 26px 26px 0 0 !important;
  }
  .card-corrida-com-banner .corrida-card-banner,
  .card-minha-inscricao .corrida-card-banner,
  .card-minha-inscricao .minha-inscricao-banner {
    border-radius: 26px 26px 0 0 !important;
  }
  .corrida-status-card.aberta,
  .card-corrida-admin .corrida-status-card.aberta {
    min-height: 72px !important;
    padding: 14px 18px !important;
  }
  .corrida-status-card.aberta .status-semaforo-indicador,
  .card-corrida-admin .status-semaforo-indicador {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    flex-basis: 30px !important;
  }
}


/* =========================================================
   v3.0 - correções finais Corridas/Admin
========================================================= */
body.body-corridas {
  padding-top: 14px !important;
}

body.body-corridas .pagina-corridas {
  padding-top: 14px !important;
  gap: 18px !important;
}

body.body-corridas .version-badge {
  top: 18px !important;
}

body.body-corridas .card-staff,
body.body-corridas .cabecalho-corridas,
body.body-corridas .card-corrida,
body.body-corridas .card-minha-inscricao,
body.body-corridas .lista-corridas > p,
body.body-corridas .lista-minhas-inscricoes > p {
  border-radius: 28px !important;
}

body.body-corridas .card-staff {
  margin-top: 0 !important;
}

body.body-corridas .cabecalho-corridas {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

body.body-corridas .lista-corridas,
body.body-corridas .lista-minhas-inscricoes,
body.body-corridas .secao-minhas-inscricoes {
  gap: 16px !important;
}

/* Card de status: texto à esquerda, farol à direita, mesmo padrão para aberto/encerrado */
.corrida-status-card.aberta,
.corrida-status-card.encerrada,
.card-corrida-admin .corrida-status-card.aberta,
.card-corrida-admin .corrida-status-card.encerrada {
  min-height: 82px !important;
  padding: 16px 24px !important;
  border-radius: 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  text-align: left !important;
}

.corrida-status-card.aberta > div,
.corrida-status-card.encerrada > div,
.card-corrida-admin .corrida-status-card.aberta > .corrida-status-topo-linha,
.card-corrida-admin .corrida-status-card.encerrada > .corrida-status-topo-linha {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.card-corrida-admin .corrida-status-topo-linha {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

.card-corrida-admin .corrida-status-topo-linha > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.corrida-status-card strong,
.card-corrida-admin .corrida-status-card strong,
.card-corrida-admin .corrida-status-label-destaque {
  display: block !important;
  font-size: clamp(19px, 4.2vw, 28px) !important;
  line-height: 1.15 !important;
  margin: 0 0 6px !important;
}

.corrida-status-card span:not(.status-semaforo-indicador),
.card-corrida-admin .corrida-status-subtitulo {
  display: block !important;
  font-size: clamp(14px, 3vw, 19px) !important;
  line-height: 1.28 !important;
}

.botao-alterar-status-corrida.botao-status-compacto {
  width: auto !important;
  min-width: 46px !important;
  height: 46px !important;
  padding: 0 !important;
  flex: 0 0 46px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(255,255,255,.8) !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.10) !important;
}

.botao-alterar-status-corrida.botao-status-compacto .status-semaforo-texto {
  display: none !important;
}

.corrida-status-card .status-semaforo-indicador,
.card-corrida-admin .status-semaforo-indicador,
.botao-alterar-status-corrida.botao-status-compacto .status-semaforo-indicador {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  flex: 0 0 30px !important;
  border-width: 5px !important;
  align-self: center !important;
}

.corrida-status-card .status-semaforo-indicador::after,
.card-corrida-admin .status-semaforo-indicador::after,
.botao-alterar-status-corrida.botao-status-compacto .status-semaforo-indicador::after {
  inset: -9px !important;
}

.card-corrida-com-banner .corrida-banner-wrap,
.card-minha-inscricao .corrida-banner-wrap {
  margin-top: 0 !important;
}

.card-corrida-com-banner .corrida-card-banner,
.card-minha-inscricao .corrida-card-banner,
.card-minha-inscricao .minha-inscricao-banner {
  border-radius: 28px 28px 0 0 !important;
}

@media (max-width: 420px) {
  body.body-corridas {
    padding-top: 12px !important;
  }

  body.body-corridas .pagina-corridas {
    padding-top: 12px !important;
    gap: 16px !important;
  }

  body.body-corridas .version-badge {
    top: 16px !important;
  }

  .corrida-status-card.aberta,
  .corrida-status-card.encerrada,
  .card-corrida-admin .corrida-status-card.aberta,
  .card-corrida-admin .corrida-status-card.encerrada {
    min-height: 76px !important;
    padding: 14px 18px !important;
  }

  .botao-alterar-status-corrida.botao-status-compacto {
    min-width: 42px !important;
    height: 42px !important;
    flex-basis: 42px !important;
  }

  .corrida-status-card .status-semaforo-indicador,
  .card-corrida-admin .status-semaforo-indicador,
  .botao-alterar-status-corrida.botao-status-compacto .status-semaforo-indicador {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    flex-basis: 28px !important;
  }
}

/* =========================================================
   v3.1 - padronização cards Corridas/Admin
   - Corrige radius/padding da página Corridas no mobile
   - Padroniza card inscrições abertas/encerradas
   - Mantém texto à esquerda e semáforo à direita
   - Corrige alinhamento do título quando existe banner
========================================================= */
:root {
  --staff-card-radius: 24px;
  --staff-mobile-page-gutter: 12px;
}

body.body-corridas .pagina-corridas {
  max-width: 760px !important;
  width: 100% !important;
  padding: 14px var(--staff-mobile-page-gutter) 64px !important;
  gap: 18px !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-staff,
body.body-corridas .cabecalho-corridas,
body.body-corridas .card-corrida,
body.body-corridas .card-minha-inscricao,
body.body-corridas .lista-corridas > p,
body.body-corridas .lista-minhas-inscricoes > p,
.card-corrida-admin {
  border-radius: var(--staff-card-radius) !important;
}

body.body-corridas .card-corrida,
body.body-corridas .card-minha-inscricao {
  padding: 24px !important;
}

body.body-corridas .card-corrida-com-banner,
body.body-corridas .card-minha-inscricao:has(.corrida-card-banner),
body.body-corridas .card-minha-inscricao:has(.minha-inscricao-banner) {
  padding-top: 0 !important;
}

body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
  margin: 0 -24px 24px !important;
  border-radius: var(--staff-card-radius) var(--staff-card-radius) 0 0 !important;
  overflow: hidden !important;
}

body.body-corridas .card-corrida-com-banner .corrida-card-banner,
body.body-corridas .card-minha-inscricao .corrida-card-banner,
body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
  border-radius: var(--staff-card-radius) var(--staff-card-radius) 0 0 !important;
}

body.body-corridas .corrida-card-head {
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.body-corridas .corrida-card-head > div:first-child {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.body-corridas .card-corrida h2 {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

/* Status cards: mesmo desenho para aberto e encerrado em Corridas e Admin */
.corrida-status-card.aberta,
.corrida-status-card.encerrada,
.card-corrida-admin .corrida-status-card.aberta,
.card-corrida-admin .corrida-status-card.encerrada {
  position: relative !important;
  width: 100% !important;
  min-height: 82px !important;
  margin: 0 0 18px !important;
  padding: 16px 20px !important;
  border-radius: 22px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  text-align: left !important;
  box-sizing: border-box !important;
}

.corrida-status-card.aberta {
  background: linear-gradient(135deg, #ecfdf5, #e0f2fe) !important;
  border: 1px solid rgba(34, 197, 94, .32) !important;
  color: #047857 !important;
}

.corrida-status-card.encerrada {
  background: linear-gradient(135deg, #fff7ed, #fff1f2) !important;
  border: 1px solid rgba(244, 63, 94, .34) !important;
  color: #991b1b !important;
}

.corrida-status-card.aberta > div,
.corrida-status-card.encerrada > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.card-corrida-admin .corrida-status-card.aberta > .corrida-status-topo-linha,
.card-corrida-admin .corrida-status-card.encerrada > .corrida-status-topo-linha,
.card-corrida-admin .corrida-status-topo-linha {
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}

.card-corrida-admin .corrida-status-topo-linha > div {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.corrida-status-card strong,
.card-corrida-admin .corrida-status-label-destaque {
  display: block !important;
  margin: 0 0 5px !important;
  font-size: clamp(20px, 4.2vw, 30px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.035em !important;
}

.corrida-status-card span:not(.status-semaforo-indicador),
.card-corrida-admin .corrida-status-subtitulo {
  display: block !important;
  margin: 0 !important;
  font-size: clamp(14px, 3vw, 18px) !important;
  line-height: 1.28 !important;
  font-weight: 800 !important;
}

.corrida-status-card.aberta strong,
.corrida-status-card.aberta span:not(.status-semaforo-indicador),
.card-corrida-admin .corrida-status-card.aberta strong,
.card-corrida-admin .corrida-status-card.aberta span:not(.status-semaforo-indicador) {
  color: #047857 !important;
}

.corrida-status-card.encerrada strong,
.corrida-status-card.encerrada span:not(.status-semaforo-indicador),
.card-corrida-admin .corrida-status-card.encerrada strong,
.card-corrida-admin .corrida-status-card.encerrada span:not(.status-semaforo-indicador) {
  color: #991b1b !important;
}

/* Botão do admin deixa de ficar absoluto: ele vira somente o farol à direita */
.card-corrida-admin .botao-alterar-status-corrida.botao-status-compacto,
.botao-alterar-status-corrida.botao-status-compacto {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;
  flex: 0 0 48px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(255,255,255,.88) !important;
  box-shadow: 0 12px 28px rgba(15,23,42,.10) !important;
}

.card-corrida-admin .botao-alterar-status-corrida .status-semaforo-texto {
  display: none !important;
}

.corrida-status-card .status-semaforo-indicador,
.card-corrida-admin .status-semaforo-indicador,
.card-corrida-admin .botao-alterar-status-corrida .status-semaforo-indicador {
  position: relative !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  flex: 0 0 30px !important;
  align-self: center !important;
  border-width: 5px !important;
}

.corrida-status-card .status-semaforo-indicador::after,
.card-corrida-admin .status-semaforo-indicador::after {
  inset: -9px !important;
}

@media (max-width: 520px) {
  :root {
    --staff-card-radius: 22px;
    --staff-mobile-page-gutter: 10px;
  }

  body.body-corridas .card-corrida,
  body.body-corridas .card-minha-inscricao {
    padding: 20px !important;
  }

  body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
  body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
    margin: 0 -20px 22px !important;
  }

  .corrida-status-card.aberta,
  .corrida-status-card.encerrada,
  .card-corrida-admin .corrida-status-card.aberta,
  .card-corrida-admin .corrida-status-card.encerrada {
    min-height: 76px !important;
    padding: 14px 16px !important;
    border-radius: 20px !important;
    gap: 14px !important;
  }

  .card-corrida-admin .botao-alterar-status-corrida.botao-status-compacto,
  .botao-alterar-status-corrida.botao-status-compacto {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    flex-basis: 44px !important;
  }

  .corrida-status-card .status-semaforo-indicador,
  .card-corrida-admin .status-semaforo-indicador,
  .card-corrida-admin .botao-alterar-status-corrida .status-semaforo-indicador {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    flex-basis: 28px !important;
  }
}

/* =========================================================
   v3.2 - ajuste fino Corridas x Admin
   - Remove gutter duplicado da página Corridas no mobile
   - Mantém a distância lateral igual ao Admin: só o padding do body
   - Adiciona status visual dentro de Minhas inscrições
   - Refina texto de corrida encerrada
========================================================= */
body.body-corridas {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

body.body-corridas .pagina-corridas {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-top: 0 !important;
  gap: 16px !important;
}

body.body-corridas .card-staff,
body.body-corridas .cabecalho-corridas,
body.body-corridas .card-corrida,
body.body-corridas .card-minha-inscricao,
body.body-corridas .lista-corridas > p,
body.body-corridas .lista-minhas-inscricoes > p,
.card-corrida-admin {
  border-radius: 24px !important;
}

body.body-corridas .card-corrida,
body.body-corridas .card-minha-inscricao {
  padding: 24px !important;
}

body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
  margin-left: -24px !important;
  margin-right: -24px !important;
  border-radius: 24px 24px 0 0 !important;
}

body.body-corridas .card-corrida-com-banner .corrida-card-banner,
body.body-corridas .card-minha-inscricao .corrida-card-banner,
body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
  border-radius: 24px 24px 0 0 !important;
}

body.body-corridas .card-corrida h2,
body.body-corridas .card-minha-inscricao h3 {
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
}

.corrida-status-card.minha-inscricao-status {
  margin: 14px 0 18px !important;
}

.corrida-status-card.minha-inscricao-status strong {
  font-size: clamp(18px, 4vw, 24px) !important;
}

.corrida-status-card.minha-inscricao-status span:not(.status-semaforo-indicador) {
  font-size: clamp(13px, 3vw, 16px) !important;
}

@media (max-width: 520px) {
  body.body-corridas {
    padding-left: 12px !important;
    padding-right: 12px !important;
    padding-top: 20px !important;
  }

  body.body-corridas .pagina-corridas {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    gap: 16px !important;
  }

  body.body-corridas .card-corrida,
  body.body-corridas .card-minha-inscricao {
    padding: 20px !important;
  }

  body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
  body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
    margin-left: -20px !important;
    margin-right: -20px !important;
    border-radius: 24px 24px 0 0 !important;
  }

  body.body-corridas .card-corrida-com-banner .corrida-card-banner,
  body.body-corridas .card-minha-inscricao .corrida-card-banner,
  body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
    border-radius: 24px 24px 0 0 !important;
  }
}

/* =========================================================
   v3.3 - ajustes finos
   - Banner colado ao topo dos cards de corrida
   - Edição mostra apenas Segurança e acesso
========================================================= */
body.body-corridas .card-corrida-com-banner,
body.body-corridas .card-minha-com-banner,
body.body-corridas .card-minha-inscricao:has(.corrida-card-banner),
body.body-corridas .card-minha-inscricao:has(.minha-inscricao-banner) {
  padding-top: 0 !important;
  overflow: hidden !important;
}

body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
body.body-corridas .card-minha-com-banner .corrida-banner-wrap,
body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
  margin-top: 0 !important;
  margin-bottom: 22px !important;
  display: block !important;
  line-height: 0 !important;
}

body.body-corridas .card-corrida-com-banner .corrida-card-banner,
body.body-corridas .card-minha-com-banner .corrida-card-banner,
body.body-corridas .card-minha-inscricao .corrida-card-banner,
body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
  display: block !important;
  vertical-align: top !important;
}

.pagina-editar-cadastro #dadosAcessoTitle,
.pagina-editar-cadastro #camposSenhaCadastro {
  display: none !important;
}

@media (max-width: 520px) {
  body.body-corridas .card-corrida-com-banner .corrida-banner-wrap,
  body.body-corridas .card-minha-com-banner .corrida-banner-wrap,
  body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
    margin-top: 0 !important;
    margin-bottom: 20px !important;
  }
}

.login-page .login-status:not(:empty) {
  display: block;
  padding: 12px 14px;
  border-radius: 14px;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.10);
  font-weight: 650;
}
.login-page .login-status.error:not(:empty) {
  background: #fef2f2;
  border-color: rgba(185, 28, 28, 0.20);
}
.login-page .login-status.success:not(:empty) {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.20);
}
.login-page .login-status.info:not(:empty) {
  background: #eff6ff;
  border-color: rgba(37, 99, 235, 0.18);
}

/* v3.6 - evita piscada do cadastro antes do JS definir modo novo/edição */
body.cadastro-loading .container {
  opacity: 0;
  visibility: hidden;
}
body.cadastro-loading::after {
  content: "";
  position: fixed;
  inset: 0;
  background: radial-gradient(circle at top left, rgba(16, 185, 129, .10), transparent 35%),
              radial-gradient(circle at top right, rgba(124, 58, 237, .12), transparent 35%),
              #f8fafc;
  z-index: 9998;
}

/* v4.5 - Check-in presencial por QR */
body.checkin-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 18% 12%, rgba(124, 58, 237, 0.28), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(16, 185, 129, 0.22), transparent 32%),
    linear-gradient(145deg, #070b14 0%, #111827 48%, #0f172a 100%);
  color: #f8fafc;
}

.checkin-shell {
  width: min(100%, 760px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 72px 18px 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.checkin-card {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(15, 23, 42, 0.78));
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.42);
  padding: clamp(22px, 5vw, 42px);
  text-align: center;
  backdrop-filter: blur(18px);
}

.checkin-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-bottom: 28px;
  text-align: left;
}

.checkin-logo-mark {
  width: 54px;
  height: 54px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #7c3aed, #22c55e);
  color: #fff;
  font-weight: 900;
  letter-spacing: -0.06em;
  box-shadow: 0 18px 40px rgba(34, 197, 94, 0.18);
}

.checkin-eyebrow {
  margin: 0 0 4px;
  color: #a7f3d0;
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 800;
}

.checkin-brand h1 {
  margin: 0;
  font-size: clamp(1.35rem, 4vw, 2rem);
  letter-spacing: -0.04em;
}

.checkin-status-icon {
  width: 86px;
  height: 86px;
  border-radius: 50%;
  margin: 0 auto 22px;
  display: grid;
  place-items: center;
  font-size: 2.5rem;
  font-weight: 900;
}

.checkin-status-icon.is-loading {
  border: 3px solid rgba(255,255,255,0.18);
  border-top-color: #a78bfa;
  animation: checkinSpin 0.9s linear infinite;
}

.checkin-status-icon.is-success {
  background: rgba(34, 197, 94, 0.16);
  border: 1px solid rgba(74, 222, 128, 0.42);
  color: #86efac;
}
.checkin-status-icon.is-success::before { content: "✓"; }

.checkin-status-icon.is-error {
  background: rgba(239, 68, 68, 0.14);
  border: 1px solid rgba(248, 113, 113, 0.44);
  color: #fca5a5;
}
.checkin-status-icon.is-error::before { content: "!"; }

@keyframes checkinSpin { to { transform: rotate(360deg); } }

.checkin-card h2 {
  margin: 0 0 10px;
  font-size: clamp(1.45rem, 5vw, 2.3rem);
  letter-spacing: -0.05em;
}

.checkin-card p {
  margin: 0 auto;
  max-width: 520px;
  color: #cbd5e1;
  line-height: 1.55;
}

.checkin-details {
  margin: 24px auto 0;
  max-width: 520px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.12);
  overflow: hidden;
  text-align: left;
}

.checkin-details dl { margin: 0; }
.checkin-details div {
  display: grid;
  grid-template-columns: 108px 1fr;
  gap: 12px;
  padding: 13px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.checkin-details div:last-child { border-bottom: 0; }
.checkin-details dt {
  color: #94a3b8;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 800;
}
.checkin-details dd {
  margin: 0;
  color: #f8fafc;
  font-weight: 800;
}

.checkin-actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 26px;
}

.checkin-primary-action,
.checkin-secondary-action {
  min-height: 46px;
  padding: 0 18px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-weight: 900;
}

.checkin-primary-action {
  color: #07111f;
  background: linear-gradient(135deg, #a7f3d0, #22c55e);
}

.checkin-secondary-action {
  color: #e5e7eb;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
}

.botao-checkin-dia {
  margin-top: 12px;
  width: 100%;
  justify-content: center;
  background: linear-gradient(135deg, rgba(124, 58, 237, 0.95), rgba(34, 197, 94, 0.92)) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 32px rgba(34, 197, 94, 0.15);
}

@media (max-width: 560px) {
  .checkin-shell { padding: 62px 12px 20px; align-items: flex-start; }
  .checkin-card { border-radius: 22px; }
  .checkin-brand { justify-content: flex-start; }
  .checkin-details div { grid-template-columns: 1fr; gap: 4px; }
  .checkin-primary-action,
  .checkin-secondary-action { width: 100%; }
}
.dashboard-card{max-width:1100px}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.dashboard-stat{background:#111827;border:1px solid #1f2937;border-radius:18px;padding:16px;color:#fff}.dashboard-stat span{display:block;color:#9ca3af;font-size:12px}.dashboard-stat strong{font-size:28px}.dashboard-stat.warning strong{color:#f59e0b}.dashboard-progress{height:16px;background:#1f2937;border-radius:999px;overflow:hidden;margin-bottom:20px}.dashboard-progress div{height:100%;background:linear-gradient(90deg,#10b981,#22c55e);width:0}.dashboard-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.dashboard-toolbar input{flex:1;min-width:220px;background:#0f172a;border:1px solid #334155;color:#fff;padding:12px;border-radius:14px}.dashboard-lista{display:flex;flex-direction:column;gap:10px;max-height:60vh;overflow:auto}.dashboard-item{display:flex;justify-content:space-between;align-items:center;background:#0f172a;border:1px solid #1e293b;padding:14px 16px;border-radius:14px;color:#fff}.dashboard-item small{display:block;color:#94a3b8;margin-top:4px}.dashboard-item.ok{border-left:4px solid #22c55e}.dashboard-item.pending{border-left:4px solid #64748b}.checkin-dia-acoes{display:flex;flex-direction:column;gap:10px}.botao-dashboard-checkin{text-decoration:none;display:flex;justify-content:center;align-items:center;gap:8px}@media(max-width:768px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}}

/* v4.5 - ajustes dashboard check-in */
.dashboard-item.late{border-left:4px solid #f59e0b;}
.dashboard-empty{background:#0f172a;border:1px solid #334155;color:#cbd5e1;border-radius:16px;padding:18px;text-align:center;}
.dashboard-item-hora{font-weight:800;color:#e5e7eb;white-space:nowrap;}
@media print{
  body.checkin-page{background:#fff!important;color:#111827!important;}
  body.checkin-page .version-badge,
  body.checkin-page .dashboard-toolbar,
  body.checkin-page .checkin-primary-action,
  body.checkin-page .checkin-secondary-action{display:none!important;}
  body.checkin-page .checkin-shell{padding:0!important;}
  body.checkin-page .checkin-card{box-shadow:none!important;border:0!important;background:#fff!important;color:#111827!important;}
  body.checkin-page .dashboard-stat,
  body.checkin-page .dashboard-item{background:#fff!important;color:#111827!important;border-color:#cbd5e1!important;}
  body.checkin-page .dashboard-item small,
  body.checkin-page .dashboard-stat span{color:#475569!important;}
  body.checkin-page .dashboard-lista{max-height:none!important;overflow:visible!important;}
}

/* v4.5 - ajustes visuais, dashboard check-in e cards */
.corrida-progressos-unificado .corrida-progresso-segmentado { margin-top: 0; }
.corrida-progressos-unificado .corrida-progresso-segmentado-legenda { flex-wrap: wrap; gap: 10px 14px; }
.legenda-cor.inscritos { background: #0ea5e9; }

.linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito,
.card-corrida-admin .botao-whatsapp-inscrito.botao-acao-inscrito,
.botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 76px !important;
  min-width: 76px !important;
  height: 48px !important;
  min-height: 48px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.botao-whatsapp-confirmado.botao-acao-inscrito {
  background: #dcfce7 !important;
  color: #16a34a !important;
  box-shadow: 0 10px 24px rgba(22, 163, 74, .16) !important;
}
.botao-whatsapp-bloqueado.botao-acao-inscrito {
  background: #e9eef6 !important;
  color: #cbd5e1 !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.minha-inscricao-resumo-grid { margin: 18px 0; }
.minha-inscricao-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.status-inscricao-badge,
.status-checkin-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: auto;
  min-height: 38px;
  padding: 9px 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: .92rem;
  border: 1px solid transparent;
}
.status-inscricao-badge::before,
.status-checkin-badge::before { content: ''; width: 9px; height: 9px; border-radius: 999px; background: currentColor; }
.status-inscricao-badge.status-confirmado { background: #dcfce7; color: #047857; border-color: #bbf7d0; }
.status-inscricao-badge.status-lista_espera,
.status-inscricao-badge.status-reserva { background: #fef3c7; color: #b45309; border-color: #fde68a; }
.status-inscricao-badge.status-pendente,
.status-inscricao-badge.status-inscrito { background: #dbeafe; color: #1d4ed8; border-color: #bfdbfe; }
.status-inscricao-badge.status-cancelado { background: #fee2e2; color: #b91c1c; border-color: #fecaca; }
.status-checkin-badge.realizado { background: #ecfdf5; color: #059669; border-color: #a7f3d0; }
.status-checkin-badge.pendente { background: #f8fafc; color: #64748b; border-color: #e2e8f0; }

.dashboard-lista { max-height: none; overflow: visible; }
.dashboard-item { display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; }
.dashboard-item-main { display: flex; align-items: center; gap: 12px; min-width: 0; }
.dashboard-qr-toggle,
.dashboard-qr-placeholder {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 42px;
  font-size: 22px;
  font-weight: 900;
}
.dashboard-qr-toggle { border: 1px solid rgba(34, 197, 94, .42); background: rgba(34, 197, 94, .14); color: #86efac; cursor: pointer; }
.dashboard-qr-placeholder { border: 1px solid rgba(34, 197, 94, .26); background: rgba(34, 197, 94, .08); color: #22c55e; }
.dashboard-qr-collapse { grid-column: 1 / -1; }
.dashboard-qr-box {
  margin-top: 12px;
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: 22px;
  background: rgba(15, 23, 42, .82);
  padding: 18px;
  text-align: center;
}
.dashboard-qr-img img { width: min(280px, 100%); max-width: 100%; border-radius: 18px; background: #fff; padding: 10px; }
.dashboard-qr-box p { color: #cbd5e1; margin: 10px 0 0; font-weight: 700; }

@media (max-width: 640px) {
  .dashboard-item { grid-template-columns: 1fr; }
  .dashboard-item-hora { margin-left: 54px; }
  .status-inscricao-badge, .status-checkin-badge { width: 100%; justify-content: center; }
}

@media print {
  .dashboard-qr-toggle, .dashboard-qr-placeholder, .dashboard-qr-collapse { display: none !important; }
}


/* =========================================================
   v4.5 - identidade RCP Run Staff + grid de informações
========================================================= */
.system-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  pointer-events: none;
}
.system-brand img {
  display: block;
  width: min(320px, 70vw);
  max-height: 82px;
  object-fit: contain;
  filter: drop-shadow(0 14px 24px rgba(15, 23, 42, .10));
}
.system-brand-login {
  margin: -8px auto 22px;
}
.system-brand-login img {
  width: min(360px, 78vw);
  max-height: 92px;
}
.system-brand-internal {
  margin: 2px auto 14px;
  opacity: .78;
}
.system-brand-internal img {
  width: min(210px, 48vw);
  max-height: 56px;
  filter: drop-shadow(0 10px 18px rgba(15, 23, 42, .08));
}
body.checkin-page .checkin-logo-image {
  width: min(180px, 42vw);
  height: auto;
  min-height: 54px;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}
body.checkin-page .checkin-logo-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 12px 22px rgba(0, 0, 0, .22));
}
body.checkin-page .checkin-brand {
  align-items: center;
  gap: 18px;
}
.corrida-resumo-grid,
.minha-inscricao-resumo-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.corrida-resumo-grid .corrida-resumo-local,
.minha-inscricao-resumo-grid .corrida-resumo-local {
  grid-column: 1 / -1 !important;
}
@media (max-width: 480px) {
  .corrida-resumo-grid,
  .minha-inscricao-resumo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  .corrida-resumo-item {
    padding: 12px 12px !important;
    border-radius: 18px !important;
  }
  .corrida-resumo-item strong {
    font-size: 10px !important;
    letter-spacing: .09em !important;
  }
  .corrida-resumo-item span {
    font-size: 13px !important;
    line-height: 1.28 !important;
  }
  .corrida-resumo-grid .corrida-resumo-local span,
  .minha-inscricao-resumo-grid .corrida-resumo-local span {
    font-size: 14px !important;
  }
  .system-brand-internal {
    margin-top: 0;
    margin-bottom: 10px;
  }
  .system-brand-internal img {
    width: min(180px, 46vw);
    max-height: 48px;
  }
  .system-brand-login img {
    width: min(320px, 82vw);
    max-height: 86px;
  }
}


/* =========================================================
   v4.5 - Login mobile centralizado + PWA
   ========================================================= */
body.login-page {
  min-height: 100dvh !important;
  height: 100dvh !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 14px 18px !important;
  overflow: hidden !important;
}

.login-page .container {
  width: 100% !important;
  max-width: 520px !important;
  min-height: auto !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.login-page .login-card {
  width: 100% !important;
  max-height: calc(100dvh - 34px) !important;
  margin: 0 auto !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 760px) {
  body.login-page {
    padding: 12px 18px !important;
  }

  .login-page .login-card {
    padding: clamp(22px, 5.2vw, 32px) clamp(24px, 6vw, 34px) !important;
  }

  .login-page .subtitle {
    margin-bottom: 22px !important;
  }
}

@media (max-height: 760px) and (max-width: 760px) {
  body.login-page {
    align-items: center !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .system-brand-login {
    margin-bottom: 10px !important;
  }

  .system-brand-login img {
    max-height: 74px !important;
  }

  .login-page .login-card h1 {
    font-size: clamp(30px, 8vw, 40px) !important;
  }

  .login-page .field {
    margin-bottom: 14px !important;
  }

  .login-secondary-actions {
    gap: 8px !important;
  }
}

/* =========================================================
   v4.5 - Dashboard check-in: card inteiro clicável para abrir QR
   ========================================================= */
.dashboard-item[data-staff-id] {
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.dashboard-item[data-staff-id]:active {
  transform: scale(.995);
}

.dashboard-item[data-staff-id]:focus-visible {
  outline: 3px solid rgba(34, 211, 238, .45);
  outline-offset: 3px;
}



/* =========================================================
   v5.2 - Ajustes admin inscritos, status clicável e conferência
========================================================= */

.corrida-status-card-clickable {
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}

.corrida-status-card-clickable:active {
  transform: scale(.995);
}

.linha-inscrito-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
  align-items: center;
}

.admin-status-checkin {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.admin-status-checkin.checkin-ok {
  color: #047857;
  background: #dcfce7;
  border: 1px solid rgba(16, 185, 129, .25);
}

.admin-status-checkin.checkin-atrasado {
  color: #b45309;
  background: #fef3c7;
  border: 1px solid rgba(245, 158, 11, .25);
}

.botao-whatsapp-inscrito {
  width: auto !important;
  min-width: 0 !important;
  height: 44px !important;
  padding: 0 18px !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}

.botao-whatsapp-confirmado {
  background: #dcfce7 !important;
  color: #16a34a !important;
}

.botao-whatsapp-bloqueado {
  background: #eef2f7 !important;
  color: #b8c2d0 !important;
}

.botao-whatsapp-inscrito .icone-whatsapp-oficial-v188 {
  width: 24px !important;
  height: 24px !important;
}

.detalhes-inscrito-grid-v46 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 14px;
}

.detalhes-inscrito-grid-v46 p {
  margin: 0;
}

.detalhe-info-card {
  border: 1px solid rgba(148, 163, 184, .25);
  background: rgba(248, 250, 252, .88);
  border-radius: 16px;
  padding: 10px 12px;
  min-width: 0;
}

.detalhe-info-card small {
  display: block;
  margin-bottom: 4px;
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.detalhe-info-card strong,
.detalhe-info-card a {
  color: #0f172a;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.detalhe-info-contato a {
  color: #0f766e;
}

.detalhe-info-prioridade.alta {
  border-color: rgba(16, 185, 129, .35);
  background: #ecfdf5;
}

.detalhe-info-prioridade.media {
  border-color: rgba(245, 158, 11, .35);
  background: #fffbeb;
}

.detalhe-info-prioridade.baixa {
  border-color: rgba(148, 163, 184, .35);
  background: #f8fafc;
}

.botao-conferencia-staff {
  width: 100%;
  border: 0;
  border-radius: 18px;
  padding: 16px 18px;
  font-size: 15px;
  font-weight: 900;
  color: #fff;
  background: linear-gradient(135deg, #0ea5e9, #14b8a6);
  box-shadow: 0 14px 28px rgba(14, 165, 233, .18);
}

/* Página Conferência */
.conferencia-hero {
  margin: 22px 0;
}

.conferencia-toolbar {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 16px 0 22px;
}

.conferencia-toolbar select,
.conferencia-toolbar input {
  width: 100%;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(148, 163, 184, .35);
  background: #fff;
  color: #0f172a;
  font-weight: 700;
}

.conferencia-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.card-conferencia-staff {
  overflow: hidden;
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 40px rgba(15, 23, 42, .10);
  border: 1px solid rgba(226, 232, 240, .95);
}

.card-conferencia-foto {
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #e5e7eb;
  overflow: hidden;
}

.card-conferencia-foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.card-conferencia-foto-placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  color: #64748b;
  font-weight: 800;
  font-size: 12px;
}

.card-conferencia-body {
  padding: 12px;
}

.card-conferencia-body h3 {
  font-size: 15px;
  line-height: 1.15;
  color: #0f172a;
  margin-bottom: 8px;
}

.card-conferencia-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 10px;
}

.card-conferencia-info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  font-size: 12px;
  color: #475569;
}

.card-conferencia-info span {
  border-radius: 12px;
  background: #f8fafc;
  padding: 7px 8px;
  overflow-wrap: anywhere;
}

.card-conferencia-info strong {
  color: #0f172a;
}

.card-conferencia-info a {
  color: #0f766e;
  text-decoration: none;
  font-weight: 800;
}

@media (min-width: 760px) {
  .conferencia-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .conferencia-toolbar {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1100px) {
  .conferencia-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .detalhes-inscrito-grid-v46 {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .detalhe-info-card {
    padding: 9px 10px;
  }

  .detalhe-info-card strong,
  .detalhe-info-card a {
    font-size: 12px;
  }
}



/* v5.2 - Ajustes layout botões admin e conferência */
.admin-card-footer.admin-card-footer-v128 {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida {
  flex: 1 1 calc(50% - 7px);
}

.relatorios-admin-metade,
.botao-admin-metade {
  flex: 1 1 calc(50% - 7px) !important;
  width: auto !important;
}

.relatorios-admin-metade .botao-relatorios-toggle,
.botao-conferencia-staff.botao-admin-metade {
  width: 100% !important;
  min-height: 74px;
  height: 74px;
  margin: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  flex: 1 1 100%;
  width: 100% !important;
}

.botao-conferencia-staff.botao-admin-metade {
  border-radius: 18px;
  padding: 16px 18px;
  font-size: 15px;
  font-weight: 900;
  color: #fff;
  border: 0;
  background: linear-gradient(135deg, #0ea5e9, #14b8a6);
  box-shadow: 0 14px 28px rgba(14, 165, 233, .18);
}

@media (max-width: 520px) {
  .relatorios-admin-metade,
  .botao-admin-metade {
    flex-basis: calc(50% - 7px) !important;
  }

  .relatorios-admin-metade .botao-relatorios-toggle,
  .botao-conferencia-staff.botao-admin-metade {
    min-height: 70px;
    height: 70px;
    font-size: 14px;
  }
}



/* =========================================================
   v5.2 - Correção definitiva layout botões admin
========================================================= */

.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-excluir-corrida {
  min-height: 74px !important;
  height: 74px !important;
  padding: 14px 12px !important;
  font-size: 14px !important;
  border-radius: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos {
  min-height: 74px !important;
  height: 74px !important;
  border-radius: 18px !important;
}

.admin-card-footer.admin-card-footer-v128 .relatorios-admin {
  position: relative !important;
}

.botao-conferencia-staff {
  margin: 0 !important;
  box-shadow: 0 12px 24px rgba(14, 165, 233, .16) !important;
}



/* =========================================================
   v5.2 - Layout correto dos botões do card admin
   Ordem: Editar | Excluir | Conferência / Relatórios / Ver inscritos
========================================================= */

.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
}

.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos,
.botao-toggle-dias {
  min-height: 58px !important;
  height: 58px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos {
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 .relatorios-admin {
  position: relative !important;
}

.admin-card-footer.admin-card-footer-v128 .relatorios-painel {
  width: 100% !important;
  margin-top: 10px !important;
}

.botao-conferencia-staff {
  margin: 0 !important;
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
  box-shadow: 0 10px 20px rgba(14, 165, 233, .14) !important;
}

@media (max-width: 520px) {
  .admin-card-footer.admin-card-footer-v128 {
    gap: 9px !important;
  }

  .admin-card-footer.admin-card-footer-v128 .botao-editar-corrida,
  .admin-card-footer.admin-card-footer-v128 .botao-excluir-corrida,
  .admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff {
    font-size: 13px !important;
    padding: 9px 8px !important;
  }
}



/* =========================================================
   v4.5 - Correção Hellokit e botões compactos
========================================================= */

.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  align-items: stretch !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
}

.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff {
  min-height: 48px !important;
  height: 48px !important;
  padding: 8px 10px !important;
  border-radius: 15px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos,
.botao-toggle-dias {
  min-height: 54px !important;
  height: 54px !important;
  padding: 9px 12px !important;
  border-radius: 16px !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos {
  width: 100% !important;
}

.botao-conferencia-staff {
  margin: 0 !important;
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
  box-shadow: 0 8px 18px rgba(14, 165, 233, .13) !important;
}

@media (max-width: 520px) {
  .admin-card-footer.admin-card-footer-v128 {
    gap: 8px !important;
  }

  .admin-card-footer.admin-card-footer-v128 .botao-editar-corrida,
  .admin-card-footer.admin-card-footer-v128 .botao-excluir-corrida,
  .admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff {
    min-height: 46px !important;
    height: 46px !important;
    font-size: 13px !important;
    padding: 7px 8px !important;
  }
}



/* =========================================================
   v4.5 - Override final botões admin compactos
========================================================= */

.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 12px !important;
  align-items: stretch !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
  grid-column: 3 !important;
  grid-row: 1 !important;
}

.admin-card-footer.admin-card-footer-v128 > .relatorios-admin {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  grid-row: 3 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  padding: 7px 8px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle {
  height: 50px !important;
  min-height: 50px !important;
  max-height: 50px !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  height: 50px !important;
  min-height: 50px !important;
  max-height: 50px !important;
}

.admin-card-footer.admin-card-footer-v128 .relatorios-painel {
  width: 100% !important;
  margin-top: 10px !important;
}

.admin-card-footer.admin-card-footer-v128 .btn-ico {
  font-size: 14px !important;
  line-height: 1 !important;
}

.botao-conferencia-staff.botao-admin-terco {
  color: #ffffff !important;
  border: 0 !important;
  background: linear-gradient(135deg, #0ea5e9, #14b8a6) !important;
  box-shadow: 0 8px 18px rgba(14, 165, 233, .12) !important;
}

@media (max-width: 520px) {
  .admin-card-footer.admin-card-footer-v128 {
    gap: 7px !important;
  }

  .admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
  .admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
  .admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    font-size: 12.5px !important;
    padding: 6px 6px !important;
  }

  .admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
  .admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
  }
}



/* =========================================================
   v4.5 - Botões ainda mais compactos + relatórios corrigidos
========================================================= */

.admin-card-footer.admin-card-footer-v128 {
  gap: 6px !important;
  margin-top: 10px !important;
}

.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  padding: 5px 6px !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 6px 10px !important;
  border-radius: 13px !important;
  font-size: 13px !important;
}

.admin-card-footer.admin-card-footer-v128 .btn-ico {
  font-size: 13px !important;
}

@media (max-width: 520px) {
  .admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
  .admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida,
  .admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    font-size: 11.5px !important;
  }

  .admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
  .admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
  }
}



/* =========================================================
   v4.5 - Conferência sem ícones e Pix em 2 colunas
========================================================= */

.card-conferencia-info span {
  line-height: 1.25 !important;
}

.card-conferencia-info strong:empty {
  display: none !important;
}



/* =========================================================
   v4.5 - Ajustes de layout, admin, staff e compartilhamento
========================================================= */

.card-corrida .corrida-card-head {
  position: relative;
}

.botao-editar-corrida-tag {
  position: absolute;
  right: 12px;
  top: 12px;
  border: 1px solid rgba(99, 102, 241, .22);
  background: rgba(255,255,255,.9);
  color: #4f46e5;
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 900;
  font-size: 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .08);
}

.botao-excluir-corrida-edicao {
  margin-top: 12px;
  width: 100%;
  min-height: 44px;
  border-radius: 16px;
}

.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos,
.botao-toggle-dias {
  min-height: 46px !important;
  height: 46px !important;
  border-radius: 14px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.botao-whatsapp-inscrito,
.botao-whatsapp-confirmado,
.botao-whatsapp-bloqueado {
  height: 44px !important;
  min-height: 44px !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 16px !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}

.botao-whatsapp-inscrito .icone-whatsapp-oficial-v188 {
  width: 22px !important;
  height: 22px !important;
}

.detalhe-info-pcd {
  background: #eff6ff !important;
  border-color: rgba(59, 130, 246, .28) !important;
}

.corrida-resumo-grid-v42 .corrida-resumo-periodo {
  grid-column: 1 / -1;
}

.acoes-inscricao-share {
  display: grid;
  grid-template-columns: 1fr 52px;
  gap: 10px;
  align-items: stretch;
}

.acoes-inscricao-share .botao-inscricao {
  width: 100%;
}

.botao-compartilhar-corrida {
  border: 0;
  border-radius: 18px;
  background: #eef2ff;
  color: #4f46e5;
  font-size: 22px;
  font-weight: 900;
  min-height: 54px;
  box-shadow: 0 10px 24px rgba(79, 70, 229, .12);
}

.observacoes-admin-only.hidden {
  display: none !important;
}

.form-area#staffForm,
#staffForm {
  gap: 18px;
}

#staffForm .section-title:first-of-type,
#staffForm .section-title {
  margin-top: 6px;
}

.field-checkbox-admin .checkbox-admin-card,
.checkbox-admin-card {
  align-items: center;
  gap: 12px;
}

.card-conferencia-info strong:empty {
  display: none;
}



/* =========================================================
   v4.5 complemento - fluxo operacional staff/admin
========================================================= */

.minha-inscricao-badges-topo {
  margin: 12px 0 14px;
}

.minha-inscricao-resumo-grid .corrida-resumo-periodo,
.minha-inscricao-resumo-grid .corrida-resumo-local {
  grid-column: 1 / -1;
}

.minha-disponibilidade-operacional {
  margin-top: 18px;
}

.lista-dias-operacionais {
  display: grid;
  gap: 10px;
}

.dia-operacional-card,
.dia-corrida-card-v42 {
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: 18px;
  background: rgba(248, 250, 252, .92);
  overflow: hidden;
}

.dia-operacional-card summary,
.dia-corrida-card-v42 summary {
  cursor: pointer;
  list-style: none;
  padding: 13px 14px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
  font-weight: 900;
  color: #0f172a;
}

.dia-operacional-card summary::-webkit-details-marker,
.dia-corrida-card-v42 summary::-webkit-details-marker {
  display: none;
}

.dia-operacional-card summary small,
.dia-corrida-card-v42 summary small {
  color: #64748b;
  font-weight: 800;
  font-size: 12px;
}

.dia-operacional-detalhes,
.dia-corrida-detalhes {
  border-top: 1px solid rgba(148, 163, 184, .18);
  padding: 12px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.dia-operacional-detalhes div,
.dia-corrida-detalhes div {
  background: #fff;
  border-radius: 14px;
  padding: 9px 10px;
  border: 1px solid rgba(226, 232, 240, .8);
}

.dia-operacional-detalhes small,
.dia-corrida-detalhes small {
  display: block;
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 3px;
}

.dia-operacional-detalhes strong,
.dia-corrida-detalhes strong {
  color: #0f172a;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.dia-operacional-full {
  grid-column: 1 / -1;
}

.status-checkin-texto.realizado {
  color: #047857 !important;
}

.status-checkin-texto.pendente {
  color: #64748b !important;
}

.dia-corrida-card-v42 .checkin-dia-acoes {
  padding: 0 12px 12px;
}

@media (max-width: 520px) {
  .dia-operacional-detalhes,
  .dia-corrida-detalhes {
    grid-template-columns: 1fr;
  }
}

/* v4.5 - ajustes staff/admin/check-in */
.acoes-inscricao-share {
  grid-template-columns: minmax(0, 3fr) 48px !important;
  align-items: stretch !important;
}
.acoes-inscricao-share .botao-inscricao,
.botao-compartilhar-corrida {
  min-height: 52px !important;
  height: 52px !important;
}
.botao-compartilhar-corrida {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 1px solid rgba(79, 70, 229, .18) !important;
  border-radius: 16px !important;
  background: #f5f7ff !important;
  color: #4338ca !important;
  box-shadow: none !important;
}
.botao-compartilhar-corrida .icone-share-corrida {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body.body-corridas .lista-minhas-inscricoes,
.lista-minhas-inscricoes {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}
body.body-corridas .card-minha-inscricao,
.card-minha-inscricao {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.conteudo-minha-inscricao,
.minha-disponibilidade,
.lista-dias-operacionais {
  min-width: 0 !important;
  max-width: 100% !important;
}
.admin-card-topline {
  position: relative;
}
.botao-editar-corrida-card {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  min-height: 34px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(99, 102, 241, .22) !important;
  border-radius: 999px !important;
  background: #f5f7ff !important;
  color: #4338ca !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}
.botao-whatsapp-inscrito,
.botao-whatsapp-confirmado,
.botao-whatsapp-bloqueado {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}
.icone-whatsapp-oficial-v188 { width: 19px !important; height: 19px !important; }
.linha-inscrito-admin { cursor: pointer; }
.linha-inscrito-admin .checkbox-inscrito-batch,
.linha-inscrito-admin .linha-inscrito-acoes,
.linha-inscrito-admin a,
.linha-inscrito-admin button { cursor: auto; }
.detalhe-info-pcd,
.admin-tag-pcd {
  background: #eff6ff !important;
  border-color: rgba(59, 130, 246, .30) !important;
  color: #1d4ed8 !important;
}
.admin-meta-panel .admin-checkbox-inline,
.checkbox.admin-checkbox-inline {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(99, 102, 241, .18) !important;
  border-radius: 14px !important;
  background: #f8fafc !important;
  font-weight: 800 !important;
}
#fieldObservacoes.hidden,
.observacoes-admin-only.hidden { display: none !important; }
#staffForm .section-title:first-of-type { margin-top: 0 !important; }
@media (max-width: 640px) {
  .acoes-inscricao-share { grid-template-columns: minmax(0, 3fr) 46px !important; gap: 8px !important; }
  .acoes-inscricao-share .botao-inscricao, .botao-compartilhar-corrida { height: 50px !important; min-height: 50px !important; }
  .botao-editar-corrida-card { top: 10px !important; right: 10px !important; }
}
.dashboard-item-hora { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.dashboard-checkin-manual { border: 0; border-radius: 999px; padding: 7px 10px; background: #dcfce7; color: #166534; font-weight: 900; font-size: 11px; box-shadow: none; }
.card-corrida-admin { position: relative !important; }
.card-corrida-admin h3 { padding-right: 92px !important; }

/* v4.5 - revisão final credenciamento/status */
.admin-status-inscricao.pcd,
.card-conferencia-badges .admin-status-inscricao.pcd {
  background: #eff6ff !important;
  color: #1d4ed8 !important;
  border: 1px solid rgba(59, 130, 246, .25) !important;
}
.botao-excluir-corrida-edicao:not(.hidden) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  margin-top: 10px !important;
}
.disponibilidade-vazia {
  margin: 0 !important;
  color: #64748b !important;
  font-weight: 700 !important;
}


/* =========================================================
   v4.5 - Revisão corridas.html: cards, vagas, prazo e disponibilidade
========================================================= */
body.body-corridas .corrida-titulo-bloco {
  min-width: 0 !important;
}
body.body-corridas .corrida-prazo-inline {
  margin: 6px 0 0 !important;
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}
body.body-corridas .corrida-status-card {
  width: 100% !important;
  box-sizing: border-box !important;
}
body.body-corridas .corrida-resumo-grid-limpo {
  grid-template-columns: 1fr !important;
}
body.body-corridas .corrida-resumo-grid-limpo .corrida-resumo-item {
  grid-column: 1 / -1 !important;
}
body.body-corridas .acoes-inscricao-share {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 54px !important;
  align-items: stretch !important;
  gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.body-corridas .acoes-inscricao-share .botao-inscricao,
body.body-corridas .botao-compartilhar-corrida {
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  margin: 0 !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
}
body.body-corridas .botao-compartilhar-corrida {
  width: 54px !important;
  min-width: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
body.body-corridas .lista-minhas-inscricoes,
body.body-corridas .secao-minhas-inscricoes,
body.body-corridas .card-minha-inscricao,
body.body-corridas .conteudo-minha-inscricao,
body.body-corridas .minha-inscricao-resumo-grid,
body.body-corridas .minha-disponibilidade,
body.body-corridas .lista-dias-operacionais {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}
body.body-corridas .card-minha-inscricao {
  overflow: hidden !important;
}
body.body-corridas .conteudo-minha-inscricao {
  padding-left: clamp(18px, 5vw, 34px) !important;
  padding-right: clamp(18px, 5vw, 34px) !important;
}
body.body-corridas .minha-inscricao-resumo-grid {
  grid-template-columns: 1fr !important;
}
body.body-corridas .minha-inscricao-resumo-grid .corrida-resumo-item {
  grid-column: 1 / -1 !important;
}
@media (max-width: 640px) {
  body.body-corridas .acoes-inscricao-share {
    grid-template-columns: minmax(0, 1fr) 52px !important;
    gap: 8px !important;
  }
  body.body-corridas .acoes-inscricao-share .botao-inscricao,
  body.body-corridas .botao-compartilhar-corrida {
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
  }
  body.body-corridas .botao-compartilhar-corrida {
    width: 52px !important;
    min-width: 52px !important;
  }
}


/* =========================================================
   v5.2 REVISADA - Corridas mobile
   Correção real do espaço antes do botão de inscrição e do
   card "Minhas inscrições" espremido no mobile.
========================================================= */
body.body-corridas .card-corrida .disponibilidade-corrida {
  margin-bottom: 22px !important;
}

body.body-corridas .card-corrida .acoes-inscricao-share {
  margin-top: 24px !important;
  padding-top: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 54px !important;
  gap: 10px !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-corrida .acoes-inscricao-share .botao-inscricao,
body.body-corridas .card-corrida .botao-compartilhar-corrida {
  margin-top: 0 !important;
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-corrida .botao-compartilhar-corrida {
  width: 54px !important;
  min-width: 54px !important;
  max-width: 54px !important;
  padding: 0 !important;
  align-self: stretch !important;
}

body.body-corridas .secao-minhas-inscricoes,
body.body-corridas .lista-minhas-inscricoes {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body.body-corridas .card-minha-inscricao {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 0 22px 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  border-radius: var(--staff-card-radius, 28px) !important;
}

body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
  margin: 0 0 20px 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  border-radius: var(--staff-card-radius, 28px) var(--staff-card-radius, 28px) 0 0 !important;
  overflow: hidden !important;
}

body.body-corridas .card-minha-inscricao .corrida-card-banner,
body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  border-radius: 0 !important;
}

body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 22px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao h3 {
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  font-size: clamp(32px, 9vw, 52px) !important;
  line-height: .98 !important;
  overflow-wrap: break-word !important;
}

body.body-corridas .card-minha-inscricao .minha-inscricao-badges,
body.body-corridas .card-minha-inscricao .minha-inscricao-resumo-grid,
body.body-corridas .card-minha-inscricao .minha-disponibilidade,
body.body-corridas .card-minha-inscricao .lista-dias-operacionais {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-minha-inscricao .minha-inscricao-resumo-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

body.body-corridas .card-minha-inscricao .corrida-resumo-item,
body.body-corridas .card-minha-inscricao .status-inscricao-badge,
body.body-corridas .card-minha-inscricao .status-checkin-badge,
body.body-corridas .card-minha-inscricao .dia-operacional-card {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-minha-inscricao .corrida-resumo-item {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

@media (max-width: 640px) {
  body.body-corridas .pagina-corridas {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.body-corridas .card-corrida .acoes-inscricao-share {
    margin-top: 26px !important;
    grid-template-columns: minmax(0, 1fr) 52px !important;
    gap: 8px !important;
  }

  body.body-corridas .card-corrida .acoes-inscricao-share .botao-inscricao,
  body.body-corridas .card-corrida .botao-compartilhar-corrida {
    height: 54px !important;
    min-height: 54px !important;
    max-height: 54px !important;
  }

  body.body-corridas .card-corrida .botao-compartilhar-corrida {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
  }

  body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* =========================================================
   v5.2 - Correção corridas.html
   Mantém margens/paddings no mesmo padrão do admin e remove
   exageros criados na revisão anterior.
========================================================= */
body.body-corridas {
  padding: 20px 12px !important;
}

body.body-corridas .pagina-corridas {
  width: 100% !important;
  max-width: 760px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  gap: 24px !important;
}

body.body-corridas .card-staff,
body.body-corridas .cabecalho-corridas,
body.body-corridas .card-corrida,
body.body-corridas .lista-corridas > p,
body.body-corridas .lista-minhas-inscricoes > p,
body.body-corridas .card-minha-inscricao {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-corrida {
  padding: 24px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}

body.body-corridas .card-corrida.card-corrida-com-banner {
  padding: 0 0 24px 0 !important;
}

body.body-corridas .card-corrida .corrida-banner-wrap {
  margin: 0 0 24px 0 !important;
  width: 100% !important;
  border-radius: 28px 28px 0 0 !important;
  overflow: hidden !important;
}

body.body-corridas .card-corrida .corrida-card-head,
body.body-corridas .card-corrida .corrida-resumo-grid,
body.body-corridas .card-corrida .disponibilidade-corrida,
body.body-corridas .card-corrida .acoes-inscricao-share {
  margin-left: 24px !important;
  margin-right: 24px !important;
  width: calc(100% - 48px) !important;
  max-width: calc(100% - 48px) !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-corrida.card-corrida-sem-banner .corrida-card-head,
body.body-corridas .card-corrida.card-corrida-sem-banner .corrida-resumo-grid,
body.body-corridas .card-corrida.card-corrida-sem-banner .disponibilidade-corrida,
body.body-corridas .card-corrida.card-corrida-sem-banner .acoes-inscricao-share {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

body.body-corridas .card-corrida .corrida-card-head {
  margin-bottom: 18px !important;
  display: block !important;
}

body.body-corridas .card-corrida .corrida-card-head h2 {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
  line-height: 1.02 !important;
}

body.body-corridas .card-corrida .corrida-status-card {
  margin-top: 18px !important;
}

body.body-corridas .card-corrida .disponibilidade-corrida {
  margin-top: 20px !important;
  margin-bottom: 18px !important;
}

body.body-corridas .card-corrida .acoes-inscricao-share {
  margin-top: 22px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 52px !important;
  gap: 10px !important;
  align-items: stretch !important;
}

body.body-corridas .card-corrida .acoes-inscricao-share .botao-inscricao,
body.body-corridas .card-corrida .botao-compartilhar-corrida {
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  margin: 0 !important;
}

body.body-corridas .card-corrida .botao-compartilhar-corrida {
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
}

body.body-corridas .secao-minhas-inscricoes,
body.body-corridas .lista-minhas-inscricoes {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body.body-corridas .card-minha-inscricao {
  display: block !important;
  padding: 0 0 24px 0 !important;
  border-radius: 28px !important;
  overflow: hidden !important;
}

body.body-corridas .card-minha-inscricao.card-minha-sem-banner {
  padding: 24px !important;
}

body.body-corridas .card-minha-inscricao .corrida-banner-wrap {
  margin: 0 0 24px 0 !important;
  width: 100% !important;
  border-radius: 28px 28px 0 0 !important;
  overflow: hidden !important;
}

body.body-corridas .card-minha-inscricao .corrida-card-banner,
body.body-corridas .card-minha-inscricao .minha-inscricao-banner {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  border-radius: 0 !important;
}

body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  padding: 0 24px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-minha-inscricao.card-minha-sem-banner .conteudo-minha-inscricao {
  padding: 0 !important;
}

body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao h3 {
  margin: 0 0 14px 0 !important;
  font-size: clamp(30px, 7.6vw, 44px) !important;
  line-height: 1.02 !important;
  overflow-wrap: anywhere !important;
}

body.body-corridas .card-minha-inscricao .minha-inscricao-badges,
body.body-corridas .card-minha-inscricao .minha-inscricao-resumo-grid,
body.body-corridas .card-minha-inscricao .minha-disponibilidade,
body.body-corridas .card-minha-inscricao .lista-dias-operacionais {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

body.body-corridas .card-minha-inscricao .minha-inscricao-resumo-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

body.body-corridas .card-minha-inscricao .corrida-resumo-item,
body.body-corridas .card-minha-inscricao .status-inscricao-badge,
body.body-corridas .card-minha-inscricao .status-checkin-badge,
body.body-corridas .card-minha-inscricao .dia-operacional-card {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 640px) {
  body.body-corridas .card-staff,
  body.body-corridas .cabecalho-corridas,
  body.body-corridas .card-corrida,
  body.body-corridas .lista-corridas > p,
  body.body-corridas .lista-minhas-inscricoes > p,
  body.body-corridas .card-minha-inscricao {
    border-radius: 28px !important;
  }

  body.body-corridas .card-corrida .corrida-card-head,
  body.body-corridas .card-corrida .corrida-resumo-grid,
  body.body-corridas .card-corrida .disponibilidade-corrida,
  body.body-corridas .card-corrida .acoes-inscricao-share {
    margin-left: 22px !important;
    margin-right: 22px !important;
    width: calc(100% - 44px) !important;
    max-width: calc(100% - 44px) !important;
  }

  body.body-corridas .card-corrida.card-corrida-sem-banner .corrida-card-head,
  body.body-corridas .card-corrida.card-corrida-sem-banner .corrida-resumo-grid,
  body.body-corridas .card-corrida.card-corrida-sem-banner .disponibilidade-corrida,
  body.body-corridas .card-corrida.card-corrida-sem-banner .acoes-inscricao-share {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.body-corridas .card-minha-inscricao .conteudo-minha-inscricao {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }
}

/* v5.2 - Admin: vagas disponíveis dentro do card de status */
.card-corrida-admin .corrida-status-vagas-disponiveis {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  margin-top: 8px !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  font-size: clamp(13px, 2.8vw, 16px) !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #047857 !important;
  background: rgba(255,255,255,.55) !important;
  border: 1px solid rgba(16,185,129,.22) !important;
}
.card-corrida-admin .corrida-status-card.encerrada .corrida-status-vagas-disponiveis {
  color: #991b1b !important;
  border-color: rgba(248,113,113,.24) !important;
}

/* v5.2 ajuste - Admin: exibir vagas disponíveis dentro do status, visível no mobile */
.card-corrida-admin .corrida-status-vagas-disponiveis-admin {
  display: block !important;
  margin-top: 6px !important;
  font-size: clamp(13px, 2.9vw, 16px) !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #047857 !important;
  opacity: 1 !important;
}
.card-corrida-admin .corrida-status-card.encerrada .corrida-status-vagas-disponiveis-admin {
  color: #991b1b !important;
}

/* v5.2 - ajustes finos admin, WhatsApp, PCD, locais e PDF QR */
.grid-locais-corrida {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 4px;
}
.form-admin textarea#corrida-local-kit,
.form-admin textarea#corrida-local-corrida {
  min-height: 92px;
  line-height: 1.45;
  resize: vertical;
}
.botao-editar-corrida-card {
  background: #ffffff !important;
  color: #334155 !important;
  border: 1px solid rgba(148, 163, 184, .38) !important;
  min-height: 28px !important;
  height: 28px !important;
  padding: 3px 8px !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .05) !important;
}
.botao-editar-corrida-card::first-letter {
  font-size: 0;
}
.botao-excluir-corrida-edicao,
.botao-excluir-corrida-edicao:not(.hidden) {
  background: linear-gradient(135deg, #dc2626, #991b1b) !important;
  color: #ffffff !important;
  border: 0 !important;
  box-shadow: 0 10px 24px rgba(220, 38, 38, .22) !important;
  font-weight: 900 !important;
}
.botao-excluir-corrida-edicao:hover {
  filter: brightness(.98) !important;
}
.botao-whatsapp-inscrito,
.botao-whatsapp-confirmado,
.botao-whatsapp-bloqueado,
.card-corrida-admin .botao-whatsapp-inscrito.botao-acao-inscrito,
.linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  max-width: 36px !important;
  padding: 0 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  filter: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.icone-whatsapp-flat-wa {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 7px !important;
  background: #22c55e !important;
  color: #ffffff !important;
  font-size: 9px !important;
  font-weight: 950 !important;
  letter-spacing: -0.4px !important;
  line-height: 1 !important;
  font-family: Arial, Helvetica, sans-serif !important;
}
.botao-whatsapp-bloqueado .icone-whatsapp-flat-wa {
  background: #94a3b8 !important;
}
.detalhe-info-pcd,
.admin-tag-pcd,
.admin-status-inscricao.pcd,
.card-conferencia-badges .admin-status-inscricao.pcd {
  background: #ffffff !important;
  color: #334155 !important;
  border: 1px solid rgba(148, 163, 184, .36) !important;
}
.corrida-resumo-local-admin {
  grid-column: 1 / -1;
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 14px;
  padding: 10px 12px;
  background: #ffffff;
  margin-top: 8px;
}
.corrida-resumo-local-admin strong {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: #64748b;
  margin-bottom: 4px;
}
.corrida-resumo-local-admin span {
  display: block;
  color: #0f172a;
  font-weight: 800;
  line-height: 1.35;
}
@media (max-width: 760px) {
  .grid-locais-corrida { grid-template-columns: 1fr; }
  .card-corrida-admin h3 { padding-right: 82px !important; }
  .botao-editar-corrida-card { top: 10px !important; right: 10px !important; }
}
.botao-editar-corrida-card .icone-editar-flat {
  font-size: 12px !important;
  line-height: 1 !important;
  display: inline-block !important;
  transform: translateY(-.5px);
}
.botao-editar-corrida-card {
  gap: 4px !important;
}


/* v5.2 - ajustes finais solicitados: editar discreto, WhatsApp 4 colunas e margem do banner */
.card-corrida-admin {
  position: relative !important;
}
.card-corrida-admin .botao-editar-corrida-card {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 8 !important;
  height: 30px !important;
  min-height: 30px !important;
  width: auto !important;
  min-width: 74px !important;
  padding: 4px 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(226, 232, 240, .92) !important;
  background: rgba(255, 255, 255, .94) !important;
  color: #334155 !important;
  box-shadow: 0 6px 14px rgba(15, 23, 42, .08) !important;
  backdrop-filter: blur(8px) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  line-height: 1 !important;
  transform: none !important;
}
.card-corrida-admin .botao-editar-corrida-card .icone-editar-flat {
  font-size: 0 !important;
  width: 14px !important;
  height: 14px !important;
  display: inline-block !important;
  background: currentColor !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 17.25V21h3.75L18.8 9.95l-3.75-3.75L4 17.25Zm17.7-10.3c.4-.4.4-1 0-1.4L18.35 2.3c-.4-.4-1-.4-1.4 0l-2.6 2.6 3.75 3.75 2.6-2.6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 17.25V21h3.75L18.8 9.95l-3.75-3.75L4 17.25Zm17.7-10.3c.4-.4.4-1 0-1.4L18.35 2.3c-.4-.4-1-.4-1.4 0l-2.6 2.6 3.75 3.75 2.6-2.6Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  transform: none !important;
}
.card-corrida-admin .botao-editar-corrida-card:hover {
  background: #ffffff !important;
  color: #4f46e5 !important;
}

.card-corrida-admin .linha-inscrito-acoes-rapidas {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  justify-content: stretch !important;
  align-items: stretch !important;
  margin-top: 10px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-confirmado.botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-bloqueado.botao-acao-inscrito {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 !important;
  border-radius: 16px !important;
  border: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-confirmar-inscrito {
  background: #ecfdf5 !important;
  color: #16a34a !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-lista-espera-inscrito {
  background: #fef3c7 !important;
  color: #b45309 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-cancelar-inscrito {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-confirmado,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito {
  background: #dcfce7 !important;
  color: #22c55e !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-bloqueado {
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .icone-acao-svg {
  width: 22px !important;
  height: 22px !important;
  stroke: currentColor !important;
  stroke-width: 2.8 !important;
  fill: none !important;
}
.icone-whatsapp-admin-svg {
  width: 26px !important;
  height: 26px !important;
  display: block !important;
  fill: currentColor !important;
}
.icone-whatsapp-flat-wa { display: none !important; }

.field-banner-corrida {
  margin-bottom: 24px !important;
}
.grid-locais-corrida {
  margin-top: 20px !important;
  row-gap: 18px !important;
}
@media (max-width: 760px) {
  .field-banner-corrida { margin-bottom: 28px !important; }
  .grid-locais-corrida { margin-top: 22px !important; }
}


/* v5.2 ajuste final - PCD no mesmo padrão dos cards comuns */
.detalhe-info-pcd,
.admin-tag-pcd,
.admin-status-inscricao.pcd,
.card-conferencia-badges .admin-status-inscricao.pcd {
  background: #ffffff !important;
  color: #334155 !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  box-shadow: none !important;
}


/* v5.2 hotfix - PCD como tag branca e disponibilidade em Minhas Inscrições */
.card-corrida-admin .admin-tag-pcd,
.card-corrida-admin .admin-tags-disponibilidade .admin-tag-pcd {
  background: #ffffff !important;
  color: #2563eb !important;
  border: 1px solid rgba(147, 197, 253, .95) !important;
  box-shadow: none !important;
}
.card-corrida-admin .detalhe-info-pcd {
  display: none !important;
}

/* v5.6 - dias cadastrados no admin no padrão de Minha disponibilidade */
.card-corrida-admin .dias-corrida-container:not(.hidden),
.gerenciar-dias .dias-corrida-container:not(.hidden),
div[id^="dias-corrida-"].dias-corrida-container:not(.hidden) {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin-top: 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.card-corrida-admin .dias-corrida-container .dia-corrida-card,
.gerenciar-dias .dias-corrida-container .dia-corrida-card,
.card-corrida-admin .dia-corrida-card-v42 {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.card-corrida-admin .dia-corrida-card-v42 summary,
.gerenciar-dias .dia-corrida-card-v42 summary {
  min-height: 64px !important;
  padding: 12px 14px !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
  font-size: 16px !important;
  line-height: 1.18 !important;
}

.card-corrida-admin .dia-corrida-card-v42 summary strong,
.gerenciar-dias .dia-corrida-card-v42 summary strong {
  font-size: 16px !important;
  font-weight: 900 !important;
  color: #0f172a !important;
  line-height: 1.18 !important;
}

.card-corrida-admin .dia-corrida-card-v42 summary small,
.gerenciar-dias .dia-corrida-card-v42 summary small {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #64748b !important;
  white-space: nowrap !important;
}

.card-corrida-admin .dia-corrida-icone,
.gerenciar-dias .dia-corrida-icone {
  width: 28px !important;
  min-width: 28px !important;
  text-align: center !important;
  font-size: 18px !important;
}

.card-corrida-admin .dia-corrida-detalhes,
.gerenciar-dias .dia-corrida-detalhes {
  padding: 10px 12px 12px !important;
  gap: 8px !important;
}

.card-corrida-admin .dia-corrida-card-v42 .checkin-dia-acoes,
.gerenciar-dias .dia-corrida-card-v42 .checkin-dia-acoes {
  padding: 0 12px 12px !important;
}


/* ===== v5.6 ajustes admin/corridas ===== */
.gerenciar-informacoes-corrida {
  margin: 14px 0 10px;
}

.botao-toggle-info-corrida {
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: 18px;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 800;
  color: #ffffff;
  background: linear-gradient(135deg, #46566b, #26364c);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
}

.corrida-info-container {
  margin-top: 12px;
}

.linha-inscrito-admin {
  margin: 10px 0 !important;
  border-radius: 18px !important;
}

.linha-inscrito-principal {
  padding: 10px 12px !important;
  gap: 8px !important;
  min-height: unset !important;
}

.linha-inscrito-nome strong {
  font-size: 1rem !important;
  line-height: 1.1 !important;
}

.linha-inscrito-nome small {
  font-size: .82rem !important;
}

.linha-inscrito-acoes-rapidas {
  gap: 8px !important;
  margin-top: 8px !important;
}

.botao-acao-inscrito {
  min-height: 44px !important;
  height: 44px !important;
  border-radius: 15px !important;
  padding: 0 !important;
}

.linha-inscrito-detalhes {
  padding: 14px 12px 16px !important;
}

.detalhes-inscrito-grid {
  gap: 10px !important;
}

.detalhe-info-card {
  min-height: 70px !important;
  padding: 12px 14px !important;
}

.admin-acoes-secundarias-inscrito {
  margin: 12px 0 4px;
  display: flex;
  justify-content: flex-end;
}

.botao-descadastrar-inscrito {
  border: 1px solid rgba(239, 68, 68, .25);
  background: #fff5f5;
  color: #b91c1c;
  border-radius: 14px;
  padding: 10px 12px;
  font-weight: 800;
  font-size: .88rem;
}

.admin-tag-pcd {
  background: #ffffff !important;
  color: #2563eb !important;
  border-color: rgba(96, 165, 250, .45) !important;
}

.minha-inscricao-banner-wrap {
  position: relative;
}

.botao-compartilhar-banner {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 16px;
  padding: 0;
  background: rgba(255, 255, 255, .94);
  border: 1px solid rgba(99, 102, 241, .22);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .16);
  z-index: 4;
}

.botao-compartilhar-sem-banner {
  position: absolute;
  top: 14px;
  right: 14px;
}

.card-minha-inscricao {
  position: relative;
}

.botao-compartilhar-banner .icone-share-corrida {
  width: 24px;
  height: 24px;
}

@media (max-width: 640px) {
  .linha-inscrito-principal {
    grid-template-columns: auto auto 1fr auto !important;
  }

  .linha-inscrito-acoes-rapidas {
    grid-column: 1 / -1;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
  }

  .linha-inscrito-icones {
    gap: 6px !important;
  }

  .icone-tipo-dia {
    width: 36px !important;
    height: 36px !important;
  }
}

/* v5.6 revisão completa - ajustes combinados */
.card-corrida-admin .detalhe-info-pcd {
  display: flex !important;
  background: #ffffff !important;
  color: inherit !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  box-shadow: none !important;
}
.card-corrida-admin .admin-tag-pcd,
.card-corrida-admin .admin-tags-disponibilidade .admin-tag-pcd,
.linha-inscrito-admin .admin-status-inscricao.pcd {
  display: none !important;
}

.card-corrida-admin .linha-inscrito-admin {
  margin: 8px 0 !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .06) !important;
}
.card-corrida-admin .linha-inscrito-principal {
  padding: 8px 10px !important;
  gap: 7px !important;
}
.card-corrida-admin .linha-inscrito-check span,
.card-corrida-admin .botao-expandir-inscrito,
.card-corrida-admin .icone-tipo-dia {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
}
.card-corrida-admin .linha-inscrito-nome strong {
  font-size: .98rem !important;
}
.card-corrida-admin .linha-inscrito-nome small {
  font-size: .78rem !important;
}
.card-corrida-admin .linha-inscrito-badges {
  margin-top: 3px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  margin-top: 6px !important;
  gap: 7px !important;
}
.card-corrida-admin .botao-acao-inscrito,
.card-corrida-admin .botao-whatsapp-inscrito {
  height: 40px !important;
  min-height: 40px !important;
  border-radius: 14px !important;
  padding: 0 !important;
}
.card-corrida-admin .icone-acao-svg,
.card-corrida-admin .botao-whatsapp-inscrito svg,
.card-corrida-admin .icone-whatsapp-flat {
  width: 22px !important;
  height: 22px !important;
}
.card-corrida-admin .linha-inscrito-detalhes {
  padding: 12px 10px 14px !important;
}
.card-corrida-admin .detalhes-inscrito-grid {
  gap: 8px !important;
}
.card-corrida-admin .detalhe-info-card {
  min-height: 62px !important;
  padding: 10px 12px !important;
}

.admin-acoes-secundarias-inscrito {
  position: relative !important;
  margin: 10px 0 4px !important;
  justify-content: flex-end !important;
}
.botao-menu-acoes-inscrito {
  border: 1px solid rgba(148, 163, 184, .35) !important;
  background: #ffffff !important;
  color: #475569 !important;
  border-radius: 13px !important;
  padding: 8px 11px !important;
  font-weight: 850 !important;
  font-size: .84rem !important;
  box-shadow: none !important;
}
.menu-acoes-inscrito {
  position: absolute !important;
  right: 0 !important;
  top: calc(100% + 6px) !important;
  z-index: 10 !important;
  min-width: 210px !important;
  padding: 8px !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .15) !important;
}
.menu-acoes-inscrito.hidden { display: none !important; }
.botao-descadastrar-inscrito {
  width: 100% !important;
  border: 1px solid rgba(239, 68, 68, .25) !important;
  background: #fff5f5 !important;
  color: #b91c1c !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  font-weight: 850 !important;
  font-size: .84rem !important;
  text-align: left !important;
}

@media (max-width: 640px) {
  .card-corrida-admin .linha-inscrito-principal {
    grid-template-columns: auto auto minmax(0, 1fr) auto !important;
  }
  .card-corrida-admin .linha-inscrito-acoes-rapidas {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: 100% !important;
  }
}


/* ===== v5.6 correção real - admin/corridas ===== */
.hidden,
.corrida-info-container.hidden,
.menu-acoes-inscrito.hidden,
.linha-inscrito-detalhes.hidden {
  display: none !important;
}
.card-corrida,
.card-minha-inscricao,
.corrida-banner-wrap,
.minha-inscricao-banner-wrap {
  position: relative !important;
}
.botao-compartilhar-banner {
  position: absolute !important;
  top: 9px !important;
  right: 9px !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  border-radius: 13px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(148,163,184,.35) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.14) !important;
  color: #334155 !important;
  z-index: 5 !important;
}
.botao-compartilhar-banner .icone-share-corrida {
  width: 19px !important;
  height: 19px !important;
}
.acoes-inscricao-sem-share-inline {
  display: block !important;
  grid-template-columns: none !important;
}
.acoes-inscricao-sem-share-inline .botao-inscricao {
  width: 100% !important;
}
.card-corrida.card-corrida-sem-banner .botao-compartilhar-sem-banner,
.card-minha-sem-banner .botao-compartilhar-sem-banner {
  top: 10px !important;
  right: 10px !important;
}

/* collapse informações da corrida */
.gerenciar-informacoes-corrida .corrida-info-container.hidden {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
.gerenciar-informacoes-corrida .corrida-info-container:not(.hidden) {
  display: grid !important;
}

/* card inscrito fechado mais compacto */
.card-corrida-admin .admin-lista-compacta-inscritos {
  margin-top: 8px !important;
}
.card-corrida-admin .linha-inscrito-admin {
  margin: 6px 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(226,232,240,.85) !important;
  box-shadow: none !important;
  background: #fff !important;
  overflow: visible !important;
}
.card-corrida-admin .linha-inscrito-principal {
  padding: 7px 8px !important;
  gap: 6px !important;
  align-items: center !important;
}
.card-corrida-admin .linha-inscrito-check span,
.card-corrida-admin .botao-expandir-inscrito,
.card-corrida-admin .icone-tipo-dia {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 10px !important;
}
.card-corrida-admin .linha-inscrito-nome strong {
  font-size: .92rem !important;
  line-height: 1.05 !important;
}
.card-corrida-admin .linha-inscrito-nome small {
  font-size: .73rem !important;
  line-height: 1.1 !important;
}
.card-corrida-admin .linha-inscrito-badges {
  margin-top: 2px !important;
  gap: 4px !important;
}
.card-corrida-admin .admin-status-inscricao,
.card-corrida-admin .admin-prioridade-badge,
.card-corrida-admin .admin-checkin-badge {
  padding: 3px 6px !important;
  font-size: .66rem !important;
  border-radius: 999px !important;
}
.card-corrida-admin .linha-inscrito-icones {
  gap: 4px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  margin-top: 5px !important;
  gap: 6px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito {
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  border-radius: 12px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .icone-acao-svg,
.card-corrida-admin .linha-inscrito-acoes-rapidas .icone-whatsapp-admin-svg {
  width: 20px !important;
  height: 20px !important;
}

/* ações extras fora do card aberto */
.card-corrida-admin .admin-acoes-secundarias-inscrito {
  padding: 0 8px 7px !important;
  margin: -2px 0 0 !important;
  display: flex !important;
  justify-content: flex-end !important;
  position: relative !important;
}
.card-corrida-admin .botao-menu-acoes-inscrito {
  min-height: 30px !important;
  padding: 5px 9px !important;
  border-radius: 10px !important;
  font-size: .76rem !important;
}
.card-corrida-admin .linha-inscrito-detalhes {
  padding: 10px 9px 12px !important;
  border-top: 1px solid rgba(226,232,240,.75) !important;
}

/* PCD em card de dados com quebra correta */
.card-corrida-admin .detalhe-info-pcd {
  display: block !important;
  background: #ffffff !important;
  color: #334155 !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  box-shadow: none !important;
}
.card-corrida-admin .detalhe-info-pcd small,
.card-corrida-admin .detalhe-info-pcd strong,
.card-corrida-admin .detalhe-info-card small,
.card-corrida-admin .detalhe-info-card strong {
  display: block !important;
  width: 100% !important;
}
.card-corrida-admin .detalhe-info-pcd small {
  margin-bottom: 5px !important;
}
.card-corrida-admin .admin-tag-pcd,
.card-corrida-admin .admin-status-inscricao.pcd,
.linha-inscrito-admin .admin-status-inscricao.pcd {
  display: none !important;
}

@media (max-width: 640px) {
  .card-corrida-admin .linha-inscrito-principal {
    grid-template-columns: auto auto minmax(0, 1fr) auto !important;
  }
  .card-corrida-admin .linha-inscrito-acoes-rapidas {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* ===== v5.7 ajustes admin: botões, PCD e card inscrito compacto ===== */
.gerenciar-informacoes-corrida .botao-toggle-info-corrida,
.gerenciar-dias .botao-toggle-dias {
  width: 100% !important;
  min-height: 42px !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  border: 0 !important;
  background: linear-gradient(135deg,#eef2ff,#e0f2fe) !important;
  color: #1e3a8a !important;
  font-size: .88rem !important;
  font-weight: 850 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  box-shadow: 0 10px 22px rgba(37,99,235,.10) !important;
}
.gerenciar-informacoes-corrida .botao-toggle-info-corrida .btn-ico,
.gerenciar-dias .botao-toggle-dias .btn-ico {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

.card-corrida-admin .botao-editar-corrida-card {
  top: 14px !important;
  right: 14px !important;
}
@media (max-width: 640px) {
  .card-corrida-admin .botao-editar-corrida-card {
    top: 12px !important;
    right: 12px !important;
  }
}

/* PCD deve seguir exatamente o padrão dos cards CPF/RG/PIX */
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd {
  background: #f8fafc !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  border-radius: 14px !important;
  padding: 10px 12px !important;
  color: #334155 !important;
  box-shadow: none !important;
}
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd small,
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd strong {
  display: block !important;
  width: 100% !important;
  white-space: normal !important;
  line-height: 1.18 !important;
}
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd small { margin-bottom: 4px !important; }

/* Card fechado do inscrito: reorganização mobile-first */
.card-corrida-admin .linha-inscrito-admin {
  margin: 5px 0 !important;
  padding: 0 !important;
  border-radius: 12px !important;
  border: 1px solid rgba(226,232,240,.78) !important;
  background: #fff !important;
  box-shadow: none !important;
}
.card-corrida-admin .linha-inscrito-principal {
  display: grid !important;
  grid-template-columns: 24px 24px minmax(0,1fr) 32px !important;
  grid-template-areas:
    "check expand nome menu"
    "acoes acoes acoes acoes" !important;
  gap: 4px 5px !important;
  align-items: center !important;
  padding: 6px 7px !important;
}
.card-corrida-admin .linha-inscrito-check { grid-area: check !important; margin: 0 !important; }
.card-corrida-admin .botao-expandir-inscrito { grid-area: expand !important; margin: 0 !important; }
.card-corrida-admin .linha-inscrito-nome { grid-area: nome !important; min-width: 0 !important; margin: 0 !important; gap: 1px !important; }
.card-corrida-admin .linha-inscrito-menu-topo { grid-area: menu !important; justify-self: end !important; position: relative !important; }
.card-corrida-admin .linha-inscrito-acoes-rapidas { grid-area: acoes !important; }
.card-corrida-admin .linha-inscrito-check span,
.card-corrida-admin .botao-expandir-inscrito {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  border-radius: 8px !important;
}
.card-corrida-admin .linha-inscrito-check input { width: 18px !important; height: 18px !important; }
.card-corrida-admin .icone-expandir-inscrito { width: 15px !important; height: 15px !important; }
.card-corrida-admin .linha-inscrito-nome strong {
  font-size: .9rem !important;
  line-height: 1.03 !important;
  margin: 0 !important;
}
.card-corrida-admin .linha-inscrito-nome small {
  font-size: .7rem !important;
  line-height: 1.05 !important;
  margin: 1px 0 0 !important;
}
.card-corrida-admin .linha-inscrito-badges {
  margin-top: 2px !important;
  gap: 3px !important;
}
.card-corrida-admin .admin-status-inscricao,
.card-corrida-admin .admin-checkin-badge {
  padding: 2px 5px !important;
  font-size: .62rem !important;
  line-height: 1.05 !important;
}
.card-corrida-admin .linha-inscrito-icones {
  display: none !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  margin-top: 3px !important;
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 5px !important;
  width: 100% !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito {
  height: 32px !important;
  min-height: 32px !important;
  max-height: 32px !important;
  border-radius: 10px !important;
  padding: 0 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .icone-acao-svg,
.card-corrida-admin .linha-inscrito-acoes-rapidas .icone-whatsapp-admin-svg {
  width: 18px !important;
  height: 18px !important;
}
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito {
  width: 30px !important;
  height: 28px !important;
  min-width: 30px !important;
  min-height: 28px !important;
  padding: 0 !important;
  border-radius: 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  line-height: 1 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  box-shadow: none !important;
}
.card-corrida-admin .linha-inscrito-menu-topo .menu-acoes-inscrito {
  position: absolute !important;
  top: 32px !important;
  right: 0 !important;
  z-index: 30 !important;
  min-width: 190px !important;
  background: #fff !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  border-radius: 12px !important;
  padding: 6px !important;
  box-shadow: 0 16px 34px rgba(15,23,42,.14) !important;
}
.card-corrida-admin .linha-inscrito-menu-topo .botao-descadastrar-inscrito {
  width: 100% !important;
  border: 0 !important;
  border-radius: 9px !important;
  padding: 9px 10px !important;
  background: #fee2e2 !important;
  color: #991b1b !important;
  font-weight: 850 !important;
  font-size: .78rem !important;
  text-align: left !important;
}
.card-corrida-admin .admin-acoes-secundarias-inscrito { display: none !important; }
.card-corrida-admin .linha-inscrito-detalhes {
  padding: 9px 8px 10px !important;
  border-top: 1px solid rgba(226,232,240,.75) !important;
}
.card-corrida-admin .detalhes-inscrito-disponibilidade-resumo {
  display: flex !important;
  gap: 6px !important;
  margin: 8px 0 6px !important;
  align-items: center !important;
}
.card-corrida-admin .detalhes-inscrito-disponibilidade-resumo .icone-tipo-dia {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}


/* ===== v6.1 - revisão segura a partir da v5.7 =====
   Objetivo: recuperar a base visual estável e aplicar ajustes sem alterar drasticamente a página. */

/* 1) Padrão de botões principais do admin: mesmo raio, espaçamento e peso visual */
.card-corrida-admin .gerenciar-informacoes-corrida,
.card-corrida-admin .gerenciar-dias,
.card-corrida-admin .admin-card-footer-v128,
.card-corrida-admin .relatorios-admin {
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}

.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias,
.card-corrida-admin .botao-conferencia-staff,
.card-corrida-admin .botao-relatorios-toggle,
.card-corrida-admin .botao-ver-inscritos {
  min-height: 46px !important;
  border-radius: 16px !important;
  padding: 11px 14px !important;
  font-weight: 850 !important;
  letter-spacing: -0.01em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 0 !important;
  box-shadow: 0 12px 24px rgba(15, 23, 42, .12) !important;
}

.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias {
  width: 100% !important;
  color: #fff !important;
  background: linear-gradient(135deg, #334155, #1e293b) !important;
}

.card-corrida-admin .botao-conferencia-staff {
  color: #fff !important;
  background: linear-gradient(135deg, #0f766e, #14b8a6) !important;
}

.card-corrida-admin .botao-relatorios-toggle {
  color: #fff !important;
  background: linear-gradient(135deg, #7c3aed, #4f46e5) !important;
}

.card-corrida-admin .botao-ver-inscritos {
  color: #fff !important;
  background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
}

.card-corrida-admin .botao-toggle-info-corrida .btn-ico,
.card-corrida-admin .botao-toggle-dias .btn-ico,
.card-corrida-admin .botao-conferencia-staff .btn-ico,
.card-corrida-admin .botao-relatorios-toggle .btn-ico,
.card-corrida-admin .botao-ver-inscritos .btn-ico {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

/* 2) Botão editar no banner: discreto, mas sem colar no canto */
.card-corrida-admin .botao-editar-corrida-card {
  top: 14px !important;
  right: 14px !important;
  border-radius: 13px !important;
  padding: 7px 10px !important;
  background: rgba(255,255,255,.96) !important;
  color: #334155 !important;
  border: 1px solid rgba(226,232,240,.9) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.12) !important;
}

/* 3) Collapse Informações da corrida: só mostra o conteúdo quando aberto */
.card-corrida-admin .corrida-info-container.hidden,
.gerenciar-informacoes-corrida .corrida-info-container.hidden {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
.card-corrida-admin .corrida-info-container:not(.hidden) {
  display: grid !important;
  margin-top: 10px !important;
}

/* 4) Card fechado do inscrito: compacto, sem alterar tamanho aprovado dos botões principais */
.card-corrida-admin .linha-inscrito-admin {
  margin: 6px 0 !important;
  padding: 0 !important;
  border-radius: 14px !important;
  border: 1px solid rgba(226,232,240,.85) !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.card-corrida-admin .linha-inscrito-principal {
  display: grid !important;
  grid-template-columns: 28px 28px minmax(0, 1fr) 32px !important;
  grid-template-areas:
    "check expand nome menu"
    "acoes acoes acoes acoes" !important;
  align-items: center !important;
  gap: 5px 6px !important;
  padding: 7px 8px !important;
  min-height: unset !important;
}
.card-corrida-admin .linha-inscrito-check { grid-area: check !important; margin: 0 !important; }
.card-corrida-admin .botao-expandir-inscrito { grid-area: expand !important; margin: 0 !important; }
.card-corrida-admin .linha-inscrito-nome { grid-area: nome !important; min-width: 0 !important; gap: 1px !important; margin: 0 !important; }
.card-corrida-admin .linha-inscrito-menu-topo { grid-area: menu !important; justify-self: end !important; position: relative !important; }
.card-corrida-admin .linha-inscrito-acoes-rapidas { grid-area: acoes !important; }

.card-corrida-admin .linha-inscrito-check span,
.card-corrida-admin .botao-expandir-inscrito {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 9px !important;
}
.card-corrida-admin .linha-inscrito-check input {
  width: 18px !important;
  height: 18px !important;
}
.card-corrida-admin .icone-expandir-inscrito {
  width: 16px !important;
  height: 16px !important;
}
.card-corrida-admin .linha-inscrito-nome strong {
  font-size: .94rem !important;
  line-height: 1.08 !important;
  margin: 0 !important;
}
.card-corrida-admin .linha-inscrito-nome small {
  font-size: .74rem !important;
  line-height: 1.08 !important;
  margin-top: 1px !important;
}
.card-corrida-admin .linha-inscrito-badges {
  margin-top: 3px !important;
  gap: 4px !important;
}
.card-corrida-admin .admin-status-inscricao,
.card-corrida-admin .admin-checkin-badge {
  padding: 3px 6px !important;
  font-size: .66rem !important;
  line-height: 1.05 !important;
  border-radius: 999px !important;
}
.card-corrida-admin .linha-inscrito-icones {
  display: none !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  margin-top: 6px !important;
  gap: 6px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
}

/* Mantém o tamanho dos botões principais aprovado; só reduz espaços ao redor */
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-whatsapp-inscrito.botao-acao-inscrito {
  padding: 0 !important;
}

/* 5) Menu de ações no topo direito, mais discreto */
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito {
  width: 30px !important;
  height: 28px !important;
  min-width: 30px !important;
  min-height: 28px !important;
  padding: 0 !important;
  border-radius: 9px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 18px !important;
  line-height: 1 !important;
  background: #f8fafc !important;
  color: #334155 !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  box-shadow: none !important;
}
.card-corrida-admin .linha-inscrito-menu-topo .menu-acoes-inscrito {
  position: absolute !important;
  top: 32px !important;
  right: 0 !important;
  z-index: 30 !important;
  min-width: 196px !important;
  background: #fff !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  border-radius: 12px !important;
  padding: 6px !important;
  box-shadow: 0 16px 34px rgba(15,23,42,.14) !important;
}
.card-corrida-admin .linha-inscrito-menu-topo .menu-acoes-inscrito.hidden { display: none !important; }
.card-corrida-admin .linha-inscrito-menu-topo .botao-descadastrar-inscrito {
  width: 100% !important;
  border: 0 !important;
  border-radius: 9px !important;
  padding: 9px 10px !important;
  background: #fee2e2 !important;
  color: #991b1b !important;
  font-weight: 850 !important;
  font-size: .78rem !important;
  text-align: left !important;
}
.card-corrida-admin .admin-acoes-secundarias-inscrito { display: none !important; }

/* 6) Ícones de disponibilidade apenas dentro do card aberto */
.card-corrida-admin .detalhes-inscrito-disponibilidade-resumo {
  display: flex !important;
  gap: 6px !important;
  margin: 8px 0 6px !important;
  align-items: center !important;
}
.card-corrida-admin .detalhes-inscrito-disponibilidade-resumo .icone-tipo-dia {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 10px !important;
}

/* 7) PCD segue o mesmo padrão visual de CPF/RG/PIX */
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd {
  background: #f8fafc !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  border-radius: 14px !important;
  padding: 10px 12px !important;
  color: #334155 !important;
  box-shadow: none !important;
}
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd small,
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd strong {
  display: block !important;
  width: 100% !important;
  white-space: normal !important;
  line-height: 1.18 !important;
}
.card-corrida-admin .detalhe-info-card.detalhe-info-pcd small { margin-bottom: 4px !important; }
.card-corrida-admin .admin-tag-pcd,
.card-corrida-admin .admin-status-inscricao.pcd,
.linha-inscrito-admin .admin-status-inscricao.pcd {
  display: none !important;
}

/* 8) Compartilhar corrida no canto superior do banner, menor e consistente */
.card-corrida,
.card-minha-inscricao,
.corrida-banner-wrap,
.minha-inscricao-banner-wrap {
  position: relative !important;
}
.botao-compartilhar-banner {
  position: absolute !important;
  top: 9px !important;
  right: 9px !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  border-radius: 13px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(148,163,184,.35) !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.14) !important;
  color: #334155 !important;
  z-index: 5 !important;
}
.botao-compartilhar-banner .icone-share-corrida {
  width: 19px !important;
  height: 19px !important;
}


/* ===== v6.1 ajustes finais admin/credenciamento ===== */
.card-corrida-admin .gerenciar-informacoes-corrida,
.card-corrida-admin .gerenciar-dias,
.card-corrida-admin .admin-card-footer-v128 {
  margin-top: 12px !important;
}
.card-corrida-admin .admin-card-footer-v128 {
  gap: 12px !important;
}
.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias,
.card-corrida-admin .botao-conferencia-staff,
.card-corrida-admin .botao-relatorios-toggle,
.card-corrida-admin .botao-ver-inscritos {
  width: 100% !important;
  min-height: 52px !important;
  height: 52px !important;
  padding: 0 14px !important;
  border-radius: 18px !important;
  margin: 0 !important;
  line-height: 1.1 !important;
  box-sizing: border-box !important;
}
.card-corrida-admin .relatorios-admin {
  width: 100% !important;
  margin: 0 !important;
}
.linha-inscrito-meta {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-top: 4px !important;
}
.linha-inscrito-meta small {
  margin: 0 !important;
}
.linha-inscrito-meta .admin-status-inscricao {
  margin: 0 !important;
  white-space: nowrap !important;
}
.conferencia-toolbar select,
.conferencia-toolbar input {
  min-height: 48px !important;
}
@media (min-width: 760px) {
  .conferencia-toolbar {
    grid-template-columns: 1fr 1fr 1fr !important;
  }
}


/* v6.1 - inscritos admin: lista mais limpa e compacta */
.card-corrida-admin .admin-lista-compacta-inscritos {
  gap: 0 !important;
  margin-top: 10px !important;
}

.card-corrida-admin .linha-inscrito-admin {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(148, 163, 184, .22) !important;
  overflow: visible !important;
}

.card-corrida-admin .linha-inscrito-admin:last-child {
  border-bottom: 0 !important;
}

.card-corrida-admin .linha-inscrito-admin:hover {
  box-shadow: none !important;
  background: rgba(248, 250, 252, .55) !important;
}

.card-corrida-admin .linha-inscrito-principal {
  grid-template-columns: 28px 34px minmax(0, 1fr) auto !important;
  column-gap: 6px !important;
  padding: 10px 2px 12px !important;
}

.card-corrida-admin .linha-inscrito-check {
  width: 28px !important;
  min-width: 28px !important;
  justify-content: flex-start !important;
}

.card-corrida-admin .botao-expandir-inscrito {
  width: 34px !important;
  min-width: 34px !important;
}

.card-corrida-admin .linha-inscrito-nome {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* v6.1 - resumo do credenciamento abaixo da busca */
.resumo-conferencia {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding: 9px 14px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid rgba(148, 163, 184, .25);
  color: #475569;
  font-weight: 800;
  font-size: 14px;
}

/* =========================================================
   v6.2 - refinamentos admin, seleção por faixa e salvar flutuante
========================================================= */
.pagina-admin,
main.pagina-admin {
  max-width: 1120px !important;
  width: min(100% - 24px, 1120px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.card-corrida-admin .gerenciar-dias,
.card-corrida-admin .gerenciar-informacoes-corrida {
  width: 100% !important;
  grid-column: 1 / -1 !important;
  display: block !important;
}

.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias,
.botao-toggle-info-corrida,
.botao-toggle-dias {
  width: 100% !important;
  min-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.01em !important;
}

.card-corrida-admin .botao-toggle-info-corrida .btn-ico,
.card-corrida-admin .botao-toggle-dias .btn-ico {
  width: 24px !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 0 !important;
}

.card-corrida-admin .btn-ico-svg {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  color: currentColor !important;
}

.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card {
  background: #f8fafc !important;
  border: 1px solid rgba(148, 163, 184, .26) !important;
}
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-confirmados {
  background: #ecfdf5 !important;
  border-color: rgba(22, 163, 74, .28) !important;
  color: #166534 !important;
}
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-pendentes {
  background: #eff6ff !important;
  border-color: rgba(37, 99, 235, .25) !important;
  color: #1d4ed8 !important;
}
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-espera {
  background: #f0f9ff !important;
  border-color: rgba(14, 165, 233, .28) !important;
  color: #0369a1 !important;
}
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-cancelados {
  background: #fef2f2 !important;
  border-color: rgba(185, 28, 28, .22) !important;
  color: #991b1b !important;
}
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-vagas,
.card-corrida-admin .admin-inscritos-resumo-v127 .resumo-card-total {
  background: #f8fafc !important;
  border-color: rgba(100, 116, 139, .24) !important;
  color: #334155 !important;
}

.card-corrida-admin .linha-inscrito-admin {
  position: relative !important;
  overflow: hidden !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(226, 232, 240, .95) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
}
.card-corrida-admin .linha-inscrito-admin + .linha-inscrito-admin {
  margin-top: 0 !important;
}
.card-corrida-admin .linha-inscrito-admin.is-selected {
  background: #f8fffb !important;
}
.card-corrida-admin .linha-inscrito-principal {
  display: grid !important;
  grid-template-columns: 14px 34px minmax(0, 1fr) auto !important;
  gap: 8px !important;
  align-items: center !important;
  padding: 10px 10px 10px 0 !important;
}
.card-corrida-admin .linha-inscrito-select-zone {
  align-self: stretch !important;
  width: 14px !important;
  min-width: 14px !important;
  min-height: 74px !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer !important;
  display: block !important;
  position: relative !important;
}
.card-corrida-admin .linha-inscrito-select-zone:disabled {
  opacity: .45 !important;
  cursor: not-allowed !important;
}
.card-corrida-admin .linha-inscrito-select-zone input,
.card-corrida-admin .linha-inscrito-check,
.card-corrida-admin .linha-inscrito-check input {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
.card-corrida-admin .linha-inscrito-select-rail {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 7px !important;
  border-radius: 0 999px 999px 0 !important;
  background: #cbd5e1 !important;
  transition: background .18s ease, width .18s ease !important;
}
.card-corrida-admin .linha-inscrito-admin.is-selected .linha-inscrito-select-rail,
.card-corrida-admin .linha-inscrito-select-zone[aria-pressed="true"] .linha-inscrito-select-rail {
  width: 9px !important;
  background: #22c55e !important;
}

.card-corrida-admin .botao-menu-acoes-inscrito {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #334155 !important;
  padding: 4px !important;
  min-width: 28px !important;
  width: 28px !important;
  height: 32px !important;
  border-radius: 0 !important;
  font-size: 23px !important;
  line-height: 1 !important;
}
.card-corrida-admin .botao-menu-acoes-inscrito:hover {
  background: transparent !important;
  box-shadow: none !important;
}

.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-lista-espera-inscrito {
  background: #e0f2fe !important;
  color: #0284c7 !important;
  border: 1px solid rgba(2, 132, 199, .22) !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-confirmar-inscrito:disabled {
  background: #f0fdf4 !important;
  color: #16a34a !important;
  border: 1px solid rgba(22, 163, 74, .30) !important;
  opacity: .86 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-lista-espera-inscrito:disabled {
  background: #f0f9ff !important;
  color: #0284c7 !important;
  border: 1px solid rgba(2, 132, 199, .30) !important;
  opacity: .86 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-cancelar-inscrito:disabled {
  background: #fef2f2 !important;
  color: #b91c1c !important;
  border: 1px solid rgba(185, 28, 28, .28) !important;
  opacity: .86 !important;
}

.salvar-corrida-flutuante {
  position: fixed !important;
  right: max(16px, calc((100vw - 620px) / 2 + 16px)) !important;
  bottom: 18px !important;
  z-index: 10000 !important;
  min-height: 52px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #22c55e, #16a34a) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  box-shadow: 0 16px 34px rgba(22, 163, 74, .32) !important;
}
.salvar-corrida-flutuante.hidden {
  display: none !important;
}
.salvar-corrida-flutuante:disabled {
  opacity: .75 !important;
}
.salvar-flutuante-ico {
  width: 24px !important;
  height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.18) !important;
}

@media (max-width: 640px) {
  .pagina-admin,
  main.pagina-admin {
    width: calc(100% - 24px) !important;
    max-width: none !important;
  }
  .card-corrida-admin .linha-inscrito-principal {
    grid-template-columns: 12px 32px minmax(0, 1fr) auto !important;
    gap: 7px !important;
    padding-right: 8px !important;
  }
  .card-corrida-admin .linha-inscrito-select-zone {
    width: 12px !important;
    min-width: 12px !important;
  }
  .salvar-corrida-flutuante {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    width: auto !important;
  }
}

/* v6.2 hotfix grid interno inscrito */
.card-corrida-admin .linha-inscrito-nome {
  min-width: 0 !important;
  grid-column: 3 / 4 !important;
}
.card-corrida-admin .linha-inscrito-menu-topo {
  grid-column: 4 / 5 !important;
  justify-self: end !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  grid-column: 3 / 5 !important;
  width: 100% !important;
}
.card-corrida-admin .linha-inscrito-detalhes {
  border-left: 9px solid transparent !important;
}
.card-corrida-admin .linha-inscrito-admin.is-selected .linha-inscrito-detalhes {
  border-left-color: rgba(34, 197, 94, .22) !important;
}

/* =========================================================
   v6.4 - revisão real dos ajustes solicitados
========================================================= */
.pagina-admin,
main.pagina-admin {
  max-width: 760px !important;
  width: min(100% - 24px, 760px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:has(.form-edicao-corrida:not(.hidden)) .floating-calendar-btn,
body:has(.form-edicao-corrida:not(.hidden)) .floating-yescom-btn {
  display: none !important;
}

.form-edicao-corrida #salvar-corrida-btn {
  display: none !important;
}

.card-corrida-admin .gerenciar-informacoes-corrida,
.card-corrida-admin .gerenciar-dias {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias {
  width: 100% !important;
  min-height: 44px !important;
  padding: 11px 14px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
  line-height: 1.12 !important;
  font-weight: 850 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 0 !important;
  color: #fff !important;
}

.card-corrida-admin .botao-toggle-info-corrida {
  background: linear-gradient(135deg, #0ea5e9, #2563eb) !important;
  box-shadow: 0 10px 22px rgba(37, 99, 235, .18) !important;
}

.card-corrida-admin .botao-toggle-dias {
  background: linear-gradient(135deg, #10b981, #0f766e) !important;
  box-shadow: 0 10px 22px rgba(16, 185, 129, .18) !important;
}

.card-corrida-admin .botao-toggle-info-corrida .btn-ico-svg,
.card-corrida-admin .botao-toggle-dias .btn-ico-svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
}

.card-corrida-admin .admin-inscritos-painel {
  padding: 10px 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.admin-inscritos-filtros-v63 {
  display: grid !important;
  gap: 10px !important;
  padding: 12px !important;
  border-radius: 18px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(148, 163, 184, .18) !important;
}

.admin-busca-wrap-v63 {
  display: grid !important;
  gap: 6px !important;
  width: 100% !important;
}

.admin-filtros-toggle-v63 {
  width: 100% !important;
  min-height: 42px !important;
  border: 1px solid rgba(37, 99, 235, .18) !important;
  background: #fff !important;
  color: #172033 !important;
  border-radius: 14px !important;
  padding: 0 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  font-weight: 850 !important;
  font-size: 14px !important;
}

.admin-filtros-toggle-v63.ativo .admin-filtros-toggle-seta {
  transform: rotate(180deg) !important;
}

.admin-filtros-painel-v63 {
  display: grid !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  background: #fff !important;
  border: 1px solid rgba(148, 163, 184, .18) !important;
}
.admin-filtros-painel-v63.hidden { display: none !important; }

.admin-filtro-grupo-v63 {
  display: grid !important;
  gap: 8px !important;
}
.admin-filtro-grupo-v63 > strong {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  color: #64748b !important;
}
.admin-filtro-chips-v63 {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
.admin-filtro-chip {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(148, 163, 184, .35) !important;
  background: #fff !important;
  color: #334155 !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
  user-select: none !important;
}
.admin-filtro-chip input { display: none !important; }
.admin-filtro-chip.ativo {
  border-color: rgba(37, 99, 235, .34) !important;
  background: #eff6ff !important;
  color: #1d4ed8 !important;
}
.admin-limpar-filtros-v63 {
  width: 100% !important;
  min-height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(100, 116, 139, .18) !important;
  background: #f8fafc !important;
  color: #475569 !important;
  font-weight: 800 !important;
}
.admin-selecao-clean-row-v63 {
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
.admin-inscritos-contagem-exibidos.admin-tag-exibindo {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  padding: 0 !important;
  background: transparent !important;
}
.admin-contagem-texto,
.admin-filtro-ativo-chip {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  border-radius: 999px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
}
.admin-contagem-texto {
  background: #ecfdf5 !important;
  color: #047857 !important;
  border: 1px solid rgba(16, 185, 129, .20) !important;
}
.admin-filtros-ativos-tags {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}
.admin-filtro-ativo-chip {
  background: #eff6ff !important;
  color: #1d4ed8 !important;
  border: 1px solid rgba(37, 99, 235, .18) !important;
}

.card-corrida-admin .admin-lista-compacta-inscritos {
  display: grid !important;
  gap: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
.card-corrida-admin .linha-inscrito-admin {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #fff !important;
  margin: 0 !important;
  border-bottom: 1px solid rgba(148, 163, 184, .20) !important;
  overflow: visible !important;
}
.card-corrida-admin .linha-inscrito-admin:last-child {
  border-bottom: 0 !important;
}
.card-corrida-admin .linha-inscrito-principal {
  display: grid !important;
  grid-template-columns: 10px 28px minmax(0, 1fr) auto !important;
  grid-template-areas:
    "select expand nome menu"
    "select expand acoes acoes" !important;
  column-gap: 7px !important;
  row-gap: 7px !important;
  align-items: center !important;
  padding: 8px 6px 8px 0 !important;
  min-height: 70px !important;
  border-radius: 0 !important;
}
.card-corrida-admin .linha-inscrito-select-zone {
  grid-area: select !important;
  align-self: stretch !important;
  width: 10px !important;
  min-width: 10px !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  display: block !important;
  cursor: pointer !important;
}
.card-corrida-admin .linha-inscrito-select-rail {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 70px !important;
  border-radius: 0 8px 8px 0 !important;
  background: #cbd5e1 !important;
}
.card-corrida-admin .linha-inscrito-admin.is-selected .linha-inscrito-select-rail,
.card-corrida-admin .linha-inscrito-select-zone:has(.checkbox-inscrito-batch:checked) .linha-inscrito-select-rail {
  background: #22c55e !important;
}
.card-corrida-admin .botao-expandir-inscrito {
  grid-area: expand !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  border-radius: 10px !important;
}
.card-corrida-admin .linha-inscrito-nome {
  grid-area: nome !important;
  min-width: 0 !important;
  padding: 0 !important;
}
.card-corrida-admin .linha-inscrito-nome strong {
  font-size: 14px !important;
  line-height: 1.08 !important;
}
.card-corrida-admin .linha-inscrito-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 5px !important;
  margin-top: 3px !important;
}
.card-corrida-admin .linha-inscrito-meta small {
  font-size: 11px !important;
  line-height: 1 !important;
}
.card-corrida-admin .linha-inscrito-principal .admin-status-inscricao {
  margin: 0 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  padding: 4px 7px !important;
}
.card-corrida-admin .linha-inscrito-menu-topo {
  grid-area: menu !important;
  justify-self: end !important;
}
.card-corrida-admin .botao-menu-acoes-inscrito {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  color: #64748b !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  padding: 0 !important;
  font-size: 20px !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas {
  grid-area: acoes !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 6px !important;
  align-items: stretch !important;
}
.card-corrida-admin .linha-inscrito-acoes .botao-acao-inscrito,
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito {
  min-height: 32px !important;
  height: 32px !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}
.card-corrida-admin .linha-inscrito-detalhes {
  margin-left: 10px !important;
  border-radius: 0 !important;
  border-left: 0 !important;
}

.card-corrida-admin .resumo-card-confirmados {
  background: #f0fdf4 !important;
  border-color: rgba(22, 163, 74, .28) !important;
}
.card-corrida-admin .resumo-card-pendentes {
  background: #fff7ed !important;
  border-color: rgba(249, 115, 22, .32) !important;
}
.card-corrida-admin .resumo-card-espera {
  background: #f0f9ff !important;
  border-color: rgba(2, 132, 199, .28) !important;
}
.card-corrida-admin .resumo-card-cancelados {
  background: #fef2f2 !important;
  border-color: rgba(185, 28, 28, .25) !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-lista-espera-inscrito:not(:disabled) {
  background: #e0f2fe !important;
  color: #0284c7 !important;
  border: 1px solid rgba(2, 132, 199, .20) !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-confirmar-inscrito:disabled {
  background: #f0fdf4 !important;
  color: #16a34a !important;
  border: 1px solid rgba(22, 163, 74, .32) !important;
  opacity: .95 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-lista-espera-inscrito:disabled {
  background: #f0f9ff !important;
  color: #0284c7 !important;
  border: 1px solid rgba(2, 132, 199, .32) !important;
  opacity: .95 !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-cancelar-inscrito:disabled {
  background: #fef2f2 !important;
  color: #b91c1c !important;
  border: 1px solid rgba(185, 28, 28, .30) !important;
  opacity: .95 !important;
}

@media (max-width: 520px) {
  .pagina-admin,
  main.pagina-admin {
    width: calc(100% - 18px) !important;
    max-width: none !important;
  }
  .card-corrida-admin .linha-inscrito-principal {
    grid-template-columns: 9px 26px minmax(0, 1fr) auto !important;
    column-gap: 6px !important;
    padding-right: 4px !important;
  }
  .card-corrida-admin .linha-inscrito-acoes-rapidas {
    gap: 5px !important;
  }
}


/* =========================================================
   v6.4 - ajustes finais admin, filtros, permissões e botões
========================================================= */
.pagina-admin,
main.pagina-admin {
  max-width: 960px !important;
  width: min(100% - 24px, 960px) !important;
}

.form-edicao-corrida #salvar-corrida-btn {
  display: none !important;
}

.form-edicao-corrida .floating-calendar-btn,
.form-edicao-corrida .floating-yescom-btn,
.form-edicao-corrida .botao-calendario-flutuante,
.form-edicao-corrida .botao-yescom-flutuante {
  display: none !important;
}

.field.field-spaced + .field:not(.field-spaced),
.grid.grid-locais-corrida + .field,
#corrida-observacoes { }
#corrida-observacoes { margin-top: 0 !important; }
#corrida-observacoes.closest { margin-top: 0 !important; }
#corrida-observacoes { }
#form-nova-corrida .grid-locais-corrida + .field {
  margin-top: 22px !important;
}

.card-corrida-admin .gerenciar-informacoes-corrida,
.card-corrida-admin .gerenciar-dias,
.card-corrida-admin .admin-card-footer-v128,
.card-corrida-admin .relatorios-admin {
  width: 100% !important;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}

.card-corrida-admin .botao-toggle-info-corrida,
.card-corrida-admin .botao-toggle-dias,
.card-corrida-admin .botao-conferencia-staff,
.card-corrida-admin .botao-relatorios-toggle,
.card-corrida-admin .botao-ver-inscritos {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 8px 12px !important;
  border-radius: 16px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  letter-spacing: -0.01em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 0 !important;
  color: #ffffff !important;
  box-sizing: border-box !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .12) !important;
}

.card-corrida-admin .botao-toggle-info-corrida { background: linear-gradient(135deg, #0ea5e9, #2563eb) !important; }
.card-corrida-admin .botao-toggle-dias { background: linear-gradient(135deg, #10b981, #0f766e) !important; }
.card-corrida-admin .botao-conferencia-staff { background: linear-gradient(135deg, #0f766e, #14b8a6) !important; }
.card-corrida-admin .botao-relatorios-toggle { background: linear-gradient(135deg, #7c3aed, #06b6d4) !important; }
.card-corrida-admin .botao-ver-inscritos { background: linear-gradient(135deg, #2563eb, #1d4ed8) !important; }

.card-corrida-admin .botao-toggle-info-corrida .btn-ico,
.card-corrida-admin .botao-toggle-dias .btn-ico,
.card-corrida-admin .botao-conferencia-staff .btn-ico,
.card-corrida-admin .botao-relatorios-toggle .btn-ico,
.card-corrida-admin .botao-ver-inscritos .btn-ico {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  font-size: 0 !important;
  color: #fff !important;
}
.card-corrida-admin .btn-ico-svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  color: currentColor !important;
}

.admin-inscritos-contagem-exibidos.admin-tag-exibindo {
  display: grid !important;
  gap: 8px !important;
  padding: 0 !important;
  margin: 4px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.admin-filtros-ativos-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}
.admin-contagem-texto {
  justify-self: start !important;
}
.admin-filtro-ativo-chip {
  appearance: none !important;
  border: 1px solid rgba(37, 99, 235, .18) !important;
  background: #eff6ff !important;
  color: #1d4ed8 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 28px !important;
  border-radius: 999px !important;
  padding: 0 8px 0 10px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}
.admin-filtro-ativo-chip strong {
  font-size: 15px !important;
  line-height: 1 !important;
  opacity: .78 !important;
}
.admin-selecao-clean-row-v63 {
  order: 20 !important;
  margin-top: 2px !important;
}

.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled,
.card-corrida-admin .linha-inscrito-acoes .botao-acao-inscrito:disabled,
.card-corrida-admin .botao-whatsapp-bloqueado {
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
  border: 0 !important;
  outline: 0 !important;
  opacity: 1 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}
.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled svg,
.card-corrida-admin .linha-inscrito-acoes .botao-acao-inscrito:disabled svg,
.card-corrida-admin .botao-whatsapp-bloqueado svg {
  fill: currentColor !important;
  stroke: currentColor !important;
}

.usuario-admin-operacional .botao-editar-corrida,
.usuario-admin-operacional .botao-alterar-status-corrida,
.usuario-admin-operacional #nova-corrida-btn,
.usuario-admin-operacional #form-nova-corrida {
  display: none !important;
}
.corrida-status-card-readonly {
  cursor: default !important;
}

.admin-tipo-acesso-field {
  margin-top: 12px !important;
}

#form-nova-corrida .field-observacoes-corrida { margin-top: 22px !important; }

/* =========================================================
   v6.5 - correção botões admin e estado desabilitado
========================================================= */
.card-corrida-admin .admin-card-acoes-corrida-v65,
.card-corrida-admin .admin-card-footer-v128.admin-card-acoes-corrida-v65 {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  margin-top: 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.card-corrida-admin .admin-card-acoes-corrida-v65 > .gerenciar-informacoes-corrida,
.card-corrida-admin .admin-card-acoes-corrida-v65 > .gerenciar-dias,
.card-corrida-admin .admin-card-acoes-corrida-v65 > .relatorios-admin,
.card-corrida-admin .admin-card-acoes-corrida-v65 > .botao-conferencia-staff,
.card-corrida-admin .admin-card-acoes-corrida-v65 > .botao-ver-inscritos {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-column: 1 / -1 !important;
}

.card-corrida-admin .admin-card-acoes-corrida-v65 .botao-toggle-info-corrida,
.card-corrida-admin .admin-card-acoes-corrida-v65 .botao-toggle-dias,
.card-corrida-admin .admin-card-acoes-corrida-v65 .botao-conferencia-staff,
.card-corrida-admin .admin-card-acoes-corrida-v65 .botao-relatorios-toggle,
.card-corrida-admin .admin-card-acoes-corrida-v65 .botao-ver-inscritos {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 8px 12px !important;
  margin: 0 !important;
  border-radius: 16px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  font-weight: 850 !important;
  letter-spacing: -0.01em !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  border: 0 !important;
  color: #ffffff !important;
  box-sizing: border-box !important;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .12) !important;
}

.card-corrida-admin .admin-card-acoes-corrida-v65 .corrida-info-container,
.card-corrida-admin .admin-card-acoes-corrida-v65 .dias-corrida-container,
.card-corrida-admin .admin-card-acoes-corrida-v65 .relatorios-painel {
  margin-top: 8px !important;
}

.card-corrida-admin .linha-inscrito-acoes-rapidas .botao-acao-inscrito:disabled,
.card-corrida-admin .linha-inscrito-acoes .botao-acao-inscrito:disabled,
.card-corrida-admin .botao-whatsapp-bloqueado {
  background: #eef2f7 !important;
  color: #94a3b8 !important;
  border: 0 !important;
  outline: 0 !important;
  opacity: 1 !important;
  box-shadow: none !important;
  filter: none !important;
  cursor: not-allowed !important;
}

.card-corrida-admin .botao-confirmar-inscrito:disabled .icone-acao-svg,
.card-corrida-admin .botao-confirmar-inscrito:disabled .icone-acao-svg path,
.card-corrida-admin .botao-lista-espera-inscrito:disabled .icone-acao-svg,
.card-corrida-admin .botao-lista-espera-inscrito:disabled .icone-acao-svg circle,
.card-corrida-admin .botao-lista-espera-inscrito:disabled .icone-acao-svg path,
.card-corrida-admin .botao-cancelar-inscrito:disabled .icone-acao-svg,
.card-corrida-admin .botao-cancelar-inscrito:disabled .icone-acao-svg path {
  fill: none !important;
  stroke: currentColor !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.card-corrida-admin .botao-confirmar-inscrito:disabled .icone-acao-svg {
  stroke-width: 2.7 !important;
}

.card-corrida-admin .botao-whatsapp-bloqueado .icone-whatsapp-admin-svg,
.card-corrida-admin .botao-whatsapp-bloqueado .icone-whatsapp-admin-svg path {
  fill: currentColor !important;
  stroke: none !important;
}

/* =========================================================
   v6.6 - limpeza final: chips de filtros e menu de 3 pontos
   - remove container/fundo dos filtros ativos
   - deixa botão de ações extras apenas com os 3 pontos
========================================================= */
.card-corrida-admin .admin-inscritos-contagem-exibidos.admin-tag-exibindo,
.card-corrida-admin .admin-inscritos-filtros-v188 .admin-inscritos-contagem-exibidos.admin-tag-exibindo,
.card-corrida-admin .admin-tag-exibindo {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;
  justify-content: start !important;
  justify-items: start !important;
  gap: 7px !important;
  margin: 6px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.card-corrida-admin .admin-filtros-ativos-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.card-corrida-admin .admin-filtro-ativo-chip,
.card-corrida-admin .admin-contagem-texto {
  box-shadow: none !important;
}

.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito,
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito:hover,
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito:focus,
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito:active {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 4px 2px !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #334155 !important;
}

.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito span,
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito .btn-ico,
.card-corrida-admin .linha-inscrito-menu-topo .botao-menu-acoes-inscrito svg {
  background: transparent !important;
  box-shadow: none !important;
}

/* =========================================================
   v6.8 - botão do gerador de guarda-volumes no painel admin
========================================================= */
.admin-hero-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 210px;
}

.admin-hero-actions .admin-hero-btn {
  width: 100%;
  margin: 0;
}

.btn-guarda-volumes-admin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  background: linear-gradient(135deg, #0f766e, #115e59) !important;
}

.btn-guarda-volumes-admin .btn-ico,
.btn-guarda-volumes-admin .btn-ico-svg {
  width: 20px;
  height: 20px;
}

@media (max-width: 760px) {
  .admin-hero-actions {
    width: 100%;
    min-width: 0;
  }
}

/* =========================================================
   v7.0 - dashboard ao vivo de inscrições por corrida
========================================================= */
body.body-corridas .card-corrida .acoes-inscricao-share,
body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline,
.card-corrida .acoes-inscricao-share,
.card-corrida .acoes-inscricao-sem-share-inline {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
  grid-template-columns: none !important;
}

body.body-corridas .card-corrida .acoes-inscricao-share .botao-inscricao,
body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline .botao-inscricao,
.card-corrida .acoes-inscricao-share .botao-inscricao,
.card-corrida .acoes-inscricao-sem-share-inline .botao-inscricao,
.acoes-inscricao-sem-share-inline .botao-inscricao {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

.card-minha-inscricao .minha-inscricao-badges-topo {
  grid-template-columns: 1fr !important;
  gap: 8px !important;
}

.card-minha-inscricao .status-checkin-badge {
  display: none !important;
}

.card-corrida-admin .admin-filtro-grupo-selecao-v63,
.card-corrida-admin .admin-filtro-grupo-v63:has(.admin-filtro-tipo),
.card-corrida-admin .admin-filtro-tipo {
  display: none !important;
}

.card-corrida-admin .admin-inscritos-contagem-exibidos.admin-tag-exibindo,
.card-corrida-admin .admin-tag-exibindo {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.card-corrida-admin .admin-filtros-ativos-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.card-corrida-admin .admin-filtros-ativos-tags:empty {
  display: none !important;
}

.card-corrida-admin .admin-contagem-texto {
  justify-self: start !important;
  width: auto !important;
  max-width: max-content !important;
}

.card-corrida-admin .admin-selecao-clean-row-v63 {
  order: 4 !important;
  margin-top: 0 !important;
}

.card-corrida-admin .admin-selecionar-exibidos span {
  font-size: 13px !important;
}

/* v7.0 - dashboard ao vivo de inscrições */
.card-corrida-admin .botao-dashboard-inscricoes,
.admin-card-footer-v128 .botao-dashboard-inscricoes,
.admin-card-footer .botao-dashboard-inscricoes {
  border: 0 !important;
  width: 100% !important;
  min-height: 42px !important;
  padding: 8px 12px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #fff !important;
  background: linear-gradient(135deg, #0ea5e9, #2563eb) !important;
  box-shadow: 0 10px 22px rgba(37, 99, 235, .16) !important;
  text-decoration: none !important;
  cursor: pointer !important;
}
.card-corrida-admin .botao-dashboard-inscricoes:hover {
  transform: translateY(-1px);
  filter: brightness(1.03);
}

.dashboard-inscricoes-page {
  max-width: 1120px;
}
.dashboard-inscricoes-hero {
  align-items: center;
}
.dashboard-live-pill {
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 900;
  background: #f1f5f9;
  color: #475569;
  border: 1px solid #e2e8f0;
  white-space: nowrap;
}
.dashboard-live-pill.online {
  background: rgba(16, 185, 129, .12);
  color: #047857;
  border-color: rgba(16, 185, 129, .28);
}
.dashboard-live-pill.offline {
  background: rgba(239, 68, 68, .10);
  color: #b91c1c;
  border-color: rgba(239, 68, 68, .22);
}
.dashboard-inscricoes-alerta {
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #9a3412;
  border-radius: 16px;
  padding: 14px 16px;
  margin: 14px 0;
  font-weight: 700;
}
.dashboard-inscricoes-resumo {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0;
}
.dashboard-inscricao-stat {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 14px;
  min-height: 86px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
}
.dashboard-inscricao-stat span {
  display: block;
  color: #64748b;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.dashboard-inscricao-stat strong {
  display: block;
  margin-top: 8px;
  font-size: 30px;
  line-height: 1;
  color: #0f172a;
}
.dashboard-inscricao-stat.stat-confirmado strong { color: #059669; }
.dashboard-inscricao-stat.stat-pendente strong { color: #f97316; }
.dashboard-inscricao-stat.stat-espera strong { color: #0284c7; }
.dashboard-inscricao-stat.stat-cancelado strong { color: #dc2626; }
.dashboard-inscricao-stat.stat-livre strong { color: #334155; }
.dashboard-inscricoes-bloco {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
}
.dashboard-inscricoes-geral {
  margin: 10px 0 18px;
}
.dashboard-bloco-titulo {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}
.dashboard-bloco-titulo h2 {
  margin: 2px 0 0;
  font-size: 20px;
  color: #0f172a;
}
.dashboard-bloco-titulo strong {
  font-size: 22px;
  color: #0f172a;
  white-space: nowrap;
}
.dashboard-mini-info {
  font-size: 11px;
  font-weight: 900;
  color: #64748b;
  background: #f8fafc;
  border-radius: 999px;
  padding: 6px 10px;
  border: 1px solid #e2e8f0;
  white-space: nowrap;
}
.dashboard-barra-segmentada,
.dashboard-dia-barra {
  height: 14px;
  border-radius: 999px;
  background: #e5e7eb;
  overflow: hidden;
  display: flex;
}
.dash-segmento {
  display: block;
  height: 100%;
  min-width: 0;
  transition: width .25s ease;
}
.dash-confirmado { background: linear-gradient(90deg, #10b981, #22c55e); }
.dash-pendente { background: linear-gradient(90deg, #fb923c, #f59e0b); }
.dash-espera { background: linear-gradient(90deg, #38bdf8, #0ea5e9); }
.dash-cancelado { background: linear-gradient(90deg, #f87171, #ef4444); }
.dash-livre { background: #cbd5e1; }
.dashboard-legenda {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 10px;
  font-size: 12px;
  font-weight: 800;
  color: #475569;
}
.dashboard-legenda span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.dashboard-inscricoes-grid-principal {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, .85fr);
  gap: 16px;
  align-items: start;
}
.dashboard-dias-lista,
.dashboard-ultimos-lista {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.dashboard-dia-card {
  border-bottom: 1px solid #e5e7eb;
  padding: 4px 0 14px;
}
.dashboard-dia-card:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.dashboard-dia-topo {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.dashboard-dia-topo h3 {
  margin: 0;
  font-size: 15px;
  color: #111827;
}
.dashboard-dia-topo p {
  margin: 3px 0 0;
  font-size: 12px;
  color: #64748b;
  font-weight: 700;
}
.dashboard-dia-topo strong {
  font-size: 14px;
  color: #111827;
  white-space: nowrap;
}
.dashboard-dia-metricas {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}
.chip-status-dashboard {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #475569;
  white-space: nowrap;
}
.chip-status-dashboard.confirmado { background: rgba(16,185,129,.10); color: #047857; border-color: rgba(16,185,129,.22); }
.chip-status-dashboard.pendente { background: rgba(249,115,22,.12); color: #c2410c; border-color: rgba(249,115,22,.24); }
.chip-status-dashboard.espera,
.chip-status-dashboard.lista_espera { background: rgba(14,165,233,.12); color: #0369a1; border-color: rgba(14,165,233,.24); }
.chip-status-dashboard.cancelado { background: rgba(239,68,68,.10); color: #b91c1c; border-color: rgba(239,68,68,.20); }
.dashboard-ultimo-item {
  display: grid;
  grid-template-columns: 38px 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid #e5e7eb;
}
.dashboard-ultimo-item:last-child { border-bottom: 0; }
.dashboard-ultimo-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: #fff;
  background: linear-gradient(135deg, #10b981, #2563eb);
}
.dashboard-ultimo-info {
  min-width: 0;
}
.dashboard-ultimo-info strong {
  display: block;
  font-size: 14px;
  color: #111827;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dashboard-ultimo-info span {
  display: block;
  font-size: 12px;
  color: #64748b;
  margin-top: 2px;
}
.dashboard-ultimo-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 5px;
}
.dashboard-ultimo-meta small {
  color: #64748b;
  font-size: 11px;
  font-weight: 700;
}
.dashboard-inscricoes-empty {
  color: #64748b;
  font-weight: 700;
  background: #f8fafc;
  border-radius: 14px;
  padding: 14px;
  text-align: center;
}
@media (max-width: 980px) {
  .dashboard-inscricoes-resumo { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-inscricoes-grid-principal { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .dashboard-inscricoes-resumo { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .dashboard-inscricao-stat { padding: 12px; min-height: 78px; }
  .dashboard-inscricao-stat strong { font-size: 26px; }
  .dashboard-inscricoes-bloco { padding: 14px; border-radius: 18px; }
  .dashboard-bloco-titulo h2 { font-size: 17px; }
  .dashboard-dia-topo { align-items: flex-start; }
  .dashboard-ultimo-item { grid-template-columns: 34px 1fr; }
  .dashboard-ultimo-meta { grid-column: 2; align-items: flex-start; flex-direction: row; flex-wrap: wrap; }
  .dashboard-ultimo-avatar { width: 34px; height: 34px; }
}

/* =========================================================
   v7.1 - refinamentos operacionais e visuais
========================================================= */
:root { --rcp-v82-cache: "9000"; }

/* Card logado compacto e padronizado */
.card-staff,
.card-staff-cadastro {
  display: grid !important;
  grid-template-columns: 68px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  gap: 6px 12px !important;
  align-items: center !important;
  padding: 12px 14px !important;
  border-radius: 18px !important;
}
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  width: 62px !important;
  height: 62px !important;
  margin: 0 !important;
}
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff {
  width: 62px !important;
  height: 62px !important;
  object-fit: cover !important;
}
.card-staff .dados-staff,
.card-staff-cadastro .dados-staff {
  grid-column: 2 !important;
  grid-row: 1 !important;
  min-width: 0 !important;
  text-align: left !important;
  margin: 0 !important;
}
.card-staff .label-card,
.card-staff-cadastro .label-card {
  color: #7c3aed !important;
  text-transform: lowercase !important;
  letter-spacing: .03em !important;
  font-weight: 800 !important;
  margin: 0 0 2px !important;
  font-size: 11px !important;
}
.card-staff .dados-staff h2,
.card-staff-cadastro .dados-staff h2 {
  margin: 0 !important;
  line-height: 1.12 !important;
}
.card-staff .dados-staff p:not(.label-card),
.card-staff-cadastro .dados-staff p:not(.label-card),
#cidade-staff,
#email-staff,
#cidade-staff-cadastro,
#email-staff-cadastro {
  display: none !important;
}
.card-staff .admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.card-staff .acoes-staff,
.card-staff-cadastro .acoes-staff {
  grid-column: 2 !important;
  grid-row: 2 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  justify-content: flex-start !important;
  align-items: center !important;
  margin: 0 !important;
  width: 100% !important;
}
.card-staff .admin-card-acao,
.card-staff-cadastro .admin-card-acao {
  min-height: 34px !important;
  padding: 7px 10px !important;
  font-size: 12px !important;
  border-radius: 11px !important;
  line-height: 1 !important;
}
@media (max-width: 520px) {
  .card-staff,
  .card-staff-cadastro {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    padding: 10px 12px !important;
    gap: 5px 10px !important;
  }
  .card-staff .foto-staff-wrapper,
  .card-staff-cadastro .foto-staff-wrapper,
  .card-staff .foto-staff,
  .card-staff-cadastro .foto-staff {
    width: 58px !important;
    height: 58px !important;
  }
  .card-staff .admin-card-acao,
  .card-staff-cadastro .admin-card-acao {
    min-height: 32px !important;
    padding: 7px 9px !important;
    font-size: 11.5px !important;
  }
}

/* Botões do card da corrida: credenciamento + inscrições ao vivo em 2 colunas */
.admin-card-footer.admin-card-footer-v128 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
}
.admin-card-footer.admin-card-footer-v128 > .gerenciar-informacoes-corrida,
.admin-card-footer.admin-card-footer-v128 > .gerenciar-dias,
.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos,
.admin-card-footer.admin-card-footer-v128 > .botao-editar-corrida,
.admin-card-footer.admin-card-footer-v128 > .botao-excluir-corrida {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff.botao-admin-terco {
  grid-column: 1 !important;
}
.admin-card-footer.admin-card-footer-v128 > .botao-dashboard-inscricoes.botao-admin-terco {
  grid-column: 2 !important;
}
.admin-card-footer.admin-card-footer-v128 .botao-dashboard-inscricoes,
.admin-card-footer.admin-card-footer-v128 .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 .botao-ver-inscritos,
.admin-card-footer.admin-card-footer-v128 .botao-toggle-info-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-toggle-dias {
  min-height: 48px !important;
  height: 48px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.admin-card-footer.admin-card-footer-v128 .btn-ico,
.admin-card-footer.admin-card-footer-v128 .btn-ico-svg {
  flex: 0 0 auto !important;
}

/* PCD compacto */
.pcd-card {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 10px !important;
  padding: 12px 14px !important;
  min-height: 0 !important;
}
.pcd-card input {
  width: 18px !important;
  height: 18px !important;
  margin: 2px 0 0 !important;
  accent-color: #7c3aed !important;
}
.pcd-card span { min-width: 0 !important; }
.pcd-card strong { margin: 0 0 3px !important; display: block !important; }
.pcd-card small { line-height: 1.35 !important; }

/* Toasts realtime */
.realtime-toast {
  position: fixed;
  z-index: 9999;
  left: 50%;
  top: 12px;
  transform: translate(-50%, -130%);
  min-width: min(92vw, 420px);
  max-width: 92vw;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(16,185,129,.28);
  background: rgba(236,253,245,.98);
  color: #065f46;
  box-shadow: 0 16px 40px rgba(15,23,42,.16);
  opacity: 0;
  pointer-events: none;
  transition: transform .28s ease, opacity .28s ease;
}
.realtime-toast.ativo {
  transform: translate(-50%, 0);
  opacity: 1;
}
.realtime-toast strong {
  display: block;
  font-size: 13px;
  line-height: 1.1;
}
.realtime-toast small {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  color: #047857;
}
.realtime-dot {
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: #10b981;
  box-shadow: 0 0 0 0 rgba(16,185,129,.45);
  animation: realtimePulse 1.25s ease-out infinite;
  flex: 0 0 auto;
}
@keyframes realtimePulse {
  0% { box-shadow: 0 0 0 0 rgba(16,185,129,.45); }
  70% { box-shadow: 0 0 0 9px rgba(16,185,129,0); }
  100% { box-shadow: 0 0 0 0 rgba(16,185,129,0); }
}

/* Rodapé cadastro discreto */
.footer-text { color: #64748b !important; }


/* =========================================================
   v7.7 revisão real - padronização final UI/status/realtime
========================================================= */
:root {
  --status-confirmado: #16a34a;
  --status-confirmado-bg: #dcfce7;
  --status-confirmado-border: #86efac;
  --status-pendente: #f97316;
  --status-pendente-bg: #ffedd5;
  --status-pendente-border: #fdba74;
  --status-espera: #0284c7;
  --status-espera-bg: #e0f2fe;
  --status-espera-border: #7dd3fc;
  --status-cancelado: #dc2626;
  --status-cancelado-bg: #fee2e2;
  --status-cancelado-border: #fca5a5;
  --status-livre: #64748b;
  --status-livre-bg: #f1f5f9;
  --status-livre-border: #cbd5e1;
}

/* Card logado compacto: foto à esquerda, dados+botões à direita */
.card-staff {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) !important;
  grid-template-areas:
    "foto dados"
    "foto acoes" !important;
  align-items: center !important;
  gap: 8px 14px !important;
  padding: 14px !important;
}
.card-staff .foto-staff-wrapper { grid-area: foto !important; margin: 0 !important; align-self: center !important; }
.card-staff .foto-staff { width: 72px !important; height: 72px !important; object-fit: cover !important; }
.card-staff .dados-staff { grid-area: dados !important; min-width: 0 !important; margin: 0 !important; text-align: left !important; }
.card-staff .dados-staff .label-card { margin: 0 0 2px !important; color: #7c3aed !important; font-size: 11px !important; font-weight: 900 !important; text-transform: lowercase !important; letter-spacing: .04em !important; }
.card-staff .dados-staff h2 { margin: 0 !important; line-height: 1.12 !important; }
.card-staff .dados-staff #cidade-staff,
.card-staff .dados-staff #email-staff,
.card-staff .dados-staff p[id*="cidade"],
.card-staff .dados-staff p[id*="email"] { display: none !important; }
.card-staff .admin-card-acoes-logado,
.card-staff .acoes-staff.admin-card-acoes-logado {
  grid-area: acoes !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 !important;
  align-items: stretch !important;
}
.card-staff .admin-card-acao {
  min-height: 34px !important;
  height: 34px !important;
  padding: 5px 6px !important;
  border-radius: 11px !important;
  font-size: 11px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: normal !important;
}
.card-staff .admin-card-acao.hidden { display: none !important; }
.card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
@media (max-width: 380px) {
  .card-staff { grid-template-columns: 68px minmax(0, 1fr) !important; gap: 7px 10px !important; padding: 12px !important; }
  .card-staff .foto-staff { width: 64px !important; height: 64px !important; }
  .card-staff .admin-card-acao { font-size: 10px !important; padding: 4px !important; }
}

/* Botões grandes do card da corrida: mesma base, com Credenciamento + Ao vivo em 2 colunas */
.admin-card-footer.admin-card-footer-v128,
.admin-card-acoes-corrida-v65 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin-top: 12px !important;
}
.admin-card-footer.admin-card-footer-v128 > .gerenciar-informacoes-corrida,
.admin-card-footer.admin-card-footer-v128 > .gerenciar-dias,
.admin-card-footer.admin-card-footer-v128 > .relatorios-admin,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 > .botao-dashboard-inscricoes {
  grid-column: auto !important;
  width: 100% !important;
}
.admin-card-footer.admin-card-footer-v128 .botao-toggle-info-corrida,
.admin-card-footer.admin-card-footer-v128 .botao-toggle-dias,
.admin-card-footer.admin-card-footer-v128 > .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 > .botao-dashboard-inscricoes,
.admin-card-footer.admin-card-footer-v128 .botao-relatorios-toggle,
.admin-card-footer.admin-card-footer-v128 > .botao-ver-inscritos {
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 8px 12px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  text-align: center !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
.admin-card-footer.admin-card-footer-v128 .btn-ico-svg { width: 18px !important; height: 18px !important; display: block !important; }

/* Cores globais de status */
.admin-status-inscricao.confirmado,
.status-inscricao-badge.status-confirmado,
.chip-status-dashboard.confirmado,
.resumo-card-confirmados,
.dashboard-inscricao-stat.stat-confirmado {
  background: var(--status-confirmado-bg) !important;
  color: #047857 !important;
  border-color: var(--status-confirmado-border) !important;
}
.admin-status-inscricao.pendente,
.admin-status-inscricao.inscrito,
.status-inscricao-badge.status-pendente,
.status-inscricao-badge.status-inscrito,
.chip-status-dashboard.pendente,
.resumo-card-pendentes,
.dashboard-inscricao-stat.stat-pendente {
  background: var(--status-pendente-bg) !important;
  color: #c2410c !important;
  border-color: var(--status-pendente-border) !important;
}
.admin-status-inscricao.lista_espera,
.status-inscricao-badge.status-lista_espera,
.status-inscricao-badge.status-reserva,
.chip-status-dashboard.espera,
.resumo-card-espera,
.dashboard-inscricao-stat.stat-espera {
  background: var(--status-espera-bg) !important;
  color: #0369a1 !important;
  border-color: var(--status-espera-border) !important;
}
.admin-status-inscricao.cancelado,
.status-inscricao-badge.status-cancelado,
.chip-status-dashboard.cancelado,
.resumo-card-cancelados,
.dashboard-inscricao-stat.stat-cancelado {
  background: var(--status-cancelado-bg) !important;
  color: #b91c1c !important;
  border-color: var(--status-cancelado-border) !important;
}
.dashboard-inscricao-stat.stat-livre,
.chip-status-dashboard.livre {
  background: var(--status-livre-bg) !important;
  color: #475569 !important;
  border-color: var(--status-livre-border) !important;
}
.segmentado-confirmados,
.dash-confirmado { background: var(--status-confirmado) !important; }
.segmentado-pendentes,
.dash-pendente { background: var(--status-pendente) !important; }
.segmentado-espera,
.dash-espera { background: var(--status-espera) !important; }
.segmentado-cancelados,
.dash-cancelado { background: var(--status-cancelado) !important; }
.segmentado-livres,
.dash-livre { background: #cbd5e1 !important; }
.legenda-cor.confirmados { background: var(--status-confirmado) !important; }
.legenda-cor.pendentes { background: var(--status-pendente) !important; }
.legenda-cor.espera { background: var(--status-espera) !important; }
.legenda-cor.cancelados { background: var(--status-cancelado) !important; }
.legenda-cor.livres { background: #94a3b8 !important; }
.legenda-cor.inscritos { display: none !important; }

/* Overlay realtime para staff */
.staff-status-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .22s ease, transform .22s ease;
  backdrop-filter: blur(7px);
}
.staff-status-overlay.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.staff-status-overlay.confirmado { background: rgba(22, 163, 74, .18); }
.staff-status-overlay.lista_espera { background: rgba(2, 132, 199, .18); }
.staff-status-overlay.cancelado { background: rgba(220, 38, 38, .18); }
.staff-status-overlay.pendente,
.staff-status-overlay.inscrito { background: rgba(249, 115, 22, .18); }
.staff-status-overlay-card {
  width: min(420px, 92vw);
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 26px;
  padding: 28px 22px;
  text-align: center;
  box-shadow: 0 28px 80px rgba(15,23,42,.22);
}
.staff-status-overlay-icone { font-size: 48px; line-height: 1; margin-bottom: 12px; }
.staff-status-overlay-card h2 { margin: 0 0 8px; color: #0f172a; font-size: 24px; line-height: 1.12; }
.staff-status-overlay-card p { margin: 0; color: #475569; font-weight: 800; }
.staff-status-overlay-card strong { display: block; margin: 12px 0 8px; font-size: 17px; color: #111827; }
.staff-status-overlay-close {
  margin-top: 18px;
  border: 0;
  border-radius: 999px;
  padding: 9px 16px;
  background: #0f172a;
  color: #fff;
  font-weight: 900;
}

/* =========================================================
   v7.7 - correções finais: card logado, botões do admin e progresso
========================================================= */
.card-staff,
.pagina-admin .card-staff,
.pagina-corridas .card-staff,
.card-staff-cadastro,
.dashboard-inscricoes-page .card-staff,
.pagina-conferencia .card-staff {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-areas:
    "foto dados"
    "foto acoes" !important;
  align-items: center !important;
  column-gap: 16px !important;
  row-gap: 8px !important;
  padding: 16px 18px !important;
  border-radius: 28px !important;
}
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper { grid-area: foto !important; }
.card-staff .dados-staff,
.card-staff-cadastro .dados-staff { grid-area: dados !important; min-width: 0 !important; align-self: end !important; }
.card-staff .admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.card-staff .acoes-staff.admin-card-acoes-logado {
  grid-area: acoes !important;
  grid-column: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  min-width: 0 !important;
  align-self: start !important;
  margin: 0 !important;
}
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff {
  width: 76px !important;
  height: 76px !important;
}
.card-staff .dados-staff h2,
.card-staff-cadastro .dados-staff h2 {
  margin: 0 !important;
  font-size: clamp(20px, 4.8vw, 28px) !important;
  line-height: 1.08 !important;
  white-space: normal !important;
}
.card-staff .label-card,
.card-staff-cadastro .label-card {
  margin: 0 0 3px !important;
  font-size: clamp(13px, 3.3vw, 17px) !important;
  line-height: 1.1 !important;
  color: #7c3aed !important;
  font-weight: 900 !important;
  text-transform: lowercase !important;
}
.card-staff .dados-staff p:not(.label-card),
.card-staff-cadastro .dados-staff p:not(.label-card),
#cidade-staff,
#email-staff,
#cidade-staff-cadastro,
#email-staff-cadastro { display: none !important; }
.card-staff .admin-card-acao,
.card-staff-cadastro .admin-card-acao,
.card-staff .admin-card-acao.logout-btn,
.card-staff-cadastro .admin-card-acao.logout-btn {
  min-height: 38px !important;
  height: 38px !important;
  padding: 7px 8px !important;
  border-radius: 13px !important;
  font-size: clamp(11px, 2.8vw, 14px) !important;
  line-height: 1.05 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
  white-space: nowrap !important;
}
@media (max-width: 430px) {
  .card-staff,
  .pagina-admin .card-staff,
  .pagina-corridas .card-staff,
  .card-staff-cadastro,
  .dashboard-inscricoes-page .card-staff,
  .pagina-conferencia .card-staff {
    column-gap: 12px !important;
    padding: 14px !important;
    border-radius: 24px !important;
  }
  .card-staff .foto-staff,
  .card-staff-cadastro .foto-staff {
    width: 64px !important;
    height: 64px !important;
  }
  .card-staff .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .card-staff .acoes-staff.admin-card-acoes-logado {
    gap: 7px !important;
    grid-template-columns: repeat(auto-fit, minmax(72px, 1fr)) !important;
  }
  .card-staff .admin-card-acao,
  .card-staff-cadastro .admin-card-acao,
  .card-staff .admin-card-acao.logout-btn,
  .card-staff-cadastro .admin-card-acao.logout-btn {
    min-height: 34px !important;
    height: 34px !important;
    padding: 6px 5px !important;
    border-radius: 11px !important;
  }
}

.card-corrida-admin .corrida-progresso-totalizador { display: none !important; }

.card-corrida-admin .admin-card-acoes-corrida-v65,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
.card-corrida-admin .admin-card-acoes-corrida-v65 > *,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > * {
  grid-column: 1 / -1 !important;
}
.card-corrida-admin .admin-card-acoes-corrida-v65 > .botao-conferencia-staff,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > .botao-conferencia-staff,
.card-corrida-admin .admin-card-acoes-corrida-v65 > .botao-dashboard-inscricoes,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > .botao-dashboard-inscricoes {
  grid-column: auto !important;
  width: 100% !important;
  min-height: 48px !important;
  height: 48px !important;
}
.card-corrida-admin .botao-dashboard-inscricoes,
.admin-card-footer-v128 .botao-dashboard-inscricoes,
.admin-card-footer .botao-dashboard-inscricoes {
  min-height: 48px !important;
  height: 48px !important;
  padding: 8px 10px !important;
}
.card-corrida-admin .botao-conferencia-staff,
.admin-card-footer-v128 .botao-conferencia-staff {
  min-height: 48px !important;
  height: 48px !important;
  padding: 8px 10px !important;
}
@media (max-width: 390px) {
  .card-corrida-admin .botao-conferencia-staff span:last-child,
  .card-corrida-admin .botao-dashboard-inscricoes span:last-child { font-size: 12px !important; }
}

.realtime-toast-admin {
  top: 14px !important;
  z-index: 2147483000 !important;
}

/* =========================================================
   v7.7 - padronização estrutural definitiva das páginas internas
   Referência visual: página Editar cadastro.
========================================================= */
body:not(.login-page):not(.checkin-page) {
  min-height: 100vh !important;
  padding: 30px 15px !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(16, 185, 129, 0.13), transparent 31%),
    radial-gradient(circle at 84% 8%, rgba(124, 58, 237, 0.14), transparent 32%),
    linear-gradient(180deg, #f7fdfb 0%, #eef7ff 48%, #f8fafc 100%) !important;
  display: flex !important;
  justify-content: center !important;
  color: #0f172a !important;
}

.container,
.pagina-admin,
.pagina-corridas,
.dashboard-inscricoes-page,
.pagina-conferencia {
  width: 100% !important;
  max-width: 760px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.pagina-admin,
.pagina-corridas,
.dashboard-inscricoes-page,
.pagina-conferencia {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}

.system-brand-internal {
  margin: 2px auto 14px !important;
  opacity: .78 !important;
}
.system-brand-internal img {
  width: min(210px, 48vw) !important;
  max-height: 56px !important;
  object-fit: contain !important;
}

/* Card logado único em todas as páginas internas */
#card-staff.card-staff,
#card-staff-cadastro.card-staff-cadastro,
.card-staff,
.card-staff-cadastro {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  grid-template-areas:
    "foto dados"
    "foto acoes" !important;
  align-items: center !important;
  column-gap: 14px !important;
  row-gap: 6px !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(221, 214, 254, .75) !important;
  box-shadow: 0 20px 50px rgba(15,23,42,.10), 0 10px 24px rgba(124,58,237,.08) !important;
  overflow: hidden !important;
}

#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper,
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper {
  grid-area: foto !important;
  width: 72px !important;
  height: 72px !important;
  align-self: center !important;
  margin: 0 !important;
}
#card-staff .foto-staff,
#card-staff-cadastro .foto-staff,
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
  object-fit: cover !important;
  border-radius: 999px !important;
}

#card-staff .dados-staff,
#card-staff-cadastro .dados-staff,
.card-staff .dados-staff,
.card-staff-cadastro .dados-staff {
  grid-area: dados !important;
  min-width: 0 !important;
  align-self: end !important;
  text-align: left !important;
  margin: 0 !important;
}
#card-staff .label-card,
#card-staff-cadastro .label-card,
.card-staff .label-card,
.card-staff-cadastro .label-card {
  margin: 0 0 2px !important;
  color: #7c3aed !important;
  font-size: 13px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  text-transform: lowercase !important;
}
#card-staff .dados-staff h2,
#card-staff-cadastro .dados-staff h2,
.card-staff .dados-staff h2,
.card-staff-cadastro .dados-staff h2 {
  margin: 0 !important;
  color: #0f172a !important;
  font-size: clamp(22px, 5vw, 31px) !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
#card-staff .dados-staff p:not(.label-card),
#card-staff-cadastro .dados-staff p:not(.label-card),
.card-staff .dados-staff p:not(.label-card),
.card-staff-cadastro .dados-staff p:not(.label-card),
#cidade-staff,
#email-staff,
#cidade-staff-cadastro,
#email-staff-cadastro {
  display: none !important;
}

#card-staff .admin-card-acoes-logado,
#card-staff-cadastro .admin-card-acoes-logado,
.card-staff .admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.card-staff .acoes-staff.admin-card-acoes-logado {
  grid-area: acoes !important;
  grid-column: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  align-self: start !important;
}
#card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
#card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
#card-staff .admin-card-acao,
#card-staff-cadastro .admin-card-acao,
.card-staff .admin-card-acao,
.card-staff-cadastro .admin-card-acao,
#card-staff .logout-btn,
#card-staff-cadastro .logout-btn,
.card-staff .logout-btn,
.card-staff-cadastro .logout-btn {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 8px 9px !important;
  border: 0 !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  font-size: clamp(12px, 3.05vw, 16px) !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  margin: 0 !important;
  box-shadow: 0 10px 20px rgba(15,23,42,.10) !important;
}

@media (max-width: 420px) {
  body:not(.login-page):not(.checkin-page) { padding: 28px 12px !important; }
  #card-staff.card-staff,
  #card-staff-cadastro.card-staff-cadastro,
  .card-staff,
  .card-staff-cadastro {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    row-gap: 5px !important;
    padding: 12px 13px !important;
    border-radius: 24px !important;
  }
  #card-staff .foto-staff-wrapper,
  #card-staff-cadastro .foto-staff-wrapper,
  .card-staff .foto-staff-wrapper,
  .card-staff-cadastro .foto-staff-wrapper,
  #card-staff .foto-staff,
  #card-staff-cadastro .foto-staff,
  .card-staff .foto-staff,
  .card-staff-cadastro .foto-staff {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
  }
  #card-staff .admin-card-acoes-logado,
  #card-staff-cadastro .admin-card-acoes-logado,
  .card-staff .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado {
    gap: 7px !important;
  }
  #card-staff .admin-card-acao,
  #card-staff-cadastro .admin-card-acao,
  .card-staff .admin-card-acao,
  .card-staff-cadastro .admin-card-acao,
  #card-staff .logout-btn,
  #card-staff-cadastro .logout-btn,
  .card-staff .logout-btn,
  .card-staff-cadastro .logout-btn {
    min-height: 36px !important;
    height: 36px !important;
    padding: 7px 6px !important;
    border-radius: 12px !important;
    font-size: clamp(11px, 3.05vw, 13px) !important;
  }
}

/* Distâncias consistentes entre os boxes principais */
.cabecalho-corridas,
.admin-hero-gerenciamento,
.card-corrida,
.card-minha-inscricao,
.card-corrida-admin,
.form-card,
.form-area,
#staffForm,
.dashboard-card,
.dashboard-inscricoes-card,
.lista-corridas,
.lista-minhas-inscricoes,
.secao-minhas-inscricoes {
  margin-top: 0 !important;
}

/* Admin: remove totalizador redundante abaixo da barra */
.card-corrida-admin .corrida-progresso-totalizador,
.card-corrida-admin .corrida-progresso-totalizador *,
.card-corrida-admin .corrida-progresso-total-texto {
  display: none !important;
}

/* Toast do admin sempre acima da interface */
.realtime-toast-admin,
#adminRealtimeToast,
#adminRealtimeToastV74 {
  position: fixed !important;
  top: 14px !important;
  left: 50% !important;
  transform: translate(-50%, -130%) !important;
  z-index: 2147483000 !important;
}
.realtime-toast-admin.ativo,
#adminRealtimeToast.ativo,
#adminRealtimeToastV74.ativo {
  transform: translate(-50%, 0) !important;
}

/* =========================================================
   v7.7.2 - PATCH FINAL: layout unificado e admin realtime visível
========================================================= */
body:not(.login-page):not(.checkin-page) {
  min-height: 100vh !important;
  padding: 28px 12px !important;
  margin: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(16,185,129,.13), transparent 32%),
    radial-gradient(circle at 84% 8%, rgba(124,58,237,.13), transparent 34%),
    linear-gradient(180deg, #f7fdfb 0%, #eef7ff 48%, #f8fafc 100%) !important;
}
body.body-corridas,
body.pagina-dashboard-inscricoes,
body.cadastro-loading,
body:not(.login-page):not(.checkin-page) {
  background:
    radial-gradient(circle at 16% 0%, rgba(16,185,129,.13), transparent 32%),
    radial-gradient(circle at 84% 8%, rgba(124,58,237,.13), transparent 34%),
    linear-gradient(180deg, #f7fdfb 0%, #eef7ff 48%, #f8fafc 100%) !important;
}
.container,
main.pagina-admin,
main.pagina-corridas,
main.dashboard-inscricoes-page,
main.pagina-conferencia,
.pagina-admin,
.pagina-corridas,
.dashboard-inscricoes-page {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
main.pagina-admin,
main.pagina-corridas,
main.dashboard-inscricoes-page,
main.pagina-conferencia,
.container {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
}
.system-brand.system-brand-internal {
  width: 100% !important;
  margin: 0 auto 0 !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  opacity: .78 !important;
}
.system-brand.system-brand-internal img {
  width: min(210px, 48vw) !important;
  max-height: 56px !important;
  object-fit: contain !important;
  display: block !important;
}
#card-staff.card-staff,
#card-staff-cadastro.card-staff-cadastro,
.card-staff,
.card-staff-cadastro {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 72px minmax(0, 1fr) !important;
  grid-template-areas: "foto dados" "foto acoes" !important;
  column-gap: 14px !important;
  row-gap: 6px !important;
  align-items: center !important;
  padding: 14px 16px !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.90) !important;
  border: 1px solid rgba(221,214,254,.76) !important;
  box-shadow: 0 20px 50px rgba(15,23,42,.10), 0 10px 24px rgba(124,58,237,.08) !important;
  overflow: hidden !important;
}
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper,
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper {
  grid-area: foto !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
  margin: 0 !important;
  align-self: center !important;
}
#card-staff .foto-staff,
#card-staff-cadastro .foto-staff,
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  min-height: 72px !important;
  object-fit: cover !important;
  border-radius: 999px !important;
}
#card-staff .dados-staff,
#card-staff-cadastro .dados-staff,
.card-staff .dados-staff,
.card-staff-cadastro .dados-staff {
  grid-area: dados !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: end !important;
  text-align: left !important;
}
#card-staff .label-card,
#card-staff-cadastro .label-card,
.card-staff .label-card,
.card-staff-cadastro .label-card {
  margin: 0 0 2px !important;
  padding: 0 !important;
  color: #7c3aed !important;
  font-size: 13px !important;
  line-height: 1.08 !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  text-transform: lowercase !important;
}
#card-staff .dados-staff h2,
#card-staff-cadastro .dados-staff h2,
.card-staff .dados-staff h2,
.card-staff-cadastro .dados-staff h2 {
  margin: 0 !important;
  padding: 0 !important;
  color: #0f172a !important;
  font-size: clamp(22px, 5vw, 31px) !important;
  line-height: 1.02 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
#cidade-staff,#email-staff,#cidade-staff-cadastro,#email-staff-cadastro,
#card-staff .dados-staff p:not(.label-card),
#card-staff-cadastro .dados-staff p:not(.label-card),
.card-staff .dados-staff p:not(.label-card),
.card-staff-cadastro .dados-staff p:not(.label-card) {
  display: none !important;
}
#card-staff .admin-card-acoes-logado,
#card-staff-cadastro .admin-card-acoes-logado,
.card-staff .admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.card-staff .acoes-staff.admin-card-acoes-logado,
.pagina-corridas .acoes-staff.admin-card-acoes-logado,
.pagina-admin .admin-card-acoes-logado {
  grid-area: acoes !important;
  grid-column: 2 !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-self: start !important;
}
#card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
#card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.pagina-corridas .admin-card-acoes-logado:has(.admin-card-acao.hidden) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
#card-staff .admin-card-acao,
#card-staff-cadastro .admin-card-acao,
.card-staff .admin-card-acao,
.card-staff-cadastro .admin-card-acao,
#card-staff .logout-btn,
#card-staff-cadastro .logout-btn,
.card-staff .logout-btn,
.card-staff-cadastro .logout-btn,
.pagina-admin .admin-card-acao,
.pagina-corridas .admin-card-acao {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 8px 9px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  font-size: clamp(12px, 3.05vw, 16px) !important;
  line-height: 1.04 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  box-shadow: 0 10px 20px rgba(15,23,42,.10) !important;
}
.cabecalho-corridas,
.admin-hero-gerenciamento,
.card-corrida,
.card-minha-inscricao,
.card-corrida-admin,
.form-card,
.form-area,
#staffForm,
.dashboard-card,
.dashboard-inscricoes-card,
.lista-corridas,
.lista-minhas-inscricoes,
.secao-minhas-inscricoes,
.admin-editar-staff-panel {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.card-corrida-admin .corrida-progresso-totalizador,
.card-corrida-admin .corrida-progresso-totalizador *,
.card-corrida-admin .corrida-progresso-total-texto {
  display: none !important;
}
.realtime-toast-admin,
#adminRealtimeToast,
#adminRealtimeToastV74,
#adminRealtimeToastV742 {
  position: fixed !important;
  top: 14px !important;
  left: 50% !important;
  transform: translate(-50%, -130%) !important;
  z-index: 2147483646 !important;
  opacity: 0 !important;
}
.realtime-toast-admin.ativo,
#adminRealtimeToast.ativo,
#adminRealtimeToastV74.ativo,
#adminRealtimeToastV742.ativo {
  transform: translate(-50%, 0) !important;
  opacity: 1 !important;
}
@media (max-width: 420px) {
  body:not(.login-page):not(.checkin-page) { padding: 28px 12px !important; }
  main.pagina-admin,
  main.pagina-corridas,
  main.dashboard-inscricoes-page,
  main.pagina-conferencia,
  .container { gap: 24px !important; }
  #card-staff.card-staff,
  #card-staff-cadastro.card-staff-cadastro,
  .card-staff,
  .card-staff-cadastro {
    grid-template-columns: 62px minmax(0, 1fr) !important;
    column-gap: 10px !important;
    row-gap: 5px !important;
    padding: 12px 13px !important;
    border-radius: 24px !important;
  }
  #card-staff .foto-staff-wrapper,
  #card-staff-cadastro .foto-staff-wrapper,
  .card-staff .foto-staff-wrapper,
  .card-staff-cadastro .foto-staff-wrapper,
  #card-staff .foto-staff,
  #card-staff-cadastro .foto-staff,
  .card-staff .foto-staff,
  .card-staff-cadastro .foto-staff {
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    min-height: 62px !important;
  }
  #card-staff .admin-card-acoes-logado,
  #card-staff-cadastro .admin-card-acoes-logado,
  .card-staff .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .pagina-corridas .acoes-staff.admin-card-acoes-logado { gap: 7px !important; }
  #card-staff .admin-card-acao,
  #card-staff-cadastro .admin-card-acao,
  .card-staff .admin-card-acao,
  .card-staff-cadastro .admin-card-acao,
  #card-staff .logout-btn,
  #card-staff-cadastro .logout-btn,
  .card-staff .logout-btn,
  .card-staff-cadastro .logout-btn {
    min-height: 36px !important;
    height: 36px !important;
    padding: 7px 6px !important;
    border-radius: 12px !important;
    font-size: clamp(11px, 3.05vw, 13px) !important;
  }
}


/* =========================================================
   v7.7 - ajuste final do card logado: ações principais + sair compacto
========================================================= */
#card-staff .admin-card-acoes-logado,
#card-staff-cadastro .admin-card-acoes-logado,
.card-staff .admin-card-acoes-logado,
.card-staff-cadastro .admin-card-acoes-logado,
.card-staff .acoes-staff.admin-card-acoes-logado {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px !important;
  gap: 10px !important;
  align-items: stretch !important;
}

#card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
#card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
.card-staff .acoes-staff.admin-card-acoes-logado:has(.admin-card-acao.hidden) {
  grid-template-columns: minmax(0, 1fr) 44px !important;
}

#card-staff .admin-card-acao,
#card-staff-cadastro .admin-card-acao,
.card-staff .admin-card-acao,
.card-staff-cadastro .admin-card-acao {
  min-height: 40px !important;
  height: 40px !important;
  padding: 8px 10px !important;
  border-radius: 14px !important;
  font-size: clamp(12px, 3vw, 15px) !important;
  line-height: 1.05 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#card-staff .admin-card-acao.hidden,
#card-staff-cadastro .admin-card-acao.hidden,
.card-staff .admin-card-acao.hidden,
.card-staff-cadastro .admin-card-acao.hidden {
  display: none !important;
}

#card-staff .admin-card-acao-sair,
#card-staff-cadastro .admin-card-acao-sair,
.card-staff .admin-card-acao-sair,
.card-staff-cadastro .admin-card-acao-sair,
#card-staff .logout-btn,
#card-staff-cadastro .logout-btn,
.card-staff .logout-btn,
.card-staff-cadastro .logout-btn {
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  padding: 0 !important;
  border-radius: 14px !important;
  font-size: 0 !important;
  position: relative !important;
  box-shadow: 0 10px 20px rgba(239,68,68,.18) !important;
}

#card-staff .admin-card-acao-sair::before,
#card-staff-cadastro .admin-card-acao-sair::before,
.card-staff .admin-card-acao-sair::before,
.card-staff-cadastro .admin-card-acao-sair::before,
#card-staff .logout-btn::before,
#card-staff-cadastro .logout-btn::before,
.card-staff .logout-btn::before,
.card-staff-cadastro .logout-btn::before {
  content: "×";
  font-size: 24px;
  line-height: 1;
  font-weight: 900;
  color: #fff;
}

@media (max-width: 420px) {
  #card-staff .admin-card-acoes-logado,
  #card-staff-cadastro .admin-card-acoes-logado,
  .card-staff .admin-card-acoes-logado,
  .card-staff-cadastro .admin-card-acoes-logado,
  .card-staff .acoes-staff.admin-card-acoes-logado {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 42px !important;
    gap: 8px !important;
  }
  #card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
  #card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
  .card-staff .admin-card-acoes-logado:has(.admin-card-acao.hidden),
  .card-staff-cadastro .admin-card-acoes-logado:has(.admin-card-acao.hidden),
  .card-staff .acoes-staff.admin-card-acoes-logado:has(.admin-card-acao.hidden) {
    grid-template-columns: minmax(0, 1fr) 42px !important;
  }
  #card-staff .admin-card-acao,
  #card-staff-cadastro .admin-card-acao,
  .card-staff .admin-card-acao,
  .card-staff-cadastro .admin-card-acao {
    min-height: 38px !important;
    height: 38px !important;
    font-size: 12px !important;
    padding: 7px 8px !important;
  }
  #card-staff .admin-card-acao-sair,
  #card-staff-cadastro .admin-card-acao-sair,
  .card-staff .admin-card-acao-sair,
  .card-staff-cadastro .admin-card-acao-sair,
  #card-staff .logout-btn,
  #card-staff-cadastro .logout-btn,
  .card-staff .logout-btn,
  .card-staff-cadastro .logout-btn {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
  }
}

/* =========================================================
   v7.7 - Credenciamento + Inscrições ao vivo em 2 colunas reais
   Wrapper dedicado para evitar sobrescrita por regras antigas.
========================================================= */
.admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > .admin-botoes-dupla-operacional,
.card-corrida-admin .admin-card-footer-v128 > .admin-botoes-dupla-operacional {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
}
.admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-conferencia-staff,
.admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-dashboard-inscricoes,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > .admin-botoes-dupla-operacional > .botao-conferencia-staff,
.admin-card-footer-v128.admin-card-acoes-corrida-v65 > .admin-botoes-dupla-operacional > .botao-dashboard-inscricoes,
.card-corrida-admin .admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-conferencia-staff,
.card-corrida-admin .admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-dashboard-inscricoes {
  grid-column: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 12.5px !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  text-align: center !important;
}
.admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional .btn-ico,
.admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional .btn-ico-svg {
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
}
@media (max-width: 360px) {
  .admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional {
    gap: 7px !important;
  }
  .admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-conferencia-staff,
  .admin-card-footer.admin-card-footer-v128 > .admin-botoes-dupla-operacional > .botao-dashboard-inscricoes {
    font-size: 11.2px !important;
    padding: 7px 6px !important;
    gap: 5px !important;
  }
}

/* =========================================================
   v7.7 - Credenciamento: consulta geral, edição e estrelas
   ========================================================= */
.conferencia-toolbar {
  grid-template-columns: 1fr !important;
}

@media (min-width: 760px) {
  .conferencia-toolbar {
    grid-template-columns: 1.2fr 1fr 1fr 1.4fr !important;
  }
}

.card-conferencia-staff {
  position: relative;
}

.card-conferencia-editar {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 999px;
  background: rgba(15, 23, 42, .82);
  color: #fff;
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .18);
  cursor: pointer;
}

.card-conferencia-editar:active {
  transform: scale(.96);
}

.classificacao-staff-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(245, 158, 11, .28);
  background: rgba(255, 251, 235, .92);
  color: #b45309;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .5px;
  line-height: 1;
}

.classificacao-admin-only select {
  font-weight: 800;
}

#filtro-status-conferencia:disabled {
  opacity: .55;
  cursor: not-allowed;
}

/* =========================================================
   v7.8 - Correção classificação no Credenciamento
   ========================================================= */
.classificacao-staff-editor {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 8px 0 10px;
  padding: 5px 7px;
  border-radius: 999px;
  background: rgba(255, 251, 235, .9);
  border: 1px solid rgba(245, 158, 11, .22);
  width: fit-content;
}

.classificacao-staff-editor button {
  border: 0;
  background: transparent;
  cursor: pointer;
  line-height: 1;
  padding: 2px 3px;
}

.classificacao-staff-editor .star-btn {
  color: #cbd5e1;
  font-size: 18px;
  font-weight: 900;
}

.classificacao-staff-editor .star-btn.ativo {
  color: #f59e0b;
}

.classificacao-staff-editor .star-clear-btn {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  color: #64748b;
  font-size: 17px;
  font-weight: 900;
}

.classificacao-staff-editor .star-btn:active,
.classificacao-staff-editor .star-clear-btn:active {
  transform: scale(.92);
}


/* =========================================================
   v7.9 - Estrelas clicáveis no próprio badge do Credenciamento
   ========================================================= */
.card-conferencia-badges .classificacao-staff-editor {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  gap: 0;
  margin: 0;
  padding: 5px 8px;
  border-radius: 999px;
  border: 1px solid rgba(245, 158, 11, .28);
  background: rgba(255, 251, 235, .96);
  width: fit-content;
  box-shadow: 0 8px 18px rgba(245, 158, 11, .08);
  touch-action: manipulation;
}
.card-conferencia-badges .classificacao-staff-editor button {
  min-width: 22px;
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  cursor: pointer;
  padding: 0 1px;
  line-height: 1;
  -webkit-tap-highlight-color: transparent;
  pointer-events: auto;
}
.card-conferencia-badges .classificacao-staff-editor .star-btn {
  color: #cbd5e1;
  font-size: 17px;
  font-weight: 900;
}
.card-conferencia-badges .classificacao-staff-editor .star-btn.ativo {
  color: #b45309;
}
.card-conferencia-badges .classificacao-staff-editor .star-clear-btn {
  margin-left: 3px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  border-radius: 999px;
  color: #64748b;
  font-size: 16px;
  font-weight: 900;
}
.card-conferencia-badges .classificacao-staff-editor button:active {
  transform: scale(.9);
}
.lista-conferencia.atualizando-classificacao .classificacao-staff-editor {
  opacity: .72;
}

/* =========================================================
   v8.0 - Estrelas sem container e edição admin completa
   ========================================================= */
.card-conferencia-foto {
  position: relative;
}

.classificacao-foto-overlay {
  position: absolute;
  left: 10px;
  bottom: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(255,255,255,.84);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  padding: 4px 6px;
  box-shadow: 0 8px 22px rgba(15,23,42,.14);
}

.classificacao-staff-editor,
.card-conferencia-badges .classificacao-staff-editor,
.classificacao-cadastro-editor {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  width: fit-content !important;
  min-height: auto !important;
  touch-action: manipulation;
}

.classificacao-staff-editor button,
.card-conferencia-badges .classificacao-staff-editor button,
.classificacao-cadastro-editor button {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer;
  padding: 1px 2px !important;
  min-width: 24px !important;
  min-height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  -webkit-tap-highlight-color: transparent;
}

.classificacao-staff-editor .star-btn,
.card-conferencia-badges .classificacao-staff-editor .star-btn,
.classificacao-cadastro-editor .star-btn {
  font-size: 24px !important;
  color: #cbd5e1 !important;
  text-shadow: 0 1px 1px rgba(255,255,255,.8);
  transition: transform .12s ease, color .12s ease, text-shadow .12s ease;
}

.classificacao-staff-editor .star-btn.ativo,
.card-conferencia-badges .classificacao-staff-editor .star-btn.ativo,
.classificacao-cadastro-editor .star-btn.ativo {
  color: #f59e0b !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.85), 0 4px 10px rgba(245,158,11,.28);
}

.classificacao-staff-editor .star-clear-btn,
.card-conferencia-badges .classificacao-staff-editor .star-clear-btn,
.classificacao-cadastro-editor .star-clear-btn {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  margin-left: 3px !important;
  border-radius: 999px !important;
  color: #94a3b8 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
}

.classificacao-staff-editor button:active,
.classificacao-cadastro-editor button:active {
  transform: scale(.88);
}

.classificacao-cadastro-editor {
  background: #fff !important;
  padding: 8px 10px !important;
  border-radius: 14px !important;
  border: 1px solid transparent !important;
}

@media (max-width: 420px) {
  .classificacao-foto-overlay {
    left: 8px;
    bottom: 8px;
    padding: 3px 5px;
  }
  .classificacao-staff-editor .star-btn,
  .classificacao-cadastro-editor .star-btn {
    font-size: 21px !important;
  }
  .classificacao-staff-editor button,
  .classificacao-cadastro-editor button {
    min-width: 21px !important;
  }
}

/* =========================================================
   v8.1 - Classificação mínima 1 estrela + ajuste visual
   ========================================================= */
.classificacao-staff-editor .star-clear-btn,
.card-conferencia-badges .classificacao-staff-editor .star-clear-btn,
.classificacao-cadastro-editor .star-clear-btn {
  display: none !important;
}

.classificacao-foto-overlay {
  left: 50% !important;
  right: auto !important;
  bottom: 6px !important;
  transform: translateX(-50%) !important;
  padding: 3px 6px !important;
  min-width: auto !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 6px 16px rgba(15,23,42,.12) !important;
}

.classificacao-staff-editor,
.card-conferencia-badges .classificacao-staff-editor,
.classificacao-cadastro-editor {
  gap: 5px !important;
}

.classificacao-staff-editor button,
.card-conferencia-badges .classificacao-staff-editor button,
.classificacao-cadastro-editor button {
  padding: 1px 5px !important;
  min-width: 25px !important;
  min-height: 26px !important;
}

.classificacao-staff-editor .star-btn,
.card-conferencia-badges .classificacao-staff-editor .star-btn,
.classificacao-cadastro-editor .star-btn {
  font-size: 22px !important;
  color: #d6dce8 !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,.8));
}

.classificacao-staff-editor .star-btn.ativo,
.card-conferencia-badges .classificacao-staff-editor .star-btn.ativo,
.classificacao-cadastro-editor .star-btn.ativo {
  color: #f5b301 !important;
  filter: drop-shadow(0 2px 5px rgba(245,179,1,.35));
}

.classificacao-cadastro-editor {
  background: #fff !important;
  padding: 7px 9px !important;
}

@media (max-width: 420px) {
  .classificacao-foto-overlay { bottom: 5px !important; padding: 2px 5px !important; }
  .classificacao-staff-editor,
  .classificacao-cadastro-editor { gap: 4px !important; }
  .classificacao-staff-editor .star-btn,
  .classificacao-cadastro-editor .star-btn { font-size: 20px !important; }
  .classificacao-staff-editor button,
  .classificacao-cadastro-editor button { min-width: 23px !important; padding-inline: 4px !important; }
}


/* =========================================================
   v8.3 - Auth-check sem piscada + dashboard/realtime
   ========================================================= */
body.auth-checking {
  visibility: hidden !important;
}
.dashboard-ultimo-avatar img,
.dashboard-ultimo-avatar-foto {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}
.dashboard-ultimo-avatar.has-photo {
  background: #e5e7eb !important;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(148,163,184,.28);
}


/* v8.6 - senha forte */
.password-strength{
  margin-top:8px;
  font-size:12px;
  font-weight:700;
  color:#64748b;
}
.password-strength.fraca{color:#dc2626;}
.password-strength.media{color:#d97706;}
.password-strength.forte{color:#059669;}

/* v9.8 - menu global admin/master no card logado */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu {
  position: relative;
  cursor: pointer;
  padding-right: 76px !important;
}
.card-staff.has-admin-menu .admin-actions-hidden-by-menu,
.card-staff-cadastro.has-admin-menu .admin-actions-hidden-by-menu {
  display: none !important;
}
.admin-menu-toggle {
  position: absolute;
  right: 24px;
  top: 50%;
  transform: translateY(-50%);
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(17,24,39,.92), rgba(99,102,241,.18));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.18), 0 12px 28px rgba(15,23,42,.18);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: #fff;
  z-index: 3;
}
.admin-menu-toggle span {
  display: block;
  width: 20px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
  transition: transform .18s ease, opacity .18s ease;
}
.card-staff.admin-menu-open .admin-menu-toggle span:nth-child(1),
.card-staff-cadastro.admin-menu-open .admin-menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.card-staff.admin-menu-open .admin-menu-toggle span:nth-child(2),
.card-staff-cadastro.admin-menu-open .admin-menu-toggle span:nth-child(2) { opacity: 0; }
.card-staff.admin-menu-open .admin-menu-toggle span:nth-child(3),
.card-staff-cadastro.admin-menu-open .admin-menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.admin-global-menu {
  width: min(100%, 980px);
  margin: -18px auto 30px;
  padding: 16px;
  border-radius: 28px;
  background: rgba(15,23,42,.94);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 24px 70px rgba(15,23,42,.28);
  backdrop-filter: blur(18px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  animation: adminMenuIn .16s ease both;
  position: relative;
  z-index: 15;
}
.admin-global-menu[hidden] { display: none !important; }
.admin-menu-item {
  min-height: 50px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 18px;
  background: rgba(255,255,255,.055);
  color: #f8fafc;
  text-decoration: none;
  font-weight: 800;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  text-align: left;
}
.admin-menu-item:hover { background: rgba(16,185,129,.16); border-color: rgba(16,185,129,.38); }
.admin-menu-ico {
  width: 28px;
  height: 28px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(16,185,129,.16);
  color: #6ee7b7;
  flex: 0 0 auto;
}
.admin-menu-logout {
  cursor: pointer;
  font: inherit;
  color: #fecaca;
}
.admin-menu-logout .admin-menu-ico { background: rgba(239,68,68,.14); color: #f87171; }
@keyframes adminMenuIn { from { opacity:0; transform: translateY(-8px); } to { opacity:1; transform: translateY(0); } }
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu { padding-right: 68px !important; }
  .admin-menu-toggle { right: 18px; width: 42px; height: 42px; border-radius: 14px; }
  .admin-global-menu { width: calc(100% - 40px); margin: -12px auto 24px; grid-template-columns: 1fr; border-radius: 24px; padding: 12px; }
  .admin-menu-item { min-height: 48px; font-size: 14px; }
}

/* v9.8 - check-in dashboard integrado ao sistema, mantendo visual dark */
.checkin-page {
  background: radial-gradient(circle at 20% 0%, rgba(16,185,129,.16), transparent 34%), radial-gradient(circle at 90% 8%, rgba(59,130,246,.13), transparent 32%), #030712 !important;
}
.checkin-page .checkin-shell {
  width: min(100%, 980px);
  margin: 0 auto;
  padding: 34px 20px 48px;
}
.checkin-page .system-brand.system-brand-internal {
  margin-bottom: 20px;
}
.checkin-page #card-staff {
  width: 100%;
  max-width: 980px;
  margin: 0 auto 34px;
  background: rgba(15,23,42,.78) !important;
  color: #f8fafc;
  border: 1px solid rgba(16,185,129,.25);
  box-shadow: 0 24px 80px rgba(0,0,0,.35);
}
.checkin-page #card-staff .label-card { color: #5eead4; }
.checkin-page #card-staff h2 { color: #fff; }
.checkin-page .admin-global-menu { background: rgba(3,7,18,.96); border-color: rgba(16,185,129,.22); box-shadow: 0 24px 80px rgba(0,0,0,.42); }
.checkin-dashboard-hero {
  margin-bottom: 18px !important;
  background: linear-gradient(135deg, rgba(2,6,23,.94), rgba(6,78,59,.45)) !important;
  border: 1px solid rgba(16,185,129,.23) !important;
}
.checkin-dashboard-hero .admin-eyebrow { color: #34d399 !important; }
.checkin-dashboard-hero h1,
.checkin-dashboard-hero p { color: #fff !important; }
.checkin-page .checkin-card.dashboard-card {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  border-radius: 28px;
  border: 1px solid rgba(16,185,129,.22);
  background: rgba(15,23,42,.72);
  box-shadow: 0 28px 90px rgba(0,0,0,.4);
}
.checkin-filtros-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
}
.checkin-filtros-grid .field label { color: #cbd5e1; }
.checkin-filtros-grid select {
  width: 100%;
  min-height: 50px;
  border-radius: 16px;
  border: 1px solid rgba(148,163,184,.35);
  background: rgba(15,23,42,.82);
  color: #f8fafc;
  padding: 0 14px;
  font-weight: 700;
}
@media (max-width: 720px) {
  .checkin-page .checkin-shell { padding: 24px 20px 40px; }
  .checkin-page .checkin-card.dashboard-card { border-radius: 26px; }
  .checkin-filtros-grid { grid-template-columns: 1fr; }
}

/* v9.8 - seletor de corrida no dashboard de inscrições ao vivo */
.dashboard-seletor-corrida {
  margin-bottom: 18px;
}
.dashboard-seletor-corrida .field {
  max-width: 520px;
}
.dashboard-seletor-corrida label {
  display: block;
  margin-bottom: 8px;
  font-weight: 900;
  color: #334155;
}
.dashboard-seletor-corrida select {
  width: 100%;
  min-height: 52px;
  border-radius: 18px;
  border: 1px solid rgba(100,116,139,.22);
  background: rgba(255,255,255,.92);
  padding: 0 14px;
  font-weight: 800;
  color: #0f172a;
}
.dashboard-item-foto {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  object-fit: cover;
  border: 2px solid rgba(16,185,129,.36);
  box-shadow: 0 8px 22px rgba(0,0,0,.22);
  flex: 0 0 auto;
}


/* v9.8 - refinamento menu global admin/master */
.card-staff.has-admin-menu .admin-card-acoes-logado,
.card-staff-cadastro.has-admin-menu .admin-card-acoes-logado,
.card-staff.has-admin-menu .admin-actions-hidden-by-menu,
.card-staff-cadastro.has-admin-menu .admin-actions-hidden-by-menu {
  display: none !important;
}
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu {
  padding-right: 76px !important;
}
.admin-menu-toggle {
  right: 26px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  color: #111827 !important;
  gap: 6px !important;
  opacity: .92;
}
.admin-menu-toggle:hover,
.admin-menu-toggle:focus {
  background: transparent !important;
  box-shadow: none !important;
  opacity: 1;
}
.admin-menu-toggle span {
  width: 26px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: currentColor !important;
}
.checkin-page .admin-menu-toggle,
.checkin-page .admin-menu-toggle:hover,
.checkin-page .admin-menu-toggle:focus {
  color: #f8fafc !important;
}
.card-staff.admin-menu-open .admin-menu-toggle span:nth-child(1),
.card-staff-cadastro.admin-menu-open .admin-menu-toggle span:nth-child(1) { transform: translateY(9px) rotate(45deg) !important; }
.card-staff.admin-menu-open .admin-menu-toggle span:nth-child(3),
.card-staff-cadastro.admin-menu-open .admin-menu-toggle span:nth-child(3) { transform: translateY(-9px) rotate(-45deg) !important; }
.admin-global-menu {
  width: min(100%, 980px) !important;
  margin: -18px auto 28px !important;
  padding: 14px !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(148,163,184,.28) !important;
  box-shadow: 0 22px 64px rgba(15,23,42,.16) !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.admin-menu-item {
  min-height: 58px !important;
  padding: 12px 12px !important;
  border-radius: 18px !important;
  background: rgba(241,245,249,.9) !important;
  border: 1px solid rgba(148,163,184,.24) !important;
  color: #0f172a !important;
  font-size: 14px !important;
  line-height: 1.12 !important;
  gap: 10px !important;
}
.admin-menu-item:hover { background: rgba(220,252,231,.92) !important; border-color: rgba(16,185,129,.42) !important; }
.admin-menu-ico {
  width: 30px !important;
  height: 30px !important;
  border-radius: 11px !important;
  background: rgba(16,185,129,.13) !important;
  color: #059669 !important;
}
.admin-menu-logout {
  color: #991b1b !important;
}
.admin-menu-logout .admin-menu-ico {
  background: rgba(239,68,68,.12) !important;
  color: #dc2626 !important;
}
.checkin-page .admin-global-menu {
  background: rgba(3,7,18,.96) !important;
  border-color: rgba(16,185,129,.22) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.42) !important;
}
.checkin-page .admin-menu-item {
  background: rgba(15,23,42,.86) !important;
  border-color: rgba(148,163,184,.20) !important;
  color: #f8fafc !important;
}
.checkin-page .admin-menu-item:hover {
  background: rgba(16,185,129,.14) !important;
  border-color: rgba(16,185,129,.38) !important;
}
.checkin-page .admin-menu-logout { color: #fecaca !important; }
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu { padding-right: 62px !important; }
  .admin-menu-toggle { right: 20px !important; width: 34px !important; height: 34px !important; }
  .admin-menu-toggle span { width: 24px !important; height: 3px !important; }
  .admin-global-menu {
    width: calc(100% - 40px) !important;
    margin: -12px auto 24px !important;
    padding: 12px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    border-radius: 24px !important;
    gap: 9px !important;
  }
  .admin-menu-item {
    min-height: 56px !important;
    padding: 10px 9px !important;
    font-size: 13px !important;
    border-radius: 16px !important;
    gap: 8px !important;
  }
  .admin-menu-ico { width: 28px !important; height: 28px !important; border-radius: 10px !important; }
}
@media (max-width: 380px) {
  .admin-menu-item { font-size: 12.5px !important; }
  .admin-menu-ico { width: 26px !important; height: 26px !important; }
}

/* v9.8 - legibilidade dos selects dark no Android/Chrome */
.checkin-filtros-grid select:focus,
.checkin-filtros-grid select:active {
  background: #ffffff !important;
  color: #0f172a !important;
}
.checkin-filtros-grid select option {
  background: #ffffff !important;
  color: #0f172a !important;
}

/* v9.8 - status do dashboard ao vivo fora do banner */
.dashboard-inscricoes-hero .dashboard-live-pill { display: none !important; }
.dashboard-live-pill-fora-hero {
  display: inline-flex;
  width: fit-content;
  margin: -14px 0 18px 0;
  align-items: center;
  justify-content: center;
}
@media (max-width: 720px) {
  .dashboard-live-pill-fora-hero {
    margin: -8px 20px 16px;
  }
}


/* v9.8 - refinamentos finais menu/global e dashboard ao vivo */
.card-staff.has-admin-menu .admin-card-acoes-logado,
.card-staff-cadastro.has-admin-menu .admin-card-acoes-logado,
.card-staff.has-admin-menu .admin-actions-hidden-by-menu,
.card-staff-cadastro.has-admin-menu .admin-actions-hidden-by-menu {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu {
  display: grid !important;
  grid-template-columns: auto minmax(0,1fr) 42px !important;
  align-items: center !important;
  column-gap: 16px !important;
  padding-right: 28px !important;
}
.card-staff.has-admin-menu .admin-menu-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle {
  position: static !important;
  transform: none !important;
  justify-self: end !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
}
.admin-global-menu {
  width: 100% !important;
  max-width: 980px !important;
  margin: -18px auto 28px !important;
  box-sizing: border-box !important;
}
.dashboard-inscricoes-hero { position: relative !important; margin-bottom: 24px !important; }
.dashboard-live-pill-hero {
  position: absolute !important;
  top: 22px !important;
  right: 22px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 8px 16px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  background: #dcfce7 !important;
  color: #047857 !important;
  border: 1px solid rgba(16,185,129,.36) !important;
  box-shadow: 0 10px 24px rgba(15,23,42,.16) !important;
}
.dashboard-live-pill-hero.offline {
  background: #fee2e2 !important;
  color: #b91c1c !important;
  border-color: rgba(239,68,68,.35) !important;
}
.dashboard-live-pill-hero.hidden { display: none !important; }
.dashboard-live-pill-fora-hero { display: none !important; }
.dashboard-seletor-corrida { margin-top: 0 !important; }
.pagina-dashboard-inscricoes .dashboard-seletor-corrida { margin-top: 0 !important; }
.guarda-hero .btn-voltar-guarda { display: none !important; }
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu {
    grid-template-columns: auto minmax(0,1fr) 38px !important;
    padding: 22px 26px !important;
    column-gap: 14px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper { grid-column: 1 !important; }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff { grid-column: 2 !important; min-width: 0 !important; }
  .card-staff.has-admin-menu .admin-menu-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle { grid-column: 3 !important; }
  .admin-global-menu {
    width: 100% !important;
    max-width: none !important;
    margin: -12px auto 24px !important;
    border-radius: 24px !important;
  }
  .dashboard-live-pill-hero {
    top: 18px !important;
    right: 18px !important;
    min-height: 30px !important;
    padding: 7px 12px !important;
    font-size: 12px !important;
  }
  .dashboard-inscricoes-hero .admin-hero-texto { padding-right: 92px !important; }
}
@media (max-width: 420px) {
  .admin-menu-item { min-height: 54px !important; padding: 9px 8px !important; }
  .dashboard-inscricoes-hero .admin-hero-texto { padding-right: 76px !important; }
}

/* =========================================================
   v9.8 - card logado + menu grid refinado claro/dark
========================================================= */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu {
  display: grid !important;
  grid-template-columns: 36px auto minmax(0,1fr) 56px !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 0 !important;
  padding: 18px 24px !important;
  cursor: pointer;
}
.card-staff.has-admin-menu .admin-card-acoes-logado,
.card-staff-cadastro.has-admin-menu .admin-card-acoes-logado,
.card-staff.has-admin-menu .acoes-staff,
.card-staff-cadastro.has-admin-menu .acoes-staff {
  display: none !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper { grid-column: 2 !important; }
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-column: 3 !important;
  align-self: center !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}
.card-staff.has-admin-menu .dados-staff h2,
.card-staff-cadastro.has-admin-menu .dados-staff h2 {
  margin: 0 !important;
  line-height: 1.08 !important;
  color: #0f172a !important;
}
.card-staff.has-admin-menu .label-card,
.card-staff-cadastro.has-admin-menu .label-card {
  margin: 0 0 3px !important;
  color: #7c3aed !important;
  font-size: 14px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.card-staff.has-admin-menu #cidade-staff,
.card-staff.has-admin-menu #email-staff,
.card-staff-cadastro.has-admin-menu #cidade-staff-cadastro,
.card-staff-cadastro.has-admin-menu #email-staff-cadastro { display: none !important; }
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff {
  width: 76px !important;
  height: 76px !important;
}
.admin-back-btn {
  grid-column: 1 !important;
  width: 34px !important;
  height: 34px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(241,245,249,.95) !important;
  color: #334155 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: inset 0 0 0 1px rgba(148,163,184,.18) !important;
  cursor: pointer !important;
}
.admin-back-btn:hover { background: #e2e8f0 !important; }
.card-staff.has-admin-menu .admin-menu-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle {
  grid-column: 4 !important;
  position: static !important;
  transform: none !important;
  justify-self: end !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(148,163,184,.26) !important;
  background: radial-gradient(circle at 30% 20%, rgba(139,92,246,.20), rgba(255,255,255,.95)) !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.10), inset 0 0 0 1px rgba(255,255,255,.58) !important;
  display: grid !important;
  grid-template-columns: repeat(2, 8px) !important;
  grid-template-rows: repeat(2, 8px) !important;
  place-content: center !important;
  gap: 5px !important;
  color: #7c3aed !important;
}
.admin-menu-toggle.grid-toggle span {
  width: 8px !important;
  height: 8px !important;
  border-radius: 4px !important;
  background: currentColor !important;
  transform: none !important;
  opacity: 1 !important;
  transition: transform .16s ease, opacity .16s ease, border-radius .16s ease !important;
}
.card-staff.admin-menu-open .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.admin-menu-open .admin-menu-toggle.grid-toggle span {
  transform: scale(.88) !important;
  border-radius: 999px !important;
}
.admin-global-menu {
  width: 100% !important;
  max-width: 980px !important;
  margin: -12px auto 26px !important;
  padding: 14px !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(226,232,240,.98) !important;
  box-shadow: 0 24px 70px rgba(15,23,42,.12) !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.admin-menu-item {
  min-height: 72px !important;
  padding: 12px 12px !important;
  border-radius: 18px !important;
  background: rgba(248,250,252,.96) !important;
  border: 1px solid rgba(203,213,225,.62) !important;
  color: #0f172a !important;
  text-decoration: none !important;
  display: grid !important;
  grid-template-columns: 42px minmax(0,1fr) 14px !important;
  align-items: center !important;
  gap: 10px !important;
  font: inherit !important;
  text-align: left !important;
  cursor: pointer !important;
}
.admin-menu-item:hover { background: #fff !important; border-color: rgba(16,185,129,.38) !important; }
.admin-menu-ico {
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, rgba(45,212,191,.20), rgba(59,130,246,.13)) !important;
  color: #0d9488 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 21px !important;
  font-weight: 900 !important;
}
.admin-menu-text { min-width: 0 !important; display: flex !important; flex-direction: column !important; gap: 3px !important; }
.admin-menu-text strong { display: block !important; color: #0f172a !important; font-size: 15px !important; line-height: 1.05 !important; font-weight: 900 !important; }
.admin-menu-text small { display: block !important; color: #64748b !important; font-size: 11px !important; line-height: 1.15 !important; font-weight: 650 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.admin-menu-arrow { color: #334155 !important; font-size: 24px !important; line-height: 1 !important; justify-self: end !important; }
.admin-menu-logout .admin-menu-ico { background: rgba(239,68,68,.12) !important; color: #dc2626 !important; }
.admin-menu-logout .admin-menu-text strong { color: #991b1b !important; }
.checkin-page .card-staff.has-admin-menu,
.checkin-page .card-staff-cadastro.has-admin-menu {
  background: rgba(15,23,42,.78) !important;
  border-color: rgba(148,163,184,.36) !important;
}
.checkin-page .card-staff.has-admin-menu .dados-staff h2,
.checkin-page .card-staff-cadastro.has-admin-menu .dados-staff h2 { color: #ffffff !important; }
.checkin-page .card-staff.has-admin-menu .label-card,
.checkin-page .card-staff-cadastro.has-admin-menu .label-card { color: #a855f7 !important; }
.checkin-page .admin-back-btn { background: rgba(15,23,42,.82) !important; color: #d1fae5 !important; box-shadow: inset 0 0 0 1px rgba(16,185,129,.24) !important; }
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle {
  background: radial-gradient(circle at 30% 20%, rgba(20,184,166,.30), rgba(15,23,42,.88)) !important;
  border-color: rgba(16,185,129,.28) !important;
  color: #2dd4bf !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.36), inset 0 0 0 1px rgba(45,212,191,.15) !important;
}
.checkin-page .admin-global-menu {
  background: rgba(3,7,18,.96) !important;
  border-color: rgba(16,185,129,.22) !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.42) !important;
}
.checkin-page .admin-menu-item {
  background: rgba(15,23,42,.86) !important;
  border-color: rgba(148,163,184,.20) !important;
  color: #f8fafc !important;
}
.checkin-page .admin-menu-text strong { color: #f8fafc !important; }
.checkin-page .admin-menu-text small { color: #94a3b8 !important; }
.checkin-page .admin-menu-arrow { color: #e2e8f0 !important; }
.checkin-page .admin-menu-item:hover { background: rgba(16,185,129,.14) !important; border-color: rgba(16,185,129,.38) !important; }
.checkin-page .admin-menu-logout .admin-menu-text strong { color: #fecaca !important; }

/* v9.8 - dashboard ao vivo compacto e status dentro do banner */
.dashboard-inscricoes-page .card-staff { margin-bottom: 28px !important; }
.dashboard-inscricoes-hero { position: relative !important; margin-bottom: 14px !important; }
.dashboard-inscricoes-hero .dashboard-live-pill-hero {
  position: absolute !important;
  top: 22px !important;
  right: 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 8px 15px !important;
  border-radius: 999px !important;
  background: #dcfce7 !important;
  color: #047857 !important;
  border: 1px solid rgba(16,185,129,.38) !important;
  box-shadow: 0 12px 26px rgba(15,23,42,.16) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}
.dashboard-inscricoes-hero .dashboard-live-pill-hero.hidden { display: none !important; }
.dashboard-inscricoes-hero .dashboard-live-pill-hero.offline { background: #fee2e2 !important; color: #b91c1c !important; border-color: rgba(239,68,68,.35) !important; }
.dashboard-seletor-corrida { margin-top: 0 !important; margin-bottom: 22px !important; }
.dashboard-inscricoes-resumo { margin-top: 0 !important; }
.dashboard-live-pill-fora-hero { display: none !important; }

@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu {
    grid-template-columns: 0 auto minmax(0,1fr) 52px !important;
    gap: 13px !important;
    padding: 20px 24px !important;
    border-radius: 30px !important;
  }
  .admin-back-btn { display: none !important; }
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff { width: 76px !important; height: 76px !important; }
  .card-staff.has-admin-menu .dados-staff h2,
  .card-staff-cadastro.has-admin-menu .dados-staff h2 { font-size: 24px !important; }
  .card-staff.has-admin-menu .label-card,
  .card-staff-cadastro.has-admin-menu .label-card { font-size: 14px !important; }
  .card-staff.has-admin-menu .admin-menu-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle { width: 52px !important; height: 52px !important; }
  .admin-global-menu {
    width: 100% !important;
    max-width: none !important;
    margin: -10px auto 24px !important;
    padding: 12px !important;
    border-radius: 26px !important;
    gap: 10px !important;
  }
  .admin-menu-item { min-height: 72px !important; padding: 11px 9px !important; grid-template-columns: 38px minmax(0,1fr) 10px !important; gap: 8px !important; }
  .admin-menu-ico { width: 38px !important; height: 38px !important; font-size: 19px !important; }
  .admin-menu-text strong { font-size: 14px !important; }
  .admin-menu-text small { font-size: 10.6px !important; }
  .admin-menu-arrow { font-size: 20px !important; }
  .dashboard-inscricoes-hero { margin-bottom: 12px !important; }
  .dashboard-inscricoes-hero .admin-hero-texto { padding-right: 86px !important; }
  .dashboard-inscricoes-hero .dashboard-live-pill-hero { top: 18px !important; right: 18px !important; min-height: 30px !important; padding: 7px 12px !important; font-size: 12px !important; }
  .dashboard-seletor-corrida { margin-bottom: 18px !important; }
}
@media (max-width: 390px) {
  .admin-menu-item { grid-template-columns: 34px minmax(0,1fr) 8px !important; padding: 10px 7px !important; }
  .admin-menu-ico { width: 34px !important; height: 34px !important; font-size: 17px !important; }
  .admin-menu-text strong { font-size: 13px !important; }
  .admin-menu-text small { display: none !important; }
}

/* =========================================================
   v9.8 - correções visuais: card logado, voltar, menu e guarda-volumes
========================================================= */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  display: grid !important;
  grid-template-columns: 36px 76px minmax(0,1fr) 56px !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 0 !important;
  padding: 18px 24px !important;
  cursor: pointer !important;
}
.card-staff.has-admin-menu .admin-back-btn,
.card-staff-cadastro.has-admin-menu .admin-back-btn {
  grid-column: 1 !important;
  grid-row: 1 !important;
  position: static !important;
  display: inline-flex !important;
  align-self: center !important;
  justify-self: start !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(241,245,249,.98) !important;
  color: #334155 !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 32px !important;
  font-weight: 900 !important;
  line-height: .8 !important;
  box-shadow: inset 0 0 0 1px rgba(148,163,184,.20), 0 8px 20px rgba(15,23,42,.08) !important;
  z-index: 2 !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
}
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff {
  width: 76px !important;
  height: 76px !important;
  display: block !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: stretch !important;
  min-width: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 2px !important;
}
.card-staff.has-admin-menu .dados-staff h2,
.card-staff-cadastro.has-admin-menu .dados-staff h2,
.card-staff.has-admin-menu #nome-staff,
.card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
  display: block !important;
  margin: 0 !important;
  line-height: 1.06 !important;
  color: #0f172a !important;
  font-size: clamp(24px, 5vw, 34px) !important;
  font-weight: 950 !important;
  letter-spacing: -0.04em !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.card-staff.has-admin-menu .label-card,
.card-staff-cadastro.has-admin-menu .label-card {
  display: block !important;
  margin: 0 0 2px !important;
  color: #7c3aed !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.card-staff.has-admin-menu #cidade-staff,
.card-staff.has-admin-menu #email-staff,
.card-staff-cadastro.has-admin-menu #cidade-staff-cadastro,
.card-staff-cadastro.has-admin-menu #email-staff-cadastro { display: none !important; }
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  grid-column: 4 !important;
  grid-row: 1 !important;
  position: static !important;
  transform: none !important;
  align-self: center !important;
  justify-self: end !important;
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 20px !important;
  border: 1px solid rgba(148,163,184,.24) !important;
  background: radial-gradient(circle at 30% 20%, rgba(139,92,246,.18), rgba(255,255,255,.96)) !important;
  box-shadow: 0 12px 30px rgba(15,23,42,.10), inset 0 0 0 1px rgba(255,255,255,.62) !important;
  display: grid !important;
  grid-template-columns: repeat(2, 9px) !important;
  grid-template-rows: repeat(2, 9px) !important;
  place-content: center !important;
  gap: 6px !important;
  color: #7c3aed !important;
  opacity: 1 !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle span {
  width: 9px !important;
  height: 9px !important;
  border-radius: 999px !important;
  background: currentColor !important;
  transform: none !important;
  opacity: 1 !important;
}
.card-staff.admin-menu-open .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.admin-menu-open .admin-menu-toggle.grid-toggle span {
  transform: scale(.84) !important;
}
.admin-global-menu {
  width: 100% !important;
  max-width: 980px !important;
  margin: -10px auto 26px !important;
  box-sizing: border-box !important;
}

/* Tema dark/check-in: garantir leitura do card logado */
.checkin-page .card-staff.has-admin-menu,
.checkin-page .card-staff-cadastro.has-admin-menu {
  background: rgba(15,23,42,.84) !important;
  border-color: rgba(203,213,225,.42) !important;
}
.checkin-page .card-staff.has-admin-menu .dados-staff h2,
.checkin-page .card-staff-cadastro.has-admin-menu .dados-staff h2,
.checkin-page .card-staff.has-admin-menu #nome-staff,
.checkin-page .card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
  color: #ffffff !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.35) !important;
}
.checkin-page .card-staff.has-admin-menu .label-card,
.checkin-page .card-staff-cadastro.has-admin-menu .label-card {
  color: #a78bfa !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.35) !important;
}
.checkin-page .card-staff.has-admin-menu .admin-back-btn,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-back-btn {
  background: rgba(15,23,42,.92) !important;
  color: #d1fae5 !important;
  box-shadow: inset 0 0 0 1px rgba(45,212,191,.28), 0 10px 22px rgba(0,0,0,.24) !important;
}
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  background: radial-gradient(circle at 30% 20%, rgba(20,184,166,.35), rgba(15,23,42,.90)) !important;
  border-color: rgba(45,212,191,.30) !important;
  color: #2dd4bf !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.38), inset 0 0 0 1px rgba(45,212,191,.16) !important;
}

/* Guarda-volumes: respiro antes das exclusões */
.pagina-guarda-volumes .form-guarda-volumes .form-area > .field:has(#exclusoes),
.pagina-guarda-volumes .form-guarda-volumes #exclusoes {
  margin-top: 0 !important;
}
.pagina-guarda-volumes .form-guarda-volumes .form-area > .field:has(#exclusoes) {
  padding-top: 20px !important;
}
.pagina-guarda-volumes label[for="exclusoes"] {
  display: block !important;
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

/* Dashboard ao vivo: reduzir espaços entre blocos */
.dashboard-inscricoes-page .dashboard-inscricoes-hero,
.pagina-dashboard-inscricoes .dashboard-inscricoes-hero {
  margin-bottom: 14px !important;
}
.dashboard-inscricoes-page .dashboard-seletor-corrida,
.pagina-dashboard-inscricoes .dashboard-seletor-corrida {
  margin-top: 0 !important;
  margin-bottom: 14px !important;
}
.dashboard-inscricoes-page .dashboard-inscricoes-resumo,
.pagina-dashboard-inscricoes .dashboard-inscricoes-resumo {
  margin-top: 0 !important;
}
.dashboard-inscricoes-hero .dashboard-live-pill-hero:not(.hidden) {
  display: inline-flex !important;
}

@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 34px 72px minmax(0,1fr) 54px !important;
    gap: 11px !important;
    padding: 18px 20px !important;
  }
  .card-staff.has-admin-menu .admin-back-btn,
  .card-staff-cadastro.has-admin-menu .admin-back-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    font-size: 30px !important;
  }
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff {
    width: 70px !important;
    height: 70px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
  }
  .card-staff.has-admin-menu .dados-staff h2,
  .card-staff-cadastro.has-admin-menu .dados-staff h2,
  .card-staff.has-admin-menu #nome-staff,
  .card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
    font-size: 26px !important;
  }
  .card-staff.has-admin-menu .label-card,
  .card-staff-cadastro.has-admin-menu .label-card {
    font-size: 14px !important;
  }
  .admin-global-menu {
    width: 100% !important;
    max-width: none !important;
    margin: -10px auto 22px !important;
    padding: 12px !important;
    border-radius: 24px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }
  .pagina-guarda-volumes .form-guarda-volumes .form-area > .field:has(#exclusoes) {
    padding-top: 22px !important;
  }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 32px 64px minmax(0,1fr) 48px !important;
    gap: 9px !important;
    padding: 16px 18px !important;
  }
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff {
    width: 62px !important;
    height: 62px !important;
  }
  .card-staff.has-admin-menu .dados-staff h2,
  .card-staff-cadastro.has-admin-menu .dados-staff h2,
  .card-staff.has-admin-menu #nome-staff,
  .card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
    font-size: 22px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    border-radius: 18px !important;
  }
}
.pagina-guarda-volumes .field-exclusoes { padding-top: 20px !important; }
@media (max-width: 720px){ .pagina-guarda-volumes .field-exclusoes { padding-top: 22px !important; } }


/* =========================================================
   v9.8 - remover botão voltar e realinhar card/menu quadriculado
========================================================= */
.card-staff.has-admin-menu .admin-back-btn,
.card-staff-cadastro.has-admin-menu .admin-back-btn {
  display: none !important;
}
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  grid-template-columns: 82px minmax(0,1fr) 58px !important;
  align-items: center !important;
  column-gap: 18px !important;
  padding: 18px 24px !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-column: 1 !important;
  justify-self: start !important;
}
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff {
  width: 76px !important;
  height: 76px !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-column: 2 !important;
  justify-self: stretch !important;
  align-self: center !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  grid-column: 3 !important;
  align-self: center !important;
  justify-self: end !important;
  display: grid !important;
  place-content: center !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle span {
  display: block !important;
}
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 76px minmax(0,1fr) 54px !important;
    column-gap: 14px !important;
    padding: 18px 20px !important;
  }
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff {
    width: 72px !important;
    height: 72px !important;
  }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 68px minmax(0,1fr) 50px !important;
    column-gap: 10px !important;
    padding: 16px 18px !important;
  }
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff {
    width: 64px !important;
    height: 64px !important;
  }
}

/* =========================================================
   v9.8 - alinhamento fino, ícones SVG e avatar seguro
========================================================= */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  grid-template-columns: 82px minmax(0,1fr) 60px !important;
  align-items: center !important;
  column-gap: 18px !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}
.card-staff.has-admin-menu .admin-back-btn,
.card-staff-cadastro.has-admin-menu .admin-back-btn { display: none !important; }
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-column: 1 !important;
  align-self: center !important;
  justify-self: start !important;
  margin: 0 !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-column: 2 !important;
  align-self: center !important;
  justify-self: stretch !important;
  justify-content: center !important;
  transform: translateY(5px) !important;
}
.card-staff.has-admin-menu .label-card,
.card-staff-cadastro.has-admin-menu .label-card {
  margin: 0 0 1px !important;
  line-height: 1.05 !important;
}
.card-staff.has-admin-menu .dados-staff h2,
.card-staff-cadastro.has-admin-menu .dados-staff h2,
.card-staff.has-admin-menu #nome-staff,
.card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
  line-height: 1.02 !important;
  margin: 0 !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  grid-column: 3 !important;
  align-self: center !important;
  justify-self: end !important;
  transform: translateY(4px) !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  border-radius: 21px !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle span {
  width: 9px !important;
  height: 9px !important;
}

/* Avatar/placeholder: evita texto de alt e imagem quebrada antes do carregamento */
.foto-staff-wrapper,
.staff-foto,
.user-photo-wrapper {
  background: linear-gradient(135deg, rgba(226,232,240,.92), rgba(241,245,249,.72)) !important;
  position: relative !important;
  overflow: hidden !important;
}
.foto-staff-wrapper::before,
.staff-foto::before,
.user-photo-wrapper::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 50% 34%, rgba(100,116,139,.28) 0 14%, transparent 15%),
    radial-gradient(ellipse at 50% 74%, rgba(100,116,139,.22) 0 25%, transparent 26%);
  pointer-events: none;
  z-index: 0;
}
.checkin-page .foto-staff-wrapper,
.checkin-page .staff-foto,
.checkin-page .user-photo-wrapper {
  background: linear-gradient(135deg, rgba(15,23,42,.92), rgba(30,41,59,.82)) !important;
}
.checkin-page .foto-staff-wrapper::before,
.checkin-page .staff-foto::before,
.checkin-page .user-photo-wrapper::before {
  background:
    radial-gradient(circle at 50% 34%, rgba(45,212,191,.22) 0 14%, transparent 15%),
    radial-gradient(ellipse at 50% 74%, rgba(45,212,191,.16) 0 25%, transparent 26%);
}
img.staff-photo-safe,
img.foto-staff {
  position: relative !important;
  z-index: 1 !important;
  color: transparent !important;
  text-indent: -9999px !important;
  background: transparent !important;
}
img.staff-photo-safe:not(.staff-photo-loaded) {
  opacity: 0 !important;
}
img.staff-photo-safe.staff-photo-loaded {
  opacity: 1 !important;
  transition: opacity .18s ease !important;
}

/* Ícones do menu: SVG mais legível, traço grosso e cores por ação */
.admin-menu-ico svg {
  width: 25px !important;
  height: 25px !important;
  display: block !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.65 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.admin-menu-ico {
  width: 44px !important;
  height: 44px !important;
  border-radius: 15px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.55) !important;
}
.admin-menu-painel .admin-menu-ico { color: #059669 !important; background: linear-gradient(135deg, rgba(16,185,129,.20), rgba(187,247,208,.32)) !important; }
.admin-menu-corridas .admin-menu-ico { color: #0f766e !important; background: linear-gradient(135deg, rgba(20,184,166,.17), rgba(219,234,254,.45)) !important; }
.admin-menu-cred .admin-menu-ico { color: #2563eb !important; background: linear-gradient(135deg, rgba(59,130,246,.15), rgba(219,234,254,.56)) !important; }
.admin-menu-vivo .admin-menu-ico { color: #0d9488 !important; background: linear-gradient(135deg, rgba(45,212,191,.18), rgba(224,242,254,.55)) !important; }
.admin-menu-check .admin-menu-ico { color: #6d28d9 !important; background: linear-gradient(135deg, rgba(139,92,246,.16), rgba(237,233,254,.62)) !important; }
.admin-menu-guarda .admin-menu-ico { color: #0369a1 !important; background: linear-gradient(135deg, rgba(14,165,233,.15), rgba(219,234,254,.58)) !important; }
.admin-menu-perfil .admin-menu-ico { color: #7c3aed !important; background: linear-gradient(135deg, rgba(124,58,237,.15), rgba(237,233,254,.60)) !important; }
.admin-menu-sair .admin-menu-ico { color: #dc2626 !important; background: linear-gradient(135deg, rgba(239,68,68,.15), rgba(254,226,226,.64)) !important; }
.admin-menu-item {
  min-height: 76px !important;
  grid-template-columns: 44px minmax(0,1fr) 14px !important;
}
.checkin-page .admin-menu-painel .admin-menu-ico { color: #34d399 !important; background: rgba(16,185,129,.16) !important; }
.checkin-page .admin-menu-corridas .admin-menu-ico { color: #2dd4bf !important; background: rgba(20,184,166,.15) !important; }
.checkin-page .admin-menu-cred .admin-menu-ico { color: #60a5fa !important; background: rgba(37,99,235,.18) !important; }
.checkin-page .admin-menu-vivo .admin-menu-ico { color: #bef264 !important; background: rgba(132,204,22,.16) !important; }
.checkin-page .admin-menu-check .admin-menu-ico { color: #c084fc !important; background: rgba(139,92,246,.18) !important; }
.checkin-page .admin-menu-guarda .admin-menu-ico { color: #38bdf8 !important; background: rgba(14,165,233,.16) !important; }
.checkin-page .admin-menu-perfil .admin-menu-ico { color: #c084fc !important; background: rgba(124,58,237,.18) !important; }
.checkin-page .admin-menu-sair .admin-menu-ico { color: #f87171 !important; background: rgba(239,68,68,.17) !important; }
.checkin-page .card-staff.has-admin-menu .dados-staff,
.checkin-page .card-staff-cadastro.has-admin-menu .dados-staff { transform: translateY(5px) !important; }
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle { transform: translateY(4px) !important; }

@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 76px minmax(0,1fr) 56px !important;
    column-gap: 14px !important;
    padding: 18px 20px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff { transform: translateY(5px) !important; }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    transform: translateY(4px) !important;
  }
  .admin-menu-item { min-height: 74px !important; grid-template-columns: 40px minmax(0,1fr) 10px !important; }
  .admin-menu-ico { width: 40px !important; height: 40px !important; }
  .admin-menu-ico svg { width: 24px !important; height: 24px !important; stroke-width: 2.75 !important; }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 68px minmax(0,1fr) 52px !important;
  }
  .admin-menu-item { grid-template-columns: 38px minmax(0,1fr) 8px !important; }
  .admin-menu-ico { width: 38px !important; height: 38px !important; }
  .admin-menu-ico svg { width: 23px !important; height: 23px !important; }
}

/* =========================================================
   v9.8 - ajuste fino final: card logado, foto circular e ícones
========================================================= */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.dashboard-inscricoes-page .card-staff.has-admin-menu,
.pagina-conferencia .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 56px !important;
  grid-template-areas: "foto dados menu" !important;
  align-items: center !important;
  column-gap: 18px !important;
  min-height: 116px !important;
  padding: 20px 26px !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-area: foto !important;
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  align-self: center !important;
  justify-self: start !important;
  margin: 0 !important;
  padding: 0 !important;
}
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff,
.card-staff.has-admin-menu .foto-staff-wrapper img,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  display: block !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  background: transparent !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper:has(img.staff-photo-loaded),
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper:has(img.staff-photo-loaded),
.card-staff.has-admin-menu .foto-staff-wrapper:has(img[src]),
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper:has(img[src]) {
  background: transparent !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper:has(img.staff-photo-loaded)::before,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper:has(img.staff-photo-loaded)::before,
.card-staff.has-admin-menu .foto-staff-wrapper:has(img[src])::before,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper:has(img[src])::before {
  display: none !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-area: dados !important;
  align-self: center !important;
  justify-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}
.card-staff.has-admin-menu .label-card,
.card-staff-cadastro.has-admin-menu .label-card {
  margin: 0 0 3px 0 !important;
  line-height: 1.05 !important;
}
.card-staff.has-admin-menu .dados-staff h2,
.card-staff-cadastro.has-admin-menu .dados-staff h2,
.card-staff.has-admin-menu #nome-staff,
.card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
  margin: 0 !important;
  line-height: 1.02 !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  grid-area: menu !important;
  align-self: center !important;
  justify-self: end !important;
  position: static !important;
  top: auto !important;
  right: auto !important;
  margin: 0 !important;
  transform: translateY(8px) !important;
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  display: grid !important;
  place-content: center !important;
}
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  transform: translateY(8px) !important;
}
.admin-menu-ico svg {
  stroke-width: 2.25 !important;
}
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 72px minmax(0, 1fr) 54px !important;
    min-height: 112px !important;
    column-gap: 16px !important;
    padding: 18px 22px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff { min-height: 72px !important; }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    transform: translateY(8px) !important;
  }
  .admin-menu-ico svg { stroke-width: 2.2 !important; }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 64px minmax(0, 1fr) 50px !important;
    min-height: 104px !important;
    column-gap: 12px !important;
    padding: 16px 18px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff { min-height: 64px !important; }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    transform: translateY(7px) !important;
  }
}

/* =========================================================
   v9.8 - correção estrutural do card logado
   Objetivo: todos os elementos na mesma linha/altura real do card.
========================================================= */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.dashboard-inscricoes-page .card-staff.has-admin-menu,
.pagina-conferencia .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 58px !important;
  grid-template-rows: 76px !important;
  grid-template-areas: "foto dados menu" !important;
  align-items: center !important;
  justify-items: stretch !important;
  column-gap: 20px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 22px 28px !important;
  box-sizing: border-box !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-area: foto !important;
  grid-row: 1 !important;
  grid-column: 1 !important;
  align-self: center !important;
  justify-self: start !important;
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff,
.card-staff.has-admin-menu .foto-staff-wrapper img,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  display: block !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff {
  grid-area: dados !important;
  grid-row: 1 !important;
  grid-column: 2 !important;
  align-self: center !important;
  justify-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 76px !important;
  height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}
.card-staff.has-admin-menu .label-card,
.card-staff-cadastro.has-admin-menu .label-card {
  margin: 0 0 4px 0 !important;
  padding: 0 !important;
  line-height: 1.05 !important;
}
.card-staff.has-admin-menu .dados-staff h2,
.card-staff-cadastro.has-admin-menu .dados-staff h2,
.card-staff.has-admin-menu #nome-staff,
.card-staff-cadastro.has-admin-menu #nome-staff-cadastro {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.04 !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff.has-admin-menu .admin-menu-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle {
  grid-area: menu !important;
  grid-row: 1 !important;
  grid-column: 3 !important;
  align-self: center !important;
  justify-self: end !important;
  position: static !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  margin: 0 !important;
  transform: none !important;
  translate: none !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  max-width: 58px !important;
  max-height: 58px !important;
  display: grid !important;
  grid-template-columns: repeat(2, 8px) !important;
  grid-template-rows: repeat(2, 8px) !important;
  place-content: center !important;
  gap: 6px !important;
}
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
.checkin-page .card-staff.has-admin-menu .admin-menu-toggle,
.checkin-page .card-staff-cadastro.has-admin-menu .admin-menu-toggle {
  transform: none !important;
}
.card-staff.has-admin-menu .admin-back-btn,
.card-staff-cadastro.has-admin-menu .admin-back-btn {
  display: none !important;
}
.admin-menu-ico svg {
  stroke-width: 2.1 !important;
}
@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 72px minmax(0, 1fr) 56px !important;
    grid-template-rows: 72px !important;
    column-gap: 16px !important;
    padding: 18px 24px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    min-height: 72px !important;
    max-width: 72px !important;
    max-height: 72px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff {
    height: 72px !important;
    min-height: 72px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff.has-admin-menu .admin-menu-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
    transform: none !important;
  }
  .admin-menu-ico svg { stroke-width: 2.05 !important; }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 64px minmax(0, 1fr) 52px !important;
    grid-template-rows: 64px !important;
    column-gap: 14px !important;
    padding: 16px 20px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff {
    height: 64px !important;
    min-height: 64px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff.has-admin-menu .admin-menu-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    transform: none !important;
  }
}

/* =========================================================
   v9.8 - correção real mobile card logado + avatar circular
========================================================= */
/* Evita quadrado cinza ao redor da foto em staff comum/admin */
.foto-staff-wrapper,
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper,
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper {
  border-radius: 999px !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.foto-staff,
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff,
#foto-staff,
#foto-staff-cadastro {
  border-radius: 999px !important;
  overflow: hidden !important;
  background: #eef2f7 !important;
  border: 3px solid rgba(255,255,255,.92) !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.12) !important;
}
.foto-staff:not([src]),
.foto-staff[src=""],
#foto-staff:not([src]),
#foto-staff[src=""],
#foto-staff-cadastro:not([src]),
#foto-staff-cadastro[src=""] {
  color: transparent !important;
  font-size: 0 !important;
}

/* Card admin/master: estrutura compacta e alinhada no mobile/desktop */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
#card-staff.card-staff.has-admin-menu,
#card-staff-cadastro.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.dashboard-inscricoes-page .card-staff.has-admin-menu,
.pagina-conferencia .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 58px !important;
  grid-template-rows: 76px !important;
  grid-template-areas: "foto dados menu" !important;
  align-items: center !important;
  justify-items: stretch !important;
  column-gap: 20px !important;
  row-gap: 0 !important;
  min-height: 120px !important;
  height: auto !important;
  padding: 22px 28px !important;
  box-sizing: border-box !important;
}
.card-staff.has-admin-menu .foto-staff-wrapper,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
#card-staff.has-admin-menu .foto-staff-wrapper,
#card-staff-cadastro.has-admin-menu .foto-staff-wrapper {
  grid-area: foto !important;
  align-self: center !important;
  justify-self: start !important;
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
}
.card-staff.has-admin-menu .foto-staff,
.card-staff-cadastro.has-admin-menu .foto-staff,
.card-staff.has-admin-menu .foto-staff-wrapper img,
.card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
  width: 76px !important;
  height: 76px !important;
  min-width: 76px !important;
  min-height: 76px !important;
  max-width: 76px !important;
  max-height: 76px !important;
}
.card-staff.has-admin-menu .dados-staff,
.card-staff-cadastro.has-admin-menu .dados-staff,
#card-staff.has-admin-menu .dados-staff,
#card-staff-cadastro.has-admin-menu .dados-staff {
  grid-area: dados !important;
  align-self: center !important;
  justify-self: stretch !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 76px !important;
  height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  translate: none !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
#card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
#card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
  grid-area: menu !important;
  align-self: center !important;
  justify-self: end !important;
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
  transform: none !important;
  translate: none !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  max-width: 58px !important;
  max-height: 58px !important;
  display: grid !important;
  grid-template-columns: repeat(2, 8px) !important;
  grid-template-rows: repeat(2, 8px) !important;
  place-content: center !important;
  gap: 6px !important;
}
.card-staff.has-admin-menu .admin-menu-toggle.grid-toggle span,
.card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle span {
  width: 8px !important;
  height: 8px !important;
}
.admin-menu-ico svg { stroke-width: 2 !important; }

@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  #card-staff.card-staff.has-admin-menu,
  #card-staff-cadastro.card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 64px minmax(0, 1fr) 56px !important;
    grid-template-rows: 64px !important;
    grid-template-areas: "foto dados menu" !important;
    column-gap: 14px !important;
    row-gap: 0 !important;
    min-height: 102px !important;
    padding: 19px 24px !important;
    align-items: center !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    max-width: 64px !important;
    max-height: 64px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff {
    min-height: 64px !important;
    height: 64px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle,
  #card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  #card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    max-width: 56px !important;
    max-height: 56px !important;
    align-self: center !important;
    justify-self: end !important;
    transform: none !important;
  }
}
@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  #card-staff.card-staff.has-admin-menu,
  #card-staff-cadastro.card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    grid-template-columns: 58px minmax(0, 1fr) 52px !important;
    grid-template-rows: 58px !important;
    min-height: 94px !important;
    column-gap: 12px !important;
    padding: 18px 21px !important;
  }
  .card-staff.has-admin-menu .foto-staff-wrapper,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper,
  .card-staff.has-admin-menu .foto-staff,
  .card-staff-cadastro.has-admin-menu .foto-staff,
  .card-staff.has-admin-menu .foto-staff-wrapper img,
  .card-staff-cadastro.has-admin-menu .foto-staff-wrapper img {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;
  }
  .card-staff.has-admin-menu .dados-staff,
  .card-staff-cadastro.has-admin-menu .dados-staff {
    min-height: 58px !important;
    height: 58px !important;
  }
  .card-staff.has-admin-menu .admin-menu-toggle.grid-toggle,
  .card-staff-cadastro.has-admin-menu .admin-menu-toggle.grid-toggle {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
  }
}

/* Cadastro novo: não mostra card logado/menu */
body.pagina-cadastro-geral #card-staff-cadastro,
body.pagina-cadastro-geral .card-staff-cadastro {
  display: none !important;
}

/* =========================================================
   v9.9 - ajuste fino do card logado e nome abreviado
========================================================= */
.card-staff .dados-staff h2,
.card-staff-cadastro .dados-staff h2,
#nome-staff,
#nome-staff-cadastro {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

/* Mantém o avatar/foto sempre circular, sem caixa cinza externa */
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper,
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper {
  border-radius: 999px !important;
  overflow: hidden !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: block !important;
}
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff,
#foto-staff,
#foto-staff-cadastro {
  display: block !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  object-position: center !important;
}

/* Admin/master: foto um pouco mais à esquerda e respiro maior antes do nome */
.card-staff.has-admin-menu,
.card-staff-cadastro.has-admin-menu,
#card-staff.card-staff.has-admin-menu,
#card-staff-cadastro.card-staff-cadastro.has-admin-menu,
.pagina-admin .card-staff.has-admin-menu,
.pagina-corridas .card-staff.has-admin-menu,
.dashboard-inscricoes-page .card-staff.has-admin-menu,
.pagina-conferencia .card-staff.has-admin-menu,
.checkin-page .card-staff.has-admin-menu {
  column-gap: 24px !important;
  padding: 22px 28px 22px 22px !important;
}

@media (max-width: 720px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  #card-staff.card-staff.has-admin-menu,
  #card-staff-cadastro.card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    column-gap: 21px !important;
    padding: 19px 22px 19px 16px !important;
  }
}

@media (max-width: 390px) {
  .card-staff.has-admin-menu,
  .card-staff-cadastro.has-admin-menu,
  #card-staff.card-staff.has-admin-menu,
  #card-staff-cadastro.card-staff-cadastro.has-admin-menu,
  .pagina-admin .card-staff.has-admin-menu,
  .pagina-corridas .card-staff.has-admin-menu,
  .dashboard-inscricoes-page .card-staff.has-admin-menu,
  .pagina-conferencia .card-staff.has-admin-menu,
  .checkin-page .card-staff.has-admin-menu {
    column-gap: 18px !important;
    padding: 18px 20px 18px 14px !important;
  }
}


/* =========================================================
   v11.3 - ordenação, labels limpos e foto sem avatar inicial
========================================================= */
.card-staff .label-card,
.card-staff-cadastro .label-card,
#card-staff .label-card,
#card-staff-cadastro .label-card {
  text-transform: lowercase !important;
}
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper,
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper {
  background: #ffffff !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}
img.staff-photo-safe {
  opacity: 0 !important;
  transition: opacity .18s ease !important;
}
img.staff-photo-safe.staff-photo-loaded {
  opacity: 1 !important;
}
/* Evita qualquer texto alternativo/ícone quebrado durante carregamento */
img.staff-photo-safe:not(.staff-photo-loaded) {
  color: transparent !important;
  font-size: 0 !important;
}

/* v11.3 - oculta foto do card até carregar, deixando área limpa */
#card-staff .foto-staff:not(.staff-photo-loaded),
#card-staff-cadastro .foto-staff:not(.staff-photo-loaded),
.card-staff .foto-staff:not(.staff-photo-loaded),
.card-staff-cadastro .foto-staff:not(.staff-photo-loaded) {
  opacity: 0 !important;
}
#card-staff .foto-staff.staff-photo-loaded,
#card-staff-cadastro .foto-staff.staff-photo-loaded,
.card-staff .foto-staff.staff-photo-loaded,
.card-staff-cadastro .foto-staff.staff-photo-loaded {
  opacity: 1 !important;
}

/* =========================================================
   v11.3 - menu também para staff e foto limpa sem avatar inicial
========================================================= */
.card-staff.has-admin-menu .admin-card-acoes-logado,
.card-staff-cadastro.has-admin-menu .admin-card-acoes-logado,
.card-staff.has-admin-menu .acoes-staff,
.card-staff-cadastro.has-admin-menu .acoes-staff {
  display: none !important;
}
.card-staff.is-staff-menu,
.card-staff-cadastro.is-staff-menu {
  cursor: pointer !important;
}
.admin-global-menu.staff-global-menu {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.admin-global-menu.staff-global-menu .admin-menu-item:last-child:nth-child(odd) {
  grid-column: 1 / -1 !important;
}
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper,
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper {
  background: #ffffff !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 22px rgba(15,23,42,.10) !important;
}
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff,
#foto-staff,
#foto-staff-cadastro,
img.staff-photo-safe {
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  object-position: center !important;
}
img.staff-photo-safe:not(.staff-photo-loaded),
#card-staff .foto-staff:not(.staff-photo-loaded),
#card-staff-cadastro .foto-staff:not(.staff-photo-loaded),
.card-staff .foto-staff:not(.staff-photo-loaded),
.card-staff-cadastro .foto-staff:not(.staff-photo-loaded) {
  opacity: 0 !important;
  visibility: hidden !important;
}
img.staff-photo-safe.staff-photo-loaded,
#card-staff .foto-staff.staff-photo-loaded,
#card-staff-cadastro .foto-staff.staff-photo-loaded,
.card-staff .foto-staff.staff-photo-loaded,
.card-staff-cadastro .foto-staff.staff-photo-loaded {
  opacity: 1 !important;
  visibility: visible !important;
}

/* =========================================================
   v11.3 - refinamentos menu, labels e foto sem avatar inicial
========================================================= */
/* Remove de vez avatar/halo inicial: enquanto a foto não carrega, a área fica limpa. */
.card-staff .foto-staff-wrapper,
.card-staff-cadastro .foto-staff-wrapper,
#card-staff .foto-staff-wrapper,
#card-staff-cadastro .foto-staff-wrapper,
.staff-foto,
.user-photo-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  padding: 0 !important;
}
.card-staff .foto-staff-wrapper::before,
.card-staff-cadastro .foto-staff-wrapper::before,
#card-staff .foto-staff-wrapper::before,
#card-staff-cadastro .foto-staff-wrapper::before,
.staff-foto::before,
.user-photo-wrapper::before {
  display: none !important;
  content: none !important;
}
.card-staff .foto-staff,
.card-staff-cadastro .foto-staff,
#foto-staff,
#foto-staff-cadastro,
img.staff-photo-safe {
  box-sizing: border-box !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  object-position: center !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
}
img.staff-photo-safe:not(.staff-photo-loaded),
#card-staff .foto-staff:not(.staff-photo-loaded),
#card-staff-cadastro .foto-staff:not(.staff-photo-loaded),
.card-staff .foto-staff:not(.staff-photo-loaded),
.card-staff-cadastro .foto-staff:not(.staff-photo-loaded) {
  opacity: 0 !important;
  visibility: hidden !important;
}
img.staff-photo-safe.staff-photo-loaded,
#card-staff .foto-staff.staff-photo-loaded,
#card-staff-cadastro .foto-staff.staff-photo-loaded,
.card-staff .foto-staff.staff-photo-loaded,
.card-staff-cadastro .foto-staff.staff-photo-loaded {
  opacity: 1 !important;
  visibility: visible !important;
  transition: opacity .18s ease !important;
}
/* Botões admin: microcopy e nomes menores já vêm do JS; reforça layout para evitar estouro. */
.admin-menu-text strong,
.admin-menu-text small {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.admin-menu-text strong { white-space: normal !important; }
.admin-menu-text small { white-space: nowrap !important; }
/* Menu do staff: Corridas em linha inteira; Editar perfil + Sair em 2 colunas. */
.admin-global-menu.staff-global-menu {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.admin-global-menu.staff-global-menu .admin-menu-corridas {
  grid-column: 1 / -1 !important;
}
.admin-global-menu.staff-global-menu .admin-menu-sair,
.admin-global-menu.staff-global-menu .admin-menu-perfil {
  grid-column: auto !important;
}
.admin-global-menu.staff-global-menu .admin-menu-item:last-child:nth-child(odd) {
  grid-column: auto !important;
}
@media (max-width: 390px) {
  .admin-menu-text strong { font-size: 12.8px !important; }
  .admin-menu-text small { display: block !important; font-size: 9.8px !important; }
}


/* =========================================================
   v11.3 ajuste final - cadastro novo sem menu superior
   ========================================================= */
body.pagina-cadastro-geral #card-staff-cadastro,
body.pagina-cadastro-geral #card-staff-cadastro.hidden,
#card-staff-cadastro.hidden.has-admin-menu,
#card-staff-cadastro.hidden.is-staff-menu,
#card-staff-cadastro.hidden.is-admin-menu {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

/* =========================================================
   v11.3 ajuste final - botões flutuantes admin lado a lado
   ========================================================= */
@media (min-width: 721px) {
  .floating-calendar-btn,
  .floating-yescom-btn {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    min-height: 56px !important;
    bottom: 24px !important;
  }

  .floating-calendar-btn {
    right: 24px !important;
  }

  .floating-yescom-btn {
    right: 92px !important;
  }
}


/* =========================================================
   v11.3 - Pagamentos, operações 2x2 e ajustes do botão de inscrição
========================================================= */
.card-corrida .acoes-inscricao-share,
.card-corrida .acoes-inscricao-sem-share-inline,
body.body-corridas .card-corrida .acoes-inscricao-share,
body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline {
  width: auto !important;
  max-width: none !important;
  margin: 18px 36px 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.card-corrida .acoes-inscricao-share .botao-inscricao,
.card-corrida .acoes-inscricao-sem-share-inline .botao-inscricao,
body.body-corridas .card-corrida .acoes-inscricao-share .botao-inscricao,
body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline .botao-inscricao {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
@media (max-width: 720px) {
  .card-corrida .acoes-inscricao-share,
  .card-corrida .acoes-inscricao-sem-share-inline,
  body.body-corridas .card-corrida .acoes-inscricao-share,
  body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline {
    margin-left: 36px !important;
    margin-right: 36px !important;
  }
}
@media (max-width: 390px) {
  .card-corrida .acoes-inscricao-share,
  .card-corrida .acoes-inscricao-sem-share-inline,
  body.body-corridas .card-corrida .acoes-inscricao-share,
  body.body-corridas .card-corrida .acoes-inscricao-sem-share-inline {
    margin-left: 28px !important;
    margin-right: 28px !important;
  }
}

.operacoes-corrida-card {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0 4px;
}
.operacao-corrida-btn {
  border: 0;
  border-radius: 22px;
  min-height: 72px;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  color: #fff;
  font-weight: 900;
  text-align: left;
  box-shadow: 0 16px 32px rgba(15,23,42,.16);
  cursor: pointer;
}
.operacao-corrida-btn strong { display:block; font-size: 15px; line-height: 1.05; }
.operacao-corrida-btn small { display:block; margin-top: 3px; font-size: 11px; opacity: .88; font-weight: 800; }
.operacao-ico {
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.18);
  font-size: 18px;
  flex: 0 0 auto;
}
.operacao-staffs { background: linear-gradient(135deg,#0f9b8e,#1ed3b6); }
.operacao-pagamentos { background: linear-gradient(135deg,#16a34a,#22c55e); }
.operacao-vivo { background: linear-gradient(135deg,#0284c7,#2563eb); }
.operacao-checkin { background: linear-gradient(135deg,#5b21b6,#7c3aed); }
@media (max-width: 420px) {
  .operacoes-corrida-card { gap: 10px; }
  .operacao-corrida-btn { min-height: 66px; padding: 12px; border-radius: 20px; gap: 9px; }
  .operacao-ico { width: 30px; height: 30px; border-radius: 12px; }
  .operacao-corrida-btn strong { font-size: 14px; }
}

.pagina-pagamentos .pagamentos-toolbar {
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(148,163,184,.22);
  border-radius: 28px;
  box-shadow: 0 20px 40px rgba(15,23,42,.08);
  padding: 18px;
  display: grid;
  grid-template-columns: 1.4fr 1.2fr .8fr;
  gap: 12px;
  margin: 0 0 18px;
}
.pagina-pagamentos select,
.pagina-pagamentos input[type="search"] {
  width: 100%;
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 18px;
  background: #fff;
  padding: 14px 16px;
  color: #111827;
  font-weight: 800;
  font-size: 15px;
  outline: none;
}
.pagamentos-resumo {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 10px;
  margin: 0 0 16px;
}
.pagamentos-resumo div {
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 18px;
  padding: 14px;
  text-align: center;
}
.pagamentos-resumo strong { display:block; font-size: 22px; color:#111827; }
.pagamentos-resumo span { display:block; margin-top:4px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#64748b; font-weight:900; }
.pagamentos-lista { display: grid; gap: 14px; }
.pagamento-card {
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 26px;
  padding: 18px;
  box-shadow: 0 18px 38px rgba(15,23,42,.08);
}
.pagamento-card.pago { border-color: rgba(34,197,94,.32); background: linear-gradient(180deg,rgba(240,253,244,.96),rgba(255,255,255,.95)); }
.pagamento-card.pendente { border-color: rgba(249,115,22,.26); }
.pagamento-topo { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom: 12px; }
.pagamento-topo h3 { margin:0; color:#111827; font-size:20px; line-height:1.1; }
.pagamento-topo p { margin:4px 0 0; color:#64748b; font-weight:800; }
.pagamento-status { border-radius:999px; padding:7px 11px; font-weight:900; font-size:12px; text-transform:uppercase; letter-spacing:.04em; }
.status-pago { background:#dcfce7; color:#15803d; }
.status-pendente { background:#ffedd5; color:#c2410c; }
.pagamento-info { display:grid; grid-template-columns: .7fr 1.5fr .8fr; gap:10px; margin: 12px 0; }
.pagamento-info div { background:#f8fafc; border:1px solid rgba(148,163,184,.2); border-radius:16px; padding:12px; }
.pagamento-info small { display:block; color:#64748b; text-transform:uppercase; letter-spacing:.08em; font-weight:900; font-size:10px; margin-bottom:4px; }
.pagamento-info strong, .pagamento-info span { color:#111827; font-weight:900; }
.pagamento-acoes { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:10px; }
.pagamento-acoes button {
  border:0;
  border-radius:16px;
  padding:13px 10px;
  font-weight:900;
  color:#fff;
  background: linear-gradient(135deg,#06b6d4,#2563eb);
  cursor:pointer;
}
.pagamento-acoes .btn-pago { background: linear-gradient(135deg,#16a34a,#22c55e); }
.pagamento-acoes .btn-zap { background: linear-gradient(135deg,#22c55e,#16a34a); }
@media (max-width: 720px) {
  .pagina-pagamentos .pagamentos-toolbar,
  .pagamentos-resumo,
  .pagamento-info,
  .pagamento-acoes { grid-template-columns: 1fr; }
  .pagamento-topo { align-items:flex-start; }
}
.card-corrida-admin .admin-card-acoes-corrida-v65 > .operacoes-corrida-card {
  width: 100% !important;
  margin: 6px 0 4px !important;
  padding: 0 !important;
  grid-column: 1 / -1 !important;
}


/* =========================================================
   v11.3 - correções menu admin, operações da corrida e pagamentos
========================================================= */
.admin-global-menu:not(.staff-global-menu) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.admin-global-menu:not(.staff-global-menu) .admin-menu-painel {
  grid-column: 1 / -1 !important;
}
.admin-global-menu:not(.staff-global-menu) .admin-menu-item:last-child:nth-child(odd) {
  grid-column: auto !important;
}
.card-corrida-admin {
  position: relative !important;
}
.corrida-admin-titulo-linha {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 58px !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
}
.corrida-admin-titulo-linha h3 {
  margin: 0 !important;
  min-width: 0 !important;
}
.botao-operacoes-corrida-grid {
  width: 58px !important;
  height: 58px !important;
  border: 1px solid rgba(124,58,237,.16) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 14px 28px rgba(15,23,42,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
  display: grid !important;
  grid-template-columns: repeat(2, 8px) !important;
  grid-template-rows: repeat(2, 8px) !important;
  place-content: center !important;
  gap: 6px !important;
  padding: 0 !important;
  cursor: pointer !important;
}
.botao-operacoes-corrida-grid span {
  width: 8px !important;
  height: 8px !important;
  border-radius: 99px !important;
  background: linear-gradient(135deg,#7c3aed,#2563eb) !important;
  display: block !important;
}
.botao-operacoes-corrida-grid.is-open {
  background: linear-gradient(135deg,#eef2ff,#f5f3ff) !important;
  border-color: rgba(124,58,237,.32) !important;
}
.card-corrida-admin .admin-card-acoes-corrida-v65 > .operacoes-corrida-card-menu {
  margin: 10px 0 16px !important;
}
.card-corrida-admin .admin-card-acoes-corrida-v65 > .operacoes-corrida-card-menu.hidden {
  display: none !important;
}
@media (max-width: 420px) {
  .corrida-admin-titulo-linha {
    grid-template-columns: minmax(0, 1fr) 54px !important;
  }
  .botao-operacoes-corrida-grid {
    width: 54px !important;
    height: 54px !important;
    border-radius: 18px !important;
  }
}

/* =========================================================
   v11.3 - menu operacional flutuante e pagamentos em grid
========================================================= */
.corrida-admin-titulo-linha {
  position: relative !important;
  overflow: visible !important;
  z-index: 8 !important;
}
.card-corrida-admin .operacoes-corrida-dropdown {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  right: 0 !important;
  width: min(360px, calc(100vw - 64px)) !important;
  max-width: 100% !important;
  z-index: 60 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 12px !important;
  border-radius: 26px !important;
  background: rgba(255,255,255,.96) !important;
  border: 1px solid rgba(124,58,237,.16) !important;
  box-shadow: 0 28px 60px rgba(15,23,42,.22), inset 0 1px 0 rgba(255,255,255,.94) !important;
  backdrop-filter: blur(16px) !important;
}
.card-corrida-admin .operacoes-corrida-dropdown.hidden {
  display: none !important;
}
.card-corrida-admin .operacoes-corrida-dropdown .operacao-corrida-btn {
  min-height: 70px !important;
  border-radius: 20px !important;
  padding: 12px !important;
}
.card-corrida-admin .operacoes-corrida-dropdown::before {
  content: "";
  position: absolute;
  top: -7px;
  right: 22px;
  width: 14px;
  height: 14px;
  transform: rotate(45deg);
  background: rgba(255,255,255,.96);
  border-left: 1px solid rgba(124,58,237,.14);
  border-top: 1px solid rgba(124,58,237,.14);
}
@media (max-width: 420px) {
  .card-corrida-admin .operacoes-corrida-dropdown {
    width: min(330px, calc(100vw - 44px)) !important;
    right: -2px !important;
    gap: 8px !important;
    padding: 10px !important;
  }
  .card-corrida-admin .operacoes-corrida-dropdown .operacao-corrida-btn {
    min-height: 66px !important;
    padding: 10px !important;
    gap: 8px !important;
  }
}

.pagina-pagamentos .pagamentos-toolbar {
  grid-template-columns: 1fr !important;
}
.pagina-pagamentos .pagamentos-toolbar select,
.pagina-pagamentos .pagamentos-toolbar input[type="search"] {
  min-height: 58px !important;
}
.pagamentos-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.pagamentos-alerta {
  margin: 0 0 14px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #9a3412;
  font-weight: 800;
}
.pagamento-card {
  display: grid !important;
  grid-template-columns: 116px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
  padding: 14px !important;
  border-radius: 28px !important;
}
.pagamento-foto {
  width: 116px;
  min-height: 156px;
  border-radius: 22px;
  overflow: hidden;
  background: linear-gradient(135deg,#e0f2fe,#f5f3ff);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #334155;
  font-size: 42px;
  font-weight: 900;
}
.pagamento-foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pagamento-card-corpo {
  min-width: 0;
}
.pagamento-topo h3 {
  font-size: 18px !important;
}
.pagamento-topo p {
  color: #0f766e !important;
  font-size: 14px !important;
}
.pagamento-dados-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 10px 0;
}
.pagamento-dados-grid div,
.pagamento-dias-lista {
  background: rgba(248,250,252,.95);
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 16px;
  padding: 10px 11px;
  min-width: 0;
}
.pagamento-dados-grid small,
.pagamento-dias-lista > small {
  display: block;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
  font-size: 10px;
  margin-bottom: 5px;
}
.pagamento-dados-grid strong {
  display: block;
  color: #111827;
  font-size: 13px;
  line-height: 1.2;
  word-break: break-word;
}
.pagamento-dias-lista {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 10px;
}
.pagamento-dia-chip {
  display: block;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(148,163,184,.16);
  padding: 8px 10px;
}
.pagamento-dia-chip strong {
  display: block;
  color: #111827;
  font-size: 13px;
}
.pagamento-dia-chip small,
.pagamento-sem-dias {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.pagamento-acoes {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.pagamento-acoes button {
  min-height: 48px;
}
@media (max-width: 900px) {
  .pagamentos-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 520px) {
  .pagamento-card {
    grid-template-columns: 84px minmax(0, 1fr) !important;
    gap: 12px !important;
  }
  .pagamento-foto {
    width: 84px;
    min-height: 112px;
    border-radius: 18px;
    font-size: 32px;
  }
  .pagamento-dados-grid,
  .pagamento-acoes {
    grid-template-columns: 1fr !important;
  }
}

/* v11.3 - pagamentos: foto compacta e resumo em 2 colunas */
.pagina-pagamentos .pagamentos-resumo {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
.pagina-pagamentos .pagamentos-resumo div {
  min-height: 82px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.pagina-pagamentos .pagamento-card {
  display: block !important;
  padding: 16px !important;
}
.pagina-pagamentos .pagamento-topo-com-foto {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}
.pagina-pagamentos .pagamento-foto {
  width: 64px !important;
  height: 64px !important;
  min-height: 64px !important;
  border-radius: 18px !important;
  flex: 0 0 64px !important;
  font-size: 26px !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.10);
}
.pagina-pagamentos .pagamento-foto img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
.pagina-pagamentos .pagamento-identidade {
  min-width: 0;
}
.pagina-pagamentos .pagamento-identidade h3 {
  margin: 0 !important;
  font-size: 19px !important;
  line-height: 1.08 !important;
  color: #111827 !important;
}
.pagina-pagamentos .pagamento-identidade p {
  margin: 4px 0 0 !important;
  color: #0f766e !important;
  font-weight: 900 !important;
  font-size: 14px !important;
}
.pagina-pagamentos .pagamento-status {
  align-self: start;
  white-space: nowrap;
}
@media (max-width: 520px) {
  .pagina-pagamentos .pagamentos-resumo {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .pagina-pagamentos .pagamentos-resumo div {
    min-height: 76px;
    padding: 12px 8px !important;
  }
  .pagina-pagamentos .pagamentos-resumo strong {
    font-size: 21px !important;
  }
  .pagina-pagamentos .pagamentos-resumo span {
    font-size: 10px !important;
  }
  .pagina-pagamentos .pagamento-topo-com-foto {
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center !important;
    gap: 11px !important;
  }
  .pagina-pagamentos .pagamento-status {
    grid-column: 2;
    justify-self: start;
    margin-top: -2px;
    font-size: 11px !important;
    padding: 6px 10px !important;
  }
  .pagina-pagamentos .pagamento-foto {
    width: 58px !important;
    height: 58px !important;
    min-height: 58px !important;
    border-radius: 16px !important;
    font-size: 24px !important;
  }
  .pagina-pagamentos .pagamento-identidade h3 {
    font-size: 18px !important;
  }
}

/* v11.3 - pagamentos: card compacto com total no topo, CPF/Pix em 2 colunas e dias recolhíveis */
.pagina-pagamentos .pagamento-card-v108 {
  cursor: default;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}
.pagina-pagamentos .pagamento-card-v108.pago.fechado {
  cursor: pointer;
  padding-bottom: 14px !important;
}
.pagina-pagamentos .pagamento-topo-v108 {
  grid-template-columns: 64px minmax(0, 1fr) auto !important;
  align-items: start !important;
  margin-bottom: 12px !important;
}
.pagina-pagamentos .pagamento-total-status {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 7px;
  min-width: 102px;
}
.pagina-pagamentos .pagamento-total-status > strong {
  display: block;
  color: #111827;
  font-size: 19px;
  line-height: 1.05;
  font-weight: 950;
  white-space: nowrap;
}
.pagina-pagamentos .pagamento-total-status .pagamento-status {
  align-self: flex-end;
  margin: 0 !important;
}
.pagina-pagamentos .pagamento-dados-grid-compacto {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  margin: 12px 0 !important;
}
.pagina-pagamentos .pagamento-dados-grid-compacto div {
  min-height: 64px;
}
.pagina-pagamentos .pagamento-dias-collapse {
  margin: 0 0 12px;
  background: rgba(248,250,252,.95);
  border: 1px solid rgba(148,163,184,.18);
  border-radius: 16px;
  padding: 0;
  overflow: hidden;
}
.pagina-pagamentos .pagamento-dias-collapse summary {
  list-style: none;
  cursor: pointer;
  padding: 13px 14px;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 950;
  font-size: 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.pagina-pagamentos .pagamento-dias-collapse summary::-webkit-details-marker { display: none; }
.pagina-pagamentos .pagamento-dias-collapse summary::after {
  content: "⌄";
  font-size: 15px;
  line-height: 1;
  color: #64748b;
  transition: transform .2s ease;
}
.pagina-pagamentos .pagamento-dias-collapse[open] summary::after { transform: rotate(180deg); }
.pagina-pagamentos .pagamento-dias-collapse summary span {
  margin-left: auto;
  background: #fff;
  border: 1px solid rgba(148,163,184,.18);
  color: #111827;
  border-radius: 999px;
  min-width: 28px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  letter-spacing: 0;
}
.pagina-pagamentos .pagamento-dias-collapse .pagamento-dias-lista {
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 12px 12px !important;
}
.pagina-pagamentos .pagamento-acoes-compactas {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 8px !important;
}
.pagina-pagamentos .pagamento-acoes-compactas button {
  min-height: 46px !important;
  padding: 9px 8px !important;
  border-radius: 16px !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
}
.pagina-pagamentos .pagamento-card-hint {
  margin-top: 4px;
  color: #64748b;
  font-weight: 800;
  font-size: 12px;
}
@media (max-width: 520px) {
  .pagina-pagamentos .pagamento-card-v108 {
    padding: 14px !important;
  }
  .pagina-pagamentos .pagamento-topo-v108 {
    grid-template-columns: 56px minmax(0, 1fr) auto !important;
    gap: 10px !important;
  }
  .pagina-pagamentos .pagamento-total-status {
    min-width: 82px;
    gap: 6px;
  }
  .pagina-pagamentos .pagamento-total-status > strong {
    font-size: 16px;
  }
  .pagina-pagamentos .pagamento-identidade h3 {
    font-size: 17px !important;
  }
  .pagina-pagamentos .pagamento-identidade p {
    font-size: 13px !important;
  }
  .pagina-pagamentos .pagamento-dados-grid-compacto {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .pagina-pagamentos .pagamento-dados-grid-compacto div {
    padding: 10px 9px !important;
    min-height: 62px;
  }
  .pagina-pagamentos .pagamento-dados-grid-compacto strong {
    font-size: 12px !important;
  }
  .pagina-pagamentos .pagamento-acoes-compactas {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .pagina-pagamentos .pagamento-acoes-compactas button {
    min-height: 44px !important;
    font-size: 11px !important;
    padding: 8px 5px !important;
    border-radius: 14px !important;
  }
}

/* v11.3 - refinamentos de pagamentos */
.pagina-pagamentos .pagamento-card.pago,
.pagina-pagamentos .resumo-pago {
  border-color: rgba(34,197,94,.38) !important;
  background: linear-gradient(180deg, rgba(240,253,244,.98), rgba(255,255,255,.96)) !important;
}
.pagina-pagamentos .pagamento-card.pendente,
.pagina-pagamentos .resumo-pendente {
  border-color: rgba(249,115,22,.34) !important;
  background: linear-gradient(180deg, rgba(255,247,237,.98), rgba(255,255,255,.96)) !important;
}
.pagina-pagamentos .pagamento-topo-v108 {
  align-items: center !important;
}
.pagina-pagamentos .pagamento-identidade {
  align-self: center !important;
}
.pagina-pagamentos .pagamento-card-hint {
  text-align: center !important;
  color: rgba(100,116,139,.62) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  margin: 8px 0 0 !important;
}
.pagina-pagamentos .pagamento-dias-collapse summary {
  background: rgba(255,255,255,.72);
}
.pagina-pagamentos .pagamento-dias-collapse summary::after {
  content: "" !important;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid rgba(148,163,184,.35);
  background: #fff;
  position: relative;
  flex: 0 0 22px;
  transform: none !important;
  box-shadow: 0 4px 10px rgba(15,23,42,.06);
}
.pagina-pagamentos .pagamento-dias-collapse summary::before {
  content: "⌄";
  margin-left: auto;
  color: #64748b;
  font-size: 15px;
  font-weight: 950;
  transition: transform .2s ease;
  z-index: 1;
  transform: translateX(29px);
}
.pagina-pagamentos .pagamento-dias-collapse[open] summary::before {
  transform: translateX(29px) rotate(180deg);
}
.pagina-pagamentos .pagamento-dias-collapse .pagamento-dias-lista {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px !important;
}
.pagina-pagamentos .pagamento-dia-chip {
  margin: 0 !important;
}
.pagina-pagamentos .pagamento-acoes-compactas button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.pagina-pagamentos .pay-btn-ico {
  display: inline-flex;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.20);
  font-weight: 950;
  flex: 0 0 20px;
}
@media (max-width: 520px) {
  .pagina-pagamentos .pagamento-dias-collapse .pagamento-dias-lista {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .pagina-pagamentos .pagamento-dia-chip {
    padding: 8px !important;
  }
  .pagina-pagamentos .pagamento-dia-chip strong {
    font-size: 12px !important;
  }
  .pagina-pagamentos .pagamento-dia-chip small {
    font-size: 10px !important;
  }
}

/* v11.3 - Últimos cadastros na consulta de staffs */
.ultimos-cadastros-card {
  width: min(1120px, calc(100% - 28px));
  margin: 18px auto 18px;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid rgba(148,163,184,.20);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
  box-shadow: 0 16px 40px rgba(15,23,42,.08);
}
.ultimos-cadastros-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 12px;
}
.ultimos-cadastros-kicker {
  display: inline-flex;
  margin-bottom: 4px;
  color: #6d28d9;
  font-size: 11px;
  line-height: 1;
  font-weight: 950;
  letter-spacing: .10em;
  text-transform: uppercase;
}
.ultimos-cadastros-head h2 {
  margin: 0;
  color: #111827;
  font-size: 20px;
  font-weight: 950;
  letter-spacing: -.03em;
}
.ultimos-cadastros-head p {
  margin: 4px 0 0;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
}
.ultimos-cadastros-link {
  border: 0;
  border-radius: 999px;
  padding: 10px 14px;
  color: #fff;
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  box-shadow: 0 10px 22px rgba(37,99,235,.18);
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
}
.ultimos-cadastros-resumo {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}
.ultimos-cadastros-resumo span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(255,255,255,.85);
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
}
.ultimos-cadastros-resumo strong { color: #111827; }
.ultimos-cadastros-lista {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.ultimo-cadastro-item {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border-radius: 18px;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(255,255,255,.92);
}
.ultimo-cadastro-foto {
  width: 46px;
  height: 46px;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(135deg, #e0f2fe, #ede9fe);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #4f46e5;
  font-weight: 950;
}
.ultimo-cadastro-foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ultimo-cadastro-info { min-width: 0; }
.ultimo-cadastro-info strong {
  display: block;
  color: #111827;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 950;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ultimo-cadastro-info small {
  display: block;
  margin-top: 3px;
  color: #64748b;
  font-size: 12px;
  font-weight: 750;
}
.ultimo-cadastro-badge {
  justify-self: end;
  border-radius: 999px;
  padding: 6px 8px;
  background: rgba(16,185,129,.12);
  color: #047857;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
@media (max-width: 720px) {
  .ultimos-cadastros-card { width: calc(100% - 20px); padding: 14px; border-radius: 22px; }
  .ultimos-cadastros-head { align-items: center; }
  .ultimos-cadastros-head h2 { font-size: 18px; }
  .ultimos-cadastros-head p { font-size: 12px; }
  .ultimos-cadastros-link { padding: 9px 11px; font-size: 12px; }
  .ultimos-cadastros-resumo { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .ultimos-cadastros-resumo span { min-height: 34px; padding: 7px 5px; font-size: 11px; }
  .ultimos-cadastros-lista { grid-template-columns: 1fr; }
  .ultimo-cadastro-item { grid-template-columns: 42px minmax(0, 1fr) auto; padding: 9px; }
  .ultimo-cadastro-foto { width: 42px; height: 42px; border-radius: 13px; }
}

/* v11.3 - Pix em 2 colunas, chips NOVO e últimos inscritos */
.pix-options.pix-options-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin-bottom: 18px !important;
}
.pix-options.pix-options-grid .pix-card {
  margin: 0 !important;
  min-height: 96px;
}
.pix-outro-full {
  grid-column: 1 / -1;
}
@media (max-width: 430px) {
  .pix-options.pix-options-grid { gap: 10px !important; }
  .pix-options.pix-options-grid .pix-card { padding: 14px 12px !important; min-height: 92px; }
  .pix-options.pix-options-grid .pix-card strong { font-size: 15px !important; }
  .pix-options.pix-options-grid .pix-card span { font-size: 12px !important; }
}
.ultimo-cadastro-badge,
.admin-status-inscricao.novo-inscrito {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: #fff7ed;
  color: #c2410c;
  border: 1px solid rgba(251, 146, 60, .35);
}
.admin-ultimos-inscritos {
  margin: 0 0 18px;
  padding: 16px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 24px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .05);
}
.admin-ultimos-inscritos-head {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 12px;
}
.admin-ultimos-inscritos-head strong {
  font-size: 18px;
  color: #111827;
}
.admin-ultimos-inscritos-head small {
  color: #64748b;
  font-weight: 700;
}
.admin-ultimos-inscritos-lista {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: thin;
}
.admin-ultimo-inscrito-chip {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid rgba(148, 163, 184, .22);
  color: #0f172a;
  font-weight: 900;
  white-space: nowrap;
}
.admin-ultimo-inscrito-chip.is-novo {
  background: #ecfdf5;
  border-color: rgba(16, 185, 129, .35);
}
.admin-ultimo-inscrito-foto {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #14b8a6, #7c3aed);
  color: #fff;
  font-size: 12px;
}
.admin-ultimo-inscrito-foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.admin-ultimo-inscrito-chip em {
  font-style: normal;
  font-size: 10px;
  color: #047857;
  background: rgba(16, 185, 129, .14);
  border-radius: 999px;
  padding: 3px 7px;
}

/* v11.4 - últimos inscritos compacto e chip NOVO mais discreto */
.admin-ultimos-inscritos {
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.admin-ultimos-inscritos-head {
  gap: 0 !important;
  margin-bottom: 8px !important;
}
.admin-ultimos-inscritos-head strong {
  font-size: 14px !important;
  line-height: 1.15 !important;
  color: #334155 !important;
}
.admin-ultimos-inscritos-head small {
  font-size: 11px !important;
  color: #94a3b8 !important;
  font-weight: 800 !important;
}
.admin-ultimos-inscritos-lista {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
  overflow: visible !important;
  padding: 0 !important;
  scrollbar-width: none !important;
}
.admin-ultimos-inscritos-lista::-webkit-scrollbar { display: none !important; }
.admin-ultimo-inscrito-chip,
.admin-ultimo-inscrito-chip.is-novo {
  min-width: 0 !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 4px !important;
  color: #334155 !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  text-align: center !important;
  white-space: normal !important;
}
.admin-ultimo-inscrito-foto {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border: 2px solid rgba(16, 185, 129, .32) !important;
  box-shadow: 0 6px 14px rgba(15, 23, 42, .10) !important;
}
.admin-ultimo-inscrito-chip > span:not(.admin-ultimo-inscrito-foto) {
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.admin-ultimo-inscrito-chip em {
  margin-top: -2px !important;
  padding: 1px 5px !important;
  border: 1px solid rgba(16, 185, 129, .42) !important;
  background: transparent !important;
  color: #047857 !important;
  font-size: 8px !important;
  line-height: 1.2 !important;
}
.linha-inscrito-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 5px 7px !important;
}
.admin-status-inscricao.novo-inscrito {
  background: transparent !important;
  color: #047857 !important;
  border: 1px solid rgba(16, 185, 129, .55) !important;
  padding: 3px 8px !important;
  font-size: 10px !important;
  letter-spacing: .04em !important;
  box-shadow: none !important;
}

/* v11.5 - overlay moderno de status para o staff */
.staff-status-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 22px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: none !important;
  transition: opacity .26s ease !important;
  backdrop-filter: blur(16px) saturate(1.18) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.18) !important;
}
.staff-status-overlay.is-visible { opacity: 1 !important; pointer-events: auto !important; }
.staff-status-overlay.confirmado { background: radial-gradient(circle at 50% 35%, rgba(34,197,94,.34), rgba(15,23,42,.20) 58%, rgba(15,23,42,.28)) !important; }
.staff-status-overlay.lista_espera { background: radial-gradient(circle at 50% 35%, rgba(14,165,233,.34), rgba(15,23,42,.20) 58%, rgba(15,23,42,.28)) !important; }
.staff-status-overlay.cancelado { background: radial-gradient(circle at 50% 35%, rgba(239,68,68,.34), rgba(15,23,42,.20) 58%, rgba(15,23,42,.28)) !important; }
.staff-status-overlay.pendente,
.staff-status-overlay.inscrito { background: radial-gradient(circle at 50% 35%, rgba(249,115,22,.32), rgba(15,23,42,.20) 58%, rgba(15,23,42,.28)) !important; }
.staff-status-overlay-card {
  position: relative !important;
  width: min(430px, 92vw) !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border-radius: 34px !important;
  padding: 32px 24px 24px !important;
  text-align: center !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.90)) !important;
  border: 1px solid rgba(255,255,255,.78) !important;
  box-shadow: 0 34px 110px rgba(15,23,42,.34), inset 0 1px 0 rgba(255,255,255,.75) !important;
  transform: translateY(18px) scale(.965) !important;
  transition: transform .34s cubic-bezier(.2,.9,.2,1), opacity .24s ease !important;
}
.staff-status-overlay.is-visible .staff-status-overlay-card { transform: translateY(0) scale(1) !important; }
.staff-status-overlay-glow {
  position: absolute !important;
  inset: -45% -25% auto !important;
  height: 190px !important;
  z-index: -1 !important;
  opacity: .78 !important;
  filter: blur(6px) !important;
  background: radial-gradient(circle, rgba(34,197,94,.28), transparent 62%) !important;
}
.staff-status-overlay.lista_espera .staff-status-overlay-glow { background: radial-gradient(circle, rgba(14,165,233,.30), transparent 62%) !important; }
.staff-status-overlay.cancelado .staff-status-overlay-glow { background: radial-gradient(circle, rgba(239,68,68,.28), transparent 62%) !important; }
.staff-status-overlay.pendente .staff-status-overlay-glow,
.staff-status-overlay.inscrito .staff-status-overlay-glow { background: radial-gradient(circle, rgba(249,115,22,.26), transparent 62%) !important; }
.staff-status-overlay-icone {
  width: 82px !important;
  height: 82px !important;
  margin: 0 auto 14px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 28px !important;
  background: linear-gradient(135deg, rgba(34,197,94,.16), rgba(255,255,255,.72)) !important;
  box-shadow: 0 18px 42px rgba(34,197,94,.18) !important;
  font-size: 0 !important;
}
.staff-status-overlay.lista_espera .staff-status-overlay-icone { background: linear-gradient(135deg, rgba(14,165,233,.16), rgba(255,255,255,.72)) !important; box-shadow: 0 18px 42px rgba(14,165,233,.18) !important; }
.staff-status-overlay.cancelado .staff-status-overlay-icone { background: linear-gradient(135deg, rgba(239,68,68,.16), rgba(255,255,255,.72)) !important; box-shadow: 0 18px 42px rgba(239,68,68,.18) !important; }
.staff-status-overlay.pendente .staff-status-overlay-icone,
.staff-status-overlay.inscrito .staff-status-overlay-icone { background: linear-gradient(135deg, rgba(249,115,22,.16), rgba(255,255,255,.72)) !important; box-shadow: 0 18px 42px rgba(249,115,22,.18) !important; }
.staff-status-svg-check { width: 64px !important; height: 64px !important; overflow: visible !important; }
.staff-status-svg-circle,
.staff-status-svg-path {
  fill: none !important;
  stroke: #16a34a !important;
  stroke-width: 5.5 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.staff-status-overlay.lista_espera .staff-status-svg-circle,
.staff-status-overlay.lista_espera .staff-status-svg-path { stroke: #0284c7 !important; }
.staff-status-overlay.cancelado .staff-status-svg-circle,
.staff-status-overlay.cancelado .staff-status-svg-path { stroke: #dc2626 !important; }
.staff-status-overlay.pendente .staff-status-svg-circle,
.staff-status-overlay.pendente .staff-status-svg-path,
.staff-status-overlay.inscrito .staff-status-svg-circle,
.staff-status-overlay.inscrito .staff-status-svg-path { stroke: #f97316 !important; }
.staff-status-svg-circle { stroke-dasharray: 170; stroke-dashoffset: 170; animation: staffStatusDraw .58s ease forwards; }
.staff-status-svg-path { stroke-dasharray: 80; stroke-dashoffset: 80; animation: staffStatusDraw .48s .30s cubic-bezier(.2,.9,.2,1) forwards; }
.staff-status-overlay-kicker {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 0 8px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  color: #475569 !important;
  background: rgba(15,23,42,.045) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
.staff-status-overlay-card h2 {
  margin: 0 0 8px !important;
  color: #0f172a !important;
  font-size: clamp(25px, 6vw, 34px) !important;
  line-height: 1.02 !important;
  font-weight: 950 !important;
  letter-spacing: -.055em !important;
}
.staff-status-overlay-card strong {
  display: block !important;
  margin: 10px auto 8px !important;
  color: #111827 !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 950 !important;
}
.staff-status-overlay-card p {
  margin: 0 auto !important;
  max-width: 310px !important;
  color: #475569 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
}
.staff-status-overlay-close {
  margin-top: 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 12px 22px !important;
  min-width: 118px !important;
  background: #0f172a !important;
  color: #fff !important;
  font-weight: 950 !important;
  font-size: 14px !important;
  box-shadow: 0 14px 28px rgba(15,23,42,.20) !important;
}
@keyframes staffStatusDraw { to { stroke-dashoffset: 0; } }
@media (max-width: 520px) {
  .staff-status-overlay { padding: 18px !important; }
  .staff-status-overlay-card { border-radius: 30px !important; padding: 30px 20px 22px !important; }
  .staff-status-overlay-icone { width: 78px !important; height: 78px !important; border-radius: 26px !important; }
}

/* v12.0 - chip Novo verde outline padronizado */
.ultimo-cadastro-badge,
.admin-status-inscricao.novo-inscrito,
.admin-ultimo-inscrito-chip em {
  background: rgba(255,255,255,.86) !important;
  color: #047857 !important;
  border: 1px solid rgba(16, 185, 129, .62) !important;
  box-shadow: none !important;
}
.admin-status-inscricao.novo-inscrito {
  font-weight: 950 !important;
  text-transform: uppercase !important;
}


/* v12.0 - reposicionamento: versão à esquerda e sininho à direita */
.version-badge{
  position:fixed!important;
  top:max(14px,env(safe-area-inset-top))!important;
  left:16px!important;
  right:auto!important;
  z-index:2147483000!important;
}
.version-popover{
  left:16px!important;
  right:auto!important;
}
body.body-corridas .version-badge,
body.checkin-page .version-badge{
  top:max(14px,env(safe-area-inset-top))!important;
  left:16px!important;
  right:auto!important;
}
.notificacoes-bell-wrap{
  position:fixed!important;
  top:max(14px,env(safe-area-inset-top))!important;
  right:16px!important;
  left:auto!important;
  z-index:2147483002!important;
}
.notificacoes-panel{
  position:fixed!important;
  top:calc(max(14px,env(safe-area-inset-top)) + 50px)!important;
  right:16px!important;
  left:auto!important;
}
@media(max-width:520px){
  .version-badge{left:14px!important;right:auto!important;}
  .version-popover{left:12px!important;right:auto!important;width:calc(100vw - 24px)!important;}
  .notificacoes-bell-wrap{right:14px!important;left:auto!important;}
  .notificacoes-panel{right:12px!important;left:auto!important;width:calc(100vw - 24px)!important;}
}


/* =========================================================
   v12.0 - Cadastro: exclusão definitiva + Conferência: estrelas fora da foto
   ========================================================= */
.staff-danger-actions {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.danger-delete-btn-final {
  background: linear-gradient(135deg, #7f1d1d, #dc2626) !important;
  border-color: rgba(220, 38, 38, .35) !important;
  color: #fff !important;
}

.classificacao-foto-overlay {
  display: none !important;
}

.classificacao-card-row {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 7px 8px 4px;
  background: rgba(255,255,255,.96);
  border-top: 1px solid rgba(226, 232, 240, .75);
}

.card-conferencia-staff .card-conferencia-foto {
  position: relative;
}

.card-conferencia-staff .card-conferencia-body {
  padding-top: 8px;
}

.classificacao-card-row .classificacao-staff-editor {
  background: rgba(248,250,252,.96) !important;
  border: 1px solid rgba(226,232,240,.95) !important;
  border-radius: 999px !important;
  padding: 3px 8px !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.08) !important;
}

@media (max-width: 420px) {
  .classificacao-card-row {
    padding: 6px 6px 3px;
  }
  .classificacao-card-row .classificacao-staff-editor .star-btn {
    font-size: 19px !important;
  }
}

/* =========================================================
   v12.0 - Conferência: estrelas limpas + chip Novo sobre a foto
   ========================================================= */
.classificacao-card-row {
  border-top: 0 !important;
  background: transparent !important;
  padding: 6px 8px 2px !important;
}
.classificacao-card-row .classificacao-staff-editor,
.card-conferencia-badges .classificacao-staff-editor,
.classificacao-staff-editor {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.classificacao-card-row .classificacao-staff-editor .star-btn {
  text-shadow: 0 1px 0 rgba(255,255,255,.75) !important;
}
.card-conferencia-novo-chip {
  position: absolute !important;
  left: 50% !important;
  bottom: 10px !important;
  transform: translateX(-50%) !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 24px !important;
  padding: 4px 11px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(16,185,129,.62) !important;
  background: rgba(255,255,255,.90) !important;
  color: #047857 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  box-shadow: 0 8px 18px rgba(15,23,42,.12) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  pointer-events: none !important;
}
body.login-page .floating-whatsapp {
  bottom: max(18px, env(safe-area-inset-bottom)) !important;
  right: 18px !important;
  z-index: 2147482900 !important;
}

/* =========================================================
   v12.3 - Domínio oficial staff.rcprun.com.br aplicado em previews/cache
   ========================================================= */
.card-conferencia-foto {
  position: relative !important;
  overflow: hidden !important;
}
.card-conferencia-foto .card-conferencia-novo-chip,
.card-conferencia-novo-chip {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 10px !important;
  top: auto !important;
  transform: translateX(-50%) !important;
  z-index: 8 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 58px !important;
  min-height: 26px !important;
  padding: 5px 13px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(16,185,129,.72) !important;
  background: rgba(255,255,255,.94) !important;
  color: #047857 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  letter-spacing: .045em !important;
  box-shadow: 0 10px 22px rgba(15,23,42,.16) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  pointer-events: none !important;
}
