/**
 * Neo Compounds — My Account (v0.5.20 fidelity vs My Account.dc.html)
 */

body.woocommerce-account,
body.neo-page-account {
  background: var(--neo-bg);
}

.woocommerce-account .entry-header,
.woocommerce-account .storefront-breadcrumb,
.woocommerce-account .page-title,
.woocommerce-account h1.entry-title {
  display: none !important;
}

/* Notices */
.woocommerce-account .woocommerce-notices-wrapper,
.neo-account .woocommerce-message,
.neo-account .woocommerce-info,
.neo-account .woocommerce-error {
  max-width: var(--neo-max);
  margin-left: auto;
  margin-right: auto;
}

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error,
.neo-account .woocommerce-message,
.neo-account .woocommerce-info,
.neo-account .woocommerce-error {
  border-radius: 14px;
  border: 1px solid var(--neo-border);
  background: #fff;
  padding: 14px 16px;
  list-style: none;
  font-size: 14.5px;
  line-height: 1.55;
}

.woocommerce-account .woocommerce-error {
  border-color: rgba(214, 54, 47, 0.35);
  color: var(--neo-error);
}

.woocommerce-account .woocommerce-message {
  border-color: rgba(155, 216, 74, 0.55);
}


/* Crumb (content.css not loaded on account) */
.neo-crumb {
  display: flex;
  gap: 10px;
  align-items: center;
  font-family: var(--neo-font-mono);
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-size: 11.5px;
  color: var(--neo-muted);
  margin: 0;
}
.neo-crumb a {
  color: inherit;
  text-decoration: none;
}
.neo-crumb a:hover {
  color: var(--neo-blue);
}
.neo-crumb span:last-child {
  color: var(--neo-ink);
}

/* Crumb bar */
.neo-account__crumbbar {
  background: #fff;
  border-bottom: 1px solid var(--neo-border);
}

.neo-account__crumbbar-inner {
  max-width: var(--neo-max);
  margin: 0 auto;
  padding: 22px var(--neo-pad);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.neo-account__crumb {
  margin: 0;
}

.neo-account__crumb-ruo {
  font-family: var(--neo-font-mono);
  font-size: 11.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--neo-muted);
}

.neo-account__eyebrow {
  font-family: var(--neo-font-mono);
  font-size: var(--neo-eyebrow-size);
  letter-spacing: var(--neo-eyebrow-tracking);
  text-transform: uppercase;
  color: var(--neo-blue);
}

.neo-account__title {
  margin: 0;
  font-size: clamp(38px, 4.6vw, 56px);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.04;
  color: var(--neo-ink);
}

.neo-account__rule {
  display: block;
  width: var(--neo-rule);
  height: 2px;
  background: var(--neo-green);
}

.neo-account__lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.7;
  color: var(--neo-body);
  text-wrap: pretty;
  max-width: 460px;
}

.neo-account__section-eyebrow {
  font-family: var(--neo-font-mono);
  font-size: 11.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--neo-blue);
}

.neo-account__section-eyebrow--rule {
  display: block;
  padding-top: 8px;
  margin-top: 8px;
  border-top: 1px solid var(--neo-border-row);
}

.neo-account__text-link {
  font-size: 14px;
  font-weight: 700;
  color: var(--neo-ink);
  text-decoration: none;
  border-bottom: 2px solid var(--neo-green);
  padding-bottom: 2px;
  align-self: flex-start;
}

.neo-account__text-link:hover {
  color: var(--neo-blue);
}

.neo-card {
  background: #fff;
  border: 1px solid var(--neo-border);
  border-radius: var(--neo-radius-card);
}

/* ========== Auth (signed out) ========== */
.neo-auth-shell {
  max-width: var(--neo-max);
  margin: 0 auto;
  padding: 72px var(--neo-pad) 104px;
  display: flex;
  flex-wrap: wrap;
  gap: 48px 72px;
  align-items: flex-start;
}

