/* ══════════════════════════════════════════════════════
   MI CUENTA — WooCommerce My Account adaptado al tema
══════════════════════════════════════════════════════ */
:root{
  --bg:#ffffff; --bg-2:#fafafa; --ink:#141312; --ink-soft:#4a4642; --ink-mute:#8a857f;
  --line:#ececec; --dark:#0d0d0c; --accent:#8b1a1a;
  --font:'Inter',system-ui,sans-serif;
  --pad-x:clamp(1.25rem,5vw,4.5rem);
  --tracking-xl:0.32em; --tracking-lg:0.22em; --tracking-md:0.14em;
  --cuenta-nav-offset:calc(3.875rem + clamp(1.25rem,2.4vw,2rem));
}
*{box-sizing:border-box;}
body.woocommerce-account{
  margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);
  font-weight:300;-webkit-font-smoothing:antialiased;line-height:1.5;
}
body.woocommerce-account a{color:inherit;text-decoration:none;}
body.woocommerce-account button{font-family:inherit;cursor:pointer;}
/* ── NAV (mismo lenguaje que el resto del sitio) ── */
.cuenta-nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:clamp(0.625rem,1.2vw,1rem) var(--pad-x);
  font-size:0.6875rem;letter-spacing:var(--tracking-lg);text-transform:uppercase;font-weight:500;
  background:rgba(255,255,255,.92);backdrop-filter:blur(1.125rem);-webkit-backdrop-filter:blur(1.125rem);
  border-bottom:0.0625rem solid rgba(0,0,0,.08);
}
.cuenta-nav .nav-left{display:flex;}
.cuenta-nav .nav-center{display:flex;justify-content:center;}
.cuenta-nav .nav-center img{height:3.8125rem;width:auto;display:block;}
.cuenta-nav .nav-right{display:flex;justify-content:flex-end;gap:clamp(0.875rem,2vw,1.75rem);}
.cuenta-nav a{position:relative;padding-bottom:0.1875rem;}
.cuenta-nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:0.0625rem;background:var(--ink);
  transform:scaleX(0);transform-origin:left;transition:transform .4s ease;
}
.cuenta-nav a:hover::after,.cuenta-nav a.active::after{transform:scaleX(1);}
/* ── CONTENEDOR PRINCIPAL ── */
/* .section-narrow es el contenedor real en el template del tema */
.section-narrow,
.cuenta-main{
  max-width:64rem;
  margin:0 auto;
  padding:clamp(2rem,5vw,3.5rem) var(--pad-x) clamp(3rem,7vw,5rem);
  width:100%;
}
/* Título de sección: .eyebrow actúa como heading */
.eyebrow,
.cuenta-title{
  font-size:clamp(1.5rem,3vw,2.25rem);
  font-weight:300;
  letter-spacing:var(--tracking-md);
  text-transform:uppercase;
  line-height:1.1;
  margin:0 0 clamp(1.75rem,4vw,2.75rem);
  color:var(--ink);
}
/* El woocommerce wrapper no debe añadir estilos de layout propios */
.woocommerce-account .woocommerce{
  width:100%!important;
  max-width:100%!important;
}
/* ── TIPOGRAFÍA GENERAL WC ── */
.section-narrow h2,.section-narrow h3,
.cuenta-main h2,.cuenta-main h3{
  font-weight:400;letter-spacing:var(--tracking-md);text-transform:uppercase;
  font-size:0.9375rem;margin:0 0 1.25rem;
}
.section-narrow p,.cuenta-main p{font-size:0.875rem;color:var(--ink-soft);}
.section-narrow fieldset,.cuenta-main fieldset{border:none;margin:2rem 0 0;padding:0;}
.section-narrow legend,.cuenta-main legend{
  font-size:0.6875rem;font-weight:500;letter-spacing:var(--tracking-md);
  text-transform:uppercase;margin-bottom:1rem;
}
/* ── AVISOS ── */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-error li{
  list-style:none;
}
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  margin:0 0 1.75rem;padding:0.875rem 1.125rem;
  font-size:0.8125rem;font-weight:300;color:var(--ink);
  border:0.0625rem solid var(--line);border-left:0.1875rem solid var(--ink);
  background:var(--bg-2);
}
.woocommerce-error{border-left-color:var(--accent);}
.woocommerce-message a,.woocommerce-info a,.woocommerce-error a{
  text-decoration:underline;text-underline-offset:0.1875rem;
}
/* ── FORMULARIOS (login, registro, datos, direcciones) ── */
.section-narrow form,.cuenta-main form{margin:0;}
.section-narrow .form-row,.cuenta-main .form-row{display:block;margin:0 0 1.25rem;padding:0;}
.section-narrow form label,.cuenta-main form label{
  display:block;font-size:0.625rem;font-weight:500;
  letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--ink);
  margin-bottom:0.5rem;
}
.section-narrow form label .required,.cuenta-main form label .required{color:var(--accent);text-decoration:none;}
.section-narrow form .woocommerce-input-wrapper,.cuenta-main form .woocommerce-input-wrapper{display:block;}
.section-narrow input[type="text"],
.section-narrow input[type="email"],
.section-narrow input[type="password"],
.section-narrow input[type="tel"],
.section-narrow select,
.section-narrow textarea,
.cuenta-main input[type="text"],
.cuenta-main input[type="email"],
.cuenta-main input[type="password"],
.cuenta-main input[type="tel"],
.cuenta-main select,
.cuenta-main textarea{
  width:100%;padding:0.75rem 0.875rem;
  font-family:var(--font);font-size:0.875rem;font-weight:300;color:var(--ink);
  background:#fff;border:0.0625rem solid var(--line);border-radius:0;
  outline:none;transition:border-color .2s;appearance:none;-webkit-appearance:none;
}
.section-narrow input:focus,.section-narrow select:focus,.section-narrow textarea:focus,
.cuenta-main input:focus,.cuenta-main select:focus,.cuenta-main textarea:focus{
  border-color:var(--ink);
}
.section-narrow .show-password-input,.cuenta-main .show-password-input{display:none;}
.section-narrow .woocommerce-form-login__rememberme,.cuenta-main .woocommerce-form-login__rememberme{
  display:inline-flex;align-items:center;gap:0.5rem;
  font-size:0.75rem!important;letter-spacing:.04em!important;text-transform:none!important;
  font-weight:300!important;color:var(--ink-soft);margin-bottom:1rem;
}
.section-narrow input[type="checkbox"],.cuenta-main input[type="checkbox"]{
  accent-color:var(--ink);width:0.9375rem;height:0.9375rem;
}
/* Botones */
.section-narrow button[type="submit"],
.section-narrow .button,
.section-narrow .woocommerce-button,
.cuenta-main button[type="submit"],
.cuenta-main .button,
.cuenta-main .woocommerce-button{
  display:inline-block;padding:0.875rem 2rem;
  font-size:0.6875rem;font-weight:500;letter-spacing:var(--tracking-lg);text-transform:uppercase;
  color:#fff;background:var(--ink);border:0.0625rem solid var(--ink);border-radius:0;
  transition:background .25s ease,color .25s ease;
}
.section-narrow button[type="submit"]:hover,
.section-narrow .button:hover,
.section-narrow .woocommerce-button:hover,
.cuenta-main button[type="submit"]:hover,
.cuenta-main .button:hover,
.cuenta-main .woocommerce-button:hover{background:#fff;color:var(--ink);}
.woocommerce-LostPassword{margin-top:1.25rem!important;}
.woocommerce-LostPassword a{
  font-size:0.6875rem;letter-spacing:var(--tracking-md);text-transform:uppercase;
  border-bottom:0.0625rem solid currentColor;padding-bottom:0.1875rem;color:var(--ink-mute);
  transition:color .2s;
}
.woocommerce-LostPassword a:hover{color:var(--ink);}
/* Tarjeta de login centrada (visitantes) */
.section-narrow .woocommerce-form-login,
.section-narrow .woocommerce-form-register,
.section-narrow .woocommerce-ResetPassword,
.cuenta-main .woocommerce-form-login,
.cuenta-main .woocommerce-form-register,
.cuenta-main .woocommerce-ResetPassword{
  max-width:26rem;border:0.0625rem solid var(--line);padding:clamp(1.5rem,4vw,2.5rem);
}
/* ── PANEL DE CUENTA (usuario conectado) ── */
/* Sobreescribir los floats de WooCommerce con mayor especificidad */
.woocommerce-account .woocommerce-MyAccount-navigation{
  float:none!important;
  width:auto!important;
  margin-bottom:2rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;gap:0.5rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;}
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block;padding:0.4375rem 1rem;
  font-size:0.625rem;font-weight:500;letter-spacing:var(--tracking-md);text-transform:uppercase;
  color:var(--ink-mute);border:0.0625rem solid var(--line);
  transition:border-color .2s,color .2s,background .2s;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{border-color:var(--ink);color:var(--ink);}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  border-color:var(--ink);background:var(--ink);color:#fff;
}
.woocommerce-account .woocommerce-MyAccount-content{
  float:none!important;
  width:100%!important;
}
/* Mensaje vacío (sin descargas, pedidos, etc.) */
/* Mensaje de estado vacío (sin descargas, etc.) */
.woocommerce-MyAccount-content .woocommerce-info{
  display:flex;align-items:center;gap:1rem;
  padding:1.25rem 1.5rem;
  border:0.0625rem solid var(--line);
  background:var(--bg-2);
  font-size:0.875rem;
  color:var(--ink-soft);
}
/* Párrafos normales de contenido */
.woocommerce-MyAccount-content > p{
  font-size:0.875rem;
  color:var(--ink-soft);
  line-height:1.7;
  margin:0 0 1rem;
}
/* Tablas (pedidos, descargas) */
.section-narrow table,.cuenta-main table{
  width:100%;border-collapse:collapse;font-size:0.8125rem;margin:0 0 1.5rem;
}
.section-narrow table th,.cuenta-main table th{
  text-align:left;font-size:0.625rem;font-weight:500;
  letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--ink-mute);
  padding:0.75rem 0.875rem;border-bottom:0.0625rem solid var(--ink);
}
.section-narrow table td,.cuenta-main table td{
  padding:0.875rem;border-bottom:0.0625rem solid var(--line);color:var(--ink-soft);
}
.section-narrow table .woocommerce-button,.cuenta-main table .woocommerce-button{
  padding:0.5rem 1.125rem;font-size:0.5625rem;
}
/* Direcciones */
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;}
.woocommerce-Address{border:0.0625rem solid var(--line);padding:1.5rem;}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;}
.woocommerce-Address-title .edit{
  font-size:0.625rem;letter-spacing:var(--tracking-md);text-transform:uppercase;
  color:var(--ink-mute);border-bottom:0.0625rem solid currentColor;padding-bottom:0.125rem;
}
.woocommerce-Address address{font-style:normal;font-size:0.875rem;color:var(--ink-soft);line-height:1.7;}
/* Enlaces dentro del contenido */
.woocommerce-MyAccount-content a:not(.woocommerce-button){
  text-decoration:underline;text-underline-offset:0.1875rem;
}
/* ── MÓVIL ── */
@media(max-width:50rem){
  :root{--cuenta-nav-offset:4.0625rem;}
  .cuenta-nav{padding:0.625rem var(--pad-x);}
  .cuenta-nav .nav-center img{height:2.75rem;}
  .cuenta-nav .nav-left a span{display:none;}
  .woocommerce-Addresses{grid-template-columns:1fr;}
  .section-narrow table thead,.cuenta-main table thead{display:none;}
  .section-narrow table tr,.cuenta-main table tr{
    display:block;border-bottom:0.0625rem solid var(--line);padding:0.75rem 0;
  }
  .section-narrow table td,.cuenta-main table td{
    display:flex;justify-content:space-between;gap:1rem;border:none;padding:0.25rem 0;
  }
  .section-narrow table td::before,.cuenta-main table td::before{
    content:attr(data-title);font-size:0.625rem;font-weight:500;
    letter-spacing:var(--tracking-md);text-transform:uppercase;color:var(--ink-mute);
  }
}
/* ── CORRECCIÓN GRID DIRECCIONES ── */
/* Anular los floats de WooCommerce en las columnas de direcciones */
.woocommerce-Addresses.col2-set .col-1,
.woocommerce-Addresses.col2-set .col-2,
.woocommerce .woocommerce-Addresses .col-1,
.woocommerce .woocommerce-Addresses .col-2{
  float:none!important;
  width:auto!important;
}
/* ── OCULTAR ICONO SVG DE WOOCOMMERCE-INFO ── */
/* El icono por defecto de WC no encaja con el diseño del tema */
.woocommerce-MyAccount-content .woocommerce-info::before{
  display:none!important;
}
.woocommerce-MyAccount-content .woocommerce-info .woocommerce-info__icon,
.woocommerce-MyAccount-content .woocommerce-info svg{
  display:none!important;
}
/* ── TÍTULO DIRECCIÓN: ajuste del heading ── */
.woocommerce-Address-title h2,
.woocommerce-Address-title h3{
  font-size:0.75rem;
  font-weight:500;
  letter-spacing:var(--tracking-md);
  text-transform:uppercase;
  margin:0;
  line-height:1.4;
  flex:1;
  padding-right:1rem;
}
/* ── POSICIONAMIENTO EXPLÍCITO GRID DIRECCIONES ── */
/* Sin esto, WooCommerce puede invertir el orden de las columnas */
.woocommerce-Addresses .col-1,
.woocommerce-Addresses .u-column1{
  grid-column:1;
}
.woocommerce-Addresses .col-2,
.woocommerce-Addresses .u-column2{
  grid-column:2;
}
@media(max-width:50rem){
  .woocommerce-Addresses .col-1,
  .woocommerce-Addresses .u-column1{
    grid-column:1 / -1;
  }
  .woocommerce-Addresses .col-2,
  .woocommerce-Addresses .u-column2{
    grid-column:1 / -1;
  }
}
/* ── AVISO INFO DENTRO DEL CONTENIDO DE CUENTA ── */
/* Sobreescribir estilos de WooCommerce para .woocommerce-info dentro de la cuenta */
.woocommerce-MyAccount-content .woocommerce-info{
  padding:1.25rem 1.5rem!important;
  border-top:0.0625rem solid var(--line)!important;
  border-left:0.1875rem solid var(--ink)!important;
  background:var(--bg-2)!important;
  position:relative;
  display:flex!important;
  align-items:center!important;
  gap:1rem!important;
  flex-wrap:wrap!important;
}
/* Ocultar icono de fuente WooCommerce en los avisos de cuenta */
.woocommerce-MyAccount-content .woocommerce-info::before{
  display:none!important;
}
/* Botón dentro del aviso: no usar float */
.woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-MyAccount-content .woocommerce-info a.button,
.woocommerce-MyAccount-content .woocommerce-info .wc-forward{
  float:none!important;
  margin-left:auto;
  white-space:nowrap;
}

/* ══════════════════════════════════════════════════════
   COMPATIBILIDAD CON EL NAV FIJO DEL TEMA (v1.0.96+)
   Cuando woocommerce.php renderiza .cuenta-nav (fijo), el
   contenedor necesita el offset para no quedar tapado.
   (Tu versión en vivo no tenía nav; esta regla solo actúa
   si el nav está presente en el DOM.)
══════════════════════════════════════════════════════ */
.cuenta-nav ~ .cuenta-main,
.cuenta-nav ~ main .section-narrow,
.cuenta-nav ~ .section .section-narrow{
  padding-top:calc(var(--cuenta-nav-offset) + clamp(2rem,5vw,3.5rem));
}
