/* =========================================================================
   Accounts: the returning-customer login, the optional account at checkout,
   and the My Account screens. WooCommerce ships no styling here because its
   own stylesheets are dequeued.
   ========================================================================= */

/* ---------- Returning customer bar ---------- */
.woocommerce-form-login-toggle .woocommerce-info {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.woocommerce-form-login-toggle .woocommerce-info a,
.woocommerce-form-coupon-toggle .woocommerce-info a {
  color: var(--accent);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.woocommerce-form-login-toggle .woocommerce-info a:hover { color: var(--accent-lift); }

/* ---------- Login form at checkout and on My Account ---------- */
.woocommerce form.woocommerce-form-login,
.woocommerce form.register {
  display: grid;
  gap: var(--space-sm);
  margin: 0 0 var(--space-lg);
  padding: var(--space-md);
  background: var(--surface);
  border: 1px solid var(--hairline);
  border-radius: var(--radius-lg);
}
.woocommerce form.woocommerce-form-login p:not(.form-row),
.woocommerce form.register p:not(.form-row) {
  color: var(--muted);
  font-size: 0.92rem;
  margin: 0;
}
.woocommerce form.woocommerce-form-login .button,
.woocommerce form.register .button { justify-self: start; }

.woocommerce-form-login__rememberme,
.woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center;
  gap: 9px;
  font-size: 0.9rem;
  font-weight: 400 !important;
  color: var(--muted);
  cursor: pointer;
}
.woocommerce-form__input-checkbox {
  width: 17px;
  height: 17px;
  margin: 0;
  flex: none;
  accent-color: var(--accent);
  cursor: pointer;
}
.woocommerce-LostPassword { margin: 0; }
.woocommerce-LostPassword a { color: var(--info); font-size: 0.88rem; }
.woocommerce-LostPassword a:hover { text-decoration: underline; }

/* ---------- Optional account during checkout ---------- */
.woocommerce-account-fields {
  margin-top: var(--space-sm);
  padding-top: var(--space-sm);
  border-top: 1px solid var(--hairline);
}
.woocommerce-account-fields > p.form-row { margin-bottom: 0; }
.woocommerce-account-fields .create-account {
  margin-top: var(--space-sm);
  padding: var(--space-sm);
  background: var(--bg);
  border: 1px solid var(--hairline);
  border-radius: var(--radius-md);
}
.woocommerce-account-fields .create-account p:first-child { margin-top: 0; }

/* Make the choice read as a genuine option rather than fine print. */
.woocommerce-account-fields .woocommerce-form__label-for-checkbox {
  font-weight: 600 !important;
  color: var(--ink);
  font-size: 0.94rem;
}

/* ---------- Password strength meter ---------- */
.woocommerce .woocommerce-password-strength {
  padding: 8px 12px;
  border-radius: var(--radius-sm);
  font-size: 0.82rem;
  font-weight: 600;
  border: 1px solid var(--hairline);
  background: var(--bg);
  color: var(--muted);
  margin-top: 6px;
}
.woocommerce .woocommerce-password-strength.short,
.woocommerce .woocommerce-password-strength.bad { border-color: var(--energy); color: var(--energy); }
.woocommerce .woocommerce-password-strength.good { border-color: var(--info); color: var(--info); }
.woocommerce .woocommerce-password-strength.strong { border-color: var(--accent); color: var(--accent); }
.woocommerce .woocommerce-password-hint { display: block; margin-top: 6px; font-size: 0.8rem; color: var(--muted); }

/* Reveal toggle WooCommerce injects into password fields. */
.woocommerce .password-input { display: block; position: relative; }
.woocommerce .show-password-input {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  color: var(--muted);
}
.woocommerce .show-password-input::after { content: "Show"; font-size: 0.78rem; font-weight: 600; }
.woocommerce .show-password-input.display-password::after { content: "Hide"; }

/* ---------- My Account ---------- */
.woocommerce-account .woocommerce-MyAccount-content {
  background: var(--surface);
  border: 1px solid var(--hairline);
  border-radius: var(--radius-lg);
  padding: var(--space-md);
  color: var(--muted);
}
.woocommerce-account .woocommerce-MyAccount-content a { color: var(--info); }
.woocommerce-account .woocommerce-MyAccount-content strong { color: var(--ink); }

@media (min-width: 761px) {
  .woocommerce-account .woocommerce-MyAccount-navigation {
    float: left;
    width: 25%;
    padding-right: var(--space-md);
  }
  .woocommerce-account .woocommerce-MyAccount-content { float: right; width: 75%; }
  .woocommerce-account .woocommerce::after { content: ""; display: table; clear: both; }
}

/* Two column login / register on My Account, single column on narrow screens. */
.woocommerce-account .u-columns.col2-set {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}
.woocommerce-account .u-columns.col2-set .col-1,
.woocommerce-account .u-columns.col2-set .col-2 { width: auto; float: none; }
.woocommerce-account .u-columns h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.3rem;
  margin-bottom: var(--space-sm);
}

@media (max-width: 760px) {
  .woocommerce-account .u-columns.col2-set { grid-template-columns: 1fr; }
}