.neo-auth-shell--center {
  justify-content: center;
  padding-top: 56px;
}

.neo-auth-shell__intro {
  flex: 1 1 340px;
  max-width: 460px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.neo-auth {
  flex: 1 1 440px;
  max-width: 560px;
  background: #fff;
  border: 1px solid var(--neo-border);
  border-radius: var(--neo-radius-card);
  padding: 10px;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
}

.neo-auth__tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  padding: 5px;
  background: var(--neo-fill);
  border-radius: 16px;
}

.neo-auth__tab {
  height: 46px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  font-family: var(--neo-font);
  font-size: 14.5px;
  font-weight: 700;
  color: var(--neo-ink);
  cursor: pointer;
}

.neo-auth__tab.is-active {
  background: #fff;
  box-shadow: 0 6px 16px -8px rgba(11, 26, 48, 0.35);
}

.neo-auth__panel {
  padding: 28px 26px 26px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.neo-auth__panel[hidden] {
  display: none !important;
}

.neo-auth form.woocommerce-form,
.neo-auth form.lost_reset_password {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
}

.woocommerce-account .woocommerce form .form-row,
.neo-auth .form-row,
.neo-account-form .form-row {
  margin: 0;
  padding: 0;
  width: 100%;
}

.woocommerce-account .woocommerce form .form-row label,
.neo-auth .form-row label,
.neo-account-form .form-row label,
.neo-account-form label {
  display: block;
  margin: 0 0 8px;
  font-size: var(--neo-label-size);
  font-weight: 600;
  color: var(--neo-body);
}

.woocommerce-account .woocommerce form .input-text,
.woocommerce-account .woocommerce form select,
.neo-auth .input-text,
.neo-account .input-text,
.neo-account select,
.neo-account-form .input-text,
.neo-account-form select,
.woocommerce-address-fields .input-text,
.woocommerce-address-fields select {
  height: var(--neo-input-h);
  width: 100%;
  border: 1px solid var(--neo-border-input);
  border-radius: var(--neo-radius-input);
  background: #fff;
  padding: 0 16px;
  font-family: var(--neo-font);
  font-size: 15px;
  color: var(--neo-ink);
  box-shadow: none;
  box-sizing: border-box;
}

.woocommerce-account .woocommerce form textarea.input-text,
.neo-account-form textarea.input-text {
  height: auto;
  min-height: 96px;
  padding: 14px 16px;
}

.woocommerce-account .woocommerce form .button,
.neo-auth .button,
.neo-account .button,
.woocommerce-Button,
.neo-account-form .button,
.neo-dash__await-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 52px !important;
  padding: 0 28px !important;
  border-radius: var(--neo-pill) !important;
  border: 0 !important;
  background: var(--neo-navy) !important;
  color: #fff !important;
  font-family: var(--neo-font) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer;
  text-decoration: none !important;
  width: auto;
  line-height: 1;
}

.woocommerce-account .woocommerce form .button:hover,
.neo-auth .button:hover,
.neo-account .button:hover,
.neo-dash__await-cta:hover {
  background: var(--neo-blue) !important;
  color: #fff !important;
}

.neo-auth__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 14px;
}

.neo-auth__remember {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  color: var(--neo-body);
  cursor: pointer;
  margin: 0;
}

.neo-auth__remember input {
  width: 18px;
  height: 18px;
  accent-color: var(--neo-navy);
  margin: 0;
}

.neo-auth__lost {
  font-size: 14px;
  font-weight: 700;
  color: var(--neo-ink);
  text-decoration: none;
  border-bottom: 2px solid var(--neo-green);
  padding-bottom: 2px;
  background: transparent;
}

.neo-auth__lost:hover {
  color: var(--neo-blue);
}

.neo-auth__submit {
  margin: 0 !important;
}

.neo-auth__submit .button {
  width: 100%;
}

