
/* Bonita Sorpresa Suite V3.4.5 · Mi cuenta
 * Presentación únicamente. No modifica formularios, endpoints, validaciones ni hooks de WooCommerce.
 */
:root{
  --bs-account-green:#153f2d;
  --bs-account-green-soft:#eaf4ed;
  --bs-account-orange:#f56724;
  --bs-account-ink:#142019;
  --bs-account-muted:#69756d;
  --bs-account-line:rgba(21,63,45,.12);
  --bs-account-card:#fff;
  --bs-account-shadow:0 24px 70px rgba(20,46,30,.09);
}

body.woocommerce-account{
  background:
    radial-gradient(circle at 7% 16%,rgba(234,244,237,.95),transparent 26rem),
    radial-gradient(circle at 92% 22%,rgba(255,237,227,.72),transparent 24rem),
    #f7faf8!important;
  color:var(--bs-account-ink)!important;
}
body.woocommerce-account #page,
body.woocommerce-account .site-content,
body.woocommerce-account #content{background:transparent!important}
body.woocommerce-account .site-content>.ast-container,
body.woocommerce-account #content>.ast-container{
  width:min(1180px,calc(100% - 34px))!important;
  max-width:1180px!important;
  padding:clamp(28px,5vw,72px) 0 clamp(90px,10vw,140px)!important;
}
body.woocommerce-account #primary,
body.woocommerce-account .content-area{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account article,
body.woocommerce-account .entry-content{
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.woocommerce-account .entry-header{
  margin:0 0 clamp(22px,4vw,42px)!important;
  padding:0!important;
  border:0!important;
}
body.woocommerce-account .entry-title{
  margin:0!important;
  color:var(--bs-account-ink)!important;
  font-size:clamp(38px,6vw,66px)!important;
  font-weight:950!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
}
body.woocommerce-account .entry-title:before{
  content:'TU ESPACIO';
  display:block;
  margin-bottom:10px;
  color:var(--bs-account-orange);
  font-size:11px;
  font-weight:950;
  line-height:1;
  letter-spacing:.18em;
}
body.woocommerce-account .woocommerce{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body.woocommerce-account .woocommerce h2{
  margin:0 0 16px!important;
  color:var(--bs-account-ink)!important;
  font-size:clamp(25px,3vw,34px)!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
}

/* Acceso / registro */
body.woocommerce-account:not(.logged-in) .woocommerce{
  width:min(720px,100%)!important;
  margin:0 auto!important;
}
body.woocommerce-account:not(.logged-in) .woocommerce>.woocommerce-notices-wrapper{width:100%!important}
body.woocommerce-account .u-columns.col2-set{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
}
body.woocommerce-account .u-columns.col2-set>.u-column1,
body.woocommerce-account .u-columns.col2-set>.u-column2{
  float:none!important;
  width:auto!important;
  min-width:0!important;
}
body.woocommerce-account form.login,
body.woocommerce-account form.register,
body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register,
body.woocommerce-account form.woocommerce-ResetPassword{
  margin:0!important;
  padding:clamp(22px,4vw,38px)!important;
  border:1px solid var(--bs-account-line)!important;
  border-radius:32px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,251,249,.98))!important;
  box-shadow:var(--bs-account-shadow)!important;
}
body.woocommerce-account form.login:before,
body.woocommerce-account form.woocommerce-form-login:before{
  content:'Accede para consultar tus pedidos y datos de entrega.';
  display:block;
  margin:0 0 22px;
  color:var(--bs-account-muted);
  font-size:14px;
  line-height:1.55;
}
body.woocommerce-account .form-row{margin:0 0 17px!important;padding:0!important}
body.woocommerce-account .form-row label{
  display:block!important;
  margin:0 0 8px!important;
  color:#26372d!important;
  font-size:13px!important;
  font-weight:850!important;
  line-height:1.35!important;
}
body.woocommerce-account .required{color:var(--bs-account-orange)!important}
body.woocommerce-account input.input-text,
body.woocommerce-account input[type=email],
body.woocommerce-account input[type=password],
body.woocommerce-account input[type=text],
body.woocommerce-account input[type=tel],
body.woocommerce-account select,
body.woocommerce-account textarea{
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:0 16px!important;
  border:1px solid #d8e0da!important;
  border-radius:16px!important;
  background:#fff!important;
  color:var(--bs-account-ink)!important;
  font-size:16px!important;
  line-height:1.2!important;
  box-shadow:0 7px 20px rgba(20,46,30,.035)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
body.woocommerce-account textarea{min-height:130px!important;padding:14px 16px!important;line-height:1.5!important}
body.woocommerce-account input:focus,
body.woocommerce-account select:focus,
body.woocommerce-account textarea:focus{
  border-color:#67a77e!important;
  outline:0!important;
  box-shadow:0 0 0 4px rgba(53,137,86,.12)!important;
}
body.woocommerce-account .password-input{display:block!important;position:relative!important}
body.woocommerce-account .show-password-input{
  top:50%!important;
  right:16px!important;
  transform:translateY(-50%)!important;
  color:var(--bs-account-green)!important;
}
body.woocommerce-account .woocommerce-form-login__rememberme{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  margin:2px 0 14px!important;
  font-size:13px!important;
  font-weight:750!important;
}
body.woocommerce-account input[type=checkbox]{
  width:21px!important;
  height:21px!important;
  margin:0!important;
  accent-color:var(--bs-account-green)!important;
}
body.woocommerce-account button.button,
body.woocommerce-account a.button,
body.woocommerce-account input.button,
body.woocommerce-account .woocommerce-Button{
  display:inline-flex!important;
  min-height:52px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,var(--bs-account-orange),#ff7e35)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 13px 28px rgba(245,103,36,.22)!important;
  cursor:pointer!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
body.woocommerce-account button.button:hover,
body.woocommerce-account a.button:hover,
body.woocommerce-account input.button:hover{transform:translateY(-2px)!important;box-shadow:0 17px 34px rgba(245,103,36,.28)!important}
body.woocommerce-account .woocommerce-form-login__submit{width:100%!important;margin:0 0 14px!important}
body.woocommerce-account .woocommerce-LostPassword{
  margin:0!important;
  text-align:center!important;
}
body.woocommerce-account .woocommerce-LostPassword a,
body.woocommerce-account .woocommerce-privacy-policy-link{
  color:var(--bs-account-green)!important;
  font-size:13px!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body.woocommerce-account .woocommerce-LostPassword a:hover{text-decoration:underline!important}

/* Acceso social: compatible con Nextend y botones equivalentes sin tocar su callback. */
body.woocommerce-account .nsl-container,
body.woocommerce-account .nsl-container-buttons,
body.woocommerce-account [class*=social-login],
body.woocommerce-account [class*=google-login]{max-width:none!important;margin:0 0 22px!important;padding:0!important}
body.woocommerce-account .nsl-button,
body.woocommerce-account .nsl-button-default,
body.woocommerce-account [class*=social-login] a,
body.woocommerce-account [class*=google-login] a{
  min-height:54px!important;
  border:1px solid #d8e0da!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.woocommerce-account .nsl-button-label-container{font-weight:800!important}

/* Mensajes de WooCommerce */
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message{
  margin:0 0 20px!important;
  padding:16px 18px 16px 48px!important;
  border:1px solid var(--bs-account-line)!important;
  border-top:0!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#334239!important;
  box-shadow:0 10px 28px rgba(20,46,30,.06)!important;
}
body.woocommerce-account .woocommerce-message{background:#eff8f1!important}
body.woocommerce-account .woocommerce-error{background:#fff4ef!important}

/* Cuenta iniciada: menú lateral y contenido. */
body.woocommerce-account.logged-in .woocommerce{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  align-items:start!important;
  gap:24px!important;
}
body.woocommerce-account.logged-in .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1!important}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:10px!important;
  border:1px solid var(--bs-account-line)!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:var(--bs-account-shadow)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid!important;gap:5px!important;margin:0!important;padding:0!important;list-style:none!important}
body.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0!important;padding:0!important;border:0!important}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:flex!important;
  min-height:50px!important;
  align-items:center!important;
  padding:0 15px!important;
  border-radius:15px!important;
  color:#526057!important;
  font-size:13px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:var(--bs-account-green-soft)!important;
  color:var(--bs-account-green)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  float:none!important;
  width:auto!important;
  min-width:0!important;
  min-height:360px!important;
  margin:0!important;
  padding:clamp(22px,4vw,38px)!important;
  border:1px solid var(--bs-account-line)!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:var(--bs-account-shadow)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{margin-top:0!important}
body.woocommerce-account .woocommerce-MyAccount-content p{color:#5f6c64!important;line-height:1.7!important}
body.woocommerce-account .woocommerce-MyAccount-content a{color:var(--bs-account-green)!important;font-weight:800!important}
body.woocommerce-account .woocommerce-MyAccount-content a.button{color:#fff!important}
body.woocommerce-account table.shop_table{
  overflow:hidden!important;
  margin:0 0 20px!important;
  border:1px solid var(--bs-account-line)!important;
  border-radius:20px!important;
  background:#fff!important;
  border-collapse:separate!important;
  border-spacing:0!important;
}
body.woocommerce-account table.shop_table th{
  padding:14px!important;
  background:#f2f7f3!important;
  color:#3b493f!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.woocommerce-account table.shop_table td{padding:14px!important;border-color:#edf1ee!important}
body.woocommerce-account .woocommerce-Address{
  padding:20px!important;
  border:1px solid var(--bs-account-line)!important;
  border-radius:22px!important;
  background:#f9fbfa!important;
}
body.woocommerce-account .woocommerce-Address-title{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
body.woocommerce-account .woocommerce-Address-title h3{margin:0!important;font-size:19px!important}
body.woocommerce-account fieldset{margin:26px 0 0!important;padding:22px!important;border:1px solid var(--bs-account-line)!important;border-radius:22px!important;background:#f9fbfa!important}
body.woocommerce-account legend{padding:0 8px!important;color:var(--bs-account-green)!important;font-weight:900!important}

@media(max-width:920px){
  body.woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation{overflow:hidden!important;padding:7px!important;border-radius:21px!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex!important;overflow-x:auto!important;gap:5px!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation li{flex:0 0 auto!important;scroll-snap-align:start!important}
  body.woocommerce-account .woocommerce-MyAccount-navigation a{min-height:44px!important;white-space:nowrap!important}
}
@media(max-width:700px){
  body.woocommerce-account .site-content>.ast-container,
  body.woocommerce-account #content>.ast-container{width:min(100% - 24px,1180px)!important;padding-top:24px!important}
  body.woocommerce-account .entry-header{margin-bottom:20px!important}
  body.woocommerce-account .entry-title{font-size:42px!important}
  body.woocommerce-account .u-columns.col2-set{grid-template-columns:1fr!important}
  body.woocommerce-account form.login,
  body.woocommerce-account form.register,
  body.woocommerce-account form.woocommerce-form-login,
  body.woocommerce-account form.woocommerce-form-register,
  body.woocommerce-account form.woocommerce-ResetPassword{padding:22px 18px!important;border-radius:25px!important}
  body.woocommerce-account .woocommerce-MyAccount-content{padding:20px 16px!important;border-radius:24px!important}
  body.woocommerce-account table.shop_table_responsive tr{margin-bottom:12px!important;padding:12px!important;border:1px solid var(--bs-account-line)!important;border-radius:16px!important;background:#fff!important}
}
@media(max-width:420px){
  body.woocommerce-account .entry-title{font-size:38px!important}
  body.woocommerce-account input.input-text,
  body.woocommerce-account input[type=email],
  body.woocommerce-account input[type=password],
  body.woocommerce-account input[type=text]{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){
  body.woocommerce-account *{scroll-behavior:auto!important;transition:none!important}
}
