/*
Theme Name: VITTOHOME
Theme URI: https://vittohome.uy
Author: VITTOHOME
Description: Tema a medida para la tienda VITTOHOME con WooCommerce. Colores verde y amarillo, diseño adaptado a celular.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: vittohome
WC requires at least: 8.0
*/
/* Estilos base en assets/css/base.css */

/* =========================================================
   WOOCOMMERCE
   ========================================================= */
.nav-in li{list-style:none}.nav-in li a{display:flex}
.custom-logo{max-height:60px;width:auto}
.foot-logo img{width:200px}
.hd-account{flex-direction:column;gap:2px}.hd-account .ic{width:28px;height:28px}
.crumbs .sep{color:var(--borde)}
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:12px;border-top-color:var(--amarillo)!important;background:#fff!important;box-shadow:var(--sombra)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--verde)!important}
.woocommerce-error{border-top-color:var(--mal)!important}

/* Botones de WooCommerce con estilo VITTOHOME */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:var(--verde)!important;color:#fff!important;border-radius:10px!important;font-weight:800!important;padding:12px 18px!important;font-family:var(--sans)!important;line-height:1.2!important;border:0!important}
.woocommerce a.button:hover,.woocommerce button.button:hover{filter:brightness(1.1)}
.woocommerce button.button.vh-comprar,.woocommerce #place_order,.woocommerce .checkout-button{background:var(--amarillo)!important;color:var(--texto)!important}
.woocommerce #place_order,.woocommerce .checkout-button{font-size:18px!important;padding:16px!important;width:100%}
.woocommerce a.button.vh-wa-btn,.vh-wa-btn{background:#25d366!important;color:#fff!important;display:inline-flex!important;align-items:center;gap:8px}
.woocommerce a.added_to_cart{display:block;text-align:center;font-weight:700;padding-top:6px;text-decoration:underline}

/* Grilla de productos */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 24px!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--borde);border-radius:var(--radio);overflow:hidden;display:flex;flex-direction:column;padding:0 0 14px!important;transition:box-shadow .15s;position:relative}
.woocommerce ul.products li.product:hover{box-shadow:0 6px 20px rgba(47,58,34,.12)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1}
.woocommerce ul.products li.product a img{aspect-ratio:1;object-fit:contain;background:#fff;padding:12px;margin:0 0 4px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--sans);font-size:14.5px!important;font-weight:600;line-height:1.3;padding:4px 14px 2px!important;min-height:2.6em;color:var(--texto)}
.woocommerce ul.products li.product .price{color:var(--texto)!important;font-size:21px!important;font-weight:800;padding:0 14px;margin:4px 0 2px!important}
.woocommerce ul.products li.product .price del{font-size:14px;color:var(--muted);font-weight:400}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .stock-dot{padding:0 14px 8px}
.woocommerce ul.products li.product .button{margin:auto 14px 0!important;display:flex!important;justify-content:center;font-size:14px!important;padding:10px!important}
.woocommerce ul.products li.product .star-rating{display:none}
.woocommerce span.onsale{background:var(--amarillo)!important;color:var(--texto)!important;border-radius:20px!important;min-height:0!important;min-width:0!important;line-height:1!important;padding:6px 12px!important;font-weight:800;font-size:12px!important;top:10px!important;left:10px!important;right:auto!important;margin:0!important}
.stock-dot{font-size:13px;display:flex;align-items:center;gap:6px}
.stock-dot::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--ok)}
.stock-dot.si{color:var(--ok)}.stock-dot.no{color:var(--mal)}.stock-dot.no::before{background:var(--mal)}
.stock-dot.big{font-size:17px;font-weight:800;margin-left:auto}

