.auth{max-width:480px;padding:clamp(48px, 8vw, 96px) var(--space-section-x);margin:0 auto}.auth__tabs{gap:var(--space-2);margin-bottom:var(--space-7);border-bottom:var(--border-width) solid var(--color-border);display:flex}.auth__tab{min-height:var(--tap-target-min);padding:0 var(--space-4);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-label);text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;font-weight:800}.auth__tab[aria-selected=true]{color:var(--color-brand);border-bottom-color:var(--color-brand)}.auth h1{margin:0 0 var(--space-6);font-family:var(--font-heading);font-size:32px}.auth__field{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.auth__field label{font-family:var(--font-body);font-size:var(--font-size-body-sm);color:var(--color-text);font-weight:700}.auth__field input{min-height:var(--tap-target-min);padding:0 var(--space-4);color:var(--color-text);background:var(--color-surface-page);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body)}.auth__field input[aria-invalid=true]{border-color:var(--color-accent)}.auth__error{color:var(--color-accent-deep);font-size:var(--font-size-body-sm)}.auth__lead{margin:0 0 var(--space-6);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.auth__link{color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:700;text-decoration:underline}.auth__link:hover{color:var(--color-accent-deep)}.auth__forgot-link{margin:calc(-1 * var(--space-3)) 0 var(--space-5);text-align:right;display:block}.auth__back-link{margin-top:var(--space-5);display:block}.auth__submit{width:100%;min-height:var(--tap-target-min);margin-top:var(--space-3);color:var(--color-text-on-dark);background:var(--color-brand);border:var(--border-width) solid var(--color-brand);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--font-size-label);text-transform:uppercase;cursor:pointer;transition:background var(--transition-fast);justify-content:center;align-items:center;font-weight:900;display:flex}.auth__submit:disabled{cursor:not-allowed;opacity:.6}.auth__status{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);font-size:var(--font-size-body-sm)}.auth__status--success{color:var(--color-brand);background:var(--color-surface-subtle)}.auth__status--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.auth__signed-in p{margin:0 0 var(--space-7);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body)}.auth__signed-in-actions{gap:var(--space-4);flex-direction:column;display:flex}.auth__signed-in-actions .auth__submit{text-align:center;text-decoration:none}.auth__signed-in-logout{padding:var(--space-3) 0;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm);cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}.auth__signed-in-logout:hover{color:var(--color-accent-deep)}.auth__verify-banner{margin:0 0 var(--space-6);padding:var(--space-4);background:var(--color-surface-tile-4);border-radius:var(--radius-card)}.auth__verify-banner p{margin:0 0 var(--space-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.auth__verify-banner .auth__status{margin-top:var(--space-2);background:0 0;padding:0}.auth{background:var(--color-surface-salon);border-top:5px solid var(--color-accent);border-radius:var(--radius-card);width:min(560px,100% - 40px);max-width:none;min-height:520px;box-shadow:var(--shadow-md);margin:clamp(48px,8vw,96px) auto;padding:clamp(28px,5vw,54px)}.auth__tabs{gap:var(--space-5);margin-bottom:var(--space-8)}.auth__tab{text-transform:none;padding:0;font-size:13px;font-weight:750}.auth h1{color:var(--color-text);font-size:48px}.auth__field label{color:var(--color-text-muted);font-size:13px}.auth__field input{background:var(--color-surface-page);border-color:var(--color-border);min-height:50px}.auth__submit{border-radius:var(--radius-pill);text-transform:none;min-height:50px;font-size:13px}.auth__submit:hover:not(:disabled){background:var(--color-brand-bright);border-color:var(--color-brand-bright)}@media (width<=520px){.auth{width:100%;box-shadow:none;border-radius:0;margin:0}.auth h1{font-size:38px}}.account-profile{max-width:100%;margin-top:var(--space-8);padding-top:var(--space-7);border-top:1px solid var(--color-border)}.account-profile h2{margin:0 0 var(--space-5);font-family:var(--font-heading);font-size:24px}.account-profile__state{padding:var(--space-5);color:var(--color-text);background:var(--color-surface-subtle);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.account-profile__state--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.account-profile__notice{margin:0 0 var(--space-5);padding:var(--space-4);color:var(--color-text);background:var(--color-surface-subtle);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.account-profile__field{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.account-profile__field label{font-family:var(--font-body);font-size:var(--font-size-body-sm);color:var(--color-text);font-weight:700}.account-profile__field input{min-height:var(--tap-target-min);padding:0 var(--space-4);color:var(--color-text);background:var(--color-surface-page);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body)}.account-profile__field input[aria-invalid=true]{border-color:var(--color-accent)}.account-profile__error{color:var(--color-accent-deep);font-size:var(--font-size-body-sm)}.account-profile__submit{width:100%;min-height:var(--tap-target-min);margin-top:var(--space-3);color:var(--color-text-on-dark);background:var(--color-brand);border:var(--border-width) solid var(--color-brand);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--font-size-label);text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;font-weight:800;display:flex}.account-profile__submit:hover:not(:disabled){background:var(--color-accent);border-color:var(--color-accent)}.account-profile__submit:disabled{cursor:not-allowed;opacity:.6}.account-profile__status{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);font-size:var(--font-size-body-sm)}.account-profile__status--success{color:var(--color-brand);background:var(--color-surface-subtle)}.account-profile__status--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.order-history{max-width:480px;margin:var(--space-8) auto 0}.order-history h2{margin:0 0 var(--space-5);font-family:var(--font-heading);font-size:24px}.order-history__state{padding:var(--space-5);color:var(--color-text);background:var(--color-surface-subtle);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.order-history__state--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.order-history__state--error button{min-height:var(--tap-target-min);margin-top:var(--space-3);padding:0 var(--space-5);background:var(--color-text-on-dark);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-pill);cursor:pointer}.order-history__empty{color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.order-history__list{gap:var(--space-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.order-history__order{padding:var(--space-5);background:var(--color-surface-subtle);border-radius:var(--radius-card)}.order-history__order-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-family:var(--font-body);display:flex}.order-history__date{color:var(--color-brand);font-weight:700;font-size:var(--font-size-body-sm)}.order-history__status{padding:2px var(--space-3);color:var(--color-text);background:var(--color-surface-page);border-radius:var(--radius-pill);font-size:var(--font-size-label-sm);text-transform:uppercase;font-weight:700}.order-history__status--cancelled{color:var(--color-accent-deep)}.order-history__status--completed{color:var(--color-brand)}.order-history__items{gap:var(--space-2);margin:0 0 var(--space-3);font-family:var(--font-body);font-size:var(--font-size-body-sm);flex-direction:column;padding:0;list-style:none;display:flex}.order-history__items li{justify-content:space-between;gap:var(--space-4);display:flex}.order-history__item-options{color:var(--color-text);opacity:.7}.order-history__total{color:var(--color-brand);font-family:var(--font-body);font-size:var(--font-size-body-sm);text-align:right;margin:0}.order-history{max-width:100%;padding-top:var(--space-7);border-top:1px solid var(--color-border)}.order-history__order{background:var(--color-surface-page);border:1px solid var(--color-border);border-radius:var(--radius-card)}.course-bookings{max-width:100%;margin-top:var(--space-8);padding-top:var(--space-7);border-top:1px solid var(--color-border)}.course-bookings h2{margin:0 0 var(--space-5);font-family:var(--font-heading);font-size:24px}.course-bookings__toast-region:empty{display:none}.course-bookings__toast{margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-card);font-size:var(--font-size-body-sm)}.course-bookings__toast--success{color:var(--color-brand);background:var(--color-surface-subtle)}.course-bookings__toast--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.course-bookings__state{padding:var(--space-5);color:var(--color-text);background:var(--color-surface-subtle);border-radius:var(--radius-card);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.course-bookings__state--error{color:var(--color-accent-deep);background:var(--color-surface-tile-4)}.course-bookings__state--error button{min-height:var(--tap-target-min);margin-top:var(--space-3);padding:0 var(--space-5);background:var(--color-text-on-dark);border:var(--border-width) solid var(--color-accent);border-radius:var(--radius-pill);cursor:pointer}.course-bookings__empty{color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.course-bookings__list{gap:var(--space-5);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.course-bookings__booking{padding:var(--space-5);background:var(--color-surface-page);border:1px solid var(--color-border);border-radius:var(--radius-card)}.course-bookings__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-family:var(--font-body);display:flex}.course-bookings__theme{color:var(--color-brand);font-weight:700;font-size:var(--font-size-body-sm)}.course-bookings__status{padding:2px var(--space-3);color:var(--color-text);background:var(--color-surface-subtle);border-radius:var(--radius-pill);font-size:var(--font-size-label-sm);text-transform:uppercase;font-weight:700}.course-bookings__status--cancelled,.course-bookings__status--cancelled_unpaid{color:var(--color-accent-deep)}.course-bookings__date{margin:0 0 var(--space-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.course-bookings__details{margin:0 0 var(--space-3);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-body-sm)}.course-bookings__cancel{min-height:var(--tap-target-min);padding:0 var(--space-4);color:var(--color-accent-deep);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer;background:0 0}.course-bookings__confirm{align-items:center;gap:var(--space-3);font-size:var(--font-size-body-sm);flex-wrap:wrap;display:flex}.course-bookings__confirm button{min-height:var(--tap-target-min);padding:0 var(--space-4);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer}.course-bookings__confirm button:first-of-type{color:var(--color-text-on-dark);background:var(--color-brand);border-color:var(--color-brand)}.course-bookings__confirm button:disabled{opacity:.6;cursor:wait}
