.wc-btn{cursor:pointer;color:#555;background:#ffffffeb;border:1px solid #e0e0e0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:all .2s;display:inline-flex}.wc-btn:hover,.wc-btn-active{color:#e30613;background:#fff;border-color:#e30613}.wc-btn:disabled{opacity:.4;cursor:not-allowed}.wc-btn-label{margin-left:.4rem;font-size:.85rem}.wc-btn-inline{border-radius:4px;align-items:center;gap:.4rem;width:auto;height:auto;padding:.55rem .9rem;font-size:.9rem;font-weight:500;display:inline-flex}
.star-rating{gap:1px;line-height:1;display:inline-flex}.star{color:#d1d5db;line-height:1}.star-full{color:#f59e0b}.star-half{color:#f59e0b;opacity:.6}.star-rating-compact{align-items:center;gap:6px;display:inline-flex}.star-rating-text{color:var(--gray-600,#6b7280);font-size:.8rem;font-weight:600}.star-selector{gap:2px;display:inline-flex}.star-select-btn{cursor:pointer;color:#d1d5db;background:0 0;border:none;padding:0 2px;font-size:28px;line-height:1;transition:color .15s,transform .15s}.star-select-btn:hover{transform:scale(1.2)}.star-select-btn.star-selected{color:#f59e0b}.reviews-section{background:var(--white,#fff);border-radius:var(--radius-lg,12px);border:1px solid var(--gray-100,#f3f4f6);margin-top:2rem;padding:2rem}.reviews-heading{color:var(--dark,#1a1a1a);margin-bottom:1.5rem;font-size:1.4rem;font-weight:800}.reviews-summary{border-bottom:1px solid var(--gray-100,#f3f4f6);align-items:center;gap:2.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.reviews-summary-avg{flex-direction:column;align-items:center;gap:6px;min-width:120px;display:flex}.reviews-avg-number{color:var(--dark,#1a1a1a);font-size:3rem;font-weight:800;line-height:1}.reviews-avg-count{color:var(--gray-500,#6b7280);font-size:.85rem}.reviews-summary-dist{flex-direction:column;flex:1;gap:6px;max-width:400px;display:flex}.distribution-row{align-items:center;gap:8px;display:flex}.distribution-label{color:var(--gray-600,#4b5563);text-align:right;justify-content:flex-end;align-items:center;gap:2px;min-width:36px;font-size:.85rem;font-weight:600;display:flex}.distribution-bar-track{background:var(--gray-100,#f3f4f6);border-radius:5px;flex:1;height:10px;overflow:hidden}.distribution-bar-fill{background:#f59e0b;border-radius:5px;min-width:0;height:100%;transition:width .3s}.distribution-count{color:var(--gray-500,#6b7280);text-align:right;min-width:24px;font-size:.8rem}.reviews-actions{margin-bottom:1.5rem}.btn-write-review{background:var(--primary-red,#e30613);color:#fff;border-radius:var(--radius,8px);cursor:pointer;border:none;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:background .2s,transform .15s;display:inline-flex}.btn-write-review:hover{background:var(--primary-red-hover,#c00511);transform:translateY(-1px)}.review-form{background:var(--gray-50,#f9fafb);border:1px solid var(--gray-200,#e5e7eb);border-radius:var(--radius,8px);margin-bottom:1.5rem;padding:1.5rem}.review-form-row{margin-bottom:1rem}.review-form-row label{color:var(--dark,#1a1a1a);margin-bottom:.4rem;font-size:.9rem;font-weight:600;display:block}.review-form-row input,.review-form-row textarea{border:1px solid var(--gray-200,#e5e7eb);border-radius:var(--radius,8px);background:#fff;width:100%;padding:.65rem .85rem;font-family:inherit;font-size:.9rem;transition:border-color .2s}.review-form-row input:focus,.review-form-row textarea:focus{border-color:var(--primary-red,#e30613);outline:none;box-shadow:0 0 0 3px #e306131a}.review-form-error{color:#dc2626;border-radius:var(--radius,8px);background:#fef2f2;border:1px solid #fee2e2;margin-bottom:1rem;padding:.6rem 1rem;font-size:.85rem}.review-form-success{color:#16a34a;border-radius:var(--radius,8px);background:#f0fdf4;border:1px solid #dcfce7;margin-bottom:1rem;padding:.6rem 1rem;font-size:.85rem}.btn-submit-review{background:var(--primary-red,#e30613);color:#fff;border-radius:var(--radius,8px);cursor:pointer;border:none;padding:.7rem 2rem;font-family:inherit;font-size:.95rem;font-weight:700;transition:background .2s}.btn-submit-review:hover{background:var(--primary-red-hover,#c00511)}.btn-submit-review:disabled{opacity:.6;cursor:not-allowed}.reviews-list{flex-direction:column;gap:1rem;display:flex}.reviews-empty{text-align:center;color:var(--gray-500,#6b7280);padding:2rem 0;font-size:.95rem}.review-card{background:var(--gray-50,#f9fafb);border:1px solid var(--gray-100,#f3f4f6);border-radius:var(--radius,8px);padding:1.25rem}.review-card-header{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.review-title{color:var(--dark,#1a1a1a);font-size:1rem;font-weight:700}.review-body{color:var(--gray-700,#374151);margin-bottom:.75rem;font-size:.9rem;line-height:1.6}.review-card-footer{color:var(--gray-500,#6b7280);flex-wrap:wrap;align-items:center;gap:1rem;font-size:.8rem;display:flex}.review-author{color:var(--dark,#1a1a1a);font-weight:600}.review-verified{color:#16a34a;font-size:.75rem;font-weight:500}.review-date{color:var(--gray-400,#9ca3af)}.review-helpful-btn{border:1px solid var(--gray-200,#e5e7eb);border-radius:var(--radius,8px);cursor:pointer;color:var(--gray-600,#4b5563);background:0 0;padding:.3rem .75rem;font-family:inherit;font-size:.78rem;transition:background .2s,border-color .2s}.review-helpful-btn:hover{background:var(--gray-100,#f3f4f6);border-color:var(--gray-300,#d1d5db)}.reviews-load-more{text-align:center;margin-top:1.5rem}.btn-load-more{background:var(--white,#fff);border:2px solid var(--gray-200,#e5e7eb);border-radius:var(--radius,8px);cursor:pointer;color:var(--dark,#1a1a1a);padding:.65rem 2rem;font-family:inherit;font-size:.9rem;font-weight:600;transition:background .2s,border-color .2s}.btn-load-more:hover{background:var(--gray-50,#f9fafb);border-color:var(--gray-300,#d1d5db)}.btn-load-more:disabled{opacity:.6;cursor:not-allowed}@media (max-width:640px){.reviews-summary{flex-direction:column;align-items:flex-start;gap:1.5rem}.reviews-summary-avg{flex-direction:row;align-items:center;gap:12px}.reviews-avg-number{font-size:2.2rem}.reviews-summary-dist{width:100%;max-width:100%}.review-card-footer{flex-direction:column;align-items:flex-start;gap:.5rem}}
.quickview-backdrop{z-index:1000;background:#0009;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;animation:.25s ease-out quickview-fade-in;display:flex;position:fixed;top:0;left:0}@keyframes quickview-fade-in{0%{opacity:0}to{opacity:1}}@keyframes quickview-slide-up{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.quickview-modal{background:var(--white,#fff);border-radius:12px;width:100%;max-width:800px;max-height:90vh;animation:.3s ease-out quickview-slide-up;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.quickview-close{background:var(--gray-100,#f0f0f0);width:36px;height:36px;color:var(--dark,#1a1a1a);cursor:pointer;z-index:2;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;transition:background .2s,color .2s;display:flex;position:absolute;top:12px;right:12px}.quickview-close:hover{background:var(--primary-red,#e30613);color:#fff}.quickview-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.quickview-spinner{border:3px solid var(--gray-100,#f0f0f0);border-top-color:var(--primary-red,#e30613);border-radius:50%;width:40px;height:40px;animation:.7s linear infinite quickview-spin}@keyframes quickview-spin{to{transform:rotate(360deg)}}.quickview-loading-text{color:var(--gray-500,#666);font-size:.9rem}.quickview-error{text-align:center;color:var(--primary-red,#e30613);padding:3rem 2rem;font-size:.95rem}.quickview-content{grid-template-columns:1fr 1fr;gap:0;display:grid}.quickview-image-section{background:var(--gray-50,#f8f8f8);border-radius:12px 0 0 12px;justify-content:center;align-items:center;min-height:300px;padding:2rem;display:flex;position:relative}.quickview-image-section img{object-fit:contain;max-width:100%;max-height:350px}.quickview-details{flex-direction:column;gap:.75rem;padding:2rem;display:flex}.quickview-brand{color:var(--primary-red,#e30613);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:700}.quickview-name{color:var(--dark,#1a1a1a);margin:0;font-size:1.3rem;font-weight:700;line-height:1.3}.quickview-sku{color:var(--gray-500,#888);font-size:.8rem}.quickview-price{color:var(--dark,#1a1a1a);margin:.25rem 0;font-size:1.5rem;font-weight:800}.quickview-description{color:var(--gray-600,#555);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.9rem;line-height:1.6;display:-webkit-box;overflow:hidden}.quickview-stock{align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:flex}.quickview-stock-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.quickview-stock--in-stock .quickview-stock-dot{background:#22c55e}.quickview-stock--in-stock{color:#16a34a}.quickview-stock--out-of-stock .quickview-stock-dot{background:#ef4444}.quickview-stock--out-of-stock{color:#dc2626}.quickview-actions{flex-direction:column;gap:.75rem;margin-top:auto;padding-top:1rem;display:flex}.quickview-add-to-cart{background:var(--primary-red,#e30613);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:6px;padding:.85rem 1.5rem;font-size:1rem;font-weight:700;transition:background .2s,transform .1s}.quickview-add-to-cart:hover{background:#c00510}.quickview-add-to-cart:active{transform:scale(.98)}.quickview-detail-link{text-align:center;color:var(--dark,#1a1a1a);text-underline-offset:3px;font-size:.9rem;font-weight:600;text-decoration:underline;transition:color .2s;display:block}.quickview-detail-link:hover{color:var(--primary-red,#e30613)}.quickview-trigger{width:32px;height:32px;color:var(--dark,#1a1a1a);cursor:pointer;background:#ffffffeb;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s,transform .15s;display:flex;box-shadow:0 1px 4px #0000001f}.quickview-trigger:hover{background:var(--primary-red,#e30613);color:#fff;transform:scale(1.1)}.quickview-trigger svg{width:16px;height:16px}@media (max-width:768px){.quickview-backdrop{align-items:flex-end;padding:0}.quickview-modal{border-radius:16px 16px 0 0;max-width:100%;max-height:95vh;animation:.3s ease-out quickview-slide-up-mobile}@keyframes quickview-slide-up-mobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.quickview-content{grid-template-columns:1fr}.quickview-image-section{border-radius:16px 16px 0 0;min-height:220px;padding:1.5rem}.quickview-image-section img{max-height:220px}.quickview-details{padding:1.25rem}.quickview-name{font-size:1.1rem}.quickview-price{font-size:1.3rem}}
.product-card{background:var(--white);border:1px solid var(--gray-100);border-radius:8px;flex-direction:column;padding:1rem;transition:transform .2s,box-shadow .2s;display:flex}.product-card:hover{transform:translateY(-5px);box-shadow:0 5px 15px #0000001a}.product-image{aspect-ratio:4/3;background:var(--gray-50);justify-content:center;align-items:center;width:100%;margin-bottom:1rem;display:flex;position:relative}.product-card-actions-overlay{opacity:0;z-index:2;flex-direction:column;gap:4px;transition:opacity .2s;display:flex;position:absolute;top:6px;right:6px}.product-card:hover .product-card-actions-overlay{opacity:1}.product-image img{object-fit:contain;max-width:90%;max-height:90%}.product-brand{color:var(--primary-red);text-transform:uppercase;font-size:.8rem;font-weight:700}.product-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.8rem;margin:.5rem 0 1rem;font-size:1.1rem;display:-webkit-box;overflow:hidden}.product-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.product-price{font-size:1.2rem;font-weight:800}.add-to-cart-btn{background:var(--dark);color:var(--white);cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem;font-weight:600}.add-to-cart-btn:hover{background:var(--primary-red)}@media (max-width:768px){.product-card{padding:.75rem}.product-card:hover{transform:none}.product-card-actions-overlay{opacity:1}.product-name{-webkit-line-clamp:2;min-height:auto;font-size:.95rem}.product-price{font-size:1.05rem}.product-footer{flex-direction:column;align-items:stretch;gap:.5rem}.add-to-cart-btn{text-align:center;justify-content:center;align-items:center;width:100%;min-height:44px;padding:.65rem 1rem;font-size:.85rem;display:flex}}@media (max-width:480px){.product-image{aspect-ratio:3/2}}
