.member-portal-shell{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f6f2;--surface:#fff;--surface-subtle:#f0f1eb;--foreground:#20251e;--muted-foreground:#62675e;--border:#dddfd5;--border-strong:#858b7e;--primary:#d5f568;--primary-hover:#c8e853;--primary-foreground:#20251e;--primary-soft:#f0f1eb;--focus-ring:#456018;--danger:#a12e30;--portal-success:#386242;--portal-success-bg:#edf4ed;--portal-warning:#775314;--portal-warning-bg:#faf4e6;--portal-danger-bg:#faeded;--portal-font:"Plus Jakarta Sans", ui-sans-serif, sans-serif;--portal-radius:1rem;--portal-space:1.25rem}
:is(html:has(.member-portal-shell),body:has(.member-portal-shell)){overflow-x:clip}.member-portal-shell{background:var(--background);color:var(--foreground);font-family:var(--portal-font);min-height:100dvh}.member-portal-shell *,.member-portal-shell :before,.member-portal-shell :after{box-sizing:border-box}.member-portal-shell :is(h1,h2,h3,p,dd,li){overflow-wrap:anywhere;min-width:0}.member-portal-shell a{color:var(--foreground)}.member-portal-shell :is(h1,h2,h3){color:var(--foreground);font-style:normal}.member-portal-shell h1{letter-spacing:-.055em;margin:0;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;line-height:1.15}.member-portal-shell h2{letter-spacing:-.025em;margin:0;font-size:1.05rem;font-weight:750;line-height:1.35}.member-portal-shell h3{font-size:.95rem}.member-portal-shell p{line-height:1.55}.member-portal-shell :is(a,button,input,select):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:none}.member-portal-shell :is(button,a,input,select){scroll-margin-block:6rem}.member-portal-shell .button{box-shadow:none;white-space:nowrap;border-radius:.65rem;gap:.5rem;min-height:44px;padding:.65rem 1rem;font-size:.85rem;font-weight:700}.member-portal-shell .button-primary{background:var(--primary);border:1px solid var(--primary);color:var(--primary-foreground)}.member-portal-shell .button-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.member-portal-shell .button-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--foreground)}.member-portal-shell .button-quiet{color:var(--muted-foreground)}.member-portal-shell .button:disabled{background:var(--surface-subtle);border-color:var(--border);color:var(--muted-foreground);cursor:not-allowed;opacity:1}.member-portal-shell .button:active:not(:disabled){transform:translateY(1px)}.portal-frame{grid-template-rows:auto 1fr;grid-template-columns:11rem minmax(0,1fr);max-width:80rem;min-height:100dvh;margin:auto;padding-inline:2rem;display:grid}.portal-topbar{border-bottom:1px solid var(--border);grid-column:1/-1;justify-content:space-between;align-items:center;gap:1rem;min-height:5.5rem;display:flex}.portal-brand{letter-spacing:-.025em;align-items:center;gap:.6rem;font-size:.9rem;font-weight:800;display:flex}.portal-brand svg{width:26px;height:26px}.member-portal-shell .language-switcher{background:var(--surface);border:1px solid var(--border);border-radius:.7rem;padding:0}.member-portal-shell .language-option{color:var(--muted-foreground);min-width:44px;min-height:44px}.member-portal-shell .language-option[data-active=true]{background:var(--surface-subtle);border-color:var(--border);color:var(--foreground);box-shadow:none}.portal-navigation{align-self:start;gap:.45rem;padding:2rem 1.25rem 2rem 0;display:grid;position:sticky;top:0}.portal-navigation a{color:var(--muted-foreground);white-space:nowrap;border-radius:.7rem;align-items:center;gap:.65rem;min-height:48px;padding:.75rem;font-size:.85rem;font-weight:650;text-decoration:none;display:flex}.portal-navigation a:hover{background:var(--surface-subtle);color:var(--foreground)}.portal-navigation a[aria-current=page]{background:var(--primary);color:var(--primary-foreground)}.portal-navigation svg{flex-shrink:0}.portal-content{border-left:1px solid var(--border);min-width:0}.portal-skip{background:var(--surface);color:var(--foreground);z-index:100;padding:1rem;position:fixed;top:-10rem;left:1rem}.portal-skip:focus{top:1rem}.member-portal-shell .member-portal-main{max-width:65rem;min-height:auto;margin:0 auto;padding:2rem 0 3rem 2rem}.member-portal-shell .member-portal-header{align-items:flex-start;margin-bottom:1.75rem;display:flex}.member-portal-shell .member-gym-name,.member-portal-shell .eyebrow{color:var(--muted-foreground);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:750}.member-greeting{color:var(--muted-foreground);margin:1.25rem 0 .25rem;font-size:.9rem}.member-portal-shell .member-number{color:var(--muted-foreground);margin-top:.6rem;font-size:.8rem}.member-portal-shell .member-dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem}.member-portal-shell :is(.member-membership-card,.member-branches-card,.member-qr-card,.member-history-panel,.member-profile-card,.member-security-card,.portal-activity-card){background:var(--surface);border:1px solid var(--border);border-radius:var(--portal-radius);box-shadow:none;color:var(--foreground);min-width:0;padding:var(--portal-space)}.member-portal-shell .member-dashboard-grid>.member-membership-card{grid-area:1/1}.member-portal-shell .member-dashboard-grid>.member-branches-card{grid-area:1/2}.member-portal-shell .member-membership-card{flex-direction:column;display:flex}.member-portal-shell .member-card-heading{flex-wrap:wrap;gap:.75rem}.member-portal-shell .member-membership-card h2{letter-spacing:-.045em;font-size:clamp(1.4rem,2.5vw,1.9rem)}.member-portal-shell .member-membership-card .eyebrow{color:var(--muted-foreground);margin:0 0 .65rem}.member-portal-shell .member-public-status{background:var(--surface-subtle);border:1px solid var(--border);color:var(--foreground);place-self:flex-start start;padding:.35rem .6rem;font-size:.7rem;line-height:1.4;display:inline-flex}.member-portal-shell .member-public-status:is([data-status=ACTIVE],[data-status=PAID]){background:var(--portal-success-bg);color:var(--portal-success)}.member-portal-shell .member-public-status:is([data-status=EXPIRING_SOON],[data-status=PENDING],[data-status=FROZEN]){background:var(--portal-warning-bg);color:var(--portal-warning)}.member-portal-shell .member-public-status:is([data-status=SUSPENDED],[data-status=FAILED],[data-status=REFUNDED]){background:var(--portal-danger-bg);color:var(--danger)}.member-portal-shell .member-membership-facts{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1.5rem;padding-top:1rem}.member-portal-shell .member-membership-facts dt{color:var(--muted-foreground);font-size:.75rem}.member-portal-shell .member-membership-facts dd{font-size:.9rem}.member-portal-shell .member-membership-facts>div:last-child:nth-child(3){grid-column:1/-1}.member-portal-shell .member-membership-facts>div:last-child:nth-child(3) dd{letter-spacing:-.04em;font-size:1.55rem}.member-portal-shell .member-additional{border-color:var(--border);color:var(--muted-foreground);margin:auto 0 0;padding-top:.8rem;font-size:.8rem}.member-portal-shell .member-branches-card li{align-items:start;font-size:.85rem}.member-portal-shell .member-branches-card li>div:first-child span{color:var(--muted-foreground);margin-top:.2rem;font-size:.7rem}.member-portal-shell :is(.member-entry-notice,.member-qr-warning,.member-account-notice){background:var(--surface-subtle);color:var(--muted-foreground);border:0;border-radius:.65rem;font-size:.78rem;line-height:1.6}.member-portal-shell .member-entry-notice{margin-bottom:0}.member-portal-shell .member-qr-card{grid-column:1/-1;gap:1.25rem}.portal-qr-intro{align-items:center;gap:1rem;min-width:0;display:flex}.portal-icon-tile{background:var(--surface-subtle);border:1px solid var(--border);border-radius:.85rem;flex:0 0 3rem;justify-content:center;align-items:center;height:3rem;display:flex}.portal-qr-intro .eyebrow{margin:0 0 .35rem}.portal-qr-intro .muted{margin:.4rem 0 0;font-size:.8rem}.member-portal-shell .member-qr-reveal{grid-column:1/-1}.member-portal-shell .member-qr-reveal svg{background:var(--surface);padding:0}.member-portal-shell .member-qr-warning{max-width:30rem}.member-portal-shell .portal-qr-page>:is(.member-qr-card,.member-entry-notice){max-width:34rem;margin-inline:auto}.portal-qr-page .member-qr-card{grid-template-columns:minmax(0,1fr);padding:2rem}.portal-qr-page .portal-qr-intro{text-align:center;flex-direction:column;align-items:center}.portal-qr-page .portal-icon-tile{flex-basis:auto;width:4rem;height:4rem}.portal-qr-page .portal-icon-tile svg{width:32px;height:32px}.portal-qr-page .member-show-qr{width:100%;margin-top:1rem}.portal-activity-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.portal-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.35rem;display:flex}.portal-section-heading a{color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:.4rem;min-height:44px;font-size:.75rem;text-decoration:none;display:inline-flex}.portal-section-heading a:hover{color:var(--foreground);text-decoration:underline}.portal-activity-list{margin:.5rem 0 0;padding:0;list-style:none}.portal-activity-list li{border-top:1px solid var(--border);align-items:start;gap:.7rem;padding:.85rem 0;display:flex}.portal-activity-list li>svg{color:var(--muted-foreground);flex-shrink:0;margin-top:.15rem}.portal-activity-list li>div{gap:.3rem;min-width:0;font-size:.85rem;display:grid}.portal-activity-list :is(time,span){color:var(--muted-foreground);font-size:.75rem}.portal-activity-list a{color:var(--foreground);overflow-wrap:anywhere;font-weight:650}.portal-empty{color:var(--muted-foreground);padding-block:1rem;font-size:.85rem}.member-portal-shell .member-history-panel{max-width:none}.member-portal-shell .member-history-list{gap:0}.member-portal-shell .member-history-list>li{border:0;border-top:1px solid var(--border);border-radius:0;padding:1.25rem 0}.member-portal-shell .member-history-list>li:last-child{padding-bottom:.25rem}.member-portal-shell .member-history-list dl{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));font-size:.85rem}.member-portal-shell .member-visit-status{color:var(--portal-success);font-size:.8rem}.member-portal-shell .member-visit-status span{background:var(--portal-success-bg)}.member-portal-shell .member-history-pagination{border-top:1px solid var(--border);color:var(--muted-foreground);padding-top:1rem;font-size:.8rem}.member-portal-shell .member-profile-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.member-portal-shell .member-profile-form{align-content:start;gap:.8rem;font-size:.85rem}.member-portal-shell :is(.member-profile-form,.member-login-form) :is(input,select){background:var(--surface);border:1px solid var(--border-strong);color:var(--foreground);border-radius:.55rem;min-height:44px;padding:.6rem .7rem;font-size:1rem}.member-portal-shell .form-help{color:var(--muted-foreground);font-size:.78rem}.member-portal-shell .member-profile-facts dd{font-size:.85rem}.member-portal-shell .member-security-grid form,.member-portal-shell .member-transaction-totals,.member-portal-shell .member-confirmation{border-color:var(--border)}.member-portal-shell .member-form-alert{background:var(--portal-warning-bg);border-color:var(--border);color:var(--portal-warning)}.member-portal-shell .member-refund-label{color:var(--danger)}.member-portal-shell .member-transaction-lines>li{border-color:var(--border);border-radius:.65rem}.member-portal-shell .member-auth-card{background:var(--surface);border-color:var(--border);box-shadow:none}@media (max-width:1023px){.portal-frame{padding-left:max(1.5rem,env(safe-area-inset-left));padding-right:max(1.5rem,env(safe-area-inset-right));max-width:52rem;display:block}.portal-topbar{min-height:calc(4.5rem + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.portal-content{border-left:0}.member-portal-shell .member-portal-main{padding:1.5rem 0 calc(7rem + env(safe-area-inset-bottom))}.portal-navigation{background:var(--surface);border-top:1px solid var(--border);padding:.4rem max(.5rem,env(safe-area-inset-right)) calc(.4rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left));z-index:20;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;display:grid;position:fixed;inset:auto 0 0}.portal-navigation a{flex-direction:column;justify-content:center;gap:.25rem;min-height:56px;margin-inline:.15rem;padding:.35rem .1rem;font-size:.68rem}.portal-navigation svg{width:22px;height:22px}.portal-navigation a[aria-current=page]{border-radius:.65rem}}@media (max-width:599px){.portal-frame{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.member-portal-shell{--portal-space:1rem}.portal-brand{font-size:.8rem}.member-portal-shell .member-portal-header{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.member-portal-shell .member-portal-header .button{padding-inline:.5rem;font-size:.75rem}.member-portal-shell :is(.member-dashboard-grid,.member-profile-grid,.member-security-grid,.portal-activity-grid){grid-template-columns:minmax(0,1fr)}.member-portal-shell .member-dashboard-grid>:is(.member-membership-card,.member-branches-card){grid-area:auto}.member-portal-shell .member-card-heading{display:flex}.member-portal-shell .member-membership-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.member-portal-shell .member-qr-card{grid-template-columns:minmax(0,1fr)}.member-portal-shell .member-show-qr{width:100%}.member-portal-shell .member-history-list dl{grid-template-columns:repeat(2,minmax(0,1fr))}.member-portal-shell .member-history-list dl>div:first-child{grid-column:1/-1}.member-portal-shell .member-transaction-heading{gap:.6rem;display:grid}.member-portal-shell .member-transaction-summary,.member-portal-shell .member-transaction-lines dl{grid-template-columns:repeat(2,minmax(0,1fr))}.member-portal-shell .member-form-actions{grid-template-columns:minmax(0,1fr);display:grid}.member-portal-shell .member-form-actions .button{width:100%}.portal-qr-page .member-qr-card{padding:1.25rem}}@media (prefers-reduced-motion:reduce){.member-portal-shell *,.member-portal-shell :before,.member-portal-shell :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.member-portal-shell .button:active:not(:disabled){transform:none}}@media print{.member-portal-shell .portal-frame{padding:0;display:block}.member-portal-shell .portal-topbar,.member-portal-shell .portal-navigation,.member-portal-shell .member-qr-reveal{display:none!important}.member-portal-shell .portal-content{border:0}.member-portal-shell .member-portal-main{max-width:none;padding:0}}
