/* AreaSports Step 09B: public/auth WordPress parity.
   Purpose: keep the public auth/showcase layer visually aligned with the legacy WordPress templates. */

body.page-template-templatespage-recovery-php,
body.page-template-templatespage-login-club-php,
body.page-template-templatespage-coaches-php,
body.page-template-templatespage-coach-profile-php {
  font-family: var(--font-sans, 'Inter', 'Noto Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif);
}

body.page-template-templatespage-recovery-php,
body.page-template-templatespage-login-club-php {
  background: #f8fbfc;
}
body.page-template-templatespage-recovery-php .topbar,
body.page-template-templatespage-recovery-php .tabbar,
body.page-template-templatespage-login-club-php .topbar,
body.page-template-templatespage-login-club-php .tabbar {
  display: none;
}

body.page-template-templatespage-coaches-php,
body.page-template-templatespage-coach-profile-php {
  background: var(--c-cream, #F9F3EF);
}

/* 09A aligned all auth hero text to the right. WP registration/recovery templates center it. */
.app-login .auth-hero.auth-hero--center,
.app-login .auth-hero.auth-hero--center .auth-hero__text {
  align-items: center;
  text-align: center;
}
.app-login .auth-hero.auth-hero--center {
  justify-content: center;
}
.app-login .auth-hero.auth-hero--center .auth-link--back {
  align-self: center;
}

.auth-hero__logo-link .auth-hero__logo {
  width: min(320px, 74vw);
}

/* Club login template uses a compact inner body in WordPress. */
.app-login__body {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  background: var(--auth-surface, #fff);
  border: 1px solid #e1ecf4;
  border-radius: 24px;
  box-shadow: 0 18px 40px rgba(5, 134, 199, .08);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.app-login__body .app-login__header {
  min-height: 44px;
  padding-left: 54px;
}
@media (max-width: 520px) {
  .app-login__body {
    padding: 22px;
    border-radius: 22px;
  }
  .app-login__body .app-login__header {
    padding-left: 0;
    padding-top: 52px;
  }
  .app-login__body .app-login__back {
    top: 0;
  }
}

/* Laravel validation messages must inherit the WP auth visual scale. */
.auth-field-error {
  display: block;
  margin-top: 2px;
  color: var(--auth-error, #ef4444);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}
.recovery__hint {
  margin: 0;
  color: var(--auth-muted, #47819e);
  font-size: 13px;
  line-height: 1.45;
}
.recovery__alert a {
  color: inherit;
}
.auth-input-hint[hidden],
.recovery__alert[hidden] {
  display: none !important;
}

/* Forms are now one Laravel form with WP-looking step sections. */
.auth-card[data-signup-steps],
.auth-card[data-user-signup-steps] {
  border: 1px solid rgba(5, 134, 199, .25);
}
.recovery__form[hidden] {
  display: none !important;
}
.recovery__form.is-active {
  max-height: 1600px;
}
[data-auth-wizard] .recovery__form {
  width: 100%;
}
[data-auth-wizard] .auth-submit[type="button"] {
  width: 100%;
}
[data-auth-wizard].is-loading .coach-signup__loader,
[data-auth-wizard].is-loading .user-signup__loader {
  opacity: 1;
  pointer-events: all;
}

/* Public coach showcase: use the original WP page classes, not dashboard shell cards. */
.page-showcase {
  min-height: 100vh;
  padding: 80px 16px 140px;
  background: var(--c-cream, #F9F3EF);
}
.page-showcase .container,
.page-coach-profile .container {
  width: min(1120px, calc(100vw - 32px));
  margin: 0 auto;
}
.page-head {
  text-align: center;
  margin: 0 auto 40px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
.page-kicker {
  margin: 0;
  font-size: .84rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--c-blue, #456882);
}
.page-title {
  margin: 0;
  font-size: clamp(2.2rem, 6vw, 4rem);
  line-height: 1.05;
  font-weight: 800;
  color: var(--c-deep, #1B3C53);
}
.page-subtitle {
  margin: 0 auto;
  max-width: 620px;
  color: rgba(15, 26, 32, .68);
  font-size: 1.05rem;
  line-height: 1.6;
}
.coach-card__cta {
  text-decoration: none;
}
.coach-card__media img[src$="logo.webp"] {
  object-fit: contain;
  padding: 38px;
  background: linear-gradient(135deg, rgba(5,134,199,.08), rgba(27,60,83,.08));
}

.page-coach-profile {
  padding-top: 72px;
}
.coach-profile__media img[src$="logo.webp"] {
  object-fit: contain;
  padding: 24px;
  background: #fff;
}

/* Legal footer parity for register page variables that were declared in the old WP register styles. */
.app-register__legal {
  --reg-text: #0d171c;
  --reg-primary: #0f7ae5;
}

/* Keep the club-login page from inheriting the 09A right aligned auth hero rules. */
.page-template-templatespage-login-club-php .app-login__header .app-login__title,
.page-template-templatespage-login-club-php .app-login__header .app-login__subtitle,
.page-template-templatespage-login-club-php .app-login__header .app-login__eyebrow {
  text-align: left;
}
