/* ==========================================================================
   WooCommerce: cesta · finalizar compra · pedido recibido · mi cuenta
   Estas páginas las genera WooCommerce (con sus plugins: pasarela de pago, Mondial Relay, facturas…).
   Aquí solo se les da el diseño del prototipo: mismas clases (.cl, .sumbox, .sumrow…) y las propias de WooCommerce.
   ========================================================================== */
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}
.wcpage{min-width:0}
.wcpage .woocommerce{min-width:0}
.wcpage a{text-underline-offset:3px}

/* ---------- Avisos de WooCommerce ---------- */
.woocommerce-notices-wrapper{padding:0 var(--gutter)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 18px;padding:15px 20px;border-radius:14px;background:var(--tile);border-left:3px solid var(--ink);font-size:14.5px;line-height:1.55;display:flex;gap:14px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.woocommerce-error{border-left-color:var(--terra);background:rgba(194,96,63,.09);display:grid;gap:6px}
.woocommerce-message .button,.woocommerce-info .button{order:2}
.woocommerce-info a,.woocommerce-message a:not(.button),.woocommerce-error a{text-decoration:underline}
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-form-login-toggle,.woocommerce-form-coupon-toggle,form.checkout_coupon,form.woocommerce-form-login{margin-inline:0}
.wcpage--checkout>.woocommerce>.woocommerce-form-login-toggle,.wcpage--checkout>.woocommerce>.woocommerce-form-coupon-toggle,.wcpage--checkout>.woocommerce>form.checkout_coupon,.wcpage--checkout>.woocommerce>form.woocommerce-form-login{margin-inline:var(--gutter)}
.wcpage--checkout form.checkout_coupon,.wcpage--checkout form.woocommerce-form-login{display:grid;gap:10px;padding:20px;border:1px solid var(--line);border-radius:16px;margin-bottom:22px;max-width:640px}
form.checkout_coupon p{margin:0}
.wcpage--checkout form.woocommerce-form-login p{margin:0}

/* ---------- Botones ---------- */
.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,#place_order{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 26px;border-radius:999px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s var(--ease);text-decoration:none}
.woocommerce .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--ink);color:var(--paper)}
.woocommerce .button.alt,.woocommerce a.button.alt,.woocommerce button.button.alt,#place_order,.woocommerce .checkout-button{background:var(--ink);color:var(--paper);min-height:54px;width:100%}
.woocommerce .button.alt:hover,#place_order:hover,.woocommerce .checkout-button:hover{background:#000;color:var(--paper)}
.woocommerce .button:disabled,.woocommerce .button[disabled],.woocommerce .button.disabled{opacity:.4;cursor:not-allowed;pointer-events:none}
.woocommerce .button.loading,#place_order.processing{opacity:.6;pointer-events:none}