/* Orden y contador */
.woocommerce .woocommerce-result-count{color:var(--muted);font-size:13px;margin:14px 0}
.woocommerce .woocommerce-ordering{margin:8px 0 14px}
.woocommerce .woocommerce-ordering select{border:1px solid var(--borde);border-radius:8px;padding:9px 10px;background:#fff}
.woocommerce nav.woocommerce-pagination ul{border:0!important}
.woocommerce nav.woocommerce-pagination ul li{border:0!important;margin:0 3px}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border-radius:8px;background:#fff;border:1px solid var(--borde);padding:8px 12px!important}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--verde);color:#fff}
.f-link{display:flex;justify-content:space-between;padding:5px 8px;border-radius:8px;font-size:14px}
.f-link:hover,.f-link.on{background:var(--crema-2);font-weight:700}
.f-link small{color:var(--muted)}
.rango{flex-wrap:wrap}.rango input{flex:1;min-width:0}.rango .btn{width:100%;margin-top:6px}

/* Ficha de producto */
.woocommerce div.product{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{background:#fff;border:1px solid var(--borde);border-radius:16px;overflow:hidden}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;margin-top:10px!important}
.woocommerce div.product div.images .flex-control-thumbs li{width:84px!important;border:2px solid var(--borde);border-radius:10px;overflow:hidden;background:#fff}
.woocommerce div.product div.images .flex-control-thumbs li img{opacity:1!important}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{outline:3px solid var(--amarillo)}
.woocommerce div.product .product_title{font-family:var(--sans);font-weight:800;font-size:clamp(26px,3vw,36px);line-height:1.15;margin:0 0 6px}
.meta-top{display:flex;align-items:center;gap:12px;color:var(--muted);margin:0 0 10px}
.woocommerce div.product p.price{color:var(--texto)!important;font-size:46px!important;font-weight:800;line-height:1;margin:14px 0 0!important}
.woocommerce div.product p.price del{font-size:20px;color:var(--muted)}
.woocommerce div.product p.price ins{text-decoration:none}
.iva-inc{display:block;color:var(--muted);font-size:17px;margin:4px 0 18px}
.woocommerce div.product .woocommerce-product-details__short-description{background:#fff;border:1px solid var(--borde);border-radius:var(--radio);padding:12px 18px;margin-bottom:18px}
.woocommerce-product-details__short-description ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.woocommerce-product-details__short-description li{display:flex;gap:10px;align-items:center}
.woocommerce-product-details__short-description li::before{content:"✓";width:20px;height:20px;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;flex:none}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 10px!important}
.woocommerce div.product form.cart div.quantity{margin:0!important;flex-basis:100%}
.woocommerce div.product form.cart .button{flex:1;font-size:17px!important;padding:16px!important;min-width:180px}
.woocommerce div.product .stock{display:none}
.quantity{display:inline-flex!important;align-items:stretch;border:1.5px solid var(--borde);border-radius:10px;background:#fff;overflow:hidden;width:max-content}
.quantity .qty{width:56px!important;text-align:center;border:0!important;border-left:1px solid var(--borde)!important;border-right:1px solid var(--borde)!important;font-weight:800;font-size:17px;padding:8px 0!important;-moz-appearance:textfield;background:#fff}
.quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none}
.vh-q{border:0;background:none;width:44px;font-size:20px;cursor:pointer}
.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:20px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 18px!important;border-bottom:1px solid var(--borde)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:10px 24px!important;font-weight:800!important;color:var(--muted)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--texto)!important;border-bottom:4px solid var(--amarillo)}
.woocommerce div.product .woocommerce-tabs .panel{background:#fff;border:1px solid var(--borde);border-radius:16px;padding:20px 24px!important;color:#3a3f33}
.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.related>h2,.upsells>h2,.cross-sells>h2{font-weight:800;font-size:24px;position:relative;padding-bottom:6px}
.related>h2::after,.upsells>h2::after{content:"";position:absolute;left:0;bottom:0;width:38px;height:4px;border-radius:4px;background:var(--amarillo)}
.woocommerce div.product .product_meta{display:none}

/* Carrito */
.wc-page{margin-top:18px}
.woocommerce table.shop_table{background:#fff;border:1px solid var(--borde)!important;border-radius:16px!important;border-collapse:separate;overflow:hidden}
.woocommerce table.shop_table th{font-weight:800}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--borde)!important;padding:12px!important}
.woocommerce table.cart img{width:76px!important;border-radius:8px}
.woocommerce table.cart td.actions .coupon .input-text{border:1.5px solid var(--borde);border-radius:10px;padding:10px!important;width:160px!important}
.woocommerce .cart-collaterals .cart_totals{background:#fff;border:1px solid var(--borde);border-radius:16px;padding:20px}
.woocommerce .cart-collaterals .cart_totals h2{font-size:22px;font-weight:800;margin-top:0}
.woocommerce .cart-collaterals .cart_totals table{border:0!important}
.vh-envio-msg{display:flex;gap:10px;align-items:center;background:var(--amarillo-2);border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:15px}
.vh-pago-aviso{display:flex;gap:10px;align-items:center;background:#fff7d6;border:1px solid var(--amarillo);border-radius:12px;padding:12px 14px;margin:14px 0;font-size:14px}
.vh-pago-aviso .ic{width:28px;height:28px;color:var(--verde)}

/* Checkout */
.woocommerce-checkout .wc-page form.checkout{display:grid;grid-template-columns:1fr 400px;gap:24px;align-items:start}
.woocommerce-checkout form.checkout>.col2-set{grid-column:1;width:auto!important;background:#fff;border:1px solid var(--borde);border-radius:16px;padding:20px}
.woocommerce-checkout form.checkout>.col2-set .col-1,.woocommerce-checkout form.checkout>.col2-set .col-2{width:100%!important;float:none!important}
.woocommerce-checkout form.checkout>#order_review_heading{grid-column:2;grid-row:1;margin:0;font-weight:800;font-size:22px;align-self:start;display:none}
.woocommerce-checkout form.checkout>#order_review{grid-column:2;grid-row:1;background:#fff;border:1px solid var(--borde);border-radius:16px;padding:20px;position:sticky;top:150px}
.woocommerce-checkout form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1}
.woocommerce form .form-row label{font-weight:700;font-size:14px}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single{border:1.5px solid var(--borde)!important;border-radius:10px!important;padding:11px 12px!important;background:#fffdf7;min-height:46px}
.select2-container .select2-selection--single .select2-selection__rendered{line-height:22px!important;padding:0!important}
.select2-container .select2-selection--single .select2-selection__arrow{top:10px!important}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{outline:none;border-color:var(--amarillo)!important;box-shadow:0 0 0 3px rgba(245,200,31,.25)}
.woocommerce-checkout h3{font-weight:800;font-size:22px}
.woocommerce-checkout #payment{background:none!important;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{border:0!important;padding:0!important;display:grid;gap:10px}
.woocommerce-checkout #payment ul.payment_methods li{border:1.5px solid var(--borde);border-radius:12px;padding:12px 14px!important;background:#fffdf7;list-style:none}
.woocommerce-checkout #payment ul.payment_methods li label{font-weight:800}
.woocommerce-checkout #payment div.payment_box{background:var(--crema-2)!important;border-radius:10px;font-size:13.5px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--crema-2)!important}
.woocommerce-checkout #payment div.form-row{padding:12px 0 0!important}
.woocommerce ul#shipping_method li{margin-bottom:8px}
.woocommerce ul#shipping_method li label{font-weight:600}
.co-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px;flex-wrap:wrap}
.vh-gracias-wa{background:#eef7ea;border:1px solid #bfe2b4;border-radius:16px;padding:18px 20px;margin:0 0 20px;text-align:center}
.vh-gracias-wa p{margin:0 0 12px;font-weight:700}
.woocommerce-order-overview{background:#fff;border:1px solid var(--borde);border-radius:16px;padding:16px!important}

/* Mi cuenta */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;background:#fff;border:1px solid var(--borde);border-radius:16px;overflow:hidden}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:12px 16px;border-bottom:1px solid var(--borde)}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--amarillo-2);font-weight:800}
.woocommerce form.login,.woocommerce form.register{background:#fff;border-radius:16px!important;border-color:var(--borde)!important}

@media (max-width:1100px){
  .woocommerce-checkout .wc-page form.checkout{grid-template-columns:1fr}
  .woocommerce-checkout form.checkout>#order_review{grid-column:1;grid-row:auto;position:static}
  .hd-account{display:none}
}
@media (max-width:900px){
  .woocommerce ul.products{grid-template-columns:repeat(3,1fr)}
  .woocommerce div.product{grid-template-columns:1fr}
}
@media (max-width:700px){
  .woocommerce ul.products,.woocommerce ul.products.columns-3{grid-template-columns:1fr 1fr;gap:10px}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13.5px!important;padding:4px 10px 2px!important}
  .woocommerce ul.products li.product .price{font-size:18px!important;padding:0 10px}
  .woocommerce ul.products li.product .stock-dot{padding:0 10px 8px}
  .woocommerce ul.products li.product .button{margin:auto 10px 0!important;font-size:12.5px!important;padding:9px 6px!important}
  .woocommerce div.product p.price{font-size:38px!important}
  .woocommerce div.product form.cart .button{flex-basis:100%}
  .woocommerce table.shop_table_responsive tr td{padding:8px 12px!important}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%!important;float:none!important}
}

/* Ajustes galería */
.woocommerce div.product>*{min-width:0}
.woocommerce div.product div.images{min-width:0;overflow:hidden}
.woocommerce div.product div.images img{width:100%;height:auto}
