.member-auth-access{--access-green:var(--club-green,#226f54);--access-ink:var(--ink,#13231b);--access-muted:#66736c;--access-header-height:calc(env(safe-area-inset-top,0px) + 3.25rem);position:relative;width:100%;height:100%;min-height:100dvh;background:#fff;color:var(--access-ink);font-family:inherit}
.member-auth-access :is(button,input,a){font:inherit}.member-auth-access :is(button,input,a):focus-visible{outline:2px solid var(--access-green);outline-offset:2px}.member-auth-access .account-access-header{position:absolute;z-index:3;inset:0 0 auto;display:grid;grid-template-columns:5rem minmax(0,1fr) 5rem;align-items:end;height:var(--access-header-height);padding:env(safe-area-inset-top,0px) 1rem 0;border-bottom:1px solid #e5e8e5;background:#fff}.member-auth-access .account-access-header a{display:flex;align-items:center;gap:.25rem;min-height:2.75rem;color:var(--access-green);font-size:.875rem;font-weight:700;text-decoration:none}.member-auth-access .account-access-header h1{margin:0 0 .85rem;text-align:center;font-size:1rem;font-weight:800}.member-auth-access .account-access-scroll-region{position:absolute;inset:var(--access-header-height) 0 0;overflow:auto}.member-auth-access .account-access-content{width:100%;max-width:31rem;margin:0 auto;padding:1.5rem 1.5rem max(3rem,env(safe-area-inset-bottom,0px))}.member-auth-access .account-access-field{position:relative;display:grid;margin-bottom:.8rem;padding:.48rem .9rem .42rem;border:1px solid #bac3be;border-radius:.78rem;background:#fff}.member-auth-access .account-access-field:focus-within{border-color:var(--access-green);box-shadow:0 0 0 1px var(--access-green)}.member-auth-access .account-access-field>span{color:var(--access-muted);font-size:.7rem;font-weight:680}.member-auth-access .account-access-field input{width:100%;min-height:2.25rem;padding:.12rem 0;border:0;outline:0;background:transparent;color:var(--access-ink);font-size:1rem}.member-auth-access .account-access-password{grid-template-columns:minmax(0,1fr) 3rem}.member-auth-access .account-access-password>span,.member-auth-access .account-access-password>input{grid-column:1}.member-auth-access .account-access-password>button{grid-column:2;grid-row:1/3;min-width:3rem;min-height:3rem;margin:-.1rem -.65rem 0 0;border:0;background:transparent;color:var(--access-green);font-size:.8rem;font-weight:700}.member-auth-access .account-access-forgot{min-height:2.75rem;margin:-.25rem 0 .2rem;padding:0;border:0;background:transparent;color:var(--access-green);font-size:.875rem;font-weight:720;text-align:left}.member-auth-access .account-access-remember{display:flex;gap:.55rem;align-items:center;min-height:2.75rem}.member-auth-access .account-access-remember input{width:1.15rem;height:1.15rem;accent-color:var(--access-green)}.member-auth-access .account-access-remember strong{font-size:.8rem}.member-auth-access .account-access-primary{width:100%;min-height:3.1rem;margin-top:1rem;padding:.65rem 1rem;border:0;border-radius:999px;background:var(--access-green);color:#fff;font-weight:780}.member-auth-access .account-access-primary:disabled{background:#aeb8b3}.member-auth-access .account-access-notice{min-height:1.15rem;margin:.65rem 0 0;color:var(--access-green);font-size:.75rem;line-height:1.4}.member-auth-access .account-access-notice.is-error{color:#b42318}

.member-entry-page .member-auth-access .account-access-field > span { font-size:.875rem; color:#465e53; }
.member-entry-page .member-auth-access .account-access-field input:focus-visible { outline:0; }
.member-entry-page .member-auth-access .account-access-field:focus-within { box-shadow:inset 0 0 0 1px var(--access-green); }

/* Login has one scrolling field region and a submit footer in the same form.
   Visible viewport measurements account for native input/browser occlusion. */
.member-entry-page .member-auth-access {
  --access-nav-space:max(0px,calc(4.75rem + env(safe-area-inset-bottom,0px) - (100dvh - var(--member-visible-height,100dvh))));
  position:fixed;
  inset:var(--member-visible-top,0px) 0 auto;
  display:flex;
  flex-direction:column;
  width:min(100%,30rem);
  height:var(--member-visible-height,100dvh);
  min-height:0;
  margin:0 auto;
}
.member-entry-page .member-auth-access .account-access-header { position:relative; inset:auto; flex:0 0 var(--access-header-height); }
.member-entry-page .member-auth-access .account-access-form { display:flex; flex-direction:column; flex:1 1 auto; min-height:0; margin:0; padding-bottom:var(--access-nav-space); overflow:auto; overscroll-behavior:contain; }
.member-entry-page .member-auth-access .account-access-scroll-region { position:relative; inset:auto; flex:0 1 auto; min-height:6rem; overflow:auto; overscroll-behavior:contain; scroll-padding-block:1rem; }
.member-entry-page .member-auth-access .account-access-content { padding:.9rem 1.25rem 1rem; }
.member-entry-page .member-auth-access .account-access-notice:empty { display:none; }
.member-entry-page .member-auth-access .account-access-actions { flex:0 0 auto; padding:.65rem 1.25rem .75rem; border-top:1px solid #e5e8e5; background:#fff; }
.member-entry-page .member-auth-access .account-access-primary { margin-top:0; }
.member-entry-page .member-auth-access .account-access-field { scroll-margin-block:1rem; }
.member-entry-page .member-auth-access .account-access-forgot { display:inline-flex; align-items:center; }

.member-auth-access .account-access-hint{font-size:.75rem;line-height:1.45;color:#586b61;margin:0 0 .8rem}

.member-auth-access .account-access-password>label{grid-column:1;margin:0;color:#465e53;font-size:.875rem;font-weight:680}
