:root {
  --dark: #18181b;
  --red: #a71930;
  --pendiente: #f59e0b;
  --en_progreso: #3b82f6;
  --completada: #10b981;
  --vencida: #ef4444;
}

body, .brand-text, h1, h2, h3, h4, h5, .card, .btn, .form-control, .badge {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

.main-sidebar, .main-sidebar .nav-pills .nav-link.active {
  background-color: var(--dark) !important;
}
.brand-link {
  border-bottom: 1px solid rgba(255,255,255,.15);
}
.brand-icon { color: var(--red); margin-right: .5rem; }
.font-weight-600 { font-weight: 600; }

.nav-sidebar .nav-link.active {
  background-color: rgba(167,25,48,.18) !important;
  border-left: 3px solid var(--red);
  color: #fff !important;
}
.nav-sidebar .nav-link { border-left: 3px solid transparent; }

.card, .modal-content, .form-control, .btn {
  border-radius: 10px;
}

.btn-primary, .badge-primary { background-color: var(--red); border-color: var(--red); }
.btn-primary:hover, .btn-primary:focus { background-color: #8a1526; border-color: #8a1526; }

/* Estados: siempre el mismo color en toda la app (lista, badges, leyenda del calendario) */
.badge-estado {
  border-radius: 999px;
  padding: .35em .8em;
  font-weight: 500;
  text-transform: none;
  color: #fff;
  display: inline-block;
}
.badge-estado.pendiente     { background-color: var(--pendiente); }
.badge-estado.en_progreso   { background-color: var(--en_progreso); }
.badge-estado.completada    { background-color: var(--completada); }
.badge-estado.vencida       { background-color: var(--vencida); }

.badge-prioridad {
  border-radius: 999px;
  padding: .3em .7em;
  font-weight: 500;
  border: 1px solid #d1d5db;
  color: #4b5563;
  background: #fff;
}
.badge-prioridad.alta  { border-color: var(--red); color: var(--red); }
.badge-prioridad.media { border-color: var(--pendiente); color: #b45309; }
.badge-prioridad.baja  { border-color: #9ca3af; color: #6b7280; }

/* Leyenda de colores: siempre alineada a la derecha de la tarjeta, mismo orden en toda la app */
.leyenda-estados {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}
.leyenda-estados .item {
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size: .85rem;
  color: #4b5563;
}
.leyenda-estados .dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  display: inline-block;
}
.leyenda-estados .dot.pendiente   { background-color: var(--pendiente); }
.leyenda-estados .dot.en_progreso { background-color: var(--en_progreso); }
.leyenda-estados .dot.completada  { background-color: var(--completada); }
.leyenda-estados .dot.vencida     { background-color: var(--vencida); }

.small-box-custom {
  border-radius: 10px;
  padding: 1rem 1.25rem;
  color: #fff;
}
.small-box-custom .num { font-size: 1.8rem; font-weight: 600; }
.small-box-custom .label { font-size: .85rem; opacity: .9; }

#calendario { background: #fff; border-radius: 10px; padding: 1rem; }
.fc-event { cursor: pointer; border: none !important; }