.neo-auth__checks {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.neo-auth__check {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 16px;
  border-radius: 14px;
  background: var(--neo-bg);
  border: 1px solid var(--neo-border);
  font-size: 14px;
  line-height: 1.6;
  color: var(--neo-ink);
  cursor: pointer;
}

.neo-auth__check.is-error {
  border-color: var(--neo-error);
}

.neo-auth__check input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--neo-navy);
  flex-shrink: 0;
}

.neo-auth__check a {
  color: var(--neo-ink);
  font-weight: 700;
  border-bottom: 2px solid var(--neo-green);
  text-decoration: none;
}

.neo-auth__err {
  margin: 0;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--neo-error);
}

.neo-auth__verify-note {
  margin: 0;
  padding: 12px 14px;
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--neo-ink);
  background: #E6EEFF;
  border: 1px solid #C9D8F5;
  border-radius: 12px;
}

.neo-auth__privacy {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: var(--neo-muted);
}

.neo-auth__privacy a {
  color: var(--neo-ink);
  font-weight: 700;
}

.neo-auth__back {
  text-align: center;
  margin: 0;
}

.neo-lost__copy {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: var(--neo-body);
}

.neo-lost--confirm {
  padding: 32px 26px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 520px;
}

.neo-lost__icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--neo-green-pale);
  display: flex;
  align-items: center;
  justify-content: center;
}

.neo-lost--confirm h1 {
  margin: 0;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.neo-lost--confirm p {
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: var(--neo-body);
}

.neo-lost__hint {
  font-size: 13.5px !important;
  color: var(--neo-muted) !important;
}

/* ========== Logged-in shell ========== */
.neo-account__shell {
  max-width: var(--neo-max);
  margin: 0 auto;
  padding: 48px var(--neo-pad) 104px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px 48px;
  align-items: flex-start;
}

.neo-account__aside {
  /* Fixed sidebar column — do not let flex shrink collapse labels */
  flex: 0 0 240px;
  width: 240px;
  min-width: 240px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: sticky;
  top: 110px;
  box-sizing: border-box;
}

.neo-account__aside-label {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: var(--neo-font-mono);
  font-size: 11.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
  color: var(--neo-ink);
}

.neo-account__aside-line {
  flex: 1;
  height: 1px;
  background: var(--neo-border-input);
}

/*
 * Kill WooCommerce layout floats.
 * Core sets .woocommerce-account .woocommerce-MyAccount-navigation { float:left; width:30% }
 * and .woocommerce-MyAccount-content { float:right; width:68% }. Our shell already has a
 * flex aside + main, so those % widths nest inside the aside and collapse labels to ~70px
 * (letter-by-letter wrap). Same class of Storefront/Woo float fight as checkout v0.5.13.
 */
.woocommerce-account .neo-account__shell .woocommerce-MyAccount-navigation,
.woocommerce-account .neo-account__aside .woocommerce-MyAccount-navigation,
.woocommerce-account .neo-account__nav.woocommerce-MyAccount-navigation,
.neo-account__nav,
.woocommerce-MyAccount-navigation {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

.woocommerce-account .neo-account__shell .woocommerce-MyAccount-content,
.woocommerce-account .neo-account__main.woocommerce-MyAccount-content,
.neo-account__main,
.woocommerce-MyAccount-content {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

.neo-account__menu,
.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 100%;
}

.neo-account__menu li,
.woocommerce-MyAccount-navigation li {
  width: 100%;
  margin: 0;
  padding: 0;
}

.neo-account__menu a,
.woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--neo-ink);
  text-decoration: none;
  background: transparent;
  box-sizing: border-box;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}

.neo-account__menu-label {
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
  min-width: 0;
}

.neo-account__menu a:hover,
.woocommerce-MyAccount-navigation li a:hover {
  background: #EEF2F7;
  color: var(--neo-ink);
}

