/**
 * RAF Soft Cards Design
 * Global styling for WPGens Refer-a-Friend widget.
 * Applied on: Referrals tab, thank-you popup, course-complete page.
 *
 * Scoped to .gens-refer-a-friend (always present in WPGens output).
 */

/* === Layout === */
.gens-refer-a-friend { max-width: 700px }

/* === Heading + Tagline === */
.gens-refer-a-friend .gens-raf-text h2 {
    font-size: 26px !important; font-weight: 800 !important;
    color: #1a1a2e !important; margin: 0 0 8px !important;
}
.gens-refer-a-friend .ece-raf-tagline {
    font-size: 16px !important; color: #666 !important;
    line-height: 1.6 !important; margin: 0 0 24px !important;
}
.ece-reward-highlight {
    display: inline !important; background: #eef2ff !important;
    padding: 3px 8px !important; border-radius: 6px !important;
    font-weight: 700 !important; color: #4f6ef7 !important;
    box-decoration-break: clone !important; -webkit-box-decoration-break: clone !important;
}

/* === Reward Banner — two separate cards === */
.gens-refer-a-friend .gens-raf-reward {
    background: none !important; border: none !important; border-radius: 0 !important;
    padding: 0 !important; display: flex !important; gap: 12px !important;
    margin: 0 0 12px !important; box-shadow: none !important;
}
.gens-refer-a-friend .gens-raf-reward > div {
    flex: 1 !important; padding: 20px !important; border-radius: 14px !important;
    border: 1px solid #e8eaef !important; background: #fff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.03) !important;
    font-size: 12px !important; color: #999 !important; font-weight: 500 !important;
}
.gens-refer-a-friend .gens-raf-reward > div::before {
    font-size: 28px !important; display: block !important; margin-bottom: 8px !important;
}
.gens-refer-a-friend .gens-raf-reward > div:first-of-type::before { content: "\1F381" }
.gens-refer-a-friend .gens-raf-reward > div:last-of-type::before  { content: "\1F3F7\FE0F" }
.gens-refer-a-friend .gens-raf-reward > div span {
    display: block !important; font-size: 18px !important; font-weight: 700 !important;
    color: #1a1a2e !important; margin-top: 6px !important; word-break: break-word !important;
}
.gens-refer-a-friend .gens-raf-reward > span { display: none !important }

