/* ===== Cuenta (v1) ===== */
/* Menú de la cuenta: pastillas con icono; en móvil, fila que se desliza */
.tienda--cuenta .woocommerce:has(.woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(20px, 3vw, 48px); align-items: start; }
/* Borja 28/09: en el inicio de la cuenta las tarjetas ya son el menú; las pestañas solo en las demás secciones */
.tienda--cuenta .woocommerce:has(.cuenta-inicio) { grid-template-columns: minmax(0, 1fr); }
.tienda--cuenta .woocommerce:has(.cuenta-inicio) > .woocommerce-MyAccount-navigation { display: none; }
.tienda .woocommerce-MyAccount-navigation { position: sticky; top: 120px; }
.tienda .woocommerce-MyAccount-navigation ul { flex-direction: column; gap: 8px; margin: 0; background: #fff; border: 3px solid var(--tinta); border-radius: 26px; padding: 12px; box-shadow: 6px 8px 0 var(--tinta); }
.tienda .woocommerce-MyAccount-navigation a { width: 100%; gap: 10px; border-color: transparent; font-size: 1em; }
.tienda .woocommerce-MyAccount-navigation a::before { content: ""; width: 22px; height: 22px; flex: none; background: currentColor; -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; }
.tienda .woocommerce-MyAccount-navigation a:hover { border-color: var(--tinta); }
.woocommerce-MyAccount-navigation-link--dashboard a { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011l9-8%209%208%22%2F%3E%3Cpath%20d%3D%22M5%2010v10h14V10%22%2F%3E%3Cpath%20d%3D%22M10%2020v-6h4v6%22%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-MyAccount-navigation-link--orders a { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%208l-9-5-9%205%209%205%209-5z%22%2F%3E%3Cpath%20d%3D%22M3%208v8l9%205%209-5V8%22%2F%3E%3Cpath%20d%3D%22M12%2013v8%22%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-address a { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-MyAccount-navigation-link--edit-account a { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M4%2021a8%208%200%200%201%2016%200%22%2F%3E%3C%2Fsvg%3E"); }
.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 6px; padding-top: 8px; border-top: 2px dashed var(--panel-borde, #d9c9ad); }
.woocommerce-MyAccount-navigation-link--customer-logout a { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%2021H5a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2h4%22%2F%3E%3Cpath%20d%3D%22M16%2017l5-5-5-5%22%2F%3E%3Cpath%20d%3D%22M21%2012H9%22%2F%3E%3C%2Fsvg%3E"); color: var(--texto-2) !important; font-weight: 700; }
/* el contenido no es otra tarjeta: las tarjetas van dentro */
.tienda .woocommerce-MyAccount-content { min-height: 320px; background: none; border: 0; box-shadow: none; padding: 0; max-width: 1100px; }
.tienda .woocommerce-MyAccount-content > form, .cuenta-inicio { background: #fff; border: 3px solid var(--tinta); border-radius: 28px; padding: clamp(18px, 2vw, 28px); box-shadow: 6px 8px 0 var(--tinta); }
.tienda .shipped_via { display: none; }
.tienda .order_details .product-quantity { margin-left: 6px; }
.tienda .woocommerce-MyAccount-content > .tienda-bizum, .tienda .woocommerce-MyAccount-content > .tienda-linea { margin-bottom: 22px; }

/* Entrar y crear cuenta */
.tienda #customer_login > div { position: relative; }
.tienda #customer_login h2 { font-size: clamp(26px, 1.4vw + 14px, 36px); }
.tienda #customer_login .button.alt { width: 100%; font-size: 20px; min-height: 56px; margin-top: 6px; }
.tienda .woocommerce-form-login .form-row:has(.woocommerce-form-login__rememberme) { display: grid; gap: 10px; }
.cuenta-asoma { position: absolute; top: -58px; right: 26px; width: 92px; height: 92px; border-radius: 50%; overflow: hidden; background: #fff; border: 3px solid var(--tinta); box-shadow: 3px 4px 0 var(--tinta); transform: rotate(8deg); animation: balanceo 2.8s ease-in-out infinite alternate; }
.cuenta-asoma img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 56%; transform: scale(1.3); }
.cuenta-ventajas { list-style: none; padding: 0; margin: 0 0 16px; display: grid; gap: 6px; font-weight: 700; }
.cuenta-ventajas li::before { content: "✓"; display: inline-grid; place-items: center; width: 24px; height: 24px; margin-right: 8px; border-radius: 50%; background: var(--c-verde); color: #fff; font-size: 13px; }
.cuenta-nota { color: var(--texto-2); margin: 0 0 16px; }
.cuenta-sin { text-align: center; margin: 22px 0 0; font-weight: 700; }
.cuenta-ayuda { display: block; font-size: .8em; color: var(--texto-2); margin-top: 4px; }
.tienda .password-input { position: relative; display: block; }
.tienda .password-input .input-text { padding-right: 52px; }
.tienda .show-password-input { position: absolute; right: 8px; top: 50%; translate: 0 -50%; width: 38px; height: 38px; border: 0; border-radius: 50%; background: var(--fondo); cursor: pointer; }
.tienda .show-password-input::before { content: ""; position: absolute; inset: 8px; background: var(--tinta); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012s3.5-7%2010-7%2010%207%2010%207-3.5%207-10%207S2%2012%202%2012z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%2012s3.5-7%2010-7%2010%207%2010%207-3.5%207-10%207S2%2012%202%2012z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; }
.tienda .show-password-input.display-password::after { content: ""; position: absolute; left: 8px; right: 8px; top: 50%; height: 3px; background: var(--tinta); transform: rotate(-40deg); border-radius: 2px; }

/* Contraseña olvidada, correo enviado, nueva contraseña: una tarjeta al centro */
.tienda .lost_reset_password, .cuenta-sobre { max-width: 560px; margin: 0 auto; background: #fff; border: 3px solid var(--tinta); border-radius: 28px; padding: clamp(20px, 2.4vw, 32px); box-shadow: 8px 10px 0 var(--tinta); }
.tienda--cuenta-sola .tienda-titulo { display: table; margin-inline: auto; }
.tienda .lost_reset_password .form-row-first, .tienda .lost_reset_password .form-row-last { width: 100%; display: block; margin-right: 0; }
.tienda .lost_reset_password .button.alt { width: 100%; }
.cuenta-sobre { text-align: center; }
.cuenta-sobre__dibujo { position: relative; display: inline-block; color: var(--tinta); animation: balancea 3.2s ease-in-out infinite alternate; transform-origin: 50% 100%; }
.cuenta-sobre__dibujo svg { width: 150px; height: auto; }
.cuenta-sobre__dibujo img { position: absolute; width: 64px; height: 64px; object-fit: cover; border-radius: 50%; border: 3px solid var(--tinta); background: #fff; right: -34px; bottom: -8px; }
/* «Sin contraseña»: un Minimal se ha quedado dormido junto a la tarjeta */
.tienda .lost_reset_password { position: relative; }
.cuenta-duerme { position: absolute; left: calc(100% + 18px); bottom: 10px; width: 170px; pointer-events: none; }
.cuenta-duerme img { display: block; width: 100%; height: auto; transform-origin: 50% 90%; animation: respira 3.4s ease-in-out infinite; }
.cuenta-duerme i { position: absolute; font-style: normal; font-family: var(--display); color: var(--c-azul); opacity: 0; animation: zeta 3.6s ease-out infinite; }
.cuenta-duerme i:nth-of-type(1) { left: 58%; top: 2%; font-size: 22px; }
.cuenta-duerme i:nth-of-type(2) { left: 70%; top: -18%; font-size: 28px; animation-delay: 1.2s; }
.cuenta-duerme i:nth-of-type(3) { left: 84%; top: -40%; font-size: 34px; animation-delay: 2.4s; }
@keyframes respira { 50% { transform: scale(1.03, .97); } }
@keyframes zeta { 0% { opacity: 0; transform: translate(0, 10px) rotate(-8deg); } 25%, 60% { opacity: 1; } 100% { opacity: 0; transform: translate(14px, -16px) rotate(8deg); } }
@media (max-width: 1023px) {
  .cuenta-duerme { left: auto; right: 4px; bottom: -58px; width: 92px; }
  .cuenta-duerme i:nth-of-type(1) { font-size: 16px; } .cuenta-duerme i:nth-of-type(2) { font-size: 20px; } .cuenta-duerme i:nth-of-type(3) { font-size: 24px; left: 80%; }
}
.cuenta-sobre__titulo { font-family: var(--display); text-transform: uppercase; font-size: clamp(24px, 1.4vw + 14px, 34px); color: var(--c-verde); margin: 12px 0 6px; }

/* Inicio de la cuenta */
.cuenta-hola { font-family: var(--display); text-transform: uppercase; font-size: clamp(30px, 2vw + 16px, 48px); color: var(--c-coral); margin: 0; line-height: 1.1; }
.cuenta-panel { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.cuenta-tarjeta { display: grid; align-content: start; gap: 6px; padding: 18px; border: 3px solid var(--tinta); border-radius: 24px; background: var(--fondo); text-decoration: none; color: var(--tinta); transition: transform 150ms, box-shadow 150ms; }
.cuenta-tarjeta:hover { transform: translateY(-3px) rotate(-0.6deg); box-shadow: 5px 6px 0 var(--tinta); }
.cuenta-tarjeta strong { font-size: 1.1em; }
.cuenta-tarjeta > span:not(.cuenta-estado):not(.tienda-otro__mas):not(.cuenta-tarjeta__icono) { color: var(--texto-2); font-size: .85em; }
.cuenta-tarjeta--pedido { grid-column: 1 / -1; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; column-gap: 24px; background: #fff; }
.cuenta-tarjeta--pedido .cuenta-estado { justify-self: start; }
.cuenta-tarjeta--pedido .cuenta-tarjeta__eti { grid-column: 1 / -1; font-weight: 800; color: var(--c-morado) !important; font-size: .85em; text-transform: uppercase; letter-spacing: .04em; }
.cuenta-tarjeta--pedido .cuenta-tarjeta__ir { grid-column: 1 / -1; font-weight: 800; color: var(--tinta) !important; }
.cuenta-tarjeta__icono { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; border: 2px solid var(--tinta); background: #fff; }
.cuenta-tarjeta__icono::before { content: ""; width: 24px; height: 24px; background: var(--tinta); -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; }
.cuenta-i-pedidos { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%208l-9-5-9%205%209%205%209-5z%22%2F%3E%3Cpath%20d%3D%22M3%208v8l9%205%209-5V8%22%2F%3E%3Cpath%20d%3D%22M12%2013v8%22%2F%3E%3C%2Fsvg%3E"); background: var(--pastel-azul); } .cuenta-i-direcciones { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E"); background: var(--pastel-verde); } .cuenta-i-datos { --i: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%228%22%20r%3D%224%22%2F%3E%3Cpath%20d%3D%22M4%2021a8%208%200%200%201%2016%200%22%2F%3E%3C%2Fsvg%3E"); background: var(--pastel-rosa); }
.cuenta-tarjeta--otro { border-style: dashed; background: #fff; }

/* Estado de un pedido */
.cuenta-estado { display: inline-flex; align-items: center; gap: 6px; width: max-content; max-width: 100%; padding: 4px 12px; border-radius: 999px; border: 2px solid var(--tinta); font-weight: 800; font-size: .8em; background: #fff; }
.cuenta-estado::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: currentColor; }
.cuenta-estado--espera { background: var(--pastel-amarillo, #FBE7A6); }
.cuenta-estado--espera::before { background: var(--c-coral); animation: latido 1.4s ease-in-out infinite; }
.cuenta-estado--prepara { background: var(--pastel-azul); }
.cuenta-estado--enviado { background: var(--pastel-verde); }
.cuenta-estado--enviado::before { background: var(--c-verde); }
@keyframes latido { 50% { transform: scale(1.5); opacity: .6; } }

/* Lista de pedidos: cada pedido, una tarjeta */
.tienda .account-orders-table, .tienda .account-orders-table tbody { display: block; width: 100%; max-width: 1100px; border: 0; }
.tienda .account-orders-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.tienda .account-orders-table tr.order { display: grid; grid-template-columns: auto auto auto minmax(0, 1fr) auto; gap: 8px 20px; align-items: center; background: #fff; border: 3px solid var(--tinta); border-radius: 24px; padding: 14px 18px; margin-bottom: 16px; box-shadow: 5px 6px 0 var(--tinta); }
.tienda .account-orders-table tr.order > * { display: block; border: 0 !important; padding: 0; text-align: left; background: none; }
.tienda .woocommerce-orders-table__cell-order-actions { text-align: right !important; }
.tienda .woocommerce-orders-table__cell-order-number { white-space: nowrap; display: flex !important; align-items: center; }
.tienda .woocommerce-orders-table__cell-order-number .tienda-pack { margin-right: 14px; }
.tienda .woocommerce-orders-table__cell-order-number > a:not(.tienda-pack) { font-weight: 800; font-size: 1.15em; text-decoration: none; }
.tienda .woocommerce-orders-table__cell-order-total { font-weight: 800; font-size: 1.1em; }
.cuenta-que { display: block; font-weight: 400; font-size: .85em; font-family: var(--texto); color: var(--texto-2); }
.tienda .woocommerce-orders-table__cell-order-actions .button { min-height: 42px; padding: 6px 16px; font-size: .85em; margin: 4px 0 4px 6px; box-shadow: 3px 4px 0 var(--tinta); }
.tienda .button.order-again { background: var(--c-coral); color: #fff; }

/* Ver un pedido */
.cuenta-linea-pack { display: inline-flex; align-items: center; gap: 14px; }
.cuenta-linea-pack > span { display: grid; gap: 2px; }
.cuenta-linea-pack a:not(.tienda-pack):not(.tienda-bolsa-mini) { font-weight: 800; font-size: 1.05em; text-decoration: none; }
.cuenta-linea-pack .tienda-bolsa-mini { width: auto; flex: none; }
/* Cancelar el pedido (DC-20261007-04): discreto, debajo de los detalles; el formulario se abre al pulsar */
.cuenta-cancelacion { margin: 22px 0 6px; }
.cuenta-cancelar > summary { display: inline-block; cursor: pointer; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; color: var(--acento-texto, #B8362F); }
.cuenta-cancelar[open] > summary { margin-bottom: 10px; }
.cuenta-cancelar__form { max-width: 520px; padding: 16px; border: 2px dashed var(--panel-borde, #d9c9ad); border-radius: 18px; background: #fff; }
.cuenta-cancelar__form textarea { width: 100%; }
/* Móvil estrecho (07/10, #2168 a 360 px): «Bolsa Misteriosa 6» se partía en tres líneas junto a la bolsa; bolsa más
   pequeña y menos hueco */
@media (max-width: 480px) {
  /* la miniatura encima del texto: el nombre y «Tus Minimals» usan todo el ancho (Borja 07/10: así descolocaba) */
  .cuenta-linea-pack { flex-direction: column; align-items: flex-start; gap: 8px; }
  .cuenta-linea-pack .tienda-bolsa-mini { width: 52px; height: 90px; transform: rotate(-4deg); }
  .cuenta-linea-pack .tienda-bolsa-mini .bolsa-dibujo { transform: scale(0.65); transform-origin: 0 0; }
  .cuenta-linea-pack .tienda-pack { flex: none; }
}
.tienda .order_details .wc-item-meta { list-style: none; padding: 0; margin: 2px 0 0; font-size: .85em; color: var(--texto-2); }
.tienda .order_details .wc-item-meta p { display: inline; margin: 0; }
.tienda .order_details thead { display: none; }

/* Direcciones */
.tienda .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.tienda .woocommerce-Addresses .col-1, .tienda .woocommerce-Addresses .col-2 { width: auto; float: none; background: var(--fondo); border: 3px solid var(--tinta); border-radius: 24px; padding: 18px; }
.tienda .woocommerce-Address-title { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; }
.tienda .woocommerce-Address-title h2 { font-size: 24px; margin: 0; display: inline-flex; align-items: center; gap: 8px; }
.tienda .woocommerce-Address-title h2::before { content: ""; width: 24px; height: 24px; background: var(--c-morado); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; }
.tienda .woocommerce-Address-title .edit { display: inline-flex; min-height: 40px; align-items: center; padding: 4px 16px; border-radius: 999px; border: 2px solid var(--tinta); background: #fff; font-weight: 800; text-decoration: none; }
.tienda .woocommerce-Address address { font-style: normal; line-height: 1.6; margin-top: 10px; }
.tienda .woocommerce-address-fields .button.alt, .tienda .edit-account .button.alt { width: auto; min-width: 260px; }
.cuenta-volver { margin-left: 16px; font-weight: 700; }

/* Filas de dos campos (nombre y apellidos…) lado a lado */
.tienda .form-row-first, .tienda .form-row-last { display: block; width: calc(50% - 8px); margin-right: 0; }
.tienda .form-row-first { float: left; } .tienda .form-row-last { float: right; }
.tienda .clear, .tienda .woocommerce-address-fields__field-wrapper::after, .tienda .edit-account::after { content: ""; display: block; clear: both; }
.tienda .form-row-wide, .tienda fieldset { clear: both; }
@media (max-width: 479px) { .tienda .form-row-first, .tienda .form-row-last { float: none; width: 100%; } }

/* Entrar / crear cuenta: pestañas en móvil */
.cuenta-pestanas { display: none; }
@media (max-width: 767px) {
  .con-pestanas .cuenta-pestanas { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; padding: 5px; margin: 0 0 18px; background: #fff; border: 3px solid var(--tinta); border-radius: 999px; box-shadow: 4px 5px 0 var(--tinta); }
  .cuenta-pestanas button { font: inherit; font-weight: 800; min-height: 46px; border: 0; border-radius: 999px; background: none; color: var(--tinta); cursor: pointer; }
  .cuenta-pestanas button[aria-selected="true"] { background: var(--c-morado); color: #fff; }
  .con-pestanas #customer_login > div:not(.activa) { display: none; }
  .con-pestanas #customer_login { row-gap: 0 !important; }
  .con-pestanas .cuenta-asoma { display: none; }
  .tienda #customer_login > div { padding: 20px; }
  .tienda #customer_login h2 { font-size: 26px; }
  .cuenta-ventajas { font-size: 15px; gap: 4px; }
  .tienda-sub { font-size: 16px; }
}

/* Seguimiento del envío (Packlink PRO) */
.cuenta-envio { background: #fff; border: 3px solid var(--tinta); border-radius: 28px; padding: clamp(18px, 2vw, 26px); box-shadow: 6px 8px 0 var(--tinta); margin: 0 0 22px; }
.cuenta-envio__cabeza { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; }
.cuenta-envio__camion { width: 58px; height: 58px; border-radius: 50%; border: 3px solid var(--tinta); background: var(--pastel-verde); position: relative; animation: balanceo 1.6s ease-in-out infinite alternate; }
.cuenta-envio__camion::before { content: ""; position: absolute; inset: 12px; background: var(--tinta); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207h11v9H3z%22%2F%3E%3Cpath%20d%3D%22M14%2010h4l3%203v3h-7z%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%2217.5%22%20r%3D%221.8%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2217.5%22%20r%3D%221.8%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%207h11v9H3z%22%2F%3E%3Cpath%20d%3D%22M14%2010h4l3%203v3h-7z%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%2217.5%22%20r%3D%221.8%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2217.5%22%20r%3D%221.8%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; }
.cuenta-envio__titulo { font-family: var(--display); text-transform: uppercase; font-size: clamp(22px, 1.4vw + 12px, 30px); color: var(--c-verde); margin: 0; }
.cuenta-envio .cuenta-nota { margin: 2px 0 0; }
.cuenta-envio__num { font-family: ui-monospace, monospace; letter-spacing: .02em; overflow-wrap: anywhere; }
.cuenta-envio__pasos { list-style: none; padding: 0; margin: 20px 0 10px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); position: relative; }
.cuenta-envio__pasos::before { content: ""; position: absolute; top: 11px; left: 12%; right: 12%; height: 4px; background: repeating-linear-gradient(90deg, var(--chip) 0 10px, transparent 10px 16px); }
.cuenta-envio__pasos li { position: relative; display: grid; justify-items: center; text-align: center; gap: 2px; padding-top: 32px; font-size: .8em; color: var(--texto-2); }
.cuenta-envio__pasos li::before { content: ""; position: absolute; top: 0; width: 26px; height: 26px; border-radius: 50%; border: 3px solid var(--tinta); background: #fff; }
.cuenta-envio__pasos li.hecho::before { background: var(--c-verde); }
.cuenta-envio__pasos li.ahora::before { background: var(--c-amarillo); animation: latido 1.4s ease-in-out infinite; }
.cuenta-envio__pasos strong { color: var(--tinta); font-size: 1.1em; }
.tienda .order-again .button { width: auto; }

/* Direcciones guardadas */
.cuenta-direcciones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.cuenta-direccion { display: grid; align-content: start; gap: 10px; background: #fff; border: 3px solid var(--tinta); border-radius: 24px; padding: 18px; box-shadow: 5px 6px 0 var(--tinta); }
.cuenta-direccion--fija { background: var(--pastel-verde); }
.cuenta-direccion__cabeza { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
.cuenta-direccion__cabeza h2 { margin: 0 !important; font-size: 24px !important; display: inline-flex; align-items: center; gap: 8px; }
.cuenta-direccion__cabeza h2::before { content: ""; width: 22px; height: 22px; background: var(--c-morado); -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222.2%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2010c0%206-8%2012-8%2012s-8-6-8-12a8%208%200%200%201%2016%200z%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2210%22%20r%3D%223%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; }
.cuenta-direccion__fija { font-size: .75em; font-weight: 800; background: #fff; border: 2px solid var(--tinta); border-radius: 999px; padding: 2px 10px; }
.cuenta-direccion address { font-style: normal; line-height: 1.55; }
.cuenta-direccion__botones { display: flex; flex-wrap: wrap; gap: 8px; }
.cuenta-mini--borrar { border-style: dashed; color: var(--c-coral); border-color: var(--c-coral); }
.cuenta-direccion--nueva { place-content: center; justify-items: center; text-align: center; border-style: dashed; box-shadow: none; text-decoration: none; color: var(--tinta); min-height: 200px; }
.cuenta-direccion--nueva strong { font-size: 1.1em; } .cuenta-direccion--nueva span:last-child { color: var(--texto-2); font-size: .85em; }
.cuenta-check { display: flex; align-items: center; gap: 10px; font-weight: 700; margin: 6px 0 16px; }
.cuenta-check input { width: 22px; height: 22px; accent-color: var(--c-morado); }

/* Correo: se cambia con contraseña y enlace de confirmación */
.cuenta-correo { clear: both; border: 2px solid var(--tinta); border-radius: 20px; padding: 14px 16px; margin: 0 0 18px; background: var(--fondo); }
.cuenta-correo__actual { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 12px; margin: 0; }
.cuenta-correo__actual span { font-weight: 700; } .cuenta-correo__actual strong { overflow-wrap: anywhere; }
.cuenta-correo__cambiar summary { cursor: pointer; font-weight: 800; color: var(--c-morado); margin-top: 8px; text-decoration: underline; text-underline-offset: 3px; }
.cuenta-correo__cambiar[open] summary { margin-bottom: 12px; }

/* Bizum en el pedido: pasos, copiar, y resalta al llegar desde «Esperando tu Bizum» */
a.cuenta-estado { text-decoration: none; color: var(--tinta); cursor: pointer; }
a.cuenta-estado:hover { box-shadow: 2px 3px 0 var(--tinta); }
.cuenta-estado__ir { font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }

/* Tus datos */
.tienda .edit-account fieldset { border: 2px dashed var(--tinta); border-radius: 22px; padding: 16px 18px 6px; margin: 10px 0 18px; }
/* campos de contraseña a un ancho razonable */
.tienda .edit-account fieldset .form-row, .tienda .cuenta-correo .form-row { max-width: 520px; }
.tienda .edit-account legend { font-family: var(--display); text-transform: uppercase; color: var(--c-morado); font-size: 22px; padding: 0 8px; }

@media (max-width: 1023px) {
  .tienda--cuenta .woocommerce:has(.woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); }
  /* en pantalla estrecha el menú se reparte en pastillas que se ven todas (nada escondido a la derecha) */
  .tienda .woocommerce-MyAccount-navigation { position: static; }
  .tienda .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; border: 0; box-shadow: none; background: none; padding: 0; }
  .tienda .woocommerce-MyAccount-navigation a { border-color: var(--tinta); min-width: 0; }
  /* «Salir», enlace de texto aparte, no una pastilla más */
  .woocommerce-MyAccount-navigation-link--customer-logout { grid-column: 1 / -1; justify-self: end; margin: 0; padding: 0; border: 0; }
  .tienda .woocommerce-MyAccount-navigation-link--customer-logout a { border: 0 !important; background: none; min-height: 36px; padding: 2px 4px; text-decoration: underline; text-underline-offset: 3px; }
  .cuenta-panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
/* con el menú al lado, la fila del pedido no cabe entera hasta 1280 px: número arriba y botones abajo */
@media (max-width: 1279px) {
  .tienda .account-orders-table tr.order { grid-template-columns: auto auto minmax(0, 1fr); }
  .tienda .woocommerce-orders-table__cell-order-number { grid-column: 1 / -1; }
  .tienda .woocommerce-orders-table__cell-order-actions { grid-column: 1 / -1; }
}
@media (max-width: 479px) {
  /* títulos dibujados largos («Direcciones», «Sin contraseña») caben en 320 px */
  .tienda .tienda-titulo.display--40 { font-size: min(40px, 9vw); }
  .tienda .woocommerce-MyAccount-navigation ul { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  /* que «Direcciones» quepa aunque el móvil tenga la letra grande */
  .tienda .woocommerce-MyAccount-navigation ul { gap: 6px; }
  .tienda .woocommerce-MyAccount-navigation a { font-size: min(15px, 4.1vw); padding: 6px 8px; gap: 6px; }
  .tienda .woocommerce-MyAccount-navigation a::before { width: 18px; height: 18px; }
  .cuenta-tarjeta { min-width: 0; }
  .cuenta-tarjeta strong { font-size: min(17px, 4.6vw); overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
  .cuenta-panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
  .cuenta-direcciones { grid-template-columns: minmax(0, 1fr); }
  .cuenta-envio__cabeza { grid-template-columns: auto minmax(0, 1fr); }
  .cuenta-envio__cabeza .pildora { grid-column: 1 / -1; justify-content: center; }
  .cuenta-envio__pasos { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .cuenta-envio__pasos::before { top: 8px; bottom: 8px; left: 11px; right: auto; width: 4px; height: auto; background: repeating-linear-gradient(180deg, var(--chip) 0 10px, transparent 10px 16px); }
  .cuenta-envio__pasos li { justify-items: start; text-align: left; padding: 0 0 0 40px; }
  .cuenta-tarjeta { padding: 14px; }
  .cuenta-tarjeta strong { font-size: 17px; }
  .tienda .woocommerce-orders-table__cell-order-date { white-space: nowrap; }
  .cuenta-tarjeta--pedido { grid-template-columns: minmax(0, 1fr); }
  .tienda .woocommerce-Addresses { grid-template-columns: minmax(0, 1fr); }
  .tienda .account-orders-table tr.order { grid-template-columns: minmax(0, 1fr) auto; }
  .tienda .woocommerce-orders-table__cell-order-number { grid-column: 1 / -1; }
  .tienda .woocommerce-orders-table__cell-order-total, .tienda .woocommerce-orders-table__cell-order-actions { grid-column: 1 / -1; text-align: left !important; }
  .tienda .woocommerce-orders-table__cell-order-date::before { content: "Fecha: "; color: var(--texto-2); }
  .cuenta-asoma { width: 72px; height: 72px; top: -44px; }
  .tienda #customer_login { row-gap: 64px; }
  .cuenta-volver { display: block; margin: 12px 0 0; }
  .tienda .woocommerce-address-fields .button.alt, .tienda .edit-account .button.alt { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .cuenta-asoma, .cuenta-sobre__dibujo, .cuenta-estado--espera::before, .cuenta-duerme img { animation: none; } .cuenta-duerme i { animation: none; opacity: 1; } }
