/**
 * Contraste y accesibilidad WCAG AA para todos los paneles YUUJU.
 * Carga DESPUÉS de style.bundle.css, gestor-theme.css y cliente-theme.css.
 * Oscurece textos que Metronic deja demasiado claros sobre fondos claros.
 */

/* ─── Variables de texto ─────────────────────────────────────── */
.gestor-panel-theme,
.cliente-panel-theme,
.login-panel-theme,
.yuuju-readable-ui {
  --yuuju-body:   #0f172a;
  --yuuju-muted:  #374151;
  --yuuju-subtle: #4b5563;
  --bs-body-color: var(--yuuju-body);
  --bs-secondary-color: var(--yuuju-muted);
}

/* ─── Escala de grises legible ───────────────────────────────── */
.gestor-panel-theme .text-muted,
.cliente-panel-theme .text-muted,
.login-panel-theme .text-muted,
.yuuju-readable-ui .text-muted {
  color: var(--yuuju-muted) !important;
}

.gestor-panel-theme .text-gray-400,
.cliente-panel-theme .text-gray-400,
.login-panel-theme .text-gray-400,
.yuuju-readable-ui .text-gray-400 {
  color: #52606d !important;
}

.gestor-panel-theme .text-gray-500,
.cliente-panel-theme .text-gray-500,
.login-panel-theme .text-gray-500,
.yuuju-readable-ui .text-gray-500 {
  color: #404d5b !important;
}

.gestor-panel-theme .text-gray-600,
.cliente-panel-theme .text-gray-600,
.login-panel-theme .text-gray-600,
.yuuju-readable-ui .text-gray-600 {
  color: #334155 !important;
}

.gestor-panel-theme .text-gray-700,
.cliente-panel-theme .text-gray-700,
.login-panel-theme .text-gray-700,
.yuuju-readable-ui .text-gray-700 {
  color: #1e293b !important;
}

.gestor-panel-theme .text-gray-800,
.cliente-panel-theme .text-gray-800,
.yuuju-readable-ui .text-gray-800 {
  color: #0f172a !important;
}

.gestor-panel-theme .text-gray-900,
.cliente-panel-theme .text-gray-900,
.login-panel-theme .text-gray-900,
.yuuju-readable-ui .text-gray-900 {
  color: #030712 !important;
}

/* ─── Contenido general ──────────────────────────────────────── */
.gestor-panel-theme .card,
.cliente-panel-theme .card,
.yuuju-readable-ui .card {
  color: var(--yuuju-body);
}

.gestor-panel-theme p,
.cliente-panel-theme p,
.login-panel-theme p,
.yuuju-readable-ui p {
  color: inherit;
}

/* ─── Formularios ────────────────────────────────────────────── */
.gestor-panel-theme .form-label,
.cliente-panel-theme .form-label,
.login-panel-theme .form-label,
.yuuju-readable-ui .form-label {
  color: var(--yuuju-body);
}

.gestor-panel-theme .form-text,
.cliente-panel-theme .form-text,
.yuuju-readable-ui .form-text {
  color: var(--yuuju-subtle) !important;
}

.gestor-panel-theme .form-control::placeholder,
.cliente-panel-theme .form-control::placeholder,
.login-panel-theme .form-control::placeholder,
.yuuju-readable-ui .form-control::placeholder {
  color: #6b7a8d !important;
  opacity: 1;
}

.gestor-panel-theme .form-control,
.cliente-panel-theme .form-control,
.login-panel-theme .form-control,
.yuuju-readable-ui .form-control {
  color: var(--yuuju-body);
}

.gestor-panel-theme .form-select,
.cliente-panel-theme .form-select,
.yuuju-readable-ui .form-select {
  color: var(--yuuju-body);
}

/* ─── Tablas ─────────────────────────────────────────────────── */
.gestor-panel-theme .table,
.cliente-panel-theme .table,
.yuuju-readable-ui .table {
  color: var(--yuuju-body);
}

.gestor-panel-theme .table td,
.gestor-panel-theme .table th,
.cliente-panel-theme .table td,
.cliente-panel-theme .table th {
  color: inherit;
}

/* ─── Menú lateral gestor: texto claro sobre #1e1b4b ────────── */
.gestor-panel-theme #kt_aside .menu-content.text-muted {
  color: #818cf8 !important;
}

/* ─── Menú usuario en header (dropdown) ─────────────────────── */
.gestor-panel-theme .menu-state-bg .text-muted,
.cliente-panel-theme .menu-state-bg .text-muted {
  color: var(--yuuju-muted) !important;
}

/* ─── Login: legibilidad sobre fondo con imagen ──────────────── */
.login-panel-theme h1,
.login-panel-theme h2.fw-normal,
.login-panel-theme h1.text-gray-900 {
  color: #0f172a !important;
}

.login-panel-theme .bg-body {
  color: var(--yuuju-body);
}

.login-panel-theme a:not(.btn) {
  color: #1e4d8c;
  font-weight: 500;
}

.login-panel-theme a:not(.btn):hover {
  color: #0f2d5c;
  text-decoration: underline;
}

/* ─── Breadcrumbs ────────────────────────────────────────────── */
.gestor-panel-theme .breadcrumb,
.cliente-panel-theme .breadcrumb,
.yuuju-readable-ui .breadcrumb {
  color: var(--yuuju-muted);
}

.gestor-panel-theme .breadcrumb-item.active,
.cliente-panel-theme .breadcrumb-item.active {
  color: var(--yuuju-body);
}

/* ─── Select2 con tema bootstrap5 ───────────────────────────── */
.gestor-panel-theme .select2-container--bootstrap5 .select2-selection,
.cliente-panel-theme .select2-container--bootstrap5 .select2-selection {
  color: var(--yuuju-body) !important;
}

.gestor-panel-theme .select2-container--bootstrap5 .select2-dropdown,
.cliente-panel-theme .select2-container--bootstrap5 .select2-dropdown {
  border-color: #d1d5db !important;
}

/* ─── Textos dentro de cards de datos ───────────────────────── */
.gestor-panel-theme .text-dark,
.cliente-panel-theme .text-dark,
.yuuju-readable-ui .text-dark {
  color: #0f172a !important;
}

/* ─── fs-7 / fs-8: legibilidad en textos pequeños ───────────── */
.gestor-panel-theme .fs-7,
.cliente-panel-theme .fs-7 {
  color: var(--yuuju-muted);
}

/* ─── Cliente: tarjeta con borde más visible ────────────────── */
.cliente-panel-theme .card {
  border-color: #c8dff2 !important;
}
