
/* Authenticated member area */
.member-page{background:var(--cloud);min-height:100vh}.member-shell{width:100%;max-width:1180px;margin:0 auto}.mem-header{padding:0 28px;background:linear-gradient(180deg,var(--green-dark),var(--ink))}.mem-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}.member-brand{display:flex;align-items:center}.member-brand img{display:block;width:112px;height:42px;object-fit:contain;filter:brightness(0) invert(1)}.mem-nav{display:flex;align-items:center;gap:6px}.mem-nav a{padding:10px 14px;border-radius:6px;color:#cbd1cd;font-size:13px;font-weight:700}.mem-nav a:hover,.mem-nav a.active{background:rgba(255,255,255,.09);color:#fff}.member-account{position:relative;color:#fff}.member-account summary{list-style:none;cursor:pointer}.member-account summary::-webkit-details-marker{display:none}.mem-user{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.member-menu-avatar{width:36px;height:36px;object-fit:cover;border:2px solid rgba(255,255,255,.72);border-radius:50%}.member-menu-caret{color:var(--mint);font-size:15px}.member-account-menu{position:absolute;z-index:20;right:0;top:calc(100% + 12px);width:190px;padding:8px;background:#fff;border:1px solid #dfe5e0;border-radius:9px;box-shadow:0 18px 45px rgba(17,27,21,.18)}.member-account-menu a,.member-account-menu button{display:block;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:700 13px var(--font-body);text-align:left;cursor:pointer}.member-account-menu a:hover,.member-account-menu button:hover{background:#eef4ef;color:var(--green)}.member-account-menu form{margin:2px 0 0;padding-top:4px;border-top:1px solid #e7ebe8}.member-directory,.member-profile-page{min-height:calc(100vh - 66px);padding:48px 28px 80px}.page-title-row h1{margin:4px 0 0;font-size:32px}.member-eyebrow{color:var(--red);font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.member-count,.search-hint{color:#69716c;font-size:13px}.member-searchbar{display:flex;align-items:center;gap:18px;margin:28px 0}.member-searchbar input{flex:1;min-width:220px}.member-card-link{display:flex;min-height:326px;flex-direction:column;align-items:center;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.member-card-link:hover,.member-card-link:focus-visible{transform:translateY(-3px);border-color:#9db6a5;box-shadow:0 15px 34px rgba(32,36,40,.09)}.member-card-avatar{width:138px;height:138px;margin:6px auto 0;border-radius:50%;object-fit:cover;border:4px solid #eef4ef}.member-card-avatar-fallback,.member-profile-avatar-fallback,.member-profile-avatar-editor{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b6b4f,#2f8f63);color:#fff;font:800 28px var(--font-display);letter-spacing:.06em}.member-card .role{min-height:auto;line-height:1.45}.member-location{margin-top:7px;color:#7a827d;font-size:12px}.view-profile{margin-top:auto;padding-top:18px;color:var(--green);font-size:12px;font-weight:800}.member-empty,.member-no-results{grid-column:1/-1;padding:36px;background:#fff;border:1px solid #dfe5e0;border-radius:10px;text-align:center;color:#69716c}.member-pagination{margin-top:30px}.member-pagination nav{display:flex;justify-content:center}.member-pagination svg{width:18px}.member-pagination [aria-label="Pagination Navigation"]>div:first-child{display:none}.member-pagination [aria-label="Pagination Navigation"]>div:last-child{display:flex;align-items:center;gap:18px}.member-pagination span,.member-pagination a{font-size:13px}.member-notice{margin-bottom:22px;padding:15px 18px;border-left:4px solid var(--green);border-radius:7px;background:#e5f0e8;color:var(--green-dark)}.profile-card{padding-bottom:34px}.profile-head{gap:20px}.member-profile-avatar{width:151px;height:151px;flex:0 0 151px;border:5px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 4px 16px rgba(32,36,40,.14)}.profile-identity{flex:1;padding-bottom:4px}.profile-identity h1{margin:3px 0 4px;font-size:24px}.profile-identity p{margin:0;color:#5a625d;font-size:14px}.member-since{display:block;margin-top:6px;color:#7a827d;font-size:12px}.member-profile-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:18px;margin-top:20px}.member-profile-grid .card{margin:0}.member-profile-grid h2{margin:0 0 14px;font-size:16px}.member-bio{white-space:pre-line;color:#4f5752;font-size:15px;line-height:1.7}.member-muted{color:#7b837e;font-size:14px;line-height:1.55}.member-contact-row{display:grid;gap:2px;padding:12px 0;border-bottom:1px solid #e7ebe8}.member-contact-row>span{color:#7b837e;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.member-contact-row a,.member-social-link{color:var(--green);font-size:13px;font-weight:700}.member-contact-row small{color:#858d88;font-size:11px}.member-social-link{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #e7ebe8}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.mem-header{padding:0 18px}.mem-header-inner{flex-wrap:wrap;gap:10px 18px;padding:12px 0}.mem-nav{order:3;width:100%;justify-content:center;border-top:1px solid rgba(255,255,255,.1);padding-top:8px}.member-profile-grid{grid-template-columns:1fr}.profile-head{align-items:flex-start;flex-wrap:wrap}.member-profile-avatar{width:96px;height:96px;flex-basis:96px}.profile-avatar-pull{margin-top:0}.profile-head .btn{margin-left:auto}.member-searchbar{align-items:stretch;flex-direction:column}.search-hint{padding-left:3px}}
@media(max-width:520px){.member-brand img{width:90px}.mem-user>span:not(.member-menu-caret){display:none}.member-directory,.member-profile-page{padding:34px 18px 60px}.page-title-row{align-items:flex-start;flex-direction:column;gap:7px}.grid-cards{grid-template-columns:1fr}.profile-cover{height:105px}.profile-card{padding-left:20px;padding-right:20px}.profile-head{display:grid;grid-template-columns:76px 1fr}.member-profile-avatar{width:76px;height:76px;min-width:76px}.profile-identity{min-width:0}.profile-head .btn{grid-column:1/-1;width:100%;text-align:center}.profile-identity h1{font-size:20px}}

/* Directory sort + view toggle */
.member-sort-select{height:38px;padding:0 10px;border:1px solid #d9e0da;border-radius:6px;background:#fff;color:var(--ink);font-size:13px;font-weight:700}
.member-view-toggle{display:flex;gap:2px;padding:3px;border:1px solid #d9e0da;border-radius:8px;background:#fff}
.member-view-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:#7b837e;cursor:pointer}
.member-view-btn:hover{background:#f4f7f4}
.member-view-btn[aria-pressed="true"]{background:var(--green);color:#fff}
.view-list .grid-cards{grid-template-columns:1fr;gap:10px}
.view-list .member-card-link{flex-direction:row;min-height:auto;align-items:center;justify-content:flex-start;gap:18px;text-align:left;padding:14px 20px}
.view-list .member-card-avatar{width:56px;height:56px;margin:0;flex:0 0 56px}
.view-list .member-card-avatar-fallback{width:56px;height:56px;margin:0;flex:0 0 56px;font-size:18px}
.view-list .member-card-info{flex:1;min-width:0;text-align:left}
.view-list .member-location{margin-top:2px}
.view-list .view-profile{margin-top:0;padding-top:0;flex:0 0 auto}

/* Directory search and pagination */
.search-status{color:#69716c;font-size:12px;font-weight:700;white-space:nowrap}.member-search-submit{display:none}.member-pagination nav>div:first-child{display:none}.member-pagination nav>div:last-child{display:flex!important;align-items:center;justify-content:center;gap:16px}.member-pagination nav>div:last-child>div:last-child{display:flex;align-items:center;gap:3px}.member-pagination nav>div:last-child>div:last-child>span{display:inline-flex;align-items:center;gap:3px}.member-pagination nav a,.member-pagination nav span[aria-current] span,.member-pagination nav span[aria-disabled] span{display:inline-flex;min-width:36px;height:36px;align-items:center;justify-content:center;padding:0 10px;border:1px solid #d9e0da;border-radius:6px;background:#fff;color:var(--ink);font-weight:700}.member-pagination nav span[aria-current] span{border-color:var(--green);background:var(--green);color:#fff}.member-pagination nav span[aria-disabled] span{color:#a4aba6}.member-pagination p{display:none}#member-results{transition:opacity .15s ease}#member-results.is-loading{opacity:.48}

/* Member events */
.member-events-page{padding:48px 28px 80px;min-height:calc(100vh - 66px)}.member-events-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:30px}.member-events-intro h1{font-size:34px;margin:5px 0 8px}.member-events-intro p{max-width:720px;color:#5a625d;font-size:16px;line-height:1.6;margin:0}.member-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.member-event-card{overflow:hidden;background:#fff;border:1px solid #dfe5e0;border-radius:13px;box-shadow:0 10px 30px rgba(32,36,40,.05)}.member-event-visual{height:190px;padding:22px;display:flex;align-items:flex-end;justify-content:space-between;background:linear-gradient(145deg,var(--ink),var(--green-dark));background-size:cover;background-position:center;color:#fff}.member-event-visual>span{padding:5px 8px;border-radius:10px;background:var(--red);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.member-event-visual>strong{display:flex;flex-direction:column;text-align:center;font:800 13px var(--font-display);text-transform:uppercase}.member-event-visual>strong b{font-size:32px;line-height:1}.member-event-card-body{padding:24px}.member-event-card-body>span{color:var(--green);font-size:11px;font-weight:800}.member-event-card-body h2{font-size:19px;line-height:1.3;margin:9px 0}.member-event-card-body h2 a{color:var(--ink)}.member-event-card-body p{min-height:88px;color:#5a625d;font-size:13.5px;line-height:1.55}.member-event-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-top:15px;border-top:1px solid #e7ebe8;font-size:12px}.member-event-footer>span{color:#757d78}.member-event-footer a{color:var(--green);font-weight:800;white-space:nowrap}.member-event-detail{min-height:calc(100vh - 66px);background:var(--cloud)}.member-event-detail-hero{padding:54px 28px 76px;background:linear-gradient(120deg,var(--ink),var(--green-dark));color:#fff}.member-event-detail-hero .member-eyebrow{color:var(--mint)}.member-event-detail-hero h1{max-width:820px;margin:8px 0 10px;font-size:40px;line-height:1.14}.member-event-detail-hero p{color:#d6ddd8;font-size:16px}.member-back-link{display:block;margin-bottom:35px;color:#fff;font-size:13px;font-weight:700}.member-event-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;padding:0 28px 80px;margin-top:-35px}.member-event-main{display:grid;gap:20px}.member-event-main>.card{margin:0;padding:30px}.member-event-main h2,.member-event-sticky h2{font-size:18px;margin:0 0 16px}.member-event-cover{display:block;width:100%;max-height:430px;object-fit:cover;border:5px solid #fff;border-radius:12px;box-shadow:0 12px 34px rgba(32,36,40,.1)}.member-resource-card{border-top:4px solid var(--green)!important}.member-resource-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.member-lock{padding:5px 9px;border-radius:12px;background:#e4eee7;color:var(--green-dark);font-size:10px;font-weight:800;text-transform:uppercase}.rich-content{color:#4f5752;font-size:15px;line-height:1.7}.rich-content img,.rich-content video,.rich-content iframe{max-width:100%;border-radius:8px}.member-event-sticky{position:sticky;top:20px;margin:0;padding:26px}.member-event-sticky dl{margin:0 0 20px}.member-event-sticky dt{margin-top:13px;color:#7b837e;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.member-event-sticky dd{margin:3px 0;color:var(--ink);font-size:14px;font-weight:700}.member-event-sticky .btn{display:block;width:100%;margin-top:9px}.member-event-sticky .text-link{display:block;font-size:12px}.event-rsvp-status{color:var(--red);font-size:12px}.member-heading-count{color:var(--green);font-size:13px}.member-attendee-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.member-attendee-grid>a,.member-attendee-grid>div.member-attendee-item{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e4e9e5;border-radius:8px;color:var(--ink)}.member-attendee-grid img{width:42px;height:42px;border-radius:50%;object-fit:cover}.member-attendee-avatar-fallback{display:flex;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#0b6b4f,#2f8f63);color:#fff;font:800 13px var(--font-display);letter-spacing:.04em}.member-attendee-grid strong,.member-attendee-grid small{display:block}.member-attendee-grid strong .member-lock{margin-left:6px;vertical-align:middle}.member-attendee-grid strong{font-size:12.5px}.member-attendee-grid small{color:#7b837e;font-size:11px}

/* Member profile editor */
.member-edit-page{padding:48px 28px 80px;min-height:calc(100vh - 66px)}.member-edit-shell{max-width:920px}.member-edit-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}.member-edit-heading h1{font-size:34px;margin:5px 0}.member-edit-heading p{color:#5a625d;margin:0}.member-edit-form{display:grid;gap:20px}.member-edit-card{padding:30px;background:#fff;border:1px solid #dfe5e0;border-radius:13px;box-shadow:0 10px 30px rgba(32,36,40,.05)}.member-edit-section-title{display:flex;gap:16px;padding-bottom:20px;margin-bottom:24px;border-bottom:1px solid #e5eae6}.member-edit-section-title>span{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:50%;background:#e5f0e8;color:var(--green);font:800 11px var(--font-display)}.member-edit-section-title h2{font-size:18px;margin:0 0 3px}.member-edit-section-title p{color:#7a827d;font-size:13px;margin:0}.member-edit-card .field{display:block;margin-bottom:18px}.member-edit-card .field>span{display:block;margin-bottom:7px;font-size:12px;font-weight:800}.member-edit-card .field small{display:block;margin-top:6px;color:#7a827d}.member-edit-card .field textarea{resize:vertical}.member-edit-card .field.is-muted{opacity:.55}.visibility-options{display:flex;gap:24px;flex-wrap:wrap;margin:-4px 0 20px;padding:13px 15px;background:#f4f7f4;border-radius:7px;font-size:12.5px;font-weight:700}.visibility-options label{display:flex;align-items:center;gap:7px}.profile-photo-field{display:flex;align-items:center;gap:22px;margin-bottom:20px}.profile-photo-field img{width:82px;height:82px;border-radius:50%;object-fit:cover}.profile-photo-field .field{flex:1;margin:0}.member-edit-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:5px}.member-profile-avatar-editor{width:82px;height:82px;font-size:22px;border:0;box-shadow:none}
@media(max-width:900px){.member-event-grid{grid-template-columns:repeat(2,1fr)}.member-event-detail-grid{grid-template-columns:1fr}.member-event-sticky{position:static}.member-events-intro{align-items:flex-start;flex-direction:column}.member-attendee-grid{grid-template-columns:1fr}}
@media(max-width:600px){.member-events-page,.member-edit-page{padding:34px 18px 60px}.member-event-grid{grid-template-columns:1fr}.member-event-detail-hero{padding:40px 18px 64px}.member-event-detail-hero h1{font-size:31px}.member-event-detail-grid{padding:0 18px 60px}.member-edit-heading{align-items:flex-start;flex-direction:column}.member-edit-card{padding:24px 20px}.profile-photo-field{align-items:flex-start;flex-direction:column}.visibility-options{align-items:flex-start;flex-direction:column;gap:10px}.member-search-submit{display:inline-flex}.search-status{white-space:normal}}

/* Existing-member intake questionnaire backfill nudge */
.intake-update-shell{padding-top:22px}.intake-update-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:0}.intake-update-notice a{font-weight:800;white-space:nowrap}
@media(max-width:600px){.intake-update-notice{align-items:flex-start;flex-direction:column;gap:10px}}

/* Questionnaire answers on the member's own profile */
.member-questionnaire-card{margin-top:18px}.member-questionnaire-section-title{margin:22px 0 4px;font-size:13px;color:var(--green);text-transform:uppercase;letter-spacing:.06em}.member-questionnaire-section-title:first-of-type{margin-top:14px}.member-questionnaire-card .member-contact-row{grid-template-columns:minmax(200px,1fr) 2fr;align-items:baseline;gap:12px}.member-questionnaire-card .member-contact-row>span{padding-top:2px}.member-questionnaire-card .member-contact-row strong{color:var(--ink);font-size:14px;font-weight:700}
@media(max-width:600px){.member-questionnaire-card .member-contact-row{grid-template-columns:1fr}}
.member-notice-warning{border-left-color:var(--red);background:#fdecec;color:#8a1218;display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.member-notice-warning form{margin:0}

/* First-login welcome onboarding modal */
.welcome-modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(32,36,40,.6)}
.welcome-modal{position:relative;width:100%;max-width:480px;max-height:calc(100vh - 40px);overflow-y:auto;padding:40px 36px 32px;background:#fff;border-radius:16px;box-shadow:0 25px 60px rgba(17,27,21,.28);text-align:center}
.welcome-modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#8a918d;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center}
.welcome-modal-close:hover{background:#f2f5f2;color:var(--ink)}
.welcome-modal-logo{display:block;width:130px;height:auto;margin:0 auto 22px}
.welcome-modal h2{font-size:23px;line-height:1.3}
.welcome-modal-lede{margin:8px 0 22px;color:var(--green);font-weight:700;font-size:14px}
.welcome-modal-body{text-align:left}
.welcome-modal-body p{margin:0 0 14px;color:#4f5752;font-size:14.5px;line-height:1.65}
.welcome-modal-body p:last-child{margin-bottom:0}
.welcome-modal-actions{margin-top:26px}
.welcome-modal-actions .btn{width:100%}
@media(max-width:520px){.welcome-modal{padding:32px 22px 26px}}
