/* Shared membership navigation: independent of the voucher and membership page styles. */
#memberManagementNav{box-sizing:border-box;margin:0 0 24px;padding:24px;background:#fff;border:1px solid #e5e8ed;border-radius:20px;box-shadow:0 6px 24px rgba(18,43,75,.045);color:#132d50;font-family:inherit}
#memberManagementNav *{box-sizing:border-box}
#memberManagementNav .vm-service-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}
#memberManagementNav .vm-service-eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#99773c}
#memberManagementNav h2{margin:5px 0 0;font-size:23px;line-height:1.3;font-weight:750;color:#132d50}
#memberManagementNav .vm-service-caption{font-size:12px;color:#7a8594;white-space:nowrap}
#memberManagementNav .vm-service-grid{position:static;inset:auto;transform:none;width:auto;z-index:auto;background:transparent;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#memberManagementNav a.vm-service-button{display:flex;align-items:center;gap:12px;min-width:0;min-height:94px;padding:17px 15px;background:#f7f9fc;color:#183658;border:1px solid #e1e7ef;border-radius:13px;text-decoration:none!important;line-height:1.5;box-shadow:0 2px 3px rgba(18,43,75,.025);transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;-webkit-tap-highlight-color:transparent}
#memberManagementNav a.vm-service-button:visited{color:#183658}
#memberManagementNav .vm-service-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;background:#e9eff7;border:1px solid #dfe7f2;border-radius:12px;color:#244b76}
#memberManagementNav .vm-service-icon svg{width:23px;height:23px;display:block}
#memberManagementNav .vm-service-copy{min-width:0;flex:1;display:block}
#memberManagementNav .vm-service-copy strong{display:block;font-size:15px;line-height:1.45;font-weight:700;letter-spacing:.15px}
#memberManagementNav .vm-service-copy small{display:block;margin-top:4px;color:#687789;font-size:11px;line-height:1.55;font-weight:400}
#memberManagementNav .vm-service-arrow{color:#9bacbf;font-size:23px;line-height:1;flex:0 0 8px}
#memberManagementNav a.vm-service-button[aria-current=page]{background:#142f54;border-color:#142f54;color:#fff;box-shadow:0 5px 12px rgba(18,43,75,.13)}
#memberManagementNav a[aria-current=page] .vm-service-icon{background:#294767;border-color:#385575;color:#e6c98f}
#memberManagementNav a[aria-current=page] .vm-service-copy small,#memberManagementNav a[aria-current=page] .vm-service-arrow{color:#d4deeb}
#memberManagementNav a.vm-service-button:focus-visible{outline:3px solid #bb9657;outline-offset:3px}
#memberManagementNav .vm-service-owner{margin-top:22px;padding-top:18px;border-top:1px solid #e8e9ed}
#memberManagementNav .vm-service-owner[hidden]{display:none!important}
#memberManagementNav .vm-service-owner-heading{font-size:12px;font-weight:700;letter-spacing:1px;color:#947340;margin-bottom:12px}
#memberManagementNav .vm-service-owner .vm-service-button{background:#fcfaf6;border-color:#ebe4d8}
#memberManagementNav .vm-service-owner .vm-service-icon{background:#f4ede1;border-color:#eadfc9;color:#8e6a33}
@media(hover:hover){#memberManagementNav a.vm-service-button:hover{transform:translateY(-2px);background:#edf2f8;border-color:#bfcfe2;box-shadow:0 6px 12px rgba(18,43,75,.08)}#memberManagementNav a.vm-service-button[aria-current=page]:hover{background:#1c3c64;color:white}}
@media(max-width:680px){#memberManagementNav{padding:18px 14px;border-radius:16px}#memberManagementNav .vm-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#memberManagementNav .vm-service-caption{display:none}#memberManagementNav a.vm-service-button{min-height:118px;align-items:flex-start;flex-wrap:wrap;gap:9px;padding:13px}#memberManagementNav .vm-service-icon{width:32px;height:32px;flex-basis:32px;border-radius:9px}#memberManagementNav .vm-service-icon svg{width:20px;height:20px}#memberManagementNav .vm-service-copy{flex-basis:100%}#memberManagementNav .vm-service-copy strong{font-size:14px}#memberManagementNav .vm-service-copy small{font-size:10.5px}#memberManagementNav .vm-service-arrow{display:none}#memberManagementNav h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){#memberManagementNav a.vm-service-button{transition:none}}
.referral-record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}
.referral-record-card{padding:20px;border:1px solid #e0e6ef;border-radius:15px;background:white;box-shadow:0 4px 14px rgba(18,43,75,.04)}
.referral-record-card h2{font-size:19px;margin:0 0 6px}.referral-record-card .referral-status{font-size:11px;color:#52667d}.referral-record-card .referral-code{font-size:20px;letter-spacing:3px;font-weight:700;color:#15365c}
.referral-record-card .referral-count{font-size:27px;font-weight:750;color:#15365c}.referral-record-card .referral-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0;padding:14px;background:#f5f8fc;border-radius:10px}.referral-record-card small{display:block;color:#6d7a8b;font-size:11px}.referral-record-card button{min-height:42px;width:100%;background:#15365c;color:white;border-color:#15365c;border-radius:9px}
#referralDialog{max-width:600px;width:calc(100% - 32px);max-height:80vh;overflow:auto;border:1px solid #dce3ec;border-radius:18px;padding:24px;color:#183658}#referralDialog::backdrop{background:rgba(13,30,50,.4)}#referralRows p{border-bottom:1px solid #e5e9ef;padding-bottom:12px}