/* === Min-order note === */
.ece-raf-min-note {
    background: #fafafa; border: 1px dashed #ddd; padding: 10px 14px;
    font-size: 13px; color: #888; border-radius: 8px; margin: 0 0 28px; line-height: 1.5;
}
.ece-raf-min-note strong { color: #444 }

/* === Field labels === */
.gens-refer-a-friend .gens-raf-field > label {
    font-size: 11px !important; font-weight: 700 !important; color: #999 !important;
    text-transform: uppercase !important; letter-spacing: .8px !important; margin-bottom: 8px !important;
}

/* === Inputs === */
.gens-refer-a-friend .gens-copy {
    position: relative !important;
}
.gens-refer-a-friend .gens-copy .gens-ctc-modern {
    position: absolute !important; right: 14px !important; top: 0 !important; bottom: 0 !important;
    display: flex !important; align-items: center !important;
    cursor: pointer !important;
}
.gens-refer-a-friend .gens-copy input[type="text"] {
    border: 2px solid #eef0f5 !important; border-radius: 12px !important;
    padding: 13px 48px 13px 16px !important; font-size: 14px !important;
    background: #fafbfc !important; color: #333 !important; transition: border-color .2s !important;
}
.gens-refer-a-friend .gens-copy input[type="text"]:focus {
    border-color: #4f6ef7 !important; outline: none !important;
}
.gens-refer-a-friend .gens-referral_share__email__inputs input {
    border: 2px solid #eef0f5 !important; border-radius: 12px !important;
    padding: 13px 16px !important; font-size: 14px !important;
    background: #fff !important; margin-bottom: 0 !important;
}

/* Email pair cards */
.ece-email-pair {
    background: #f8f9fb; border: 1px solid #eef0f5; border-radius: 14px;
    padding: 14px; display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px;
}
.ece-email-pair:nth-child(even) { background: #faf8f5; border-color: #f0ece5 }
.ece-email-pair .ece-pair-label { font-size: 11px; font-weight: 600; color: #aaa; margin: 0 0 2px 4px }

/* === Send Emails button === */
.gens-refer-a-friend .gens-raf-send-emails {
    background: #4f6ef7 !important; border: none !important; border-radius: 12px !important;
    padding: 14px 32px !important; font-size: 14px !important; font-weight: 600 !important;
    color: #fff !important; letter-spacing: .5px !important; cursor: pointer !important;
    transition: opacity .15s !important; line-height: 1.2 !important;
    display: block !important; text-align: center !important;
    width: 100% !important; box-sizing: border-box !important;
}
.gens-refer-a-friend .gens-raf-send-emails:hover { opacity: .85 !important }

/* === Social share buttons === */
.gens-refer-a-friend .gens-referral_share a {
    border-radius: 12px !important; border: none !important; background: #1a1a2e !important;
}
.gens-refer-a-friend .gens-referral_share a svg path,
.gens-refer-a-friend .gens-referral_share a svg {
    fill: #fff !important; color: #fff !important;
}
.gens-refer-a-friend .gens-referral_share a:hover { opacity: .8 !important }

/* === Stats cards === */
.gens-refer-a-friend .gens-referral_stats__title {
    font-size: 18px !important; font-weight: 700 !important;
    color: #1a1a2e !important; margin: 36px 0 14px !important;
}
.gens-refer-a-friend .gens-referral_stats {
    display: flex !important; gap: 12px !important; margin: 0 !important; overflow: visible !important;
}
.gens-refer-a-friend .gens-referral_stats > div {
    flex: 1 !important; float: none !important; width: auto !important;
    border-radius: 14px !important; padding: 20px !important;
    font-size: 12px !important; font-weight: 500 !important; color: #999 !important;
    background: #fff !important; border: 1px solid #e8eaef !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.03) !important; display: block !important;
}
.gens-refer-a-friend .gens-referral_stats > div:nth-child(1) { border-left: 4px solid #4f6ef7 !important }
.gens-refer-a-friend .gens-referral_stats > div:nth-child(2) { border-left: 4px solid #e0e3ea !important }
.gens-refer-a-friend .gens-referral_stats > div span {
    display: block !important; font-size: 28px !important; font-weight: 800 !important;
    color: #1a1a2e !important; float: none !important; margin: 4px 0 0 !important; line-height: 1 !important;
}

/* === Tables === */
.gens-refer-a-friend .gens-referral_stats__table {
    border-radius: 12px !important; overflow: hidden !important;
    margin-top: 16px !important; border: 1px solid #e8eaef !important;
}
.gens-refer-a-friend .gens-referral_coupons__title {
    font-size: 18px !important; font-weight: 700 !important;
    color: #1a1a2e !important; margin: 36px 0 14px !important;
}

/* === Sub-tabs (profile tab only) === */
.ema-profile-subtabs {
    display: flex !important; gap: 0 !important;
    border-bottom: 2px solid #e0e0e0 !important; margin-bottom: 25px !important;
    padding: 0 !important; background: none !important;
}
.ema-profile-subtabs .ema-subtab {
    background: none !important; border: none !important;
    border-bottom: 3px solid transparent !important; border-radius: 0 !important;
    padding: 12px 24px !important; font-size: 15px !important; font-weight: 600 !important;
    color: #888 !important; cursor: pointer !important; margin-bottom: -2px !important;
    text-transform: none !important; letter-spacing: normal !important; line-height: 1.4 !important;
    outline: none !important; box-shadow: none !important;
    transition: color .2s, border-color .2s !important;
}
.ema-profile-subtabs .ema-subtab:hover { color: #333 !important; background: none !important }
.ema-profile-subtabs .ema-subtab.active { color: #2271b1 !important; border-bottom-color: #2271b1 !important; background: none !important }

/* === Context overrides: hide stats/history on thank-you popup + course-complete === */
.raf-modal-content .gens-referral_stats,
.raf-modal-content .gens-referral_orders,
.raf-modal-content .gens-referral_stats__title,
.raf-modal-content .gens-referral_coupons__title,
.raf-modal-content .gens-referral_stats__table,
.raf-modal-content .ece-raf-tagline,
.raf-modal-content .ece-raf-min-note { display: none !important }

.ece-cc-referral-wrap .gens-referral_stats,
.ece-cc-referral-wrap .gens-referral_orders,
.ece-cc-referral-wrap .gens-referral_stats__title,
.ece-cc-referral-wrap .gens-referral_coupons__title,
.ece-cc-referral-wrap .gens-referral_stats__table { display: none !important }

/* Thank-you modal tweaks */
.raf-modal {
    overflow: hidden !important;
}
.raf-modal .raf-modal-content {
    max-width: 620px !important; border-radius: 14px !important;
    padding: 40px 28px 32px !important; box-shadow: 0 8px 32px rgba(0,0,0,.12) !important;
    overflow-x: hidden !important; overflow-y: auto !important;
}
.raf-modal-content .gens-refer-a-friend { max-width: 100% !important }
.raf-modal-content .gens-raf-reward { flex-wrap: wrap !important }
.raf-modal .raf-modal-content .raf-close {
    position: absolute !important;
    top: 12px !important; right: 16px !important;
    font-size: 22px !important; z-index: 10 !important;
    width: 32px !important; height: 32px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    border-radius: 50% !important; background: #f0f0f0 !important;
    color: #666 !important; line-height: 1 !important;
    float: none !important; cursor: pointer !important;
}
.raf-modal .raf-modal-content .raf-close:hover { background: #e0e0e0 !important; color: #333 !important }

/* === Referral History Table === */
.ece-raf-history-wrap { max-width: 700px }

.ece-raf-history-table {
    width: 100%; border-collapse: collapse; margin: 0;
    border: 1px solid #e8eaef; border-radius: 12px; overflow: hidden;
}
.ece-raf-history-table thead th {
    background: #f8f9fb; padding: 12px 14px; font-size: 11px;
    font-weight: 700; color: #999; text-transform: uppercase;
    letter-spacing: .6px; text-align: left; border-bottom: 2px solid #e8eaef;
}
.ece-raf-history-table tbody td {
    padding: 12px 14px; font-size: 14px; color: #333;
    border-bottom: 1px solid #f0f0f0; vertical-align: middle;
}
.ece-raf-history-table tbody tr:last-child td { border-bottom: none }
.ece-raf-history-table tbody tr:hover { background: #fafbfc }

/* Status badges */
.ece-status-purchased {
    display: inline-block; background: #e8f5e9; color: #2e7d32;
    padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600;
}
.ece-status-pending {
    display: inline-block; background: #fff3e0; color: #e65100;
    padding: 3px 10px; border-radius: 20px; font-size: 12px; font-weight: 600;
}

/* Action buttons */
.ece-raf-remind-btn {
    background: #4f6ef7; color: #fff; border: none; border-radius: 8px;
    padding: 7px 16px; font-size: 12px; font-weight: 600; cursor: pointer;
    transition: opacity .15s; white-space: nowrap;
}
.ece-raf-remind-btn:hover { opacity: .85 }

.ece-raf-converted { color: #2e7d32; font-size: 12px; font-weight: 600 }
.ece-raf-reminded { color: #999; font-size: 12px; font-weight: 500; font-style: italic }

/* Empty / loading / error states */
.ece-raf-history-loading,
.ece-raf-history-empty,
.ece-raf-history-error { font-size: 14px; color: #888; padding: 20px 0 }
.ece-raf-history-empty a { color: #4f6ef7; text-decoration: underline }
.ece-raf-history-error { color: #d63638 }

/* Responsive: mobile layout */
@media (max-width: 640px) {
    /* Heading */
    .gens-refer-a-friend .gens-raf-text h2 {
        font-size: 20px !important;
    }
    .gens-refer-a-friend .ece-raf-tagline {
        font-size: 14px !important;
    }

    /* Reward cards: stack vertically */
    .gens-refer-a-friend .gens-raf-reward {
        flex-direction: column !important;
    }
    .gens-refer-a-friend .gens-raf-reward > div {
        flex: none !important;
        display: flex !important; align-items: center !important; gap: 10px !important;
        padding: 14px 16px !important;
    }
    .gens-refer-a-friend .gens-raf-reward > div::before {
        font-size: 22px !important; display: inline !important; margin-bottom: 0 !important;
        flex-shrink: 0 !important;
    }
    .gens-refer-a-friend .gens-raf-reward > div span {
        display: inline !important; font-size: 16px !important; margin-top: 0 !important;
    }

    /* Stats cards: stack vertically */
    .gens-refer-a-friend .gens-referral_stats {
        flex-direction: column !important;
    }

    /* Sub-tabs: smaller padding */
    .ema-profile-subtabs .ema-subtab {
        padding: 10px 14px !important; font-size: 13px !important;
    }

    /* History table: card layout */
    .ece-raf-history-table thead { display: none }
    .ece-raf-history-table tbody tr {
        display: block; border: 1px solid #e8eaef; border-radius: 12px;
        margin-bottom: 10px; padding: 12px; background: #fff;
    }
    .ece-raf-history-table tbody td {
        display: block; padding: 4px 0; border: none; font-size: 13px;
    }
    .ece-raf-history-table tbody td::before {
        content: attr(data-label) ": "; font-weight: 600; color: #999;
        font-size: 11px; text-transform: uppercase;
    }
}
