/* === Nexo — "Minha conta" (WooCommerce) com visual de painel/cards === */

/* o tema (Hello Elementor) limita o conteúdo a 720px — libera na conta */
.woocommerce-account main.site-main,
.woocommerce-account .site-main { max-width: 1160px !important; width: auto; }
.woocommerce-account .page-content { max-width: none !important; }

:root {
  --acc-line: #E4DED4;
  --acc-ink: #2e2521;
  --acc-brown: #493725;
  --acc-muted: #6B6357;
  --acc-terra: #AD5D3A;
  --acc-soft: #FAF7F1;
}

/* título da página */
.woocommerce-account .entry-header,
.woocommerce-account .page-header { text-align: left; }
.woocommerce-account .entry-title,
.woocommerce-account .page-title {
  font-family: 'DM Sans', sans-serif;
  font-weight: 400; font-size: 34px; color: var(--acc-ink);
  max-width: 1160px; margin: 48px auto 8px; padding: 0 24px;
}

/* layout 2 colunas */
.woocommerce-account .woocommerce {
  max-width: 1160px; margin: 0 auto 90px; padding: 0 24px;
  display: grid; grid-template-columns: 250px 1fr; gap: 28px; align-items: start;
}
@media (max-width: 820px){
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
}

/* remove o clearfix da WooCommerce que vira item-fantasma no grid */
.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after { content: none !important; display: none !important; }

/* card base — anula float/width que a WooCommerce aplica (deixa o grid esticar) */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important; width: auto !important; margin: 0 !important;
  background: #fff; border: 1px solid var(--acc-line); border-radius: 2px;
  box-shadow: 0 1px 2px rgba(17,17,17,.04);
}

/* ---------- navegação (sidebar) ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation { padding: 10px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  display: block; padding: 12px 16px; border-radius: 2px;
  font-family: 'DM Sans', sans-serif; font-size: 15px; color: var(--acc-brown);
  text-decoration: none; transition: background .15s, color .15s;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: var(--acc-soft); color: var(--acc-terra); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: var(--acc-soft); color: var(--acc-terra); font-weight: 500;
  box-shadow: inset 3px 0 0 var(--acc-terra);
}

/* ---------- conteúdo ---------- */
.woocommerce-account .woocommerce-MyAccount-content { padding: 32px 36px; color: var(--acc-brown); }
.woocommerce-account .woocommerce-MyAccount-content p { font-size: 15px; line-height: 1.7; color: var(--acc-muted); }
.woocommerce-account .woocommerce-MyAccount-content p:first-child { color: var(--acc-ink); font-size: 16px; }
.woocommerce-account .woocommerce-MyAccount-content a { color: var(--acc-terra); }
.woocommerce-account .woocommerce-MyAccount-content a:hover { color: var(--acc-brown); }
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3 {
  font-family: 'DM Sans', sans-serif; font-weight: 500; color: var(--acc-ink); margin: 0 0 16px;
}

/* ---------- cards de atalho (dashboard) ---------- */
.nexo-acc-cards {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-top: 28px;
}
@media (max-width: 540px){ .nexo-acc-cards { grid-template-columns: 1fr; } }
.nexo-acc-card {
  display: flex; align-items: center; gap: 14px; padding: 20px;
  border: 1px solid var(--acc-line); border-radius: 2px; background: #fff;
  text-decoration: none !important; transition: border-color .18s, box-shadow .18s, transform .18s;
}
.nexo-acc-card:hover { border-color: var(--acc-terra); box-shadow: 0 10px 26px rgba(17,17,17,.07); transform: translateY(-1px); }
.nexo-acc-card__ico {
  flex: 0 0 44px; height: 44px; border-radius: 50%; background: var(--acc-soft);
  display: flex; align-items: center; justify-content: center; color: var(--acc-terra);
}
.nexo-acc-card__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1; }
.nexo-acc-card__t { font-family: 'DM Sans', sans-serif; font-size: 16px; font-weight: 500; color: var(--acc-ink) !important; }
.nexo-acc-card__d { font-size: 13px; color: var(--acc-muted) !important; line-height: 1.5; }
.nexo-acc-card__arrow { color: var(--acc-muted); font-size: 22px; transition: transform .18s, color .18s; }
.nexo-acc-card:hover .nexo-acc-card__arrow { transform: translateX(3px); color: var(--acc-terra); }

