/**
 * Guest auth — My Account (minimal) + checkout password helpers.
 */

body.mascap-auth-page {
  background: var(--mascap-color-bg, #f7f8fa);
}

body.mascap-auth-page .mascap-account__page-head,
body.mascap-auth-page .woocommerce > h2,
body.mascap-auth-page #customer_login > h2 {
  display: none !important;
}

body.mascap-auth-page .woocommerce .u-columns.col2-set#customer_login {
  display: block;
  max-width: none;
}

body.mascap-auth-page .entry-header,
body.mascap-auth-page .page-header {
  display: none;
}

/* Neutralize inherited Woo / theme accents inside auth */
body.mascap-auth-page .mascap-auth--minimal a,
body.mascap-auth-page .mascap-auth--minimal button {
  --e-global-color-accent: var(--mascap-color-brand, #0b6e4f);
}

body.mascap-auth-page .mascap-auth--minimal .input-text:focus,
body.mascap-auth-page .mascap-auth--minimal input:focus,
body.mascap-auth-page .mascap-auth--minimal select:focus,
body.mascap-auth-page .mascap-auth--minimal .button:focus:not(.mascap-auth__password-toggle),
body.mascap-auth-page .mascap-auth--minimal .button:focus-visible:not(.mascap-auth__password-toggle) {
  outline: none !important;
  box-shadow: 0 0 0 2px var(--mascap-color-brand-soft, #e8f5f0) !important;
  border-color: var(--mascap-color-brand, #0b6e4f) !important;
}

body.mascap-auth-page .mascap-auth--minimal .woocommerce-form__input-checkbox:focus {
  outline: 2px solid var(--mascap-color-brand, #0b6e4f);
  outline-offset: 2px;
}

/* Layout */
.mascap-auth--minimal {
  width: 100%;
}

.mascap-auth__shell {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: min(72vh, calc(100vh - var(--mascap-header-height, 72px) - 5rem));
  padding: var(--mascap-space-6, 1.5rem) var(--mascap-space-4, 1rem);
  box-sizing: border-box;
}

.mascap-auth__card {
  width: 100%;
  max-width: 28rem;
  background: var(--mascap-color-surface, #fff);
  border: 1px solid var(--mascap-color-border-subtle, #eef0f3);
  border-radius: 12px;
  box-shadow: 0 8px 32px rgba(20, 24, 31, 0.06);
  padding: var(--mascap-space-6, 1.5rem) var(--mascap-space-5, 1.25rem);
  box-sizing: border-box;
}

@media (min-width: 480px) {
  .mascap-auth__card {
    padding: var(--mascap-space-8, 2rem) var(--mascap-space-6, 1.5rem);
  }
}

.mascap-auth__pane {
  display: none;
}

.mascap-auth__pane.is-active {
  display: block;
}

.mascap-auth__title {
  font-size: 1.0625rem;
  font-weight: var(--mascap-weight-semibold, 600);
  line-height: 1.35;
  margin: 0 0 0.375rem;
  color: var(--mascap-color-text, #14181f);
  letter-spacing: -0.015em;
}

/* Elementor kit global h1 (e.g. .elementor-kit-9878 h1 { font-size: 4rem }) wins without higher specificity */
body.mascap-auth-page .mascap-auth--minimal h1.mascap-auth__title {
  font-size: 1.0625rem;
  font-weight: var(--mascap-weight-semibold, 600);
  line-height: 1.35;
  margin: 0 0 0.375rem;
  color: var(--mascap-color-text, #14181f);
  letter-spacing: -0.015em;
}

/* WooCommerce show-password control (injected next to our icon toggle) */
body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap .show-password-input {
  display: none;
}

/* Password toggle: icon only — neutralize Woo / Elementor / theme button chrome */
body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap button.mascap-auth__password-toggle {
  position: absolute;
  right: 0.6875rem;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  min-width: 0;
  min-height: 0;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #4a5565;
  cursor: pointer;
  line-height: 0;
  appearance: none;
  -webkit-appearance: none;
}

body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap button.mascap-auth__password-toggle:hover {
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #374151;
}

body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap button.mascap-auth__password-toggle:focus {
  outline: none;
  box-shadow: none;
  border: 0;
  background: transparent;
}

body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap button.mascap-auth__password-toggle:focus-visible {
  outline: 2px solid var(--mascap-color-brand, #0b6e4f);
  outline-offset: 2px;
  border-radius: 2px;
  box-shadow: none;
  border: 0;
  background: transparent;
}

body.mascap-auth-page .mascap-auth--minimal .mascap-auth__password-wrap button.mascap-auth__password-toggle .mascap-auth__icon {
  width: 1.125rem;
  height: 1.125rem;
}

.mascap-auth__lede {
  margin: 0 0 var(--mascap-space-5, 1.25rem);
  font-size: var(--mascap-text-sm, 0.875rem);
  line-height: 1.45;
  color: var(--mascap-color-text-secondary, #4a5565);
}

.mascap-auth__form .form-row {
  margin-bottom: var(--mascap-space-4, 1rem);
}

.mascap-auth__form label {
  display: block;
  font-size: var(--mascap-text-sm, 0.875rem);
  font-weight: var(--mascap-weight-medium, 500);
  margin-bottom: 0.35rem;
  color: var(--mascap-color-text, #14181f);
}

.mascap-auth__form .input-text,
.mascap-auth__form input[type="email"],
.mascap-auth__form input[type="password"],
.mascap-auth__form input[type="text"] {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  min-height: 44px;
  padding: 0.6rem 0.75rem;
  border: 1px solid var(--mascap-color-border, #e4e7ec);
  border-radius: 8px;
  font-size: 0.9375rem;
  background: var(--mascap-color-surface, #fff);
  color: var(--mascap-color-text, #14181f);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mascap-auth__password-wrap {
  display: block;
  position: relative;
}

.mascap-auth__password-wrap .mascap-auth__password-input {
  padding-right: 2.75rem;
}

.mascap-auth__password-toggle .mascap-auth__icon {
  display: block;
  width: 1.125rem;
  height: 1.125rem;
  pointer-events: none;
}

.mascap-auth__password-toggle .mascap-auth__icon--eye-off {
  display: none;
}

.mascap-auth__password-toggle.is-visible .mascap-auth__icon--eye {
  display: none;
}

.mascap-auth__password-toggle.is-visible .mascap-auth__icon--eye-off {
  display: block;
}

.mascap-auth__strength {
  display: block;
  margin-top: 0.35rem;
  font-size: var(--mascap-text-xs, 0.75rem);
  color: var(--mascap-color-text-muted, #6b7280);
}

.mascap-auth__strength.is-weak {
  color: #b45309;
}

.mascap-auth__strength.is-medium {
  color: #4a5565;
}

.mascap-auth__strength.is-strong {
  color: var(--mascap-color-brand, #0b6e4f);
}

/* Register name fields: full width (override Woo form-row-first/last floats) */
body.mascap-auth-page .mascap-auth__form .form-row-first,
body.mascap-auth-page .mascap-auth__form .form-row-last,
body.mascap-auth-page .mascap-auth__form .form-row-wide {
  width: 100%;
  float: none;
  clear: both;
}

.mascap-auth__row-actions {
  display: flex;
  flex-direction: column;
  gap: var(--mascap-space-4, 1rem);
  align-items: stretch;
  margin-top: var(--mascap-space-2, 0.5rem);
}

.mascap-auth__remember {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: var(--mascap-text-sm, 0.875rem);
  font-weight: var(--mascap-weight-normal, 400);
  color: var(--mascap-color-text-secondary, #4a5565);
}

.mascap-auth__submit,
.mascap-auth__form .woocommerce-button.button {
  width: 100%;
  min-height: 44px;
  border: none !important;
  border-radius: 8px !important;
  background: var(--mascap-color-brand, #0b6e4f) !important;
  color: #fff !important;
  font-weight: var(--mascap-weight-semibold, 600) !important;
  font-size: 0.9375rem !important;
  padding: 0.65rem 1rem !important;
  cursor: pointer;
  transition: background 0.15s ease;
  box-shadow: none !important;
}

.mascap-auth__submit:hover,
.mascap-auth__form .woocommerce-button.button:hover {
  background: var(--mascap-color-brand-hover, #095a41) !important;
  color: #fff !important;
}

.mascap-auth__lost {
  text-align: center;
  margin: var(--mascap-space-3, 0.75rem) 0 0;
  font-size: var(--mascap-text-sm, 0.875rem);
}

.mascap-auth__lost a {
  color: var(--mascap-color-text-secondary, #4a5565);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mascap-auth__lost a:hover {
  color: var(--mascap-color-brand, #0b6e4f);
}

.mascap-auth__switch {
  margin-top: var(--mascap-space-5, 1.25rem);
  padding-top: var(--mascap-space-4, 1rem);
  border-top: 1px solid var(--mascap-color-border-subtle, #eef0f3);
  text-align: center;
  font-size: var(--mascap-text-sm, 0.875rem);
  color: var(--mascap-color-text-muted, #6b7280);
}

.mascap-auth__switch-link {
  font-weight: var(--mascap-weight-medium, 500);
  color: var(--mascap-color-brand, #0b6e4f);
  text-decoration: none;
  margin-left: 0.25rem;
}

.mascap-auth__switch-link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* WooCommerce notices */
body.mascap-auth-page .woocommerce-notices-wrapper,
.mascap-auth__notices .woocommerce-error,
.mascap-auth__notices .woocommerce-message,
.mascap-auth__notices .woocommerce-info {
  list-style: none;
  margin: 0 0 var(--mascap-space-4, 1rem);
  padding: 0;
}

body.mascap-auth-page .woocommerce-error,
body.mascap-auth-page .woocommerce-message,
body.mascap-auth-page .woocommerce-info,
.mascap-auth__notices .woocommerce-error li,
.mascap-auth__notices .woocommerce-message,
.mascap-auth__notices .woocommerce-info {
  border-radius: 8px;
  padding: var(--mascap-space-3, 0.75rem) var(--mascap-space-4, 1rem);
  font-size: var(--mascap-text-sm, 0.875rem);
  border-left: 3px solid;
}

body.mascap-auth-page .woocommerce-error,
.mascap-auth__notices .woocommerce-error li {
  background: #fef2f2;
  border-left-color: #dc2626;
  color: #991b1b;
}

body.mascap-auth-page .woocommerce-message {
  background: var(--mascap-color-brand-soft, #e8f5f0);
  border-left-color: var(--mascap-color-brand, #0b6e4f);
  color: #065f46;
}

/* Checkout block password confirm (injected class) */
body.woocommerce-checkout .mascap-checkout-password-confirm label {
  font-weight: 500;
}
