/* Arbor Shop v1.6.0 — WooCommerce Minha conta.
   Explicitly scoped to Woo account DOM, not to a particular page.php wrapper.
   Enqueued independently and late, after the theme and Woo styles. */

/* Account's overall layout: sidebar on wide screens, stacked on phones. */
body .woocommerce:has(> .woocommerce-MyAccount-navigation) {
  display: grid;
  grid-template-columns: minmax(208px, 240px) minmax(0, 1fr);
  column-gap: clamp(18px, 3vw, 36px);
  row-gap: 20px;
  align-items: start;
  width: 100%;
  max-width: 1120px;
  margin-inline: auto;
}
body .woocommerce .woocommerce-MyAccount-navigation,
body .woocommerce .woocommerce-MyAccount-content,
body .woocommerce-MyAccount-navigation,
body .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box;
}
/* Remove bullets even when a plugin wraps the Woo nav in another element. */
html body .woocommerce-MyAccount-navigation ul,
html body .woocommerce-MyAccount-navigation ul li {
  list-style: none !important;
  list-style-type: none !important;
  list-style-image: none !important;
}
html body .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px !important;
  padding: 12px !important;
  margin: 0 !important;
  border: 1px solid #e5e1d6;
  border-radius: 8px;
  background: #f5f2e9;
}
html body .woocommerce-MyAccount-navigation ul li {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
  background: transparent;
}
html body .woocommerce-MyAccount-navigation ul li::before,
html body .woocommerce-MyAccount-navigation ul li::after,
html body .woocommerce-MyAccount-navigation ul li::marker {
  display: none !important;
  content: none !important;
  list-style: none !important;
}
html body .woocommerce-MyAccount-navigation ul li > a {
  display: flex !important;
  align-items: center;
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 10px 12px !important;
  border-radius: 6px !important;
  color: #2e421c;
  background: transparent;
  font-size: .93rem;
  font-weight: 650;
  line-height: 1.4;
  text-align: left;
  text-decoration: none !important;
  overflow-wrap: anywhere;
  box-sizing: border-box;
  transition: background-color .15s, color .15s;
}
html body .woocommerce-MyAccount-navigation ul li > a:hover,
html body .woocommerce-MyAccount-navigation ul li.is-active > a,
html body .woocommerce-MyAccount-navigation ul li > a[aria-current="page"] {
  background: #2e421c !important;
  color: white !important;
}
html body .woocommerce-MyAccount-navigation ul li > a:focus-visible {
  outline: 2px solid #2e421c;
  outline-offset: 2px;
}
html body .woocommerce-MyAccount-content {
  min-height: 180px;
  padding: clamp(20px, 3vw, 32px) !important;
  border: 1px solid #e5e1d6;
  border-radius: 8px;
  background: #fff;
  color: #262821;
  overflow-wrap: anywhere;
}
html body .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
html body .woocommerce-MyAccount-content > :last-child { margin-bottom: 0; }
html body .woocommerce-MyAccount-content p { line-height: 1.7; font-size: 1rem; }
html body .woocommerce-MyAccount-content a:not(.button) { color: #2e421c; text-underline-offset: 3px; }
html body .woocommerce-MyAccount-content h2,
html body .woocommerce-MyAccount-content h3 { color: #2e421c; }

/* Account forms: login, register, edit account, addresses and order history. */
html body .woocommerce:has(> .woocommerce-MyAccount-navigation) input.input-text,
html body .woocommerce:has(> .woocommerce-MyAccount-navigation) select,
html body .woocommerce:has(> .woocommerce-MyAccount-navigation) textarea,
html body .woocommerce form.login input.input-text,
html body .woocommerce form.register input.input-text,
html body .woocommerce form.lost_reset_password input.input-text {
  min-height: 44px;
  width: 100%;
  max-width: 100%;
  border-radius: 6px !important;
  border: 1px solid #dcdacf;
  padding: 9px 12px;
  background: white;
  color: #262821;
  box-sizing: border-box;
}
html body .woocommerce-MyAccount-content .button,
html body .woocommerce form.login .button,
html body .woocommerce form.register .button {
  border-radius: 6px !important;
  min-height: 44px;
  padding: 10px 16px !important;
}
html body .woocommerce form.login,
html body .woocommerce form.register,
html body .woocommerce form.lost_reset_password {
  padding: clamp(18px, 3vw, 30px);
  border-radius: 8px;
  border: 1px solid #e5e1d6;
  background: white;
}
html body .woocommerce #customer_login {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
html body .woocommerce #customer_login::before,
html body .woocommerce #customer_login::after,
html body .woocommerce .woocommerce-Addresses::before,
html body .woocommerce .woocommerce-Addresses::after { display: none; }
html body .woocommerce #customer_login > .col-1,
html body .woocommerce #customer_login > .col-2,
html body .woocommerce .woocommerce-Addresses > .col-1,
html body .woocommerce .woocommerce-Addresses > .col-2 {
  float: none !important;
  width: 100% !important;
  min-width: 0;
}
html body .woocommerce .woocommerce-Addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
html body .woocommerce .woocommerce-Addresses > div {
  padding: 16px;
  border: 1px solid #e5e1d6;
  border-radius: 7px;
}
html body .woocommerce-MyAccount-content table { width: 100%; max-width: 100%; }
html body .woocommerce-MyAccount-content table th,
html body .woocommerce-MyAccount-content table td { padding: 10px !important; }

/* Keep headings and content away from narrow viewport edges. */
body.arbor-shop-my-account .arbor-page-header h1 { line-height: 1.2; }
body.arbor-shop-my-account .arbor-content { padding-block: clamp(26px, 4vw, 54px); }

@media (max-width: 849px) {
  body .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 18px;
  }
  html body .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px !important; padding: 9px !important; }
  html body .woocommerce-MyAccount-navigation ul li > a { justify-content: center; text-align: center; padding: 10px 7px !important; font-size: .86rem; }
}
@media (max-width: 650px) {
  body.arbor-shop-my-account .arbor-page-header { padding-block: 26px 22px; }
  html body .woocommerce-MyAccount-navigation ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html body .woocommerce-MyAccount-navigation ul li > a { min-height: 46px; font-size: .83rem; }
  html body .woocommerce-MyAccount-content { padding: 18px 15px !important; }
  html body .woocommerce #customer_login,
  html body .woocommerce .woocommerce-Addresses { grid-template-columns: minmax(0, 1fr); }
  html body .woocommerce-MyAccount-content table.shop_table_responsive thead { display: none; }
  html body .woocommerce-MyAccount-content table.shop_table_responsive tr { display: block; border-bottom: 1px solid #e5e1d6; padding: 10px 0; }
  html body .woocommerce-MyAccount-content table.shop_table_responsive tr td { display: block; text-align: right !important; border: 0; }
  html body .woocommerce-MyAccount-content table.shop_table_responsive tr td::before { float: left; font-weight: 700; padding-right: 10px; }
}
@media (max-width: 359px) {
  html body .woocommerce-MyAccount-navigation ul { gap: 5px !important; padding: 6px !important; }
  html body .woocommerce-MyAccount-navigation ul li > a { font-size: .76rem; padding: 8px 5px !important; }
}
