:root{--animation-duration-fast:.2s;--animation-duration-normal:.3s;--animation-duration-slow:.4s;--animation-easing:cubic-bezier(.4, 0, .2, 1);--animation-easing-bounce:cubic-bezier(.34, 1.56, .64, 1);--animation-easing-smooth:cubic-bezier(.25, .1, .25, 1)}.section-transition{transition:opacity var(--animation-duration-normal) var(--animation-easing), transform var(--animation-duration-normal) var(--animation-easing)}.section-enter{opacity:1;transform:translateY(0)}.section-exit{opacity:0;pointer-events:none;transform:translateY(-12px)}.section-enter-from-below{animation:slideInFromBelow var(--animation-duration-normal) var(--animation-easing) forwards}@keyframes slideInFromBelow{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes staggeredFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.result-card-enter{animation:slideInFromBelow var(--animation-duration-normal) var(--animation-easing-smooth) forwards;animation-fill-mode:both}.result-card-enter:first-child{animation-delay:0s}.result-card-enter:nth-child(2){animation-delay:50ms}.result-card-enter:nth-child(3){animation-delay:.1s}.result-card-enter:nth-child(4){animation-delay:.15s}.result-card-enter:nth-child(5){animation-delay:.2s}.result-card-enter:nth-child(6){animation-delay:.25s}.result-card-enter:nth-child(7){animation-delay:.3s}.result-card-enter:nth-child(8){animation-delay:.35s}.gauge-enter{animation:scaleIn var(--animation-duration-slow) var(--animation-easing-bounce) forwards;animation-delay:.1s;animation-fill-mode:both}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.card-interactive{transition:box-shadow var(--animation-duration-fast) var(--animation-easing), transform var(--animation-duration-fast) var(--animation-easing), border-color var(--animation-duration-fast) var(--animation-easing)}.card-interactive:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.btn-animated{transition:background-color var(--animation-duration-fast) var(--animation-easing), transform var(--animation-duration-fast) var(--animation-easing), box-shadow var(--animation-duration-fast) var(--animation-easing)}.btn-animated:hover:not(:disabled){transform:translateY(-1px)}.btn-animated:active:not(:disabled){transform:translateY(0)}.loading-pulse{animation:pulse 1.5s var(--animation-easing) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.skeleton-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e8e8e8 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.container-resize{transition:height var(--animation-duration-normal) var(--animation-easing), max-height var(--animation-duration-normal) var(--animation-easing)}.content-fade{transition:opacity var(--animation-duration-fast) var(--animation-easing)}.content-fade.hidden{opacity:0;pointer-events:none}.header-transition{transition:opacity var(--animation-duration-normal) var(--animation-easing), transform var(--animation-duration-normal) var(--animation-easing)}.delay-50{animation-delay:50ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.duration-fast{animation-duration:var(--animation-duration-fast)}.duration-normal{animation-duration:var(--animation-duration-normal)}.duration-slow{animation-duration:var(--animation-duration-slow)}.fill-forwards{animation-fill-mode:forwards}.fill-both{animation-fill-mode:both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
