@keyframes slideInBounce{0%{opacity:0;transform:translateY(-30px) scale(.8)}60%{opacity:.8;transform:translateY(5px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideOutFade{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.3;transform:translateY(-15px) scale(.95)}to{opacity:0;transform:translateY(-30px) scale(.8)}}@keyframes expandLine{0%{transform:scaleX(0);opacity:0}50%{opacity:.5}to{transform:scaleX(1);opacity:1}}@keyframes collapseLine{0%{transform:scaleX(1);opacity:1}50%{opacity:.5}to{transform:scaleX(0);opacity:0}}@keyframes moveUpSmooth{0%{transform:translateY(0)}50%{transform:translateY(-30px) scale(1.1)}to{transform:translateY(-25px) scale(1)}}@keyframes moveDownSmooth{0%{transform:translateY(-25px)}50%{transform:translateY(5px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes rotateSwitchButton{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(90deg) scale(1.1)}50%{transform:rotate(180deg) scale(1.15)}75%{transform:rotate(270deg) scale(1.1)}to{transform:rotate(1turn) scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.5)}50%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.05)}to{opacity:0;transform:scale(.5)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes menu-dropdown-enter{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes menu-dropdown-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes draw{50%{fill:rgba(0,0,0,0)}to{fill:#02967b;stroke-dashoffset:0}}@keyframes draw-back{0%{fill:#02967b;stroke-dashoffset:0}10%{fill:rgba(0,0,0,0)}to{fill:none;stroke-dashoffset:2000}}@keyframes hide{to{display:none}}@keyframes fadeInOut{0%{opacity:0;transform:translateY(4px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes pulse{0%{opacity:.8;transform:scale(1)}25%{opacity:1;transform:scale(1.05)}75%{opacity:.8;transform:scale(.95)}to{opacity:.8;transform:scale(1)}}@keyframes flyAway{0%{opacity:0;offset-distance:0;transform:scale(.8) rotate(0deg)}10%{opacity:1;transform:scale(1) rotate(-10deg)}to{opacity:0;offset-distance:100%;transform:scale(.7) rotate(10deg)}}.error-provider{position:relative}.error-provider-layer{position:fixed;inset:0;pointer-events:none;z-index:100000;display:flex;justify-content:center;align-items:center;padding:1rem}.error-container{pointer-events:auto;display:flex;flex-direction:column;gap:.5rem;width:-moz-fit-content;width:fit-content;max-width:500px}@media(max-width:768px){.error-container{max-width:90vw}}.error-message{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-radius:.875rem;font-size:12px;font-weight:500;line-height:1.4;box-shadow:0 10px 32px -4px rgba(0,0,0,.3),0 4px 16px -2px rgba(0,0,0,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.1)}.error-message .error-icon{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.125rem}.error-content{flex:1 1;display:flex;flex-direction:column;gap:.25rem}.error-title{font-weight:600;font-size:14px;line-height:1.3;opacity:.95}.error-text{font-weight:400;font-size:12px;line-height:1.4;opacity:.9}.error-mode-error{border:1px solid #ff4f4f;background-color:#fff}.error-mode-success{border:1px solid #02967b;background-color:#cceae5;animation:success-pop .3s cubic-bezier(.68,-.55,.265,1.55)}@keyframes success-pop{0%{transform:scale(.9);opacity:0}50%{transform:scale(1.02)}to{transform:scale(1);opacity:1}}@media(max-width:480px){.error-message{padding:.875rem 1rem;font-size:12px}.error-title{font-size:14px}.error-text{font-size:12px}.error-message .error-icon{width:1.125rem;height:1.125rem}}.pop-icon{padding:6px;border-radius:100px}.pop-icon.error{background-color:rgba(255,79,79,.1)}.pop-icon.success{background-color:rgba(2,150,123,.1)}