/* ==========================================================================
   Carrito, Finalizar compra, Gracias y Mi cuenta (solo en esas páginas).
   Campos como el formulario de contacto (.field de pages.css), botones de base.css.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Envoltorio
   -------------------------------------------------------------------------- */
.pg-head--compact { padding-bottom: 40px; }
.pg-head--compact h1 { max-width: 16ch; font-size: clamp(2.6rem, 5.4vw, 4.4rem); }
.wc-wrap {
  max-width: 1180px; margin: 0 auto;
  padding: 36px var(--gutter) clamp(72px, 9vw, 120px);
}
.wc-wrap > .woocommerce { display: grid; gap: 18px; }
.wc-wrap h2 { font-size: clamp(1.6rem, 2.6vw, 2.1rem); line-height: 1; }
.wc-wrap .sr-only, .wc-wrap .screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.tm-hidden, .wc-wrap [hidden] { display: none !important; }
.wc-wrap a:not(.btn):not(.button) { color: var(--teal-800); }
.wc-wrap .woocommerce-error a:not(.btn) { color: inherit; text-decoration: none; }
.wc-wrap mark { background: none; color: inherit; font-weight: 650; }

/* Botones genéricos de WooCommerce con el aspecto de .btn */
.wc-wrap .button,
.wc-wrap button.button,
.wc-wrap a.button,
.wc-wrap input.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 0 24px;
  border: 0; border-radius: var(--r-pill);
  background: var(--yellow); color: var(--choco-950);
  font: 650 1rem/1 var(--font-body);
  text-decoration: none; cursor: pointer; white-space: nowrap;
  box-shadow: 0 10px 24px -14px color-mix(in srgb, var(--choco-950) 55%, transparent);
  transition: transform var(--dur-press) var(--ease-out), background-color var(--dur-ui) ease;
}
.wc-wrap .button:active { transform: scale(0.97); }
.wc-wrap .button.alt, .wc-wrap .woocommerce-button--next, .wc-wrap .woocommerce-Button { background: var(--choco-950); color: var(--cream); }
.wc-wrap .button:disabled, .wc-wrap .button.disabled { opacity: 0.5; cursor: not-allowed; }
@media (hover: hover) and (pointer: fine) {
  .wc-wrap .button:hover { background: var(--sun); }
  .wc-wrap .button.alt:hover, .wc-wrap .woocommerce-Button:hover { background: var(--choco); }
}

/* --------------------------------------------------------------------------
   Campos (mismo lenguaje que contacto)
   -------------------------------------------------------------------------- */
