/* Aspecto Viquez: ajustes para que The7 12 + WooCommerce 11 se vean EXACTAMENTE como en produccion (The7 7.9 + WC 3.8.3).
   Cada bloque corrige una diferencia medida (ver centrodieteticoviquez/tools/6-linea-base/visual). Se carga al final del <head>. */

/* Cabecera: importe del carrito 15px (The7 12 lo pone a 19px) */
.masthead .wc-ico-cart,
.masthead .wc-ico-cart .woocommerce-Price-amount,
.masthead .wc-ico-cart .woocommerce-Price-currencySymbol { font-size: 15px; line-height: 15px; }

/* Pie: separacion inferior de listas y textos de los widgets (The7 7 dejaba 10px) */
#footer .widget ul.custom-menu { padding-bottom: 10px; }
#footer .widget .textwidget.custom-html-widget,
#footer .widget p.mail-footer { margin-bottom: 10px; }

/* ===== Ficha de producto ===== */
/* Galeria/resumen: The7 12 usa 60px de hueco, The7 7 usaba 50px */
@media (min-width: 971px) {
	.product div.images { margin-right: 50px; }
	.product div.summary { width: calc(50% - 50px); }
}
/* Etiqueta de oferta */
span.onsale { font-weight: 700; }
/* Cantidad + boton */
.woocommerce div.product form.cart div.quantity { font-weight: 700; margin-right: 15px; }
.woocommerce div.product form.cart .single_add_to_cart_button { margin-left: 0; height: 58px; }
/* Botones de compartir: colores de cada red */
.single-share-box .share-buttons a { display: block; }
.single-share-box .share-buttons a.twitter,   .single-share-box .share-buttons a.twitter:before   { color: rgb(42,190,235); }
.single-share-box .share-buttons a.pinterest, .single-share-box .share-buttons a.pinterest:before { color: rgb(207,40,52); }
.single-share-box .share-buttons a.facebook,  .single-share-box .share-buttons a.facebook:before  { color: rgb(76,105,199); }
.single-share-box .share-buttons a.linkedin,  .single-share-box .share-buttons a.linkedin:before  { color: rgb(0,123,199); }
.single-share-box .share-buttons a.whatsapp,  .single-share-box .share-buttons a.whatsapp:before  { color: rgb(54,183,77); }
/* Pestanas: titulo 26px y 15px de relleno */
.woocommerce div.product .woocommerce-tabs ul.tabs li, .woocommerce-tabs .tabs li { padding-top: 15px !important; }
.woocommerce-tabs .tabs li::after, .woocommerce-tabs .tabs li.active::after { background: transparent !important; bottom: 55px !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a, .woocommerce-tabs .tabs li a { font-size: 26px !important; line-height: 36px !important; }
/* Productos relacionados */
.related.products > h2 { padding-bottom: 10px; margin-bottom: 40px; }
.related-product .product-title, .upsells .product-title { margin-bottom: 5px; }

/* ===== Listados de productos (categoria, ofertas, relacionados) ===== */
.woocommerce .switcher-wrap, .switcher-wrap { margin-bottom: 40px; }
select.orderby { padding: 5px 15px !important; line-height: 26px !important; }
figure.woocom-project .woo-buttons-on-img { margin-bottom: 20px !important; }
.woocom-list-content .woo-buttons { padding-top: 3px; margin-bottom: 15px; }
.woocom-list-content h4.entry-title { padding-top: 0 !important; }
.woocom-list-content h4.entry-title a { display: inline-block; }
.woocom-list-content span.price { margin-top: 0 !important; }
.dt-css-grid .wf-cell.visible { display: block; }
.woocommerce span.out-stock-label, span.out-stock-label { background: rgba(0,0,0,.65) !important; text-transform: uppercase !important; padding: 20px 25px !important; box-shadow: 0 0 0 1px rgba(255,255,255,.15) !important; }

/* ===== Barra lateral WooCommerce (categorias, filtro de precio) ===== */
.widget_product_categories li.cat-item { padding-top: 0; padding-bottom: 1px; }
.widget_price_filter .price_slider_wrapper { margin-bottom: 10px; }
.widget_price_filter .price_slider.ui-slider { height: 7px; border-radius: 16px; background: rgba(102,102,102,.15); }
.widget_price_filter .price_slider_amount button.button { display: block; }

/* ===== Paginacion de tienda ===== */
.woocommerce-pagination.paginator { font-weight: 300; font-size: 16px; line-height: 26px; text-align: start; padding-bottom: 0 !important; }
.woocommerce-pagination.paginator a.page-numbers { font-weight: 700; }
.woocommerce .widget_price_filter .price_slider.ui-slider, .widget_price_filter .price_slider.ui-slider { background: rgba(102,102,102,.15) !important; }
.woocommerce-pagination.paginator .dots { font-weight: 700; }
.woocommerce-pagination.paginator .nav-prev, .woocommerce-pagination.paginator .nav-next { font-size: 14px !important; font-weight: 700; line-height: 14px !important; padding: 0 !important; }

/* ===== Listas en textos (el pie de linea con icono FontAwesome era 1px mas alto) ===== */
.wpb_text_column ul li { padding-bottom: 1px; }

/* ===== Home: modulos (Ultimate Addons 3.x anade margen inferior) ===== */
.fila-modulos-home .aio-icon-component { margin-bottom: 0 !important; }

/* ===== Mi cuenta: formularios de acceso / registro ===== */
#customer_login .u-column1, #customer_login .u-column2 { display: flex; flex-direction: column; align-items: flex-start; }
@media (min-width: 971px) {
	#customer_login .u-column1, #customer_login .u-column2 { width: calc(50% - 25px) !important; }
	#customer_login .u-column2 { margin-left: 50px !important; }
}
@media (max-width: 970px) {
	#customer_login { flex-direction: column; }
	#customer_login .u-column1, #customer_login .u-column2 { width: auto !important; float: none; margin-left: 16.5% !important; margin-right: 16.5% !important; }
	#customer_login .u-column2 { margin-top: 60px !important; }
}
@media (max-width: 600px) {
	#customer_login .u-column1, #customer_login .u-column2 { margin-left: 0 !important; margin-right: 0 !important; }
}
#customer_login form.woocommerce-form { width: 100%; }
.woocommerce-account .woocommerce-form-row label, .woocommerce-account form.woocommerce-form label { font-size: 14px; font-weight: 700; line-height: 24px; text-transform: uppercase; margin-bottom: 5px; }
.woocommerce-account .woocommerce-form-row .woocommerce-Input, .woocommerce-account .woocommerce-form-row input.input-text { margin-bottom: 0 !important; }
.woocommerce-account .woocommerce-privacy-policy-text, .woocommerce-account .woocommerce-privacy-policy-text p { font-size: 14px; line-height: 24px; }
.woocommerce-account #customer_login label, .woocommerce-account #customer_login label .required { font-size: 14px !important; line-height: 24px !important; }
.woocommerce-account #customer_login input.woocommerce-Input { display: inline-block !important; }
.woocommerce-account #customer_login form.login p.form-row:not(.woocommerce-form-row) { display: inline-block; }
.woocommerce-account #customer_login label.woocommerce-form__label-for-checkbox { display: inline-block; margin-left: 20px; }
.woocommerce-account form.woocommerce-form-login > p.form-row:not(.woocommerce-form-row) { display: inline-block !important; width: auto !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { display: inline-block !important; font-size: 14px !important; line-height: 16px !important; margin: 22px 0 10px !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword a { font-size: 14px !important; line-height: 16px !important; color: rgb(102,102,102) !important; }
.woocommerce-account #customer_login input.woocommerce-Input { display: inline-block !important; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit, .woocommerce-account form.woocommerce-form-login label.woocommerce-form__label-for-checkbox, .woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { vertical-align: top; }
.woocommerce-account form.woocommerce-form-login .woocommerce-form-login__submit { display: inline-block; }
.woocommerce-account form.woocommerce-form-login button.woocommerce-form-login__submit { height: 40px !important; min-height: 0 !important; }
.woocommerce-account form.woocommerce-form-login p.woocommerce-LostPassword { margin-left: 36.3px !important; }
.woocommerce-account #customer_login p.form-row:not(.woocommerce-form-row) { display: inline-block !important; width: auto !important; }
.woocommerce-account #customer_login button.woocommerce-Button { height: 40px !important; min-height: 0 !important; line-height: 40px !important; padding-top: 0 !important; padding-bottom: 0 !important; }


/* ===== Cabecera movil ===== */
@media (max-width: 990px) {
	.mobile-header-bar .mobile-navigation { margin-left: 0 !important; }
	.mobile-header-bar a.dt-mobile-menu-icon { padding: 0 !important; margin-left: 10px !important; position: static !important; }
	.mobile-header-bar .wc-shopping-cart a.wc-ico-cart, .mobile-mini-widgets a.wc-ico-cart { font-size: 15px !important; }
}
.woocommerce-account #customer_login button.button { height: 40px !important; min-height: 0 !important; line-height: 40px !important; padding-top: 0 !important; padding-bottom: 0 !important; }

/* ===== Insignia de oferta en productos relacionados (el original usaba el icono de fuente dt-icon-the7-magn-004-12) ===== */
.related-product span.onsale::before { content: "\ea16" !important; font-family: "icomoon-the7-font" !important; font-style: normal; background: none !important; -webkit-mask: none !important; mask: none !important; width: auto !important; height: auto !important; display: inline !important; color: #fff; font-size: 20px; line-height: 19px; }

/* ===== Icono hamburguesa movil: 3 barras de 22x2 como en el original ===== */
.dt-mobile-menu-icon .menu-line { height: 2px !important; width: 22px !important; left: 1px !important; background: #e2001a !important; background-color: var(--the7-accent-color, #e2001a) !important; }
.dt-mobile-menu-icon .menu-line::before, .dt-mobile-menu-icon .menu-line::after { display: none !important; }
.dt-mobile-menu-icon .menu-line:nth-child(1) { top: .5px !important; }
.dt-mobile-menu-icon .menu-line:nth-child(2) { top: 7.5px !important; }
.dt-mobile-menu-icon .menu-line:nth-child(3) { top: 14.5px !important; }

/* ===== Placeholders: opacidad 1 como en el original ===== */
input::placeholder, textarea::placeholder { opacity: 1 !important; }
input::placeholder, textarea::placeholder { color: rgba(102,102,102,.5); }
input.searchform-s::placeholder { color: rgb(102,102,102) !important; }

/* ===== Slider de portada (Slider Revolution 6: capas con borde transparente de 3px y peso distinto) ===== */
rs-layer { border-width: 0 !important; }
rs-layer#slider-1-slide-1-layer-3 { font-weight: 400 !important; }

/* ===== Banner de cookies (Cookie Notice 3.x con los botones de The7; el original 1.3.2 los dejaba como texto) ===== */
#cookie-notice .cn-button.button { padding: 8.5px 10px !important; font-size: 16px !important; line-height: 16px !important; letter-spacing: .25px !important; border: 0 none rgb(255,255,255) !important; box-shadow: none !important; }
#cookie-notice .cn-button.button::after { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: transparent; }
#cookie-notice #cn-close-notice { color: rgb(226,0,26); font: 13px/20px -apple-system, "system-ui", Arial, Roboto, "Helvetica Neue", sans-serif; text-decoration: underline; }
#cookie-notice #cn-close-notice::before, #cookie-notice #cn-close-notice::after { background-color: #fff !important; }

/* ===== Mini carrito desplegable ===== */
.shopping-cart-wrap { top: 34px !important; right: 0 !important; }
.shopping-cart-wrap .shopping-cart-inner { padding: 15px 20px 10px !important; }
.shopping-cart-inner ul.cart_list { margin: 0 0 5px !important; }
.shopping-cart-inner p.buttons.top-position { margin: 0 0 10px !important; }

/* ===== Aviso "anadido al carrito" en la ficha: el original lo ocultaba y desplegaba el mini carrito ===== */
.single-product .woocommerce-message { display: none !important; }

/* ===== Mini carrito con productos (marcado y estilos de The7 7.9) ===== */
.shopping-cart-inner::before { left: 270px !important; right: 20px !important; }
.shopping-cart-wrap ul.cart_list li { display: block !important; padding: 0 !important; position: relative; }
.shopping-cart-wrap ul.cart_list li > a:not(.remove) { display: block !important; width: auto !important; height: auto !important; }
.shopping-cart-wrap ul.cart_list li img { float: left; margin: 5px 20px 5px 0 !important; }
.shopping-cart-wrap ul.cart_list li a.remove { position: absolute !important; top: 5px !important; left: 0 !important; width: 20px !important; height: 20px !important; margin: 0 !important; font: 400 20px/20px Poppins, Helvetica, Arial, Verdana, sans-serif !important; color: rgb(226,0,26) !important; background: transparent !important; z-index: 2; }
.shopping-cart-wrap ul.cart_list li .quantity { display: block !important; width: auto !important; font-size: 14px !important; font-weight: 700 !important; line-height: 24px !important; color: rgba(102,102,102,.5) !important; }
.shopping-cart-wrap .shopping-cart-bottom p.total { margin: 0 0 20px !important; }
.shopping-cart-wrap .shopping-cart-bottom p.buttons { margin: 0 0 10px !important; overflow: visible !important; height: auto; }
.shopping-cart-wrap .shopping-cart-bottom p.buttons a.button { float: left; margin: 0 10px 15px 0 !important; box-shadow: none !important; }
.shopping-cart-inner ul.cart_list:not(.empty) { margin-bottom: 15px !important; }
.shopping-cart-wrap ul.cart_list li a.remove { font-weight: 700 !important; }

/* ===== Botones: The7 12 los hace inline-flex (texto a la izquierda si el boton es mas ancho); el original era inline-block con texto centrado ===== */
a.button, button.button, input.button, .btn-shortcode, .dt-btn, input[type="submit"], a.added_to_cart, .woo-buttons a, .woocom-list-content .woo-buttons a { justify-content: center; }

/* ===== Precio: WooCommerce 11 mete el importe en <bdi> con color propio; el hover rojo del original coloreaba el importe entero ===== */
.woocommerce-Price-amount bdi, .price .woocommerce-Price-amount bdi { color: inherit !important; }

/* ===== Cesta con productos (plantilla cart.php de The7 7.9 en el hijo; estilos de The7 7.9) ===== */
.woocommerce-cart-wrap .woocommerce-cart-form .shop_table_responsive, .woocommerce-cart-wrap .woocommerce-cart-form table.shop_table { width: 100% !important; }
@media (max-width: 970px) {
	.woocommerce-cart-wrap .woocommerce-cart-form { width: 100% !important; }
}
@media (min-width: 971px) {
	.woocommerce-cart-wrap .woocommerce-cart-form { width: calc(100% - 380px); }
	.woocommerce-cart-wrap .cart-collaterals { margin-left: 50px; }
}
.woocommerce-cart-form table.shop_table thead th { font-size: 14px !important; line-height: 24px !important; text-transform: uppercase !important; font-weight: 400 !important; padding: 0 0 10px !important; text-align: left !important; }
.woocommerce-cart-form table.shop_table td { padding: 25px 10px !important; }
.woocommerce-cart-form td.product-name, .woocommerce-cart-form td.product-name a, .woocommerce-cart-form td.product-subtotal, .woocommerce-cart-form td.product-subtotal .amount, .woocommerce-cart-form td.product-subtotal .woocommerce-Price-currencySymbol { font-weight: 700; }
.woocommerce-cart-form .quantity { display: inline-flex; margin: 0; height: 40px; float: none; font-weight: 700; box-shadow: none; }
.woocommerce-cart-form .quantity input.qty { height: 40px; }
.woocommerce-cart-form td.product-remove a.remove { display: block; width: auto; height: auto; font-size: 16px; line-height: 30px; color: rgba(51,51,51,.2); background: transparent; border-radius: 0; text-align: left; }
.cart_totals .woocommerce-shipping-methods label { font-weight: 700; }
.cart_totals .woocommerce-shipping-methods label .amount, .cart_totals .woocommerce-shipping-methods label .woocommerce-Price-currencySymbol { font-weight: 700; }
.cart_totals tr.cart-subtotal td .amount, .cart_totals tr.cart-subtotal td .woocommerce-Price-currencySymbol { font-weight: 700; }
.cart_totals strong { color: rgb(51,51,51); }

.quantity input.minus.button, .quantity input.plus.button { display: block; width: 20px; height: 40px; font: 400 16px/30px Arial, sans-serif; color: rgba(102,102,102,.5); background: #fff; border: 1px solid rgba(204,204,204,.5); border-radius: 0; padding: 3px 0 7px; margin: 0; box-shadow: none; text-align: center; position: relative; }
.quantity input.plus.button { padding: 5px 0; }
.woocommerce-cart-form .coupon { position: relative; display: flex; padding: 0 10px 10px 0; }
.woocommerce-cart-form .coupon::before { content: "\ea05"; font-family: "icomoon-the7-font"; font-size: 14px; line-height: 40px; color: rgba(102,102,102,.5); position: absolute; top: 0; left: 15px; width: 14px; height: 40px; display: block; }
.woocommerce-cart-form .wc-coupon-field { display: flex; padding: 0 10px 10px 0; }
.woocommerce-cart-form input.wc-coupon-input { height: 40px; width: 200px; margin: 0 10px 0 0; padding: 5px 15px 5px 35px; }
.woocommerce-cart-form .update-cart-button { display: flex; }
.woocommerce-cart-form .update-cart-button input[type="submit"] { font-weight: 700; }
.woocommerce-cart-form .quantity input.qty { width: 40px !important; }
.woocommerce-cart-form .wc-coupon-field { padding: 0 !important; display: block !important; }
.woocommerce-cart-form input.wc-coupon-input { margin: 0 10px 0 0 !important; height: 40px !important; }
.woocommerce-cart-form .update-cart-button input[type="submit"] { display: block; }
.woocommerce-cart-form thead th.product-price, .woocommerce-cart-form thead th.product-quantity { text-align: center !important; }
.woocommerce-cart-form thead th.product-subtotal { text-align: right !important; }
.woocommerce-cart-form .quantity input.qty { font-weight: 700 !important; }
.woocommerce-cart-form .coupon::before { color: rgba(102,102,102,.5) !important; line-height: 40px; height: 40px; }
.woocommerce-cart-form .update-cart-button i, .woocommerce-cart-form .update-cart-button i::before { color: rgba(51,51,51,.25) !important; }
.woocommerce-cart-form td.product-remove a.remove i, .woocommerce-cart-form td.product-remove a.remove i::before { color: rgba(51,51,51,.2) !important; }
.woocommerce-cart-form .coupon { height: 50px; }

/* ===== Iconos de la cesta: fuente de iconos de The7 7.9 (la de The7 12 cambia algunos glifos) ===== */
@font-face { font-family: "icomoon-the7-font-79"; src: url("../fonts/icomoon-the7-font-79.woff") format("woff"); font-weight: normal; font-style: normal; }
.woocommerce-cart-form .coupon::before, .woocommerce-cart-form a.remove i::before, .woocommerce-cart-form .update-cart-button i::before { font-family: "icomoon-the7-font-79" !important; }
.woocommerce-cart-form .update-cart-button::before { display: none !important; }
.woocommerce-cart-form .quantity input.qty { padding: 0 !important; text-align: center; }
.woocommerce-cart-wrap a.remove { -webkit-mask: none !important; mask: none !important; background: transparent !important; }
.woocommerce-cart-form .coupon::before { z-index: 2; }
.woocommerce-cart-form input.wc-coupon-input { display: block !important; }
.woocommerce-cart-form table.shop_table thead th.product-price, .woocommerce-cart-form table.shop_table thead th.product-quantity { text-align: center !important; }
.woocommerce-cart-form table.shop_table thead th.product-subtotal { text-align: right !important; }
.woocommerce-cart-form .wc-coupon-field label { display: none; }
.woocommerce-cart-form .update-cart-button i { padding-right: 5px; }
.woocommerce-cart-form table.shop_table thead th.product-remove { position: relative; }
.woocommerce-cart-form table.shop_table thead th.product-remove::before { content: "Producto"; position: absolute; left: .8px; top: 0; white-space: nowrap; }
.woocommerce-cart-form table.shop_table thead th.product-name { color: transparent !important; }
.woocommerce-cart-form .coupon button.wc-cart-button { padding: 0 44px !important; line-height: 40px !important; height: 40px !important; }
@media (max-width: 970px) {
	.woocommerce-cart-form .coupon { padding-bottom: 50px; height: auto; }
	.woocommerce-cart-form table.shop_table thead th.product-remove::before { left: -1.7px; }
}
@media (max-width: 600px) {
	.woocommerce-cart-form .coupon::before { top: 15px; z-index: 10; }
	.woocommerce-cart-form tr.cart_item, .woocommerce-cart-form tr:not(.cart_item) { padding-top: 25px; padding-bottom: 25px; }
	.woocommerce-cart-form td.product-name a { padding: 0 !important; text-align: start !important; }
}
.cart_totals .shipping-calculator-button { font-weight: 400; }

/* ===== Ficha de producto: restaurado tras la comprobacion visual post-despliegue (2026-11-09) ===== */
/* Iconos de "Comparte": The7 12 usa SVG (X en vez del pajaro); el original usaba la fuente de iconos 7.9 */
.single-share-box .share-buttons a svg, .single-share-box .share-buttons a .soc-font-icon, .single-share-box .share-buttons a .social-text { display: none !important; }
.single-share-box .share-buttons a::before { font-family: "icomoon-the7-font-79"; font-style: normal; font-weight: 400; font-size: 16px; line-height: 30px; font-variant: normal; speak: none; }
.single-share-box .share-buttons a.facebook::before { content: "\f106"; }
.single-share-box .share-buttons a.twitter::before { content: "\f127"; }
.single-share-box .share-buttons a.pinterest::before { content: "\f115"; }
.single-share-box .share-buttons a.linkedin::before { content: "\f113"; }
.single-share-box .share-buttons a.whatsapp::before { content: "\f132"; }
/* Productos relacionados */
.related.products > h2, .upsells.products > h2 { margin-bottom: 40px !important; }
.related.products > h2::after, .upsells.products > h2::after { position: absolute; bottom: 0; left: 0; }
.related-product .woo-buttons, .upsells .woo-buttons { padding-top: 3px !important; margin-bottom: 15px !important; }
/* Cantidad en la ficha: 80x46 como el original */
.woocommerce div.product form.cart div.quantity { height: 40px; }
.woocommerce div.product form.cart .quantity input.minus, .woocommerce div.product form.cart .quantity input.plus, .woocommerce div.product form.cart .quantity input.qty { height: 40px !important; }
