.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease-out forwards}.modal-content{position:relative;width:100%;max-width:800px;background:rgba(255,255,255,.95);border-radius:24px;padding:2rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);animation:slideUp .3s var(--transition-spring) forwards}[data-theme=dark] .modal-content{background:rgba(15,23,42,.95);border:1px solid rgba(255,255,255,.1)}.modal-close{position:absolute;top:1rem;right:1rem;background:rgba(0,0,0,.05);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s ease;z-index:10}[data-theme=dark] .modal-close{background:rgba(255,255,255,.1)}.modal-close:hover{background:rgba(0,0,0,.1);color:var(--text-primary);transform:rotate(90deg)}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.modal-image-col{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:16px;padding:2rem}.modal-image-col img{max-width:100%;max-height:400px;object-fit:contain}.modal-info-col{display:flex;flex-direction:column;justify-content:center}.modal-badge{display:inline-block;background:#ef4444;color:white;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:700;margin-bottom:1rem;align-self:flex-start}.modal-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;line-height:1.3}.modal-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;font-weight:600}.modal-rating .star{color:#fbbf24;font-size:1.2rem}.modal-rating .reviews{color:var(--text-muted);font-weight:400;font-size:.9rem}.modal-pricing{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.5rem}.modal-price{font-size:2rem;font-weight:800;color:var(--text-primary)}.modal-mrp{font-size:1.1rem;color:var(--text-muted);text-decoration:line-through}.modal-reward-box{background:rgba(139,92,246,.1);border:1px solid rgba(139,92,246,.2);border-radius:12px;padding:1rem;margin-bottom:2rem}.reward-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:var(--accent-primary);font-weight:700;margin-bottom:.25rem}.modal-buy-btn,.reward-math{font-size:1.1rem}.modal-buy-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;border-radius:12px}@media (max-width:768px){.modal-grid{grid-template-columns:1fr;gap:1rem}.modal-content{padding:1.5rem;max-height:90vh;overflow-y:auto}.modal-image-col img{max-height:250px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.product-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s cubic-bezier(.16,1,.3,1),border-color .15s ease;position:relative}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px -8px rgba(0,0,0,.12),0 4px 12px -4px rgba(0,0,0,.06);border-color:rgba(109,40,217,.25)}.product-image-wrapper{position:relative;width:100%;aspect-ratio:4/5;background:#f8f7ff;overflow:hidden;flex-shrink:0}.product-image{width:100%;height:100%;object-fit:contain;padding:1rem;transition:transform .4s cubic-bezier(.16,1,.3,1)}.product-card:hover .product-image{transform:scale(1.06)}.product-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#d1d5db;font-size:2.5rem}.card-discount-badge{position:absolute;top:10px;left:10px;background:linear-gradient(135deg,#dc2626,#ef4444);color:white;padding:3px 9px;border-radius:9999px;font-size:.7rem;font-weight:800;letter-spacing:.03em;z-index:5;box-shadow:0 2px 6px rgba(220,38,38,.35)}.product-card-wishlist{position:absolute!important;top:10px;right:10px;z-index:6}.quick-view-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(0deg,rgba(0,0,0,.65) 0,transparent);display:flex;align-items:flex-end;justify-content:center;padding-bottom:12px;opacity:0;transition:opacity .22s ease;z-index:4;cursor:pointer}.quick-view-overlay span{background:white;color:#1a1523;padding:5px 16px;border-radius:9999px;font-weight:600;font-size:.78rem;transform:translateY(8px);transition:transform .25s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 2px 8px rgba(0,0,0,.2)}.product-image-wrapper:hover .quick-view-overlay{opacity:1}.product-image-wrapper:hover .quick-view-overlay span{transform:translateY(0)}.product-details{padding:.875rem;display:flex;flex-direction:column;flex:1 1;gap:.4rem}.product-offer-chip{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;color:#6d28d9;background:#f5f3ff;border-radius:9999px;padding:2px 8px;width:fit-content}.product-title{font-size:.875rem;font-weight:500;line-height:1.45;color:var(--text,#1a1523);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-pricing{margin-top:auto;padding-top:.5rem;display:flex;flex-direction:column;gap:4px}.price-main-row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.price-current{font-size:1.1rem;font-weight:800;color:#1a1523;letter-spacing:-.02em}.price-mrp{font-size:.8rem;color:#9ca3af;text-decoration:line-through}.price-discount-pct{font-size:.8rem;font-weight:700;color:#dc2626}.effective-pill{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;color:#065f46;background:#d1fae5;border:1px solid #a7f3d0;padding:2px 8px;border-radius:9999px;width:fit-content}.effective-value{font-weight:800}.price-label{font-size:.82rem;color:#9ca3af;font-style:italic}.product-image-wrapper:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(255,255,255,0),rgba(255,255,255,.5) 50%,rgba(255,255,255,0));transform:translateX(-100%);pointer-events:none;opacity:0}.product-card:hover .product-image-wrapper:after{opacity:1;animation:shimmer-wave 1.5s ease-in-out}@keyframes shimmer-wave{0%{transform:translateX(-100%)}to{transform:translateX(200%)}}.store-offers-list{display:none}