/**
 * Contraste de texto legible (orientado WCAG AA) sobre fondos claros Metronic.
 * Debe cargarse después de style.bundle.css (y después de gestor-theme.css en el panel gestor).
 */

.cliente-panel-theme .table-responsive > .table {
  border: 1px solid #d1d5db;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 0.5rem;
  overflow: hidden;
}

.cliente-panel-theme .table-responsive > .table th,
.cliente-panel-theme .table-responsive > .table td {
  border: 1px solid #e5e7eb !important;
  vertical-align: middle;
}

.cliente-panel-theme .table-responsive > .table thead th {
  background-color: #f9fafb;
}

.cliente-panel-theme tr.yuuju-row-fact-pagada > td {
  background-color: #d1fae5 !important;
}
.cliente-panel-theme tr.yuuju-row-fact-pendiente > td {
  background-color: #fecaca !important;
}
.cliente-panel-theme tr.yuuju-row-fact-abono > td {
  background-color: #fef3c7 !important;
}

.cliente-panel-theme tr.yuuju-crm-open > td {
  background-color: #d1fae5 !important;
}
.cliente-panel-theme tr.yuuju-crm-progress > td {
  background-color: #fef3c7 !important;
}
.cliente-panel-theme tr.yuuju-crm-closed > td {
  background-color: #fecaca !important;
}

.gestor-panel-theme,
.cliente-panel-theme,
.login-panel-theme,
.yuuju-readable-ui {
  --yuuju-body: #121820;
  --yuuju-muted: #374151;
  --yuuju-subtle: #4b5563;
  --bs-body-color: var(--yuuju-body);
  --bs-secondary-color: var(--yuuju-muted);
}

/* Secundario / muted: Metronic lo deja demasiado claro sobre gris */
.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: #5b6570 !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: #4a5568 !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: #3d4759 !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: #2a3340 !important;
}

.gestor-panel-theme .text-gray-800,
.cliente-panel-theme .text-gray-800,
.yuuju-readable-ui .text-gray-800 {
  color: #1e2530 !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: #0f172a !important;
}

/* Títulos y párrafos por defecto */
.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: #5f6b78 !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;
}

/* Panel cliente: fondo de página ligeramente distinto para separar tarjetas blancas */
.cliente-panel-theme#kt_body .content,
.cliente-panel-theme#kt_body #kt_wrapper,
.cliente-panel-theme .flex-column-fluid.content {
  background-color: #e9edf3 !important;
  background-image: none !important;
}

.cliente-panel-theme .card {
  border-color: #c5cdd8 !important;
}

/* Login: textos sobre fondo con imagen */
.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;
}

/* Gestor: menú lateral oscuro — texto claro (contraste AA sobre #1e1b4b) */
.gestor-panel-theme #kt_aside .menu-title,
.gestor-panel-theme #kt_aside .menu-link {
  color: #e0e7ff !important;
}

.gestor-panel-theme #kt_aside .menu-link:hover,
.gestor-panel-theme #kt_aside .menu-link:focus {
  color: #ffffff !important;
  background-color: rgba(255, 255, 255, 0.08) !important;
}

.gestor-panel-theme #kt_aside .menu-item.here > .menu-link,
.gestor-panel-theme #kt_aside .menu-item.show > .menu-link {
  color: #ffffff !important;
  background-color: rgba(99, 102, 241, 0.35) !important;
}

.gestor-panel-theme #kt_aside .menu-icon,
.gestor-panel-theme #kt_aside .menu-icon i,
.gestor-panel-theme #kt_aside .ki-outline {
  color: #a5b4fc !important;
}

.gestor-panel-theme #kt_aside .menu-content.text-muted,
.gestor-panel-theme #kt_aside .menu-content.fw-bold.text-uppercase {
  color: #818cf8 !important;
}

.gestor-panel-theme #kt_aside_mobile_toggle {
  color: #4f46e5 !important;
}

.gestor-panel-theme #kt_header #userNameHead,
.gestor-panel-theme #kt_header #userName2Head,
.cliente-panel-theme #kt_header #userNameHead,
.cliente-panel-theme #kt_header #userName2Head {
  color: var(--yuuju-body) !important;
}

/* Submenú usuario (dropdown claro): email ya no gris invisible */
.gestor-panel-theme .menu-state-bg.menu-color .text-muted,
.cliente-panel-theme .menu-state-bg.menu-color .text-muted {
  color: var(--yuuju-muted) !important;
}

/* Breadcrumbs / toolbar */
.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);
}
