/* Compatibilidad con pantallas heredadas mientras el producto adopta la identidad Conecta Servicios. */
:root,
[data-bs-theme="light"] {
    --cs-primary: #176b54;
    --cs-primary-hover: #105641;
    --cs-primary-rgb: 23, 107, 84;
    --bs-primary: #176b54;
    --bs-primary-rgb: 23, 107, 84;
    --bs-link-color: #176b54;
    --bs-link-color-rgb: 23, 107, 84;
    --bs-link-hover-color: #105641;
    --bs-link-hover-color-rgb: 16, 86, 65;
}
[data-bs-theme="dark"] {
    --cs-primary: #176b54;
    --cs-primary-hover: #105641;
    --cs-primary-rgb: 23, 107, 84;
    --bs-primary: #62b696;
    --bs-primary-rgb: 98, 182, 150;
    --bs-link-color: #a5dfc5;
    --bs-link-color-rgb: 165, 223, 197;
    --bs-link-hover-color: #d8f5e5;
    --bs-link-hover-color-rgb: 216, 245, 229;
}
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #176b54;
    --bs-btn-border-color: #176b54;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #105641;
    --bs-btn-hover-border-color: #105641;
    --bs-btn-focus-shadow-rgb: 107, 114, 128;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0d4938;
    --bs-btn-active-border-color: #0d4938;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #6b7280;
    --bs-btn-disabled-border-color: #6b7280;
}
.btn-outline-primary {
    --bs-btn-color: var(--bs-link-color);
    --bs-btn-border-color: #6b7280;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #374151;
    --bs-btn-hover-border-color: #374151;
    --bs-btn-focus-shadow-rgb: 107, 114, 128;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #1f2937;
    --bs-btn-active-border-color: #1f2937;
    --bs-btn-disabled-color: #6b7280;
    --bs-btn-disabled-border-color: #9ca3af;
}
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    border-color: #9ca3af;
    box-shadow: 0 0 0 .25rem rgba(55, 65, 81, .18);
}
.form-check-input:checked {
    background-color: #374151;
    border-color: #374151;
}
.pagination {
    --bs-pagination-color: var(--bs-link-color);
    --bs-pagination-hover-color: var(--bs-link-hover-color);
    --bs-pagination-focus-color: var(--bs-link-hover-color);
    --bs-pagination-focus-box-shadow: 0 0 0 .25rem rgba(55, 65, 81, .18);
    --bs-pagination-active-bg: #374151;
    --bs-pagination-active-border-color: #374151;
}
.nav-pills {
    --bs-nav-pills-link-active-bg: #374151;
}
.list-group {
    --bs-list-group-active-bg: #374151;
    --bs-list-group-active-border-color: #374151;
}
/* Controles del perfil escolar: carga de logotipo y cantidad declarada de alumnos. */

/* Conserva el estado de error de Bootstrap incluso al enfocar el campo. */
.form-control.is-invalid,
.form-select.is-invalid,
.form-check-input.is-invalid {
    border-color: var(--bs-form-invalid-border-color, #dc3545);
}
.form-control.is-invalid:focus,
.form-select.is-invalid:focus,
.form-check-input.is-invalid:focus {
    border-color: var(--bs-form-invalid-border-color, #dc3545);
    box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .25);
}