@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.notify-modal{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:1;visibility:visible;transition:opacity .3s,visibility .3s}.notify-modal__overlay{position:absolute;inset:0;background:#0006;backdrop-filter:blur(4px);animation:overlayFadeIn .2s ease-out}.notify-modal__content{position:relative;background:#fff;padding:2.5rem;border-radius:20px;max-width:460px;width:100%;z-index:1;box-shadow:0 25px 50px -12px #00000040;animation:modalFadeIn .3s cubic-bezier(.16,1,.3,1);overflow:hidden}.notify-modal__close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:#6b7280;padding:.5rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px}.notify-modal__close:hover{background:#f3f4f6;color:#1f2937}.notify-modal__close svg{width:20px;height:20px}.notify-modal__icon{width:56px;height:56px;background:#ecfdf5;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:#009e74}.notify-modal__icon svg{width:28px;height:28px}.notify-modal__title{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 .75rem;letter-spacing:-.025em}.notify-modal__description{color:#6b7280;margin-bottom:2rem;line-height:1.5}.notify-modal__form{display:flex;flex-direction:column;gap:1.25rem}.notify-modal__form-group{position:relative;margin:0}.notify-modal__input{width:100%;height:56px;padding:0 1rem;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;transition:all .2s;background:#f9fafb;font-family:inherit;margin:0;display:block}.notify-modal__input::placeholder{color:transparent}.notify-modal__input:focus{outline:none;border-color:#009e74;background:#fff;box-shadow:0 0 0 4px #009e741a}.notify-modal__label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1rem;color:#6b7280;pointer-events:none;transition:all .2s;background:transparent;padding:0;margin:0;font-family:inherit;line-height:1}.notify-modal__input:not(:placeholder-shown)+.notify-modal__label,.notify-modal__input:focus+.notify-modal__label{top:0;transform:translateY(-50%) scale(.85);background:#fff;color:#009e74;padding:0 .5rem}.notify-modal__submit{background:#009e74;color:#fff;border:none;padding:1rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.notify-modal__submit:hover:not(:disabled){background:#008362;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.notify-modal__submit:disabled{opacity:.7;cursor:not-allowed}.notify-modal__submit svg{width:20px;height:20px}.notify-modal__spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite;position:absolute;left:50%;transform:translate(-50%)}.notify-modal__status{display:flex;align-items:center;gap:.5rem;padding:1rem;border-radius:12px;font-size:.875rem;margin-top:1rem}.notify-modal__status svg{width:20px;height:20px;flex-shrink:0}.notify-modal__status--success{background:#ecfdf5;color:#009e74}.notify-modal__status--error{background:#fef2f2;color:#dc2626}.notify-modal__status--error svg{animation:errorIconShake .6s cubic-bezier(.36,0,.66,-.56)}@keyframes statusSlideIn{0%{opacity:0;transform:translateY(-16px) scale(.95)}60%{transform:translateY(2px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes iconPop{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes textFade{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes successIconSpin{0%{opacity:0;transform:scale(.5) rotate(-90deg)}70%{transform:scale(1.2) rotate(10deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes errorIconShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-2px)}40%,80%{transform:translate(2px)}}@keyframes shimmer{to{transform:translate(100%)}}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.notify-modal__content{padding:2rem 1.5rem}.notify-modal__title{font-size:1.25rem}.notify-modal__icon{width:48px;height:48px}.notify-modal__icon svg{width:24px;height:24px}}@media (max-width: 768px){.notify-modal__content{margin:1rem}}@media (min-width: 1024px){.notify-modal__content{padding:3rem}}
