.product-card{background:var(--white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);height:100%;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.product-card .card-image-container{width:100%;height:200px;overflow:hidden;position:relative;background:var(--light-gray)}.product-card .card-image{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform var(--transition-base)}.product-card:hover .card-image{transform:scale(1.05)}.card-content{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column}.product-card .card-title{margin:0 0 var(--spacing-sm) 0;font-size:1.25rem;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;height:1.4em;white-space:nowrap;min-height:1.3em}.card-title a{color:var(--text-color);text-decoration:none;transition:color var(--transition-base)}.card-title a:hover{color:var(--primary-color)}.card-summary{margin:0 0 var(--spacing-md) 0;color:var(--text-light);font-size:.95rem;line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;height:4.5em}.card-summary a{color:inherit;text-decoration:none;transition:color var(--transition-base)}.card-summary a:hover{color:var(--primary-color)}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.card-price{font-weight:600;color:var(--success-color);font-size:1.1rem}.card-meta-previous-price{text-decoration:line-through;color:var(--text-muted);font-size:.9rem;margin-left:var(--spacing-sm);font-weight:400}.card-category{background:var(--light-gray);color:var(--text-light);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-xl);font-size:.85rem;font-weight:500}.card-actions{display:flex;gap:var(--spacing-sm);margin-top:auto}@media (max-width: 768px){.product-card{margin-bottom:16px}.card-image-container{height:180px}.card-content{padding:16px}.card-title{font-size:1.1rem;margin-bottom:10px}.card-summary{font-size:.9rem;margin-bottom:12px}.card-meta{margin-bottom:12px}.card-price{font-size:1rem}.card-category{font-size:.8rem;padding:3px 10px}.card-actions{gap:8px}.btn{padding:8px 16px;font-size:.85rem;min-height:36px}}@media (max-width: 480px){.card-image-container{height:160px}.card-content{padding:12px}.card-title{font-size:1rem;margin-bottom:8px}.card-summary{font-size:.85rem;margin-bottom:10px}.card-meta{flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:10px}.card-actions{flex-direction:column;gap:8px}.btn{width:100%;padding:10px 16px;font-size:.9rem;min-height:40px}}.card-image-container:before{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;opacity:0;transition:opacity .3s ease}.card-image-container.loading:before{opacity:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-image-container.error{background:#f8f9fa;display:flex;align-items:center;justify-content:center;color:#6c757d;font-size:.9rem}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#6c757d;text-align:center}.image-placeholder span{font-size:3rem;margin-bottom:8px;opacity:.6}.image-placeholder p{margin:0;font-size:.9rem;font-weight:500;opacity:.8}