.wc-wrap .form-row { display: grid; gap: 8px; margin: 0; min-width: 0; }
.wc-wrap .form-row label:not(.tm-check):not(.woocommerce-form__label-for-checkbox) { font-weight: 650; }
.wc-wrap .form-row .optional { font-weight: 450; color: var(--ink-soft); }
.wc-wrap abbr.required, .wc-wrap .required { color: var(--raspberry); text-decoration: none; border: 0; }
.wc-wrap .woocommerce-input-wrapper { display: block; }
.wc-wrap input.input-text,
.wc-wrap input[type="text"], .wc-wrap input[type="email"], .wc-wrap input[type="tel"],
.wc-wrap input[type="password"], .wc-wrap input[type="number"], .wc-wrap input[type="date"],
.wc-wrap textarea, .wc-wrap select {
  width: 100%; min-height: 54px;
  padding: 14px 18px;
  border: 2px solid color-mix(in srgb, var(--choco) 22%, transparent);
  border-radius: var(--r-small);
  background: #fff5e4; color: var(--choco-950);
  font: inherit; font-size: 1rem;
  transition: border-color var(--dur-ui) ease, background-color var(--dur-ui) ease;
}
.wc-wrap select {
  appearance: none; -webkit-appearance: none;
  padding-right: 46px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256' fill='%233d1f16'%3E%3Cpath d='M213.66 101.66l-80 80a8 8 0 0 1-11.32 0l-80-80a8 8 0 0 1 11.32-11.32L128 164.69l74.34-74.35a8 8 0 0 1 11.32 11.32Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 16px center; background-size: 18px;
}
.wc-wrap input[type="date"] { -webkit-appearance: none; appearance: none; line-height: 1.2; }
.wc-wrap textarea { min-height: 110px; resize: vertical; line-height: 1.5; }
.wc-wrap input:focus, .wc-wrap textarea:focus, .wc-wrap select:focus { outline: none; border-color: var(--teal-800); background-color: #fff; }
.wc-wrap .woocommerce-invalid input.input-text,
.wc-wrap .woocommerce-invalid select,
.wc-wrap .woocommerce-invalid input { border-color: var(--raspberry); }
.wc-wrap .woocommerce-validated input.input-text { border-color: color-mix(in srgb, var(--teal-800) 45%, transparent); }
.wc-wrap .form-row .description, .tm-field__help { font-size: 0.9rem; color: var(--ink-soft); }
.wc-wrap .checkout-inline-error-message { color: #623427; font-size: 0.92rem; font-weight: 550; margin: 0; }
.tm-check, .wc-wrap .woocommerce-form__label-for-checkbox {
  display: flex; align-items: flex-start; gap: 12px; cursor: pointer; font-weight: 500;
}
.tm-check input, .wc-wrap .woocommerce-form__label-for-checkbox input {
  width: 22px; height: 22px; min-height: 0; margin: 1px 0 0; accent-color: var(--choco-950); flex: none;
}

/* --------------------------------------------------------------------------
   Carrito
   -------------------------------------------------------------------------- */
.cartpage {
  display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.75fr);
  gap: clamp(24px, 4vw, 56px); align-items: start;
}
.cart-rows { display: grid; }
.cart-row {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) auto auto;
  grid-template-areas: "img info qty total" "img info remove remove";
  gap: 6px 18px; align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid color-mix(in srgb, var(--choco) 14%, transparent);
}
.cart-row:first-child { padding-top: 0; }
.cart-row__img { grid-area: img; width: 96px; height: 96px; align-self: start; }
.cart-row__img img { width: 86%; }
.cart-row__info { grid-area: info; display: grid; gap: 2px; min-width: 0; }
.cart-row__name { font-family: var(--font-body); font-size: 1.15rem; font-weight: 650; line-height: 1.25; letter-spacing: 0; }
.cart-row__name a { color: inherit !important; text-decoration: none; }
.cart-row__unit { font-size: 0.9rem; color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.cart-row__qty { grid-area: qty; }
.cart-row__total { grid-area: total; text-align: right; min-width: 76px; font-size: 1.1rem; }
.cart-row__remove { grid-area: remove; justify-self: end; }
.cart-row__remove a {
  display: inline-flex; align-items: center; gap: 6px; min-height: 36px;
  font-size: 0.9rem; font-weight: 600; color: var(--ink-soft) !important; text-decoration: none;
}
.cart-row__remove a:hover { color: var(--raspberry) !important; }
.cart-row__solo { font-size: 0.95rem; color: var(--ink-soft); }
.cart-row.processing, .cart-row:has(.blockUI) { opacity: 0.6; }

.stepper--input { margin-top: 0; }
.stepper--input input.qty {
  width: 44px; min-height: 36px; padding: 0; border: 0; background: transparent;
  text-align: center; font-weight: 650; font-variant-numeric: tabular-nums;
  -moz-appearance: textfield; appearance: textfield;
}
.stepper--input input.qty::-webkit-outer-spin-button,
.stepper--input input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.stepper--input input.qty:focus { background: transparent; }

.cartpage__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; padding-top: 18px; }
html.js .cartpage__update { display: none; }
.coupon-box summary { cursor: pointer; font-weight: 600; color: var(--teal-800); min-height: 44px; display: flex; align-items: center; }
.coupon-box .coupon { display: flex; gap: 10px; margin-top: 8px; }
.coupon-box .coupon input { min-height: 48px; max-width: 220px; }

