/*Panel de errores*/
#saveErrorDiv {
    background-color: #f8d7da;
    border: 1px solid #f5c6cb;
    border-radius: 8px;
    padding: 15px;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
    position: relative;
    clear: both;
}

#saveErrorDiv h6 {
    color: #721c24;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

#saveErrors {
    list-style: none;
    padding-left: 0;
    margin: 0;
    margin-bottom: 0 !important;
}

#saveErrors li {
    padding: 8px 12px;
    background: white;
    border-left: 4px solid #dc3545;
    border-radius: 4px;
    margin-bottom: 8px;
    font-size: 14px;
    line-height: 1.5;
}

#saveErrors li strong {
    color: #c82333;
    font-weight: 600;
}

#saveErrors li:last-child {
    margin-bottom: 0;
}

/*Celdas con error*/
td.htInvalidCell {
    background-color: #ffcccc !important;
    border: 1px solid #dc3545 !important;
    color: #721c24 !important;
    font-weight: 600 !important;
    box-shadow: inset 0 0 4px rgba(220, 53, 69, 0.3) !important;
}

td.htInvalidCell.current,
td.htInvalidCell.area,
td.htInvalidCell:hover {
    background-color: #ffb3b3 !important;
    border-color: #c82333 !important;
}

.handsontable td.htInvalidCell {
    background-color: #ffcccc !important;
    border: 1px solid #dc3545 !important;
}

/*Animaciones toast*/
@keyframes slideIn {
    from { transform: translateX(400px); opacity: 0; }
    to   { transform: translateX(0);     opacity: 1; }
}

@keyframes slideOut {
    from { transform: translateX(0);     opacity: 1; }
    to   { transform: translateX(400px); opacity: 0; }
}
