/* ED Affiliate frontend typography — aligned with WooCommerce account pages. */

/* Dashboard affiliate card. */
#ed-aff-dashboard-widget {
    font-size: 16px !important;
    line-height: 1.65 !important;
}

#ed-aff-dashboard-widget > div:first-child {
    font-size: 18px !important;
    line-height: 1.4 !important;
}

#ed-aff-dashboard-widget > div:nth-child(2),
#ed-aff-dashboard-widget small {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

#ed-aff-dashboard-widget input,
#ed-aff-dashboard-widget button,
#ed-aff-dashboard-widget a,
#ed-aff-dashboard-widget p,
#ed-aff-dashboard-widget label,
#ed-aff-dashboard-widget select,
#ed-aff-dashboard-widget [style*="font-size:11px"],
#ed-aff-dashboard-widget [style*="font-size:12px"],
#ed-aff-dashboard-widget [style*="font-size:13px"] {
    font-size: 16px !important;
    line-height: 1.5 !important;
}

/* Full /my-account/referral-bonus/ endpoint. */
.ed-affiliate-referral-page .woocommerce-MyAccount-content {
    font-size: 16px !important;
    line-height: 1.65 !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-navigation a,
.ed-affiliate-referral-page .woocommerce-MyAccount-content p,
.ed-affiliate-referral-page .woocommerce-MyAccount-content a,
.ed-affiliate-referral-page .woocommerce-MyAccount-content label,
.ed-affiliate-referral-page .woocommerce-MyAccount-content input,
.ed-affiliate-referral-page .woocommerce-MyAccount-content select,
.ed-affiliate-referral-page .woocommerce-MyAccount-content button,
.ed-affiliate-referral-page .woocommerce-MyAccount-content td,
.ed-affiliate-referral-page .woocommerce-MyAccount-content th,
.ed-affiliate-referral-page .woocommerce-MyAccount-content span,
.ed-affiliate-referral-page .woocommerce-MyAccount-content div {
    font-size: 16px !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-content h2,
.ed-aff-section-title {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    color: #1D4ED8 !important;
    margin-bottom: 18px !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-content h3 {
    font-size: 20px !important;
    line-height: 1.4 !important;
}

/* Secondary copy stays slightly quieter, but never below 15px. */
.ed-affiliate-referral-page .woocommerce-MyAccount-content small,
.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-size:11px"],
.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-size:12px"],
.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-size:13px"],
.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-size:14px"] {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

/* Restore intentional hierarchy after the broad inline-style override. */
.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-size:24px"] {
    font-size: 32px !important;
    line-height: 1.2 !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-content [style*="font-weight:700"][style*="color:#0A2540"] {
    font-size: 18px !important;
    line-height: 1.4 !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-content input,
.ed-affiliate-referral-page .woocommerce-MyAccount-content select,
.ed-affiliate-referral-page .woocommerce-MyAccount-content button,
#ed-aff-dashboard-widget input,
#ed-aff-dashboard-widget button {
    min-height: 44px;
    line-height: 1.35 !important;
}

.ed-affiliate-referral-page .woocommerce-MyAccount-content table {
    font-size: 15px !important;
}


/* Consistent 18px blue Affiliate headings across dashboard and commission page. */
#ed-aff-dashboard-widget > div:first-child,
.ed-affiliate-referral-page .ed-aff-section-title {
    font-size: 18px !important;
    line-height: 1.4 !important;
    font-weight: 700 !important;
    color: #1D4ED8 !important;
}

.ed-affiliate-referral-page .ed-aff-bank-title {
    margin-bottom: 4px !important;
}

.ed-aff-rate-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
    padding: 6px 14px;
    border: 1px solid #FDE68A;
    border-radius: 999px;
    background: #FEF3C7;
    color: #D97706;
    font-size: 16px !important;
    font-weight: 700;
    line-height: 1.4;
}

.ed-aff-rate-badge strong {
    color: #B45309;
    font-size: 16px !important;
}

.ed-aff-rate-badge span {
    color: #92400E;
    font-size: 15px !important;
    font-weight: 400;
}

@media (max-width: 767px) {
    #ed-aff-dashboard-widget,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content,
    .ed-affiliate-referral-page .woocommerce-MyAccount-navigation a {
        font-size: 15px !important;
    }

    #ed-aff-dashboard-widget input,
    #ed-aff-dashboard-widget button,
    #ed-aff-dashboard-widget a,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content input,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content select,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content button,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content label,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content p,
    .ed-affiliate-referral-page .woocommerce-MyAccount-content a {
        font-size: 15px !important;
    }
}


/* v1.9.0 — Affiliate-facing performance dashboard. */
.ed-aff-user-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}
.ed-aff-user-stat {
    min-width: 0;
    padding: 18px 20px;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    background: #fff;
}
.ed-aff-user-stat.is-pending { background:#eff6ff; border-color:#93c5fd; }
.ed-aff-user-stat span { display:block; margin-bottom:5px; color:#64748b; font-size:15px !important; font-weight:600; }
.ed-aff-user-stat strong { display:block; color:#0f172a; font-size:30px !important; line-height:1.2 !important; }
.ed-aff-user-stat small { display:block; margin-top:4px; color:#64748b; font-size:15px !important; }
.ed-aff-user-stat.is-pending strong { color:#f58220; }
.ed-aff-user-stat.is-paid strong { color:#16a34a; }
.ed-aff-user-stat.is-clicks strong { color:#2563eb; }
.ed-aff-user-stat.is-conversion strong { color:#15803d; }

.ed-aff-user-policy-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:16px;
}
.ed-aff-user-policy-grid > div {
    padding:13px 16px;
    border:1px solid #e5e7eb;
    border-radius:10px;
    background:#fff;
}
.ed-aff-user-policy-grid span { display:block; color:#64748b; font-size:15px !important; }
.ed-aff-user-policy-grid strong { display:block; margin-top:3px; color:#0f172a; font-size:16px !important; }

.ed-aff-referral-card { margin-bottom:24px; padding:18px; border:1px solid #bae6fd; border-radius:12px; background:#f0f9ff; }
.ed-aff-referral-label { margin-bottom:8px; color:#64748b; font-size:15px !important; font-weight:600; }
.ed-aff-copy-row { display:flex; align-items:center; gap:8px; }
.ed-aff-copy-row input { flex:1; min-width:0; padding:10px 12px; border:1px solid #bae6fd; border-radius:8px; background:#fff; }
.ed-aff-copy-button { flex:0 0 auto; padding:10px 18px; border:0; border-radius:8px; background:#f58220; color:#fff; font-weight:700; cursor:pointer; }
.ed-aff-copy-button.is-copied { background:#16a34a; }

.ed-aff-payout-progress { margin-top:18px; padding-top:16px; border-top:1px solid #dbeafe; }
.ed-aff-progress-heading { display:flex; justify-content:space-between; gap:16px; margin-bottom:8px; }
.ed-aff-progress-heading strong,.ed-aff-progress-heading span { font-size:15px !important; }
.ed-aff-progress-track { height:10px; overflow:hidden; border-radius:999px; background:#dbeafe; }
.ed-aff-progress-track span { display:block; height:100%; border-radius:inherit; background:#2563eb; }
.ed-aff-payout-progress p { margin:8px 0 0; color:#64748b; font-size:15px !important; }

.ed-aff-insights-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:24px; }
.ed-aff-insight-card { padding:20px; border:1px solid #e5e7eb; border-radius:12px; background:#fff; }
.ed-aff-insight-card h3 { margin:0 0 14px; color:#1d4ed8; font-size:18px !important; }
.ed-aff-top-products,.ed-aff-recent-activity { margin:0; padding:0; list-style:none; }
.ed-aff-top-products li { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:10px 0; border-bottom:1px solid #f1f5f9; }
.ed-aff-top-products li:last-child { border-bottom:0; }
.ed-aff-top-products a { color:#0f172a; font-weight:600; text-decoration:none; }
.ed-aff-top-products strong { white-space:nowrap; color:#2563eb; font-size:15px !important; }
.ed-aff-recent-activity li { display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid #f1f5f9; }
.ed-aff-recent-activity li:last-child { border-bottom:0; }
.ed-aff-recent-activity strong { display:block; color:#0f172a; font-size:15px !important; }
.ed-aff-recent-activity small { display:block; color:#64748b; font-size:15px !important; }
.ed-aff-activity-status { width:10px; height:10px; margin-top:6px; border-radius:999px; background:#f59e0b; flex:0 0 auto; }
.ed-aff-activity-status.is-approved { background:#2563eb; }
.ed-aff-activity-status.is-paid { background:#16a34a; }
.ed-aff-activity-status.is-rejected,.ed-aff-activity-status.is-reversed { background:#dc2626; }
.ed-aff-compact-empty { padding:18px; border-radius:8px; background:#f8fafc; color:#64748b; text-align:center; font-size:15px !important; }

@media (max-width: 960px) {
    .ed-aff-user-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ed-aff-user-policy-grid { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
    .ed-aff-user-stats,.ed-aff-insights-grid { grid-template-columns:1fr; }
    .ed-aff-copy-row,.ed-aff-progress-heading { align-items:stretch; flex-direction:column; }
    .ed-aff-copy-button { width:100%; }
}

/* v2.0.1 — Premium affiliate UI polish. */
.ed-aff-user-stat {
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .04);
    transition: transform .2s ease, box-shadow .2s ease;
}
.ed-aff-user-stat:hover { transform: translateY(-2px); box-shadow:0 12px 28px rgba(15,23,42,.07); }
.ed-aff-user-stat.is-pending { background:#fff8e8; border-color:#fde68a; }
.ed-aff-user-stat.is-paid { background:#f2fff5; border-color:#bbf7d0; }
.ed-aff-user-stat.is-clicks { background:#eef7ff; border-color:#bfdbfe; }
.ed-aff-user-stat.is-conversion { background:#f3f7ff; border-color:#c7d2fe; }
.ed-aff-stat-label { display:flex !important; align-items:center; gap:6px; }

.ed-aff-user-policy-grid > div:nth-child(1) { background:#fffaf0; border-color:#fed7aa; }
.ed-aff-user-policy-grid > div:nth-child(2) { background:#f5f3ff; border-color:#ddd6fe; }
.ed-aff-user-policy-grid > div:nth-child(3) { background:#fff4fb; border-color:#fbcfe8; }
.ed-aff-user-policy-grid > div { box-shadow:0 6px 18px rgba(15,23,42,.035); }

.ed-aff-referral-card {
    background:linear-gradient(135deg,#eff8ff 0%,#f8fbff 100%);
    border-color:#93c5fd;
    box-shadow:0 10px 28px rgba(37,99,235,.08);
}
.ed-aff-referral-label strong { display:block; color:#1d4ed8; font-size:17px !important; }
.ed-aff-referral-label small { display:block; margin-top:3px; color:#64748b; font-size:15px !important; font-weight:400; }
.ed-aff-progress-track { height:12px; }
.ed-aff-progress-track span { background:linear-gradient(90deg,#2563eb,#38bdf8); }

.ed-aff-insight-card:nth-child(1) { background:#fffdf5; border-color:#fde68a; }
.ed-aff-insight-card:nth-child(2) { background:#f7fbff; border-color:#bfdbfe; }
.ed-aff-insight-card { box-shadow:0 8px 24px rgba(15,23,42,.04); }

.ed-aff-compact-empty { padding:24px 18px; border:1px dashed #cbd5e1; background:rgba(255,255,255,.72); }
.ed-aff-compact-empty .ed-aff-empty-icon { display:block; margin-bottom:8px; font-size:28px !important; }
.ed-aff-compact-empty strong { display:block; color:#334155; font-size:16px !important; }
.ed-aff-compact-empty small { display:block; margin-top:4px; color:#64748b; font-size:15px !important; }

.ed-aff-bank-card { margin-bottom:24px; padding:22px; border:1px solid #bfdbfe; border-radius:12px; background:linear-gradient(180deg,#f8fbff 0,#fff 26%); box-shadow:0 8px 24px rgba(15,23,42,.04); }
.ed-aff-bank-subtitle { margin-bottom:16px; color:#64748b; font-size:15px !important; }

#ed-aff-dashboard-widget {
    background:linear-gradient(135deg,#eff6ff,#f8fbff) !important;
    box-shadow:0 10px 28px rgba(37,99,235,.08);
}
#ed-aff-dashboard-widget > div:nth-last-child(1) > div:first-child { background:#fff8e8 !important; border-color:#fde68a !important; }
#ed-aff-dashboard-widget > div:nth-last-child(1) > a { background:#f0f9ff !important; border-color:#bae6fd !important; }
