/* ===============================
   NEWSLETTER CARD
=================================*/

.nwl-card{
    background: var(--Mainbg);
    max-width:460px;
    width:100%;
    padding: 16px;
    border-radius:12px;
    border: var(--border);
    box-shadow:0 15px 35px rgba(0,0,0,0.05);
    margin-top:20px;
}

/* ===============================
   HEADER
=================================*/

.nwl-header-icon{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom: 12px;
    /* border-bottom: 2px solid rgb(155 155 155); */
    padding-bottom: 6px;
}

.nwl-header-icon i{
    font-size: 20px;
    color:#ff6e39;
    background: var(--postmetaicons);
    padding:12px;
    border-radius:18px;
}

.nwl-header-icon h2{
    font-weight: bold;
    font-size: 20px;
    letter-spacing:-0.02em;
    color: var(--beige-dual);
    margin:0;
}

.nwl-desc{
    color: var(--color);
    font-size:0.95rem;
    margin-bottom: 12px;
    line-height:1.5;
}

/* ===============================
   INPUT GROUP
=================================*/

.nwl-input-group{
    display:flex;
    align-items:center;
    width:100%;
    border: var(--border);
    background: var(--Mainbg);
    border-radius:12px;
    padding:4px;
    margin-bottom:1.2rem;
    transition:.2s;
    box-sizing:border-box;
}

.nwl-input-group:focus-within{
    background:var(--Mainbg);
    border-color:none;
    
}

.nwl-input-group input{
    border:none;
    background:transparent;
    outline:none;
    flex:1 1 auto;      /* allows shrink */
    min-width:0;        /* IMPORTANT: prevents overflow */
    padding:.8rem 1rem;
    font-size:1rem;
    color: var(--color);
    font-family: inherit;
}

/* ===============================
   AIRPLANE BUTTON (FA VERSION)
=================================*/

.nwl-send-btn{
    flex:0 0 auto;      /* prevents flex weird resizing */
    background:#ff6e39;
    border:none;
    border-radius:10px;
    width:44px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:all .25s ease;
    /* box-shadow:0 4px 12px rgba(255,110,57,0.25); */
}

.nwl-send-btn i{
    color:#fff;
    font-size:15px;
    transition:transform .25s ease;
}


/* =============================== RADIO =================================*/ label.radio-wrapper-7{ padding:6px; border-radius:50px; display:inline-flex; align-items:center; cursor:pointer; transition:background .2s ease; margin-bottom:1rem; } label.radio-wrapper-7:hover{ background:rgba(159,159,159,0.1); } label.radio-wrapper-7 input{ width:20px; height:20px; border-radius:10px; border:0; box-shadow:inset 0 0 0 1.5px #9F9F9F; appearance:none; margin:0; transition:box-shadow 150ms cubic-bezier(.95,.15,.5,1.25); pointer-events:none; } label.radio-wrapper-7 input:checked{ box-shadow:inset 0 0 0 6px #ff6e39; } label.radio-wrapper-7 span{ padding-left:8px; font-size:.9rem; color: var(--color); }


/* ===============================
   STATUS
=================================*/

.nwl-status{
    margin-top:1rem;
    padding:.8rem 1rem;
    border-radius:50px;
    font-size:.9rem;
    display:none;
    align-items:center;
    gap:10px;
    line-height:1;
    animation:fadeIn .2s ease;
}

@keyframes fadeIn{
    from{opacity:0; transform:translateY(4px);}
    to{opacity:1; transform:translateY(0);}
}

.nwl-status.success,
.nwl-status.error,
.nwl-status.info{
    display:flex;
}

.nwl-status.success{
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    color:#065f46;
}

.nwl-status.error{
    background:#fef2f2;
    border:1px solid #fecaca;
    color:#7f1d1d;
}

.nwl-status.info{
    background:#f3f4f6;
    border:1px solid #e5e7eb;
    color:#374151;
}

/* ===============================
   STATUS (TEXT ONLY)
=================================*/

.nwl-status{
    margin-top:1rem;
    padding:.8rem 1rem;
    border-radius:12px;
    font-size:.9rem;
    display:none;
    line-height:1.4;
    animation:fadeIn .2s ease;
}

@keyframes fadeIn{
    from{opacity:0; transform:translateY(4px);}
    to{opacity:1; transform:translateY(0);}
}

.nwl-status.success,
.nwl-status.error,
.nwl-status.info{
    display:block;
}

.nwl-status.success{
    background:#00fd8b57;
    border:1px solid #2ecc71;
    color:#2ecc71;
}

.nwl-status.error{
    background:#ff00004a;
    border:1px solid #e74c3c;
    color:#e74c3c;
}

.nwl-status.info{
    background: #ffd4004f;
    border: 1px solid #e5dc6c;
    color: var(--color);
}

