/* --- Alert Message Styles --- */

.messages-container {
    position: fixed;
    top: 90px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1060; /* Higher than offcanvas menu */
    width: 90%;
    max-width: 500px;
    pointer-events: none; /* Allow clicks to pass through the container */
}

.alert {
    pointer-events: auto; /* Make alerts clickable */
    padding: 15px 20px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 5px;
    color: #fff;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    opacity: 0;
    transform: translateY(-20px);
    animation: fadeIn 0.5s forwards;
}

@keyframes fadeIn {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success {
    background-color: var(--gold);
    border-color: var(--dark-gold);
}

.alert-error,
.alert-danger { /* Handle both 'error' and 'danger' message levels */
    background-color: #d9534f;
    border-color: #d43f3a;
}

.alert-info {
    background-color: #5bc0de;
    border-color: #46b8da;
}

.alert-warning {
    background-color: #f0ad4e;
    border-color: #eea236;
}