/* ---------- tabelas (pedidos / downloads) ---------- */
.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
  border: 1px solid var(--acc-line); border-radius: 2px; border-collapse: separate; border-spacing: 0;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table th {
  background: var(--acc-soft); color: var(--acc-ink); font-size: 13px;
  text-transform: uppercase; letter-spacing: .04em; padding: 14px 16px;
}
.woocommerce-account .woocommerce-MyAccount-content table.shop_table td { padding: 14px 16px; border-top: 1px solid var(--acc-line); font-size: 14px; }

/* ---------- botões ---------- */
.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content button {
  background: var(--acc-ink); color: #fff; border: 1px solid var(--acc-ink);
  border-radius: 2px; padding: 12px 22px; font-family: 'DM Sans', sans-serif;
  font-size: 13px; letter-spacing: .04em; transition: all .2s; cursor: pointer;
}
.woocommerce-account .woocommerce-MyAccount-content .button:hover,
.woocommerce-account .woocommerce-MyAccount-content button:hover { background: var(--acc-terra); border-color: var(--acc-terra); color: #fff; }

/* ---------- formulários (login / edição) ---------- */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row label,
.woocommerce-account form .form-row label { color: var(--acc-brown); font-size: 14px; }
.woocommerce-account input.input-text,
.woocommerce-account input[type=text],
.woocommerce-account input[type=email],
.woocommerce-account input[type=password],
.woocommerce-account input[type=tel],
.woocommerce-account select {
  border: 1px solid var(--acc-line); border-radius: 2px; padding: 12px 14px;
  font-size: 15px; color: var(--acc-ink); background: #fff;
}
.woocommerce-account input.input-text:focus { border-color: var(--acc-terra); outline: none; }

/* ============================================================
   Login do "Minha conta" (deslogado) — card centralizado
   ============================================================ */
body.woocommerce-account:not(.logged-in) .woocommerce {
  display: block !important; grid-template-columns: none !important;
  max-width: 460px; margin: 8px auto 90px; padding: 0 24px;
}
/* remove o "Entrar" redundante (já há o título "Minha conta") */
body.woocommerce-account:not(.logged-in) .woocommerce > h2 { display: none; }

body.woocommerce-account:not(.logged-in) form.woocommerce-form-login {
  background: #fff; border: 1px solid var(--acc-line); border-radius: 2px;
  box-shadow: 0 1px 2px rgba(17,17,17,.04); padding: 38px 38px 42px; margin: 0; width: 100%;
}
body.woocommerce-account:not(.logged-in) form.woocommerce-form-login .form-row { margin: 0 0 20px; padding: 0; }
body.woocommerce-account:not(.logged-in) form.woocommerce-form-login .form-row label {
  display: block; margin-bottom: 8px; color: var(--acc-brown);
  font-size: 14px; text-transform: none; letter-spacing: 0; font-weight: 400;
}
body.woocommerce-account:not(.logged-in) form.woocommerce-form-login input.input-text {
  width: 100%; box-sizing: border-box;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
  display: flex; align-items: center; gap: 8px; margin: 0 0 22px;
  color: var(--acc-muted); font-size: 13px; text-transform: none; letter-spacing: 0;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__submit {
  width: 100%; margin: 0; background: var(--acc-ink) !important; color: #fff !important;
  border: 1px solid var(--acc-ink) !important; border-radius: 2px; padding: 14px;
  font-size: 13px; letter-spacing: .06em; text-transform: uppercase; transition: all .2s;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__submit:hover {
  background: var(--acc-terra) !important; border-color: var(--acc-terra) !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword { margin: 18px 0 0; text-align: center; }
body.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a { color: var(--acc-terra); font-size: 14px; }
