.elementor-1748 .elementor-element.elementor-element-48bd21a9{--display:flex;--margin-top:20px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:50px;--padding-right:50px;}@media(max-width:767px){.elementor-1748 .elementor-element.elementor-element-48bd21a9{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}/* Start custom CSS for woocommerce-my-account, class: .elementor-element-07d428a *//* ===================== Minha Conta — Voz do Coração ===================== */

.elementor-1748 .elementor-element.elementor-element-07d428a {
  --vc-bg: #ffe6e0;        /* fundo geral */
  --vc-bg-soft: #fff8f6;   /* fundo leve dos blocos */
  --vc-card: #fff8f6;
  --vc-text: #3b2b2b;
  --vc-text-soft: #7a5a5a;
  --vc-primary: #e36a79;   /* rosa principal */
  --vc-primary-2: #d58dd9; /* hover lilás */
  --vc-ring: rgba(227,106,121,.35);
  --vc-border: #f0caca;
  --vc-success: #8fcf99;
  --vc-danger: #e85a72;
  --vc-warning: #f8b66e;
  --vc-shadow: 0 10px 30px rgba(180,120,120,0.12);
  padding: clamp(12px, 2.5vw, 28px);
  background: linear-gradient(180deg, var(--vc-bg-soft), var(--vc-bg));
  color: var(--vc-text);
}

/* Layout principal */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(14px, 2.2vw, 24px);
}

/* Navegação lateral */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation {
  flex: 0 0 260px;
  background: var(--vc-card);
  border: 1px solid var(--vc-border);
  border-radius: 18px;
  box-shadow: var(--vc-shadow);
  padding: 18px;
  height: fit-content;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation li a {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 12px;
  color: var(--vc-text);
  text-decoration: none;
  border: 1px solid transparent;
  transition: all .2s ease;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation li a::before {
  content: "";
  font-size: 14px;
  color: var(--vc-primary);
  opacity: .8;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation li.is-active a,
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation li a:hover {
  background: linear-gradient(180deg, color-mix(in srgb, var(--vc-primary) 20%, transparent), transparent);
  border-color: color-mix(in srgb, var(--vc-primary) 35%, var(--vc-border));
  color: var(--vc-primary);
}

/* Conteúdo principal */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-content {
  flex: 1;
  min-width: 0;
  background: var(--vc-card);
  border: 1px solid var(--vc-border);
  border-radius: 22px;
  box-shadow: var(--vc-shadow);
  padding: clamp(18px, 2.5vw, 28px);
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-content h2 {
  margin: 0 0 12px;
  font-size: clamp(20px, 2.2vw, 28px);
  font-weight: 700;
  color: var(--vc-primary);
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-content h3 {
  margin: 0 0 10px;
  font-size: clamp(16px, 1.7vw, 20px);
  color: var(--vc-text-soft);
}

/* ==================== Formulários ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a form {
  display: grid;
  gap: 14px;
}

/* Inputs */
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="text"],
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="email"],
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="password"],
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="tel"],
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="number"],
.elementor-1748 .elementor-element.elementor-element-07d428a select,
.elementor-1748 .elementor-element.elementor-element-07d428a textarea {
  width: 100%;
  background: var(--vc-bg-soft);
  border: 1px solid var(--vc-border);
  border-radius: 14px;
  padding: 12px 14px;
  color: var(--vc-text);
  transition: border-color .15s, box-shadow .15s, background .15s;
}

.elementor-1748 .elementor-element.elementor-element-07d428a input:focus,
.elementor-1748 .elementor-element.elementor-element-07d428a select:focus,
.elementor-1748 .elementor-element.elementor-element-07d428a textarea:focus {
  outline: none;
  border-color: var(--vc-primary);
  box-shadow: 0 0 0 4px var(--vc-ring);
  background: #fff;
}

