.cart-page{min-height:100vh;padding:var(--spacing-lg)0;background:var(--color-beige-light)}.cart-title{text-align:center;margin-bottom:var(--spacing-lg);color:var(--color-wine);font-size:clamp(2.5rem,5vw,3.5rem)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--color-gray);font-size:1.25rem}.empty-cart{text-align:center;padding:var(--spacing-xl)0}.empty-cart svg{color:var(--color-wine);margin-bottom:2rem}.empty-cart h2{color:var(--color-wine);margin-bottom:1rem;font-size:2rem}.empty-cart p{color:var(--color-gray);margin-bottom:2rem;font-size:1.1rem}.cart-content{gap:var(--spacing-lg);grid-template-columns:2fr 1fr;display:grid}.cart-items{flex-direction:column;gap:1.5rem;display:flex}.cart-item{transition:var(--transition-fast);background:#fff;grid-template-columns:120px 1fr auto auto auto;align-items:center;gap:1.5rem;padding:1.5rem;display:grid}.cart-item:hover{box-shadow:0 4px 20px #722f371a}.item-image{background:var(--color-cream);width:120px;height:160px;position:relative}.item-details h3{font-family:var(--font-serif);color:var(--color-wine);margin:0 0 .5rem;font-size:1.3rem}.item-size{color:var(--color-gray);margin:.25rem 0;font-size:.95rem}.item-price{color:var(--color-black);margin:.5rem 0 0;font-size:1.1rem;font-weight:600}.item-quantity{border:2px solid var(--color-light-gray);align-items:center;gap:1rem;padding:.5rem 1rem;display:flex}.item-quantity button{color:var(--color-wine);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;align-items:center;padding:.25rem;display:flex}.item-quantity button:hover{transform:scale(1.2)}.item-quantity span{text-align:center;min-width:30px;font-size:1.1rem;font-weight:600}.item-total{text-align:right;min-width:120px}.item-total p{color:var(--color-black);margin:0;font-size:1.3rem;font-weight:600}.item-remove{color:var(--color-gray);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;padding:.5rem}.item-remove:hover{color:#dc3545;transform:scale(1.1)}.cart-summary{background:#fff;height:fit-content;padding:2rem;position:sticky;top:100px}.cart-summary h2{color:var(--color-wine);margin:0 0 1.5rem;font-size:1.8rem}.summary-row{border-bottom:1px solid var(--color-light-gray);justify-content:space-between;padding:1rem 0;font-size:1.1rem;display:flex}.summary-row.total{border-top:2px solid var(--color-wine);color:var(--color-wine);border-bottom:none;margin-top:1rem;padding-top:1.5rem;font-size:1.5rem;font-weight:600}.cart-summary .btn{width:100%;margin-top:2rem}.continue-shopping{text-align:center;color:var(--color-wine);transition:var(--transition-fast);margin-top:1.5rem;font-weight:600;display:block}.continue-shopping:hover{text-decoration:underline}.btn-upi-pay{background:var(--color-wine);color:#fff;border:2px solid var(--color-wine);width:100%;font-size:.85rem;font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);border-radius:0;justify-content:center;align-items:center;gap:10px;margin-top:2rem;padding:1rem 2rem;font-weight:400;display:flex}.btn-upi-pay:hover{transform:translateY(-2px);box-shadow:0 8px 20px #5a23294d}.upi-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1a1a1a99;justify-content:center;align-items:center;padding:20px;animation:.25s fadeInModal;display:flex;position:fixed;inset:0}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.upi-modal{border-top:3px solid var(--color-wine);background:#fdfdf8;border-radius:0;width:100%;max-width:460px;min-height:480px;padding:36px 32px 28px;animation:.3s cubic-bezier(.25,.46,.45,.94) slideUpModal;position:relative;box-shadow:0 20px 60px #1a1a1a40}@keyframes slideUpModal{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.upi-modal-close{border:1px solid var(--color-light-gray);cursor:pointer;width:30px;height:30px;color:var(--color-gray);transition:var(--transition-fast);z-index:10;background:#fff;border-radius:0;justify-content:center;align-items:center;display:flex;position:absolute;top:14px;right:16px}.upi-modal-close:hover{background:var(--color-wine);color:#fff;border-color:var(--color-wine)}.upi-modal-header{text-align:center;border-bottom:1px solid var(--color-light-gray);margin-bottom:20px;padding-bottom:16px}.upi-badge{color:var(--color-wine);border:1px solid var(--color-wine);font-size:10px;font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:0;margin-bottom:12px;padding:3px 12px;font-weight:400;display:inline-block}.upi-amount{font-family:var(--font-serif);color:var(--color-wine);letter-spacing:.01em;margin:8px 0;font-size:2.4rem;font-weight:400}.upi-to{font-size:12px;font-family:var(--font-sans);color:var(--color-gray);letter-spacing:.05em;margin:0}.upi-qr-wrap{border:1px solid var(--color-light-gray);background:#fff;justify-content:center;margin:18px 0;padding:14px;display:flex;box-shadow:0 2px 12px #0000000f}.upi-apps-row{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:18px;display:flex}.upi-app-tag{background:var(--color-cream);color:var(--color-gray);border:1px solid var(--color-light-gray);font-size:10px;font-family:var(--font-sans);letter-spacing:.05em;text-transform:uppercase;border-radius:0;padding:3px 10px}.btn-upi-app{width:100%;color:var(--color-wine);border:2px solid var(--color-wine);font-size:.8rem;font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);background:#fff;border-radius:0;margin-bottom:10px;padding:.9rem 1rem}.btn-upi-app:hover{background:var(--color-wine);color:#fff;transform:translateY(-1px)}.btn-paid{background:var(--color-wine);color:#fff;border:2px solid var(--color-wine);width:100%;font-size:.8rem;font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:var(--transition-smooth);border-radius:0;padding:.9rem 1rem}.btn-paid:hover{transform:translateY(-2px);box-shadow:0 8px 20px #5a23294d}.upi-drop-zone{border:2px dashed var(--color-light-gray);text-align:center;cursor:pointer;background:var(--color-cream);border-radius:0;margin:16px 0;padding:28px 20px;transition:all .2s;display:block}.upi-drop-zone.drag-over{border-color:var(--color-wine);background:#faf5f5}.checkout-form{text-align:left;border-top:1px solid var(--color-light-gray);margin-top:1.5rem;padding-top:1.5rem}.checkout-form label{color:var(--color-gray);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.checkout-form .form-input{border:1px solid var(--color-light-gray);width:100%;font-size:14px;font-family:var(--font-sans);transition:var(--transition-fast);border-radius:0;margin-bottom:14px;padding:10px 12px}.checkout-form .form-input:focus{border-color:var(--color-wine);outline:none;box-shadow:0 0 0 1px #5a23291a}.checkout-form textarea.form-input{resize:vertical;min-height:80px}@media (max-width:968px){.cart-content{grid-template-columns:1fr}.cart-item{grid-template-columns:100px 1fr;gap:1rem}.item-image{width:100px;height:130px}.item-quantity,.item-total,.item-remove{grid-column:2}.item-quantity{justify-self:start}.item-total{text-align:left}.cart-summary{position:relative;top:0}}@media (max-width:768px){.cart-content{grid-template-columns:1fr}.cart-header{display:none}.cart-items{gap:2rem}.cart-item{grid-template-rows:auto auto auto;grid-template-columns:100px 1fr;align-items:start;gap:1rem 1.5rem;padding-bottom:2rem;position:relative}.item-image{grid-row:1/span 3;width:100px;height:130px}.item-details{grid-area:1/2}.item-quantity{grid-area:2/2;width:fit-content;margin-top:.5rem}.item-total{text-align:left;grid-area:3/2;margin-top:.5rem}.item-remove{color:#999;background:#f8f8f8;border-radius:50%;padding:.5rem;position:absolute;top:1rem;right:1rem}.cart-summary{margin-top:2rem;position:relative;top:0}}