/* ---------- Campos (checkout, cuenta, cupón…) ---------- */
.woocommerce form .form-row{display:grid;gap:6px;margin:0 0 22px;padding:0}
.woocommerce form .form-row label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-weight:500;line-height:1.4}
.woocommerce form .form-row label .required{color:var(--terra);text-decoration:none;border:0}
.woocommerce form .form-row label .optional{text-transform:none;letter-spacing:0;font-weight:300}
.woocommerce form .form-row .woocommerce-input-wrapper{display:block;min-width:0}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .input-text,.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password],.woocommerce input[type=number].input-text{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:10px 0;font:inherit;font-size:17px;color:var(--ink);border-radius:0;box-shadow:none;-webkit-appearance:none;appearance:none}
.woocommerce form .form-row textarea{min-height:110px;resize:vertical}
.woocommerce form .form-row input:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus{outline:0;border-bottom-width:2px;padding-bottom:9px}
.woocommerce form .form-row select{padding-right:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none' stroke='%23292E33' stroke-width='1.5'%3E%3Cpath d='m1 1 4 4 4-4'/%3E%3C/svg%3E") no-repeat right 4px center}
.woocommerce form .form-row ::placeholder{color:rgba(91,98,112,.55);font-weight:300}
.woocommerce form .form-row.woocommerce-invalid input.input-text,.woocommerce form .form-row.woocommerce-invalid select,.woocommerce form .form-row.woocommerce-invalid textarea{border-bottom-color:var(--terra)}
.woocommerce form .form-row.woocommerce-invalid label{color:var(--terra)}
.woocommerce form .form-row .select2-container{width:100%!important}
.select2-container--default .select2-selection--single{height:auto;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent}
.select2-container--default .select2-selection--single .select2-selection__rendered{padding:10px 24px 10px 0;font-size:17px;line-height:1.4;color:var(--ink)}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:100%;right:2px}
.select2-container--default.select2-container--focus .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single{border-bottom-width:2px}
.select2-dropdown{border:1px solid var(--ink);border-radius:12px;overflow:hidden;background:var(--paper);box-shadow:0 20px 50px -20px rgba(41,46,51,.35)}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--ink);color:var(--paper)}
.select2-search--dropdown .select2-search__field{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit}
.woocommerce form .form-row.woocommerce-validated:not(.woocommerce-invalid){}
.woocommerce-checkout #payment .form-row,.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row{margin:0 0 14px}
.woocommerce form .form-row.validate-required.woocommerce-invalid::after{content:none}
/* casillas y botones de opción */
.woocommerce form .form-row .woocommerce-form__label-for-checkbox,.woocommerce-form__label-for-checkbox,.woocommerce form .woocommerce-form__label-for-checkbox{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;font-size:14px;letter-spacing:0;text-transform:none;line-height:1.5;color:var(--ink-2);font-weight:300;cursor:pointer}
.woocommerce input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:1px 0 0;border:1px solid var(--ink);border-radius:5px;display:grid;place-items:center;cursor:pointer;background:transparent;transition:background .2s}
.woocommerce input[type=checkbox]:checked{background:var(--ink)}
.woocommerce input[type=checkbox]:checked::after{content:"";width:9px;height:5px;border-left:1.6px solid var(--paper);border-bottom:1.6px solid var(--paper);transform:rotate(-45deg) translate(1px,-1px)}
.woocommerce input[type=radio]{appearance:none;-webkit-appearance:none;width:20px;height:20px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;margin:0;cursor:pointer;flex:none}
.woocommerce input[type=radio]:checked::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ink)}
.woocommerce input:focus-visible,.woocommerce button:focus-visible,.woocommerce a:focus-visible{outline:2px solid var(--sky);outline-offset:3px}

/* ---------- Cesta ---------- */
.wcpage--cart .cartpage{padding-top:clamp(10px,2vw,28px)}
.woocommerce-cart-form .cl__info .variation{font-size:13px;color:var(--ink-2);font-weight:300}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:99px}
.qty .quantity{display:contents}
.woocommerce .qty input.qty,.qty input[type=number]{border:0!important;box-shadow:none!important;width:36px;border:0;background:transparent;text-align:center;font:inherit;font-size:14px;padding:0;margin:0;color:var(--ink);-moz-appearance:textfield;appearance:textfield;border-radius:0;min-height:0}
.qty input::-webkit-outer-spin-button,.qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty button{width:34px;height:34px;font-size:18px;line-height:1;color:var(--ink)}