/* ==================== Botões ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a .button,
.elementor-1748 .elementor-element.elementor-element-07d428a a.button,
.elementor-1748 .elementor-element.elementor-element-07d428a button,
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="submit"] {
  appearance: none;
  border: none;
  cursor: pointer;
  background: linear-gradient(135deg, var(--vc-primary), var(--vc-primary-2));
  color: #fff;
  font-weight: 700;
  padding: 12px 18px;
  border-radius: 14px;
  box-shadow: 0 8px 20px rgba(227,106,121,.25);
  transition: transform .08s ease, filter .2s ease, box-shadow .2s ease;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .button:hover,
.elementor-1748 .elementor-element.elementor-element-07d428a a.button:hover,
.elementor-1748 .elementor-element.elementor-element-07d428a button:hover,
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="submit"]:hover {
  filter: brightness(1.05);
  box-shadow: 0 12px 26px rgba(227,106,121,.35);
}

.elementor-1748 .elementor-element.elementor-element-07d428a .button:active,
.elementor-1748 .elementor-element.elementor-element-07d428a a.button:active,
.elementor-1748 .elementor-element.elementor-element-07d428a button:active,
.elementor-1748 .elementor-element.elementor-element-07d428a input[type="submit"]:active {
  transform: translateY(1px);
}

.elementor-1748 .elementor-element.elementor-element-07d428a .button.alt,
.elementor-1748 .elementor-element.elementor-element-07d428a .button.secondary {
  background: var(--vc-bg-soft);
  color: var(--vc-text);
  border: 1px solid var(--vc-border);
  box-shadow: none;
}

/* ==================== Tabelas ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a table.shop_table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--vc-border);
  border-radius: 16px;
  overflow: hidden;
}

.elementor-1748 .elementor-element.elementor-element-07d428a table.shop_table th {
  background: var(--vc-bg-soft);
  padding: 12px;
  text-align: left;
  color: var(--vc-text);
}

.elementor-1748 .elementor-element.elementor-element-07d428a table.shop_table td {
  padding: 12px;
  border-top: 1px solid var(--vc-border);
  color: var(--vc-text-soft);
}

/* ==================== Mensagens WooCommerce ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-message,
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-error,
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-info {
  border-radius: 14px;
  border: 1px solid var(--vc-border);
  box-shadow: var(--vc-shadow);
  padding: 12px 14px;
  margin: 10px 0 16px;
}

.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-message { background: color-mix(in srgb, var(--vc-success) 12%, var(--vc-card)); }
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-error   { background: color-mix(in srgb, var(--vc-danger) 10%, var(--vc-card)); }
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-info    { background: color-mix(in srgb, var(--vc-warning) 10%, var(--vc-card)); }

/* ==================== Login ocupa 100% ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login,
.elementor-1748 .elementor-element.elementor-element-07d428a form.register {
  width: 100%;
  max-width: none;
  /* Troca para GRID para controlar o alinhamento dos botões */
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(14px, 2vw, 18px);
  align-content: center;
  min-height: 50vh;
  background: var(--vc-card);
  border: 1px solid var(--vc-border);
  border-radius: 22px;
  box-shadow: var(--vc-shadow);
  padding: clamp(28px, 4vw, 48px);
}

/* Campos ocupam largura total */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row,
.elementor-1748 .elementor-element.elementor-element-07d428a form.register .form-row {
  width: 100%;
  max-width: 100%;
}

/* Força usuário/senha/checkbox a ocuparem as duas colunas (linha inteira) */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(#username),
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(#password),
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(.woocommerce-form-login__rememberme),
.elementor-1748 .elementor-element.elementor-element-07d428a form.register .form-row {
  grid-column: 1 / -1;
}

/* ==================== Checkbox “Lembrar-me” redesenhado ==================== */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
  color: var(--vc-text-soft);
  font-size: 14px;
}

/* Esconde checkbox nativo mantendo acessibilidade */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme input[type="checkbox"] {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
}

/* Caixa custom */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme span::before {
  content: "";
  display: inline-block;
  width: 18px; height: 18px;
  border-radius: 6px;
  border: 1.5px solid var(--vc-border);
  background: var(--vc-bg-soft);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.6);
  transform: translateY(1px);
  transition: border-color .2s, background .2s, box-shadow .2s;
  margin-right: 6px;
}

/* Check */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme input[type="checkbox"]:checked + span::before {
  background: linear-gradient(135deg, var(--vc-primary), var(--vc-primary-2));
  border-color: color-mix(in srgb, var(--vc-primary) 45%, var(--vc-border));
  box-shadow: 0 0 0 4px var(--vc-ring);
}

/* Ícone do check */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme input[type="checkbox"]:checked + span::after {
  content: "✓";
  position: relative;
  left: -28px; /* posiciona dentro da caixa */
  top: 1px;
  font-size: 12px;
  color: #fff;
  font-weight: 800;
}

