/* Component rules keep native WooCommerce forms and hooks in the account theme. */
body.axe-customer-account .aa-account .aa-back-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin-bottom: var(--aa-space-2);
}
body.axe-customer-account .aa-account .aa-page-heading h2,
body.axe-customer-account .aa-account .aa-detail-heading h2 {
  font-size: var(--axe-site-heading-size, 1.5rem) !important;
  line-height: var(--axe-site-heading-leading, 2rem) !important;
}
body.axe-customer-account .aa-account .aa-page-heading {
  margin-bottom: var(--aa-space-6);
}
body.axe-customer-account .aa-account .aa-detail-heading {
  margin-bottom: var(--aa-space-6);
}
body.axe-customer-account .aa-account .aa-section,
body.axe-customer-account .aa-account .aa-service {
  margin-top: var(--aa-space-8);
}
body.axe-customer-account .aa-account .aa-card {
  padding: var(--aa-card-padding);
}
body.axe-customer-account .aa-account .aa-card > :last-child {
  margin-bottom: 0;
}
body.axe-customer-account .aa-account .aa-meta {
  font-size: var(--axe-site-small-size, 0.875rem) !important;
  line-height: var(--axe-site-small-leading, 1.25rem) !important;
}
body.axe-customer-account .aa-account .aa-stock-card h3,
body.axe-customer-account .aa-account .aa-service h3 {
  font-family: var(--aa-body) !important;
  font-size: var(--axe-site-body-size, 1rem) !important;
  line-height: var(--axe-site-body-leading, 1.5rem) !important;
}
body.axe-customer-account
  .aa-account
  .aa-order-summary
  .aa-summary-total
  :is(dt, dd) {
  font-size: 18px !important;
}
body.axe-customer-account .aa-account .aa-order-summary > .aa-actions:empty {
  display: none;
}
body.axe-customer-account .aa-account .aa-detail-help {
  margin-top: var(--aa-space-6);
  padding-top: var(--aa-space-6);
}
body.axe-customer-account .aa-account .woocommerce-Addresses,
body.axe-customer-account .aa-account .woocommerce-columns--addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--aa-space-6);
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-Addresses, .woocommerce-columns--addresses)::before,
body.axe-customer-account
  .aa-account
  :is(.woocommerce-Addresses, .woocommerce-columns--addresses)::after {
  content: none;
}
body.axe-customer-account
  .aa-account
  .woocommerce-Addresses
  .woocommerce-Address,
body.axe-customer-account
  .aa-account
  .woocommerce-columns--addresses
  .woocommerce-column {
  width: auto;
  min-width: 0;
  float: none;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  .woocommerce-Addresses
  .woocommerce-Address,
body.axe-customer-account
  .aa-account
  .aa-order-view
  .woocommerce-customer-details {
  padding: var(--aa-card-padding);
  border-radius: 4px;
}
body.axe-customer-account
  .aa-account
  .woocommerce-Address
  .woocommerce-Address-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--aa-space-2) var(--aa-space-4);
  margin-bottom: var(--aa-space-4);
}
body.axe-customer-account
  .aa-account
  .woocommerce-Address
  .woocommerce-Address-title
  h2,