.cartpage__actions{display:grid;gap:16px;padding-top:26px}
.cartpage__actions .coupon{max-width:460px}
.cartpage__actions .coupon .button{align-self:end;min-height:42px}
.cl__price .amount{font-weight:600}
.cl__price del{opacity:.5;font-weight:300;margin-right:.4em}
.cl__price ins{text-decoration:none}
.sumbox .cart_totals h2{font-size:22px;font-weight:600;letter-spacing:-.035em;margin:0 0 6px}
.sumbox table.shop_table{width:100%;border-collapse:collapse}
.sumbox table.shop_table tr{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:7px 0;font-size:14.5px}
.sumbox table.shop_table th{font-weight:400;text-align:left;font-size:14.5px;letter-spacing:0;text-transform:none;color:var(--ink);padding:0}
.sumbox table.shop_table td{text-align:right;padding:0;font-weight:500}
.sumbox table.shop_table td::before{content:none!important}
.sumbox table.shop_table tr.order-total{border-top:1px solid var(--ink);padding-top:16px;margin-top:8px;font-size:20px;font-weight:600;letter-spacing:-.03em}
.sumbox table.shop_table tr.order-total th,.sumbox table.shop_table tr.order-total td{font-size:20px;font-weight:600}
.sumbox table.shop_table small.includes_tax,.sumbox .includes_tax{display:block;font-size:11.5px;font-weight:300;letter-spacing:0;color:var(--ink-2);margin-top:2px;text-align:right}
.sumbox .woocommerce-shipping-totals{flex-direction:column;align-items:stretch;gap:8px}
.sumbox .woocommerce-shipping-totals td{text-align:left}
.sumbox ul#shipping_method,.sumbox ul.woocommerce-shipping-methods{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sumbox ul#shipping_method li{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.55);font-size:14px;font-weight:400}
.sumbox ul#shipping_method li:has(input:checked){border-color:var(--ink)}
.sumbox ul#shipping_method li label{flex:1;cursor:pointer;display:flex;justify-content:space-between;gap:10px}
.sumbox .woocommerce-shipping-destination,.sumbox .shipping-calculator-button{font-size:12.5px;color:var(--ink-2);font-weight:300;text-align:left}
.sumbox .wc-proceed-to-checkout{padding-top:8px}
.sumbox .cart_totals .wc-proceed-to-checkout a.checkout-button{margin:0}
.sumbox .cart-discount td a,.sumbox .woocommerce-remove-coupon{font-size:12px;text-decoration:underline;color:var(--ink-2)}
.cartpage__empty{padding-inline:var(--gutter)}
.wcpage .cross-sells{margin-top:20px}
.wcpage .cross-sells>h2{font-size:18px;font-weight:600;margin-bottom:12px}

