@keyframes backgroundBreathe{0%,to{filter:brightness(1)}50%{filter:brightness(1.02)}}@keyframes floatElement{0%{transform:translate(0) rotate(0deg)}33%{transform:translate(var(--float-x,5px),var(--float-y,-8px)) rotate(.5deg)}66%{transform:translate(calc(var(--float-x, 5px) * -.5),calc(var(--float-y, -8px) * .7)) rotate(-.3deg)}to{transform:translate(var(--float-x,5px),var(--float-y,-8px)) rotate(0deg)}}@keyframes backgroundBreatheFast{0%,to{filter:brightness(1.02)}50%{filter:brightness(1.05)}}@keyframes breathingLineGlow{0%,to{opacity:.06}50%{opacity:.15}}@keyframes loading-bar{0%{transform:translateX(-100%)}50%{transform:translateX(200%)}to{transform:translateX(-100%)}}@keyframes loadingCircle{0%{stroke-dashoffset:251.2}to{stroke-dashoffset:0}}@keyframes loadingBar{0%{transform:translateX(-100%);width:40%}50%{transform:translateX(100%);width:40%}to{transform:translateX(250%);width:40%}}@keyframes buttonShake{0%,to{transform:translateX(0)}20%{transform:translateX(-3px)}40%{transform:translateX(3px)}60%{transform:translateX(-2px)}80%{transform:translateX(2px)}}@keyframes buttonLoadingPulse{0%,to{opacity:.9}50%{opacity:1}}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cardFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@keyframes radialWave{0%{opacity:1;transform:scale(.8)}to{opacity:0;transform:scale(1.5)}}@keyframes successGlow{0%{opacity:0;transform:translateX(-100%)}50%{opacity:1}to{opacity:0;transform:translateX(100%)}}@keyframes successCheck{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}@keyframes indicatorLineAppear{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}@keyframes subtlePulse{0%,to{box-shadow:0 0 0 0 rgba(59,130,246,0)}50%{box-shadow:0 0 0 4px rgba(59,130,246,.1)}}@keyframes dataLinesFlow{0%{background-position:0 0}to{background-position:0 100px}}@keyframes statusPulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes errorFlash{0%,to{background-color:transparent}50%{background-color:rgba(239,68,68,.05)}}.auth-background-breathe{animation:backgroundBreathe 4s ease-in-out infinite}.auth-background-breathe-fast{animation:backgroundBreatheFast 2s ease-in-out infinite}.auth-breathing-line{animation:breathingLineGlow 3s ease-in-out infinite}.auth-loading-circle{animation:loadingCircle 1.5s linear infinite}.auth-loading-bar{animation:loadingBar 1.5s ease-in-out infinite}.auth-button-shake{animation:buttonShake .4s ease-in-out}.auth-button-loading{animation:buttonLoadingPulse 1.5s ease-in-out infinite}.auth-card-fade-in{animation:cardFadeIn .4s ease-out forwards}.auth-card-fade-out{animation:cardFadeOut .3s ease-out forwards}.auth-radial-wave{animation:radialWave .6s ease-out forwards}.auth-success-glow{animation:successGlow .6s ease-out forwards}.auth-subtle-pulse{animation:subtlePulse 2s ease-in-out infinite}.auth-data-lines{animation:dataLinesFlow 20s linear infinite}.auth-status-pulse{animation:statusPulse 2s ease-in-out infinite}.auth-indicator-line{animation:indicatorLineAppear .15s ease-out forwards;transform-origin:center}.auth-error-flash{animation:errorFlash .3s ease-out}@media (prefers-reduced-motion:reduce){.auth-background-breathe,.auth-background-breathe-fast,.auth-breathing-line,.auth-button-loading,.auth-button-shake,.auth-card-fade-in,.auth-card-fade-out,.auth-data-lines,.auth-error-flash,.auth-indicator-line,.auth-loading-bar,.auth-loading-circle,.auth-radial-wave,.auth-status-pulse,.auth-subtle-pulse,.auth-success-glow{animation:none!important;transition:none!important}.auth-card-fade-in{opacity:1;transform:translateY(0)}.auth-card-fade-out{opacity:0}.auth-indicator-line{transform:scaleY(1);opacity:1}}:root{--auth-ease-out:cubic-bezier(0.33,1,0.68,1);--auth-ease-in-out:cubic-bezier(0.65,0,0.35,1);--auth-duration-fast:100ms;--auth-duration-normal:150ms;--auth-duration-slow:300ms;--auth-duration-breathing:4000ms}