/* Shared action tokens and manual admission layout. */
:root{--community-accent:#175cd3;--community-accent-hover:#1849a9;--community-text:#182230;--community-muted:#526174;--community-border:#d9e1ea}
body .button,body a.presentation-link{color:#fff;background:var(--community-accent);border:1px solid var(--community-accent);border-radius:12px;min-height:48px;line-height:1.5;padding:13px 22px;text-decoration:none;gap:14px}
body .button-dark{background:#182230;border-color:#182230;color:#fff}
body .button:hover,body a.presentation-link:hover{background:var(--community-accent-hover);border-color:var(--community-accent-hover);color:#fff}
body .button-dark:hover{background:#344054;border-color:#344054;color:#fff}
body .button-outline,body .button-outline:hover{background:#fff;color:var(--community-accent);border-color:#b8c8dc;box-shadow:none}
body .button svg,body a.presentation-link svg{color:inherit;flex-shrink:0;width:20px;height:20px}
body .news-card>.presentation-link{background:none;color:var(--community-accent);border:0;padding:12px 0;border-radius:0;box-shadow:none}
.membership-intro{background:#fff;border-color:var(--community-border);color:var(--community-text);padding:28px;margin-top:0}
.membership-intro .membership-kicker{color:var(--community-accent);font-size:12px;font-weight:600;margin:0 0 10px}
.membership-intro h3{font-size:25px;line-height:1.5;margin-bottom:24px}
.membership-steps{list-style:none;padding:0;margin:0;counter-reset:join-step}
.membership-steps li{counter-increment:join-step;position:relative;padding:0 0 20px 42px;margin:0 0 20px;border-bottom:1px solid #edf0f4}
.membership-steps li:last-child{margin-bottom:0;padding-bottom:0;border:0}
.membership-steps li:before{content:counter(join-step);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:8px;background:#edf3ff;color:var(--community-accent);font-size:14px;font-weight:600;display:grid;place-items:center}
.membership-steps strong{font-size:16px;line-height:1.7}.membership-steps p{color:var(--community-muted);font-size:14px;line-height:1.85;margin:7px 0 0}
.membership-intro .membership-rules{font-size:12px;color:var(--community-muted);line-height:1.8;margin:24px 0 0}
.join-page>.page-heading h1{font-size:clamp(36px,5vw,64px);line-height:1.3}.join-page-grid{gap:42px;align-items:start}
.join-admin{scroll-margin-top:120px}.join-admin h2{font-size:22px;margin:26px 0 10px}.join-admin>p{font-size:14px;line-height:1.9;color:var(--community-muted)}
.join-form{background:#fff;border:1px solid var(--community-border);border-radius:16px;padding:30px;color:var(--community-text)}
.join-form .join-form-title{font-size:23px;margin:0 0 8px}.join-form .join-form-description{font-size:13px;color:var(--community-muted);line-height:1.8;margin:0 0 26px}
.join-form>label{font-size:14px;line-height:1.6}.join-form input:not([type=checkbox]),.join-form textarea{background:#fff;color:var(--community-text);border:1px solid #c8d1dc;border-radius:9px;font-size:15px;line-height:1.6;padding:13px 14px}
.join-form input::placeholder,.join-form textarea::placeholder{color:#66758a;opacity:1}.join-form textarea{resize:vertical;min-height:170px}.join-form .interest-choice-trigger{background:#fff;color:var(--community-text);border-color:#c8d1dc;border-radius:9px}
.join-form .consent{font-size:12px;color:var(--community-muted);line-height:1.8;align-items:flex-start}.join-form .consent input{accent-color:var(--community-accent);flex-shrink:0}.join-form button[type=submit]{width:100%;justify-content:center}.join-form #form-status:not(:empty){font-size:14px;padding:16px;border-radius:9px;background:#eff5ff;color:#234a7a;line-height:1.8}
.account-page .page-heading{margin-bottom:28px}.account-page .page-heading h1{font-size:clamp(36px,5vw,60px);line-height:1.3}.page-description{font-size:16px;line-height:1.8;color:var(--community-muted);margin-top:18px}
.account-panel{max-width:760px;font-size:15px}.community-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.community-actions .button{justify-content:center}.account-service-link{font-size:14px;color:var(--community-muted)}
@media(max-width:760px){.join-page-grid{gap:24px}.join-page .membership-intro,.membership-intro{padding:22px}.membership-intro h3{font-size:22px}.join-form{padding:22px}.community-actions{display:grid;grid-template-columns:1fr}.community-actions .button{width:100%}.page-description{font-size:15px}.join-page .page-heading{margin-bottom:28px}}

.join-form.sent .interest-choice{display:none}
