/* Componentes comerciales compartidos y catálogo dark/gold. */
.jav-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.jav-catalog-heading{display:flex;gap:2rem;align-items:center;margin:1rem 0 2rem}.jav-catalog-heading>div{flex:1}.jav-catalog-heading h1{font-size:2.5rem}.jav-catalog-banner{max-width:35%;max-height:230px;object-fit:cover;border-radius:.5rem}
.jav-catalog-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:2rem}.jav-catalog-results{min-width:0}.jav-catalog-results .jav-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.jav-filters{background:white;padding:1.25rem;border:1px solid var(--jav-border);border-radius:.5rem;align-self:start}.jav-filters h2{font-size:1.1rem}.jav-filters form{display:grid;gap:1.1rem}.jav-filters label{display:grid;gap:.35rem;font-weight:600}.jav-filters fieldset{border:0;padding:0;margin:0}.jav-price-range{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.jav-filters select,.jav-filters input{width:100%;min-width:0}
.jav-filter-open,.jav-filter-close{display:none}.jav-catalog-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem;padding:1rem;background:white;border-radius:.5rem}.jav-catalog-toolbar p{margin:0}.jav-catalog-toolbar form{display:flex;flex-wrap:wrap;gap:.5rem}.jav-catalog-toolbar select{max-width:100%}.jav-view-buttons{display:flex;gap:.25rem}.jav-view-buttons [aria-pressed=true]{background:var(--jav-header-bg);color:white}.jav-active-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.jav-active-filters a{background:var(--jav-primary-soft);padding:.4rem .7rem;border-radius:2rem;color:var(--jav-dark)}
.jav-product-grid[data-view=list]{grid-template-columns:1fr}.jav-product-grid[data-view=list] .jav-product-card{display:grid;grid-template-columns:160px minmax(0,1fr) 210px;gap:1rem}.jav-product-grid[data-view=list] .jav-product-card__image{grid-row:1/5;margin:0}.jav-product-grid[data-view=list] .jav-product-card__bottom{grid-column:3;grid-row:1/5}.jav-product-grid[data-view=list] .jav-product-card h3{grid-column:2;margin:0}.jav-subcategories{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.jav-subcategories a{display:grid;gap:.3rem;width:150px;padding:1rem;background:white}.jav-subcategories img{height:80px;object-fit:contain}
.jav-b2b-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.jav-b2b-actions button{font-size:.72rem;padding:.5rem .65rem;min-height:36px}.jav-b2b-actions [aria-pressed=true]{background:var(--jav-primary-soft);color:var(--jav-dark)}.jav-b2b-actions .jav-button{width:100%;text-align:center}.jav-product-identity dl{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;font-size:.8rem}.jav-product-identity dd{margin:0;overflow-wrap:anywhere}.jav-product-identity .jav-eyebrow{display:block;margin-bottom:1rem}.jav-document-links{display:flex;flex-wrap:wrap;gap:1rem}.woocommerce div.product .product_title{font-size:2rem}.woocommerce div.product p.price{color:var(--jav-primary-dark);font-size:1.7rem;font-weight:700}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--jav-surface-low);border-color:var(--jav-border)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-top:3px solid var(--jav-primary)}.woocommerce div.product .woocommerce-tabs .panel{padding:1.5rem;background:white;border-radius:.5rem}.woocommerce ul.products li.jav-loop-item{background:none;margin-bottom:2rem}.woocommerce ul.products li.jav-loop-item .jav-product-card img{margin:0}.woocommerce .related.products{clear:both}.woocommerce .quantity input{max-width:90px}.woocommerce table.shop_attributes td{padding:.5rem}
.jav-live-status:empty{display:none}.jav-live-status{position:fixed;z-index:1000;bottom:1rem;left:50%;transform:translateX(-50%);max-width:90vw;background:var(--jav-dark);color:white;padding:1rem 1.5rem;border-radius:.5rem;box-shadow:var(--jav-shadow-lg)}
#jav-quick-dialog{width:min(900px,94vw);max-height:90vh;border:0;border-radius:.5rem;padding:1.5rem;overflow:auto;color:var(--jav-text);background:var(--jav-background)}#jav-quick-dialog::backdrop{background:rgb(11 15 23 / 75%)}[data-jav-quick-close]{display:block;margin-left:auto;margin-bottom:1rem}.jav-quick-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.jav-quick-content img{width:100%;object-fit:contain}.jav-quick-content input{max-width:90px}.jav-quick-cart{margin:1rem 0}.jav-quote-list{margin-bottom:2rem}.jav-table-scroll{overflow:auto}.jav-quote-list table{width:100%;border-collapse:collapse;background:white}.jav-quote-list td,.jav-quote-list th{padding:1rem;text-align:left;border-bottom:1px solid var(--jav-border)}.jav-quote-list input{max-width:85px}
.jav-search{position:relative;overflow:visible}.jav-autocomplete{position:absolute;top:100%;left:0;right:0;z-index:100;background:white;color:var(--jav-text);list-style:none;padding:0;box-shadow:var(--jav-shadow-lg);max-height:350px;overflow:auto}.jav-autocomplete[hidden]{display:none}.jav-autocomplete a{display:flex;gap:.75rem;align-items:center;padding:.75rem;color:var(--jav-text);font-size:.75rem}.jav-autocomplete img{width:45px;height:45px;object-fit:contain}.jav-autocomplete a:focus,.jav-autocomplete a:hover{background:var(--jav-primary-soft)}.jav-empty{padding:3rem 1.5rem;background:white;border-radius:.5rem}
@media(max-width:1023px){.jav-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jav-catalog-layout{grid-template-columns:1fr}.jav-catalog-results .jav-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jav-filter-open,.jav-filter-close{display:block}.jav-filter-open{justify-self:start}.jav-filters{display:none;position:fixed;inset:0 auto 0 0;width:min(360px,90vw);z-index:2000;overflow:auto;border-radius:0;box-shadow:0 0 0 100vmax rgb(11 15 23 / 60%)}.jav-filters.is-open{display:block}.jav-filter-close{margin-left:auto;margin-bottom:1rem}.jav-product-grid[data-view=list] .jav-product-card{grid-template-columns:110px minmax(0,1fr)}.jav-product-grid[data-view=list] .jav-product-card__bottom{grid-column:2;grid-row:auto}.jav-product-grid[data-view=list] .jav-product-card__image{grid-row:1/6}}
@media(max-width:639px){.jav-product-grid,.jav-catalog-results .jav-product-grid,.jav-quick-content{grid-template-columns:1fr}.jav-catalog-heading h1{font-size:2rem}.jav-catalog-heading{display:block}.jav-catalog-banner{max-width:100%;margin-top:1rem}.jav-catalog-toolbar form{width:100%}.jav-catalog-toolbar select{flex:1;min-width:0;font-size:.75rem}.jav-product-grid[data-view=list] .jav-product-card{grid-template-columns:90px minmax(0,1fr)}.jav-product-grid[data-view=list] .jav-product-card__image{padding:.25rem}.woocommerce div.product .product_title{font-size:1.65rem}.jav-quick-content{gap:1rem}}
.jav-product-card { min-width: 0; display: flex; flex-direction: column; padding: var(--jav-space-md); border-radius: var(--jav-radius); background: var(--jav-surface); box-shadow: var(--jav-shadow-sm); transition: box-shadow 200ms ease; }
.jav-product-card:hover { box-shadow: var(--jav-shadow-lg); }
.jav-product-card__image { position: relative; aspect-ratio: 1; margin-bottom: 0.85rem; padding: 0.75rem; background: var(--jav-surface-low); border-radius: var(--jav-radius); overflow: hidden; }
.jav-product-card__image > a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.jav-product-card__image img { width: 100%; height: 100%; object-fit: contain; transition: transform 300ms ease; }
.jav-product-card:hover .jav-product-card__image img { transform: scale(1.04); }
.jav-product-badges { position: absolute; left: 0.65rem; right: 0.65rem; top: 0.65rem; display: flex; justify-content: space-between; align-items: flex-start; gap: 0.5rem; pointer-events: none; }
.jav-stock-badge, .jav-brand-badge { max-width: 60%; padding: 0.25rem 0.45rem; font-size: 0.625rem; font-weight: 700; border-radius: var(--jav-radius); overflow-wrap: anywhere; }
.jav-stock-badge { background: var(--jav-surface); color: var(--jav-success); }
.jav-stock-badge--out { color: var(--jav-error); }
.jav-brand-badge { background: var(--jav-primary); color: var(--jav-on-primary); }
.jav-product-card__meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.4rem; font-size: 0.6875rem; color: var(--jav-muted); margin-bottom: 0.5rem; overflow-wrap: anywhere; }
.jav-product-card h3 { font-size: 0.875rem; line-height: 1.4; margin-bottom: 0.75rem; }
.jav-product-card h3 a { color: var(--jav-text); }
.jav-product-attributes { display: flex; flex-wrap: wrap; gap: 0.3rem; margin-bottom: 1rem; }
.jav-product-attributes span { padding: 0.15rem 0.4rem; background: var(--jav-surface-low); color: var(--jav-muted); font-size: 0.625rem; border-radius: var(--jav-radius); overflow-wrap: anywhere; }
.jav-product-card__bottom { margin-top: auto; }
.jav-product-price { color: var(--jav-text); font-size: 1.25rem; font-weight: 700; overflow-wrap: anywhere; }
.jav-product-price del { font-size: 0.75rem; font-weight: 400; color: var(--jav-muted); }
.jav-product-price ins { text-decoration: none; }
.jav-secondary-price { display: block; margin-top: 0.25rem; color: var(--jav-muted); font-size: 0.6875rem; }
.jav-sale-label { display: inline-block; color: var(--jav-primary-dark); font-size: 0.6875rem; font-weight: 700; }
.jav-product-card__detail { display: flex; margin-top: 1rem; padding: 0.65rem 0.75rem; font-size: var(--jav-font-label); }
.jav-product-card .star-rating { display: inline-block; position: relative; width: 5.4em; height: 1.4em; overflow: hidden; font-size: 0.6875rem; color: var(--jav-primary-dark); }
.jav-product-card .star-rating::before { content: "☆☆☆☆☆"; position: absolute; inset: 0; }
.jav-product-card .star-rating span { position: absolute; inset: 0 auto 0 0; overflow: hidden; height: 1.4em; color: transparent; }
.jav-product-card .star-rating span::before { content: "★★★★★"; color: var(--jav-primary-dark); white-space: nowrap; }

.jav-entry-content > .jav-product-grid,.jav-entry-content > .jav-quote-list,.jav-entry-content > .jav-panel{max-width:none}.jav-quote-list table{display:table}.jav-b2b-actions button:not(.jav-button),.jav-catalog-toolbar button,.jav-quote-list button{background:var(--jav-surface-low);color:var(--jav-text);padding:.55rem .75rem;border:1px solid var(--jav-border);border-radius:.25rem}.jav-b2b-actions button:hover{background:var(--jav-primary-soft)}
