/* EasyPrint V2.75 — mobile auth centering + typography consistency.
   Applies to user Sign In and Sign Up only. Backend, routes, form names, and JS untouched. */
@media screen and (max-width: 768px) {
  html.ep-signin-v1 body,
  html.ep-signup-v3 body {
    overflow-x: hidden;
  }

  html.ep-signin-v1 .side-decor,
  html.ep-signup-v3 .side-decor,
  html.ep-signup-v4 .ep-signup-showcase {
    display: none !important;
  }

  html.ep-signin-v1 .back-btn,
  html.ep-signup-v3 .back-btn,
  html.ep-signup-v4 .back-btn {
    top: 16px !important;
    left: 18px !important;
    padding: 0 20px !important;
    min-height: 38px !important;
    border-radius: 19px !important;
    font: 700 13px/1 Arial, Helvetica, sans-serif !important;
  }

  html.ep-signin-v1 .signin-container,
  html.ep-signup-v3 .auth-page,
  html.ep-signup-v4 .auth-page {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100dvh !important;
    padding: 72px 16px 28px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
    box-sizing: border-box !important;
    gap: 0 !important;
  }

  html.ep-signin-v1 .signin-card,
  html.ep-signup-v3 .auth-card.signup-card,
  html.ep-signup-v4 .auth-card.signup-card {
    width: min(100%, 392px) !important;
    max-width: 392px !important;
    margin: 0 auto !important;
    padding: 26px 20px 24px !important;
    border-radius: 22px !important;
    box-sizing: border-box !important;
  }

  html.ep-signin-v1 .auth-play-visual,
  html.ep-signup-v4 .auth-play-visual {
    display: none !important;
  }

  html.ep-signin-v1 .signin-card > .auth-kicker,
  html.ep-signin-v1 .signin-card > h1,
  html.ep-signin-v1 .signin-card > .subtitle,
  html.ep-signup-v4 .signup-card > .auth-kicker,
  html.ep-signup-v4 .signup-card > h1,
  html.ep-signup-v4 .signup-card > .auth-subtitle {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html.ep-signin-v1 .signin-card > .auth-kicker,
  html.ep-signup-v4 .signup-card > .auth-kicker {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    font: 800 11px/1.2 Arial, Helvetica, sans-serif !important;
    letter-spacing: .22em !important;
  }

  html.ep-signin-v1 .signin-card > h1,
  html.ep-signup-v4 .signup-card > h1 {
    margin: 0 auto 10px !important;
    max-width: 310px !important;
    font: 800 27px/1.05 Arial, Helvetica, sans-serif !important;
    letter-spacing: -.04em !important;
  }

  html.ep-signin-v1 .signin-card > .subtitle,
  html.ep-signup-v4 .signup-card > .auth-subtitle {
    max-width: 300px !important;
    margin-bottom: 24px !important;
    color: #5d7991 !important;
    font: 400 13px/1.55 Arial, Helvetica, sans-serif !important;
  }

  html.ep-signin-v1 .signin-card form,
  html.ep-signup-v4 .signup-card form.auth-form {
    margin-top: 0 !important;
    width: 100% !important;
  }

  html.ep-signin-v1 .signin-card label,
  html.ep-signup-v4 .signup-card label,
  html.ep-signup-v4 .signup-card .ep-step-tracker p,
  html.ep-signup-v4 .signup-card .ep-terms-check span,
  html.ep-signup-v1 .signup-card label {
    font: 700 12px/1.35 Arial, Helvetica, sans-serif !important;
  }

  html.ep-signin-v1 .signin-card input[type="email"],
  html.ep-signin-v1 .signin-card input[type="password"],
  html.ep-signin-v1 .signin-card input[type="text"],
  html.ep-signup-v4 .signup-card input:not([type="checkbox"]) {
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    font: 400 13px/1.4 Arial, Helvetica, sans-serif !important;
    padding: 0 14px !important;
    box-sizing: border-box !important;
  }
  html.ep-signin-v1 .signin-card input::placeholder,
  html.ep-signup-v4 .signup-card input::placeholder {
    font-size: 13px !important;
  }

  html.ep-signin-v1 .signin-card .password-field,
  html.ep-signup-v4 .signup-card .password-field {
    position: relative !important;
  }
  html.ep-signin-v1 .signin-card .password-toggle,
  html.ep-signup-v4 .signup-card .password-toggle {
    width: 38px !important;
    height: 38px !important;
    right: 7px !important;
  }

  html.ep-signin-v1 .signin-card .signin-links {
    margin-top: 8px !important;
    margin-bottom: 14px !important;
    text-align: right !important;
  }
  html.ep-signin-v1 .signin-card .forgot-link,
  html.ep-signup-v4 .signup-card .ep-terms-check span,
  html.ep-signup-v4 .signup-card .ep-terms-check a {
    font-size: 12px !important;
  }

  html.ep-signin-v1 .signin-card .signin-btn,
  html.ep-signup-v4 .signup-card .auth-submit-btn,
  html.ep-signup-v4 .signup-card .ep-step-actions .ep-step-next,
  html.ep-signup-v4 .signup-card .ep-step-actions .auth-submit-btn {
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    font: 800 14px/1 Arial, Helvetica, sans-serif !important;
  }
  html.ep-signup-v4 .signup-card .ep-step-actions .ep-step-back {
    min-height: 48px !important;
    border-radius: 12px !important;
    font: 700 12px/1 Arial, Helvetica, sans-serif !important;
  }

  html.ep-signin-v1 .signin-card .google-auth-divider,
  html.ep-signup-v4 .signup-card .google-auth-divider {
    margin: 18px 0 16px !important;
  }
  html.ep-signin-v1 .signin-card .google-auth-divider span,
  html.ep-signup-v4 .signup-card .google-auth-divider span {
    font: 700 11px/1 Arial, Helvetica, sans-serif !important;
  }
  html.ep-signin-v1 .signin-card .google-auth-block,
  html.ep-signup-v4 .signup-card .google-auth-block {
    display: flex !important;
    justify-content: center !important;
  }
  html.ep-signin-v1 .signin-card .g_id_signin,
  html.ep-signup-v4 .signup-card .g_id_signin {
    margin: 0 auto !important;
  }

  html.ep-signin-v1 .signin-card .bottom-text,
  html.ep-signin-v1 .signin-card .guest-link,
  html.ep-signup-v4 .signup-card .auth-bottom-text,
  html.ep-signup-v4 .signup-card .guest-link {
    display: block !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
  }
  html.ep-signin-v1 .signin-card .bottom-text,
  html.ep-signup-v4 .signup-card .auth-bottom-text {
    margin-top: 18px !important;
    margin-bottom: 8px !important;
  }
  html.ep-signin-v1 .signin-card .bottom-text a,
  html.ep-signup-v4 .signup-card .auth-bottom-text a,
  html.ep-signin-v1 .signin-card .guest-link,
  html.ep-signup-v4 .signup-card .guest-link {
    font-size: 12px !important;
  }

  /* Sign-up step tracker consistency */
  html.ep-signup-v4 .signup-card .ep-step-tracker {
    margin: 0 0 18px !important;
    text-align: left !important;
  }
  html.ep-signup-v4 .signup-card .ep-step-tracker-caption {
    font: 800 10px/1.2 Arial, Helvetica, sans-serif !important;
    letter-spacing: .09em !important;
  }
  html.ep-signup-v4 .signup-card .ep-step-tracker h2,
  html.ep-signup-v4 .signup-card.ep-steps-ready .ep-step-tracker h2 {
    margin: 14px 0 6px !important;
    font: 800 25px/1.08 Arial, Helvetica, sans-serif !important;
    letter-spacing: -.04em !important;
  }
  html.ep-signup-v4 .signup-card .ep-step-tracker p,
  html.ep-signup-v4 .signup-card.ep-steps-ready .ep-step-tracker p {
    font: 400 13px/1.5 Arial, Helvetica, sans-serif !important;
    color: #5d7991 !important;
  }

  html.ep-signup-v4 .signup-card .name-row {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* Small screen guard */
  @media screen and (max-width: 430px) {
    html.ep-signin-v1 .signin-container,
    html.ep-signup-v4 .auth-page {
      padding-left: 12px !important;
      padding-right: 12px !important;
    }
    html.ep-signin-v1 .signin-card,
    html.ep-signup-v4 .auth-card.signup-card {
      width: min(100%, 374px) !important;
      padding: 24px 18px 22px !important;
      border-radius: 20px !important;
    }
    html.ep-signin-v1 .signin-card > h1,
    html.ep-signup-v4 .signup-card > h1 {
      font-size: 25px !important;
    }
    html.ep-signup-v4 .signup-card .ep-step-tracker h2,
    html.ep-signup-v4 .signup-card.ep-steps-ready .ep-step-tracker h2 {
      font-size: 23px !important;
    }
  }
}