/* Foco via teclado no checkbox */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-form-login__rememberme input[type="checkbox"]:focus + span::before {
  box-shadow: 0 0 0 4px var(--vc-ring);
  border-color: var(--vc-primary);
}

/* ==================== Ações (Acessar + Perdeu a senha) ==================== */
/* Coloca o botão “Acessar” à esquerda e “Perdeu a senha?” à direita na mesma linha */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(.woocommerce-form-login__submit) {
  grid-column: 1 / 2;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

/* Estiliza o link “Perdeu a senha?” como botão ghost e alinha na direita */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password {
  grid-column: 2 / 3;
  justify-self: end;
  align-self: center;
  margin: 0; /* remove margem padrão */
}

/* Botão ghost para o “Perdeu a senha?” */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 14px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid var(--vc-border);
  background: var(--vc-bg-soft);
  color: var(--vc-primary);
  box-shadow: none;
  transition: border-color .2s, background .2s, box-shadow .2s, transform .08s ease;
}

.elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password a:hover {
  background: color-mix(in srgb, var(--vc-primary) 8%, #fff);
  border-color: color-mix(in srgb, var(--vc-primary) 35%, var(--vc-border));
  box-shadow: 0 6px 18px rgba(227,106,121,.18);
}

.elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password a:active {
  transform: translateY(1px);
}

/* Ícone (usando pseudo) opcional para reforçar ação */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password a::before {
  content: "🔒";
  font-size: 14px;
  opacity: .9;
}

/* Botão principal “Acessar” com largura mínima */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .woocommerce-form-login__submit {
  min-width: 180px;
}


/* ==================== Ajustes finos ==================== */
/* Espaçamento vertical entre grupos */
.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row + .form-row,
.elementor-1748 .elementor-element.elementor-element-07d428a form.register .form-row + .form-row {
  margin-top: 4px;
}

/* Estados de erro em campos */
.elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce form .form-row.woocommerce-invalid input.input-text {
  border-color: var(--vc-danger);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--vc-danger) 25%, transparent);
  background: #fff;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword {
    width: 100%;
}

.elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(.woocommerce-form-login__submit) {
    grid-column: 1 / 2;
    display: flex
;
    justify-content: flex-start;
    align-items: flex-start;
    /* align-content: flex-start; */
    flex-wrap: nowrap;
    flex-direction: column-reverse;
}

/* Margin Titulo tela de entrar */
.elementor-widget-woocommerce-my-account 
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) 
  .woocommerce h2,
.elementor-widget-woocommerce-my-account 
  .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) 
  .woocommerce h3 {
    margin-bottom: 0 !important;
}

/* Erro Mensagem FIX */

.woocommerce-error::before, .woocommerce-info::before, .woocommerce-message::before {
    position: initial !important;
}

/* ==================== Responsividade ==================== */
@media (max-width: 980px) {
  .elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce { flex-direction: column; }
  .elementor-1748 .elementor-element.elementor-element-07d428a .woocommerce-MyAccount-navigation { width: 100%; }
}

@media (max-width: 720px) {
  /* Empilha ações no mobile: Acessar em cima, Perdeu a senha embaixo, centralizados */
  .elementor-1748 .elementor-element.elementor-element-07d428a form.login,
  .elementor-1748 .elementor-element.elementor-element-07d428a form.register {
    grid-template-columns: 1fr;
  }
  .elementor-1748 .elementor-element.elementor-element-07d428a form.login .form-row:has(.woocommerce-form-login__submit),
  .elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password {
    grid-column: 1 / -1;
    justify-self: center;
  }
  .elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password a {
    width: 100%;
    justify-content: center;
  }
  
  element-07d428a form.login .form-row:has(.woocommerce-form-login__submit), .elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password {
        grid-column: 1 / -1;
        justify-self: end;
    }
    
     element-07d428a form.login .form-row:has(.woocommerce-form-login__submit), .elementor-1748 .elementor-element.elementor-element-07d428a form.login p.lost_password {
        grid-column: 1 / -1;
        justify-self: end;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-48bd21a9 */.woocommerce {
    width: 100%;
}

.woocommerce-notices-wrapper,
.woocommerce-notices-wrapper ul.woocommerce-error {
    width: 100%;
    max-width: 100% !important;
}/* End custom CSS */