.product-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);color:inherit;flex-direction:column;height:100%;text-decoration:none;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;overflow:hidden}.product-card:hover{z-index:2;border-color:#1e40af33;transform:translateY(-4px);box-shadow:0 12px 24px -8px #0f172a1f,0 4px 8px -4px #0f172a14}.product-card-image-wrapper{background-color:var(--color-surface);width:100%;padding-top:100%;position:relative;overflow:hidden}.product-card-image{object-fit:contain;width:100%;height:100%;padding:var(--space-4);transition:transform .6s cubic-bezier(.25,.8,.25,1);position:absolute;top:0;left:0}.product-card:hover .product-card-image{transform:scale(1.08)}.product-card-image-fallback{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);background:linear-gradient(145deg,#f1f5f9 0%,#e2e8f0 100%);flex-direction:column;display:flex}.product-card-image-fallback .fallback-label{text-transform:uppercase;letter-spacing:.5px;opacity:.6;font-size:10px}.product-badge{top:var(--space-2);left:var(--space-2);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:11px;font-weight:var(--font-weight-bold);z-index:10;color:#fff;text-transform:uppercase;position:absolute}.badge-discount{background-color:var(--color-discount)}.badge-stock{background-color:var(--color-text-secondary)}.badge-preorder{background-color:var(--color-warning)}.product-card-hover-actions{top:var(--space-2);right:var(--space-2);gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast), transform var(--transition-fast);z-index:10;flex-direction:column;display:flex;position:absolute;transform:translate(10px)}.product-card:hover .product-card-hover-actions{opacity:1;transform:translate(0)}@media (max-width:1023px){.product-card-hover-actions{opacity:1;transform:translate(0)}}.icon-btn{border-radius:var(--radius-full);border:1px solid var(--color-border);cursor:pointer;width:32px;height:32px;box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast), color var(--transition-fast);font-size:var(--text-sm);background-color:#ffffffe6;justify-content:center;align-items:center;display:flex}.icon-btn:hover{background-color:var(--color-surface);color:var(--color-primary)}.product-card-content{padding:var(--space-4);flex-direction:column;flex:1;display:flex}@media (max-width:768px){.product-card-content{padding:var(--space-2) var(--space-3)}}.product-card-brand{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1);font-size:11px}.product-card-name{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-1);-webkit-line-clamp:2;text-overflow:ellipsis;word-break:break-word;-webkit-box-orient:vertical;flex:1;line-height:1.4;display:-webkit-box;overflow:hidden}.product-card-sku{color:var(--color-text-secondary);margin-bottom:var(--space-3);font-size:10px}@media (max-width:768px){.product-card-sku{display:none}}.product-card-specs{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:var(--space-2);margin-bottom:var(--space-2);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.product-card-price-container{flex-direction:column;justify-content:flex-end;min-height:40px;display:flex}@media (min-width:768px){.product-card-price-container{align-items:baseline;gap:var(--space-2);flex-direction:row;justify-content:flex-start}}.product-card-price-old{font-size:var(--text-xs);color:var(--color-text-secondary);margin-bottom:2px;text-decoration:line-through}.product-card-price-current{font-size:var(--text-2xl);letter-spacing:-.5px;color:var(--color-text-primary);font-weight:800}.discount-color{color:var(--color-discount)}.product-card-actions{gap:var(--space-2);padding:0 var(--space-4) var(--space-4);align-items:center;display:flex}.product-add-cart{flex:1}.product-add-cart.disabled{background-color:var(--color-surface-hover);color:var(--color-text-secondary);border-color:var(--color-border)}
