/* ===== WOOCOMMERCE MY ACCOUNT — logged-in dashboard =====
   Frontend-only visual layer.
   The WooCommerce dashboard is moved out of the public login/register card by
   woocommerce.js, then styled here as a dedicated account dashboard. */

body.woocommerce-account.fe-account-loggedin,
body.logged-in.woocommerce-account {
  background:
    radial-gradient(circle at 10% 6%, rgba(30, 79, 163, .10), transparent 26rem),
    linear-gradient(180deg, #F7F9FC 0%, #EFF4FC 45%, #E9EEF6 100%);
}

/* The current template does not render a page-head block, but keep this safe
   for templates that include it. */
body.woocommerce-account.fe-account-loggedin .fe-page-head,
body.logged-in.woocommerce-account .fe-page-head {
  display: block !important;
  padding-top: 108px !important;
  padding-bottom: 30px !important;
  background:
    radial-gradient(circle at 14% 0%, rgba(30, 79, 163, .12), transparent 24rem),
    linear-gradient(180deg, var(--fe-sand), var(--fe-paper)) !important;
}

body.woocommerce-account.fe-account-loggedin .fe-page-head .fe-kicker,
body.logged-in.woocommerce-account .fe-page-head .fe-kicker {
  justify-content: center;
}

body.woocommerce-account.fe-account-loggedin .fe-page-head h1,
body.logged-in.woocommerce-account .fe-page-head h1 {
  margin-bottom: 8px !important;
}

/* Dashboard mode wrapper.
   Keep header clearance here because the site header is fixed. */
body.woocommerce-account.fe-account-loggedin .fe-account-public,
body.logged-in.woocommerce-account .fe-account-public,
body.woocommerce-account.fe-account-loggedin .fe-acc,
body.logged-in.woocommerce-account .fe-acc {
  display: block !important;
  width: min(100% - 48px, 1080px) !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: 108px 0 76px !important;
  gap: 0 !important;
}

body.admin-bar.woocommerce-account.fe-account-loggedin .fe-account-public,
body.admin-bar.logged-in.woocommerce-account .fe-account-public,
body.admin-bar.woocommerce-account.fe-account-loggedin .fe-acc,
body.admin-bar.logged-in.woocommerce-account .fe-acc {
  padding-top: 140px !important;
}

/* After JS moves the real dashboard out of the public card, hide the original
   login/register columns. This is the main desktop cleanup. */
body.woocommerce-account.fe-account-loggedin .fe-account-dashboard-mode > .wp-block-column,
body.logged-in.woocommerce-account .fe-account-dashboard-mode > .wp-block-column {
  display: none !important;
}

/* Fallback while JS is running: logged-in state must not show public UI. */
body.woocommerce-account.fe-account-loggedin .fe-acc-tabs,
body.logged-in.woocommerce-account .fe-acc-tabs,
body.woocommerce-account.fe-account-loggedin .fe-pane-login > .fe-sub,
body.logged-in.woocommerce-account .fe-pane-login > .fe-sub,
body.woocommerce-account.fe-account-loggedin .fe-pane-register,
body.logged-in.woocommerce-account .fe-pane-register,
body.woocommerce-account.fe-account-loggedin .fe-acard.fe-alt,
body.logged-in.woocommerce-account .fe-acard.fe-alt,
body.woocommerce-account.fe-account-loggedin .fe-acc-secure,
body.logged-in.woocommerce-account .fe-acc-secure {
  display: none !important;
}

body.woocommerce-account.fe-account-loggedin .fe-acard:not(.fe-alt),
body.logged-in.woocommerce-account .fe-acard:not(.fe-alt) {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Dashboard layout */
body.woocommerce-account .woocommerce.wc-dashboard,
body.woocommerce-account .fe-account-dashboard-mode > .woocommerce.wc-dashboard,
body.woocommerce-account .fe-pane-login .woocommerce.wc-dashboard {
  display: grid !important;
  grid-template-columns: 264px minmax(0, 1fr);
  gap: 20px;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto !important;
  padding: 0 !important;
  align-items: start;
  clear: both !important;
}

/* Reset WooCommerce default float/width rules, otherwise desktop splits badly. */
body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-navigation {
  grid-column: 1;
}

body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-content {
  grid-column: 2;
}

/* Account navigation */
body.woocommerce-account .woocommerce-MyAccount-navigation {
  position: sticky;
  top: 96px;
  background: rgba(255, 255, 255, .96);
  border: 1px solid var(--fe-line);
  border-radius: 22px;
  box-shadow: 0 14px 36px rgba(16, 48, 92, .09);
  padding: 10px;
}

body.admin-bar.woocommerce-account .woocommerce-MyAccount-navigation {
  top: 128px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0;
  padding: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 14px;
  color: var(--fe-muted);
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a br {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: var(--fe-blue-50);
  color: var(--fe-blue);
  transform: translateX(2px);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--fe-navy);
  color: #fff;
  box-shadow: 0 10px 22px rgba(16, 48, 92, .14);
}

/* Mobile nav trigger */
body.woocommerce-account .woocommerce-MyAccount-navigation .hamburger-button {
  display: none;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 0;
  border-radius: 16px;
  background: var(--fe-navy);
  color: #fff;
  box-shadow: 0 10px 24px rgba(16, 48, 92, .14);
  font-family: Inter, system-ui, sans-serif;
  font-size: .92rem;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .hamburger-button .icon-bar {
  display: block;
  width: 21px;
  height: 2px;
  border-radius: 999px;
  background: #fff;
  transition: transform .25s ease, opacity .18s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .hamburger-button .icon-bar + .icon-bar {
  margin-top: 5px;
}

/* Dashboard content */
body.woocommerce-account .woocommerce-MyAccount-content {
  width: 100%;
  padding: 26px 28px;
  border: 1px solid var(--fe-line);
  border-radius: 22px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 14px 36px rgba(16, 48, 92, .09);
  color: var(--fe-ink);
}

body.woocommerce-account .woocommerce-MyAccount-content p {
  margin: 0 0 14px;
  color: var(--fe-muted);
  font-size: .94rem;
  line-height: 1.7;
}

body.woocommerce-account .woocommerce-MyAccount-content p:last-child {
  margin-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content strong {
  color: var(--fe-navy);
  font-weight: 800;
}

body.woocommerce-account .woocommerce-MyAccount-content a {
  color: var(--fe-blue);
  font-weight: 750;
  text-decoration: none;
}

body.woocommerce-account .woocommerce-MyAccount-content a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Notices inside account dashboard */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-notices-wrapper {
  margin: 0 0 16px;
}

body.woocommerce-account .woocommerce-MyAccount-content .wc-block-components-notice-banner,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 0 0 14px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(30, 79, 163, .18) !important;
  border-radius: 16px !important;
  background: var(--fe-blue-50) !important;
  color: var(--fe-navy) !important;
  box-shadow: none !important;
  font-size: .86rem !important;
  line-height: 1.55 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .wc-block-components-notice-banner svg {
  width: 20px;
  height: 20px;
  min-width: 20px;
  fill: var(--fe-blue);
}

body.woocommerce-account .woocommerce-MyAccount-content .wc-block-components-notice-banner__content {
  color: var(--fe-navy);
}

/* Orders / tables / forms inside dashboard */
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
  width: 100%;
  border: 1px solid var(--fe-line);
  border-radius: 18px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  background: #fff;
}

body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td {
  padding: 13px 14px;
  border: 0;
  border-bottom: 1px solid var(--fe-line);
  font-size: .88rem;
}

body.woocommerce-account .woocommerce-MyAccount-content table.shop_table tr:last-child td {
  border-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content button.button,
body.woocommerce-account .woocommerce-MyAccount-content input.button,
body.woocommerce-account .woocommerce-MyAccount-content button[name="save_account_details"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 12px 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--fe-cta) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(35, 83, 184, .22) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  line-height: 1 !important;
}

/* Address endpoint
   WooCommerce outputs .u-columns + .u-column1/.u-column2 with classic floats.
   Reset those floats so cards stay aligned in one clean grid. */
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses.col2-set.addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses::before,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses::after,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::before,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set::after {
  display: none !important;
  content: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1.woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2.woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-1,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses .col-2 {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 20px !important;
  border: 1px solid var(--fe-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 16px !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid var(--fe-line) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  margin: 0 !important;
  color: var(--fe-night) !important;
  font-family: Sora, Inter, system-ui, sans-serif !important;
  font-size: 1.08rem !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  letter-spacing: -.02em;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title p {
  margin: 0 !important;
  line-height: 1 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title br,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address > p:empty {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 36px;
  padding: 9px 13px !important;
  border: 1px solid var(--fe-blue) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--fe-blue) !important;
  font-size: .74rem !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
  background: var(--fe-blue) !important;
  color: #fff !important;
  text-decoration: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address {
  margin: 0 !important;
  color: var(--fe-muted) !important;
  font-size: .9rem !important;
  font-style: normal !important;
  line-height: 1.65 !important;
}

/* Edit account / password change */
body.woocommerce-account .woocommerce-MyAccount-content form,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm {
  max-width: 100%;
}

body.woocommerce-account .woocommerce-MyAccount-content fieldset {
  margin: 24px 0 0 !important;
  padding: 22px !important;
  border: 1px solid var(--fe-line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content fieldset legend {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: auto !important;
  margin: 0 0 18px !important;
  padding: 0 10px 0 0 !important;
  color: var(--fe-navy) !important;
  font-family: Sora, Inter, system-ui, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content fieldset legend::before {
  content: "";
  width: 20px;
  height: 3px;
  border-radius: 999px;
  background: var(--fe-blue);
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row,
body.woocommerce-account .woocommerce-MyAccount-content .form-row {
  float: none !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row:last-child,
body.woocommerce-account .woocommerce-MyAccount-content .form-row:last-child {
  margin-bottom: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row br,
body.woocommerce-account .woocommerce-MyAccount-content .form-row br {
  display: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row label,
body.woocommerce-account .woocommerce-MyAccount-content .form-row label {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--fe-navy) !important;
  font-size: .84rem !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Input,
body.woocommerce-account .woocommerce-MyAccount-content .input-text,
body.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
body.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
body.woocommerce-account .woocommerce-MyAccount-content select {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 46px !important;
  padding: 12px 14px !important;
  border: 1.5px solid var(--fe-line) !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: var(--fe-ink) !important;
  box-shadow: none !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: .92rem !important;
  line-height: 1.3 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Input:focus,
body.woocommerce-account .woocommerce-MyAccount-content .input-text:focus,
body.woocommerce-account .woocommerce-MyAccount-content input[type="text"]:focus,
body.woocommerce-account .woocommerce-MyAccount-content input[type="email"]:focus,
body.woocommerce-account .woocommerce-MyAccount-content input[type="password"]:focus,
body.woocommerce-account .woocommerce-MyAccount-content input[type="tel"]:focus,
body.woocommerce-account .woocommerce-MyAccount-content select:focus {
  border-color: var(--fe-blue) !important;
  box-shadow: 0 0 0 4px rgba(30, 79, 163, .12) !important;
  outline: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .password-input input {
  padding-right: 46px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--fe-blue-50) !important;
  color: var(--fe-blue) !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .show-password-input:hover {
  background: var(--fe-blue-100) !important;
}

@media (max-width: 767px) {
  body.woocommerce-account.fe-account-loggedin .fe-account-public,
  body.logged-in.woocommerce-account .fe-account-public,
  body.woocommerce-account.fe-account-loggedin .fe-acc,
  body.logged-in.woocommerce-account .fe-acc {
    width: min(100% - 28px, 680px) !important;
    padding: 92px 0 52px !important;
  }

  body.woocommerce-account .woocommerce.wc-dashboard,
  body.woocommerce-account .fe-account-dashboard-mode > .woocommerce.wc-dashboard,
  body.woocommerce-account .fe-pane-login .woocommerce.wc-dashboard {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-navigation,
  body.woocommerce-account .woocommerce.wc-dashboard > .woocommerce-MyAccount-content {
    grid-column: 1 !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation {
    position: relative;
    top: auto !important;
    padding: 8px;
    border-radius: 20px;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation .hamburger-button {
    display: flex !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: block;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(-5px);
    margin: 0;
    padding: 0 8px;
    pointer-events: none;
    transition: max-height .3s ease, opacity .2s ease, transform .2s ease, margin .2s ease, padding .2s ease;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation.is-open {
    z-index: 1001;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation.is-open ul {
    max-height: 420px;
    opacity: 1;
    transform: translateY(0);
    margin-top: 10px;
    padding: 6px 8px 8px;
    pointer-events: auto;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li + li {
    border-top: 1px solid var(--fe-line);
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    min-height: 40px;
    padding: 10px 8px;
    border-radius: 10px;
    color: var(--fe-navy);
    font-size: .88rem;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    background: var(--fe-blue-50);
    color: var(--fe-blue);
    box-shadow: none;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation.is-open .hamburger-button .icon-bar:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation.is-open .hamburger-button .icon-bar:nth-child(2) {
    opacity: 0;
  }

  body.woocommerce-account .woocommerce-MyAccount-navigation.is-open .hamburger-button .icon-bar:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    padding: 20px 18px;
    border-radius: 20px;
  }

  body.woocommerce-account .woocommerce-MyAccount-content p {
    font-size: .88rem;
    line-height: 1.65;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses.col2-set.addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address {
    padding: 18px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    width: fit-content;
  }

  body.woocommerce-account .woocommerce-MyAccount-content fieldset {
    padding: 18px !important;
  }
}

@media (max-width: 420px) {
  body.woocommerce-account.fe-account-loggedin .fe-account-public,
  body.logged-in.woocommerce-account .fe-account-public,
  body.woocommerce-account.fe-account-loggedin .fe-acc,
  body.logged-in.woocommerce-account .fe-acc {
    width: calc(100% - 22px) !important;
    padding: 82px 0 42px !important;
  }

  body.woocommerce-account .woocommerce-MyAccount-content {
    padding: 18px 16px;
  }
}

/* ===== MON COMPTE — WooCommerce form adapter only =====
   Layout and visual card styling live in design-system.css. This file only
   normalizes WooCommerce shortcode markup so backend forms stay functional. */
body.woocommerce-account .wp-block-post-title {
  display: none;
}

body.woocommerce-account .fe-pane-login .woocommerce:not(.wc-dashboard),
body.woocommerce-account .fe-pane-register .woocommerce:not(.wc-dashboard) {
  display: block !important;
}

.fe-account-public .woocommerce-notices-wrapper {
  margin: 0 0 20px;
}

.fe-account-public .woocommerce-error,
.fe-account-public .woocommerce-info,
.fe-account-public .woocommerce-message {
  list-style: none;
  margin: 0 0 14px;
  padding: 14px 16px;
  border: 1px solid var(--fe-line);
  border-radius: 14px;
  background: var(--fe-paper);
  color: var(--fe-ink);
  font-size: .9rem;
  line-height: 1.55;
}

.fe-account-public .woocommerce-error {
  border-color: rgba(220, 38, 38, .18);
  background: rgba(254, 242, 242, .95);
  color: #991b1b;
}

.fe-account-public .woocommerce-info {
  border-color: rgba(30, 79, 163, .16);
  background: rgba(239, 244, 252, .95);
  color: var(--fe-navy);
}

.fe-account-public .woocommerce-message {
  border-color: rgba(5, 150, 105, .16);
  background: rgba(236, 253, 245, .95);
  color: #065f46;
}

.fe-account-public .woocommerce-error::before,
.fe-account-public .woocommerce-info::before,
.fe-account-public .woocommerce-message::before,
.fe-account-public .woocommerce-error .button,
.fe-account-public .woocommerce-info .button,
.fe-account-public .woocommerce-message .button {
  display: none !important;
}

.fe-account-public .fe-form-login,
.fe-account-public .fe-form-register,
.fe-account-public .woocommerce-form-login,
.fe-account-public .woocommerce-form-register,
.fe-account-public form.login,
.fe-account-public form.register {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.fe-account-public .woocommerce-form-row,
.fe-account-public .form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  float: none !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.fe-account-public .woocommerce-form-row label,
.fe-account-public .form-row label {
  margin: 0;
  color: var(--fe-ink);
  font-weight: 600;
  font-size: .85rem;
  line-height: 1.35;
}

.fe-account-public .required,
.fe-account-public abbr.required,
.fe-account-public .fe-req {
  display: none !important;
}

.fe-account-public .woocommerce-form-row input.input-text,
.fe-account-public .form-row input.input-text,
.fe-account-public .woocommerce-Input,
.fe-account-public .input-text {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 36px;
  padding: 12px 14px !important;
  border: 1.5px solid var(--fe-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--fe-ink) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-size: .92rem !important;
  line-height: 1.25 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  transition: border-color .2s, box-shadow .2s;
}

.fe-account-public .woocommerce-form-row input.input-text:focus,
.fe-account-public .form-row input.input-text:focus,
.fe-account-public .woocommerce-Input:focus,
.fe-account-public .input-text:focus {
  outline: none !important;
  border-color: var(--fe-blue) !important;
  box-shadow: 0 0 0 4px rgba(30, 79, 163, .12) !important;
}

.fe-account-public input::placeholder {
  color: var(--fe-faint);
  opacity: 1;
}

.fe-account-public .password-input {
  display: block !important;
  width: 100% !important;
}

.fe-account-public .password-input input {
  padding-right: 14px !important;
}

.fe-account-public:not(.fe-account-dashboard-mode) .show-password-input,
.fe-account-public:not(.fe-account-dashboard-mode) .show-password-input::after,
.fe-account-public:not(.fe-account-dashboard-mode) .woocommerce-form-login__rememberme {
  display: none !important;
}

.fe-account-public .woocommerce-form-login__submit,
.fe-account-public .woocommerce-form-register__submit,
.fe-account-public button[name="login"],
.fe-account-public button[name="register"] {
  width: 100% !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 14px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--fe-cta) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(35, 83, 184, .3) !important;
  font-family: Inter, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: .95rem !important;
  line-height: 1 !important;
  margin: 0 !important;
  cursor: pointer;
  text-decoration: none !important;
  transition: background .2s, transform .2s;
}

.fe-account-public .woocommerce-form-login__submit:hover,
.fe-account-public .woocommerce-form-register__submit:hover,
.fe-account-public button[name="login"]:hover,
.fe-account-public button[name="register"]:hover {
  background: var(--fe-cta-dark) !important;
  transform: translateY(-1px);
}

.fe-account-public .woocommerce-LostPassword,
.fe-account-public .lost_password,
.fe-account-public .fe-form-footer {
  margin: 14px 0 0 !important;
  padding: 0;
  text-align: center;
}

.fe-account-public .woocommerce-LostPassword a,
.fe-account-public .lost_password a,
.fe-account-public .fe-form-footer a {
  color: var(--fe-blue) !important;
  font-size: .82rem;
  font-weight: 500;
  text-decoration: none;
}

.fe-account-public .woocommerce-LostPassword a:hover,
.fe-account-public .lost_password a:hover,
.fe-account-public .fe-form-footer a:hover {
  text-decoration: underline;
}

.fe-account-public .fe-pane-register .fe-note a {
  color: var(--fe-blue);
  font-weight: 600;
  text-decoration: underline;
}

@media (max-width: 480px) {
  .fe-account-public .fe-field-group,
  .fe-account-public .fe-frow {
    grid-template-columns: 1fr;
  }
}