/* ---------- Finalizar compra ---------- */
form.woocommerce-checkout.checkout{padding-top:clamp(10px,2vw,28px)}
form.woocommerce-checkout>*{grid-column:1/-1}
form.woocommerce-checkout>#customer_details{grid-column:1;grid-row:1}
form.woocommerce-checkout>#ckSide{grid-column:2;grid-row:1}
@media (max-width:1000px){form.woocommerce-checkout>#customer_details,form.woocommerce-checkout>#ckSide{grid-column:1;grid-row:auto}}
#customer_details{display:grid;gap:clamp(34px,4vw,56px);min-width:0}
#customer_details .col-1,#customer_details .col-2{display:grid;gap:clamp(34px,4vw,56px);min-width:0;float:none;width:auto}
#customer_details h3,.woocommerce-checkout h3,.woocommerce-additional-fields h3{font-size:clamp(20px,1.8vw,27px);font-weight:600;letter-spacing:-.035em;margin:0 0 18px;line-height:1.15}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}
.woocommerce-billing-fields__field-wrapper .form-row-wide,.woocommerce-shipping-fields__field-wrapper .form-row-wide,.woocommerce-additional-fields__field-wrapper .form-row-wide,#order_comments_field{grid-column:1/-1}
.woocommerce-billing-fields__field-wrapper .form-row-first,.woocommerce-billing-fields__field-wrapper .form-row-last{grid-column:auto}
#ship-to-different-address{font-size:clamp(17px,1.5vw,20px);font-weight:600;letter-spacing:-.03em;margin:0 0 18px}
#ship-to-different-address label{text-transform:none;letter-spacing:-.02em;font-size:inherit;color:var(--ink);font-weight:500;display:flex;gap:12px;align-items:center;cursor:pointer}
#ship-to-different-address input{flex:none}
.woocommerce-account-fields .create-account{margin-top:6px}
.ck-sum .ck-sum__lines{max-height:min(46vh,420px);overflow:auto;margin:0 -4px;padding:0 4px}
.ck-sum #order_review_heading{font-size:22px;font-weight:600;letter-spacing:-.035em;margin:0}
.ck-sum .woocommerce-checkout-review-order-table{display:grid;gap:8px}
.ck-sum table.ck-totals{width:100%;border-collapse:collapse}
.ck-sum table.ck-totals tr{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:7px 0;font-size:14.5px}
.ck-sum table.ck-totals th{font-weight:400;text-align:left;font-size:14.5px;letter-spacing:0;text-transform:none;color:var(--ink);padding:0;white-space:nowrap}
.ck-sum table.ck-totals td{text-align:right;padding:0;font-weight:500}
.ck-sum table.ck-totals tr.order-total{border-top:1px solid var(--ink);padding-top:16px;margin-top:8px}
.ck-sum table.ck-totals tr.order-total th,.ck-sum table.ck-totals tr.order-total td{font-size:20px;font-weight:600;letter-spacing:-.03em}
.ck-sum table.ck-totals tr.woocommerce-shipping-totals{flex-direction:column;align-items:stretch;gap:10px}
.ck-sum table.ck-totals tr.woocommerce-shipping-totals td{text-align:left}
.ck-sum ul#shipping_method{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ck-sum ul#shipping_method li{display:flex;gap:12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.55);font-size:14px}
.ck-sum ul#shipping_method li:has(input:checked){border-color:var(--ink)}
.ck-sum ul#shipping_method li label{flex:1;cursor:pointer;display:flex;justify-content:space-between;gap:10px}
.ck-sum .includes_tax{display:block;font-size:11.5px;font-weight:300;color:var(--ink-2);text-align:right}
/* pago */
#payment{background:transparent;border-radius:0}
#payment ul.payment_methods{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px;border:0}
#payment li.wc_payment_method{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.4);transition:border-color .25s,background .25s}
#payment li.wc_payment_method:has(>input:checked){border-color:var(--ink);background:rgba(255,255,255,.7)}
#payment li.wc_payment_method>label{flex:1;min-width:0;font-size:15px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
#payment li.wc_payment_method>label img{max-height:22px;width:auto}
#payment div.payment_box{flex:0 0 100%;background:transparent;padding:6px 0 0;margin:0;font-size:13.5px;color:var(--ink-2);font-weight:300;line-height:1.55}
#payment div.payment_box::before{display:none}
#payment div.payment_box p{margin:0 0 8px}
#payment .woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text{font-size:12.5px;line-height:1.55;color:var(--ink-2);font-weight:300;margin-bottom:14px}
#payment .woocommerce-privacy-policy-text a{text-decoration:underline}
.woocommerce-terms-and-conditions-wrapper{display:grid;gap:10px}
.woocommerce-checkout #payment .place-order{padding:0;margin:0}
#payment #place_order{margin-top:6px}
.woocommerce-checkout .blockUI.blockOverlay{background:rgba(241,240,236,.6)!important}
/* Mondial Relay (punto de recogida) y otros plugins de envío */
.ck-sum #mondialrelay_parcel_shop,.ck-sum .mrwp-wrapper,.ck-sum .woocommerce-shipping-methods+*{font-size:13.5px}
/* Login / cupón del pago */
.woocommerce-form-login .button,form.checkout_coupon .button{min-height:42px}
.lost_password{margin:0 0 6px;font-size:13px}
.lost_password a{text-decoration:underline;color:var(--ink-2)}

/* ---------- Pedido recibido ---------- */
.wcpage--checkout .woocommerce-order.thanks{padding:clamp(34px,5vw,84px) var(--gutter) clamp(70px,9vw,140px)}
.woocommerce-order .woocommerce-thankyou-order-received{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.thanks__strip{list-style:none;margin:0;padding:0}
.thanks__strip li{padding:18px 20px;border-left:1px solid var(--line);display:grid;gap:4px;align-content:start;margin:0;float:none;border-right:0}
.thanks__strip li:first-child{border-left:0}
.thanks__strip li small{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.thanks__strip li b{font-size:clamp(15px,1.3vw,18px);font-weight:600;letter-spacing:-.02em;overflow-wrap:anywhere}
.thanks__strip{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.thanks__order .woocommerce-order-details h2,.thanks__order .woocommerce-customer-details h2,.thanks__order h2{font-size:clamp(21px,1.9vw,28px);font-weight:600;letter-spacing:-.035em;margin:0 0 16px}
.thanks__order .woocommerce-order-details{margin-bottom:34px}
.thanks__order table.shop_table{width:100%;border-collapse:collapse}
.thanks__order table.shop_table th{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--ink-2);text-align:left;padding:0 12px 12px 0;border-bottom:1px solid var(--ink)}
.thanks__order table.shop_table td,.thanks__order table.shop_table tfoot th{padding:14px 12px 14px 0;border-bottom:1px solid var(--line);vertical-align:top;font-size:14.5px;letter-spacing:0;text-transform:none;color:var(--ink);font-weight:400}
.thanks__order table.shop_table tfoot th{font-weight:500}
.thanks__order table.shop_table td:last-child,.thanks__order table.shop_table th:last-child{text-align:right;padding-right:0}
.thanks__order table.shop_table .product-name a{font-weight:500}
.thanks__order table.shop_table .wc-item-meta{list-style:none;margin:4px 0 0;padding:0;font-size:13px;color:var(--ink-2);font-weight:300}
.thanks__order .woocommerce-customer-details address{font-style:normal;display:grid;gap:3px;font-size:15px;line-height:1.6;font-weight:300;border:0;padding:0}
.thanks__order .woocommerce-columns--addresses{display:grid;gap:26px}
.thanks__order .woocommerce-columns--addresses .col-1,.thanks__order .woocommerce-columns--addresses .col-2{float:none;width:auto}
.thanks__order .woocommerce-customer-details--phone,.thanks__order .woocommerce-customer-details--email{margin:4px 0 0;font-size:14px;color:var(--ink-2)}
.woocommerce-bacs-bank-details h2,.wc-bacs-bank-details-heading{font-size:clamp(21px,1.9vw,28px);font-weight:600;margin:0 0 12px}
.wc-bacs-bank-details{list-style:none;padding:0;display:grid;gap:4px;margin-bottom:26px}

/* ---------- Mi cuenta ---------- */
.wcpage--account>.woocommerce{padding:clamp(10px,2vw,28px) var(--gutter) clamp(70px,9vw,140px)}
.wcpage--account>.woocommerce:has(>.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:clamp(28px,5vw,100px);align-items:start}
.woocommerce-MyAccount-navigation{position:sticky;top:calc(var(--header-h) + 26px)}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid}
.woocommerce-MyAccount-navigation li a{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:14.5px;font-weight:500;transition:padding .3s var(--ease),color .2s;text-decoration:none}
.woocommerce-MyAccount-navigation li a:hover{padding-left:6px}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--terra)}
.woocommerce-MyAccount-navigation li a::after{content:"";width:6px;height:6px;border-right:1.4px solid currentColor;border-top:1.4px solid currentColor;transform:rotate(45deg);opacity:.5}
.woocommerce-MyAccount-content{min-width:0;animation:acct .6s var(--ease)}
.woocommerce-MyAccount-content>h2,.woocommerce-MyAccount-content h3,.woocommerce-Address-title h2,.woocommerce-Address-title h3{font-size:clamp(17px,1.5vw,22px);font-weight:600;letter-spacing:-.03em;margin:0 0 14px}
.woocommerce-MyAccount-content>p{font-size:16px;line-height:1.7;font-weight:300;color:var(--ink-2);margin:0 0 14px;max-width:62ch}
.woocommerce-MyAccount-content>p strong{font-weight:500;color:var(--ink)}
.woocommerce-MyAccount-content a:not(.button){text-decoration:underline}
.woocommerce-orders-table,.woocommerce-table--order-downloads{width:100%;border-collapse:collapse;font-size:14.5px}
.woocommerce-orders-table th{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--ink-2);text-align:left;padding:0 12px 12px 0;border-bottom:1px solid var(--ink)}
.woocommerce-orders-table td{padding:18px 12px 18px 0;border-bottom:1px solid var(--line);vertical-align:middle}
.woocommerce-orders-table td:last-child,.woocommerce-orders-table th:last-child{text-align:right;padding-right:0}
.woocommerce-orders-table .button{min-height:38px;padding:0 18px;margin-left:6px}
.woocommerce-MyAccount-content .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,50px);margin-top:10px}
.woocommerce-MyAccount-content .woocommerce-Address{background:var(--tile);border-radius:18px;padding:22px 22px 24px;display:grid;gap:12px;align-content:start;float:none;width:auto}
.woocommerce-Address address{font-style:normal;font-size:15px;line-height:1.7;font-weight:300}
.woocommerce-Address-title{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.woocommerce-Address-title a{font-size:12.5px;text-decoration:underline}
.woocommerce-EditAccountForm,.woocommerce-address-fields{max-width:640px}
.woocommerce-EditAccountForm fieldset{border:0;padding:0;margin:8px 0 26px}
.woocommerce-EditAccountForm legend{font-size:clamp(17px,1.5vw,22px);font-weight:600;letter-spacing:-.03em;padding:0;margin-bottom:16px}
.woocommerce-EditAccountForm .form-row-first,.woocommerce-EditAccountForm .form-row-last{width:100%;float:none}
.woocommerce-MyAccount-content .woocommerce-order-details{margin-top:24px}
mark.order-number,mark.order-date,mark.order-status{background:var(--tile);padding:2px 9px;border-radius:99px;font-weight:500;color:var(--ink)}
/* acceso y registro (sesión sin iniciar) */
#customer_login{display:grid;grid-template-columns:1fr 1fr;gap:0}
#customer_login .u-column1,#customer_login .u-column2{float:none;width:auto;padding:clamp(6px,2vw,30px) clamp(20px,5vw,90px) clamp(20px,3vw,40px) 0}
#customer_login .u-column2{border-left:1px solid var(--line);padding-left:clamp(20px,5vw,90px);padding-right:0}
#customer_login h2{font-size:clamp(23px,2.2vw,34px);font-weight:600;letter-spacing:-.045em;line-height:1.1;margin:0 0 22px}
.woocommerce-form-login,.woocommerce-form-register{display:grid;gap:4px;border:0;padding:0;margin:0}
.woocommerce-form-login__rememberme{margin:4px 0 18px}
.woocommerce-form-login__submit,.woocommerce-form-register__submit{width:100%;background:var(--ink)!important;color:var(--paper)!important;min-height:54px}
.woocommerce-form-login__submit:hover,.woocommerce-form-register__submit:hover{background:#000!important}
.woocommerce-ResetPassword,.woocommerce-form-row--first,.woocommerce-form-row--last{max-width:560px}
.woocommerce-form-row--first,.woocommerce-form-row--last{float:none;width:100%}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
  .wcpage--account>.woocommerce:has(>.woocommerce-MyAccount-navigation){grid-template-columns:1fr;gap:22px}
  .woocommerce-MyAccount-navigation{position:sticky;top:calc(var(--header-h) + var(--bar-h) - 34px);z-index:20;background:var(--paper);margin:0 calc(-1 * var(--gutter));padding:12px var(--gutter) 10px;border-bottom:1px solid var(--line)}
  html.is-scrolled .woocommerce-MyAccount-navigation{top:var(--header-h)}
  .woocommerce-MyAccount-navigation ul{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:0 var(--gutter)}
  .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woocommerce-MyAccount-navigation li a{flex:none;border:1px solid var(--line);border-radius:99px;padding:0 16px;min-height:42px;font-size:13px;white-space:nowrap;display:inline-flex;align-items:center}
  .woocommerce-MyAccount-navigation li a::after{display:none}
  .woocommerce-MyAccount-navigation li a:hover{padding-left:16px}
  .woocommerce-MyAccount-navigation li.is-active a{background:var(--ink);color:var(--paper);border-color:var(--ink)}
  .woocommerce-MyAccount-content .woocommerce-Addresses{grid-template-columns:1fr}
}
@media (max-width:700px){
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{grid-template-columns:1fr}
  #customer_login{grid-template-columns:1fr}
  #customer_login .u-column1,#customer_login .u-column2{padding:6px 0 26px}
  #customer_login .u-column2{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}
  .woocommerce-orders-table thead{display:none}
  .woocommerce-orders-table,.woocommerce-orders-table tbody,.woocommerce-orders-table tr,.woocommerce-orders-table td{display:block;width:100%}
  .woocommerce-orders-table tr{padding:14px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:6px 14px}
  .woocommerce-orders-table td{border:0;padding:0;text-align:left!important}
  .woocommerce-orders-table td::before{content:attr(data-title);display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:2px}
  .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions{grid-column:1/-1;display:flex;gap:8px;margin-top:8px}
  .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions::before{display:none}
  .woocommerce-orders-table .button{margin:0}
  .thanks__strip{grid-template-columns:1fr 1fr}
  .thanks__strip li{border-left:0;border-top:1px solid var(--line)}
  .thanks__strip li:nth-child(-n+2){border-top:0}
  .thanks__strip li:nth-child(even){border-left:1px solid var(--line)}
  .woocommerce form.checkout_coupon,.woocommerce form.woocommerce-form-login{padding:16px}
  .cartpage__actions .coupon{grid-template-columns:1fr}
  .woocommerce .button.alt,#place_order{min-height:54px}
}
@media (prefers-reduced-motion:reduce){.woocommerce-MyAccount-content{animation:none}}

/* ---------- Pago: etiquetas y logotipos de los métodos de pago ---------- */
#payment li.wc_payment_method>label{line-height:1.3}
#payment li.wc_payment_method>label img,#payment li.wc_payment_method>label svg{position:static;max-height:22px;width:auto;display:inline-block;vertical-align:middle;margin:0}
#payment li.wc_payment_method .payment-methods--logos,#payment li.wc_payment_method .wcpay-logos,#payment li.wc_payment_method .payment-method-logos{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
#payment .wc-payment-form,#payment fieldset{border:0;padding:0;margin:0}

/* ---------- Pulido: tamaños mínimos y zonas táctiles ---------- */
.woocommerce form .form-row label,.woocommerce form .form-row label .optional{font-size:11.5px}
.woocommerce form .form-row label .optional{letter-spacing:0}
.payment-methods--logos-count{font-size:11.5px}
.woocommerce-form-login-toggle a,.woocommerce-form-coupon-toggle a,a.showlogin,a.showcoupon{display:inline-flex;align-items:center;min-height:40px}
.cl__name{display:inline-block;padding:10px 0;margin:-10px 0}
.cl__info .qty button,.cartpage .qty button{width:40px;height:40px}
.js .cartpage__actions [name=update_cart]{position:absolute;left:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);padding:0;border:0;min-height:0}

