/** * Bongoto WooCommerce — WooCommerce Styles (FINAL CLEAN) * File: assets/css/woocommerce.css * Text Domain: bongoto-woocommerce * * Uses global theme color variables where appropriate: * - --bt-color-bg * - --bt-color-text * - --bt-color-primary * - --bt-color-accent */ /* ================= Grid & Cards ================= */ .woocommerce ul.products::before, .woocommerce ul.products::after, .woocommerce-page ul.products::before, .woocommerce-page ul.products::after{ content: none !important; display: none !important; } .woocommerce ul.products, .woocommerce-page ul.products{ display: grid !important; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 24px; align-items: stretch; grid-auto-rows: auto; margin-top: 16px; padding: 0; list-style: none; } /* ≥1200px: force a 4-column grid */ @media (min-width: 1200px){ .woocommerce ul.products, .woocommerce-page ul.products{ grid-template-columns: repeat(4, minmax(0, 1fr)) !important; } } /* Product card */ .woocommerce ul.products li.product{ position: relative; width: auto !important; float: none !important; margin: 0 !important; display: flex; flex-direction: column; border: 1px solid #eef2f7; border-radius: 10px; padding: 12px; background: var(--bt-color-bg, #ffffff); } /* Thumbnail */ .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{ display: block; position: relative; /* badge anchor (kept here only) */ aspect-ratio: 1 / 1; overflow: hidden; border-radius: 8px; background: #f8fafc; } .woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{ width: 100%; height: 100%; object-fit: cover; display: block; } /* ================= Badges (Sale + Quick View) ================= */ /* Sale: top-left circular badge (dashicon) */ .woocommerce ul.products li.product .onsale{ position: absolute !important; top: 6px !important; left: 6px !important; width: 28px; height: 28px; border-radius: 50% !important; background: var(--bt-color-accent, #16a34a) !important; color: #fff !important; display: flex !important; align-items: center; justify-content: center; padding: 0 !important; margin: 0 !important; line-height: 1 !important; font-size: 0 !important; box-shadow: 0 1px 4px rgba(0,0,0,.15); z-index: 4; } .woocommerce ul.products li.product .onsale::before{ content: "\f323"; font-family: "dashicons"; font-size: 14px; line-height: 1; } /* Quick View: top-right circular button */ .bt-product-quickview{ position: absolute; top: 6px; right: 6px; z-index: 4; } .bt-quickview-btn{ display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--bt-color-primary, #2563eb); color: #fff; text-decoration: none; font-size: 14px; line-height: 1; box-shadow: 0 1px 4px rgba(0,0,0,.15); } .bt-quickview-btn:hover{ background: #1d4ed8; } /* ================= Title & Price ================= */ .bt-product-title{ margin: 10px 0 6px; } .bt-title-clamp, .bt-title-clamp a{ font-size: 15px; line-height: 1.35; } .bt-title-clamp{ display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-clamp: 3; -webkit-line-clamp: 3; } @media (max-width: 480px){ .bt-title-clamp, .bt-title-clamp a{ font-size: 14px; } } .woocommerce ul.products li.product .price{ margin-bottom: 10px; font-weight: 600; color: var(--bt-color-accent, #065f46); font-size: 14px; } /* ================= Card Actions ================= */ .bt-product-actions{ display: flex; gap: 6px; margin-top: auto; } .bt-product-actions .button, .bt-product-actions .buy-now, .bt-product-actions .bt-buy-now{ flex: 1; display: flex !important; align-items: center; justify-content: center; height: 36px; padding: 0 10px !important; border-radius: 6px; font-weight: 600; font-size: 13px; border: none; white-space: nowrap; transition: background .2s, transform .1s; margin: 0 !important; } /* Add to cart (loop) */ .bt-product-actions .button{ background: var(--bt-color-primary, #2563eb); color: #fff; } .bt-product-actions .button:hover{ background: #1d4ed8; transform: translateY(-1px); } /* Buy now (loop) */ .bt-product-actions .buy-now, .bt-product-actions .bt-buy-now{ /* Dedicated Buy Now color (Customizer: Buy Now Button) */ background: var(--bt-color-buy-now, var(--bt-color-accent, #16a34a)); color: #fff; } .bt-product-actions .buy-now:hover, .bt-product-actions .bt-buy-now:hover{ /* Keep same Buy Now color, just darken */ background: var(--bt-color-buy-now, var(--bt-color-accent, #16a34a)); filter: brightness(.92); transform: translateY(-1px); } /* ≤640px: wrap and tighter sizing */ @media (max-width: 640px){ .bt-product-actions{ flex-wrap: wrap; gap: 6px; } .bt-product-actions .button, .bt-product-actions .buy-now, .bt-product-actions .bt-buy-now{ flex: 1 1 calc(50% - 3px); height: 38px; font-size: 13px; padding: 0 8px !important; } } /* ≤360px: single column actions */ @media (max-width: 360px){ .bt-product-actions .button, .bt-product-actions .buy-now, .bt-product-actions .bt-buy-now{ flex: 1 1 100%; } } /* View-cart state */ .bt-product-actions .button.is-view-cart{ background: var(--bt-color-accent, #10b981); } .bt-product-actions .button.is-view-cart::after{ content: "✓"; margin-left: .5rem; font-weight: 700; } /* ================= Sorting / Pagination / Qty ================= */ .woocommerce .woocommerce-ordering select{ max-width: 260px; height: 40px; } .woocommerce nav.woocommerce-pagination{ margin-top: 20px; } .woocommerce .quantity .qty{ border-radius: 8px; height: 40px; } /* ================= Sidebar & Category Dropdown ================= */ .bt-shop-wrap{ display: grid; grid-template-columns: 280px 1fr; gap: 28px; } .bt-shop-sidebar{ overflow: visible; position: relative; } .bt-shop-sidebar .widget{ border: 1px solid #eef2f7; border-radius: 10px; padding: 14px; background: var(--bt-color-bg, #ffffff); margin-bottom: 16px; overflow: visible; } .bt-shop-sidebar .widget-title{ margin: 0 0 10px; font-size: 16px; font-weight: 700; color: var(--bt-color-text, #0f172a); } /* Native