.sumcard {
  position: sticky; top: calc(var(--nav-h) + 28px);
  display: grid; gap: 18px;
  padding: 26px 24px;
  border-radius: var(--r-surface);
  background: var(--cream-200);
}
.sumcard__title { font-size: 1.9rem !important; }
.sumcard__rows { margin: 0; display: grid; gap: 10px; }
.sumcard__row { display: flex; justify-content: space-between; gap: 12px; }
.sumcard__row dt { font-weight: 550; }
.sumcard__row dd { margin: 0; text-align: right; }
.sumcard__row--note { padding-top: 10px; border-top: 1px dashed color-mix(in srgb, var(--choco) 25%, transparent); color: var(--ink-soft); font-size: 0.95rem; }
.sumcard__row--discount dd { color: var(--teal-800); }
.sumcard .wc-proceed-to-checkout { display: grid; gap: 10px; }
.sumcard .checkout-button { width: 100%; }
.sumcard__back { justify-self: center; font-weight: 600; }
.cart-collaterals:empty { display: none; }
.cart-collaterals .cross-sells { margin-top: 48px; }
.cart-collaterals .cross-sells > h2 { margin-bottom: 18px; }
.cartpage-empty .empty { padding: 24px 8px 40px; }

@media (max-width: 900px) {
  .cartpage { grid-template-columns: minmax(0, 1fr); }
  .sumcard { position: static; }
}
@media (max-width: 560px) {
  .cart-row {
    grid-template-columns: 76px minmax(0, 1fr) auto;
    grid-template-areas: "img info info" "img qty total" ". remove remove";
    gap: 8px 14px;
  }
  .cart-row__img { width: 76px; height: 76px; }
  .cart-row__remove { justify-self: start; }
  .coupon-box .coupon input { max-width: none; }
}

/* --------------------------------------------------------------------------
   Finalizar compra
   -------------------------------------------------------------------------- */
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info { margin: 0; }
.wc-wrap form.login, .wc-wrap form.checkout_coupon, .wc-wrap form.register, .wc-wrap form.lost_reset_password {
  display: grid; gap: 14px;
  padding: 22px; border-radius: var(--r-surface); background: #fff5e4;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--choco) 10%, transparent);
}
.wc-wrap form.checkout_coupon { grid-template-columns: 1fr auto; align-items: end; }
.wc-wrap form.checkout_coupon > p:first-child { grid-column: 1 / -1; }
.wc-wrap .clear { display: none; }

.co {
  display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.85fr);
  gap: clamp(20px, 3.5vw, 48px); align-items: start;
}
.co__main, #customer_details { display: grid; gap: 20px; min-width: 0; }
.co-step, .co__side {
  display: grid; gap: 18px; align-content: start;
  padding: clamp(20px, 3vw, 30px);
  border-radius: var(--r-surface);
  background: #fff5e4;
  box-shadow: 0 1px 0 color-mix(in srgb, var(--choco) 8%, transparent), 0 18px 40px -32px color-mix(in srgb, var(--choco-950) 50%, transparent);
  min-width: 0;
}
.co__side { background: var(--cream-200); box-shadow: none; }
.co-step__head { display: flex; align-items: center; gap: 12px; }
.co-step__head h2 { font-size: clamp(1.6rem, 2.4vw, 2rem); }
.co-step__n {
  width: 34px; height: 34px; flex: none; border-radius: 50%;
  display: grid; place-items: center;
  background: var(--choco-950); color: var(--cream);
  font-weight: 700; font-size: 1rem; font-variant-numeric: tabular-nums;
}
.co-step__head--pay { margin-top: 10px; padding-top: 22px; border-top: 1px dashed color-mix(in srgb, var(--choco) 25%, transparent); }
.co-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.co-fields > .form-row { grid-column: 1 / -1; }
.co-fields > .form-row-first { grid-column: 1; }
.co-fields > .form-row-last { grid-column: 2; }
.co-account { display: grid; gap: 14px; padding-top: 6px; }

