:root{--color-primary:#6366f1;--color-primary-light:#818cf8;--color-primary-dark:#4f46e5;--color-primary-rgb:99,102,241;--color-accent:#14b8a6;--color-accent-light:#2dd4bf;--color-accent-rgb:20,184,166;--color-bg:#fafafa;--color-bg-alt:#f3f4f6;--color-surface:#fff;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-text:#1f2937;--color-text-secondary:#4b5563;--color-text-muted:#6b7280;--color-text-light:#9ca3af;--color-success:#10b981;--color-success-light:#d1fae5;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-error:#ef4444;--color-error-light:#fee2e2;--color-info:#3b82f6;--color-info-light:#dbeafe;--glass-bg:hsla(0,0%,100%,.7);--glass-bg-dark:rgba(17,25,40,.75);--glass-border:hsla(0,0%,100%,.3);--glass-border-dark:hsla(0,0%,100%,.1);--glass-shadow:0 8px 32px rgba(0,0,0,.1);--glass-blur:blur(20px);--glass-saturate:saturate(180%);--shadow-xs:0 1px 2px rgba(0,0,0,.04);--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 6px rgba(0,0,0,.07),0 2px 4px rgba(0,0,0,.04);--shadow-lg:0 10px 25px rgba(0,0,0,.1),0 4px 6px rgba(0,0,0,.05);--shadow-xl:0 20px 40px rgba(0,0,0,.12),0 8px 16px rgba(0,0,0,.06);--shadow-2xl:0 25px 50px rgba(0,0,0,.15);--shadow-glow:0 0 30px rgba(var(--color-primary-rgb),0.3);--shadow-glow-lg:0 0 60px rgba(var(--color-primary-rgb),0.4);--shadow-inner:inset 0 2px 4px rgba(0,0,0,.05);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-slower:500ms cubic-bezier(0.4,0,0.2,1);--transition-bounce:500ms cubic-bezier(0.34,1.56,0.64,1);--transition-spring:600ms cubic-bezier(0.175,0.885,0.32,1.275);--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-3xl:32px;--radius-full:9999px;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass,.glass-dark{backdrop-filter:var(--glass-blur) var(--glass-saturate);-webkit-backdrop-filter:var(--glass-blur) var(--glass-saturate)}.glass-dark{background:var(--glass-bg-dark);border:1px solid var(--glass-border-dark)}.glass-header{background:hsla(0,0%,100%,.85);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);border-bottom:1px solid rgba(0,0,0,.05)}.frosted-glass{background:linear-gradient(135deg,hsla(0,0%,100%,.95),hsla(0,0%,100%,.8));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glass-glow{background:var(--glass-bg);backdrop-filter:var(--glass-blur) var(--glass-saturate);-webkit-backdrop-filter:var(--glass-blur) var(--glass-saturate);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),0 0 40px rgba(var(--color-primary-rgb),.1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes heartPulse{0%,to{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1)}75%{transform:scale(1.2)}}@keyframes cartBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes glow{0%,to{box-shadow:0 0 20px rgba(var(--color-primary-rgb),.3)}50%{box-shadow:0 0 40px rgba(var(--color-primary-rgb),.5)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-25%)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes particleFloat{0%,to{transform:translateY(0) translateX(0) rotate(0deg);opacity:.6}25%{transform:translateY(-20px) translateX(10px) rotate(90deg);opacity:.8}50%{transform:translateY(-40px) translateX(0) rotate(180deg);opacity:.6}75%{transform:translateY(-20px) translateX(-10px) rotate(270deg);opacity:.8}}@keyframes blobMove{0%,to{transform:translate(0) scale(1)}25%{transform:translate(20px,-30px) scale(1.1)}50%{transform:translate(-20px,20px) scale(.9)}75%{transform:translate(30px,10px) scale(1.05)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .5s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .5s ease-out forwards}.animate-fade-in-left{animation:fadeInLeft .5s ease-out forwards}.animate-fade-in-right{animation:fadeInRight .5s ease-out forwards}.animate-scale-in{animation:scaleIn .3s ease-out forwards}.animate-scale-bounce{animation:scaleInBounce .5s ease-out forwards}.animate-slide-up{animation:slideInUp .4s ease-out forwards}.animate-slide-down{animation:slideInDown .4s ease-out forwards}.animate-slide-left{animation:slideInLeft .4s ease-out forwards}.animate-slide-right{animation:slideInRight .4s ease-out forwards}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-gradient{background-size:200% 200%;animation:gradientShift 15s ease infinite}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-delay-600{animation-delay:.6s}.animate-delay-700{animation-delay:.7s}.animate-delay-800{animation-delay:.8s}.animate-duration-fast{animation-duration:.15s}.animate-duration-base{animation-duration:.3s}.animate-duration-slow{animation-duration:.5s}.animate-duration-slower{animation-duration:.7s}.hover-lift{transition:transform var(--transition-slow),box-shadow var(--transition-slow)}.hover-lift:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.hover-lift-sm{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift-sm:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:var(--shadow-glow)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.05)}.hover-scale-sm{transition:transform var(--transition-base)}.hover-scale-sm:hover{transform:scale(1.02)}.hover-bright{transition:filter var(--transition-base)}.hover-bright:hover{filter:brightness(1.1)}.hover-card{transition:all var(--transition-slow)}.hover-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-xl)}.gradient-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light))}.gradient-primary-accent{background:linear-gradient(135deg,var(--color-primary),var(--color-accent))}.gradient-radial{background:radial-gradient(circle at 50% 50%,var(--color-primary-light),var(--color-primary))}.gradient-mesh{background-color:#f8fafc;background-image:radial-gradient(at 40% 20%,rgba(var(--color-primary-rgb),.3) 0,transparent 50%),radial-gradient(at 80% 0,rgba(var(--color-accent-rgb),.2) 0,transparent 50%),radial-gradient(at 0 50%,rgba(var(--color-primary-rgb),.2) 0,transparent 50%),radial-gradient(at 80% 50%,rgba(var(--color-accent-rgb),.15) 0,transparent 50%),radial-gradient(at 0 100%,rgba(var(--color-primary-rgb),.15) 0,transparent 50%),radial-gradient(at 80% 100%,rgba(var(--color-accent-rgb),.1) 0,transparent 50%)}.gradient-mesh-animated{background:linear-gradient(-45deg,rgba(var(--color-primary-rgb),.1),rgba(var(--color-accent-rgb),.1),rgba(var(--color-primary-rgb),.05),rgba(var(--color-accent-rgb),.05));background-size:400% 400%;animation:gradientShift 15s ease infinite}.gradient-overlay{background:linear-gradient(180deg,transparent,rgba(0,0,0,.4))}.btn-modern{position:relative;overflow:hidden;transition:all var(--transition-base);font-weight:500}.btn-modern:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,hsla(0,0%,100%,.2) 50%,transparent);transform:translateX(-100%);transition:transform .6s ease}.btn-modern:hover:before{transform:translateX(100%)}.btn-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;border:none;transition:all var(--transition-base)}.btn-gradient:hover{background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-glass{background:hsla(0,0%,100%,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.3);color:#fff;transition:all var(--transition-base)}.btn-glass:hover{background:hsla(0,0%,100%,.3);border-color:hsla(0,0%,100%,.5)}.btn-outline-glow{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary);transition:all var(--transition-base)}.btn-outline-glow:hover{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-glow)}.input-floating{position:relative}.input-floating input,.input-floating textarea{width:100%;padding:1.25rem 1rem .5rem;border-radius:var(--radius-lg);border:2px solid var(--color-border);background:#fff;font-size:1rem;transition:all var(--transition-base)}.input-floating input:focus,.input-floating textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}.input-floating input:hover:not(:focus),.input-floating textarea:hover:not(:focus){border-color:var(--color-text-muted)}.input-floating label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted);font-size:1rem;transition:all var(--transition-fast);pointer-events:none;background:#fff;padding:0 4px}.input-floating input:focus+label,.input-floating input:not(:placeholder-shown)+label,.input-floating textarea:focus+label,.input-floating textarea:not(:placeholder-shown)+label{top:0;transform:translateY(-50%);font-size:.75rem;color:var(--color-primary)}.input-glass{width:100%;padding:1rem 1rem 1rem 3rem;border-radius:var(--radius-lg);border:1px solid hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--color-text);font-size:1rem;transition:all var(--transition-base)}.input-glass::placeholder{color:var(--color-text-muted)}.input-glass:focus{outline:none;border-color:var(--color-primary);background:hsla(0,0%,100%,.15);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}.input-with-icon{position:relative}.input-with-icon .input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted);transition:color var(--transition-fast)}.input-with-icon input:focus~.input-icon{color:var(--color-primary)}.card-modern{background:#fff;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border-light);transition:all var(--transition-slow)}.card-modern:hover{border-color:var(--color-border);box-shadow:var(--shadow-lg)}.card-glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur) var(--glass-saturate);-webkit-backdrop-filter:var(--glass-blur) var(--glass-saturate);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.card-elevated,.card-glass{border-radius:var(--radius-xl)}.card-elevated{background:#fff;box-shadow:var(--shadow-md);transition:all var(--transition-slow)}.card-elevated:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton,.skeleton-text{border-radius:var(--radius-sm)}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-title{height:1.5rem;width:60%;margin-bottom:.75rem;border-radius:var(--radius-sm)}.skeleton-avatar{width:3rem;height:3rem;border-radius:var(--radius-full)}.skeleton-image{aspect-ratio:1;border-radius:var(--radius-lg)}.skeleton-button{height:2.5rem;width:8rem;border-radius:var(--radius-lg)}.auth-background{position:fixed;inset:0;z-index:-1;overflow:hidden}.auth-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.6;animation:blobMove 20s ease-in-out infinite}.auth-blob-1{width:400px;height:400px;background:rgba(var(--color-primary-rgb),.3);top:-100px;left:-100px;animation-delay:0s}.auth-blob-2{width:300px;height:300px;background:rgba(var(--color-accent-rgb),.3);bottom:-50px;right:-50px;animation-delay:-5s}.auth-blob-3{width:250px;height:250px;background:rgba(var(--color-primary-rgb),.2);top:50%;right:20%;animation-delay:-10s}.auth-card{background:hsla(0,0%,100%,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid hsla(0,0%,100%,.5);border-radius:var(--radius-2xl);box-shadow:0 25px 50px rgba(0,0,0,.1),inset 0 0 0 1px hsla(0,0%,100%,.2)}.auth-input{width:100%;padding:1rem 1rem 1rem 3rem;border-radius:var(--radius-xl);border:2px solid transparent;background:hsla(0,0%,100%,.8);font-size:1rem;transition:all var(--transition-base)}.auth-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.1)}.auth-input::placeholder{color:var(--color-text-muted)}.password-strength{display:flex;gap:4px;margin-top:8px}.password-strength-bar{height:4px;flex:1;border-radius:var(--radius-full);background:var(--color-border);transition:all var(--transition-base)}.password-strength-bar.active{background:var(--color-error)}.password-strength-bar.active.medium{background:var(--color-warning)}.password-strength-bar.active.strong{background:var(--color-success)}.social-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.5rem;border-radius:var(--radius-xl);border:2px solid var(--color-border);background:#fff;font-weight:500;transition:all var(--transition-base)}.social-btn:hover{border-color:var(--color-text-muted);background:var(--color-bg);transform:translateY(-2px)}.social-btn-google:hover{border-color:#ea4335;background:#fef7f6}.social-btn-facebook:hover{border-color:#1877f2;background:#f6f9fe}.social-btn-apple:hover{border-color:#000;background:#f5f5f5}@media (hover:none){.hover-card:hover,.hover-lift-sm:hover,.hover-lift:hover{transform:none;box-shadow:inherit}.hover-scale-sm:hover,.hover-scale:hover{transform:none}}@media (max-width:640px){.auth-card,.glass,.glass-glow{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.auth-blob{opacity:.4}.auth-blob-1{width:250px;height:250px}.auth-blob-2{width:200px;height:200px}.auth-blob-3{display:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.focus-ring:focus{outline:none;box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.3)}.truncate-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate-2{-webkit-line-clamp:2}.truncate-2,.truncate-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.truncate-3{-webkit-line-clamp:3}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--color-bg-alt);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.aspect-portrait{aspect-ratio:3/4}.text-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.storefront-root{font-family:var(--store-font-body,system-ui,-apple-system,"Segoe UI",sans-serif);background-color:var(--store-bg,transparent)}.storefront-root h1,.storefront-root h2,.storefront-root h3,.storefront-root h4,.storefront-root h5,.storefront-root h6{font-family:var(--store-font-heading,var(--store-font-body,system-ui,sans-serif))}.storefront-root .store-btn{border-radius:var(--store-radius,8px);font-weight:600;background:var(--color-primary);color:#fff;border:2px solid transparent;transition:all var(--transition-base,.2s ease)}.storefront-root .store-btn:hover{filter:brightness(.94)}.storefront-root[data-btn-style=outline] .store-btn{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.storefront-root[data-btn-style=outline] .store-btn:hover{background:rgba(var(--color-primary-rgb),.08);filter:none}.storefront-root[data-btn-style=ghost] .store-btn{background:transparent;color:var(--color-primary)}.storefront-root[data-btn-style=ghost] .store-btn:hover{background:rgba(var(--color-primary-rgb),.08);filter:none}.storefront-root .store-sections>*{margin-top:calc(1.5rem * (var(--store-spacing, 1) - 1));margin-bottom:calc(1.5rem * (var(--store-spacing, 1) - 1))}@keyframes storeMobileMenuSlideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.store-mobile-menu-slide{animation:storeMobileMenuSlideIn .25s ease-out}