.woocommerce-MyAccount-navigation li.is-active a,
.neo-account__menu li.is-active a,
.neo-account__nav a[aria-current="page"] {
  background: var(--neo-navy) !important;
  color: #fff !important;
}

.neo-account__menu-logout {
  margin-top: 8px;
  border-top: 1px solid var(--neo-border);
  padding-top: 0;
}

.neo-account__menu-logout a {
  color: var(--neo-muted) !important;
  background: transparent !important;
}

.neo-account__menu-logout a:hover {
  color: var(--neo-error) !important;
  background: #EEF2F7 !important;
}

.neo-account__main,
.woocommerce-MyAccount-content {
  flex: 1 1 420px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: transparent;
  border: 0;
  padding: 0;
}

.neo-account__endpoint-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--neo-border);
}

.neo-account__endpoint-title {
  margin: 0;
  font-size: 36px;
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.1;
}

.neo-account__endpoint-meta {
  font-size: 14px;
  font-weight: 600;
  color: var(--neo-muted);
}

.neo-account__empty {
  display: flex;
  flex-direction: column;
  gap: 18px;
  align-items: flex-start;
  padding: 28px;
}

.neo-account__empty p {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--neo-ink);
}

/* Dashboard */
.neo-dash {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.neo-dash__head {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.neo-dash__title {
  margin: 0;
  font-size: clamp(34px, 4vw, 48px);
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -0.03em;
}

.neo-dash__lead {
  margin: 0;
  font-size: 16px;
  color: var(--neo-body);
}

.neo-dash__await {
  background: var(--neo-navy);
  color: var(--neo-on-dark);
  border-radius: var(--neo-radius-card);
  padding: 26px 28px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.neo-dash__await-copy {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.neo-dash__await-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--neo-font-mono);
  font-size: 11.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #F5C451;
}

.neo-dash__await-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #F5C451;
}

.neo-dash__await-title {
  font-size: 19px;
  font-weight: 700;
  color: #fff;
}

.neo-dash__await-meta {
  font-size: 14px;
  color: var(--neo-on-dark-muted);
}

.neo-dash__await-cta {
  background: var(--neo-green) !important;
  color: var(--neo-navy) !important;
  height: 48px !important;
  padding: 0 22px !important;
  white-space: nowrap;
}

.neo-dash__await-cta:hover {
  background: #fff !important;
  color: var(--neo-navy) !important;
}

.neo-dash__recent {
  padding: 8px 24px 12px;
}

.neo-dash__recent-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 18px 0 10px;
}

.neo-dash__recent-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.neo-dash__recent-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 16px;
  align-items: center;
  padding: 16px 0;
  border-top: 1px solid var(--neo-border-row);
  text-decoration: none;
  color: var(--neo-ink);
  box-sizing: border-box;
}

.neo-dash__recent-row:hover {
  color: var(--neo-blue);
}

.neo-dash__recent-main {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.neo-dash__recent-id {
  font-size: 15px;
  font-weight: 700;
}

.neo-dash__recent-sub {
  font-size: 13px;
  color: var(--neo-muted);
}

.neo-dash__recent-total {
  font-size: 15px;
  font-weight: 700;
  min-width: 80px;
  text-align: right;
}

/* Status pills */
.neo-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 700;
  padding: 6px 12px;
  border-radius: var(--neo-pill);
  background: var(--pill-bg, var(--neo-fill));
  color: var(--pill-fg, var(--neo-ink));
  white-space: nowrap;
}

.neo-status-pill__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--pill-dot, var(--neo-muted));
}