/* Métodos de entrega */
.tm-ship { display: grid; gap: 10px; }
.tm-ship__options { border: 0; margin: 0; padding: 0; display: grid; gap: 10px; }
.ship-opt {
  position: relative;
  display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 14px; align-items: center;
  padding: 16px 18px;
  border-radius: 20px;
  background: #fff;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--choco) 14%, transparent);
  cursor: pointer;
  transition: box-shadow var(--dur-ui) ease, background-color var(--dur-ui) ease, transform var(--dur-press) var(--ease-out);
}
.ship-opt:active { transform: scale(0.99); }
.ship-opt input { position: absolute; opacity: 0; pointer-events: none; }
.ship-opt:has(input:checked), .ship-opt.is-checked { background: var(--cream-200); box-shadow: inset 0 0 0 2px var(--choco-950); }
.ship-opt:has(input:focus-visible) { outline: 3px solid var(--fucsia); outline-offset: 3px; }
.ship-opt__icon {
  width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
  background: var(--teal); color: var(--choco-950); font-size: 22px;
  transition: background-color var(--dur-ui) ease, color var(--dur-ui) ease;
}
.ship-opt:has(input:checked) .ship-opt__icon, .ship-opt.is-checked .ship-opt__icon { background: var(--fucsia-800); color: var(--cream); }
.ship-opt__text { display: grid; gap: 2px; min-width: 0; }
.ship-opt__text strong { font-weight: 650; }
.ship-opt__text small { font-size: 0.9rem; color: var(--ink-soft); }
.ship-opt__price { font-weight: 650; }
.tm-ship__empty, .tm-ship__hint { font-size: 0.95rem; color: var(--ink-soft); }

