.member-rewards { --rewards-ink:#102b32; --rewards-line:#dce6e9; color:var(--rewards-ink); max-width:1280px; margin-inline:auto; }
.rewards-page-heading { margin-bottom:22px; }
.rewards-page-heading h1 { margin:0 0 5px; font-size:clamp(1.65rem,2.6vw,2rem); letter-spacing:-.04em; }
.rewards-page-heading p,.rewards-section-heading p { margin:0; color:#637784; font-size:.95rem; }
.rewards-top-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr); gap:20px; }
.rewards-summary,.rewards-invite,.rewards-invite-progress,.rewards-fees { min-width:0; background:#fff; border:1px solid var(--rewards-line); border-radius:18px; }
.rewards-summary { padding:24px 26px; }
.rewards-current { display:flex; align-items:center; gap:16px; padding-bottom:21px; border-bottom:1px solid var(--rewards-line); }
.rewards-current h2 { margin:1px 0; font-size:1.6rem; letter-spacing:-.04em; }
.rewards-current p,.rewards-current>div>span { margin:0; font-size:.85rem; color:#637784; }
.rewards-level-seal { display:grid; place-items:center; width:62px; height:72px; background:#e6f7f0; color:#087f67; border-radius:14px 14px 24px 24px; flex:none; }
.rewards-level-seal svg { width:22px; height:22px; margin-top:7px; }
.rewards-level-seal strong { font-size:1.45rem; margin-top:-7px; }
.rewards-rate-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:20px 0 12px; flex-wrap:wrap; }
.rewards-rate-heading h3 { font-size:.9rem; margin:0; }
.rewards-terms { display:flex; gap:2px; padding:3px; background:#f0f5f3; border-radius:9px; }
.rewards-terms button { border:0; background:transparent; color:#536c74; font-size:.8rem; padding:8px 10px; min-height:36px; border-radius:7px; cursor:pointer; }
.rewards-terms button[aria-pressed="true"] { color:#086a58; font-weight:700; background:#fff; box-shadow:0 1px 4px #17372c14; }
.rewards-rate { display:flex; gap:18px; align-items:center; margin-bottom:22px; }
.rewards-rate>strong { font-size:3.4rem; line-height:1; letter-spacing:-.06em; color:#087f67; font-variant-numeric:tabular-nums; }
.rewards-rate>div { display:grid; gap:4px; max-width:235px; font-size:.85rem; }
.rewards-rate small { color:#637784; font-size:.78rem; }
.rewards-next,.rewards-progress-caption { display:flex; justify-content:space-between; gap:10px; font-size:.82rem; }
.rewards-next>strong { color:#087f67; }
.rewards-summary progress { width:100%; height:7px; display:block; margin:12px 0 9px; border:0; border-radius:8px; overflow:hidden; background:#e6efeb; accent-color:#087f67; }
.rewards-summary progress::-webkit-progress-bar { background:#e6efeb; }
.rewards-summary progress::-webkit-progress-value { background:#087f67; border-radius:8px; }
.rewards-summary progress::-moz-progress-bar { background:#087f67; border-radius:8px; }
.rewards-progress-caption { color:#637784; font-size:.76rem; }
.rewards-footnote { margin:18px 0 0; color:#637784; line-height:1.6; font-size:.8rem; }
.rewards-invite { padding:23px; background:#fafffd; }
.rewards-symbol { display:grid; place-items:center; width:40px; height:40px; border-radius:12px; color:#087f67; background:#e4f5ed; margin-bottom:12px; }
.rewards-symbol svg { width:23px; height:23px; }
.rewards-invite h2,.rewards-invite-progress h2,.rewards-fees h2 { margin:0; font-size:1.15rem; letter-spacing:-.025em; }
.rewards-invite>p { font-size:.86rem; color:#637784; line-height:1.55; margin:8px 0 18px; }
.rewards-invite label { display:block; font-size:.78rem; font-weight:600; margin-bottom:6px; }
.rewards-link-input { width:100%; min-width:0; border:1px solid #cddcde; background:#fff; border-radius:9px; height:44px; padding:10px 12px; color:#49616b; font-size:.8rem; text-overflow:ellipsis; }
.rewards-share-actions { display:grid; grid-template-columns:1.2fr 1fr; gap:8px; margin-top:10px; }
.rewards-share-actions .button { min-height:44px; padding:10px; gap:8px; border-radius:9px; font-size:.88rem; }
.rewards-share-actions svg { width:18px; height:18px; }
.rewards-code { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; font-size:.74rem; color:#637784; margin-top:12px; }
.rewards-code code { font-family:inherit; color:#234e48; font-weight:600; }
.rewards-code a { display:inline-flex; align-items:center; gap:4px; font-size:.74rem; }
.rewards-code svg { width:14px; height:14px; }
.rewards-invite .rewards-feedback { min-height:18px; margin:8px 0 0; color:#087f67; font-size:.78rem; }
.rewards-invite .rewards-local-note { margin:6px 0 0; font-size:.74rem; }
.rewards-fees { margin-top:20px; padding:22px 24px; }
.rewards-section-heading { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:18px; }
.rewards-section-heading p { margin-top:4px; font-size:.84rem; }
.rewards-section-heading>a { display:inline-flex; align-items:center; gap:6px; flex:none; font-size:.83rem; }
.rewards-section-heading svg { width:17px; height:17px; }
.rewards-table-scroll { overflow-x:auto; border:1px solid var(--rewards-line); border-radius:12px; }
.rewards-fees table { border-collapse:collapse; width:100%; min-width:480px; text-align:left; font-size:.9rem; }
.rewards-fees th,.rewards-fees td { padding:13px 16px; border-bottom:1px solid #e6eeeb; }
.rewards-fees thead th { background:#f5f8f7; font-size:.76rem; font-weight:600; color:#637784; white-space:nowrap; }
.rewards-fees tbody th { font-weight:600; }
.rewards-fees tr:last-child>* { border-bottom:0; }
.rewards-fees td:not(:first-child) { font-variant-numeric:tabular-nums; }
.rewards-fees td:nth-last-child(-n+3) { font-weight:650; }
.rewards-fees tr.is-current { background:#eaf8f2; }
.rewards-fees tr.is-current th { box-shadow:inset 3px 0 #087f67; }
.rewards-row-level { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; }
.rewards-row-level svg { width:17px; height:17px; color:#087f67; }
.rewards-you { display:inline-block; font-size:.66rem; background:#d4efe3; color:#066951; padding:2px 6px; border-radius:5px; margin-left:8px; white-space:nowrap; }
.rewards-steps { list-style:none; padding:22px 2px; margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.rewards-steps li { display:flex; gap:11px; align-items:flex-start; }
.rewards-steps li>span { display:grid; place-items:center; border:1px solid #d3e2dc; border-radius:50%; width:28px; height:28px; flex:none; font-weight:650; font-size:.78rem; color:#087f67; }
.rewards-steps strong { font-size:.83rem; font-weight:600; }
.rewards-steps small { display:block; color:#637784; font-size:.77rem; margin-top:3px; }
.rewards-invite-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; }
.rewards-invite-progress { padding:26px; }
.rewards-invite-counts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:24px 0; }
.rewards-invite-counts>div { display:grid; gap:4px; border-right:1px solid var(--rewards-line); }
.rewards-invite-counts>div:last-child { border-right:0; }
.rewards-invite-counts strong { font-size:2rem; line-height:1.2; letter-spacing:-.04em; }
.rewards-invite-counts span { color:#637784; font-size:.78rem; }
.rewards-invite-benefit { display:flex; gap:13px; padding-top:18px; border-top:1px solid var(--rewards-line); margin-bottom:18px; }
.rewards-invite-benefit>svg { width:25px; height:25px; color:#087f67; flex:none; }
.rewards-invite-benefit p { font-size:.85rem; color:#637784; margin:5px 0 0; }
.rewards-invitation-list { margin-top:0; }
.member-rewards .referral-row { padding-block:13px; }
.member-rewards .referral-row>span:nth-child(2) { min-width:0; }
.member-rewards .referral-row strong { overflow-wrap:anywhere; }
.member-rewards button:focus-visible,.member-rewards a:focus-visible,.rewards-link-input:focus-visible,.rewards-table-scroll:focus-visible { outline:3px solid #0c7565; outline-offset:3px; }
.invite-preview-page { max-width:520px; margin:8vh auto; padding:20px; }
.invite-preview-page .rewards-summary { padding:26px; }
.invite-preview-page h1 { font-size:1.75rem; letter-spacing:-.04em; margin:16px 0 10px; }
.invite-preview-page p { color:#637784; }
.invite-preview-page input { width:100%; margin:8px 0 14px; }
@media(max-width:1000px) { .rewards-top-grid { grid-template-columns:minmax(0,1fr); } }
@media(max-width:650px) {
 .rewards-invite-grid { grid-template-columns:minmax(0,1fr); }
 .rewards-summary,.rewards-invite,.rewards-invite-progress { padding:18px; }
 .rewards-fees { padding:18px 14px; }
 .rewards-section-heading { align-items:flex-start; flex-wrap:wrap; }
 .rewards-steps { grid-template-columns:minmax(0,1fr); gap:16px; }
 .rewards-rate>strong { font-size:2.8rem; }
 .rewards-rate { gap:12px; }
 .rewards-fees th,.rewards-fees td { padding:12px; }
 .rewards-you { display:block; width:max-content; margin:4px 0 0; }
 .member-rewards .referral-row { flex-wrap:wrap; }
}