body.axe-customer-account
  .aa-account
  .woocommerce-customer-details
  .woocommerce-column__title {
  float: none;
  font-size: var(--axe-site-subheading-size, 1.25rem) !important;
  line-height: var(--axe-site-subheading-leading, 1.75rem) !important;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  .woocommerce-customer-details
  .woocommerce-column__title {
  margin-bottom: var(--aa-space-4);
}
body.axe-customer-account .aa-account .woocommerce-Address .edit {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  float: none;
  font-size: var(--axe-site-small-size, 0.875rem);
}
body.axe-customer-account .aa-account .aa-account-addresses {
  scroll-margin-top: 160px;
  max-width: var(--aa-form-width);
}
body.axe-customer-account .aa-account .aa-profile-addresses .aa-address-card {
  border-radius: 4px;
}
body.axe-customer-account
  .aa-account
  .aa-address-card
  .woocommerce-Address-title {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  align-items: start;
}
body.axe-customer-account .aa-account .aa-address-title {
  margin: 0;
  font-size: var(--axe-site-subheading-size, 1.25rem) !important;
  line-height: var(--axe-site-subheading-leading, 1.75rem) !important;
}
body.axe-customer-account .aa-account .aa-address-card .aa-address-edit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid var(--aa-line);
  border-radius: 2px;
  text-decoration: none;
}
body.axe-customer-account .aa-account .aa-address-edit:hover {
  background: var(--aa-soft);
}
body.axe-customer-account .aa-account .aa-quick-link:only-child {
  grid-column: 1 / -1;
}
body.axe-customer-account .aa-account .aa-help-card {
  display: grid;
  justify-items: start;
  gap: var(--aa-space-4);
}
body.axe-customer-account .aa-account .woocommerce-Address address,
body.axe-customer-account .aa-account .woocommerce-customer-details address {
  font-style: normal;
  overflow-wrap: anywhere;
}
body.axe-customer-account
  .aa-account
  .aa-account-content
  > form:has(.woocommerce-address-fields),
