/* Ritualic: estilos de WooCommerce y de las páginas del tema. Se carga después de ritualic.css. */

/* ---------- Utilidades ---------- */
[hidden]{display:none!important}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.woocommerce a{color:inherit}
.blockUI.blockOverlay{background:rgba(16,8,23,.6)!important}

/* Neutraliza nombres de la maqueta que WooCommerce usa para otra cosa */
form.cart{display:block;padding:0;gap:0;grid-template-columns:none;align-items:initial}
input.qty{display:block;border:0;border-radius:0;align-items:initial}
.price del,.price s{font-weight:400;color:var(--muted);font-size:1.2rem;margin-right:.6rem;text-decoration:line-through}
.price ins{text-decoration:none;background:none}
.pc__p del{color:var(--muted);margin-right:.4rem;font-weight:400}.pc__p ins{text-decoration:none;background:none}
.pc__img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 48%;transition:transform .9s var(--ease)}
.pc__art.has-img{display:block;background:var(--violet-d)}
.pc:hover .pc__img,.pc:focus-visible .pc__img{transform:scale(1.05)}

/* ---------- Páginas genéricas ---------- */
.pg{padding:7.5rem var(--pad) 4rem;min-height:70dvh}
.pg__t{--fs:clamp(4.4rem,11vw,10rem);margin-bottom:clamp(1.5rem,3vw,2.5rem)}
.prose{max-width:760px;font-size:1.1rem;line-height:1.7}
.prose>*+*{margin-top:1.1rem}
.prose h2{font:700 clamp(2.2rem,4vw,3.2rem)/1 var(--disp);text-transform:uppercase;margin-top:2.2rem}
.prose h3{font:700 1.7rem/1.1 var(--disp);text-transform:uppercase;margin-top:1.6rem}
.prose a{color:var(--lav);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{padding-left:1.3rem}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li+li{margin-top:.4rem}
.prose blockquote{border-left:3px solid var(--amber);padding-left:1.2rem;font:italic 1.5rem/1.35 var(--serif)}
.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{border-bottom:1px solid var(--line);padding:.7rem .5rem;text-align:left}
.prose img{max-width:100%;height:auto}
.woo{max-width:1320px}
.pagination .nav-links,.navigation.pagination .nav-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:2rem}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .8rem;border:1.5px solid var(--line);border-radius:99px;font-weight:700}
.page-numbers.current,.page-numbers:hover{background:var(--lav);color:var(--ink);border-color:var(--lav)}

/* ---------- Avisos de WooCommerce ---------- */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 1.2rem;padding:1rem 1.2rem;border-left:4px solid var(--amber);background:var(--night);color:var(--silver);display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;border-radius:0 12px 12px 0}
.woocommerce-error{border-left-color:#f0a0b8;display:block}.woocommerce-error li+li{margin-top:.4rem}
.woocommerce-message .button,.woocommerce-info .button{order:2;margin-left:auto}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button),.woocommerce-error a{text-decoration:underline;text-underline-offset:3px}

