.header{background:var(--gradient-hero);position:relative;overflow:hidden;padding:3rem 1rem;margin-bottom:2rem;border-radius:0 0 30px 30px;box-shadow:var(--shadow-lg)}.header-nav{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 1rem;margin-bottom:1rem;position:relative;z-index:3}.header-nav-left{display:flex;align-items:center;position:relative}.cart-container{position:relative}.header-nav-right{display:flex;align-items:center;gap:1rem}.cart-icon-button{position:relative;background:#ffffff26;border:2px solid rgba(255,255,255,.3);border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cart-icon-button:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.cart-icon{width:24px;height:24px;color:#fff;stroke-width:2}.cart-badge{position:absolute;top:-4px;right:-4px;background:var(--error);color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border:2px solid white}.nav-buttons{display:flex;gap:1rem;align-items:center}.nav-button{padding:.6rem 1.5rem;border:2px solid rgba(59,130,246,.8);background:#3b82f6e6;color:#fff;font-size:.95rem;font-weight:600;border-radius:25px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.orders-button{border:2px solid rgba(255,255,255,.3);background:#ffffff26}.orders-button:hover{background:#ffffff40;border-color:#ffffff80;text-shadow:0 1px 3px rgba(0,0,0,.2);box-shadow:0 2px 8px #3b82f64d}.nav-button:hover{background:#2563eb;border-color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 16px #3b82f680}.nav-button:active{transform:translateY(0)}.user-info{display:flex;align-items:center;gap:1rem}.user-details{display:flex;align-items:center;gap:.75rem;background:#ffffff26;padding:.5rem 1rem;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.user-avatar{width:40px;height:40px;border-radius:50%;border:2px solid rgba(255,255,255,.3);object-fit:cover}.user-text{display:flex;flex-direction:column;gap:.1rem}.user-name{color:#fff;font-size:.95rem;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.2)}.user-email{color:#fffc;font-size:.8rem;text-shadow:0 1px 2px rgba(0,0,0,.2)}.logout-button{background:#ef4444e6;border-color:#ef4444cc}.logout-button:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 4px 16px #ef444480}.header-content{max-width:1400px;margin:0 auto;text-align:center;position:relative;z-index:2}.logo-container{position:relative;display:inline-block;margin-bottom:.5rem}.logo{font-size:3.5rem;font-weight:800;color:#fff;margin:0;text-shadow:0 4px 20px rgba(0,0,0,.2);letter-spacing:-1px;position:relative;z-index:1;animation:fadeIn .8s ease-out}.logo-accent{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:120%;height:12px;background:#ffffff4d;border-radius:6px;z-index:0;animation:slideUp 1s ease-out .3s both}.tagline{font-size:1.2rem;color:#fffffff2;font-weight:400;margin:0;text-shadow:0 2px 10px rgba(0,0,0,.15);animation:fadeIn 1s ease-out .5s both}.header-decoration{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:1}.decoration-circle{position:absolute;border-radius:50%;background:#ffffff1a;animation:pulse 4s ease-in-out infinite}.circle-1{width:200px;height:200px;top:-50px;right:-50px;animation-delay:0s}.circle-2{width:150px;height:150px;bottom:-30px;left:-30px;animation-delay:1s}.circle-3{width:100px;height:100px;top:50%;left:10%;animation-delay:2s}@media (max-width: 768px){.header{padding:2rem 1rem;border-radius:0 0 20px 20px}.header-nav{padding:0 .5rem;margin-bottom:.5rem}.nav-buttons{gap:.5rem}.nav-button{padding:.5rem 1rem;font-size:.85rem}.user-details{padding:.4rem .75rem;gap:.5rem}.user-avatar{width:32px;height:32px}.user-name{font-size:.85rem}.user-email{font-size:.75rem;display:none}.user-text{display:flex;flex-direction:column}.logo{font-size:2.5rem}.tagline{font-size:1rem}.logo-accent{height:8px}.header-nav{flex-direction:row;justify-content:space-between}.cart-icon-button{width:40px;height:40px}.cart-icon{width:20px;height:20px}}.cart-dropdown{position:absolute;top:calc(100% + .5rem);left:0;width:400px;max-width:calc(100vw - 2rem);max-height:80vh;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border)}.cart-header h3{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.close-cart-button{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;line-height:1}.close-cart-button:hover{background:var(--bg-tertiary);color:var(--text-primary)}.cart-items{flex:1;overflow-y:auto;padding:1rem;max-height:400px}.cart-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.cart-item{display:flex;gap:1rem;padding:1rem;border-bottom:1px solid var(--border);position:relative}.cart-item:last-child{border-bottom:none}.cart-item-image{width:80px;height:80px;object-fit:cover;border-radius:8px;flex-shrink:0}.cart-item-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.cart-item-name{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.cart-item-info,.cart-item-quantity{margin:0;font-size:.85rem;color:var(--text-secondary)}.cart-item-price{margin:0;font-size:1rem;font-weight:700;color:var(--primary);margin-top:.25rem}.remove-item-button{position:absolute;top:.5rem;right:.5rem;background:var(--error);color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;transition:all .2s ease}.remove-item-button:hover{background:#dc2626;transform:scale(1.1)}.cart-footer{padding:1.25rem;border-top:1px solid var(--border);background:var(--bg-secondary)}.cart-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.cart-total-amount{font-size:1.5rem;color:var(--primary)}.checkout-button{width:100%;padding:1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.checkout-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}@media (max-width: 768px){.cart-dropdown{width:calc(100vw - 2rem);right:1rem;left:1rem;max-height:70vh}.cart-item{padding:.75rem;gap:.75rem}.cart-item-image{width:60px;height:60px}.cart-item-name{font-size:.9rem}.cart-item-info,.cart-item-quantity{font-size:.8rem}.cart-item-price{font-size:.9rem}}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;padding:0;animation:fadeIn .6s ease-out}.product-card{background:var(--bg-primary);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;display:flex;flex-direction:column;position:relative;border:1px solid var(--border);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.product-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-xl);border-color:var(--primary-light)}.product-image-wrapper{position:relative;width:100%;padding-top:133.33%;background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);overflow:hidden}.image-skeleton{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.product-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.product-image.loading{opacity:0}.product-card:hover .product-image{transform:scale(1.1)}.product-badge{position:absolute;top:16px;right:16px;background:var(--gradient-accent);color:#fff;padding:8px 16px;border-radius:20px;font-size:.75rem;font-weight:700;z-index:2;box-shadow:var(--shadow-md);animation:slideUp .5s ease-out}.badge-text{text-shadow:0 1px 2px rgba(0,0,0,.1)}.product-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 50%);display:flex;align-items:flex-end;justify-content:center;padding:2rem;opacity:0;transition:opacity .3s ease;z-index:1}.product-card:hover .product-overlay{opacity:1}.view-details{color:#fff;font-weight:600;font-size:1rem;text-transform:uppercase;letter-spacing:1px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.product-info{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column;gap:.75rem}.product-name{font-size:1.25rem;font-weight:600;color:var(--text-primary);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:var(--bg-tertiary);color:var(--text-secondary);padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:500;transition:all .2s ease}.product-card:hover .tag{background:var(--primary-light);color:#fff}.product-price{margin-top:auto;display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap;padding-top:.5rem}.original-price{color:var(--text-light);text-decoration:line-through;font-size:.9rem;font-weight:400}.discounted-price{font-size:1.75rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width: 768px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.product-card{border-radius:16px}.product-info{padding:1rem}.product-name{font-size:1rem}.discounted-price{font-size:1.5rem}.product-badge{top:12px;right:12px;padding:6px 12px;font-size:.7rem}}@media (max-width: 480px){.products-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.product-card{border-radius:12px}}.product-detail-page{width:100%;min-height:100vh;background:var(--bg-primary);animation:fadeIn .3s ease-out;padding-bottom:2rem}.back-button{position:sticky;top:1rem;left:1rem;z-index:100;display:flex;align-items:center;justify-content:flex-start;gap:.5rem;padding:.75rem 1.25rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:24px;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-md);color:var(--text-primary);font-weight:600;font-size:.95rem;margin:1rem;touch-action:manipulation;-webkit-tap-highlight-color:transparent;line-height:1}.back-button svg{display:flex;align-items:center;flex-shrink:0}.back-button span{display:flex;align-items:center;line-height:1}.back-button:hover{background:var(--primary);color:#fff;transform:translate(-4px);box-shadow:var(--shadow-lg)}.product-detail-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:2rem}.product-detail-image-section{display:flex;flex-direction:column;gap:1rem;position:sticky;top:5rem;align-self:start}.main-image-container{width:100%;aspect-ratio:3 / 4;border-radius:16px;overflow:hidden;background:var(--bg-tertiary);position:relative;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}.image-slider-wrapper{position:relative;width:100%;height:100%;overflow:hidden}.image-skeleton-large{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.product-detail-main-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .4s ease;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform}.modal-main-image.active{z-index:1}.main-image-container:active .modal-main-image.active{transition:transform .1s ease,opacity .1s ease}.modal-main-image:hover{transform:scale(1.05)}.image-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:.75rem}.thumbnail{aspect-ratio:1;border-radius:12px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:all .2s ease;background:var(--bg-tertiary);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.thumbnail:hover{border-color:var(--primary-light);transform:scale(1.05)}.thumbnail.active{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.thumbnail img{width:100%;height:100%;object-fit:cover}.color-selector-compact{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.color-label-compact{font-weight:600;color:var(--text-primary);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.color-options-compact{display:flex;flex-wrap:wrap;gap:.5rem}.color-option-compact{padding:.5rem 1rem;border:2px solid var(--border);border-radius:8px;background:var(--bg-primary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;font-size:.85rem;color:var(--text-primary);font-family:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.color-option-compact:hover{border-color:var(--primary);background:var(--primary-light);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}.color-option-compact.active{background:var(--gradient-primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.user-photo-section{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.add-photo-button{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border:2px dashed var(--border);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;font-family:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.add-photo-button:hover{border-color:var(--primary);background:var(--primary-light);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}.add-photo-button:active{transform:translateY(0)}.add-photo-button svg{flex-shrink:0}.user-photo-preview{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:12px;overflow:hidden;border:2px solid var(--border);background:var(--bg-tertiary)}.user-photo-preview img{width:100%;height:100%;object-fit:cover}.remove-photo-button{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;background:#000000b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.remove-photo-button:hover{background:var(--error);transform:scale(1.1)}.remove-photo-button:active{transform:scale(.95)}.product-detail-info-section{display:flex;flex-direction:column;gap:1.5rem;padding-top:1rem}.product-detail-name{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.product-detail-tags{display:flex;flex-wrap:wrap;gap:.5rem}.product-detail-price-section{background:var(--gradient-primary);padding:1.5rem;border-radius:16px;box-shadow:var(--shadow-md)}.price-row{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}.original-price-large{color:#fffc;text-decoration:line-through;font-size:1.1rem;font-weight:400}.discounted-price-large{font-size:2.5rem;font-weight:800;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.2)}.discount-badge-large{background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:6px 14px;border-radius:20px;font-size:.9rem;font-weight:700;border:1px solid rgba(255,255,255,.3)}.selector-group{display:flex;flex-direction:column;gap:.75rem}.selector-label{font-weight:600;color:var(--text-primary);font-size:.95rem;text-transform:uppercase;letter-spacing:.5px}.color-options,.size-options{display:flex;flex-wrap:wrap;gap:.75rem}.color-option,.size-option{padding:.75rem 1.5rem;border:2px solid var(--border);border-radius:12px;background:var(--bg-primary);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;font-size:.95rem;color:var(--text-primary);font-family:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.color-option:hover,.size-option:hover{border-color:var(--primary);background:var(--primary-light);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow)}.color-option.active,.size-option.active{background:var(--gradient-primary);border-color:var(--primary);color:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-buttons-container{margin-top:auto;width:100%}.select-size-message{color:var(--error);font-size:.9rem;text-align:center;margin-bottom:.75rem;font-weight:500}.action-buttons{display:flex;gap:1rem;width:100%}.add-to-cart-button{flex:1;padding:1.25rem;background:#fff;color:var(--primary);border:2px solid var(--primary);border-radius:16px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;text-transform:uppercase;letter-spacing:1px;box-shadow:var(--shadow-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.add-to-cart-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-xl);background:var(--primary);color:#fff}.add-to-cart-button:active:not(:disabled){transform:translateY(-1px)}.add-to-cart-button:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--bg-tertiary)}.buy-button{flex:1;padding:1.25rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:16px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit;text-transform:uppercase;letter-spacing:1px;box-shadow:var(--shadow-md);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.buy-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:var(--shadow-xl);background:var(--gradient-accent)}.buy-button:active:not(:disabled){transform:translateY(-1px)}.buy-button:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary);color:var(--text-secondary)}@media (max-width: 768px){.product-detail-page{padding-bottom:1rem;min-height:100vh;position:relative}.action-buttons{flex-direction:column;gap:.75rem}.add-to-cart-button,.buy-button{width:100%;padding:1rem;font-size:1rem}.back-button{top:.5rem;left:.5rem;margin:.5rem;padding:.5rem 1rem;font-size:.85rem}.product-detail-content{grid-template-columns:1fr;gap:2rem;padding:1rem;min-height:auto}.product-detail-image-section{position:relative;top:0}.product-detail-info-section{padding-top:0}.product-detail-name{font-size:1.75rem}.discounted-price-large{font-size:2rem}.main-image-container{aspect-ratio:3/4;touch-action:pan-x pan-y}}.loading-container{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:4rem 2rem}.spinner-wrapper{text-align:center}.spinner{width:60px;height:60px;border:4px solid var(--bg-tertiary);border-top:4px solid var(--primary);border-right:4px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem;position:relative}.spinner:before{content:"";position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border:4px solid transparent;border-top:4px solid var(--primary-light);border-radius:50%;animation:spin .5s linear infinite reverse}.loading-text{color:var(--text-secondary);font-size:1.1rem;font-weight:500;animation:pulse 2s ease-in-out infinite}.login-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card{background:#fff;border-radius:20px;padding:3rem 2.5rem;max-width:450px;width:100%;box-shadow:0 20px 60px #0000004d;position:relative}.back-button{position:absolute;top:1.5rem;left:1.5rem;background:none;border:none;color:#667eea;font-size:1rem;cursor:pointer;padding:.5rem;transition:color .3s ease;font-weight:500}.back-button:hover{color:#764ba2}.login-title{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 .5rem;text-align:center}.login-subtitle{font-size:1rem;color:#718096;margin:0 0 2.5rem;text-align:center}.google-login-button{width:100%;padding:1rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;font-weight:600;color:#1a202c;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .3s ease;box-shadow:0 2px 4px #0000001a}.google-login-button:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.google-login-button:active{transform:translateY(0)}.google-login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.google-login-button:disabled:hover{transform:none;box-shadow:0 2px 4px #0000001a}.google-icon{width:24px;height:24px}.spinner{width:20px;height:20px;border:3px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{margin-top:2rem;font-size:.85rem;color:#a0aec0;text-align:center;line-height:1.5}@media (max-width: 768px){.login-card{padding:2rem 1.5rem;margin:1rem}.login-title{font-size:1.75rem}.back-button{top:1rem;left:1rem}}.cart-page{min-height:calc(100vh - 200px);padding:0 1rem 2rem;background:var(--bg-secondary);position:relative}.cart-container{max-width:1200px;margin:0 auto}.cart-header-section{margin-bottom:2rem;margin-top:-2rem;padding-top:0;display:flex;flex-direction:column;gap:1.5rem}.back-button{background:none;border:none;color:var(--primary);font-size:1rem;cursor:pointer;padding:.5rem 0;margin:0;margin-top:-2rem;font-weight:500;transition:color .2s ease;display:block;order:1}.back-button:hover{color:var(--primary-dark)}.cart-title-section{margin:0;padding:0;padding-top:1rem;order:2}.cart-title{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin:0 0 .5rem;padding:0}.cart-subtitle{font-size:1.1rem;color:var(--text-secondary);margin:0}.cart-empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:var(--shadow-md)}.empty-cart-icon{width:120px;height:120px;margin:0 auto 2rem;color:var(--text-light)}.empty-cart-icon svg{width:100%;height:100%}.cart-empty-state h2{font-size:1.75rem;color:var(--text-primary);margin:0 0 .5rem}.cart-empty-state p{font-size:1rem;color:var(--text-secondary);margin:0 0 2rem}.shop-now-button{padding:1rem 2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.shop-now-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.cart-content{display:grid;grid-template-columns:1fr 400px;gap:2rem}.cart-items-section{display:flex;flex-direction:column;gap:1rem}.cart-item-card{background:#fff;border-radius:16px;padding:1.5rem;display:flex;gap:1.5rem;box-shadow:var(--shadow-md);transition:box-shadow .3s ease}.cart-item-card:hover{box-shadow:var(--shadow-lg)}.cart-item-image{width:150px;height:150px;object-fit:cover;border-radius:12px;flex-shrink:0}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:.5rem}.cart-item-name{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0}.cart-item-details{font-size:.95rem;color:var(--text-secondary);margin:0}.cart-item-actions{display:flex;align-items:center;gap:1rem;margin-top:1rem}.quantity-controls{display:flex;align-items:center;gap:.5rem;border:2px solid var(--border);border-radius:8px;padding:.25rem}.quantity-button{background:none;border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;color:var(--text-primary);border-radius:6px;transition:all .2s ease}.quantity-button:hover{background:var(--bg-tertiary)}.quantity-value{min-width:40px;text-align:center;font-weight:600;color:var(--text-primary)}.cart-item-price-section{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;min-width:120px}.cart-item-price{font-size:1.5rem;font-weight:700;color:var(--primary);margin:0}.cart-item-unit-price{font-size:.85rem;color:var(--text-secondary);margin:.25rem 0 0}.cart-summary{background:#fff;border-radius:16px;padding:2rem;box-shadow:var(--shadow-md);height:fit-content;position:sticky;top:2rem}.summary-header h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 1.5rem}.summary-details{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem;color:var(--text-primary)}.summary-divider{height:1px;background:var(--border);margin:.5rem 0}.total-amount{font-size:1.75rem;color:var(--primary)}.checkout-button{width:100%;padding:1.25rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.checkout-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.checkout-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.continue-shopping-button{width:100%;padding:1rem;background:#fff;color:var(--primary);border:2px solid var(--primary);border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.continue-shopping-button:hover{background:var(--primary);color:#fff}@media (max-width: 968px){.cart-content{grid-template-columns:1fr}.cart-summary{position:static}}@media (max-width: 768px){.cart-page{padding:1rem .5rem}.cart-title{font-size:2rem}.cart-item-card{flex-direction:column;padding:1rem}.cart-item-image{width:100%;height:200px}.cart-item-price-section{align-items:flex-start;flex-direction:row;justify-content:space-between;width:100%;margin-top:1rem}.cart-item-actions{flex-direction:column;align-items:stretch;gap:.75rem}}.checkout-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem 1rem}.checkout-container{max-width:1200px;margin:0 auto}.checkout-header{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;padding-top:1rem}.back-button{display:flex;align-items:center;gap:.5rem;background:#fff;border:2px solid var(--primary, #4a90e2);color:var(--primary, #4a90e2);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:fit-content}.back-button:hover{background:var(--primary, #4a90e2);color:#fff}.back-button svg,.back-button span{display:flex;align-items:center;line-height:1}.checkout-title{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0}.checkout-content{display:grid;grid-template-columns:1fr 400px;gap:2rem;align-items:start}.checkout-form-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 6px #0000001a}.checkout-form{display:flex;flex-direction:column;gap:2rem}.form-section{display:flex;flex-direction:column;gap:1.5rem}.form-section-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0 0 .5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border, #e0e0e0)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.95rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.form-group input{padding:.875rem;border:2px solid var(--border, #e0e0e0);border-radius:8px;font-size:1rem;transition:all .3s ease;font-family:inherit}.form-group input:focus{outline:none;border-color:var(--primary, #4a90e2);box-shadow:0 0 0 3px #4a90e21a}.form-group input.error{border-color:#e74c3c}.form-group input.error:focus{box-shadow:0 0 0 3px #e74c3c1a}.error-message{color:#e74c3c;font-size:.875rem;font-weight:500}.checkbox-group{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f8f9fa;border-radius:8px}.checkbox-group input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary, #4a90e2)}.checkbox-group label{font-size:1rem;font-weight:500;color:var(--text-primary, #1a1a1a);cursor:pointer}.json-preview-container{background:#1e1e1e;border-radius:8px;padding:1.5rem;overflow-x:auto;border:2px solid #333;max-height:500px;overflow-y:auto}.json-preview{margin:0;color:#d4d4d4;font-family:Courier New,Courier,monospace;font-size:.875rem;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.json-preview::-webkit-scrollbar{width:8px;height:8px}.json-preview::-webkit-scrollbar-track{background:#1e1e1e}.json-preview::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.json-preview::-webkit-scrollbar-thumb:hover{background:#666}.form-actions{margin-top:1rem}.make-payment-button{width:100%;padding:1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.make-payment-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.make-payment-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.checkout-summary{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 6px #0000001a;position:sticky;top:2rem}.summary-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border, #e0e0e0)}.summary-items{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;max-height:400px;overflow-y:auto}.summary-item{display:flex;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border, #e0e0e0)}.summary-item:last-child{border-bottom:none}.summary-item-image{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#f0f0f0}.summary-item-image img{width:100%;height:100%;object-fit:cover}.summary-item-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.summary-item-name{font-size:.95rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.summary-item-meta{font-size:.85rem;color:#666;margin:0}.summary-item-price{font-size:1rem;font-weight:700;color:var(--primary, #4a90e2);margin:.25rem 0 0}.summary-totals{display:flex;flex-direction:column;gap:.75rem}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem;color:var(--text-primary, #1a1a1a)}.summary-divider{height:1px;background:var(--border, #e0e0e0);margin:.5rem 0}.total-row{font-size:1.25rem;font-weight:700;padding-top:.5rem}@media (max-width: 968px){.checkout-content{grid-template-columns:1fr}.checkout-summary{position:static;order:-1}}@media (max-width: 768px){.checkout-page{padding:1rem .5rem}.checkout-title{font-size:2rem}.checkout-form-section,.checkout-summary{padding:1.5rem}.form-grid{grid-template-columns:1fr}.summary-items{max-height:300px}}.order-confirmation-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem 1rem;display:flex;align-items:center;justify-content:center}.confirmation-container{max-width:800px;width:100%;margin:0 auto}.confirmation-content{background:#fff;border-radius:16px;padding:3rem 2rem;box-shadow:0 8px 24px #0000001a;text-align:center}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid var(--primary, #4a90e2);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-icon{width:100px;height:100px;margin:0 auto 2rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;animation:scaleIn .5s ease-out}.success-icon.error{background:linear-gradient(135deg,#f093fb,#f5576c)}@keyframes scaleIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.success-icon svg{width:50px;height:50px}.confirmation-title{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0 0 1rem}.confirmation-subtitle{font-size:1.1rem;color:#666;margin:0 0 2.5rem;line-height:1.6}.order-details-card{background:#f8f9fa;border-radius:12px;padding:2rem;margin:2rem 0;text-align:left}.order-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border, #e0e0e0)}.order-details-header h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin:0}.order-id{font-size:.95rem;color:#666;font-weight:600;font-family:monospace}.order-items-section,.address-section,.order-summary-section{margin-bottom:2rem}.order-items-section h3,.address-section h3,.order-summary-section h3{font-size:1.2rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 1rem}.order-items-list{display:flex;flex-direction:column;gap:1rem}.order-item{display:flex;gap:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid var(--border, #e0e0e0)}.order-item-image{width:80px;height:80px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#f0f0f0}.order-item-image img{width:100%;height:100%;object-fit:cover}.order-item-details{flex:1;display:flex;flex-direction:column;gap:.25rem}.order-item-name{font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.order-item-meta{font-size:.9rem;color:#666;margin:0}.order-item-price{font-size:1rem;font-weight:700;color:var(--primary, #4a90e2);margin:.25rem 0 0}.address-details{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid var(--border, #e0e0e0);line-height:1.8}.address-details p{margin:0;color:var(--text-primary, #1a1a1a);font-size:1rem}.address-details .phone-number{margin-top:.5rem;font-weight:600;color:var(--primary, #4a90e2)}.summary-details{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid var(--border, #e0e0e0)}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem;color:var(--text-primary, #1a1a1a);margin-bottom:.75rem}.summary-divider{height:1px;background:var(--border, #e0e0e0);margin:1rem 0}.total-row{font-size:1.25rem;font-weight:700;padding-top:.5rem;margin-top:.5rem;border-top:2px solid var(--border, #e0e0e0)}.total-amount{font-size:1.75rem;color:var(--primary, #4a90e2)}.payment-info{background:#fff;padding:1rem 1.5rem;border-radius:8px;border:1px solid var(--border, #e0e0e0);margin-top:1.5rem}.payment-info p{margin:0;font-size:.95rem;color:var(--text-primary, #1a1a1a)}.order-status{margin-top:1.5rem;text-align:center}.status-badge{display:inline-block;padding:.5rem 1.5rem;border-radius:20px;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#fff3cd;color:#856404}.status-confirmed{background:#d1ecf1;color:#0c5460}.status-processing{background:#d4edda;color:#155724}.status-shipped{background:#cce5ff;color:#004085}.status-delivered{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.confirmation-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.continue-button,.track-order-button{padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none}.continue-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.continue-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.track-order-button{background:#fff;color:var(--primary, #4a90e2);border:2px solid var(--primary, #4a90e2)}.track-order-button:hover{background:var(--primary, #4a90e2);color:#fff}@media (max-width: 768px){.order-confirmation-page{padding:1rem .5rem}.confirmation-content{padding:2rem 1.5rem}.confirmation-title{font-size:2rem}.order-details-card{padding:1.5rem}.order-details-header{flex-direction:column;align-items:flex-start;gap:.5rem}.order-item{flex-direction:column}.order-item-image{width:100%;height:200px}.confirmation-actions{flex-direction:column}.continue-button,.track-order-button{width:100%}}.orders-page{min-height:calc(100vh - 200px);padding:2rem 1rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.orders-container{max-width:1200px;margin:0 auto}.orders-header{margin-bottom:2rem}.back-button{background:#3b82f6e6;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:1rem}.back-button:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.orders-title{font-size:2.5rem;font-weight:800;color:#1e293b;margin:.5rem 0;text-shadow:0 2px 4px rgba(0,0,0,.1)}.orders-subtitle{font-size:1.1rem;color:#64748b;margin-top:.5rem}.loading-message,.error-message{text-align:center;padding:3rem;font-size:1.2rem;color:#64748b}.error-message{color:#ef4444}.no-orders{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a}.no-orders-icon{width:80px;height:80px;margin:0 auto 1.5rem;color:#cbd5e1}.no-orders-icon svg{width:100%;height:100%}.no-orders h2{font-size:1.8rem;color:#1e293b;margin-bottom:.5rem}.no-orders p{color:#64748b;margin-bottom:2rem}.shop-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.8rem 2rem;border-radius:25px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.shop-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}.orders-list{display:flex;flex-direction:column;gap:2rem}.order-card{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 6px #0000001a;transition:all .3s ease}.order-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-2px)}.order-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.order-info{flex:1}.order-id{font-size:1.3rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.order-date{color:#64748b;font-size:.95rem;margin:0}.order-status{display:flex;align-items:center}.status-badge{padding:.4rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;display:inline-block}.status-badge.status-paid{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.status-badge.status-pending{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.status-badge.status-failed{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.status-badge.status-default{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.order-items{margin-bottom:1.5rem}.order-item{display:flex;gap:1rem;padding:1rem;background:#f8fafc;border-radius:12px;margin-bottom:1rem}.order-item:last-child{margin-bottom:0}.item-image{width:100px;height:100px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#e2e8f0}.item-image img{width:100%;height:100%;object-fit:cover}.item-details{flex:1;min-width:0}.item-name{font-size:1.1rem;font-weight:600;color:#1e293b;margin:0 0 .3rem}.item-description{color:#64748b;font-size:.9rem;margin:0 0 .5rem}.item-meta{display:flex;gap:1rem;font-size:.85rem;color:#475569}.item-total{font-size:1.1rem;font-weight:700;color:#1e293b;align-self:center}.order-addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem;background:#f8fafc;border-radius:12px}.address-section h4{font-size:1rem;font-weight:600;color:#1e293b;margin:0 0 .5rem}.address-section p{color:#64748b;font-size:.9rem;margin:.3rem 0;line-height:1.5}.order-summary{padding:1.5rem;background:#f8fafc;border-radius:12px;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;color:#475569;font-size:.95rem}.summary-divider{height:1px;background:#cbd5e1;margin:.5rem 0}.total-row{font-size:1.2rem;font-weight:700;color:#1e293b;padding-top:.5rem}.total-amount{color:#667eea;font-size:1.3rem}.order-actions{display:flex;justify-content:flex-end;gap:1rem}.payment-link-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;padding:.8rem 2rem;border-radius:25px;font-size:1rem;font-weight:600;display:inline-block;transition:all .3s ease}.payment-link-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #667eea66}@media (max-width: 768px){.orders-title{font-size:2rem}.order-card{padding:1.5rem}.order-header{flex-direction:column;gap:1rem}.order-item{flex-direction:column}.item-image{width:100%;height:200px}.order-addresses{grid-template-columns:1fr}.item-total{align-self:flex-start}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #6366f1;--primary-dark: #4f46e5;--primary-light: #818cf8;--accent: #ec4899;--accent-light: #f472b6;--text-primary: #1f2937;--text-secondary: #6b7280;--text-light: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--border: #e5e7eb;--success: #10b981;--error: #ef4444;--warning: #f59e0b;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-accent: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%)}body{font-family:Poppins,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem 1rem;max-width:1400px;margin:0 auto;width:100%}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@media (max-width: 768px){.main-content{padding:1rem .5rem}}
