*{margin:0;padding:0;box-sizing:border-box}:root{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--secondary-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--accent-gradient: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--text-light: #ffffff;--text-dark: #2c3e50;--shadow-sm: 0 4px 6px rgba(0, 0, 0, .1);--shadow-md: 0 10px 25px rgba(0, 0, 0, .15);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .2);--transition: all .3s cubic-bezier(.4, 0, .2, 1);--button-bg: #f8fafc;--button-border: rgba(15, 23, 42, .12);--button-hover-bg: #e2e8f0;--button-text: #1f2937}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;color:var(--text-dark);background-color:#f5f7ff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit!important;color:var(--button-text, #1f2937);-webkit-text-fill-color:var(--button-text, #1f2937)}a[class*=btn],a[class*=button],a.btn{color:var(--button-text, #1f2937);-webkit-text-fill-color:var(--button-text, #1f2937)}button *,a[class*=btn] *,a[class*=button] *,a.btn *{color:inherit;-webkit-text-fill-color:inherit}button:where(:not([class])){font-size:1rem;font-weight:600;line-height:1.25;border-radius:.75rem;padding:.65rem 1.25rem;border:1px solid var(--button-border, rgba(15, 23, 42, .12));background-color:var(--button-bg, #f8fafc);color:var(--button-text, #1f2937);cursor:pointer;transition:var(--transition)}button:where(:not([class])):hover:not(:disabled){background-color:var(--button-hover-bg, #e2e8f0)}button:where(:not([class])):disabled{opacity:.65;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes wave{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.auth-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out}.auth-modal{background:#fff;border-radius:20px;padding:2.5rem;max-width:450px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;cursor:pointer;color:#999;padding:.5rem;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#f5f5f5;color:var(--text-dark)}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h2{font-size:2rem;font-weight:800;margin-bottom:.5rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.scope-message{color:#667eea;font-size:.9rem;font-weight:600}.error-message{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fee;border-left:4px solid #e74c3c;border-radius:8px;margin-bottom:1.5rem;color:#c0392b;font-size:.9rem}.error-message svg{flex-shrink:0}.auth-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #f0f0f0}.tab{flex:1;padding:1rem;background:none;border:none;font-size:1rem;font-weight:600;color:#999;cursor:pointer;transition:all .3s ease;border-bottom:3px solid transparent;margin-bottom:-2px}.tab:hover{color:#667eea}.tab.active{color:#667eea;border-bottom-color:#667eea}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-weight:600;color:var(--text-dark);font-size:.9rem}.form-group input{padding:.875rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.otp-group{gap:.75rem}.otp-hint{font-size:.85rem;color:#4f46e5;background:#6366f11f;border:1px solid rgba(99,102,241,.25);border-radius:8px;padding:.75rem .9rem}.otp-reset{align-self:flex-start;padding:0;border:none;background:none;color:#6366f1;font-weight:600;cursor:pointer;font-size:.85rem}.otp-reset:disabled{opacity:.6;cursor:not-allowed}.otp-actions{display:flex;gap:.75rem;flex-wrap:wrap}.otp-actions .otp-reset{padding:.5rem .75rem;border-radius:8px;background:#6366f11a}.otp-actions .otp-reset:hover:not(:disabled){background:#6366f12e}.otp-pending{display:flex;flex-direction:column;gap:1rem}.submit-btn{padding:1rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scope-info{margin-top:1.5rem;padding:1rem;background:#f8f9fa;border-radius:12px;text-align:center}.scope-info p{color:#666;font-size:.9rem;margin:0}.link-btn{background:none;border:none;color:#667eea;font-weight:600;cursor:pointer;text-decoration:underline;padding:0;margin-left:.25rem}.link-btn:hover{color:#764ba2}@media (max-width: 480px){.auth-modal{padding:2rem 1.5rem}.auth-header h2{font-size:1.75rem}}.portal-hero{--portal-hero-accent: #38bdf8;width:100%;border-radius:1.75rem;padding:2.5rem;display:flex;flex-wrap:wrap;gap:2.5rem;color:#f8fafc;position:relative;overflow:hidden;box-shadow:0 35px 90px #02061780;background-color:#0f172a;background-image:var( --portal-hero-background, linear-gradient(135deg, #111827 0%, #0b1120 100%) )}.portal-hero:before,.portal-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.portal-hero:before{background:radial-gradient(circle at 15% 10%,rgba(255,255,255,.25),transparent 50%);opacity:.35;mix-blend-mode:screen}.portal-hero:after{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 2px,transparent 2px,transparent 4px),repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0px,rgba(255,255,255,.02) 1px,transparent 1px,transparent 3px);opacity:.3;mix-blend-mode:soft-light}.portal-hero__particles{position:absolute;top:-10%;right:-5%;bottom:-10%;left:-5%;pointer-events:none;overflow:hidden}.portal-hero__particle{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.07);opacity:.5;animation:portalHeroFloat 18s ease-in-out infinite;filter:blur(.5px)}.portal-hero__particle--alpha{width:220px;height:220px;top:5%;right:15%;animation-duration:26s}.portal-hero__particle--beta{width:120px;height:120px;top:40%;left:5%;animation-duration:18s;animation-delay:-4s}.portal-hero__particle--gamma{width:180px;height:180px;bottom:5%;right:5%;animation-duration:22s;animation-delay:-8s}.portal-hero__particle--delta{width:90px;height:90px;top:15%;left:35%;animation-duration:16s}.portal-hero__particle--epsilon{width:140px;height:140px;bottom:10%;left:18%;animation-duration:19s;animation-delay:-6s}.portal-hero__particle--zeta{width:70px;height:70px;top:55%;right:32%;animation-duration:15s}.portal-hero__content{flex:1 1 360px;position:relative;z-index:1;padding:1.5rem;border-radius:1.35rem;background:#0206178c;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.portal-hero__pretitle{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:.85rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.15em;color:#f8fafce6}.portal-hero__logo{width:42px;height:42px;border-radius:12px;object-fit:contain;border:1px solid rgba(248,250,252,.35);padding:.35rem;background:#0f172a73}.portal-hero__icon{font-size:1.6rem}.portal-hero__eyebrow{padding:.45rem .85rem;background:#0f172a66;border-radius:999px;font-weight:600;border:1px solid rgba(248,250,252,.2)}.portal-hero__title{font-size:clamp(1.9rem,4vw,3rem);margin-bottom:.45rem}.portal-hero__subtitle{font-size:1.2rem;margin-bottom:.75rem;color:#f8fafcd9}.portal-hero__description{margin-bottom:1.35rem;color:#f8fafcd9;max-width:52ch;line-height:1.55}.portal-hero__actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:1.25rem}.portal-hero__actions button,.portal-hero__actions a{background:#0f172a66;color:#fff;border:1px solid rgba(248,250,252,.35);padding:.75rem 1.5rem;border-radius:999px;font-weight:600;text-decoration:none;transition:transform .2s ease,background .2s ease,border .2s ease}.portal-hero__actions button:hover,.portal-hero__actions a:hover{background:#0f172a99;transform:translateY(-2px);border-color:#f8fafc8c}.portal-hero__actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}.portal-hero__highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.1rem}.portal-hero__highlight{padding:1rem;border-radius:1.1rem;background:#0f172a8c;border:1px solid rgba(248,250,252,.15);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.portal-hero__highlight dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#f8fafca6;margin-bottom:.35rem}.portal-hero__highlight dd{font-size:1.45rem;font-weight:700;margin:0;color:var(--portal-hero-accent)}.portal-hero__features{flex:1 1 280px;position:relative;z-index:1;display:flex;flex-wrap:wrap;align-content:flex-start;gap:.85rem;padding:1.4rem;border-radius:1.35rem;background:#02061773;border:1px solid rgba(248,250,252,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.portal-hero__feature-word{padding:.5rem 1rem;border-radius:999px;border:1px solid rgba(248,250,252,.25);background:#0f172a59;font-weight:600;font-size:.95rem;white-space:nowrap;color:#f8fafce6;box-shadow:0 6px 20px #02061759}@media (max-width: 900px){.portal-hero{padding:1.75rem}.portal-hero__content,.portal-hero__features{flex-basis:100%}}@media (max-width: 600px){.portal-hero__content,.portal-hero__features{padding:1.1rem}.portal-hero__actions button,.portal-hero__actions a{width:100%;text-align:center}}@keyframes portalHeroFloat{0%{transform:translateZ(0) scale(1);opacity:.4}50%{transform:translate3d(10px,-20px,0) scale(1.05);opacity:.8}to{transform:translateZ(0) scale(1);opacity:.4}}.home-page{position:relative;min-height:100vh;overflow:hidden}.wave1{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;animation:wave 25s cubic-bezier(.36,.45,.63,.53) infinite}.wave2{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;bottom:-10px;opacity:.15;animation:wave 20s cubic-bezier(.36,.45,.63,.53) -.125s infinite}.wave3{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;bottom:-20px;opacity:.2;animation:wave 30s cubic-bezier(.36,.45,.63,.53) -.25s infinite}.header{text-align:center;padding:3rem 0 4rem;animation:fadeInDown 1s ease-out;position:relative}.auth-section{position:absolute;top:0;right:0;z-index:10}.user-info{display:flex;align-items:center;gap:1rem;background:#fffffff2;padding:.75rem 1.5rem;border-radius:50px;box-shadow:0 4px 15px #0000001a}.welcome-text{color:var(--text-dark);font-weight:600;font-size:.95rem}.logout-btn,.login-btn{padding:.625rem 1.25rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:25px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.logout-btn:hover,.login-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.main-content{flex:1;display:flex;flex-direction:column;gap:3rem;padding:2rem 0 4rem;align-items:stretch}.section-heading{font-size:1.75rem;font-weight:600;color:#ffffffeb;text-transform:uppercase;letter-spacing:.18em;display:inline-flex;align-items:center;gap:.75rem;padding-left:.5rem}.workspace-heading{margin-top:.5rem}.nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem;width:100%}.workspace-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.nav-card{position:relative;background:#fffffff2;border-radius:30px;padding:3rem 2.5rem;text-align:center;color:var(--text-dark);overflow:hidden;box-shadow:var(--shadow-lg);transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:fadeInUp .8s ease-out both;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-card--workspace{border-radius:32px;padding:2.75rem 2.25rem}.rating-stars{display:inline-flex;align-items:center;gap:.25rem;color:#f5a623;--rating-star-empty: #d1d5db}.rating-stars__icon{width:1.1rem;height:1.1rem;fill:var(--rating-star-empty)}.rating-stars__icon.is-filled{fill:currentColor}.rating-stars__reviews{color:#4b5563;font-size:.875rem}.rating-stars--sm .rating-stars__icon{width:.9rem;height:.9rem}.rating-stars--sm .rating-stars__reviews{font-size:.75rem}.product-catalog{max-width:1400px;margin:0 auto;padding:2rem;min-height:calc(100vh - 80px)}.catalog-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.5rem;margin-bottom:2.5rem}.catalog-title{font-size:2.75rem;font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.35rem}.catalog-subtitle{font-size:1.1rem;color:#6b7280}.catalog-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.results-count{font-size:.95rem;color:#4b5563;background:#f3f4f6;padding:.5rem 1rem;border-radius:999px;font-weight:600}.sort-control{display:flex;align-items:center;gap:.5rem;background:#f9fafb;padding:.5rem .75rem;border-radius:999px;border:1px solid #e5e7eb}.sort-control label{font-size:.9rem;color:#4b5563;font-weight:600}.sort-control select{background:transparent;border:none;font-size:.9rem;color:#1f2937;font-weight:600;cursor:pointer}.sort-control select:focus{outline:none}.catalog-filters{margin-bottom:2rem;display:flex;flex-direction:column;gap:1.5rem}.search-box{position:relative;width:100%;max-width:540px}.search-box svg{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#9ca3af}.search-input{width:100%;padding:1rem 3.5rem 1rem 3rem;border:2px solid #e5e7eb;border-radius:14px;font-size:1rem;transition:all .3s ease}.search-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.clear-search-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:#e5e7eb;border:none;color:#374151;font-size:.8rem;font-weight:600;padding:.35rem .9rem;border-radius:999px;cursor:pointer;transition:background .2s ease}.clear-search-btn:hover{background:#d1d5db}.spinner--inline{width:24px;height:24px;margin:0;border-width:3px}.search-suggestions{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 20px 45px #0f172a26;z-index:25;overflow:hidden}.search-suggestions__loading,.search-suggestions__empty{padding:.75rem 1rem .75rem 3rem;display:flex;align-items:center;gap:.75rem;color:#4b5563;font-weight:600}.search-suggestions__empty{justify-content:flex-start}.search-suggestions ul{list-style:none;margin:0;padding:0;max-height:240px;overflow-y:auto}.search-suggestions__item button{width:100%;text-align:left;padding:.75rem 1rem .75rem 3rem;border:none;background:transparent;font-size:.95rem;color:#1f2937;cursor:pointer;transition:background-color .2s ease}.search-suggestions__item button:hover{background:#eef2ff;color:#312e81}.search-suggestions__item button.is-active{background:#e0e7ff;color:#1e1b4b}.category-filters{display:flex;justify-content:flex-start;gap:.75rem;flex-wrap:wrap}.category-btn{padding:.75rem 1.5rem;border:2px solid #e0e0e0;background:#fff;border-radius:25px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.category-btn:hover{border-color:#667eea;color:#667eea;transform:translateY(-2px)}.category-btn.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 4px 15px #667eea4d}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;animation:fadeIn .6s ease-out}.product-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.product-image-container{position:relative;width:100%;height:250px;overflow:hidden;background:#f5f5f5}.product-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-image{transform:scale(1.1)}.out-of-stock-badge{position:absolute;top:1rem;right:1rem;background:#e74c3c;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;box-shadow:0 2px 8px #e74c3c66}.product-info{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;flex:1}.product-info__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.inventory-badge{padding:.35rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.inventory-badge.available{background:#22c55e1f;color:#047857}.inventory-badge.unavailable{background:#f871711f;color:#b91c1c}.product-name{font-size:1.25rem;font-weight:700;color:var(--text-dark);line-height:1.4}.product-description{color:#666;font-size:.9rem;line-height:1.5;max-height:4.5rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.product-seller{margin-top:.35rem;font-size:.85rem;color:#4b5563;font-weight:500}.product-seller-rating{font-weight:600;color:#2563eb}.product-seller-badges{margin-top:.35rem;display:flex;flex-wrap:wrap;gap:.35rem}.product-seller-badge{background:#2563eb1a;color:#2563eb;font-size:.65rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.product-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.product-category{font-size:.85rem;font-weight:600;color:#4f46e5;background:#6366f11a;padding:.35rem .75rem;border-radius:999px}.sort-indicator{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.08em}.product-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;padding-top:1rem;border-top:1px solid #f0f0f0;gap:1rem}.product-pricing{display:flex;flex-direction:column;gap:.25rem}.product-price{font-size:1.5rem;font-weight:800;color:#667eea}.add-to-cart-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.add-to-cart-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.add-to-cart-btn:disabled{background:#ccc;cursor:not-allowed;box-shadow:none}.no-products{text-align:center;padding:4rem 2rem;color:var(--text-light);font-size:1.1rem;display:flex;flex-direction:column;gap:1.25rem;align-items:center}.reset-filters-btn{padding:.75rem 1.5rem;border-radius:10px;border:none;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.reset-filters-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea59}.product-image-nav{position:absolute;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;border:none;background:#00000073;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;font-size:1rem;line-height:1;transition:background .2s ease,transform .1s ease}.product-image-nav--prev{left:.75rem}.product-image-nav--next{right:.75rem}.product-image-nav:hover{background:#000000a6;transform:translateY(-50%) scale(1.05)}.loading-state,.error-state{text-align:center;padding:4rem 2rem;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.loading-state p,.error-state p{color:var(--text-light);font-size:1.1rem}.error-state p{color:#e74c3c}.retry-btn{padding:.75rem 1.5rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.retry-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.pagination{display:flex;justify-content:center;align-items:center;gap:1.5rem;padding:3rem 0;margin-top:2rem}.pagination-btn{padding:.75rem 1.5rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea4d}.pagination-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.pagination-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.pagination-info{font-size:1rem;color:var(--text-dark);font-weight:500}@media (max-width: 768px){.product-catalog{padding:1rem}.catalog-header{flex-direction:column;align-items:flex-start}.catalog-actions{width:100%;justify-content:space-between}.search-box{max-width:100%}.category-filters{justify-content:flex-start}.catalog-title{font-size:2rem}.catalog-subtitle{font-size:1rem}.products-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}}@media (max-width: 480px){.products-grid{grid-template-columns:1fr}.catalog-actions{flex-direction:column;align-items:stretch;gap:.75rem}.sort-control{justify-content:space-between}.product-footer{flex-direction:column;align-items:stretch;gap:.75rem}.add-to-cart-btn{width:100%;justify-content:center}}.product-detail-page{min-height:calc(100vh - 80px);background:#f8f9fa;padding:2rem}.product-detail-container{max-width:1400px;margin:0 auto}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff;border:2px solid #e0e0e0;border-radius:12px;font-size:1rem;font-weight:600;color:var(--text-dark);cursor:pointer;transition:all .3s ease;margin-bottom:2rem}.back-button:hover{border-color:#667eea;color:#667eea;transform:translate(-5px)}.product-detail-content{background:#fff;border-radius:20px;padding:3rem;box-shadow:var(--shadow-md);display:grid;grid-template-columns:1fr 1fr;gap:4rem}.product-image-section{display:flex;align-items:center;justify-content:center}.product-image-wrapper{position:relative;max-width:500px;width:100%;height:420px;padding:0;border:none;background:transparent;cursor:zoom-in;display:flex;align-items:center;justify-content:center}.product-detail-image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:16px;box-shadow:var(--shadow-md)}.product-info-section{display:flex;flex-direction:column;gap:1.5rem}.product-detail-name{font-size:2.5rem;font-weight:800;color:var(--text-dark);line-height:1.2}.product-detail-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.rating-text{font-size:1rem;color:#666;font-weight:600}.product-detail-price{font-size:3rem;font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.product-detail-price-meta{margin-top:.25rem;display:flex;gap:.75rem;align-items:baseline}.price-original{font-size:1rem;color:#6b7280;text-decoration:line-through}.price-savings{font-size:.95rem;color:#047857;font-weight:600}.seller-highlight{margin-top:.5rem;color:#4b5563;font-weight:600}.seller-highlight span{color:#111827}.seller-badges{margin-top:.35rem;display:flex;flex-wrap:wrap;gap:.4rem}.seller-badge{background:#3b82f61f;color:#1d4ed8;font-size:.7rem;font-weight:600;padding:.25rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.product-stock-status{margin:.5rem 0}.in-stock{color:#27ae60;font-weight:700;font-size:1.1rem}.out-of-stock{color:#e74c3c;font-weight:700;font-size:1.1rem}.product-detail-description{font-size:1.1rem;line-height:1.8;color:#666;padding:1.5rem 0;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.product-detail-specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;padding:1.5rem;background:#f9fafb;border-radius:16px}.product-detail-specifications{margin-top:2rem}.product-detail-specifications .section-title{margin-bottom:1rem}.specifications-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0}.specification-row{background:#0f172a0a;border:1px solid rgba(15,23,42,.06);border-radius:12px;padding:.75rem 1rem}.specification-row dt{font-weight:600;color:#1f2937;margin:0 0 .25rem;font-size:.9rem}.specification-row dd{margin:0;color:#475569;font-size:.85rem;word-break:break-word}.seller-selection{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.seller-options{display:flex;flex-direction:column;gap:.75rem}.seller-option{display:flex;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border:1px solid #e5e7eb;border-radius:12px;background:#fff;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.seller-option input{margin-top:.4rem}.seller-option.selected{border-color:#6366f1;box-shadow:0 6px 18px #6366f12e;transform:translateY(-2px)}.seller-option.disabled{cursor:not-allowed;opacity:.65}.seller-option-details{display:flex;flex-direction:column;gap:.35rem;width:100%}.seller-row{display:flex;justify-content:space-between;gap:.5rem;align-items:center}.seller-name{font-weight:700;color:#1f2937}.seller-price{font-weight:700;color:#4f46e5}.seller-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.85rem;color:#6b7280}.seller-option-badges{display:flex;flex-wrap:wrap;gap:.35rem}.seller-option-badge{background:#6366f11f;color:#4338ca;font-size:.7rem;font-weight:600;padding:.22rem .55rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.seller-error{color:#b91c1c;font-size:.9rem}.seller-loading,.seller-empty{font-size:.95rem;color:#4b5563}.spec{display:flex;flex-direction:column;gap:.35rem}.spec-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;font-weight:700}.spec-value{font-size:1rem;font-weight:600;color:#1f2937}.product-actions{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.quantity-selector{display:flex;align-items:center;gap:1rem}.quantity-selector label{font-weight:700;font-size:1.1rem}.quantity-controls-detail{display:flex;align-items:center;gap:1rem;background:#f5f5f5;padding:.75rem 1.5rem;border-radius:12px}.qty-btn{width:40px;height:40px;border:none;background:#fff;border-radius:8px;font-size:1.5rem;font-weight:700;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;color:#667eea;box-shadow:var(--shadow-sm)}.qty-btn:hover{background:#667eea;color:#fff;transform:scale(1.1)}.qty-display{font-weight:700;font-size:1.5rem;min-width:50px;text-align:center}.action-buttons{display:flex;gap:1rem;flex-wrap:wrap}.add-to-cart-detail-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.25rem 2rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.add-to-cart-detail-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.add-to-cart-detail-btn.added{background:#27ae60}.buy-now-btn{padding:1.25rem 2rem;border-radius:12px;border:2px solid #111827;background:#111827;color:#fff;-webkit-text-fill-color:#ffffff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.buy-now-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #1118274d}.buy-now-btn:disabled{background:#d1d5db;color:#6b7280;border-color:#d1d5db;cursor:not-allowed;box-shadow:none}.product-extras{margin-top:3rem;display:flex;flex-direction:column;gap:3rem}.section-header{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.5rem}.section-header h2{font-size:1.75rem;font-weight:700;color:#1f2937}.section-header p{color:#6b7280;font-size:.95rem}.related-grid,.recent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1.5rem}.related-card,.recent-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:16px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;box-shadow:0 2px 8px #0f172a0f;text-align:left}.related-card:hover,.recent-card:hover{transform:translateY(-3px);border-color:#6366f1;box-shadow:0 8px 20px #6366f12e}.related-card img,.recent-card img{width:100%;height:140px;object-fit:cover;border-radius:12px}.related-info,.recent-info{display:flex;flex-direction:column;gap:.35rem}.related-info h3,.recent-info h3{font-size:1rem;font-weight:700;color:#1f2937;line-height:1.3}.related-info span,.recent-info span{font-size:.95rem;font-weight:600;color:#4f46e5}.product-image-counter{position:absolute;right:.75rem;bottom:.75rem;padding:.25rem .6rem;border-radius:999px;background:#0009;color:#fff;font-size:.75rem;font-weight:600}.product-image-inline-nav{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:none;background:#fffffff2;color:#111827;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;box-shadow:0 4px 12px #0f172a66}.product-image-inline-nav--prev{left:.75rem}.product-image-inline-nav--next{right:.75rem}.product-not-found{min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2rem}.product-not-found h2{font-size:2rem;color:var(--text-dark)}.back-btn{padding:1rem 2rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.back-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.product-image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172abf;display:flex;align-items:center;justify-content:center;z-index:50}.product-image-lightbox__content{position:relative;max-width:90vw;max-height:90vh;padding:1.5rem;border-radius:16px;background:#0b1120;box-shadow:0 25px 50px #0f172acc}.product-image-lightbox__image-wrapper{position:relative;width:min(80vw,900px);height:min(75vh,600px);display:flex;align-items:center;justify-content:center}.product-image-lightbox__image{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:var(--shadow-lg)}.product-image-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:none;background:#fffffff2;color:#111827;border:1px solid rgba(15,23,42,.2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.5rem}.product-image-lightbox__nav--prev{left:.75rem}.product-image-lightbox__nav--next{right:.75rem}.product-image-lightbox__counter{position:absolute;right:.75rem;bottom:.75rem;padding:.3rem .75rem;border-radius:999px;background:#0f172acc;color:#e5e7eb;font-size:.8rem;font-weight:600}.product-image-lightbox__close{position:absolute;top:.25rem;right:.25rem;border:none;background:transparent;color:#e5e7eb;font-size:1.75rem;line-height:1;cursor:pointer}@media (max-width: 1024px){.product-detail-content{grid-template-columns:1fr;gap:2rem}}@media (max-width: 768px){.product-detail-page{padding:1rem}.product-detail-content{padding:2rem}.product-detail-name{font-size:2rem}.product-detail-price{font-size:2.5rem}.related-grid,.recent-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media (max-width: 480px){.product-detail-content{padding:1.5rem}.product-detail-name{font-size:1.5rem}.product-detail-price{font-size:2rem}.quantity-selector{flex-direction:column;align-items:flex-start}.action-buttons{flex-direction:column}.add-to-cart-detail-btn,.buy-now-btn{width:100%}.related-grid,.recent-grid{grid-template-columns:1fr}}.loading-state{text-align:center;padding:4rem 2rem;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid var(--primary-color, #667eea);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state p{color:var(--text-light);font-size:1.1rem}.cart-page{min-height:calc(100vh - 80px);background:#f8f9fa;padding:2rem}.cart-container{max-width:1400px;margin:0 auto}.cart-title{font-size:2.5rem;font-weight:800;margin-bottom:2rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cart-content{display:grid;grid-template-columns:1fr 400px;gap:2rem}.cart-items{display:flex;flex-direction:column;gap:1.5rem}.cart-item{background:#fff;border-radius:16px;padding:1.5rem;display:grid;grid-template-columns:120px 1fr auto;gap:1.5rem;box-shadow:var(--shadow-sm);transition:all .3s ease}.cart-item:hover{box-shadow:var(--shadow-md)}.cart-item-image{width:120px;height:120px;object-fit:cover;border-radius:12px}.cart-item-details{display:flex;flex-direction:column;gap:.5rem}.cart-item-name{font-size:1.25rem;font-weight:700;color:var(--text-dark)}.cart-item-seller{font-size:.9rem;color:#4b5563;margin:.25rem 0}.cart-seller-badges{display:flex;flex-wrap:wrap;gap:.35rem}.cart-seller-badge{background:#2563eb1a;color:#2563eb;font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.cart-item-description{color:#666;font-size:.9rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8rem;color:#6b7280}.cart-item-price{color:#667eea;font-weight:600;font-size:1.1rem}.cart-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:1rem;justify-content:space-between}.quantity-controls{display:flex;align-items:center;gap:1rem;background:#f5f5f5;padding:.5rem;border-radius:8px}.quantity-btn{width:32px;height:32px;border:none;background:#fff;border-radius:6px;font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;color:#667eea;font-weight:700}.quantity-btn:hover{background:#667eea;color:#fff}.quantity-display{font-weight:600;min-width:30px;text-align:center}.item-subtotal{font-size:1.5rem;font-weight:800;color:var(--text-dark)}.remove-btn{background:none;border:none;color:#e74c3c;cursor:pointer;padding:.5rem;transition:all .3s ease;border-radius:6px}.remove-btn:hover{background:#e74c3c1a;transform:scale(1.1)}.cart-summary{background:#fff;border-radius:16px;padding:2rem;box-shadow:var(--shadow-md);height:fit-content;position:sticky;top:100px}.summary-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-dark)}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;color:#666;font-size:1rem}.summary-row.total{font-size:1.5rem;font-weight:800;color:var(--text-dark);padding:1rem 0 0}.summary-divider{height:1px;background:#e0e0e0;margin:1rem 0}.checkout-btn{width:100%;padding:1rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:1.5rem;box-shadow:0 4px 15px #667eea4d}.checkout-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.continue-shopping-link{width:100%;padding:1rem;background:#fff;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem}.continue-shopping-link:hover{background:#f5f7ff}.cart-empty{min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.empty-cart-icon{display:inline-flex;align-items:center;justify-content:center;width:110px;height:110px;border-radius:50%;background:#6366f11f;color:#6366f1;margin-bottom:1rem}.empty-cart-icon svg{width:48px;height:48px}.cart-empty h2{font-size:2rem;margin-bottom:1rem;color:var(--text-dark)}.cart-empty p{font-size:1.2rem;color:#666;margin-bottom:2rem}.continue-shopping-btn{padding:1rem 2rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.continue-shopping-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media (max-width: 1024px){.cart-content{grid-template-columns:1fr}.cart-summary{position:static}}@media (max-width: 768px){.cart-page{padding:1rem}.cart-item{grid-template-columns:80px 1fr;gap:1rem}.cart-item-image{width:80px;height:80px}.cart-item-actions{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center}}@media (max-width: 480px){.cart-title{font-size:2rem}.cart-item{grid-template-columns:1fr;text-align:center}.cart-item-image{width:100%;height:200px;margin:0 auto}.cart-item-details{align-items:center}.cart-item-actions{grid-column:1}}.checkout-page{min-height:calc(100vh - 80px);background:#f8f9fa;padding:2rem}.checkout-container{max-width:1400px;margin:0 auto}.checkout-title{font-size:2.5rem;font-weight:800;margin-bottom:2rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.checkout-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:2rem;align-items:flex-start}.checkout-form{background:#fff;border-radius:18px;padding:2.25rem;box-shadow:var(--shadow-md);display:flex;flex-direction:column;gap:2.5rem}.form-section{display:flex;flex-direction:column;gap:1.5rem}.section-title{font-size:1.45rem;font-weight:700;color:var(--text-dark)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}.form-grid label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:var(--text-dark)}.form-grid input{width:100%;padding:.85rem 1rem;border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease}.form-grid input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.payment-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.payment-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.payment-card label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:#1f2937}.card-element{padding:.85rem 1rem;border-radius:10px;border:1px solid #d1d5db;background:#fff;transition:border-color .3s ease,box-shadow .3s ease}.card-element:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11f}.card-element .StripeElement{padding:.25rem 0}.stripe-disclaimer{font-size:.9rem;color:#6b7280;background:#eef2ff;border-radius:10px;padding:1rem 1.25rem}.payment-error{background:#ef44441a;color:#b91c1c;border-radius:10px;padding:.85rem 1rem;font-weight:600}.place-order-btn{width:100%;padding:1.15rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:1.15rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center}.place-order-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #6366f14d}.place-order-btn:disabled{opacity:.7;cursor:not-allowed}.order-summary{background:#fff;border-radius:18px;padding:2rem;box-shadow:var(--shadow-md);position:sticky;top:2rem;display:flex;flex-direction:column;gap:1.5rem}.summary-items{max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.summary-item{display:grid;grid-template-columns:64px 1fr auto;gap:1rem;align-items:center}.summary-item img{width:64px;height:64px;object-fit:cover;border-radius:12px;box-shadow:0 4px 10px #0f172a14}.summary-item-name{font-weight:600;color:#1f2937}.summary-item-qty{font-size:.85rem;color:#6b7280}.summary-item-price{font-weight:700;color:#4f46e5}.summary-totals{display:flex;flex-direction:column;gap:.75rem}.summary-row{display:flex;justify-content:space-between;color:#4b5563;font-weight:600}.summary-row.total{font-size:1.35rem;color:#111827;font-weight:800;margin-top:.75rem}.summary-divider{height:1px;background:#e5e7eb}.checkout-empty{min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;text-align:center}.checkout-empty h2{font-size:2rem;color:var(--text-dark)}.shop-btn{padding:1rem 2rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:12px;font-size:1.05rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.shop-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px #6366f14d}@media (max-width: 1024px){.checkout-content{grid-template-columns:1fr}.order-summary{position:static}}@media (max-width: 768px){.checkout-page{padding:1.25rem}.checkout-form{padding:1.75rem}.form-grid{grid-template-columns:1fr}}@media (max-width: 480px){.checkout-page{padding:1rem}.checkout-title{font-size:2rem}.order-summary,.checkout-form{padding:1.5rem}.payment-inline{grid-template-columns:1fr}}.order-confirmation-page{min-height:calc(100vh - 80px);display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.confirmation-container{background:#fff;border-radius:20px;padding:4rem 3rem;max-width:600px;width:100%;box-shadow:0 20px 60px #0000004d;text-align:center;animation:fadeInUp .6s ease-out}.success-icon{width:100px;height:100px;margin:0 auto 2rem;background:linear-gradient(135deg,#27ae60,#2ecc71);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:scaleIn .5s ease-out .2s both}.success-icon svg{stroke:#fff;stroke-width:3}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.confirmation-title{font-size:2.5rem;font-weight:800;margin-bottom:1rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.confirmation-message{font-size:1.1rem;color:#666;margin-bottom:2rem;line-height:1.6}.order-details{background:#f8f9fa;border-radius:12px;padding:2rem;margin:2rem 0;text-align:left}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e0e0e0}.detail-row:last-child{border-bottom:none;padding-top:1rem;margin-top:.5rem}.detail-label{font-weight:600;color:#666}.detail-value{font-weight:700;color:var(--text-dark)}.total-amount{font-size:1.5rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.confirmation-info{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;background:#e3f2fd;border-radius:12px;margin:2rem 0;color:#1976d2}.confirmation-info svg{flex-shrink:0}.confirmation-info p{text-align:left;line-height:1.6}.action-buttons{display:flex;gap:1rem;margin-top:2rem}.continue-btn,.home-btn{flex:1;padding:1rem 2rem;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.continue-btn{background:var(--primary-gradient);color:#fff;box-shadow:0 4px 15px #667eea4d}.continue-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.home-btn{background:#fff;color:#667eea;border:2px solid #667eea}.home-btn:hover{background:#f5f7ff}.home-btn.secondary{border-color:#e5e7eb;color:#1f2937}.home-btn.secondary:hover{background:#f3f4f6}.no-order{min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2rem}.no-order h2{font-size:2rem;color:var(--text-dark)}.shop-btn{padding:1rem 2rem;background:var(--primary-gradient);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.shop-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media (max-width: 768px){.confirmation-container{padding:3rem 2rem}.confirmation-title{font-size:2rem}.action-buttons{flex-direction:column}}@media (max-width: 480px){.confirmation-container{padding:2rem 1.5rem}.confirmation-title{font-size:1.75rem}.success-icon{width:80px;height:80px}.success-icon svg{width:60px;height:60px}}.otp-security{background:#fff;border-radius:16px;padding:1.75rem;box-shadow:0 18px 40px #0f172a14;display:flex;flex-direction:column;gap:1.25rem}.otp-security__header{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start}.otp-security__header h2{margin:0;color:#0f172a;font-size:1.35rem}.otp-security__header p{margin:.4rem 0 0;color:#475569;font-size:.95rem}.otp-security__actions{display:flex;gap:.75rem;flex-wrap:wrap}.otp-security__channel{display:flex;flex-direction:column;gap:.3rem;font-weight:600;color:#1f2937}.otp-security__channel select{border-radius:999px;border:1px solid rgba(148,163,184,.5);padding:.45rem 1rem;font-size:.9rem;background:#fff;color:#1f2937}.otp-security__channel select:disabled{background:#f1f5f9;color:#9ca3af;cursor:not-allowed}.otp-security__button{border:none;border-radius:999px;padding:.6rem 1.3rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.otp-security__button.primary{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff}.otp-security__button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 22px #2563eb40}.otp-security__button.secondary{background:#2563eb1f;color:#1d4ed8}.otp-security__button.secondary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #2563eb2e}.otp-security__button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.otp-security__message{padding:.75rem 1rem;border-radius:12px;font-weight:500}.otp-security__message--success{background:#10b98126;color:#047857}.otp-security__message--error{background:#f871712e;color:#b91c1c}.otp-security__message--info{background:#3b82f61f;color:#1d4ed8}.otp-security__status-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.otp-security__status{padding:1rem 1.25rem;border-radius:14px;border:1px solid rgba(148,163,184,.35);background:#f8fafce6;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.otp-security__status-label{font-weight:600;color:#0f172a}.otp-security__status-description{display:block;margin-top:.25rem;font-size:.85rem;color:#64748b}.otp-security__badge{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;padding:.3rem .7rem;border-radius:999px}.otp-security__badge--success{background:#10b9812e;color:#047857}.otp-security__badge--pending{background:#3b82f62e;color:#1d4ed8}.otp-security__badge--warning{background:#f8717133;color:#b91c1c}.otp-security__form{display:flex;flex-direction:column;gap:.75rem}.otp-security__form-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.otp-security__form-row input{flex:1 1 200px;border-radius:10px;border:1px solid rgba(148,163,184,.6);padding:.75rem;font-size:1rem}.otp-security__form-row input:disabled{background:#f8fafc}.otp-security__form-actions{display:flex;gap:.5rem}.otp-security__hint{font-size:.85rem;color:#475569}@media (max-width: 768px){.otp-security__header{flex-direction:column;align-items:flex-start}.otp-security__actions{width:100%}.otp-security__form-row{flex-direction:column;align-items:stretch}.otp-security__form-actions{justify-content:flex-start}}.profile-container{max-width:800px;margin:2rem auto;padding:0 1rem}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.profile-header h1{font-size:2rem;color:#333;margin:0}.edit-btn{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.edit-btn:hover{background-color:#0056b3}.success-message{padding:1rem;background-color:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:8px;margin-bottom:1rem}.error-message{padding:1rem;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:8px;margin-bottom:1rem}.profile-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.profile-otp-settings{margin:0 0 2rem}.profile-info{display:flex;flex-direction:column;gap:1.5rem}.info-row{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row label{font-weight:600;color:#666;min-width:140px}.info-row span{color:#333;font-size:1rem}.scope-badge{display:inline-block;padding:.25rem .75rem;background-color:#007bff;color:#fff;border-radius:12px;font-size:.875rem;font-weight:500}.profile-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:#333;font-size:.95rem}.form-group input{padding:.75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#007bff}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.form-actions{display:flex;gap:1rem;margin-top:1rem}.save-btn{flex:1;padding:.75rem 1.5rem;background-color:#28a745;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.save-btn:hover:not(:disabled){background-color:#218838}.save-btn:disabled{background-color:#6c757d;cursor:not-allowed}.cancel-btn{flex:1;padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.cancel-btn:hover:not(:disabled){background-color:#5a6268}.cancel-btn:disabled{cursor:not-allowed;opacity:.6}.profile-actions{display:flex;gap:1rem}.view-orders-btn{flex:1;padding:.75rem 1.5rem;background-color:#17a2b8;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.view-orders-btn:hover{background-color:#138496}.back-btn{flex:1;padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.profile-loading,.profile-error{text-align:center;padding:3rem;color:#666}.retry-btn{margin-top:1rem;padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.preferences-card{margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem}.preferences-header{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start}.preferences-header h2{margin:0;color:#1f2937}.preferences-header p{margin:.5rem 0 0;color:#6b7280;font-size:.95rem;max-width:32rem}.preferences-save-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;border:none;border-radius:999px;font-weight:600;cursor:pointer;height:fit-content;transition:transform .2s ease,box-shadow .2s ease}.preferences-save-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #6366f140}.preferences-save-btn:disabled{opacity:.7;cursor:not-allowed}.preferences-message{padding:.75rem 1rem;border-radius:12px;background:#3b82f61a;color:#1d4ed8;font-weight:500}.preferences-loading,.preferences-empty{text-align:center;color:#6b7280;padding:1.5rem 0}.preferences-table{display:flex;flex-direction:column;gap:1.75rem}.preference-group{border:1px solid rgba(15,23,42,.08);border-radius:16px;padding:1.5rem;background:#f8fafcb3}.preference-type{margin-bottom:1rem}.preference-type h3{margin:0;font-size:1rem;text-transform:capitalize;color:#1f2937}.preference-type-hint{display:block;margin-top:.4rem;font-size:.85rem;color:#6b7280}.preference-channels{display:flex;flex-wrap:wrap;gap:.75rem}.preference-channel{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:999px;background:#ffffffe6;border:1px solid rgba(148,163,184,.4);font-size:.85rem;text-transform:capitalize}.preference-channel input{accent-color:#4f46e5}.preference-channel.mandatory{background:#0f172a0f}.preference-tag{background:#4f46e533;color:#4f46e5;font-size:.7rem;padding:.15rem .45rem;border-radius:999px;font-weight:600}@media (max-width: 768px){.profile-header{flex-direction:column;align-items:flex-start;gap:1rem}.info-row{flex-direction:column;align-items:flex-start;gap:.5rem}.info-row label{min-width:auto}.form-actions,.profile-actions{flex-direction:column}}.orders-container{max-width:1200px;margin:2rem auto;padding:0 1rem}.orders-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.orders-header h1{font-size:2rem;color:#333;margin:0}.error-message{padding:1rem;background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:8px;margin-bottom:1rem;display:flex;flex-direction:column;gap:1rem}.retry-btn{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s;align-self:flex-start}.retry-btn:hover{background-color:#0056b3}.orders-loading{text-align:center;padding:3rem;color:#666;font-size:1.1rem}.no-orders{text-align:center;padding:3rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.no-orders p{font-size:1.1rem;color:#666;margin-bottom:1.5rem}.shop-now-btn{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.shop-now-btn:hover{background-color:#0056b3}.orders-list{display:grid;gap:1.5rem;margin-bottom:2rem}.order-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.order-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.order-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e9ecef}.order-info h3{font-size:1.25rem;color:#333;margin:0 0 .5rem}.order-date{color:#666;font-size:.9rem;margin:0}.order-status{padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize}.order-card-body{margin-bottom:1rem}.order-total{display:flex;justify-content:space-between;align-items:center;font-size:1rem}.order-total span:first-child{color:#666;font-weight:500}.total-amount{font-size:1.25rem;font-weight:700;color:#333}.order-card-footer{display:flex;justify-content:flex-end}.view-order-btn{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.view-order-btn:hover{background-color:#0056b3}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:2rem 0}.pagination-btn{padding:.75rem 1.5rem;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.pagination-btn:hover:not(:disabled){background-color:#0056b3}.pagination-btn:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.6}.pagination-info{font-size:1rem;color:#666}@media (max-width: 768px){.orders-header{flex-direction:column;align-items:flex-start;gap:1rem}.orders-header .back-btn{align-self:flex-end}.order-card-header{flex-direction:column;gap:1rem}.order-status{align-self:flex-start}.pagination{flex-direction:column;gap:.5rem}}.order-detail-container{max-width:1200px;margin:2rem auto;padding:0 1rem}.order-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.order-detail-header h1{font-size:2rem;color:#333;margin:0 0 .5rem}.order-number{font-size:1.1rem;color:#666;margin:0}.back-btn{padding:.75rem 1.5rem;background-color:#6c757d;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s}.back-btn:hover{background-color:#5a6268}.order-detail-loading,.order-detail-error{text-align:center;padding:3rem;color:#666;font-size:1.1rem}.order-detail-error p{margin-bottom:1rem}.order-detail-content{display:grid;gap:2rem}.order-info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.info-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.info-card h2{font-size:1.25rem;color:#333;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e9ecef}.order-status-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:capitalize;margin-bottom:1rem}.status-delivered{background-color:#d4edda;color:#155724}.status-shipped{background-color:#cfe2ff;color:#084298}.status-processing{background-color:#fff3cd;color:#664d03}.status-pending{background-color:#f8d7da;color:#842029}.status-cancelled{background-color:#f8d7da;color:#721c24}.tracking-info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;background-color:#f8f9fa;border-radius:8px}.tracking-info label{font-weight:600;color:#666;font-size:.9rem}.tracking-info span{color:#333;font-family:monospace;font-size:1rem}.order-dates{display:flex;flex-direction:column;gap:.75rem}.order-dates>div{display:flex;flex-direction:column;gap:.25rem}.order-dates label{font-weight:600;color:#666;font-size:.9rem}.order-dates span{color:#333;font-size:.95rem}.address-info{display:flex;flex-direction:column;gap:.5rem}.address-info p{margin:0;color:#333;line-height:1.5}.order-items-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.order-items-section h2{font-size:1.25rem;color:#333;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e9ecef}.order-items-list{display:flex;flex-direction:column;gap:1rem}.order-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;background-color:#f8f9fa;border-radius:8px}.item-info h3{font-size:1.1rem;color:#333;margin:0 0 .5rem}.item-quantity{color:#666;font-size:.9rem;margin:0}.item-price{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.item-price>span:first-child{color:#666;font-size:.9rem}.item-total{color:#333;font-weight:700;font-size:1.1rem}.order-summary-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.order-summary-section h2{font-size:1.25rem;color:#333;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e9ecef}.summary-details{display:flex;flex-direction:column;gap:.75rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.summary-row span:first-child{color:#666;font-weight:500}.summary-row span:last-child{color:#333;font-weight:600}.summary-row.total{border-top:2px solid #e9ecef;padding-top:1rem;margin-top:.5rem}.summary-row.total span{font-size:1.25rem;font-weight:700;color:#333}@media (max-width: 768px){.order-detail-header{flex-direction:column;gap:1rem}.order-info-section{grid-template-columns:1fr}.order-item{flex-direction:column;gap:1rem}.item-price{align-items:flex-start}}.notifications-wrapper{position:relative}.notifications-toggle{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:none;background:#0f172a0f;cursor:pointer;color:#0f172a;transition:background .2s ease,transform .2s ease}.notifications-toggle:hover,.notifications-toggle.open{background:#4f46e514;transform:translateY(-1px)}.notifications-badge{position:absolute;top:4px;right:6px;min-width:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:600;line-height:18px;text-align:center;box-shadow:0 0 0 2px #fff}.notifications-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:min(360px,90vw);background:#fff;border-radius:16px;box-shadow:0 20px 40px -20px #0f172a4d;border:1px solid rgba(15,23,42,.08);padding:1.25rem;z-index:50}.notifications-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.notifications-header h3{margin:0;font-size:1.1rem;color:#0f172a}.notifications-header p{margin:.25rem 0 0;color:#64748b;font-size:.85rem}.mark-all-btn{border:none;background:#4f46e51f;color:#4f46e5;padding:.4rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s ease}.mark-all-btn:hover{background:#4f46e533}.notifications-body{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.notifications-loading,.notifications-error,.notifications-empty{text-align:center;color:#475569;font-size:.9rem}.retry-btn{margin-top:.75rem;background:#4f46e5;color:#fff;border:none;padding:.5rem 1rem;border-radius:12px;cursor:pointer;font-size:.85rem;transition:background .2s ease}.retry-btn:hover{background:#4338ca}.notifications-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.notification-item{display:flex;gap:.75rem;padding:.75rem;border-radius:14px;border:1px solid rgba(15,23,42,.06);background:#f8fafc99;transition:background .2s ease,border .2s ease}.notification-item.unread{background:#4f46e514;border-color:#4f46e52e}.notification-content{flex:1;min-width:0}.notification-title{font-weight:600;color:#0f172a;margin-bottom:.25rem;font-size:.95rem}.notification-body{margin:0;color:#475569;font-size:.85rem;line-height:1.4}.notification-timestamp{display:inline-block;margin-top:.4rem;font-size:.75rem;color:#94a3b8}.mark-read-btn{border:none;background:transparent;color:#64748b;font-size:.8rem;cursor:pointer;padding:.2rem .4rem;border-radius:8px;height:fit-content;transition:background .2s ease,color .2s ease}.mark-read-btn:hover{background:#4f46e51f;color:#4f46e5}.notifications-footer{margin-top:1rem;display:flex;justify-content:center}.view-more-btn{border:none;background:#4f46e51f;color:#4f46e5;padding:.5rem 1rem;border-radius:12px;font-weight:600;cursor:pointer;transition:background .2s ease}.view-more-btn:hover{background:#4f46e533}@media (max-width: 640px){.notifications-dropdown{right:auto;left:50%;transform:translate(-50%)}}.retail-navbar{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 2px 10px #0000001a}.navbar-container{max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.navbar-left{display:flex;align-items:center;gap:1rem}.home-btn{background:none;border:none;padding:.5rem;cursor:pointer;color:#667eea;transition:all .3s ease;border-radius:8px;display:flex;align-items:center;justify-content:center}.home-btn:hover{background:#667eea1a;transform:scale(1.1)}.brand-link{display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--text-dark);transition:opacity .3s ease}.brand-link:hover{opacity:.8}.navbar-logo{height:40px;object-fit:contain}.brand-text{font-size:1.5rem;font-weight:700;color:#4c51bf}.navbar-right{display:flex;align-items:center;gap:1.5rem}.navbar-user-info{display:flex;align-items:center;gap:1rem}.navbar-profile-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#667eea1a;color:var(--text-dark);border-radius:20px;text-decoration:none;transition:all .3s ease}.navbar-profile-link:hover{background:#667eea33;transform:translateY(-1px)}.navbar-profile-link svg{flex-shrink:0}.navbar-welcome{color:var(--text-dark);font-weight:600;font-size:.95rem}.navbar-orders-link{display:flex;align-items:center;justify-content:center;padding:.5rem;background:#667eea1a;color:var(--text-dark);border-radius:8px;text-decoration:none;transition:all .3s ease}.navbar-orders-link:hover{background:#667eea33;transform:translateY(-1px)}.navbar-logout-btn,.navbar-login-btn{padding:.5rem 1rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border:none;border-radius:20px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea4d}.navbar-logout-btn:hover,.navbar-login-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.cart-button{position:relative;display:flex;align-items:center;justify-content:center;padding:.75rem;background:var(--primary-gradient);color:#fff;-webkit-text-fill-color:#ffffff;border-radius:12px;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.cart-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.cart-badge{position:absolute;top:-8px;right:-8px;background:#e74c3c;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:12px;min-width:20px;text-align:center;box-shadow:0 2px 8px #e74c3c66;animation:pulse 2s ease-in-out infinite}@media (max-width: 768px){.navbar-container{padding:1rem}.brand-text{font-size:1.2rem}.navbar-logo{height:32px}}@media (max-width: 768px){.navbar-user-info{gap:.5rem}.navbar-profile-link{padding:.5rem .75rem}.navbar-welcome{font-size:.85rem}}@media (max-width: 480px){.brand-text,.navbar-welcome{display:none}.navbar-profile-link svg{margin:0}}.otp-notice{position:relative;display:flex;gap:1rem;align-items:flex-start;background:linear-gradient(135deg,#0f172aeb,#1e40afe6);border:1px solid rgba(129,140,248,.45);border-radius:16px;padding:1rem 1.25rem;width:min(960px,calc(100% - 2rem));margin:1rem auto;box-shadow:0 18px 45px -20px #0f172abf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.otp-notice__icon{font-size:1.35rem;line-height:1;margin-top:.25rem}.otp-notice__content{flex:1;display:flex;flex-direction:column;gap:.35rem}.otp-notice__heading{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;color:#e5e7eb}.otp-notice__heading strong{font-size:1rem;letter-spacing:.02em}.otp-notice__status{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:.25rem .6rem;border-radius:999px;background:#2563eb38;color:#bfdbfe;border:1px solid rgba(191,219,254,.35)}.otp-notice__status--verified{background:#16a34a40;color:#bbf7d0;border-color:#22c55e8c}.otp-notice__status--pending{background:#eab30838;color:#fef9c3;border-color:#facc15a6}.otp-notice__status--unverified{background:#f871713d;color:#fee2e2;border-color:#f87171b3}.otp-notice__content p{margin:0;color:#cbd5f5;font-size:.95rem}.otp-notice__actions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.otp-notice__cta,.otp-notice__refresh,.otp-notice__dismiss{border-radius:999px;padding:.6rem 1.2rem;font-weight:600;border:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;font-size:.85rem}.otp-notice__cta{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.otp-notice__cta:hover{transform:translateY(-1px);box-shadow:0 12px 24px #3b82f640}.otp-notice__refresh{background:#3b82f626;color:#bfdbfe}.otp-notice__refresh:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 20px #3b82f633}.otp-notice__refresh:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.otp-notice__dismiss{background:#0f172a73;color:#e5e7eb}.otp-notice__dismiss:hover{transform:translateY(-1px);box-shadow:0 10px 20px #47556933}@media (max-width: 768px){.otp-notice{flex-direction:column;align-items:stretch;width:calc(100% - 1.5rem);padding:1rem}.otp-notice__actions{flex-direction:row;justify-content:flex-end;flex-wrap:wrap}.otp-notice__cta,.otp-notice__refresh{flex:1;justify-content:center}}.retail-website{min-height:100vh;background:#f8f9fa}.retail-content{min-height:calc(100vh - 80px)}.retail-otp-notice{margin:.75rem auto 1.5rem}.retail-otp-notice .otp-notice__cta{background:linear-gradient(135deg,#2563eb,#38bdf8)}.family-tree-page{min-height:100vh;background:linear-gradient(135deg,#f093fb,#f5576c);padding:2rem}.family-tree-container{max-width:800px;margin:0 auto}.back-home-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.3);border-radius:12px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:2rem}.back-home-btn:hover{background:#ffffff4d;transform:translate(-5px)}.coming-soon-content{background:#fff;border-radius:20px;padding:4rem 3rem;text-align:center;box-shadow:0 20px 60px #0000004d;animation:fadeInUp .6s ease-out}.tree-icon{font-size:6rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}.coming-soon-title{font-size:3rem;font-weight:800;margin-bottom:.5rem;background:linear-gradient(135deg,#f093fb,#f5576c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.coming-soon-subtitle{font-size:1.5rem;color:#f5576c;font-weight:600;margin-bottom:2rem;text-transform:uppercase;letter-spacing:2px}.coming-soon-description{font-size:1.1rem;color:#666;line-height:1.8;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.features-preview{background:#f8f9fa;border-radius:16px;padding:2rem;margin:2rem 0;text-align:left}.features-preview h3{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-dark);text-align:center}.features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.features-list li{display:flex;align-items:center;gap:1rem;font-size:1.1rem;color:#666;padding:.75rem;background:#fff;border-radius:8px;transition:all .3s ease}.features-list li:hover{transform:translate(10px);box-shadow:var(--shadow-sm)}.features-list li svg{flex-shrink:0;stroke:#27ae60}.home-button{padding:1rem 2rem;background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:2rem;box-shadow:0 4px 15px #f5576c4d}.home-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5576c66}@media (max-width: 768px){.coming-soon-content{padding:3rem 2rem}.coming-soon-title{font-size:2.5rem}.tree-icon{font-size:5rem}}@media (max-width: 480px){.family-tree-page{padding:1rem}.coming-soon-content{padding:2rem 1.5rem}.coming-soon-title{font-size:2rem}.tree-icon{font-size:4rem}}.portal-login{--portal-login-base: linear-gradient(135deg, #0f172a 0%, #111320 55%, #070b15 100%);--portal-login-accent: #38bdf8;--portal-login-accent-rgb: 56, 189, 248;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:3.5rem 1.5rem;position:relative;overflow:hidden;background-color:#020617;background-image:radial-gradient(circle at 25% 20%,rgba(59,130,246,.25),transparent 45%),radial-gradient(circle at 80% 0%,rgba(14,165,233,.15),transparent 50%),radial-gradient(circle at 10% 120%,rgba(96,165,250,.15),transparent 50%),var(--portal-login-base)}.portal-login:before,.portal-login:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.portal-login:before{background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0,rgba(255,255,255,.02) 3px,transparent 3px,transparent 6px),repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0,rgba(255,255,255,.015) 2px,transparent 2px,transparent 5px);opacity:.35;mix-blend-mode:soft-light}.portal-login:after{background:radial-gradient(circle at center,#02061700 35%,#020617cc);mix-blend-mode:multiply}.portal-login__layout{width:min(1180px,100%);display:flex;flex-wrap:wrap;gap:2rem;align-items:stretch;position:relative;z-index:1}.portal-login__hero{flex:1 1 420px;min-width:300px}.portal-login__card{flex:1 1 360px;width:min(460px,100%);background:#020617a6;border-radius:1.65rem;padding:2.35rem;border:1px solid rgba(148,163,184,.25);box-shadow:0 40px 90px #020617a6;color:#e2e8f0;-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}.portal-login__badge{display:inline-block;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:600;color:var(--portal-login-accent);background:rgba(var(--portal-login-accent-rgb),.15);padding:.35rem .75rem;border-radius:999px;margin-bottom:1rem;border:1px solid rgba(var(--portal-login-accent-rgb),.4)}.portal-login__header h1{margin:0;font-size:2rem;font-weight:700;color:#f8fafc}.portal-login__description{margin-top:.75rem;color:#94a3b8;line-height:1.6}.portal-login__allowed{margin-top:1rem;font-size:.85rem;color:#cbd5f5}.portal-login__form{margin-top:2rem;display:grid;gap:.85rem}.portal-login__form-label{font-size:.85rem;font-weight:600;color:#cbd5f5}.portal-login__form input{border-radius:.95rem;border:1px solid rgba(148,163,184,.35);background:#0f172a99;padding:.85rem 1rem;color:#f8fafc;font-size:1rem;transition:border .2s ease,box-shadow .2s ease}.portal-login__form input:focus{outline:none;border-color:rgba(var(--portal-login-accent-rgb),.85);box-shadow:0 0 0 3px rgba(var(--portal-login-accent-rgb),.35)}.portal-login__error{margin-top:.5rem;border-radius:.85rem;border:1px solid rgba(248,113,113,.45);padding:.75rem 1rem;background:#f8717126;color:#fecdd3;font-size:.9rem}.portal-login__otp-block{margin-top:.5rem;display:grid;gap:.65rem}.portal-login__otp-hint{margin:0;font-size:.85rem;color:#cbd5f5;background:rgba(var(--portal-login-accent-rgb),.18);border-radius:.85rem;padding:.75rem .95rem;border:1px solid rgba(var(--portal-login-accent-rgb),.35)}.portal-login__submit{margin-top:.75rem;border:none;border-radius:.95rem;background-image:linear-gradient(135deg,rgba(var(--portal-login-accent-rgb),1),#6366f1cc);color:#f8fafc;font-weight:600;padding:1rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 18px 45px #0f172aa6}.portal-login__submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 20px 55px #0f172ab3}.portal-login__submit:disabled{cursor:not-allowed;opacity:.7}.portal-login__footer{margin-top:1.75rem;display:flex;justify-content:space-between;gap:.85rem}.portal-login__secondary{flex:1;border:none;border-radius:.9rem;padding:.75rem 1rem;background:#94a3b833;color:#e2e8f0;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.portal-login__secondary:hover{background:#94a3b84d;transform:translateY(-1px)}.portal-login__secondary--ghost{background:transparent;border:1px solid rgba(148,163,184,.35)}.portal-login__secondary--ghost:hover{background:#94a3b81f}@media (max-width: 1024px){.portal-login__layout{gap:1.5rem}}@media (max-width: 768px){.portal-login{padding:2.5rem 1.25rem}.portal-login__hero{flex-basis:100%}.portal-login__card{padding:2rem}}@media (max-width: 640px){.portal-login__card{padding:1.85rem}.portal-login__header h1{font-size:1.6rem}.portal-login__footer{flex-direction:column}}.portal-login-customer{--portal-login-base: linear-gradient(135deg, #3b0764 0%, #312e81 55%, #1d4ed8 100%);--portal-login-accent: #a5b4fc;--portal-login-accent-rgb: 165, 180, 252}.portal-login-seller{--portal-login-base: linear-gradient(135deg, #022c22 0%, #065f46 55%, #14b8a6 100%);--portal-login-accent: #34d399;--portal-login-accent-rgb: 52, 211, 153}.portal-login-delivery{--portal-login-base: linear-gradient(135deg, #082f49 0%, #0f4592 55%, #38bdf8 100%);--portal-login-accent: #60a5fa;--portal-login-accent-rgb: 96, 165, 250}.portal-login-operations{--portal-login-base: linear-gradient(135deg, #2e1065 0%, #6d28d9 55%, #a21caf 100%);--portal-login-accent: #c084fc;--portal-login-accent-rgb: 192, 132, 252}.portal-login-admin{--portal-login-base: linear-gradient(135deg, #422006 0%, #713f12 55%, #f59e0b 100%);--portal-login-accent: #fbbf24;--portal-login-accent-rgb: 251, 191, 36}.app{position:relative;min-height:100vh;overflow:hidden}.background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;background:linear-gradient(135deg,#667eea,#764ba2);background-size:400% 400%;animation:gradient-shift 15s ease infinite}.wave{position:absolute;bottom:0;left:0;width:200%;height:100%;opacity:.1}.wave1{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;animation:wave 25s cubic-bezier(.36,.45,.63,.53) infinite}.wave2{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;bottom:-10px;opacity:.15;animation:wave 20s cubic-bezier(.36,.45,.63,.53) -.125s infinite}.wave3{background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M321.39,56.44c58-10.79,114.16-30.13,172-41.86,82.39-16.72,168.19-17.73,250.45-.39C823.78,31,906.67,72,985.66,92.83c70.05,18.48,146.53,26.09,214.34,3V0H0V27.35A600.21,600.21,0,0,0,321.39,56.44Z" fill="rgba(255,255,255,1)"/></svg>');background-size:50% 100%;bottom:-20px;opacity:.2;animation:wave 30s cubic-bezier(.36,.45,.63,.53) -.25s infinite}.particles{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none}.particle{position:absolute;width:4px;height:4px;background:#ffffff80;border-radius:50%;animation:float-particle 10s infinite ease-in-out}@keyframes float-particle{0%,to{transform:translateY(0) translate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh) translate(50px);opacity:0}}.container{position:relative;z-index:2;max-width:1400px;margin:0 auto;padding:2rem;min-height:100vh;display:flex;flex-direction:column;opacity:0;transform:translateY(20px);transition:all .8s ease-out}.container.visible{opacity:1;transform:translateY(0)}.header{text-align:center;padding:3rem 0 4rem;animation:fadeInDown 1s ease-out}.logo-section{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.logo{max-height:120px;filter:drop-shadow(0 10px 30px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite;transition:transform .3s ease}.logo:hover{transform:scale(1.1) rotate(5deg)}.brand-info{display:flex;flex-direction:column;gap:.5rem}.brand-name{font-size:4rem;font-weight:800;color:var(--text-light);text-shadow:0 4px 20px rgba(0,0,0,.3);letter-spacing:-1px;background:linear-gradient(135deg,#fff,#f0f0f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{font-size:1.5rem;color:#ffffffe6;font-weight:300;letter-spacing:2px;text-transform:uppercase}.main-content{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 0}.nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:3rem;width:100%;max-width:1000px}.nav-card{position:relative;background:#fffffff2;border-radius:30px;padding:3rem 2.5rem;text-align:center;text-decoration:none;color:var(--text-dark);overflow:hidden;box-shadow:var(--shadow-lg);transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:fadeInUp .8s ease-out both;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#ffffff1a,#fff0);opacity:0;transition:opacity .3s ease}.nav-card:hover:before{opacity:1}.nav-card:hover{transform:translateY(-15px) scale(1.02);box-shadow:0 25px 50px #0000004d}.card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;opacity:0;transition:opacity .5s ease;pointer-events:none;filter:blur(50px)}.nav-card:hover .card-glow{opacity:.2;animation:pulse 2s ease-in-out infinite}.card-content{position:relative;z-index:1}.card-icon{font-size:5rem;margin-bottom:1.5rem;display:inline-block;transition:transform .3s ease;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.nav-card:hover .card-icon{transform:scale(1.2) rotate(10deg);animation:float 2s ease-in-out infinite}.card-title{font-size:2rem;font-weight:700;margin-bottom:1rem;color:var(--text-dark);transition:color .3s ease}.nav-card:hover .card-title{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card-description{font-size:1.1rem;color:#666;line-height:1.6;margin-bottom:1.5rem}.card-arrow{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:var(--primary-gradient);color:#fff;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.nav-card:hover .card-arrow{transform:translate(10px);box-shadow:0 6px 20px #667eea99}.footer{text-align:center;padding:2rem 0;color:#fffc;font-size:.95rem;animation:fadeIn 1s ease-out 1s both}@media (max-width: 768px){.brand-name{font-size:2.5rem}.tagline{font-size:1rem}.logo{max-height:80px}.nav-grid{grid-template-columns:1fr;gap:2rem}.nav-card{padding:2.5rem 2rem}.card-icon{font-size:4rem}.card-title{font-size:1.5rem}.card-description{font-size:1rem}.container{padding:1rem}}@media (max-width: 480px){.brand-name{font-size:2rem}.tagline{font-size:.9rem;letter-spacing:1px}.logo{max-height:60px}.nav-card{padding:2rem 1.5rem}.card-icon{font-size:3.5rem}}.toast-viewport{position:fixed;top:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.75rem;z-index:1600;pointer-events:none}.toast{min-width:280px;max-width:360px;padding:.85rem 1rem;border-radius:.75rem;box-shadow:0 12px 30px #0f172a2e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;pointer-events:auto;color:#0f172a;background:#fffffff2}.toast--success{border:1px solid rgba(34,197,94,.35)}.toast--error{border:1px solid rgba(239,68,68,.35)}.toast--info{border:1px solid rgba(59,130,246,.35)}.toast__content{display:flex;flex-direction:column;gap:.3rem;flex:1}.toast__message{font-weight:700;font-size:.95rem}.toast__description{font-size:.85rem;color:#475569}.toast__dismiss{background:none;border:none;color:inherit;font-size:1.1rem;font-weight:700;cursor:pointer;padding:0 .25rem;line-height:1;transition:transform .2s ease}.toast__dismiss:hover{transform:scale(1.1)}@media (max-width: 640px){.toast-viewport{width:calc(100% - 2rem);right:1rem;left:1rem}.toast{min-width:auto;max-width:none}}
