.sanctuary-card{background:var(--sanctuary-bg-card);backdrop-filter:var(--sanctuary-blur-lg);border-radius:var(--sanctuary-radius-gentle);box-shadow:var(--sanctuary-shadow-soft);transition:all var(--sanctuary-duration-normal) var(--sanctuary-transition);border:1px solid rgba(139,92,246,.1)}.sanctuary-card:hover{transform:translateY(-4px);box-shadow:var(--sanctuary-shadow-lifted);border-color:rgba(139,92,246,.2)}.sanctuary-card-interactive{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sanctuary-card-interactive:active{transform:translateY(-2px);box-shadow:var(--sanctuary-shadow-medium)}.sanctuary-glass{background:var(--sanctuary-bg-glass);backdrop-filter:var(--sanctuary-blur-md);border:1px solid rgba(255,255,255,.2)}.sanctuary-breathe{animation:sanctuary-breathe var(--sanctuary-duration-breathe) ease-in-out infinite}@keyframes sanctuary-breathe{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}}.sanctuary-breathe-slow{animation:sanctuary-breathe 6s ease-in-out infinite}.sanctuary-breathe-fast{animation:sanctuary-breathe 2s ease-in-out infinite}.sanctuary-pulse{animation:sanctuary-pulse 2s ease-in-out infinite}@keyframes sanctuary-pulse{0%,to{opacity:1}50%{opacity:.6}}.sanctuary-pulse-glow{animation:sanctuary-pulse-glow 2s ease-in-out infinite}@keyframes sanctuary-pulse-glow{0%,to{box-shadow:var(--sanctuary-glow-primary);opacity:.8}50%{box-shadow:0 0 50px rgba(139,92,246,.5);opacity:1}}.sanctuary-glow{box-shadow:var(--sanctuary-glow-primary)}.sanctuary-glow-calm{box-shadow:var(--sanctuary-glow-calm)}.sanctuary-glow-warm{box-shadow:var(--sanctuary-glow-warm)}.sanctuary-glow-growth{box-shadow:var(--sanctuary-glow-growth)}.sanctuary-float{animation:sanctuary-float 3s ease-in-out infinite}@keyframes sanctuary-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.sanctuary-fade-in{animation:sanctuary-fade-in var(--sanctuary-duration-normal) var(--sanctuary-transition)}@keyframes sanctuary-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.sanctuary-fade-in-up{animation:sanctuary-fade-in-up var(--sanctuary-duration-slow) var(--sanctuary-transition)}@keyframes sanctuary-fade-in-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.sanctuary-scale-in{animation:sanctuary-scale-in var(--sanctuary-duration-normal) var(--sanctuary-transition-bounce)}@keyframes sanctuary-scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.sanctuary-shimmer{position:relative;overflow:hidden}.sanctuary-shimmer:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:sanctuary-shimmer 3s infinite}@keyframes sanctuary-shimmer{to{left:100%}}.sanctuary-gradient-primary{background:linear-gradient(135deg,var(--sanctuary-primary) 0,var(--sanctuary-accent-calm) 100%)}.sanctuary-gradient-warm{background:linear-gradient(135deg,var(--sanctuary-accent-warm) 0,var(--sanctuary-primary) 100%)}.sanctuary-gradient-calm{background:linear-gradient(135deg,var(--sanctuary-accent-calm) 0,var(--sanctuary-primary-soft) 100%)}.sanctuary-gradient-growth{background:linear-gradient(135deg,var(--sanctuary-accent-growth) 0,var(--sanctuary-accent-calm) 100%)}.sanctuary-text-gradient{background:linear-gradient(135deg,var(--sanctuary-primary) 0,var(--sanctuary-accent-calm) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.sanctuary-button{padding:var(--sanctuary-space-md) var(--sanctuary-space-xl);border-radius:var(--sanctuary-radius-soft);font-weight:600;transition:all var(--sanctuary-duration-fast) var(--sanctuary-transition);border:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--sanctuary-space-sm);min-height:44px;min-width:44px}.sanctuary-button-primary{background:var(--sanctuary-primary);color:white;box-shadow:var(--sanctuary-shadow-soft)}.sanctuary-button-primary:hover{background:var(--sanctuary-primary-dark);box-shadow:var(--sanctuary-shadow-medium);transform:translateY(-2px)}.sanctuary-button-primary:active{transform:translateY(0)}.sanctuary-button-warm{background:var(--sanctuary-accent-warm);color:white;box-shadow:var(--sanctuary-shadow-soft)}.sanctuary-button-warm:hover{box-shadow:var(--sanctuary-glow-warm);transform:translateY(-2px)}.sanctuary-button-glass{background:var(--sanctuary-bg-glass);backdrop-filter:var(--sanctuary-blur-md);color:var(--sanctuary-text-primary);border:1px solid rgba(139,92,246,.2)}.sanctuary-button-glass:hover{background:var(--sanctuary-bg-card);border-color:var(--sanctuary-primary)}.sanctuary-focus{outline:none;position:relative}.sanctuary-focus:focus-visible{outline:3px solid var(--sanctuary-primary-soft);outline-offset:2px}.sanctuary-focus-ring{outline:none;transition:box-shadow var(--sanctuary-duration-fast) var(--sanctuary-transition)}.sanctuary-focus-ring:focus-visible{box-shadow:0 0 0 4px rgba(139,92,246,.3)}.touch-target{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}@media (max-width:768px){.touch-target{min-height:48px;min-width:48px}}.crisis-button,.crisis-link{min-height:56px;min-width:56px}:focus{outline:none}:focus-visible{outline:3px solid var(--sanctuary-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(139,92,246,.2)}@media (prefers-contrast:high){:focus-visible{outline:3px solid currentColor;outline-offset:3px;box-shadow:0 0 0 4px rgba(255,255,255,.5)}.sanctuary-card{border-width:2px;border-color:currentColor}.sanctuary-button{border:2px solid}}.high-contrast{.sanctuary-card{border-width:2px;border-color:currentColor}.sanctuary-button{border:2px solid}*{box-shadow:none!important}}.using-keyboard :focus{outline:3px solid var(--sanctuary-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(139,92,246,.3)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.reduce-motion *,.reduce-motion :after,.reduce-motion :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.sanctuary-loading{position:relative;pointer-events:none;opacity:.6}.sanctuary-loading:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border:3px solid var(--sanctuary-primary-light);border-top-color:var(--sanctuary-primary);border-radius:50%;animation:sanctuary-spin 1s linear infinite}@keyframes sanctuary-spin{to{transform:rotate(1turn)}}.sanctuary-skeleton{background:linear-gradient(90deg,rgba(139,92,246,.1) 25%,rgba(139,92,246,.2) 50%,rgba(139,92,246,.1) 75%);background-size:200% 100%;animation:sanctuary-skeleton-loading 1.5s infinite;border-radius:var(--sanctuary-radius-soft)}@keyframes sanctuary-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.sanctuary-skeleton-text{height:1em;margin-bottom:.5em}.sanctuary-skeleton-text:last-child{margin-bottom:0}.sanctuary-skeleton-circle{border-radius:50%;width:40px;height:40px}.sanctuary-skeleton-card{padding:var(--sanctuary-space-lg);border-radius:var(--sanctuary-radius-gentle)}.sanctuary-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#dc2626;padding:var(--sanctuary-space-md);border-radius:var(--sanctuary-radius-soft);display:flex;align-items:center;gap:var(--sanctuary-space-sm)}.sanctuary-error-icon{color:#dc2626;flex-shrink:0}.sanctuary-success{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#16a34a;padding:var(--sanctuary-space-md);border-radius:var(--sanctuary-radius-soft);display:flex;align-items:center;gap:var(--sanctuary-space-sm)}.sanctuary-success-icon{color:#16a34a;flex-shrink:0}.sanctuary-warning{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);color:#d97706;padding:var(--sanctuary-space-md);border-radius:var(--sanctuary-radius-soft);display:flex;align-items:center;gap:var(--sanctuary-space-sm)}.sanctuary-warning-icon{color:#d97706;flex-shrink:0}.sanctuary-skip-link{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.sanctuary-skip-link:focus{position:fixed;top:1rem;left:1rem;z-index:100;width:auto;height:auto;padding:.75rem 1.5rem;background:var(--sanctuary-primary);color:white;border-radius:var(--sanctuary-radius-soft);text-decoration:none;font-weight:600;box-shadow:var(--sanctuary-shadow-lifted)}.sanctuary-smooth-scroll{scroll-behavior:smooth;overflow-y:auto}.sanctuary-smooth-scroll::-webkit-scrollbar{width:8px}.sanctuary-smooth-scroll::-webkit-scrollbar-track{background:rgba(139,92,246,.05);border-radius:var(--sanctuary-radius-full)}.sanctuary-smooth-scroll::-webkit-scrollbar-thumb{background:rgba(139,92,246,.2);border-radius:var(--sanctuary-radius-full)}.sanctuary-smooth-scroll::-webkit-scrollbar-thumb:hover{background:rgba(139,92,246,.3)}.sanctuary-space-y>*+*{margin-top:var(--sanctuary-space-breath)}.sanctuary-space-y-sm>*+*{margin-top:var(--sanctuary-space-sm)}.sanctuary-space-y-md>*+*{margin-top:var(--sanctuary-space-md)}.sanctuary-space-y-lg>*+*{margin-top:var(--sanctuary-space-lg)}.sanctuary-container{max-width:1280px}.sanctuary-container,.sanctuary-container-narrow{margin:0 auto;padding:0 var(--sanctuary-space-lg)}.sanctuary-container-narrow{max-width:768px}.sanctuary-section{padding:var(--sanctuary-space-2xl) 0}@media (max-width:768px){.sanctuary-section{padding:var(--sanctuary-space-xl) 0}.sanctuary-container,.sanctuary-container-narrow{padding:0 var(--sanctuary-space-md)}}.text-display-xl{font-size:2.25rem;line-height:2.5rem;font-weight:700;letter-spacing:-.025em;line-height:1.1}@media (min-width:640px){.text-display-xl{font-size:3rem;line-height:1}}@media (min-width:1024px){.text-display-xl{font-size:3.75rem;line-height:1}}@media (min-width:1440px){.text-display-xl{font-size:4.5rem;line-height:1}}.text-display-lg{font-size:1.875rem;line-height:2.25rem;font-weight:700;letter-spacing:-.025em;line-height:1.1}@media (min-width:640px){.text-display-lg{font-size:2.25rem;line-height:2.5rem}}@media (min-width:1024px){.text-display-lg{font-size:3rem;line-height:1}}@media (min-width:1440px){.text-display-lg{font-size:3.75rem;line-height:1}}.text-h1{font-size:1.875rem;line-height:2.25rem;font-weight:700;letter-spacing:-.025em;line-height:1.2}@media (min-width:640px){.text-h1{font-size:2.25rem;line-height:2.5rem}}@media (min-width:1024px){.text-h1{font-size:3rem;line-height:1}}.text-h2{font-size:1.5rem;line-height:2rem;font-weight:700;letter-spacing:-.025em;line-height:1.25}@media (min-width:640px){.text-h2{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.text-h2{font-size:2.25rem;line-height:2.5rem}}.text-h3{font-size:1.25rem;line-height:1.75rem;font-weight:600;letter-spacing:-.025em;line-height:1.3}@media (min-width:640px){.text-h3{font-size:1.5rem;line-height:2rem}}@media (min-width:1024px){.text-h3{font-size:1.875rem;line-height:2.25rem}}.text-h4{font-size:1.125rem;line-height:1.75rem;font-weight:600;line-height:1.4}@media (min-width:640px){.text-h4{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.text-h4{font-size:1.5rem;line-height:2rem}}.text-h5{font-size:1rem;line-height:1.5rem;font-weight:600;line-height:1.5}@media (min-width:640px){.text-h5{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1024px){.text-h5{font-size:1.25rem;line-height:1.75rem}}.text-h6{font-size:.875rem;line-height:1.25rem;font-weight:600;line-height:1.5}@media (min-width:640px){.text-h6{font-size:1rem;line-height:1.5rem}}@media (min-width:1024px){.text-h6{font-size:1.125rem;line-height:1.75rem}}.text-body-xl{font-size:1.125rem;line-height:1.75rem;line-height:1.75}@media (min-width:640px){.text-body-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.text-body-xl{font-size:1.5rem;line-height:2rem}}.text-body-lg{font-size:1rem;line-height:1.5rem;line-height:1.75}@media (min-width:640px){.text-body-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1024px){.text-body-lg{font-size:1.25rem;line-height:1.75rem}}.text-body{font-size:.875rem;line-height:1.25rem;line-height:1.6}@media (min-width:640px){.text-body{font-size:1rem;line-height:1.5rem}}.text-body-sm{font-size:.75rem;line-height:1rem;line-height:1.5}@media (min-width:640px){.text-body-sm{font-size:.875rem;line-height:1.25rem}}.text-body-xs{font-size:.75rem;line-height:1rem;line-height:1.4}.text-caption{font-size:.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-caption:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184/var(--tw-text-opacity,1))}.text-caption{line-height:1.4}.text-overline{font-size:.75rem;line-height:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;line-height:1.5}.text-lead{font-size:1.125rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-lead:is(.dark *){--tw-text-opacity:1;color:rgb(203 213 225/var(--tw-text-opacity,1))}.text-lead{line-height:1.7}@media (min-width:640px){.text-lead{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.text-lead{font-size:1.5rem;line-height:2rem;line-height:1.6}}.text-fluid-xl{font-size:clamp(2rem,5vw,4rem);line-height:1.1}.text-fluid-lg{font-size:clamp(1.5rem,3.5vw,3rem);line-height:1.2}.text-fluid-md{font-size:clamp(1.25rem,2.5vw,2rem);line-height:1.3}.text-fluid-sm{font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.5}.text-crisis-heading{font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-crisis-heading:is(.dark *){--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-crisis-heading{line-height:1.2}@media (min-width:640px){.text-crisis-heading{font-size:1.875rem;line-height:2.25rem}}@media (min-width:1024px){.text-crisis-heading{font-size:2.25rem;line-height:2.5rem}}.text-crisis-body{font-size:1rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-crisis-body:is(.dark *){--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-crisis-body{line-height:1.6}@media (min-width:640px){.text-crisis-body{font-size:1.125rem;line-height:1.75rem}}.text-feature{font-size:1.25rem;line-height:1.75rem;font-weight:600;line-height:1.4}@media (min-width:640px){.text-feature{font-size:1.5rem;line-height:2rem}}@media (min-width:1024px){.text-feature{font-size:1.875rem;line-height:2.25rem}}.text-button-sm{font-size:.75rem;line-height:1rem;font-weight:500}.text-button{font-size:.875rem;line-height:1.25rem;font-weight:500}.text-button-lg{font-size:1rem;line-height:1.5rem;font-weight:500}@media (min-width:640px){.text-button-lg{font-size:1.125rem;line-height:1.75rem}}.optimal-line-length{max-width:65ch}.text-truncate-1{-webkit-line-clamp:1}.text-truncate-1,.text-truncate-2{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.text-truncate-2{-webkit-line-clamp:2}.text-truncate-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.text-mobile-center{text-align:center}@media (min-width:1024px){.text-mobile-center{text-align:left}}.text-balance{text-wrap:balance}.no-orphans{text-wrap:pretty}body{font-feature-settings:"kern" 1,"liga" 1,"calt" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-numeric{font-feature-settings:"tnum" 1,"zero" 1}.font-numeric-proportional{font-feature-settings:"pnum" 1,"zero" 1}:root{--duration-instant:75ms;--duration-fast:150ms;--duration-normal:250ms;--duration-slow:350ms;--duration-slower:500ms;--ease-linear:linear;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-spring:cubic-bezier(0.175,0.885,0.32,1.275);--ease-bounce:cubic-bezier(0.68,-0.55,0.265,1.55)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate-fadeIn{animation:fadeIn var(--duration-normal) var(--ease-out) forwards}.animate-fadeOut{animation:fadeOut var(--duration-normal) var(--ease-in) forwards}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.animate-slideUp{animation:slideUp var(--duration-normal) var(--ease-out) forwards}.animate-slideDown{animation:slideDown var(--duration-normal) var(--ease-out) forwards}.animate-slideInRight{animation:slideInRight var(--duration-normal) var(--ease-out) forwards}.animate-slideInLeft{animation:slideInLeft var(--duration-normal) var(--ease-out) forwards}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(.9)}20%,40%,60%,80%{transform:scale(1.1)}50%,70%{transform:scale(1.05)}}.animate-scaleIn{animation:scaleIn var(--duration-normal) var(--ease-out) forwards}.animate-scaleOut{animation:scaleOut var(--duration-normal) var(--ease-in) forwards}.animate-pulse{animation:pulse 2s var(--ease-in-out) infinite}.animate-heartbeat{animation:heartbeat 1.5s var(--ease-in-out) infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinSlow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.animate-spin-slow{animation:spinSlow 3s linear infinite}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:var(--ease-out)}50%{transform:translateY(-25%);animation-timing-function:var(--ease-in)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}.animate-bounce{animation:bounce 1s infinite}.animate-shake{animation:shake 1.5s var(--ease-in-out)}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-wiggle{animation:wiggle 2s var(--ease-in-out) infinite}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes skeletonLoading{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.animate-shimmer{background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.2) 20%,rgba(255,255,255,.5) 60%,rgba(255,255,255,0));background-size:1000px 100%;animation:shimmer 2s infinite}.animate-skeleton{animation:skeletonLoading 1.5s ease-in-out infinite}.transition-all{transition-property:all;transition-timing-function:var(--ease-out);transition-duration:var(--duration-normal)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:var(--ease-out);transition-duration:var(--duration-normal)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--ease-out);transition-duration:var(--duration-normal)}.transition-transform{transition-property:transform;transition-timing-function:var(--ease-out);transition-duration:var(--duration-normal)}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--ease-out);transition-duration:var(--duration-normal)}.hover-lift{transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 12px 24px -10px rgba(0,0,0,.2)}.active-scale-95:active{transform:scale(.95)}.stagger-children>*{animation:fadeIn var(--duration-normal) var(--ease-out) backwards}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:50ms}.stagger-children>:nth-child(3){animation-delay:.1s}.stagger-children>:nth-child(4){animation-delay:.15s}.stagger-children>:nth-child(5){animation-delay:.2s}.stagger-children>:nth-child(6){animation-delay:.25s}.stagger-children>:nth-child(7){animation-delay:.3s}.stagger-children>:nth-child(8){animation-delay:.35s}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter var(--duration-slow) var(--ease-out)}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.animate-bounce,.animate-heartbeat,.animate-ping,.animate-pulse,.animate-spin,.animate-wiggle{animation:none!important}}@keyframes gpuAccelerated{0%{transform:translateZ(0)}to{transform:translateZ(0)}}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}@keyframes messageSpringIn{0%{transform:translateY(20px) scale(.95);opacity:0}50%{transform:translateY(-4px) scale(1.02);opacity:1}75%{transform:translateY(2px) scale(.99)}to{transform:translateY(0) scale(1);opacity:1}}@keyframes messageSpringInUser{0%{transform:translateX(20px) scale(.95);opacity:0}50%{transform:translateX(-4px) scale(1.02);opacity:1}75%{transform:translateX(2px) scale(.99)}to{transform:translateX(0) scale(1);opacity:1}}@keyframes messageSpringInAI{0%{transform:translateX(-20px) scale(.95);opacity:0}50%{transform:translateX(4px) scale(1.02);opacity:1}75%{transform:translateX(-2px) scale(.99)}to{transform:translateX(0) scale(1);opacity:1}}.animate-message-spring{animation:messageSpringIn .4s var(--ease-spring) forwards}.animate-message-spring-user{animation:messageSpringInUser .35s var(--ease-spring) forwards}.animate-message-spring-ai{animation:messageSpringInAI .4s var(--ease-spring) forwards}.message-bg-empathetic{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}.message-bg-encouraging{background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.message-bg-grounding{background:linear-gradient(135deg,#ede9fe,#ddd6fe)}.message-bg-validating{background:linear-gradient(135deg,#fef3c7,#fde68a)}.message-bg-supportive{background:linear-gradient(135deg,#f3e8ff,#e9d5ff)}.dark .message-bg-empathetic{background:linear-gradient(135deg,rgba(252,231,243,.1),rgba(251,207,232,.1))}.dark .message-bg-encouraging{background:linear-gradient(135deg,rgba(220,252,231,.1),rgba(187,247,208,.1))}.dark .message-bg-grounding{background:linear-gradient(135deg,rgba(237,233,254,.1),rgba(221,214,254,.1))}.dark .message-bg-validating{background:linear-gradient(135deg,rgba(254,243,199,.1),rgba(253,230,138,.1))}.dark .message-bg-supportive{background:linear-gradient(135deg,rgba(243,232,255,.1),rgba(233,213,255,.1))}@keyframes typingBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.animate-typing-dot{animation:typingBounce .6s ease-in-out infinite}.animate-typing-dot:first-child{animation-delay:0s}.animate-typing-dot:nth-child(2){animation-delay:.15s}.animate-typing-dot:nth-child(3){animation-delay:.3s}.animate-complete{will-change:auto}@keyframes focusRing{0%{box-shadow:0 0 0 0 rgba(59,130,246,.5)}to{box-shadow:0 0 0 4px rgba(59,130,246,0)}}.focus-visible-animate-focusRing:focus-visible{animation:focusRing .6s var(--ease-out)}.entrance-fade{animation:fadeIn var(--duration-slow) var(--ease-out)}.entrance-slide-up{animation:slideUp var(--duration-slow) var(--ease-out)}.entrance-scale{animation:scaleIn var(--duration-slow) var(--ease-spring)}.exit-fade{animation:fadeOut var(--duration-fast) var(--ease-in)}.exit-scale{animation:scaleOut var(--duration-fast) var(--ease-in)}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-gentle-float{animation:gentleFloat 4s ease-in-out infinite}@keyframes breathingPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}}.animate-breathing-pulse{animation:breathingPulse 4s ease-in-out infinite}@keyframes auroraShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.animate-aurora{background-size:200% 200%;animation:auroraShift 8s ease-in-out infinite}@keyframes softGlow{0%,to{box-shadow:0 0 20px rgba(139,92,246,.2)}50%{box-shadow:0 0 40px rgba(139,92,246,.4)}}.animate-soft-glow{animation:softGlow 3s ease-in-out infinite}@keyframes calmWave{0%{transform:translateX(-100%) rotate(0deg)}to{transform:translateX(100%) rotate(1turn)}}.animate-calm-wave{animation:calmWave 12s linear infinite}@keyframes streakFlicker{0%,to{transform:scale(1) rotate(-2deg);filter:brightness(1)}25%{transform:scale(1.05) rotate(1deg);filter:brightness(1.1)}50%{transform:scale(.98) rotate(-1deg);filter:brightness(.95)}75%{transform:scale(1.02) rotate(2deg);filter:brightness(1.05)}}.animate-streak-fire{animation:streakFlicker 2s ease-in-out infinite}@keyframes progressFill{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.animate-progress-fill{animation:progressFill 1.5s ease-out forwards}@keyframes celebrationBurst{0%{transform:scale(0);opacity:1}50%{transform:scale(1.2);opacity:.8}to{transform:scale(1.5);opacity:0}}.animate-celebration-burst{animation:celebrationBurst .6s ease-out forwards}@keyframes mindfulFadeIn{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-mindful-enter{animation:mindfulFadeIn .8s cubic-bezier(.23,1,.32,1) forwards}.wellness-stagger>:first-child{animation-delay:0s}.wellness-stagger>:nth-child(2){animation-delay:.1s}.wellness-stagger>:nth-child(3){animation-delay:.2s}.wellness-stagger>:nth-child(4){animation-delay:.3s}.wellness-stagger>:nth-child(5){animation-delay:.4s}.wellness-stagger>:nth-child(6){animation-delay:.5s}.wellness-stagger>:nth-child(7){animation-delay:.6s}.wellness-stagger>:nth-child(8){animation-delay:.7s}@media (prefers-reduced-motion:reduce){.animate-aurora,.animate-breathing-pulse,.animate-calm-wave,.animate-gentle-float,.animate-soft-glow,.animate-streak-fire{animation:none!important}}@keyframes prideGradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.identity-gradient-lgbtq{background:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#8b5cf6,#ef4444);background-size:200% 100%;animation:prideGradient 6s ease-in-out infinite}.identity-gradient-veteran{background:linear-gradient(135deg,#16a34a,#064e3b 50%,#166534)}.identity-gradient-cultural{background:linear-gradient(135deg,#92400e,#78350f 50%,#a16207)}.identity-border-lgbtq{-o-border-image:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#8b5cf6) 1;border-image:linear-gradient(90deg,#ef4444,#f97316,#eab308,#22c55e,#3b82f6,#8b5cf6) 1}.identity-border-veteran{border-color:#16a34a}.identity-border-cultural{border-color:#92400e}.identity-glow-lgbtq{box-shadow:0 0 30px rgba(139,92,246,.3),0 0 60px rgba(59,130,246,.2),0 0 90px rgba(34,197,94,.1)}.identity-glow-veteran{box-shadow:0 0 30px rgba(22,163,74,.3)}@keyframes activityPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}.animate-activity-pulse{animation:activityPulse 2s ease-in-out infinite}.online-indicator{position:relative}.online-indicator:after{content:"";position:absolute;bottom:0;right:0;width:12px;height:12px;background-color:#22c55e;border:2px solid white;border-radius:50%;animation:activityPulse 2s ease-in-out infinite}@keyframes postCardHover{0%{transform:translateY(0) scale(1)}to{transform:translateY(-4px) scale(1.01)}}.hover-post-card{transition:transform .3s ease,box-shadow .3s ease}.hover-post-card:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 20px 40px -10px rgba(0,0,0,.15)}@keyframes emojiPop{0%{transform:scale(0) rotate(-15deg);opacity:0}50%{transform:scale(1.3) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0deg);opacity:1}}.animate-emoji-pop{animation:emojiPop .4s cubic-bezier(.68,-.55,.265,1.55) forwards}@keyframes memberBadge{0%,to{box-shadow:0 0 0 0 rgba(139,92,246,.4)}50%{box-shadow:0 0 0 8px rgba(139,92,246,0)}}.animate-member-badge{animation:memberBadge 2s ease-out infinite}