/* Orders */
.neo-orders,
.neo-view-order,
.neo-addresses,
.neo-details {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.neo-orders__list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.neo-order-card {
  background: #fff;
  border: 1px solid var(--neo-border);
  border-radius: var(--neo-radius-card);
  overflow: hidden;
}

.neo-order-card.is-awaiting {
  border-color: #F0E0A8;
}

.neo-order-card__head {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto 32px;
  gap: 16px;
  align-items: center;
  padding: 20px 22px;
  text-decoration: none;
  color: var(--neo-ink);
  box-sizing: border-box;
}

.neo-order-card__head:hover {
  color: var(--neo-blue);
}

.neo-order-card__main {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.neo-order-card__id {
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.01em;
}

.neo-order-card__sub {
  font-size: 13px;
  color: var(--neo-muted);
}

.neo-order-card__total {
  font-size: 16px;
  font-weight: 700;
  min-width: 80px;
  text-align: right;
}

.neo-order-card__chev {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--neo-fill);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  color: var(--neo-ink);
}

.neo-order-card__summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 18px 22px 0;
}

.neo-order-card--open {
  padding-bottom: 8px;
}

.neo-order-pay {
  margin: 18px 22px 0;
  background: var(--neo-navy);
  color: var(--neo-on-dark);
  border-radius: 18px;
  padding: 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.neo-order-pay__eyebrow {
  font-family: var(--neo-font-mono);
  font-size: 11.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--neo-green);
}

.neo-order-pay__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 14px;
}

.neo-order-pay__k {
  display: block;
  font-size: 12.5px;
  color: var(--neo-on-dark-muted);
  margin-bottom: 4px;
}

.neo-order-pay__v {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
}

.neo-order-pay__note {
  border: 1px dashed rgba(255, 255, 255, 0.28);
  border-radius: 12px;
  padding: 14px 16px;
  font-family: var(--neo-font-mono);
  font-size: 12.5px;
  line-height: 1.6;
  color: var(--neo-on-dark-muted);
}

.neo-order-pay__help {
  margin: 0;
  font-size: 13.5px;
  color: var(--neo-on-dark-muted);
}

.neo-order-lines {
  padding: 8px 22px 22px;
  display: flex;
  flex-direction: column;
}

.neo-order-line {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px 0;
  border-top: 1px solid var(--neo-border-row);
}

.neo-order-line__thumb img,
.neo-order-line__img {
  width: 56px;
  height: 70px;
  object-fit: cover;
  border-radius: 10px;
  background: var(--neo-navy);
  display: block;
}

.neo-order-line__ph {
  display: block;
  width: 56px;
  height: 70px;
  border-radius: 10px;
  background: var(--neo-navy);
}

.neo-order-line__name {
  font-size: 15px;
  font-weight: 700;
  color: var(--neo-ink);
}

.neo-order-line__size {
  font-family: var(--neo-font-mono);
  font-size: 12px;
  font-weight: 500;
  color: var(--neo-muted);
}

.neo-order-line__total {
  font-size: 15px;
  font-weight: 700;
}

.neo-order-lines__totals {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px 0 0;
  border-top: 1px solid var(--neo-border);
}

.neo-order-lines__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 16px;
  font-size: 14px;
  font-weight: 500;
  color: var(--neo-muted);
}

.neo-order-lines__row span:last-child {
  font-family: var(--neo-font-mono);
  font-size: 13px;
  color: var(--neo-ink);
  white-space: nowrap;
}

.neo-order-lines__row--total {
  margin-top: 6px;
  padding-top: 14px;
  border-top: 1px solid var(--neo-border-row);
  font-size: 16px;
  font-weight: 700;
  color: var(--neo-ink);
}

.neo-order-lines__row--total span:last-child {
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
}

/* Legacy single-total row (kept for any cached markup). */
.neo-order-lines__total {
  display: flex;
  justify-content: space-between;
  padding: 16px 0 0;
  border-top: 1px solid var(--neo-border);
  font-size: 16px;
  font-weight: 700;
}

.neo-view-order__addresses,
.neo-addresses__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 20px;
}