/* ---------- «Ver pedido» (Mi cuenta): mismo diseño que «pedido recibido» ---------- */
.woocommerce-MyAccount-content .woocommerce-order-details__title,.woocommerce-MyAccount-content .woocommerce-column__title{font-size:clamp(21px,1.9vw,28px);font-weight:600;letter-spacing:-.035em;margin:0 0 16px;font-style:normal;color:var(--ink)}
.woocommerce-MyAccount-content .woocommerce-order-details{margin:34px 0}
.woocommerce-MyAccount-content table.woocommerce-table--order-details{width:100%;border-collapse:collapse}
.woocommerce-MyAccount-content table.woocommerce-table--order-details th{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--ink-2);text-align:left;padding:0 12px 12px 0;border-bottom:1px solid var(--ink)}
.woocommerce-MyAccount-content table.woocommerce-table--order-details td,.woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot th{padding:14px 12px 14px 0;border-bottom:1px solid var(--line);vertical-align:top;font-size:14.5px;letter-spacing:0;text-transform:none;color:var(--ink);font-weight:400;text-align:left}
.woocommerce-MyAccount-content table.woocommerce-table--order-details tfoot th{font-weight:500}
.woocommerce-MyAccount-content table.woocommerce-table--order-details td:last-child,.woocommerce-MyAccount-content table.woocommerce-table--order-details th:last-child{text-align:right;padding-right:0}
.woocommerce-MyAccount-content table.woocommerce-table--order-details .product-name a{font-weight:500;text-decoration:none}
.woocommerce-MyAccount-content table.woocommerce-table--order-details .wc-item-meta{list-style:none;margin:4px 0 0;padding:0;font-size:13px;color:var(--ink-2);font-weight:300}
.woocommerce-MyAccount-content .woocommerce-customer-details address{font-style:normal;display:grid;gap:3px;font-size:15px;line-height:1.6;font-weight:300;border:0;padding:0}
.woocommerce-MyAccount-content .woocommerce-columns--addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:26px}
.woocommerce-MyAccount-content .woocommerce-columns--addresses .col-1,.woocommerce-MyAccount-content .woocommerce-columns--addresses .col-2{float:none;width:auto}
.woocommerce-MyAccount-content .woocommerce-customer-details--phone,.woocommerce-MyAccount-content .woocommerce-customer-details--email{margin:4px 0 0;font-size:14px;color:var(--ink-2)}
.woocommerce-MyAccount-content .order-again{margin:22px 0 0}
.woocommerce-MyAccount-content>p mark{white-space:nowrap}
/* pedido recibido visto sin haber iniciado sesión: solo el aviso, con la misma maqueta que el resto */
.wcpage--checkout>.woocommerce:has(>.woocommerce-thankyou-order-received){padding:clamp(34px,5vw,84px) var(--gutter) clamp(70px,9vw,140px);display:grid;gap:18px;justify-items:start;max-width:760px;margin:0}
.wcpage--checkout>.woocommerce>.woocommerce-thankyou-order-received{font-size:clamp(26px,3vw,44px);font-weight:600;letter-spacing:-.04em;line-height:1.1;margin:0;color:var(--ink);background:none;border:0;padding:0}