body.axe-customer-account .aa-account .woocommerce-EditAccountForm,
body.axe-customer-account .aa-account #add_payment_method {
  width: 100%;
  max-width: var(--aa-form-width);
  margin: 0;
  padding: var(--aa-card-padding);
  border: 1px solid var(--aa-line);
  border-radius: 4px;
  background: var(--aa-surface);
}
body.axe-customer-account .aa-account .aa-account-content > form > h2 {
  margin-bottom: var(--aa-space-6);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .form-row {
  min-width: 0;
  padding: 0;
  margin: 0 0 var(--aa-space-6);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .form-row
  > label {
  display: block;
  margin-bottom: var(--aa-space-2);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(.woocommerce-input-wrapper, .password-input) {
  display: block;
  width: 100%;
  min-width: 0;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(
    input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(
        [type="submit"]
      ):not([type="button"]),
    select,
    textarea
  ) {
  width: 100%;
  max-width: 100%;
  min-height: var(--aa-control-height);
  padding: var(--aa-control-inset) var(--aa-space-3);
  color: var(--aa-ink);
  background: var(--aa-surface);
  border: 1px solid var(--aa-line);
  border-radius: 2px;
  box-sizing: border-box;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  textarea {
  min-height: 136px;
  padding: var(--aa-space-3);
  resize: vertical;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .password-input
  input {
  padding-right: var(--aa-space-14);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .show-password-input {
  top: 0;
  right: 0;
  width: 44px;
  min-height: var(--aa-control-height);
  transform: none;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  label:has(input:is([type="checkbox"], [type="radio"])) {
  display: flex;
  align-items: flex-start;
  gap: var(--aa-space-2);
  min-height: 24px;
  margin-bottom: 0;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  input:is([type="checkbox"], [type="radio"]) {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
  accent-color: var(--aa-navy);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(.select2-container, .selectWoo-container) {
  width: 100% !important;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .select2-selection--single {
  min-height: var(--aa-control-height);
  border: 1px solid var(--aa-line);
  border-radius: 2px;
  background: var(--aa-surface);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .select2-selection__rendered {
  padding: var(--aa-control-inset) var(--aa-space-10) var(--aa-control-inset)
    var(--aa-space-3) !important;
  line-height: 24px !important;
  color: var(--aa-ink);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .select2-selection__arrow {
  top: 0;
  bottom: 0;
  right: var(--aa-space-3);
  height: auto;
}
body:is(.axe-customer-account, .axe-customer-auth)
  > .select2-container
  .select2-dropdown {
  border: 1px solid var(--aa-line);
  color: var(--aa-ink);
  font-family: var(--aa-body);
}
body:is(.axe-customer-account, .axe-customer-auth)
  > .select2-container
  .select2-search__field {
  min-height: 44px;
  padding: var(--aa-space-2) var(--aa-space-3);
  border: 1px solid var(--aa-line);
  font: 400 16px/24px var(--aa-body);
}
body:is(.axe-customer-account, .axe-customer-auth)
  > .select2-container
  .select2-results__option {
  padding: var(--aa-space-3) var(--aa-space-4);
}
body:is(.axe-customer-account, .axe-customer-auth)
  > .select2-container
  .select2-results__option--highlighted[aria-selected] {
  color: var(--aa-surface);
  background: var(--aa-navy);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(input, select, textarea, button, .select2-selection):focus-visible {
  outline: 3px solid var(--aa-brass);
  outline-offset: 3px;
}
body.axe-customer-account .aa-account .woocommerce-EditAccountForm,
body.axe-customer-account
  .aa-account
  .woocommerce-address-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: var(--aa-space-6);
}
body.axe-customer-account .aa-account .woocommerce-EditAccountForm > *,
body.axe-customer-account
  .aa-account
  .woocommerce-address-fields__field-wrapper
  > * {
  grid-column: 1 / -1;
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-EditAccountForm, .woocommerce-address-fields__field-wrapper)
  > .form-row-first {
  grid-column: 1;
  float: none;
  width: 100%;
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-EditAccountForm, .woocommerce-address-fields__field-wrapper)
  > .form-row-last {
  grid-column: 2;
  float: none;
  width: 100%;
}
body.axe-customer-account .aa-account .woocommerce-EditAccountForm > .clear {
  display: none;
}
body.axe-customer-account .aa-account .woocommerce-EditAccountForm fieldset {
  min-width: 0;
  margin: var(--aa-space-2) 0 var(--aa-space-6);
  padding: var(--aa-space-6) 0 0;
  border: 0;
  border-top: 1px solid var(--aa-line);
}
body.axe-customer-account .aa-account .woocommerce-EditAccountForm legend {
  padding: 0 var(--aa-space-4) 0 0;
  margin: 0;
  color: var(--aa-ink);
  font: 500 var(--axe-site-subheading-size, 1.25rem) / 1.4 var(--aa-heading);
}
body.axe-customer-account .aa-account .aa-password-change {
  min-width: 0;
  margin: var(--aa-space-2) 0 var(--aa-space-6);
  border-top: 1px solid var(--aa-line);
}
body.axe-customer-account .aa-account .aa-password-change > summary {
  min-height: var(--aa-control-height);
  padding: var(--aa-space-3) 0;
  color: var(--aa-ink);
  font: 500 var(--axe-site-subheading-size, 1.25rem) / 1.4 var(--aa-heading);
  cursor: pointer;
}
body.axe-customer-account
  .aa-account
  .aa-password-change
  > summary:focus-visible {
  outline: 3px solid var(--aa-brass);
  outline-offset: 3px;
}
body.axe-customer-account .aa-account .aa-password-change > fieldset {
  margin: 0;
  padding: var(--aa-space-4) 0 0;
  border: 0;
}
body.axe-customer-account
  .aa-account
  .woocommerce-EditAccountForm
  fieldset
  > .form-row:last-child,
body.axe-customer-account
  .aa-account
  .woocommerce-EditAccountForm
  > p:last-child,
body.axe-customer-account
  .aa-account
  .woocommerce-address-fields
  > p:last-child {
  margin-bottom: 0;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(
    #account_display_name_description,
    .form-row .description,
    .woocommerce-password-hint,
    .woocommerce-privacy-policy-text p
  ) {
  display: block;
  margin-top: var(--aa-space-2);
  color: var(--aa-muted);
  font-size: var(--axe-site-small-size, 0.875rem) !important;
  line-height: var(--axe-site-small-leading, 1.25rem) !important;
  font-style: normal;
}
body.axe-customer-account .aa-account #account_display_name_description em {
  font-style: normal;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(.woocommerce-info, .woocommerce-message, .woocommerce-error) {
  padding: var(--aa-space-4) var(--aa-space-5) var(--aa-space-4)
    var(--aa-space-12);
  margin: 0 0 var(--aa-space-6);
  border: 1px solid var(--aa-line);
  border-left: 3px solid var(--aa-brass);
  border-radius: 4px;
  background: var(--aa-surface);
  color: var(--aa-ink);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before {
  left: var(--aa-space-4);
  top: var(--aa-space-4);
  color: var(--aa-brass);
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  .woocommerce-error {
  border-left-color: #9f3327;
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-orders-table, .woocommerce-MyAccount-paymentMethods) {
  width: 100%;
  margin: 0 0 var(--aa-space-6);
  border: 1px solid var(--aa-line);
  border-collapse: collapse;
  background: var(--aa-surface);
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-orders-table, .woocommerce-MyAccount-paymentMethods)
  :is(th, td) {
  padding: var(--aa-space-4);
  border: 0;
  border-bottom: 1px solid var(--aa-line);
  vertical-align: middle;
  overflow-wrap: anywhere;
}
body.axe-customer-account
  .aa-account
  :is(.woocommerce-orders-table, .woocommerce-MyAccount-paymentMethods)
  thead
  th {
  background: var(--aa-soft);
}
body.axe-customer-account .aa-account .woocommerce-orders-table mark {
  color: var(--aa-ink);
  background: var(--aa-soft);
  padding: var(--aa-space-1) var(--aa-space-2);
  font-weight: 400;
}
body.axe-customer-account .aa-account .woocommerce-orders-table .button {
  margin: 0;
}
body.axe-customer-account .aa-account .woocommerce-Pagination {
  display: flex;
  flex-wrap: wrap;
  gap: var(--aa-space-3);
}
body.axe-customer-account .aa-account #add_payment_method #payment {
  background: transparent;
  border: 0;
  padding: 0;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .payment_methods {
  margin: 0;
  padding: 0;
  border: 0;
  list-style: none;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .woocommerce-PaymentMethod {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: var(--aa-space-4) var(--aa-space-3);
  padding: 0;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .woocommerce-PaymentMethod::before,
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .woocommerce-PaymentMethod::after {
  content: none;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .woocommerce-PaymentMethod
  > input {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .woocommerce-PaymentMethod
  > label {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--aa-space-2);
  min-width: 0;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  .woocommerce-PaymentMethod
  > label
  img {
  float: none;
  margin: 0;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .payment_box {
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 2px;
}
body.axe-customer-account
  .aa-account
  #add_payment_method
  #payment
  .payment_box::before {
  content: none;
}
body.axe-customer-account .aa-account #add_payment_method fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
body.axe-customer-account .aa-account #add_payment_method #payment > .form-row {
  padding: var(--aa-space-6) 0 0;
  margin: 0;
}
:is(body.axe-customer-account .aa-account, body.axe-customer-auth .woocommerce)
  :is(.button, .aa-button) {
  min-height: var(--aa-control-height);
  padding: var(--aa-control-inset) var(--aa-space-6);
  font-family: var(--aa-heading) !important;
  font-size: var(--axe-site-body-size, 1rem) !important;
  line-height: var(--axe-site-body-leading, 1.5rem) !important;
  font-weight: 600 !important;
}
body.axe-customer-auth .site-inner {
  width: calc(100% - 24px);
  max-width: 1120px;
  padding: var(--aa-space-10) 0 var(--aa-space-14);
}
body.axe-customer-auth .site-inner .content {
  width: 100%;
  max-width: none;
}
body.axe-customer-auth .entry-header {
  margin-bottom: var(--aa-space-6);
}
body.axe-customer-auth #customer_login {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: var(--aa-space-8);
  margin: 0;
}
body.axe-customer-auth #customer_login::before,
body.axe-customer-auth #customer_login::after {
  content: none;
}
body.axe-customer-auth #customer_login > [class*="u-column"] {
  width: auto;
  float: none;
  min-width: 0;
  padding: var(--aa-card-padding);
  margin: 0;
  background: var(--aa-surface);
  border: 1px solid var(--aa-line);
  border-top: 3px solid var(--aa-brass);
  border-radius: 4px;
}
body.axe-customer-auth #customer_login h2 {
  margin: 0 0 var(--aa-space-6);
}
body.axe-customer-auth .woocommerce form:is(.login, .register) {
  margin: 0;
  padding: 0;
  border: 0;
}
body.axe-customer-auth .woocommerce form p {
  margin: 0 0 var(--aa-space-6);
}
body.axe-customer-auth .woocommerce form p:last-child {
  margin-bottom: 0;
}
body.axe-customer-auth .woocommerce .button {
  background: var(--aa-navy);
  border: 1px solid var(--aa-navy);
  border-radius: 2px;
  color: var(--aa-surface);
}
body.axe-customer-auth .woocommerce .woocommerce-form-login__submit {
  margin: var(--aa-space-3) 0 0;
  width: 100%;
}
body.axe-customer-auth .woocommerce a {
  color: var(--aa-navy);
  text-underline-offset: 4px;
}
body.axe-customer-auth .woocommerce .lost_reset_password {
  width: 100%;
  max-width: 40rem;
  padding: var(--aa-card-padding);
  margin: 0 auto;
  border: 1px solid var(--aa-line);
  border-top: 3px solid var(--aa-brass);
  border-radius: 4px;
  background: var(--aa-surface);
}
body.axe-customer-auth .lost_reset_password .form-row {
  float: none;
  width: 100%;
}
body.axe-customer-auth:has(.lost_reset_password) .entry-header {
  max-width: 40rem;
  margin-inline: auto;
}
@media (max-width: 767px) {
  body.axe-customer-account .aa-account .aa-section,
  body.axe-customer-account .aa-account .aa-service {
    margin-top: var(--aa-space-6);
  }
  body.axe-customer-account .aa-account .woocommerce-Addresses,
  body.axe-customer-account .aa-account .woocommerce-columns--addresses,
  body.axe-customer-account .aa-account .woocommerce-EditAccountForm,
  body.axe-customer-account
    .aa-account
    .woocommerce-address-fields__field-wrapper,
  body.axe-customer-auth #customer_login {
    grid-template-columns: minmax(0, 1fr);
  }
  body.axe-customer-account
    .aa-account
    :is(
      .woocommerce-EditAccountForm,
      .woocommerce-address-fields__field-wrapper
    )
    > .form-row-last {
    grid-column: 1;
  }
  body.axe-customer-account .aa-account table.shop_table_responsive {
    border: 0;
    background: transparent;
  }
  body.axe-customer-account .aa-account table.shop_table_responsive tr {
    display: block;
    border: 1px solid var(--aa-line);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: var(--aa-space-4);
    background: var(--aa-surface);
  }
  body.axe-customer-account
    .aa-account
    table.shop_table_responsive
    tbody
    :is(td, th) {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--aa-space-2) var(--aa-space-4);
    padding: var(--aa-space-3) var(--aa-space-4);
    text-align: right;
    border-bottom: 1px solid var(--aa-line);
  }
  body.axe-customer-account
    .aa-account
    table.shop_table_responsive
    tbody
    :is(td, th)::before {
    float: none;
    text-align: left;
  }
  body.axe-customer-account
    .aa-account
    table.shop_table_responsive
    tbody
    tr
    > :last-child {
    border-bottom: 0;
  }
  body.axe-customer-auth #customer_login {
    gap: var(--aa-space-6);
  }
}
@media (max-width: 480px) {
  body.axe-customer-account
    .aa-account
    :is(.woocommerce-EditAccountForm, #add_payment_method)
    button[type="submit"],
  body.axe-customer-account
    .aa-account
    .woocommerce-address-fields
    button[type="submit"],
  body.axe-customer-auth .woocommerce button[type="submit"] {
    width: 100%;
  }
}
/* Square requires 250px for its hosted card fields. */
@media (max-width: 359px) {
  body.axe-customer-account .aa-account .aa-primary-nav .aa-nav-link {
    gap: var(--aa-space-1);
    padding-inline: var(--aa-space-1);
    white-space: nowrap;
  }
  body.axe-customer-account
    .aa-account
    .aa-account-content:has(#add_payment_method) {
    padding-inline: var(--aa-space-2);
  }
  body.axe-customer-account .aa-account #add_payment_method {
    padding: var(--aa-space-2);
  }
}