/* ---------- Botones genéricos de WooCommerce ---------- */
.woocommerce .button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button,.woocommerce #respond input#submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.4rem 1.3rem;border-radius:99px;border:1.5px solid var(--lav);background:transparent;color:var(--lav);font-weight:700;font-size:.95rem;cursor:pointer;transition:background .3s,color .3s,transform .3s var(--ease)}
.woocommerce .button:hover,.woocommerce button.button:hover,.woocommerce a.button:hover{background:var(--lav);color:var(--ink)}
.woocommerce .button.alt,.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce #place_order{background:var(--lav);color:var(--ink)}
.woocommerce .button.alt:hover,.woocommerce #place_order:hover{background:var(--violet);border-color:var(--violet);color:#fff}
.woocommerce .button:active{transform:scale(.97)}
.woocommerce .button:disabled,.woocommerce .button[disabled]{opacity:.45;cursor:not-allowed}
.woocommerce .btn.btn--fill{background:var(--lav);color:var(--ink);border-color:var(--lav);padding:.4rem .5rem .4rem 1.5rem}
.woocommerce .btn.btn--fill:hover{color:#fff}

/* ---------- Formularios ---------- */
.woocommerce form .form-row{margin:0 0 1rem;padding:0}
.woocommerce form .form-row label{display:block;font-weight:700;font-size:.95rem;margin-bottom:.4rem}
.woocommerce form .form-row .required{color:var(--amber);text-decoration:none}
.woocommerce form .form-row .optional{font-weight:400;color:var(--muted)}
.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password],.woocommerce input[type=number],.woocommerce input[type=search],.woocommerce textarea,.woocommerce select,.woocommerce .input-text{width:100%;min-height:3.2rem;padding:.6rem 1rem;border-radius:12px;border:1.5px solid var(--line);background:var(--night);color:var(--silver);font:inherit;transition:border-color .3s,box-shadow .3s}
.woocommerce textarea{min-height:7rem}
.woocommerce input:focus,.woocommerce textarea:focus,.woocommerce select:focus{outline:3px solid var(--lav);outline-offset:2px;border-color:var(--lav)}
.woocommerce form .form-row.woocommerce-invalid input,.woocommerce form .form-row.woocommerce-invalid select{border-color:#f0a0b8;border-width:2.5px}
.woocommerce form .form-row input[type=checkbox],.woocommerce input[type=radio]{width:1.3rem;height:1.3rem;min-height:0;accent-color:var(--violet);margin-right:.5rem;vertical-align:middle}
.woocommerce .woocommerce-form__label-for-checkbox,.woocommerce label.checkbox{display:flex;align-items:flex-start;gap:.6rem;font-weight:400}
.woocommerce-form__label-for-checkbox span{font-weight:400}
.select2-container{width:100%!important}
.select2-container--default .select2-selection--single{min-height:3.2rem;background:var(--night);border:1.5px solid var(--line);border-radius:12px;display:flex;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--silver);line-height:1.2;padding-left:1rem;padding-right:2.4rem}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:100%;right:.6rem}
.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:var(--lav) transparent transparent}
.select2-dropdown{background:var(--night);border:1.5px solid var(--lav);color:var(--silver);border-radius:12px;overflow:hidden}
.select2-container--default .select2-search--dropdown .select2-search__field{background:var(--ink);color:var(--silver);border:1.5px solid var(--line);border-radius:8px;padding:.4rem .6rem}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted[data-selected]{background:var(--violet);color:#fff}
.select2-container--default .select2-results__option[aria-selected=true]{background:var(--violet-d)}

/* ---------- Colección (listados) ---------- */
.chip{display:inline-flex;align-items:center}
.chip[aria-current="page"]{background:var(--lav);color:var(--ink);border-color:var(--lav)}
.sort .woocommerce-ordering{margin:0}
.sort select.orderby{min-height:44px;padding:0 2.2rem 0 1rem;border-radius:99px;border:1.5px solid var(--line);background:var(--ink);color:var(--silver);width:auto}
.woocommerce-pagination{padding:0 var(--pad) clamp(3rem,6vw,5rem)}
.woocommerce-pagination ul{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0;border:0}
.woocommerce-pagination li{border:0;margin:0}
.woocommerce-pagination .page-numbers{display:inline-flex}

/* ---------- Ficha de producto ---------- */
.pdp-notices:has(.woocommerce-message,.woocommerce-error,.woocommerce-info){padding:7rem var(--pad) 0}
.pdp-notices:has(.woocommerce-message,.woocommerce-error,.woocommerce-info)+.pdp{padding-top:2rem}
.pdp .gal--single{grid-template-columns:1fr}
.pdp .stage .pc__img{object-position:50% 46%}
.thumb.has-img{display:block;padding:0}
.thumb.has-img .pc__img{object-position:50% 48%;transition:none}
.pdp__cat{display:inline-flex;border:0;text-decoration:underline}
.pdp .info .desc p+p{margin-top:.8rem}
.quantity{display:inline-block}
.quantity .qty{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:99px}
.quantity .qty button{width:3rem;height:3rem;border-radius:50%;font-size:1.4rem}
.quantity .qty button:hover{background:rgba(200,166,245,.14)}
.quantity .qty input.qty{width:2.8rem;min-height:0;padding:0;border:0;background:none;text-align:center;font-weight:700;color:inherit;-moz-appearance:textfield;appearance:textfield}
.quantity .qty input.qty::-webkit-outer-spin-button,.quantity .qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.quantity .qty input.qty:focus{outline:2px solid var(--lav);outline-offset:2px}
form.cart .opt,.woocommerce-variation-add-to-cart .opt{margin-top:1.4rem}
.woocommerce-variation-availability{display:none}
.buy .btn{width:100%}
form.variations_form{display:block;margin-top:1.2rem}
table.variations{display:block;border:0;width:100%;margin:0 0 .4rem}
table.variations tbody,table.variations tr,table.variations th,table.variations td{display:block;border:0;padding:0;text-align:left}
table.variations th.label{margin:.4rem 0 .6rem}
table.variations th.label label{font-weight:700;font-size:.95rem}
table.variations .vsel{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.vchips{display:flex;flex-wrap:wrap;gap:.5rem}
.vchips .chip{display:inline-flex}
.vchips .chip:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.reset_variations{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);text-decoration:underline;margin-top:.2rem}
.single_variation_wrap .woocommerce-variation{margin:.8rem 0}
.woocommerce-variation-price .price{margin:0;font-size:1.5rem}
.woocommerce-variation-availability .stock,p.stock{margin:.4rem 0;font-weight:700}
.woocommerce-variation-availability .out-of-stock,p.stock.out-of-stock{color:#f0a0b8}
.acc__b{padding-bottom:1.2rem;color:var(--muted);max-width:60ch}
.acc__b p+p{margin-top:.8rem}
.acc__b table.shop_attributes{border-collapse:collapse;width:100%}
.acc__b table.shop_attributes th,.acc__b table.shop_attributes td{padding:.55rem 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.acc__b table.shop_attributes th{font-weight:700;color:var(--silver);width:40%}
.acc__b table.shop_attributes p{margin:0;padding:0}
.rel .rail{padding-bottom:1.4rem}

/* ---------- Carrito ---------- */
body.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(2rem,5vw,5rem);align-items:start}
body.woocommerce-cart .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
body.woocommerce-cart .woocommerce>.cart-empty,body.woocommerce-cart .woocommerce>.empty{grid-column:1/-1}
table.shop_table.cart{display:block;border:0;width:100%;border-collapse:collapse;padding:0;gap:0;grid-template-columns:none;align-items:initial}
table.shop_table.cart thead{display:none}
table.shop_table.cart tbody{display:block}
table.shop_table.cart tr.cart_item{display:grid;grid-template-columns:7rem minmax(0,1fr) auto;grid-template-areas:"thumb name total" "thumb qty remove";gap:.4rem 1.2rem;align-items:center;padding:1.4rem 0;border-top:1px solid var(--line)}
table.shop_table.cart td{display:block;border:0;padding:0}
table.shop_table.cart td.product-thumbnail{grid-area:thumb}
table.shop_table.cart td.product-name{grid-area:name;align-self:end}
table.shop_table.cart td.product-quantity{grid-area:qty;align-self:start}
table.shop_table.cart td.product-subtotal{grid-area:total;text-align:right;font-weight:700;align-self:end}
table.shop_table.cart td.product-remove{grid-area:remove;text-align:right;align-self:start}
table.shop_table.cart td.product-price{display:none}
table.shop_table.cart td.product-thumbnail a,table.shop_table.cart td.product-thumbnail .ci__a{display:block;width:7rem;aspect-ratio:1;background:var(--bg,var(--violet-d));overflow:hidden}
table.shop_table.cart td.product-thumbnail img{width:100%;height:100%;object-fit:cover}
table.shop_table.cart td.product-thumbnail .ci__a{display:grid;place-items:center;background:var(--violet-d)}
table.shop_table.cart td.product-thumbnail .ci__a .art{width:70%}
table.shop_table.cart td.product-name a{font:700 1.8rem/1 var(--disp);text-transform:uppercase}
table.shop_table.cart td.product-name dl.variation{margin:.3rem 0 0;font-size:.88rem;color:var(--muted)}
table.shop_table.cart td.product-name dl.variation dt,table.shop_table.cart td.product-name dl.variation dd{display:inline;margin:0}
table.shop_table.cart td.product-name dl.variation p{display:inline;margin:0}
table.shop_table.cart td.product-remove a.remove{display:inline-flex;align-items:center;min-height:44px;padding:0 .4rem;color:var(--muted);text-decoration:underline;font-size:0}
table.shop_table.cart td.product-remove a.remove::before{content:"Quitar";font-size:1rem}
table.shop_table.cart td.product-remove a.remove:hover{color:var(--lav)}
table.shop_table.cart tr:last-child{border-bottom:1px solid var(--line)}
table.shop_table.cart tr:has(td.actions){display:block;border-top:0}
table.shop_table.cart td.actions{padding:1.4rem 0;display:flex!important;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center}
table.shop_table.cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
table.shop_table.cart td.actions .coupon label{display:none}
table.shop_table.cart td.actions .coupon input.input-text{width:12rem}
table.shop_table.cart td.actions button[name=update_cart]{min-height:44px;border:0;background:none;color:var(--lav);text-decoration:underline;padding:0 .4rem}
table.shop_table.cart td.actions button[name=update_cart]:hover{background:none;color:#fff}
.cart-collaterals{position:sticky;top:6rem}
.cart_totals{padding:2rem;background:var(--violet-d)}
.cart_totals__h,.cart_totals>h2{font:700 2.4rem/1 var(--disp);text-transform:uppercase;margin-bottom:1.2rem}
.cart_totals .fs{margin:0 0 1.2rem}
.cart_totals table.shop_table{display:block;border:0;width:100%}
.cart_totals table.shop_table tbody{display:block}
.cart_totals table.shop_table tr{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;align-items:baseline}
.cart_totals table.shop_table th,.cart_totals table.shop_table td{display:block;border:0;padding:0;font-weight:400;text-align:left}
.cart_totals table.shop_table td{text-align:right;font-weight:700}
.cart_totals table.shop_table tr.order-total{margin-top:.4rem;padding-top:1rem;border-top:1px solid var(--line);font-size:1.4rem}
.cart_totals table.shop_table tr.shipping td{max-width:60%}
.cart_totals ul#shipping_method{list-style:none;padding:0;margin:0;text-align:right}
.cart_totals ul#shipping_method li{margin:.2rem 0}
.cart_totals ul#shipping_method label{display:inline;font-weight:700}
.cart_totals .woocommerce-shipping-destination{font-size:.85rem;font-weight:400;color:var(--muted);margin-top:.3rem}
.cart_totals .shipping-calculator-button{color:var(--lav);text-decoration:underline;font-weight:400;font-size:.9rem}
.wc-proceed-to-checkout{padding:0;margin-top:1.4rem}
.wc-proceed-to-checkout .btn{width:100%;justify-content:space-between}
.empty.cart-empty{padding:3rem 0;max-width:46ch;display:grid;gap:1rem;justify-items:start}

/* ---------- Finalizar compra ---------- */
body.woocommerce-checkout .woocommerce-notices-wrapper{margin-bottom:1rem}
form.checkout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 clamp(2rem,5vw,5rem);align-items:start}
form.checkout #customer_details{grid-column:1;grid-row:1/span 3}
form.checkout #order_review_heading{grid-column:2;grid-row:1}
form.checkout #order_review{grid-column:2;grid-row:2;position:sticky;top:6rem}
#customer_details .col-1,#customer_details .col-2{float:none;width:100%}
#customer_details h3,#order_review_heading{font:700 2.2rem/1 var(--disp);text-transform:uppercase;margin:0 0 1.2rem}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.woocommerce-billing-fields__field-wrapper .form-row,.woocommerce-shipping-fields__field-wrapper .form-row,.woocommerce-address-fields__field-wrapper .form-row{grid-column:1/-1;float:none;width:100%}
.form-row-first,.form-row-last{grid-column:auto!important}
#order_review{background:var(--violet-d);padding:2rem}
#order_review table.shop_table{width:100%;border-collapse:collapse}
#order_review table.shop_table th,#order_review table.shop_table td{padding:.7rem 0;border:0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
#order_review table.shop_table td:last-child,#order_review table.shop_table tfoot td{text-align:right}
#order_review table.shop_table thead th{font-size:.85rem;color:var(--muted)}
#order_review table.shop_table .product-name{font-weight:700}
#order_review table.shop_table .product-quantity{color:var(--muted);font-weight:400}
#order_review table.shop_table tfoot th{font-weight:700}
#order_review table.shop_table tr.order-total td,#order_review table.shop_table tr.order-total th{font-size:1.3rem;font-weight:700;border-bottom:0}
#payment{margin-top:1.4rem;background:none}
#payment ul.wc_payment_methods{list-style:none;padding:0;margin:0}
#payment ul.wc_payment_methods li{padding:.8rem 0;border-bottom:1px solid var(--line)}
#payment ul.wc_payment_methods li label{display:inline;font-weight:700}
#payment div.payment_box{margin-top:.6rem;padding:1rem;background:var(--night);border-radius:12px;color:var(--muted);font-size:.95rem}
#payment div.payment_box p{margin:0}
#payment .place-order{padding:1rem 0 0}
#place_order{width:100%;min-height:3.4rem;font-size:1.05rem}
.woocommerce-terms-and-conditions-wrapper{margin:1rem 0}
.woocommerce-privacy-policy-text{font-size:.88rem;color:var(--muted)}
.woocommerce-form-coupon-toggle .woocommerce-info,.woocommerce-form-login-toggle .woocommerce-info{margin-bottom:1rem}
form.checkout_coupon,form.woocommerce-form-login{padding:1.2rem;border:1.5px solid var(--line);border-radius:14px;margin-bottom:1.4rem}

h3#ship-to-different-address{font:700 1.5rem/1.1 var(--disp);text-transform:uppercase;margin:1.4rem 0 1rem}
h3#ship-to-different-address label{display:flex;align-items:center;gap:.7rem;cursor:pointer;font:inherit;margin:0}
h3#ship-to-different-address input[type=checkbox]{width:1.4rem;height:1.4rem;flex:none}

/* ---------- Pedido recibido ---------- */
.woocommerce-order-received .woocommerce-notice--success{font:700 2rem/1.1 var(--disp);text-transform:uppercase;margin-bottom:1.5rem}
ul.woocommerce-order-overview{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-wrap:wrap;gap:1rem 2.5rem}
ul.woocommerce-order-overview li{font-size:.85rem;color:var(--muted)}ul.woocommerce-order-overview li strong{display:block;font-size:1.1rem;color:var(--silver)}
.woocommerce-order-details table,.woocommerce-customer-details address{width:100%;border-collapse:collapse}
.woocommerce-order-details th,.woocommerce-order-details td{padding:.7rem 0;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.woocommerce-order-details h2,.woocommerce-column__title,.woocommerce-order-downloads__title{font:700 2rem/1 var(--disp);text-transform:uppercase;margin:2rem 0 1rem}
.woocommerce-customer-details address{font-style:normal;padding:1rem;border:1.5px solid var(--line);border-radius:12px}

/* ---------- Mi cuenta ---------- */
body.woocommerce-account.logged-in .woocommerce{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:start}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;display:grid;gap:.15rem;position:sticky;top:6.5rem}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:44px;padding-left:1rem;border-left:2px solid var(--line);color:var(--muted);font-weight:700;transition:color .3s,border-color .3s,padding .4s var(--ease)}
.woocommerce-MyAccount-navigation a:hover{color:#fff;padding-left:1.3rem}
.woocommerce-MyAccount-navigation .is-active a{color:#fff;border-left-color:var(--amber)}
.woocommerce-MyAccount-content table{width:100%;border-collapse:collapse}
.woocommerce-MyAccount-content th,.woocommerce-MyAccount-content td{padding:.8rem .4rem;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.woocommerce-MyAccount-content th{font-size:.85rem;color:var(--muted)}
.woocommerce-MyAccount-content a:not(.button){color:var(--lav);text-decoration:underline;text-underline-offset:3px}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.woocommerce-Address{padding:1.2rem;border:1.5px solid var(--line);border-radius:14px}
.woocommerce-Address-title h3{font:700 1.6rem/1 var(--disp);text-transform:uppercase;margin-bottom:.6rem}
.woocommerce-Address-title .edit{font-size:.9rem}
body.woocommerce-account:not(.logged-in) .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem)}
body.woocommerce-account:not(.logged-in) .u-column1,body.woocommerce-account:not(.logged-in) .u-column2{float:none;width:100%}
body.woocommerce-account:not(.logged-in) .woocommerce h2{font:700 2.6rem/1 var(--disp);text-transform:uppercase;margin-bottom:1rem}
form.woocommerce-form-login,form.woocommerce-form-register,form.lost_reset_password,form.edit-account{padding:clamp(1.2rem,3vw,2rem);border:1.5px solid var(--line);border-radius:18px}
.woocommerce-form-login__rememberme{margin:.4rem 0 1rem}
.lost_password{margin-top:1rem}.lost_password a{text-decoration:underline}

/* ---------- Newsletter (shortcode de un plugin) ---------- */
.news__form{margin-top:2.4rem;max-width:560px}
.news__form form{display:flex;flex-wrap:wrap;gap:.6rem}
.news__form label{display:block;font-weight:700;margin-bottom:.5rem;width:100%}
.news__form input[type=email],.news__form input[type=text]{flex:1 1 220px;min-width:0;height:3.5rem;padding:0 1.3rem;border-radius:99px;border:1.5px solid #fff;background:transparent;color:#fff}
.news__form input::placeholder{color:rgba(255,255,255,.82)}
.news__form input[type=submit],.news__form button{height:3.5rem;padding:0 1.7rem;border-radius:99px;border:0;background:var(--ink);color:var(--lav);font-weight:700;cursor:pointer}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
	body.woocommerce-cart .woocommerce,form.checkout{grid-template-columns:1fr}
	form.checkout #customer_details,form.checkout #order_review_heading,form.checkout #order_review{grid-column:1;grid-row:auto;position:static}
	.cart-collaterals{position:static}
	body.woocommerce-account.logged-in .woocommerce{grid-template-columns:1fr}
	.woocommerce-MyAccount-navigation ul{position:static;display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none}
	.woocommerce-MyAccount-navigation a{flex:none;border:1.5px solid var(--line);border-radius:99px;padding:0 1.1rem}
	.woocommerce-MyAccount-navigation .is-active a{background:var(--lav);color:var(--ink);border-color:var(--lav)}
	body.woocommerce-account:not(.logged-in) .u-columns{grid-template-columns:1fr}
}
@media (max-width:760px){
	.pg{padding-top:6.5rem}
	table.shop_table.cart tr.cart_item{grid-template-columns:5.2rem minmax(0,1fr);grid-template-areas:"thumb name" "thumb qty" "total remove"}
	table.shop_table.cart td.product-thumbnail a,table.shop_table.cart td.product-thumbnail .ci__a{width:5.2rem}
	table.shop_table.cart td.product-subtotal{text-align:left}
	table.shop_table.cart td.product-remove{text-align:right}
	.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{grid-template-columns:1fr}
	.woocommerce-Addresses{grid-template-columns:1fr}
	#order_review,.cart_totals{padding:1.4rem}
}

/* ---------- La tarotista y Ritucoins en WordPress ---------- */
.tarot-cta{margin:2rem 0;padding:clamp(1.4rem,3vw,2rem);background:var(--violet-d);display:grid;gap:.8rem;justify-items:start;max-width:640px}
.tarot-cta h2{font:700 clamp(2.2rem,5vw,3.2rem)/1 var(--disp);text-transform:uppercase}
.club__bal .club__coins{font-size:1rem}
.club__bal .club__coins strong{font:700 3.4rem/1 var(--disp)}
.club__bal .fs__bar{margin:.8rem 0}
.club__rw{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.club__rw li{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.club__code{font:700 2rem/1 var(--disp);letter-spacing:.08em;margin:.4rem 0}

.club__bal[hidden],.club__out[hidden]{display:none}
.avail .dot--low{background:var(--amber)}.avail .dot--out{background:#f0a0b8}

/* ---------- Mi cuenta ---------- */
.pg--bare{padding:0;min-height:0}
.pg--bare .woo{max-width:none}
.pn__woo{display:block}
.woocommerce-MyAccount-content .pn__main .ph{margin-top:0}
.pn__woo .cup .cup__b{min-height:44px}
.chk{display:flex;align-items:center;gap:.6rem;margin:.4rem 0 1rem}

/* ---------- Acceso y registro: campos claros como en el diseño ---------- */
.woocommerce .ax .fld2 input,.woocommerce .ax .fld2 input[type]{min-height:3.2rem;padding:0 1rem;border-radius:12px;border:1.5px solid var(--ink);background:var(--silver);color:var(--ink)}
.woocommerce .ax .pw input,.woocommerce .ax .pw input[type]{padding-right:3.4rem}
.woocommerce .ax .fld2 input:focus{outline:3px solid var(--violet-d);outline-offset:2px;border-color:var(--ink)}
.woocommerce .ax .chk input{width:1.35rem;height:1.35rem;min-height:0;margin:.15rem 0 0;accent-color:var(--violet-d)}
.woocommerce .ax .fld2 label,.woocommerce .ax .chk label{margin:0}
.ax__card .woocommerce-privacy-policy-text,.ax__card .micro{color:var(--ink);opacity:.85;font-size:.9rem}
.ax__card .woocommerce-privacy-policy-text a{text-decoration:underline}
.ax__card .woocommerce-error,.ax__card .woocommerce-message{color:var(--ink);background:rgba(255,255,255,.55)}

/* ---------- Newsletter propio ---------- */
.news form{position:relative}
.news__chk{margin-top:1rem;color:#fff}
.news__chk label{font-weight:400;font-size:.9rem}
.news__chk a{text-decoration:underline}
.news__chk input{accent-color:var(--ink)}

.ax .af,.ax form.woocommerce-form-login,.ax form.woocommerce-form-register{padding:0;border:0;border-radius:0}
.nav a[aria-current]:not(.nav__t):not(:hover):not(:focus-visible){color:var(--muted)}
.nav a[aria-current]:not(.nav__t):not(:hover):not(:focus-visible)::after{transform:scaleX(0)}

/* Ficha variable: el precio de la opción elegida va arriba, sin duplicados ni huecos */
.single_variation_wrap .woocommerce-variation{margin:0}
.woocommerce-variation-price,.woocommerce-variation-description{display:none}
.reset_variations{display:none!important}
table.variations{margin-bottom:0}

/* Carrito: espacio bajo el título y línea de formato y precio */
body.woocommerce-cart .pg__t{margin-bottom:5.6rem}
table.shop_table.cart td.product-name .ci__meta{display:block;margin:.3rem 0 .8rem;color:var(--muted);font-size:.85rem}
table.shop_table.cart td.product-name dl.variation{display:none}
@media (max-width:760px){body.woocommerce-cart .pg__t{margin-bottom:2.4rem}}
body.woocommerce-cart .pg__t{--fs:clamp(5rem,16vw,18rem)}

/* Mi cuenta con el diseño del panel de la maqueta */
body.woocommerce-account.logged-in .woocommerce{display:block}
.pn__woo{display:contents}
.pn__h{--fs:clamp(3rem,6vw,5.5rem)}
.pn .woocommerce-MyAccount-content{padding:0}
.pf{display:grid;gap:1rem;max-width:560px}
.pf__a{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem}
.pf__danger{margin-top:1.6rem;max-width:560px}
.pn .pf select{width:100%;min-height:3.2rem;padding:0 1rem;border-radius:12px}

/* La posición de la cabecera con la barra de WordPress la calcula ritualic.js */
