.newsletter-feedback {
    margin-top: 10px;
    padding: 10px 14px;
    border-radius: 12px;
    background: #fff4ee;
    color: #b5624b;
    font-weight: 600;
}

.newsletter-feedback.error {
    background: #fdecea;
    color: #b35345;
}

.newsletter-modal .modal-content {
    position: relative;
    border-radius: 18px;
    border: 1px solid #e6ded4;
    box-shadow: 0 18px 40px rgba(46, 42, 37, 0.18);
    overflow: hidden;
}

.newsletter-modal .modal-header {
    border-bottom: 1px solid #f1e9df;
}

.newsletter-modal .modal-footer {
    border-top: 1px solid #f1e9df;
}

.newsletter-modal .newsletter-loading {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.78);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    z-index: 10;
}

.newsletter-modal .newsletter-loading i {
    font-size: 2.5rem;
    color: #c89b7b;
}

.newsletter-modal.is-loading .newsletter-loading {
    opacity: 1;
    pointer-events: auto;
}
