.member-shell{min-height:100dvh;color:var(--ink);background:var(--scene)}.member-site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(221,221,231,.9);background:rgba(255,255,255,.96);box-shadow:var(--shadow-sm);backdrop-filter:blur(16px)}.member-topbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0 auto;padding:var(--space-3) var(--space-6)}.member-brand{min-height:44px;display:inline-flex;align-items:center;gap:var(--space-3);color:var(--brand);font-family:var(--font-display),sans-serif;font-size:var(--text-sm);font-weight:800;letter-spacing:.08em;text-decoration:none}.member-brand img{width:38px;height:32px;object-fit:contain}.member-identity{min-width:0;display:grid;justify-items:end;margin:0}.member-identity span{color:var(--muted);font-size:var(--text-xs)}.member-identity strong{max-width:210px;overflow:hidden;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.member-account-controls{min-width:0;display:flex;align-items:center;gap:var(--space-4)}.member-header-signout{min-height:var(--target);padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-size:var(--text-xs);font-weight:800}.member-header-signout:hover{border-color:var(--line-hover)}.member-shell-body{width:100%}.member-screen{width:min(100%,980px);margin:0 auto;padding:36px var(--space-6) 48px}body>.member-screen{width:min(100%,680px);min-height:100dvh;padding-top:clamp(32px,8vw,84px)}.member-screen .back-link{min-height:44px;display:inline-flex;align-items:center;margin-bottom:var(--space-3);font-size:var(--text-sm)}.member-page-title{margin:var(--space-1) 0 var(--space-5);color:var(--brand-dark);font-family:var(--font-display),sans-serif;font-size:clamp(28px,4vw,38px);font-weight:700;letter-spacing:-.02em}.member-screen .banner{border-radius:var(--radius-lg);font-size:14px;line-height:1.5}.member-home-membership{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.85fr);gap:var(--space-4);align-items:center;margin-top:var(--space-6);padding:var(--space-5);border:1px solid var(--line-brand);border-radius:var(--radius-lg);background:var(--tint)}.member-home-membership>span{min-width:0;display:grid;gap:var(--space-1)}.member-home-membership>span small{color:var(--brand);font-size:var(--text-sm);font-weight:600}.member-home-membership>span strong{color:var(--ink);font-family:var(--font-display),sans-serif;font-size:var(--text-lg)}.member-membership-standing{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.member-home-membership>span em{color:var(--muted);font-size:var(--text-sm);font-style:normal}.member-membership-section,.member-settings-card{display:grid;gap:var(--space-5);margin-top:var(--space-6);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.member-settings-heading h2{margin:0;color:var(--ink);font-family:var(--font-display),sans-serif;font-size:19px}.member-settings-heading p{margin:var(--space-1) 0 0;color:var(--muted);font-size:14px;line-height:1.55}.member-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.member-settings-card .field{min-height:48px;font-size:16px}.member-settings-card .btn{min-height:48px;justify-self:start}.member-settings-note,.member-shared-device-note{margin:0;color:var(--muted);font-size:var(--text-sm);line-height:1.55}.member-shared-device-note{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--gold-line);border-radius:var(--radius-sm);color:var(--gold-ink);background:var(--gold-soft)}.member-membership-list{display:grid;gap:var(--space-3)}.member-membership-list article{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-4) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--scene)}.member-membership-list article>span{min-width:0;display:grid;gap:3px}.member-membership-list small{color:var(--muted);font-size:var(--text-xs);line-height:1.45}.member-membership-meta{flex:0 0 auto;justify-items:end;text-align:right}.member-pending-request{display:grid;gap:3px;padding:var(--space-3) var(--space-4);border:1px solid var(--gold-line);border-radius:var(--radius);color:var(--gold-ink);background:var(--gold-soft)}.member-pending-request span{font-size:var(--text-sm);font-weight:600}.member-request-note{min-height:110px!important;padding-top:var(--space-3);resize:vertical}.member-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-6)}.member-action-link{min-height:72px;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-4);text-align:left}.member-action-link>span{display:grid;gap:2px}.member-action-link strong{font-family:var(--font-display),sans-serif;font-size:var(--text-base)}.member-action-link small{color:var(--muted);font-weight:600}.member-action-link.btn-primary small,.member-action-link.btn-primary>b{color:rgba(255,255,255,.78)}.member-action-link>b{color:var(--brand);font-size:18px}.member-code-intro,.member-login-intro,.member-practice-note,.member-session-note{color:var(--muted);font-size:14px;line-height:1.55}.member-session-note{margin:var(--space-6) 0 0}.member-login-form{display:grid;gap:var(--space-4);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.member-login-intro{margin:0 0 2px}.member-login-form .field{min-height:50px;font-size:16px}.member-login-form .btn{min-height:50px}.member-practice-note{padding:var(--space-3) var(--space-4);border:1px solid var(--gold-line);border-radius:var(--radius-sm);color:var(--gold-ink);background:var(--gold-soft)}.member-primary-nav{min-height:54px;display:flex;align-items:center;gap:var(--space-2);margin:0 auto;padding:0 var(--space-6) var(--space-3);overflow-x:auto;scrollbar-width:thin}.member-primary-nav a{min-height:var(--target);display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border-radius:var(--radius-sm);color:var(--muted);font-size:var(--text-sm);font-weight:800;text-decoration:none;white-space:nowrap}.member-primary-nav a:hover{color:var(--brand);background:var(--tint)}.member-primary-nav a.is-current{color:var(--brand);background:var(--leaf-soft);box-shadow:inset 0 -2px 0 var(--brand)}.member-primary-nav svg{width:18px;height:18px}.member-section-title{margin:var(--space-8) 0 0;color:var(--ink);font-family:var(--font-display),sans-serif;font-size:18px}.member-section-title-first{margin-top:0}.member-class-list,.member-ledger-list,.member-visit-list{display:grid;gap:var(--space-3);margin:var(--space-3) 0 0;padding:0;list-style:none}.member-class-list,.member-visit-list{grid-template-columns:repeat(2,minmax(0,1fr))}.member-class-card{padding:var(--space-5);border-radius:var(--radius-lg)}.member-class-title{margin:0;font-family:var(--font-display),sans-serif;font-size:var(--text-md);font-weight:700;line-height:1.45}.member-booking-status,.member-class-confirmed{display:inline-flex;width:fit-content;margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-2);border-radius:var(--radius-pill);color:var(--go-ink);background:var(--go-soft);font-size:var(--text-xs);font-weight:800}.member-class-instructor{margin:var(--space-2) 0 0;color:var(--muted);font-size:14px}.member-class-meta{margin:var(--space-3) 0 0;color:var(--neutral-ink);font-size:var(--text-sm);font-weight:750;line-height:1.5}.member-book-form,.member-cancel-form{margin-top:var(--space-4)}.member-cancel-form{padding-top:var(--space-4);border-top:1px solid var(--line)}.member-ledger-row,.member-visit-card{min-width:0;display:grid;align-items:center;gap:var(--space-1) var(--space-4);padding:var(--space-4) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm)}.member-visit-card{grid-template-columns:minmax(0,1fr) auto}.member-visit-card>span{font-size:14px;font-weight:800}.member-visit-card>strong{color:var(--brand);font-size:var(--text-md)}.member-visit-card>small{grid-column:1/-1;color:var(--muted)}.member-account-summary{padding:var(--space-5);border:0;color:var(--on-color);background:var(--side);box-shadow:var(--shadow-lg)}.member-account-summary>p{margin:0}.member-account-total{margin-top:var(--space-2)!important;font-size:31px;font-weight:800}.member-account-guidance{margin-top:var(--space-2)!important;color:rgba(255,255,255,.82);font-size:var(--text-sm)}.member-balance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-3)}.member-balance-grid article{min-width:0;display:grid;gap:3px;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card)}.member-balance-grid small,.member-balance-grid span{color:var(--muted);font-size:var(--text-xs);font-weight:700}.member-balance-grid strong{color:var(--brand);font-size:18px}.member-ledger-row{grid-template-columns:minmax(0,1fr) auto}.member-ledger-row>span{min-width:0;display:grid;gap:3px}.member-ledger-row strong{overflow-wrap:anywhere;font-size:14px}.member-ledger-row small{color:var(--muted);font-size:var(--text-xs)}.member-ledger-row>b{color:var(--brand);font-size:var(--text-base);font-variant-numeric:tabular-nums}.member-code-card{max-width:680px;margin-right:auto;margin-left:auto;display:grid;justify-items:center;gap:var(--space-4);padding:var(--space-8) var(--space-5);border:1px solid var(--line-brand);border-radius:20px;background:var(--card);box-shadow:var(--shadow-sm);text-align:center}.member-code-card p{margin:0;color:var(--brand);font-family:var(--font-display),sans-serif;font-size:clamp(34px,12vw,52px);font-weight:700;letter-spacing:.16em;font-variant-numeric:tabular-nums}.member-code-card small{max-width:410px;color:var(--muted);line-height:1.5}@media (max-width:620px){.member-screen,.member-topbar{padding-right:var(--space-4);padding-left:var(--space-4)}}@media (max-width:430px){.member-brand span{display:none}.member-identity strong{max-width:118px}.member-identity span{display:none}.member-account-controls{gap:var(--space-2)}.member-header-signout{min-height:var(--target);padding:0 var(--space-3)}.member-balance-grid{grid-template-columns:1fr 1fr}.member-ledger-row{grid-template-columns:1fr}.member-ledger-row>b{justify-self:start}}.member-action-link small,.member-code-card small,.member-visit-card>small{font-size:var(--text-sm)}@media (max-width:760px){.member-action-grid,.member-class-list,.member-home-membership,.member-settings-grid,.member-visit-list{grid-template-columns:1fr}.member-membership-list article{align-items:flex-start;flex-direction:column}.member-membership-meta{justify-items:start;text-align:left}.member-settings-card .btn{width:100%}.member-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-primary-nav{padding-right:var(--space-4);padding-left:var(--space-4)}.member-account-controls{gap:var(--space-2)}.member-identity{display:none}.member-header-signout{min-height:var(--target);padding:0 var(--space-3);font-size:var(--text-xs)}}.member-primary-nav,.member-topbar{width:min(100%,980px)}.member-header-signout{border-color:var(--line-control);color:var(--brand);background:var(--card)}.member-header-signout:hover{color:var(--brand);background:var(--tint)}.member-section-title{margin-bottom:var(--space-3)}.member-code-card,.member-practice-note{margin:var(--space-5) 0 0}@media (max-width:620px){.member-primary-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.member-primary-nav a{flex-direction:column;justify-content:center;gap:2px;padding:var(--space-2) var(--space-1);font-size:var(--text-xs);text-align:center}}