/* Majestic Cacao — Minha Conta final
   Camada isolada para evitar conflitos com os estilos nativos do WooCommerce. */
body.majestic-account-page.logged-in .woocommerce-MyAccount-content{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.majestic-account-page.logged-in .majestic-account-shell{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:24px;
  align-items:start;
  width:100%;
  min-width:0;
}
body.majestic-account-page .majestic-account-content,
body.majestic-account-page .majestic-account-panel,
body.majestic-account-page .mj-account-form,
body.majestic-account-page .mj-address-edit-form,
body.majestic-account-page .woocommerce-address-fields{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Cabeçalho interno */
.mj-account-page-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin:0 0 18px!important;
  padding:26px 28px!important;
  border:1px solid rgba(75,42,24,.08)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff,#fffaf5)!important;
  box-shadow:0 14px 42px rgba(55,30,17,.05)!important;
}
.mj-account-page-head-copy{min-width:0!important}
.mj-account-page-head small{
  display:block!important;
  margin:0 0 6px!important;
  color:#a26c45!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}
.mj-account-page-head h2{
  margin:0 0 8px!important;
  color:#321e15!important;
  font-family:var(--font-display,"Instrument Serif",serif)!important;
  font-size:clamp(38px,4vw,52px)!important;
  line-height:.98!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
}
.mj-account-page-head p{
  max-width:680px!important;
  margin:0!important;
  color:#7c6658!important;
  font-size:13px!important;
  line-height:1.65!important;
}
.mj-account-page-head-badge{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:38px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  background:#f1e4d5!important;
  color:#775036!important;
  font-size:11px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.mj-account-back-link{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:12px!important;
  background:#f2e8de!important;
  color:#65442f!important;
  font-size:11px!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.mj-account-back-link:hover{background:#ead9c8!important;color:#4b2e1e!important}

/* Cards de formulário */
.mj-account-form,.mj-address-edit-form .woocommerce-address-fields{display:grid!important;gap:16px!important}
.mj-form-card{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:24px!important;
  border:1px solid rgba(75,42,24,.08)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 14px 42px rgba(55,30,17,.045)!important;
  box-sizing:border-box!important;
}
.mj-form-card-security{background:linear-gradient(180deg,#fff,#fffaf5)!important}
.mj-form-card-head{
  display:flex!important;
  align-items:flex-start!important;
  gap:13px!important;
  margin:0 0 20px!important;
  padding:0 0 17px!important;
  border-bottom:1px solid rgba(75,42,24,.075)!important;
}
.mj-form-card-index{
  flex:0 0 40px!important;
  width:40px!important;
  height:40px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  background:#2f1a11!important;
  color:#e2b472!important;
  font-size:10px!important;
  font-weight:900!important;
}
.mj-form-card-head>div{min-width:0!important}
.mj-form-card-head h3{
  margin:0 0 4px!important;
  color:#3b261c!important;
  font-size:17px!important;
  line-height:1.25!important;
  font-weight:800!important;
}
.mj-form-card-head p{
  margin:0!important;
  color:#8b7566!important;
  font-size:12px!important;
  line-height:1.55!important;
}

/* Grid estável: elimina floats e larguras herdadas do WooCommerce */
.mj-form-grid,.mj-address-fields-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  align-items:start!important;
}
.mj-form-grid>.mj-field,
.mj-address-fields-grid>.form-row{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
.mj-form-grid>.mj-span-2,
.mj-address-fields-grid>.mj-span-2,
.mj-address-fields-grid>.form-row-wide{
  grid-column:1/-1!important;
}
.mj-form-grid label,
.mj-address-fields-grid label{
  display:block!important;
  width:100%!important;
  margin:0 0 7px!important;
  color:#604535!important;
  font-size:12px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.mj-form-grid .required,.mj-address-fields-grid .required{color:#aa4f43!important}
.mj-form-grid input.input-text,
.mj-form-grid input[type=password],
.mj-form-grid input[type=email],
.mj-address-fields-grid input.input-text,
.mj-address-fields-grid input[type=text],
.mj-address-fields-grid input[type=email],
.mj-address-fields-grid input[type=tel],
.mj-address-fields-grid select,
.mj-address-fields-grid .select2-container,
.mj-address-fields-grid .select2-selection{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.mj-form-grid input.input-text,
.mj-form-grid input[type=password],
.mj-form-grid input[type=email],
.mj-address-fields-grid input.input-text,
.mj-address-fields-grid input[type=text],
.mj-address-fields-grid input[type=email],
.mj-address-fields-grid input[type=tel],
.mj-address-fields-grid select,
.mj-address-fields-grid .select2-selection{
  min-height:52px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid rgba(75,43,25,.14)!important;
  border-radius:14px!important;
  outline:0!important;
  background:#fffaf6!important;
  color:#2e1a11!important;
  font:600 14px/1.3 Manrope,system-ui,sans-serif!important;
  box-shadow:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.mj-form-grid input:focus,
.mj-address-fields-grid input:focus,
.mj-address-fields-grid select:focus,
.mj-address-fields-grid .select2-container--open .select2-selection{
  border-color:#ae744c!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(174,116,76,.08)!important;
}
.mj-address-fields-grid .select2-container .select2-selection--single .select2-selection__rendered{
  line-height:50px!important;
  padding:0!important;
  color:#2e1a11!important;
}
.mj-address-fields-grid .select2-container .select2-selection--single .select2-selection__arrow{height:50px!important;right:6px!important}
.mj-field-help,
.mj-address-fields-grid .description{
  display:block!important;
  margin:6px 0 0!important;
  color:#9a8678!important;
  font-size:11px!important;
  line-height:1.45!important;
}

/* Notas */
.mj-inline-note{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  gap:11px!important;
  align-items:center!important;
  margin:16px 0 0!important;
  padding:14px 15px!important;
  border:1px solid rgba(91,124,94,.1)!important;
  border-radius:15px!important;
  background:#f1f6ef!important;
  color:#57705d!important;
  box-sizing:border-box!important;
}
.mj-inline-note>span{
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  background:#dce9dc!important;
  font-size:11px!important;
  font-weight:900!important;
}
.mj-inline-note p{margin:0!important;font-size:12px!important;line-height:1.55!important}

/* Ações */
.mj-form-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:100%!important;
  padding-top:2px!important;
}
.mj-form-actions .button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:14px!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.mj-primary-button{background:linear-gradient(135deg,#402419,#2b170f)!important;color:#fff!important;box-shadow:0 10px 24px rgba(45,24,15,.13)!important}
.mj-primary-button:hover{background:linear-gradient(135deg,#503022,#341b12)!important;transform:translateY(-1px)!important}
.mj-secondary-button{background:#f0e6dc!important;color:#684732!important}
.mj-secondary-button:hover{background:#e8d8c9!important;color:#4c3021!important}
.mj-account-extra-fields:empty{display:none!important}

/* Visão geral de endereços */
.mj-address-overview-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
}
.mj-address-overview-card{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:310px!important;
  padding:22px!important;
  border:1px solid rgba(75,42,24,.08)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#fffaf5)!important;
  box-shadow:0 14px 42px rgba(55,30,17,.045)!important;
  box-sizing:border-box!important;
}
.mj-address-overview-head{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding-bottom:16px!important;
  border-bottom:1px solid rgba(75,42,24,.07)!important;
}
.mj-address-icon{
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:#efe2d5!important;
  color:#795035!important;
  font-size:17px!important;
}
.mj-address-overview-head small{display:block!important;color:#a6734e!important;font-size:9px!important;font-weight:900!important;letter-spacing:.12em!important}
.mj-address-overview-head h3{margin:3px 0 0!important;color:#372219!important;font-size:20px!important;line-height:1.2!important;font-weight:800!important}
.mj-address-overview-body{flex:1!important;min-width:0!important;padding:18px 0!important}
.mj-address-overview-body address{margin:0!important;color:#655044!important;font-size:13px!important;line-height:1.75!important;font-style:normal!important;overflow-wrap:anywhere!important}
.mj-address-contact{display:grid!important;gap:8px!important;margin-top:16px!important;padding-top:14px!important;border-top:1px solid rgba(75,42,24,.07)!important}
.mj-address-contact span{display:grid!important;grid-template-columns:90px minmax(0,1fr)!important;gap:10px!important;color:#6d584b!important;font-size:11px!important;overflow-wrap:anywhere!important}
.mj-address-contact strong{color:#3f291e!important;font-weight:850!important}
.mj-address-empty-state{padding:16px!important;border:1px dashed rgba(75,42,24,.14)!important;border-radius:14px!important;background:#fff!important}
.mj-address-empty-state strong{display:block!important;color:#422b20!important;font-size:13px!important}
.mj-address-empty-state p{margin:5px 0 0!important;color:#8c776a!important;font-size:11px!important;line-height:1.55!important}
.mj-address-action{
  align-self:flex-start!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:44px!important;
  margin-top:auto!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:12px!important;
  background:#3a2015!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:850!important;
  text-decoration:none!important;
}

/* Corrige wrappers e interferências do WooCommerce especificamente nestas telas. */
body.majestic-account-page .mj-account-form .form-row,
body.majestic-account-page .mj-address-edit-form .form-row{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.majestic-account-page .mj-address-edit-form .woocommerce-address-fields{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.majestic-account-page .mj-account-form{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Outras abas: normalização final sem alterar a estrutura. */
body.majestic-account-page .majestic-account-dashboard,
body.majestic-account-page .majestic-orders-panel,
body.majestic-account-page .majestic-downloads-panel,
body.majestic-account-page .majestic-security-panel,
body.majestic-account-page .majestic-view-order-panel{
  min-width:0!important;
  overflow:visible!important;
}
body.majestic-account-page .majestic-account-order-card{min-width:0!important;box-sizing:border-box!important}
body.majestic-account-page .majestic-account-order-card>*{min-width:0!important}
body.majestic-account-page .majestic-download-card{min-width:0!important;box-sizing:border-box!important}

@media(max-width:1100px){
  body.majestic-account-page.logged-in .majestic-account-shell{grid-template-columns:1fr!important}
  body.majestic-account-page .woocommerce-MyAccount-navigation{position:static!important}
}
@media(max-width:760px){
  .mj-account-page-head{display:grid!important;grid-template-columns:1fr!important;padding:21px!important;border-radius:20px!important}
  .mj-account-page-head-badge,.mj-account-back-link{justify-self:start!important}
  .mj-form-card{padding:19px!important;border-radius:19px!important}
  .mj-form-grid,.mj-address-fields-grid,.mj-address-overview-grid{grid-template-columns:1fr!important}
  .mj-form-grid>.mj-span-2,.mj-address-fields-grid>.mj-span-2,.mj-address-fields-grid>.form-row-wide{grid-column:1!important}
  .mj-address-overview-card{min-height:0!important}
  .mj-form-actions{display:grid!important;grid-template-columns:1fr!important}
  .mj-form-actions .button{width:100%!important}
}
@media(max-width:520px){
  .mj-account-page-head{padding:18px!important}
  .mj-account-page-head h2{font-size:38px!important}
  .mj-form-card{padding:16px!important}
  .mj-form-card-head{gap:10px!important}
  .mj-form-card-index{width:36px!important;height:36px!important;flex-basis:36px!important}
  .mj-form-grid input.input-text,.mj-form-grid input[type=password],.mj-form-grid input[type=email],
  .mj-address-fields-grid input.input-text,.mj-address-fields-grid select{font-size:16px!important}
  .mj-address-contact span{grid-template-columns:1fr!important;gap:2px!important}
}
.mj-address-sections{display:grid!important;gap:16px!important;width:100%!important;min-width:0!important}
.mj-address-extension-content:empty{display:none!important}
.mj-address-extension-content{margin-top:12px!important;color:#7d6759!important;font-size:11px!important;line-height:1.55!important}
