[hidden]{display:none!important}.portal-auth{max-width:1160px;margin:auto;padding:10px 28px;display:flex;justify-content:space-between;gap:16px;font-size:13px;color:#6d6070;background:#faf7fb}.portal-auth>div{display:flex;gap:20px}.portal-auth a{color:#673f70;font-weight:650}.nav{flex-wrap:wrap}.portal-panel{background:white;border:1px solid #e6dee8;border-radius:18px;padding:28px;margin:24px 0;min-width:0}.portal-panel h2{font-size:23px;margin:0 0 20px}.portal-panel h3{font-size:20px;margin:0 0 14px}.portal-panel p{line-height:1.8;color:#726775}.portal-gate{display:flex;gap:24px;align-items:flex-start;border:1px solid #e2d4e6;border-radius:18px;background:#f5eff7;padding:32px;margin:28px 0}.portal-gate h3{font-size:24px;margin:0 0 12px}.portal-gate p{line-height:1.85;margin:0 0 20px;color:#726775}.portal-gate-icon{background:#e9dced;color:#633c6f;width:64px;height:64px;flex-shrink:0;border-radius:18px;display:grid;place-content:center;font-size:25px}.portal-field{display:flex;flex-direction:column;gap:9px;margin:0 0 20px;min-width:0;font-size:14px;font-weight:600}.portal-field input,.portal-field select{width:100%;padding:12px 14px;border:1px solid #d8cddc;border-radius:9px;background:#fff;color:#35273b;font:inherit;min-height:47px}.portal-field input:focus,.portal-field select:focus{outline:3px solid #d7c1e3;outline-offset:1px;border-color:#693f77}.portal-field input[type=file]{font-size:13px;background:#fcfafc}.portal-field small,.portal-help{font-weight:400;font-size:13px!important;line-height:1.8!important;color:#756779!important}.portal-help a{color:#693f77;text-decoration:underline}.portal-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.portal-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.8;color:#615368;margin:22px 0}.portal-check input{margin-top:6px;flex-shrink:0;accent-color:#673b75;width:17px;height:17px}.portal-options{border:0;padding:0;margin:24px 0}.portal-options legend{font-size:14px;color:#77667b;margin:0 0 10px}.portal-options>label{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid #ddd0e2;border-radius:12px;margin:10px 0;cursor:pointer}.portal-options>label:has(input:checked){background:#f5edf8;border-color:#8e60a0;box-shadow:0 0 0 1px #8e60a0}.portal-options input{accent-color:#653876;width:18px;height:18px}.portal-options span{flex:1;font-weight:650}.portal-options small{display:block;color:#7b6a80;font-weight:400;font-size:13px;margin-top:6px}.portal-options b{font-size:17px;white-space:nowrap}.portal-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.portal-two{display:grid;grid-template-columns:1.2fr 1fr;gap:24px}.portal-two>.portal-panel{margin:24px 0 0}.portal-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.portal-summary>div{padding:24px;background:#f4eef6;border-radius:14px;min-width:0}.portal-summary span{font-size:13px;color:#806b86}.portal-summary strong{display:block;font-size:29px;margin:13px 0;color:#4d2e59}.portal-summary small{font-size:12px;color:#7e6c83;line-height:1.7}.portal-summary strong small{font-size:16px}.portal-membership-card{border-radius:13px;padding:26px;background:linear-gradient(125deg,#51285e,#896393);color:white;margin:20px 0}.portal-membership-card span{font-size:11px;letter-spacing:2px;opacity:.7}.portal-membership-card h3{margin-top:24px;font-size:27px}.portal-membership-card p{color:#eee3f1;font-size:14px}.portal-membership-card .portal-badge{background:#ffffff26;color:#fff}.portal-record{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid #eee7f0}.portal-record>div:last-child{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.portal-record p{font-size:14px;margin:10px 0 0}.portal-record small{color:#7c6885}.portal-record .button,.portal-table .button{font-size:12px;padding:9px 12px;min-height:36px}.portal-badge{display:inline-block;border-radius:30px;padding:5px 10px;font-size:12px;line-height:1.5;font-weight:600;white-space:nowrap}.portal-badge.good{background:#e9f3ec;color:#387448}.portal-badge.waiting{background:#fff2d9;color:#8a6223}.portal-badge.muted{background:#eee9ef;color:#796980}.portal-table-wrap{overflow:auto;border:1px solid #eee5f0;border-radius:10px;margin:20px 0}.portal-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.portal-table th{padding:14px 16px;background:#f8f4f9;color:#79647f;white-space:nowrap;font-weight:600}.portal-table td{padding:17px 16px;border-top:1px solid #eee8f0;line-height:1.9;max-width:310px;overflow-wrap:anywhere;vertical-align:top}.portal-table td:first-child{min-width:120px}.portal-table tr:hover{background:#fdfbfe}.portal-empty{padding:38px 20px;text-align:center;background:#fcfafc;border:1px dashed #e0d6e5;border-radius:10px;margin:20px 0}.portal-empty>span{font-size:30px;color:#c4adce}.portal-empty p{font-size:14px;color:#98869e}.portal-payment-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:32px;margin-top:32px}.portal-bank{background:#f5eff7;border-radius:12px;padding:26px;align-self:start}.portal-bank h3{margin-top:16px}.portal-bank strong{font-size:27px;letter-spacing:1px;display:block;overflow-wrap:anywhere}.portal-bank small{font-size:12px;line-height:1.8;color:#897590}.portal-callout{padding:20px 24px;border-left:3px solid #b299bd;background:#f8f3fa;border-radius:0 10px 10px 0;margin:20px 0;font-size:14px;line-height:1.8;color:#6d5876}.portal-callout p{margin:8px 0 0}.portal-section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.portal-section-head h2{margin:0}.portal-tabs{display:flex;flex-wrap:wrap;gap:9px;border-bottom:1px solid #e2d8e8;padding:0 0 20px;margin:0 0 28px}.portal-tabs button{background:#fff;border:1px solid #e0d5e5;border-radius:24px;padding:10px 16px;color:#6f5879;font:inherit;font-size:13px;cursor:pointer}.portal-tabs button[aria-pressed=true]{background:#583163;color:white;border-color:#583163}.portal-queue{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.portal-queue button{display:flex;flex-direction:column;text-align:left;gap:16px;padding:24px;background:white;border:1px solid #e5dae8;border-radius:14px;font:inherit;color:#725c7c;cursor:pointer}.portal-queue strong{font-size:32px;color:#4e2e5d}.portal-queue span:last-child{font-size:12px}.portal-form-error,.portal-error-text{color:#ac304f!important}.portal-form-error{background:#fff0f2;border-radius:8px;padding:13px 16px;font-size:14px}.portal-toast{position:fixed;z-index:150;bottom:28px;left:50%;transform:translateX(-50%);max-width:min(680px,calc(100% - 32px));width:max-content;background:#3d614b;color:white;border-radius:12px;box-shadow:0 8px 40px #271b3433;padding:18px 24px;font-size:14px;line-height:1.8}.portal-toast.error{background:#8c364d}.portal-dialog{border:1px solid #ddd0e4;border-radius:20px;padding:30px;max-width:640px;width:calc(100% - 32px);max-height:88vh;color:#45334f;box-shadow:0 20px 100px #28172f44}.portal-dialog::backdrop{background:#2f1b3b66;backdrop-filter:blur(3px)}.portal-dialog h2{font-size:23px}.portal-dialog p{font-size:14px;line-height:1.9}.button:disabled{opacity:.5;cursor:wait}.portal-panel a:focus-visible,.portal-tabs button:focus-visible{outline:3px solid #b5a0d1;outline-offset:4px}.portal-table .text-link{font-size:12px}.site-header{position:relative!important}
@media(max-width:760px){.portal-auth{padding:10px 18px;font-size:11px;align-items:center}.portal-auth>span{max-width:65%;overflow-wrap:anywhere}.portal-auth>div{gap:12px}.portal-panel{padding:20px;margin:18px 0}.portal-panel h2{font-size:20px}.portal-two,.portal-payment-grid{grid-template-columns:1fr;gap:16px}.portal-two>.portal-panel{margin:0}.portal-summary{gap:8px;margin:20px 0}.portal-summary>div{padding:15px 10px}.portal-summary strong{font-size:18px;line-height:1.4}.portal-summary span{font-size:11px}.portal-summary small{font-size:10px}.portal-summary strong small{font-size:12px}.portal-field-grid{grid-template-columns:1fr;gap:0}.portal-gate{padding:24px 20px;gap:15px}.portal-gate-icon{width:40px;height:40px;font-size:18px;border-radius:12px}.portal-gate h3{font-size:21px}.portal-gate p{font-size:14px}.portal-record{align-items:flex-start;flex-direction:column;gap:14px}.portal-queue{grid-template-columns:1fr 1fr}.portal-queue button{padding:20px}.portal-section-head{align-items:flex-start;flex-direction:column}.portal-dialog{padding:23px}.portal-dialog .portal-section-head{flex-direction:row;align-items:center}.portal-dialog h2{font-size:19px}.portal-options>label{padding:16px 12px;gap:9px}.portal-options b{font-size:14px}.portal-options span{font-size:14px}.portal-options small{font-size:11px}.portal-bank strong{font-size:24px}.portal-table td,.portal-table th{padding:12px}.portal-tabs{gap:6px}.portal-tabs button{font-size:12px;padding:9px 12px}.portal-gate .portal-actions{gap:8px}.portal-gate .button{font-size:13px;padding:12px 15px}}

/* Search and select a valid member by name */
.member-picker{margin:20px 0}.member-picker>.portal-field{margin-bottom:9px}
.member-picker-search{display:flex;gap:10px}.member-picker-search input{flex:1;min-width:0;border:1px solid #d8cddc;border-radius:9px;background:#fff;padding:12px 14px;font:inherit;font-size:15px;min-height:47px;color:#35273b}.member-picker-search input:focus{outline:3px solid #d7c1e3;outline-offset:1px;border-color:#693f77}.member-picker-search .button{flex-shrink:0;padding:10px 16px;font-size:13px}
.member-picker-status{font-size:13px!important;line-height:1.7!important;margin:10px 0!important;color:#705879!important}
.member-picker-results{list-style:none;padding:0;margin:12px 0;border:1px solid #dacbdf;border-radius:12px;max-height:300px;overflow:auto;background:#fff}.member-picker-results li+li{border-top:1px solid #eee6f1}.member-picker-results button{display:flex;align-items:center;gap:10px;text-align:left;width:100%;padding:14px 16px;background:#fff;border:0;font:inherit;cursor:pointer;color:#44304e}.member-picker-results button:hover,.member-picker-results button:focus-visible{background:#f3ebf7;outline:2px solid #91669e;outline-offset:-2px}.member-picker-results strong{font-size:15px;overflow-wrap:anywhere}.member-picker-results span{font-size:13px;color:#776080}.member-picker-results small{font-size:12px;margin-left:auto;flex-shrink:0;color:#673c77}
.member-picker-selected{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:#f3edf7;border:1px solid #d5c0e0;border-radius:10px;font-size:14px;line-height:1.7;color:#573367}.member-picker-selected button{border:0;background:transparent;color:#673c77;font:inherit;font-size:12px;text-decoration:underline;cursor:pointer;flex-shrink:0}
@media(max-width:640px){.member-picker-results button{flex-wrap:wrap}.member-picker-search{gap:8px}.member-picker-search .button{padding:10px 12px}.member-picker-selected{align-items:flex-start}}

/* Event desk, attendance and registration rates. */
.event-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin:24px 0}.event-toolbar h2{font-size:28px;margin:10px 0}.event-toolbar p{font-size:14px;color:#76637c;line-height:1.8;margin:0}.event-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:24px 0}.event-stats article{background:white;border:1px solid #e3d8e7;padding:22px 18px;border-radius:16px}.event-stats span{display:block;font-size:13px;color:#765c7f;line-height:1.7}.event-stats strong{display:block;color:#50305e;font-size:34px;font-weight:550;line-height:1.5;margin:9px 0}.event-stats em{font-style:normal;font-size:22px;color:#ad95b7}.event-stats small{display:block;color:#7f6b87;font-size:12px;line-height:1.8}.event-quorum h2 small{font-size:13px;font-weight:400;display:block;line-height:1.8;margin-top:9px;color:#806e88}.event-quorum>p>strong{font-size:36px;color:#54315e;font-weight:550}.event-quorum>p>span{font-size:14px}.event-track{height:9px;background:#f0e7f2;border-radius:12px;position:relative;min-width:20px}.event-track i{display:block;height:100%;background:#9361a4;border-radius:12px;min-width:0}.quorum-track{margin:22px 0}.quorum-track b{position:absolute;top:-6px;bottom:-6px;width:2px;background:#593262}.event-quorum-detail{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;line-height:1.8;color:#7e6589}.event-quorum .button{margin-top:10px}.event-rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.event-rate-grid>.portal-panel{margin:0}.event-rate-list{display:grid;gap:17px}.event-rate{display:grid;grid-template-columns:65px minmax(20px,1fr) 68px 42px;gap:12px;align-items:center;font-size:13px;color:#674870}.event-rate>span:nth-child(3),.event-rate b{text-align:right;font-variant-numeric:tabular-nums}.event-rate b{font-weight:500}.event-attendance-table td:first-child{min-width:40px}.event-attendance-table td:nth-child(2){min-width:140px}.event-attendance-table td:nth-child(3){min-width:140px}
@media(max-width:1000px){.event-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.event-rate-grid{grid-template-columns:1fr}}@media(max-width:600px){.event-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.event-stats article{padding:18px 14px}.event-stats strong{font-size:30px}.event-stats article:last-child{grid-column:1/-1}.event-toolbar h2{font-size:24px}.event-rate{grid-template-columns:49px minmax(20px,1fr) 61px 40px;gap:8px;font-size:12px}.event-quorum-detail{flex-direction:column}.event-toolbar>.button{width:100%;justify-content:center}}

.profile-manual{border:0;padding:0;margin:0;min-width:0}.member-picker [hidden],.profile-manual[hidden]{display:none!important}

.admin-role-options{border:1px solid var(--line,#ddd);border-radius:12px;padding:16px;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.admin-role-options legend{padding:0 8px;font-weight:600}.admin-role-option{align-items:flex-start!important;margin:0!important}.admin-role-option small{display:block;line-height:1.7;margin-top:5px;color:#746d76}#admin-account-editor{scroll-margin-top:160px}

#admin-accounts .portal-table{min-width:620px}#admin-accounts .portal-table td:nth-child(2){min-width:105px}#admin-accounts .portal-table td:last-child{min-width:165px}

.membership-mode{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.membership-person{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;background:#f5eff7;border-radius:12px}.membership-person small{display:block;margin-top:8px;overflow-wrap:anywhere}.membership-progress,.membership-amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.membership-progress span{padding:14px;border-radius:10px;background:#f3eef5;color:#796881;font-size:14px}.membership-progress .done{background:#e9f3ec;color:#387448}.membership-amounts{grid-template-columns:repeat(4,1fr)}.membership-amounts>div{padding:16px;background:#faf7fb;border:1px solid #eee5f0;border-radius:12px}.membership-amounts span{font-size:12px;color:#76657d}.membership-amounts strong{display:block;font-size:22px;margin-top:12px;color:#583163}.membership-fee-guide,.membership-bank-reference{padding:22px;border:1px solid #e3d8e7;border-radius:14px;background:#faf7fb;margin:24px 0}.membership-fee-guide summary,.membership-bank-reference summary{cursor:pointer;font-weight:600;color:#583163}.membership-fee-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:24px}.membership-fee-grid article{padding:20px;background:white;border-radius:10px}.membership-fee-grid h3{font-size:18px;margin:0 0 14px}.membership-fee-grid strong{font-size:25px;color:#583163}.membership-fee-grid p,.membership-fee-grid small{line-height:1.8}.bank-account-details{margin:20px 0}.bank-account-details>div{margin:12px 0}.bank-account-details dt{font-size:12px;color:#756779;margin-bottom:4px}.bank-account-details dd{margin:0;line-height:1.8;overflow-wrap:anywhere}.portal-bank .bank-account-number{font-size:clamp(22px,4vw,29px);letter-spacing:.04em;font-variant-numeric:tabular-nums}.membership-bank-reference .portal-bank{margin-top:22px}.membership-payment-history{border-top:1px solid #e3d8e7;padding-top:20px}#join-form{scroll-margin-top:30px}@media(max-width:650px){.membership-fee-grid{grid-template-columns:1fr}.membership-amounts{grid-template-columns:1fr 1fr}.membership-progress{grid-template-columns:1fr}.membership-mode .button{flex:1 1 100%}.membership-person{align-items:flex-start}.membership-person>span{min-width:0}.membership-amounts strong{font-size:19px}#membership-plans .portal-options>label{flex-wrap:wrap}#membership-plans .portal-options b{margin-left:32px}}

.account-transfer-grid{margin-top:0;align-items:center}.account-transfer-guide h2{margin:18px 0}.account-transfer-guide p{line-height:1.9}.account-transfer-guide .button{margin-top:16px}#account-fees{scroll-margin-top:24px}