.tm-when { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.tm-when__note { grid-column: 1 / -1; display: flex; gap: 8px; align-items: flex-start; }
.tm-when__note .ph { margin-top: 3px; }
.tm-when__error { grid-column: 1 / -1; margin: 0; color: #623427; font-weight: 550; font-size: 0.95rem; }

/* Resumen */
.co__side-title { font-size: clamp(1.6rem, 2.4vw, 2rem); }
#order_review { display: grid; gap: 16px; }
.co-sum { width: 100%; border-collapse: collapse; }
.co-sum td, .co-sum th { padding: 10px 0; text-align: left; vertical-align: middle; font-weight: 500; }
.co-sum .product-total, .co-sum tfoot td { text-align: right; padding-left: 12px; white-space: nowrap; }
.co-sum tbody tr + tr td { border-top: 1px solid color-mix(in srgb, var(--choco) 12%, transparent); }
.co-sum tfoot tr:first-child th, .co-sum tfoot tr:first-child td { border-top: 1px dashed color-mix(in srgb, var(--choco) 25%, transparent); padding-top: 16px; }
.co-sum tfoot th { font-weight: 550; }
.co-sum .order-total th, .co-sum .order-total td { font-size: 1.25rem; font-weight: 700; padding-top: 14px; }
.co-sum__item { display: flex; align-items: center; gap: 12px; }
.co-sum__item > span:last-child { display: grid; gap: 1px; min-width: 0; }
.co-sum__img { position: relative; width: 52px; height: 52px; flex: none; }
.co-sum__img img { width: 86%; }
.co-sum__qty {
  position: absolute; top: -4px; right: -6px;
  min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px;
  display: grid; place-items: center;
  background: var(--choco-950); color: var(--cream); font-size: 0.78rem; font-weight: 700;
}
.co-sum__name { font-weight: 650; line-height: 1.25; }
.co-sum .cart-item__meta { font-size: 0.85rem; }

/* Pago: métodos y formulario de la pasarela (PayPhone u otra) */
.woocommerce-checkout-payment { display: grid; gap: 16px; }
.wc_payment_methods { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.wc_payment_method {
  padding: 14px 16px; border-radius: 18px; background: #fff;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--choco) 12%, transparent);
}
.wc_payment_method:has(> input:checked) { box-shadow: inset 0 0 0 2px var(--choco-950); }
.wc_payment_method { display: grid; grid-template-columns: 22px minmax(0, 1fr); column-gap: 12px; align-items: center; }
.wc_payment_method > input { width: 20px; height: 20px; margin: 0; accent-color: var(--choco-950); }
.wc_payment_method > .payment_box { grid-column: 1 / -1; }
.wc_payment_method > label { font-weight: 650; cursor: pointer; display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.wc_payment_method > label img { max-height: 26px; width: auto; display: inline-block; }
.payment_box {
  margin-top: 12px; padding: 14px 16px;
  border-radius: var(--r-small);
  background: var(--cream);
  font-size: 0.95rem; color: var(--ink-soft);
  display: grid; gap: 12px;
}
.payment_box p { margin: 0; }
.payment_box fieldset { border: 0; margin: 0; padding: 0; display: grid; gap: 12px; }
.payment_box .form-row { display: grid; gap: 6px; }
.payment_box iframe { max-width: 100%; border: 0; }
.woocommerce-terms-and-conditions-wrapper { font-size: 0.9rem; color: var(--ink-soft); display: grid; gap: 10px; }
.woocommerce-terms-and-conditions { max-height: 200px; overflow: auto; padding: 12px; background: #fff; border-radius: var(--r-small); }
.place-order { display: grid; gap: 14px; margin: 0; }
.wc-wrap #place_order, .co-place { width: 100%; min-height: 56px; font-size: 1.1rem; }
.woocommerce-NoticeGroup-checkout { grid-column: 1 / -1; }
.blockUI.blockOverlay { border-radius: inherit; }

@media (max-width: 900px) {
  .co { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .co-fields, .tm-when { grid-template-columns: minmax(0, 1fr); }
  .co-fields > .form-row-first, .co-fields > .form-row-last { grid-column: 1; }
  .ship-opt { grid-template-columns: 40px minmax(0, 1fr) auto; padding: 14px; gap: 12px; }
  .ship-opt__icon { width: 40px; height: 40px; font-size: 20px; }
  .wc-wrap form.checkout_coupon { grid-template-columns: minmax(0, 1fr); }
}

/* --------------------------------------------------------------------------
   Gracias y detalle de pedido (también en Mi cuenta)
   -------------------------------------------------------------------------- */
.thanks { display: grid; gap: 22px; }
.thanks__hero {
  display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; align-items: start;
  padding: 24px; border-radius: var(--r-surface);
  background: var(--pistachio); color: #3d1f16;
}
.thanks__hero > i { font-size: 52px; }
.thanks__hero h2 { margin-bottom: 6px; }
.thanks__hero--failed { background: color-mix(in srgb, var(--pink) 80%, #fff); color: #3d1f16; }
.thanks__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px !important; }
.thanks__facts {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px;
}
.thanks__facts li { display: grid; gap: 2px; padding: 16px 18px; border-radius: 18px; background: #fff5e4; }
.thanks__facts li > span { font-size: 0.85rem; color: var(--ink-soft); font-weight: 600; }
.thanks__facts strong { font-weight: 650; overflow-wrap: anywhere; }
.thanks__help { display: flex; flex-wrap: wrap; gap: 12px; }

.tm-delivery { padding: 22px 24px; border-radius: var(--r-surface); background: var(--cream-200); display: grid; gap: 12px; margin-bottom: 18px; }
.tm-delivery__title { font-size: 1.6rem !important; }
.tm-delivery__rows { margin: 0; display: grid; gap: 8px; }
.tm-delivery__rows > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; }
.tm-delivery__rows dt { font-weight: 650; }
.tm-delivery__rows dd { margin: 0; }

.woocommerce-order-details, .woocommerce-customer-details, .woocommerce-bacs-bank-details, .wc-bacs-bank-details-heading { margin-top: 8px; }
.woocommerce-order-details__title, .woocommerce-column__title, .wc-bacs-bank-details-heading { font-size: 1.6rem !important; margin-bottom: 12px; }
.wc-wrap table.shop_table:not(.co-sum) {
  width: 100%; border-collapse: collapse; background: #fff5e4; border-radius: var(--r-surface); overflow: hidden;
}
.wc-wrap table.shop_table:not(.co-sum) th, .wc-wrap table.shop_table:not(.co-sum) td {
  padding: 14px 18px; text-align: left; vertical-align: top;
  border-bottom: 1px solid color-mix(in srgb, var(--choco) 10%, transparent);
}
.wc-wrap table.shop_table:not(.co-sum) thead th { background: var(--cream-200); font-weight: 650; }
.wc-wrap table.shop_table:not(.co-sum) tfoot th { font-weight: 550; }
.wc-wrap table.shop_table:not(.co-sum) tr:last-child > * { border-bottom: 0; }
.wc-wrap .wc-item-meta { list-style: none; margin: 4px 0 0; padding: 0; font-size: 0.9rem; color: var(--ink-soft); }
.wc-wrap .wc-item-meta p { display: inline; }
.wc-wrap .woocommerce-customer-details address {
  font-style: normal; padding: 18px 20px; border-radius: var(--r-surface); background: #fff5e4; line-height: 1.6;
}
.wc-wrap .woocommerce-customer-details--phone, .wc-wrap .woocommerce-customer-details--email { margin: 4px 0 0; }
.wc-wrap ul.wc-bacs-bank-details { list-style: none; padding: 16px 20px; margin: 0 0 12px; background: #fff5e4; border-radius: var(--r-small); display: grid; gap: 4px; }
.wc-wrap .order-again { margin-top: 12px; }

@media (max-width: 560px) {
  .thanks__hero { grid-template-columns: 1fr; padding: 20px; }
  .thanks__hero > i { font-size: 44px; }
  .tm-delivery__rows > div { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .wc-wrap table.shop_table:not(.co-sum) th, .wc-wrap table.shop_table:not(.co-sum) td { padding: 12px 14px; }
}

/* --------------------------------------------------------------------------
   Mi cuenta
   -------------------------------------------------------------------------- */
.woocommerce-account .wc-wrap > .woocommerce {
  grid-template-columns: 240px minmax(0, 1fr); gap: clamp(20px, 4vw, 48px); align-items: start;
}
.woocommerce-account .wc-wrap > .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.woocommerce-MyAccount-navigation a {
  display: flex; align-items: center; min-height: 48px; padding: 0 18px;
  border-radius: var(--r-pill); font-weight: 600; text-decoration: none;
  color: var(--ink) !important;
  transition: background-color var(--dur-ui) ease;
}
.woocommerce-MyAccount-navigation .is-active a { background: var(--choco-950); color: var(--cream) !important; }
@media (hover: hover) and (pointer: fine) {
  .woocommerce-MyAccount-navigation li:not(.is-active) a:hover { background: color-mix(in srgb, var(--choco) 8%, transparent); }
}
.woocommerce-MyAccount-content { display: grid; gap: 18px; min-width: 0; }
.woocommerce-MyAccount-content > p:first-child { font-size: 1.1rem; }
.woocommerce-MyAccount-content form { display: grid; gap: 16px; }
.woocommerce-MyAccount-content fieldset { border: 0; padding: 0; margin: 12px 0 0; display: grid; gap: 14px; }
.woocommerce-MyAccount-content legend { font-family: var(--font-display); font-size: 1.5rem; margin-bottom: 8px; }
.woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.woocommerce-address-fields__field-wrapper > .form-row, .woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
.woocommerce-address-fields__field-wrapper > .form-row-first, .woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
.woocommerce-address-fields__field-wrapper > .form-row-last, .woocommerce-EditAccountForm > .form-row-last { grid-column: 2; }
.woocommerce-Addresses { display: grid; gap: 16px; }
.woocommerce-Address { padding: 20px; border-radius: var(--r-surface); background: #fff5e4; display: grid; gap: 10px; }
.woocommerce-Address-title { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.woocommerce-Address-title h2 { font-size: 1.5rem !important; }
.woocommerce-Address address { font-style: normal; line-height: 1.6; }
.woocommerce-orders-table .button { min-height: 40px; padding: 0 16px; font-size: 0.95rem; }
.woocommerce-pagination { display: flex; gap: 10px; }

/* Entrar y registrarse */
.woocommerce-account:not(.logged-in) .wc-wrap > .woocommerce { grid-template-columns: minmax(0, 1fr); max-width: 980px; margin: 0 auto; }
.wc-wrap .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.wc-wrap .u-columns > div { display: grid; gap: 14px; }
.wc-wrap .woocommerce-form-login__rememberme { margin-bottom: 4px; }
.wc-wrap .lost_password { margin: 0; }
.wc-wrap .woocommerce-privacy-policy-text { font-size: 0.9rem; color: var(--ink-soft); }
.wc-wrap .password-input { position: relative; display: block; }
.wc-wrap .show-password-input {
  position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
  width: 36px; height: 36px; border: 0; border-radius: 50%; background: transparent; cursor: pointer;
}
.wc-wrap .show-password-input::before {
  content: ""; display: block; width: 20px; height: 20px; margin: auto; background: currentColor; opacity: 0.7;
  -webkit-mask: var(--eye) center / contain no-repeat; mask: var(--eye) center / contain no-repeat;
}
.wc-wrap .show-password-input { --eye: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M247.31 124.76c-.35-.79-8.82-19.58-27.65-38.41C194.57 61.26 162.88 48 128 48S61.43 61.26 36.34 86.35C17.51 105.18 9 124 8.69 124.76a8 8 0 0 0 0 6.5c.35.79 8.82 19.57 27.65 38.4C61.43 194.74 93.12 208 128 208s66.57-13.26 91.66-38.34c18.83-18.83 27.3-37.61 27.65-38.4a8 8 0 0 0 0-6.5ZM128 192c-30.78 0-57.67-11.19-79.93-33.25A133.47 133.47 0 0 1 25 128a133.33 133.33 0 0 1 23.07-30.75C70.33 75.19 97.22 64 128 64s57.67 11.19 79.93 33.25A133.46 133.46 0 0 1 231.05 128c-7.21 13.46-38.62 64-103.05 64Zm0-112a48 48 0 1 0 48 48 48.05 48.05 0 0 0-48-48Zm0 80a32 32 0 1 1 32-32 32 32 0 0 1-32 32Z'/%3E%3C/svg%3E"); color: var(--choco-900); }
.wc-wrap .woocommerce-password-strength { font-size: 0.9rem; padding: 6px 10px; border-radius: 8px; background: var(--cream-200); }

@media (max-width: 900px) {
  .woocommerce-account .wc-wrap > .woocommerce { grid-template-columns: minmax(0, 1fr); }
  .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; gap: 6px; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)); padding: 0 var(--gutter) 4px; }
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
  .woocommerce-MyAccount-navigation a { white-space: nowrap; background: color-mix(in srgb, var(--choco) 6%, transparent); }
  .wc-wrap .u-columns { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .woocommerce-address-fields__field-wrapper, .woocommerce-EditAccountForm { grid-template-columns: minmax(0, 1fr); }
  .woocommerce-address-fields__field-wrapper > .form-row-first, .woocommerce-address-fields__field-wrapper > .form-row-last,
  .woocommerce-EditAccountForm > .form-row-first, .woocommerce-EditAccountForm > .form-row-last { grid-column: 1; }
  .wc-wrap table.woocommerce-orders-table thead { display: none; }
  .wc-wrap table.woocommerce-orders-table tr { display: grid; padding: 10px 0; border-bottom: 1px solid color-mix(in srgb, var(--choco) 10%, transparent); }
  .wc-wrap table.woocommerce-orders-table td, .wc-wrap table.woocommerce-orders-table th { border: 0 !important; padding: 4px 16px !important; display: flex; justify-content: space-between; gap: 12px; }
  .wc-wrap table.woocommerce-orders-table td::before { content: attr(data-title); font-weight: 650; }
}
