@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes floatSmall{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(180deg)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 20px #00a37e4d}50%{box-shadow:0 0 30px #00a37e99}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes scaleHover{0%{transform:scale(1)}to{transform:scale(1.05)}}.particle-0{animation:float 3s ease-in-out infinite}.particle-1{animation:float 4s ease-in-out infinite .5s}.particle-2{animation:float 3.5s ease-in-out infinite 1s}.particles{pointer-events:none}.floating-element{animation:float 3s ease-in-out infinite}.floating-element:nth-child(2){animation-delay:1s;animation-duration:4s}.floating-element:nth-child(3){animation-delay:2s;animation-duration:3.5s}.fade-in{animation:fadeInUp 1s ease-out}.fade-in.one{animation-delay:.1s}.fade-in.two{animation-delay:.3s}.fade-in.three{animation-delay:.5s}.card-hover-effect{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-effect:hover{transform:translateY(-10px) scale(1.02)}.button-animate{transition:all .3s ease;position:relative;overflow:hidden}.button-animate:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.button-animate:hover:before{left:100%}.loading-dots{display:inline-block}.loading-dots:after{content:"";animation:dots 2s linear infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.gradient-animate{background:linear-gradient(-45deg,#00a37e,#5b4bd3,#00a37e,#5b4bd3);background-size:400% 400%;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.scroll-reveal{opacity:0;transform:translateY(50px);transition:all .6s ease}.scroll-reveal.revealed{opacity:1;transform:translateY(0)}.icon-hover{transition:all .3s ease}.icon-hover:hover{transform:scale(1.2) rotate(10deg)}.typing-animation{overflow:hidden;border-right:2px solid #00a37e;white-space:nowrap;animation:typing 3s steps(40,end),blink-caret .75s step-end infinite}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:#00a37e}}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:all .3s ease-in-out}.page-exit{opacity:1;transform:translateY(0)}.page-exit-active{opacity:0;transform:translateY(-20px);transition:all .3s ease-in-out}@media (max-width: 768px){.floating-element,.particles{display:none}.fade-in{animation-duration:.8s}.card-hover-effect:hover{transform:translateY(-5px) scale(1.01)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.floating-element,.particles,.particle-0,.particle-1,.particle-2{animation:none!important}}@media (prefers-contrast: high){.card-hover-effect{border:2px solid currentColor}.gradient-animate{background:currentColor}}*{box-sizing:border-box}body{margin:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;line-height:1.6}code{font-family:Fira Code,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.full-width{width:100%}.full-height{height:100%}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-wrap{flex-wrap:wrap}.flex-column{flex-direction:column}.flex-grow{flex-grow:1}.m-0{margin:0}.m-1{margin:8px}.m-2{margin:16px}.m-3{margin:24px}.m-4{margin:32px}.mt-0{margin-top:0}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.mb-0{margin-bottom:0}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.p-0{padding:0}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}.p-4{padding:32px}.text-primary{color:#2196f3}.text-secondary{color:#f50057}.text-success{color:#4caf50}.text-error{color:#f44336}.text-warning{color:#ff9800}.text-info{color:#2196f3}.text-muted{color:#9e9e9e}.bg-primary{background-color:#2196f3}.bg-secondary{background-color:#f50057}.bg-success{background-color:#4caf50}.bg-error{background-color:#f44336}.bg-warning{background-color:#ff9800}.bg-info{background-color:#2196f3}.bg-light{background-color:#f5f5f5}.bg-white{background-color:#fff}.fade-in{animation:fadeIn .3s ease-in-out}.slide-in-up{animation:slideInUp .3s ease-out}.bounce-in{animation:bounceIn .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}.shadow-sm{box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.shadow-md{box-shadow:0 3px 6px #00000029,0 3px 6px #0000003b}.shadow-lg{box-shadow:0 10px 20px #00000030,0 6px 6px #0000003b}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#2196f3;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.focus-visible:focus{outline:2px solid #2196f3;outline-offset:2px}@media print{*{-webkit-print-color-adjust:exact!important;color-adjust:exact!important}body{font-size:12pt;line-height:1.4}.no-print{display:none!important}.print-only{display:block!important}.page-break{page-break-after:always}.page-break-avoid{page-break-inside:avoid}}@media (max-width: 600px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media (min-width: 601px) and (max-width: 960px){.hide-tablet{display:none!important}.show-tablet{display:block!important}}@media (min-width: 961px){.hide-desktop{display:none!important}.show-desktop{display:block!important}}.form-group{margin-bottom:16px}.form-error{color:#f44336;font-size:.875rem;margin-top:4px}.notification{position:fixed;top:20px;right:20px;padding:16px;border-radius:4px;z-index:9999;max-width:400px;animation:slideInUp .3s ease-out}.notification.success{background-color:#4caf50;color:#fff}.notification.error{background-color:#f44336;color:#fff}.notification.warning{background-color:#ff9800;color:#fff}.notification.info{background-color:#2196f3;color:#fff}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-hover tbody tr:hover{background-color:#0000000a}.chart-container{position:relative;width:100%;height:400px}.chart-container canvas{max-width:100%;max-height:100%}.file-upload-area{border:2px dashed #ccc;border-radius:8px;padding:40px;text-align:center;transition:all .3s ease;cursor:pointer}.file-upload-area:hover{border-color:#2196f3;background-color:#2196f30a}.file-upload-area.dragover{border-color:#2196f3;background-color:#2196f314}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-contrast: high){.text-muted{color:#333!important}.shadow-sm,.shadow-md,.shadow-lg{box-shadow:0 0 0 1px #000!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
