:root {
    --color-lavanda-sanfra: #bba8f6;
    --color-lavanda-clara-sanfra: #ded9ff;
    --color-lavanda-suave-sanfra: #f0eeff;
    --color-verde-sanfra: #22c55e;
    --color-negro-sanfra: #000;
    --color-blanco-sanfra: #fff;
    --color-error-sanfra: #ff6b6b;
    --color-error-sobre-claro-sanfra: #b42318;
    --color-advertencia-sanfra: #ffc832;
    --color-informacion-sanfra: #90caf9;
    --color-icono-notificacion-sanfra: var(--color-lavanda-sanfra);
    --rgb-lavanda-sanfra: 187, 168, 246;
    --rgb-lavanda-clara-sanfra: 222, 217, 255;
    --rgb-lavanda-suave-sanfra: 240, 238, 255;
    --rgb-verde-sanfra: 34, 197, 94;
    --rgb-verde-producto-sanfra: 165, 240, 155;
    --rgb-negro-sanfra: 0, 0, 0;
    --rgb-blanco-sanfra: 255, 255, 255;
    --rgb-error-sanfra: 255, 107, 107;
    --rgb-advertencia-sanfra: 255, 200, 50;
    --rgb-informacion-sanfra: 144, 202, 249;
    --bs-primary-rgb: var(--rgb-lavanda-sanfra);
    --bs-secondary-rgb: var(--rgb-lavanda-clara-sanfra);
    --bs-success-rgb: var(--rgb-verde-sanfra);
    --bs-info-rgb: var(--rgb-informacion-sanfra);
    --bs-warning-rgb: var(--rgb-advertencia-sanfra);
    --bs-danger-rgb: var(--rgb-error-sanfra);
}

.text-danger,
.invalid-feedback {
    color: var(--color-error-sanfra) !important;
}

.text-warning {
    color: var(--color-advertencia-sanfra) !important;
}

.text-info {
    color: var(--color-informacion-sanfra) !important;
}

.text-success {
    color: var(--color-verde-sanfra) !important;
}

.alert-info,
.mud-alert.mud-alert-text-info,
.mud-alert.mud-alert-outlined-info,
.mud-alert.mud-alert-filled-info {
    background-color: #cff4fc;
    color: #055160;
    border-color: #b6effb;
}

.alert-warning,
.mud-alert.mud-alert-text-warning,
.mud-alert.mud-alert-outlined-warning,
.mud-alert.mud-alert-filled-warning {
    background-color: #fff3cd;
    color: #664d03;
    border-color: #ffecb5;
}

.alert-danger,
.mud-alert.mud-alert-text-error,
.mud-alert.mud-alert-outlined-error,
.mud-alert.mud-alert-filled-error {
    background-color: #f8d7da;
    color: #842029;
    border-color: #f5c2c7;
}

.alert-success {
    background-color: var(--color-verde-sanfra);
    color: var(--color-negro-sanfra);
    border-color: var(--color-verde-sanfra);
}

body[data-canal-sanfra="personas"],
body[data-canal-sanfra="empresas"],
body[data-canal-sanfra="movil"] {
    --color-icono-notificacion-sanfra: var(--color-lavanda-sanfra);
}

/* La capa que ya usa Personas cubre también la navegación en Empresas y Móvil. */
body[data-canal-sanfra="personas"] .swal2-container,
body[data-canal-sanfra="empresas"] .swal2-container,
body[data-canal-sanfra="movil"] .swal2-container {
    z-index: 100000000 !important;
}

body .swal2-icon:is(.swal2-success, .swal2-error, .swal2-warning, .swal2-info, .swal2-question),
body .swal2-icon.swal2-success .swal2-success-ring {
    color: var(--color-icono-notificacion-sanfra) !important;
    border-color: var(--color-icono-notificacion-sanfra) !important;
}

body .swal2-icon:is(.swal2-success, .swal2-error) :is(.swal2-success-line-tip, .swal2-success-line-long,
    .swal2-x-mark-line-left, .swal2-x-mark-line-right) {
    background-color: var(--color-icono-notificacion-sanfra) !important;
}

.swal2-icon.swal2-success :is(.swal2-success-circular-line-left,
    .swal2-success-circular-line-right, .swal2-success-fix) {
    background-color: transparent !important;
}

#transaction-invoice :is(.text-danger, .invalid-feedback),
.color-black :is(.text-danger, .invalid-feedback) {
    color: var(--color-error-sobre-claro-sanfra) !important;
}

.alert :is(.text-danger, .text-warning, .text-info, .text-success) {
    color: inherit !important;
}

.mud-alert:is(.mud-alert-text-info, .mud-alert-outlined-info, .mud-alert-filled-info,
    .mud-alert-text-warning, .mud-alert-outlined-warning, .mud-alert-filled-warning,
    .mud-alert-text-error, .mud-alert-outlined-error, .mud-alert-filled-error)
    :is(.mud-alert-icon, .mud-icon-button) {
    color: inherit;
}

.blazor-error-boundary {
    color: var(--color-negro-sanfra) !important;
}

.checkbox {
    --tick: var(--color-negro-sanfra);
}

.identity-animated-check svg {
    stroke: var(--color-negro-sanfra) !important;
}