.neo-addr-card {
  padding: 26px 28px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.neo-addr-card address {
  font-style: normal;
  font-size: 15px;
  line-height: 1.7;
  color: var(--neo-ink);
  margin: 0;
  display: flex;
  flex-direction: column;
}

.neo-addresses__edit {
  align-self: flex-start;
}

.neo-addr-card__empty {
  margin: 0;
  color: var(--neo-muted);
  font-size: 14.5px;
}

/* Account details / address forms */
.neo-account-form {
  padding: 28px;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.neo-account-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.neo-account-form__grid .form-row-wide,
.neo-account-form__span-2,
.neo-account-form__grid .form-row-first,
.neo-account-form__grid .form-row-last,
.woocommerce-address-fields__field-wrapper .form-row {
  grid-column: span 1;
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
}

.neo-account-form__span-2,
.neo-account-form__grid .form-row-wide,
.woocommerce-address-fields__field-wrapper .form-row-wide,
.woocommerce-address-fields__field-wrapper .address-field {
  grid-column: 1 / -1;
}

.neo-account-form__hint {
  margin: -8px 0 0;
  font-size: 13px;
  color: var(--neo-muted);
}

.neo-account-form__actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 0;
}

.woocommerce-password-strength {
  margin-top: 8px;
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 13px;
}

/* Verification screen (mu-plugin) — theme-side polish */
.neo-verification-screen {
  max-width: 520px !important;
  margin: 0 !important;
  padding: 28px 26px !important;
  border: 1px solid var(--neo-border) !important;
  border-radius: var(--neo-radius-card) !important;
  background: #fff !important;
  box-shadow: none;
}

.neo-verification-screen h3 {
  margin: 0 0 12px;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.02em;
}

.neo-verification-screen p {
  margin: 0 0 16px;
  font-size: 15px;
  line-height: 1.65;
  color: var(--neo-body);
}

.neo-verification-screen input[type="text"] {
  height: 52px !important;
  border: 1px solid var(--neo-border-input) !important;
  border-radius: 14px !important;
  font-family: var(--neo-font-mono) !important;
  letter-spacing: 0.2em !important;
}

.neo-orders__pagination {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

/* Plugin neo-pay nested in view-order card (mu-plugin inline styles) */
.neo-order-card .neo-pay,
.neo-view-order .neo-pay {
  margin: 18px 22px 8px !important;
  border-radius: 18px !important;
  box-sizing: border-box;
}

.neo-view-order .neo-pay a {
  text-decoration: none;
}

.neo-order-card--open .neo-order-lines {
  margin-top: 4px;
}

/* Dashboard awaiting aligns with thank-you / design navy card */
.neo-dash__await {
  border-radius: var(--neo-radius-card);
}

/* Mobile */
@media (max-width: 860px) {
  .neo-account__aside {
    position: static;
    flex: 1 1 100%;
    width: 100%;
    min-width: 0;
  }

  .neo-account__menu {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
  }

  .neo-account__menu li {
    flex: 1 1 auto;
  }

  .neo-account__menu-logout {
    flex: 1 1 100%;
    margin-top: 4px;
  }

  .neo-auth-shell {
    padding: 40px var(--neo-pad) 72px;
    gap: 32px;
  }

  .neo-account__shell {
    padding: 32px var(--neo-pad) 72px;
  }

  .neo-dash__recent-row,
  .neo-order-card__head {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px 16px;
  }

  .neo-dash__recent-total,
  .neo-order-card__total {
    grid-column: 2;
    grid-row: 1;
  }

  .neo-status-pill {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .neo-order-card__chev {
    display: none;
  }

  .neo-account-form__grid {
    grid-template-columns: 1fr;
  }

  .neo-account__endpoint-title {
    font-size: 28px;
  }
}

@media (max-width: 560px) {
  .neo-account__crumbbar-inner {
    padding: 16px 20px;
  }

  .neo-auth,
  .neo-account-form,
  .neo-addr-card,
  .neo-dash__await {
    padding-left: 18px;
    padding-right: 18px;
  }

  .neo-auth {
    padding: 8px;
  }

  .neo-auth__panel {
    padding: 22px 16px 18px;
  }
}
