/* --- 1. CONFIGURACIÓN --- */
:root {
  /* Color Principal Davante (Azul Intenso) */
  --davante-blue: #0033a0;
  --davante-blue-hover: #002a80;

  /* Color Secundario Davante (Naranja) */
  --davante-orange: #ff6600;
  --davante-orange-hover: #cc5200;

  /* Color Secundario (Gris/Negro suave para textos) */
  --davante-text: #333333;
  --davante-bg: #f4f6f9;

  /* Sobrescribir variables de Bootstrap */
  --bs-primary: var(--davante-blue);
  --bs-primary-rgb: 0, 51, 160;
  --bs-body-font-family: "Poppins", sans-serif;
  --bs-body-bg: var(--davante-bg);
}

/* --- 2. ESTILOS GENERALES --- */
body {
  color: var(--davante-text);
}
.row > * {
  margin-bottom: var(--bs-gutter-y);
}

/* --- 3. CABECERA / NAVBAR --- */
.navbar {
  background-color: var(--davante-blue) !important;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.navbar-brand {
  font-weight: 600;
  letter-spacing: 0.5px;
  font-size: 1.5rem;
}

/* --- 4. CARDS --- */
.card {
  border: none;
  border-radius: 12px;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.08) !important;
  overflow: hidden;
}
.card-header {
  background-color: #ffffff;
  border-bottom: 2px solid #f0f0f0;
  padding-top: 1.5rem;
  padding-bottom: 1rem;
}
.card-header h5 {
  color: var(--davante-blue);
  font-weight: 600;
}

/* --- 5. FORMULARIOS --- */
.form-label {
  font-weight: 500;
  color: #666;
}
.form-control {
  border-radius: 8px;
  padding: 0.6rem 1rem;
  border: 1px solid #e0e0e0;
  background-color: #fafafa;
}
.form-control:focus {
  background-color: #fff;
  border-color: var(--davante-blue);
  box-shadow: 0 0 0 0.25rem rgba(0, 51, 160, 0.15);
}

/* --- 6. BOTONES --- */
.btn-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: var(--davante-blue);
  --bs-btn-border-color: var(--davante-blue);
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: var(--davante-blue-hover);
  --bs-btn-hover-border-color: var(--davante-blue-hover);
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: var(--davante-blue-hover);
  --bs-btn-active-border-color: var(--davante-blue-hover);
}
.btn-secondary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: var(--davante-orange);
  --bs-btn-border-color: var(--davante-orange);
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: var(--davante-orange-hover);
  --bs-btn-hover-border-color: var(--davante-orange-hover);
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: var(--davante-orange-hover);
  --bs-btn-active-border-color: var(--davante-orange-hover);
}

/* --- 7. TABLA DE CITAS --- */
.table {
  margin-bottom: 0;
}
.table thead th {
  background-color: #f8f9fa;
  color: #666;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 0.5px;
  border-bottom: 2px solid #e9ecef;
}
.table tbody tr:hover {
  background-color: rgba(0, 51, 160, 0.02);
}
/* Fila vacía con estilo */
.fila-vacia {
  text-align: center;
  color: #adb5bd;
  font-style: italic;
  padding: 3rem !important;
}
/* Badge del contador */
.badge.bg-primary {
  background-color: var(--davante-blue) !important;
}
.col-orden {
  width: 5%;
  text-align: center;
  color: var(--davante-blue);
}
.col-fecha {
  width: 15%;
  cursor: pointer; /* Indica que se puede hacer clic para ordenar */
}
.col-fecha:hover {
  background-color: #e9ecef; /* Un pequeño efecto visual al pasar el ratón */
}
.col-paciente {
  width: 25%;
}
.col-contacto {
  width: 20%;
}
.col-observaciones {
  width: 25%;
}
.col-acciones {
  width: 15%;
}

/* --- 8. FOOTER --- */
footer {
  background-color: #ffffff !important;
  margin-top: auto;
}
footer p {
  font-size: 0.9rem;
}
footer i {
  font-size: 1rem;
  vertical-align: -1px;
}
