:root{--space-0:0;--space-0-5:.125rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--space-40:10rem;--space-48:12rem;--success:160 84% 45%;--success-foreground:0 0% 100%;--warning:45 93% 58%;--warning-foreground:222 47% 11%;--info:199 89% 48%;--info-foreground:0 0% 100%;--tertiary:270 91% 65%;--tertiary-foreground:0 0% 100%;--surface-1:var(--background);--surface-2:var(--muted);--surface-3:var(--card);--gradient-primary:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--primary) / .7));--gradient-primary-vibrant:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));--gradient-accent:linear-gradient(135deg, hsl(var(--accent)), hsl(var(--accent) / .7));--gradient-hero:linear-gradient(180deg, hsl(var(--background)), hsl(var(--primary) / .05));--gradient-hero-bold:linear-gradient(135deg, hsl(var(--primary) / .1), hsl(var(--accent) / .1), hsl(var(--background)));--gradient-card:linear-gradient(145deg, hsl(var(--card)), hsl(var(--card) / .8));--gradient-card-hover:linear-gradient(145deg, hsl(var(--card)), hsl(var(--primary) / .05));--gradient-success:linear-gradient(135deg, hsl(var(--success)), hsl(var(--success) / .7));--gradient-warning:linear-gradient(135deg, hsl(var(--warning)), hsl(var(--warning) / .7));--gradient-wellness:linear-gradient(135deg, #12d393, #0ea472);--gradient-energy:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)), hsl(var(--tertiary)));--gradient-subtle:linear-gradient(180deg, hsl(var(--background)), hsl(var(--muted) / .5));--gradient-mesh:radial-gradient(circle at 20% 50%, hsl(var(--primary) / .08) 0%, transparent 50%), radial-gradient(circle at 80% 20%, hsl(var(--accent) / .06) 0%, transparent 50%), radial-gradient(circle at 40% 80%, hsl(var(--primary) / .04) 0%, transparent 50%);--shadow-xs:0 1px 2px 0 #00000008;--shadow-sm:0 1px 3px 0 #0000000d, 0 1px 2px -1px #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-elegant:0 10px 30px -10px hsl(var(--primary) / .3);--shadow-glow:0 0 40px hsl(var(--primary) / .2);--shadow-glow-primary:0 0 30px hsl(var(--primary) / .3);--shadow-glow-success:0 0 25px hsl(var(--success) / .3);--shadow-glow-warning:0 0 25px hsl(var(--warning) / .3);--shadow-glow-soft:0 0 20px hsl(var(--primary) / .15);--shadow-inner:inset 0 2px 4px 0 #0000000d;--shadow-inner-lg:inset 0 4px 8px 0 #0000001a;--border-radius-xs:.125rem;--border-radius-sm:.25rem;--border-radius-md:.5rem;--border-radius-lg:.75rem;--border-radius-xl:1rem;--border-radius-2xl:1.5rem;--border-radius-3xl:2rem;--border-radius-full:9999px;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0em;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--transition-instant:.1s;--transition-fast:.15s;--transition-base:.2s;--transition-smooth:.3s;--transition-medium:.4s;--transition-slow:.5s;--transition-slower:.7s;--transition-all:all var(--transition-smooth) var(--ease-smooth);--transition-colors:color, background-color, border-color var(--transition-base) var(--ease-smooth);--transition-transform:transform var(--transition-smooth) var(--ease-smooth);--transition-opacity:opacity var(--transition-base) var(--ease-smooth);--z-base:0;--z-dropdown:1000;--z-sticky:1100;--z-fixed:1200;--z-modal-backdrop:1300;--z-modal:1400;--z-popover:1500;--z-tooltip:1600;--z-notification:1700;--z-max:2147480000;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--container-full:100%;font-size:16px}@media (width>=768px){:root{font-size:17px}}@media (width>=1024px){:root{font-size:18px}}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.heading-1,h1.styled{font-size:clamp(2.25rem,5vw,3.75rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.heading-2,h2.styled{font-size:clamp(1.875rem,4vw,3rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.heading-3,h3.styled{font-size:clamp(1.5rem,3vw,2.25rem);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight)}.heading-4,h4.styled{font-size:clamp(1.25rem,2.5vw,1.875rem);font-weight:var(--font-weight-semibold);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-normal)}.heading-5,h5.styled{font-size:clamp(1.125rem,2vw,1.5rem);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-normal)}.heading-6,h6.styled{font-size:1rem;font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}.body-large{font-size:1.125rem;line-height:var(--line-height-relaxed)}.body-base{font-size:1rem;line-height:var(--line-height-normal)}.body-small{font-size:.875rem;line-height:var(--line-height-normal)}.caption{font-size:.75rem;line-height:var(--line-height-snug);color:hsl(var(--muted-foreground))}.overline{letter-spacing:var(--letter-spacing-wider);text-transform:uppercase;font-size:.75rem;line-height:1;font-weight:var(--font-weight-semibold)}.surface-1{background-color:hsl(var(--background))}.surface-2{background-color:hsl(var(--muted))}.surface-3{background-color:hsl(var(--card))}.elevation-0{box-shadow:none}.elevation-1{box-shadow:var(--shadow-xs)}.elevation-2{box-shadow:var(--shadow-sm)}.elevation-3{box-shadow:var(--shadow-md)}.elevation-4{box-shadow:var(--shadow-lg)}.elevation-5{box-shadow:var(--shadow-xl)}.elevation-6{box-shadow:var(--shadow-2xl)}.elevation-hover{transition:box-shadow var(--transition-smooth)}.elevation-hover:hover{box-shadow:var(--shadow-xl)}.glow-success{box-shadow:var(--shadow-glow-success)}.glow-warning{box-shadow:var(--shadow-glow-warning)}.glow-soft{box-shadow:var(--shadow-glow-soft)}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-primary-vibrant{background:var(--gradient-primary-vibrant)}.bg-gradient-accent{background:var(--gradient-accent)}.bg-gradient-hero{background:var(--gradient-hero)}.bg-gradient-hero-bold{background:var(--gradient-hero-bold)}.bg-gradient-card{background:var(--gradient-card)}.bg-gradient-success{background:var(--gradient-success)}.bg-gradient-warning{background:var(--gradient-warning)}.bg-gradient-wellness{background:var(--gradient-wellness)}.bg-gradient-energy{background:var(--gradient-energy)}.bg-gradient-mesh{background:var(--gradient-mesh)}.text-gradient{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--accent)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-primary{background:var(--gradient-primary-vibrant);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-wellness{background:var(--gradient-wellness);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-energy{background:var(--gradient-energy);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.transition-transform{transition:var(--transition-transform)}.transition-opacity{transition:var(--transition-opacity)}.transition-smooth{transition-duration:var(--transition-smooth);transition-timing-function:var(--ease-smooth)}.transition-fast{transition-duration:var(--transition-fast);transition-timing-function:var(--ease-smooth)}.transition-slow{transition-duration:var(--transition-slow);transition-timing-function:var(--ease-smooth)}.interactive{cursor:pointer;transition:all var(--transition-fast)}.interactive:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.interactive:active{box-shadow:var(--shadow-md);transform:translateY(0)}.focus-ring{transition:box-shadow var(--transition-fast);outline:none}.focus-ring:focus-visible{box-shadow:0 0 0 3px hsl(var(--primary) / .3)}.container-xs{max-width:var(--container-xs);margin-left:auto;margin-right:auto}.container-sm{max-width:var(--container-sm);margin-left:auto;margin-right:auto}.container-md{max-width:var(--container-md);margin-left:auto;margin-right:auto}.container-lg{max-width:var(--container-lg);margin-left:auto;margin-right:auto}.container-xl{max-width:var(--container-xl);margin-left:auto;margin-right:auto}.container-2xl{max-width:var(--container-2xl);margin-left:auto;margin-right:auto}.container-3xl{max-width:var(--container-3xl);margin-left:auto;margin-right:auto}.container-4xl{max-width:var(--container-4xl);margin-left:auto;margin-right:auto}.container-5xl{max-width:var(--container-5xl);margin-left:auto;margin-right:auto}.container-6xl{max-width:var(--container-6xl);margin-left:auto;margin-right:auto}.container-7xl{max-width:var(--container-7xl);margin-left:auto;margin-right:auto}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:16/9}.aspect-portrait{aspect-ratio:3/4}.aspect-landscape{aspect-ratio:4/3}.glass{background:hsl(var(--card) / .7);-webkit-backdrop-filter:blur(12px);border:1px solid hsl(var(--border) / .2)}.glass-strong{background:hsl(var(--card) / .9);-webkit-backdrop-filter:blur(20px);border:1px solid hsl(var(--border) / .3)}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.scrollbar-thin::-webkit-scrollbar-track{background:hsl(var(--muted));border-radius:var(--border-radius-full)}.scrollbar-thin::-webkit-scrollbar-thumb{background:hsl(var(--primary) / .3);border-radius:var(--border-radius-full)}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary) / .5)}.truncate-1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.truncate-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.truncate-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-bottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes scale-up{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pop-in{0%{opacity:0;transform:scale(.5)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes bounce-in{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotate-reverse{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes scale-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px hsl(var(--primary) / .2)}50%{box-shadow:0 0 40px hsl(var(--primary) / .4)}}@keyframes pulse-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes float-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes levitate{0%,to{transform:translateY(0)rotate(0)}33%{transform:translateY(-15px)rotate(2deg)}66%{transform:translateY(-10px)rotate(-2deg)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-10px)}20%,40%,60%,80%{transform:translate(10px)}}@keyframes shake-subtle{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes flip-in-x{0%{opacity:0;transform:perspective(1000px)rotateX(-90deg)}to{opacity:1;transform:perspective(1000px)rotateX(0)}}@keyframes flip-in-y{0%{opacity:0;transform:perspective(1000px)rotateY(-90deg)}to{opacity:1;transform:perspective(1000px)rotateY(0)}}@keyframes progress-bar{0%{transform-origin:0;transform:scaleX(0)}to{transform-origin:0;transform:scaleX(1)}}@keyframes loading-dots{0%,80%,to{opacity:.3;transform:scale(1)}40%{opacity:1;transform:scale(1.2)}}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes toast-in-right{0%{transform:translate(calc(100% + 1rem))}to{transform:translate(0)}}@keyframes toast-out-right{0%{transform:translate(0)}to{transform:translate(calc(100% + 1rem))}}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(.9)}20%,40%,50%,60%,70%,80%{transform:scale(1.1)}}@keyframes ripple{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(4)}}.animate-fade-in{animation:.3s ease-out fade-in}.animate-fade-in-up{animation:.4s ease-out fade-in-up}.animate-fade-in-down{animation:.4s ease-out fade-in-down}.animate-slide-up{animation:.4s ease-out slide-up}.animate-slide-down{animation:.4s ease-out slide-down}.animate-slide-in-left{animation:.4s ease-out slide-in-left}.animate-slide-in-right{animation:.4s ease-out slide-in-right}.animate-slide-in-bottom{animation:.3s cubic-bezier(.4,0,.2,1) slide-in-bottom}.animate-scale-in{animation:.2s ease-out scale-in}.animate-scale-up{animation:.3s ease-out scale-up}.animate-pop-in{animation:.4s cubic-bezier(.68,-.55,.265,1.55) pop-in}.animate-bounce-in{animation:.5s ease-out bounce-in}.animate-bounce{animation:1s ease-in-out infinite bounce}.animate-bounce-subtle{animation:2s ease-in-out infinite bounce-subtle}.animate-spin{animation:1s linear infinite spin}.animate-rotate{animation:1s linear infinite rotate}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-pulse-scale{animation:2s ease-in-out infinite pulse-scale}.animate-scale-pulse{animation:.6s ease-in-out infinite scale-pulse}.animate-pulse-glow{animation:2s ease-in-out infinite pulse-glow}.animate-float{animation:6s ease-in-out infinite float}.animate-float-subtle{animation:4s ease-in-out infinite float-subtle}.animate-levitate{animation:8s ease-in-out infinite levitate}.animate-shake{animation:.5s ease-in-out shake}.animate-wiggle{animation:.5s ease-in-out wiggle}.animate-shimmer{animation:2s ease-in-out infinite shimmer}.animate-shine{animation:1.5s ease-in-out shine}.animate-gradient{animation:3s infinite gradient-shift}.animate-heartbeat{animation:1.3s ease-in-out infinite heartbeat}.delay-75{animation-delay:75ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.2s}.stagger-children>:nth-child(4){animation-delay:.3s}.stagger-children>:nth-child(5){animation-delay:.4s}.stagger-children>:nth-child(6){animation-delay:.5s}.stagger-children>:nth-child(7){animation-delay:.6s}.stagger-children>:nth-child(8){animation-delay:.7s}.stagger-children>:nth-child(9){animation-delay:.8s}.stagger-children>:nth-child(10){animation-delay:.9s}.fill-forwards{animation-fill-mode:forwards}.fill-backwards{animation-fill-mode:backwards}.fill-both{animation-fill-mode:both}.paused{animation-play-state:paused}.running{animation-play-state:running}.skeleton{background:linear-gradient(90deg, hsl(var(--foreground) / .06) 0%, hsl(var(--foreground) / .14) 50%, hsl(var(--foreground) / .06) 100%);border-radius:var(--border-radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-loading}.skeleton-text{border-radius:var(--border-radius-sm);height:1em;margin-bottom:.5em}.skeleton-text:last-child{width:60%}.skeleton-circle{aspect-ratio:1;border-radius:50%}.skeleton-button{border-radius:var(--border-radius-lg);width:100%;height:2.5rem}.hover-lift{transition:transform .3s,box-shadow .3s}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.hover-scale{transition:transform .2s}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow .3s}.hover-glow:hover{box-shadow:var(--shadow-glow-primary)}.hover-brighten{transition:filter .2s}.hover-brighten:hover{filter:brightness(1.1)}.glow-primary{box-shadow:0 0 20px hsl(var(--primary) / .5)}.glow-accent{box-shadow:0 0 20px hsl(var(--accent) / .5)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.animate-float,.animate-levitate,.animate-pulse,.animate-bounce{animation:none!important}}