/* ---------- Cesta y pago: contenido centrado con un ancho máximo (en pantallas grandes el formulario no se estira ni el resumen se pega al borde) ---------- */
body[data-page="checkout"] .shop-head,body[data-page="checkout"] .wcpage--checkout,body[data-page="cart"] .shop-head,body[data-page="cart"] .wcpage--cart{max-width:1440px;margin-inline:auto}

/* ---------- Punto de recogida (InPost / Mondial Relay) ---------- */
/* El texto del punto elegido y el botón se parten en líneas en vez de ensanchar la caja «Tu pedido» (antes se salía por la derecha) */
#ckSide,#order_review,.ck-sum,.ck-sum table.ck-totals,.ck-sum table.ck-totals th,.ck-sum table.ck-totals td{min-width:0;max-width:100%}
.ck-sum table.ck-totals tr.mrwp{flex-wrap:wrap;gap:6px 12px}
.ck-sum table.ck-totals tr.mrwp th{flex:1 1 100%;white-space:normal}
.ck-sum table.ck-totals tr.mrwp td{flex:1 1 100%;text-align:left}
.ck-sum tr.mrwp em,.ck-sum #parcel_shop_info{white-space:normal;overflow-wrap:anywhere}
/* Ventana «Elegir un punto»: queda por encima del aro del puntero de la web, así que se oculta y vuelve el cursor normal mientras está abierta */
body.modaal-noscroll .cursor{display:none}
html.has-cursor body.modaal-noscroll *{cursor:auto!important}
html.has-cursor body.modaal-noscroll :is(a,button,label,select,[role="button"],.modaal-close,.modaal-close *){cursor:pointer!important}
