/* ===== СТИЛИ ДЛЯ СООБЩЕНИЙ ===== */
.message {
    padding: 15px;
    border-radius: 8px;
    margin: 15px 0;
    text-align: center;
    font-size: 14px;
    border: 2px solid transparent;
    animation: slideDown 0.3s ease;
    font-weight: normal;
}

.success-message {
    background-color: #d4edda;
    color: #155724;
    border-color: #c3e6cb;
}

.error-message {
    background-color: #f8d7da;
    color: #721c24;
    border-color: #f5c6cb;
}

.persistent-message {
    animation: pulse 2s infinite;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.4);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(40, 167, 69, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(40, 167, 69, 0);
    }
}