:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;color:#333;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:#fff}#root{width:100%}html{scroll-behavior:smooth}*{margin:0;padding:0;box-sizing:border-box}.app{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#2d3748;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{background:linear-gradient(135deg,#ec4899,#f97316,#fbbf24);color:#fff;padding:1rem 0;position:fixed;top:0;width:100%;z-index:1000;box-shadow:0 4px 20px #ec489966;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header .container{display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.8rem;font-weight:700;text-decoration:none;color:#fff}.nav{display:flex;align-items:center;gap:2rem;width:100%;justify-content:space-between}.nav-btn{background:none;border:none;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;padding:.5rem 1rem;border-radius:20px}.nav-btn:hover,.nav-btn.active{background:#fff3;color:#fff}.nav-right{display:flex;align-items:center;gap:1.5rem}.cart-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.7rem 1.5rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cart-btn:hover,.cart-btn.active{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.nav a:hover{opacity:.8}.cart-info{background:#ffffff40;padding:.5rem 1rem;border-radius:25px;font-weight:700;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.auth-buttons{display:flex;gap:.75rem;align-items:center}.auth-nav-btn{padding:.5rem 1rem;border-radius:20px;border:1px solid rgba(255,255,255,.3);background:#fff3;color:#fff;font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:.9rem}.auth-nav-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.register-btn{background:#ffffffe6;color:#ec4899;border-color:#ffffff80}.register-btn:hover{background:#fff;color:#db2777}.logo{cursor:pointer;transition:transform .3s ease}.logo:hover{transform:scale(1.05)}.hero{background:linear-gradient(#0006,#0006),url(https://images.unsplash.com/photo-1486427944299-d1955d23e34d?w=1200&h=600&fit=crop) center/cover;height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;margin-top:80px}.hero-content h2{font-size:3.5rem;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-content p{font-size:1.3rem;margin-bottom:2rem;max-width:600px;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.products-section{padding:4rem 0;background:linear-gradient(135deg,#fdf2f8,#fce7f3)}.products-section h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#333}.category-filter{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{background:#fff;border:2px solid #ec4899;color:#ec4899;padding:.7rem 1.5rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500;box-shadow:0 4px 15px #ec48991a}.filter-btn:hover,.filter-btn.active{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #ec489966}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.product-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 8px 25px #ec48991a;transition:all .3s ease;border:1px solid rgba(236,72,153,.1)}.product-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px #ec489933;border-color:#ec48994d}.product-card img{width:100%;height:250px;object-fit:cover}.product-info{padding:1.5rem}.product-info h3{font-size:1.3rem;margin-bottom:.5rem;color:#333}.product-info p{color:#666;margin-bottom:1rem;line-height:1.5}.product-footer{display:flex;justify-content:space-between;align-items:center}.price{font-size:1.4rem;font-weight:700;color:#ec4899;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.add-to-cart-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #ec489980;background:linear-gradient(135deg,#db2777,#ea580c)}.contact-section{padding:4rem 0;background:linear-gradient(135deg,#fff,#f7fafc)}.contact-section h2{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#333}.contact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:800px;margin:0 auto}.contact-item{text-align:center;padding:2rem;background:#fff;border-radius:20px;transition:all .3s ease;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1)}.contact-item:hover{transform:translateY(-5px);box-shadow:0 15px 40px #ec489926;border-color:#ec489933}.contact-item h3{font-size:1.3rem;margin-bottom:1rem;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-link{color:#ec4899;text-decoration:none;font-weight:500;transition:all .3s ease;border-bottom:1px solid transparent}.contact-link:hover{color:#db2777;border-bottom-color:#db2777;transform:translateY(-1px)}.contact-item p{color:#666;line-height:1.6}.footer{background:linear-gradient(135deg,#2d3748,#4a5568);color:#fff;text-align:center;padding:2rem 0}.footer p{margin:0}@media (max-width: 768px){.header .container,.nav,.nav-right{flex-direction:column;gap:1rem}.auth-buttons{gap:.5rem}.auth-nav-btn{padding:.4rem .8rem;font-size:.85rem}.hero-content h2{font-size:2.5rem}.hero-content p{font-size:1.1rem}.products-grid{grid-template-columns:1fr}.category-filter{flex-direction:column;align-items:center}.contact-info{grid-template-columns:1fr}}@media (max-width: 480px){.container{padding:0 15px}.hero-content h2,.products-section h2,.contact-section h2{font-size:2rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.product-card{animation:fadeInUp .6s ease-out}.product-card:nth-child(1){animation-delay:.1s}.product-card:nth-child(2){animation-delay:.2s}.product-card:nth-child(3){animation-delay:.3s}.product-card:nth-child(4){animation-delay:.4s}.product-card:nth-child(5){animation-delay:.5s}.product-card:nth-child(6){animation-delay:.6s}.logo{animation:float 3s ease-in-out infinite}.header{background:#ec4899e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.2)}.hero{background:linear-gradient(135deg,#ec4899cc,#f97316cc),url(https://images.unsplash.com/photo-1486427944299-d1955d23e34d?w=1200&h=600&fit=crop) center/cover}.products-section{background:linear-gradient(135deg,#fdf2f8,#fce7f3);position:relative}.products-section:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%,rgba(236,72,153,.05) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(249,115,22,.05) 0%,transparent 50%);pointer-events:none}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background:#fff;border-radius:20px;padding:2rem;width:90%;max-width:450px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #667eea4d;border:1px solid rgba(102,126,234,.1);position:relative;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.modal-header h2{margin:0;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.8rem}.close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#64748b;transition:color .3s ease;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%}.close-btn:hover{color:#ec4899;background:#ec48991a}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#374151;font-size:.9rem}.form-group input{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#f8fafc}.form-group input::placeholder{color:#94a3b8}.auth-btn{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:1rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem;box-shadow:0 4px 15px #ec489966}.auth-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ec489980;background:linear-gradient(135deg,#db2777,#ea580c)}.auth-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.error-message{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;padding:.75rem 1rem;border-radius:12px;font-size:.9rem;border:1px solid #fca5a5;margin-bottom:1rem}.auth-switch{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.auth-switch p{margin:0;color:#64748b}.switch-btn{background:none;border:none;color:#ec4899;font-weight:600;cursor:pointer;text-decoration:underline;margin-left:.5rem;transition:color .3s ease}.switch-btn:hover{color:#db2777}.divider{display:flex;align-items:center;margin:1.5rem 0;text-align:center}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,#e2e8f0,transparent)}.divider span{padding:0 1rem;color:#64748b;font-size:.9rem;background:#fff}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:12px;background:#fff;color:#374151;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;margin-bottom:1rem}.google-btn:hover:not(:disabled){border-color:#d1d5db;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.google-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.google-icon{width:20px;height:20px;flex-shrink:0}@media (max-width: 480px){.modal-content{padding:1.5rem;margin:1rem}.modal-header h2{font-size:1.5rem}}.user-menu{position:relative;display:inline-block}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#f97316);border:2px solid rgba(255,255,255,.3);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 15px #ec489966}.user-avatar:hover{transform:scale(1.05);box-shadow:0 6px 20px #ec489980}.avatar-initials{color:#fff;font-weight:700;font-size:.9rem;text-transform:uppercase}.user-dropdown{position:absolute;top:calc(100% + 10px);right:0;background:#fff;border-radius:15px;box-shadow:0 15px 40px #667eea33;border:1px solid rgba(102,126,234,.1);min-width:280px;z-index:1000;animation:dropdownSlideIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-info{padding:1.5rem;display:flex;align-items:center;gap:1rem}.user-avatar-large{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#f97316);display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-initials-large{color:#fff;font-weight:700;font-size:1.1rem;text-transform:uppercase}.user-details{flex:1;min-width:0}.user-name{font-weight:600;color:#374151;margin:0 0 .25rem;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{color:#64748b;margin:0;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-divider{height:1px;background:linear-gradient(90deg,transparent,#e2e8f0,transparent);margin:0 1rem}.menu-items{padding:1rem 0}.menu-item{width:100%;padding:.75rem 1.5rem;border:none;background:none;text-align:left;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:.95rem;color:#374151;transition:all .3s ease}.menu-item:hover{background:linear-gradient(135deg,#ec48991a,#f973161a);color:#ec4899}.menu-icon{font-size:1.1rem;width:20px;text-align:center}.logout-item{color:#dc2626;margin-top:.5rem;border-top:1px solid #f1f5f9;padding-top:1rem}.logout-item:hover{background:linear-gradient(135deg,#dc26261a,#ef44441a);color:#dc2626}@media (max-width: 480px){.user-dropdown{right:-10px;min-width:260px}.user-info{padding:1rem}.menu-item{padding:.75rem 1rem}}.page-container{min-height:100vh;padding-top:100px;background:linear-gradient(135deg,#fdf2f8,#fce7f3)}.page-content{max-width:1200px;margin:0 auto;padding:2rem}.page-header{text-align:center;margin-bottom:3rem}.page-header h1{font-size:2.5rem;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.page-header p{color:#64748b;font-size:1.1rem}.success-message{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:1rem;border-radius:12px;margin-bottom:1.5rem;text-align:center;font-weight:500}.error-message{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;padding:1rem;border-radius:12px;margin-bottom:1.5rem;text-align:center;font-weight:500}.loading-container{text-align:center;padding:4rem 0}.loading-spinner{width:50px;height:50px;border:4px solid #fce7f3;border-top:4px solid #ec4899;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.loading-spinner.small{width:20px;height:20px;border-width:2px;margin:0}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 8px 25px #ec48991a}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#374151;margin-bottom:.5rem}.empty-state p{color:#64748b;margin-bottom:2rem}.cta-button{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:1rem 2rem;font-size:1.1rem;border-radius:50px;cursor:pointer;transition:all .3s ease;font-weight:700;box-shadow:0 8px 25px #ec489966}.cta-button:hover{transform:translateY(-3px);box-shadow:0 12px 35px #ec489980;background:linear-gradient(135deg,#db2777,#ea580c)}.primary-btn{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500;box-shadow:0 4px 15px #ec48994d}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ec489966}.secondary-btn{background:#fff;color:#ec4899;border:2px solid #ec4899;padding:.7rem 1.5rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500}.secondary-btn:hover{background:#ec4899;color:#fff;transform:translateY(-2px)}.edit-btn{background:#ec48991a;color:#ec4899;border:1px solid rgba(236,72,153,.3);padding:.5rem 1rem;border-radius:20px;cursor:pointer;transition:all .3s ease;font-size:.9rem}.edit-btn:hover{background:#ec489933}.save-btn{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:.8rem 2rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:600;box-shadow:0 4px 15px #ec48994d}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ec489966}.save-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#374151;font-weight:500}.form-group input{width:100%;padding:.8rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#f9fafb}.form-group input:focus{outline:none;border-color:#ec4899;background:#fff;box-shadow:0 0 0 3px #ec48991a}.form-group input.disabled-input{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-group small{color:#6b7280;font-size:.85rem;margin-top:.25rem;display:block}.card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1);transition:all .3s ease}.card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #ec489926}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h3{color:#374151;margin:0}.profile-sections{display:grid;gap:2rem}.profile-section{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1)}.profile-info{display:flex;gap:2rem;align-items:flex-start}.profile-avatar{flex-shrink:0}.avatar-large{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#f97316);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.8rem;font-weight:700;box-shadow:0 8px 25px #ec48994d}.profile-details{flex:1}.detail-item{margin-bottom:1.5rem}.detail-item label{display:block;color:#6b7280;font-size:.9rem;margin-bottom:.25rem}.detail-item span{color:#374151;font-weight:500}.profile-form{flex:1}.password-form{max-width:400px}.orders-list{display:grid;gap:1.5rem}.order-card{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1)}.order-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.order-info h3{margin:0 0 .25rem;color:#374151}.order-date{color:#6b7280;margin:0;font-size:.9rem}.order-status{padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase}.status-pending{background:#fef3c7;color:#d97706}.status-preparing{background:#dbeafe;color:#2563eb}.status-ready{background:#d1fae5;color:#059669}.status-delivered{background:#f3e8ff;color:#7c3aed}.order-items{margin-bottom:1rem}.order-item{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid #f9fafb}.item-image{width:60px;height:60px;border-radius:12px;object-fit:cover;flex-shrink:0}.item-details{flex:1}.item-details h4{margin:0 0 .25rem;color:#374151;font-size:.95rem}.item-details p{margin:0;color:#6b7280;font-size:.85rem}.item-price{font-weight:600;color:#ec4899}.order-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f3f4f6}.order-total{color:#374151;font-size:1.1rem}.order-actions{display:flex;gap:.75rem}@media (max-width: 768px){.page-content{padding:1rem}.page-header h1{font-size:2rem}.section-header{flex-direction:column;gap:1rem;align-items:stretch}.profile-info{flex-direction:column;text-align:center}.order-header{flex-direction:column;gap:1rem}.order-footer{flex-direction:column;gap:1rem;align-items:stretch}.order-actions{justify-content:center}}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.favorite-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1);transition:all .3s ease}.favorite-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px #ec489933}.favorite-image{position:relative;height:200px;overflow:hidden}.favorite-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.favorite-card:hover .favorite-image img{transform:scale(1.05)}.remove-favorite-btn{position:absolute;top:1rem;right:1rem;background:#ffffffe6;border:none;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:1.2rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.remove-favorite-btn:hover{background:#fff;transform:scale(1.1)}.favorite-content{padding:1.5rem}.favorite-content h3{margin:0 0 .5rem;color:#374151;font-size:1.2rem}.favorite-description{color:#6b7280;margin:0 0 1rem;font-size:.9rem;line-height:1.5}.favorite-footer{display:flex;justify-content:space-between;align-items:center}.favorite-price{font-size:1.3rem;font-weight:700;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.add-to-cart-btn{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:.7rem 1.2rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500;box-shadow:0 4px 15px #ec489966}.add-to-cart-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #ec489980}.favorites-summary{margin-top:3rem}.summary-card{background:#fff;border-radius:20px;padding:2rem;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1);text-align:center}.summary-card h3{margin:0 0 1.5rem;color:#374151}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:2rem}.stat-item{text-align:center}.stat-number{display:block;font-size:2rem;font-weight:700;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{color:#6b7280;font-size:.9rem;margin-top:.25rem}.add-all-btn{background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:1rem 2rem;border-radius:50px;cursor:pointer;transition:all .3s ease;font-weight:700;box-shadow:0 8px 25px #ec489966;font-size:1.1rem}.add-all-btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px #ec489980}.cart-layout{display:grid;grid-template-columns:1fr 400px;gap:3rem;align-items:start}.cart-items{display:grid;gap:1rem}.cart-item{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1);display:grid;grid-template-columns:80px 1fr auto auto auto;gap:1rem;align-items:center}.cart-item .item-image{width:80px;height:80px;border-radius:12px;overflow:hidden}.cart-item .item-image img{width:100%;height:100%;object-fit:cover}.cart-item .item-details h3{margin:0 0 .25rem;color:#374151;font-size:1.1rem}.cart-item .item-price{color:#6b7280;font-size:.9rem}.quantity-controls{display:flex;align-items:center;gap:.5rem;background:#f9fafb;border-radius:25px;padding:.25rem}.quantity-btn{background:#fff;border:1px solid #e5e7eb;border-radius:50%;width:32px;height:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:700;color:#ec4899;transition:all .3s ease}.quantity-btn:hover{background:#ec4899;color:#fff;border-color:#ec4899}.quantity{min-width:40px;text-align:center;font-weight:600;color:#374151}.cart-item .item-total{font-weight:700;color:#ec4899;font-size:1.1rem}.remove-btn{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.remove-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.cart-actions{margin-top:1rem;text-align:center}.clear-cart-btn{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3);padding:.7rem 1.5rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500}.clear-cart-btn:hover{background:#ef4444;color:#fff;border-color:#ef4444}.cart-summary{position:sticky;top:120px}.summary-line{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.summary-line:last-child{border-bottom:none}.summary-line.total-line{border-top:2px solid #f3f4f6;margin-top:1rem;padding-top:1rem;font-size:1.1rem}.summary-line .free{color:#10b981;font-weight:600}.checkout-btn{width:100%;background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:1rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:700;font-size:1.1rem;margin:1.5rem 0;box-shadow:0 8px 25px #ec489966;display:flex;align-items:center;justify-content:center;gap:.5rem}.checkout-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 35px #ec489980}.checkout-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-notice{text-align:center;color:#6b7280;font-size:.9rem;margin:0}.security-badges{display:grid;gap:.5rem;margin-top:1.5rem}.badge{background:#f9fafb;color:#6b7280;padding:.5rem;border-radius:8px;font-size:.85rem;text-align:center}.order-success{text-align:center;padding:4rem 2rem;background:#fff;border-radius:20px;box-shadow:0 8px 25px #ec48991a}.success-icon{font-size:4rem;margin-bottom:1rem}.order-success h2{color:#374151;margin-bottom:1rem}.order-success p{color:#6b7280;margin-bottom:1rem}@media (max-width: 1024px){.cart-layout{grid-template-columns:1fr;gap:2rem}.cart-summary{position:static}.summary-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.favorites-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:1fr;gap:1rem;text-align:center}.cart-item .item-image,.quantity-controls{justify-self:center}.summary-stats{grid-template-columns:1fr;gap:1rem}.profile-info{flex-direction:column;text-align:center;gap:1rem}.order-header,.order-footer{flex-direction:column;gap:1rem;align-items:stretch}.order-actions{justify-content:center}.order-item{flex-direction:column;text-align:center;gap:.5rem}.order-item .item-image{align-self:center}}@media (max-width: 480px){.page-content{padding:.5rem}.page-header h1{font-size:1.8rem}.cart-item,.profile-section,.order-card,.favorite-card .favorite-content{padding:1rem}}.stripe-checkout{max-width:600px;margin:0 auto;padding:2rem;background:#fff;border-radius:20px;box-shadow:0 8px 25px #ec48991a;border:1px solid rgba(236,72,153,.1)}.checkout-header{text-align:center;margin-bottom:2rem}.checkout-header h2{margin:0 0 .5rem;background:linear-gradient(135deg,#ec4899,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.8rem}.checkout-header p{color:#6b7280;margin:0}.order-summary{background:#f9fafb;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e5e7eb}.order-summary h3{margin:0 0 1rem;color:#374151;font-size:1.1rem}.order-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e5e7eb}.order-item:last-child{border-bottom:none}.order-total{margin-top:1rem;padding-top:1rem;border-top:2px solid #e5e7eb;text-align:right;font-size:1.2rem;color:#ec4899}.payment-form{display:grid;gap:2rem}.customer-info h3,.payment-info h3{margin:0 0 1rem;color:#374151;font-size:1.1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.customer-info input{width:100%;padding:.8rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#f9fafb;margin-bottom:1rem}.customer-info input:focus{outline:none;border-color:#ec4899;background:#fff;box-shadow:0 0 0 3px #ec48991a}.card-element-container{padding:1rem;border:2px solid #e5e7eb;border-radius:12px;background:#f9fafb;transition:all .3s ease}.card-element-container:focus-within{border-color:#ec4899;background:#fff;box-shadow:0 0 0 3px #ec48991a}.error-message{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;padding:1rem;border-radius:12px;text-align:center;font-weight:500;margin:1rem 0}.checkout-actions{display:flex;gap:1rem;margin-top:2rem}.cancel-btn{flex:1;background:#fff;color:#6b7280;border:2px solid #e5e7eb;padding:1rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500;font-size:1rem}.cancel-btn:hover{background:#f3f4f6;border-color:#d1d5db}.pay-btn{flex:2;background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border:none;padding:1rem;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:700;font-size:1.1rem;box-shadow:0 8px 25px #ec489966;display:flex;align-items:center;justify-content:center;gap:.5rem}.pay-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 12px 35px #ec489980;background:linear-gradient(135deg,#db2777,#ea580c)}.pay-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.security-info{display:flex;justify-content:center;gap:1rem;margin-top:2rem;flex-wrap:wrap}.security-badge{background:#f0fdf4;color:#166534;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500;border:1px solid #bbf7d0}.loading-spinner.small{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.stripe-checkout{padding:1rem;margin:1rem}.form-row{grid-template-columns:1fr}.checkout-actions{flex-direction:column}.security-info{flex-direction:column;align-items:center}}@media (max-width: 480px){.checkout-header h2{font-size:1.5rem}.order-summary{padding:1rem}.stripe-checkout{padding:.5rem}}
