.loading-overlay{-webkit-backdrop-filter:blur(4px);z-index:9999;background:#0009;justify-content:center;align-items:center;width:100%;height:100%;animation:.3s ease-in-out fadeIn;display:flex;position:fixed;top:0;left:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-container{background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-width:200px;padding:2rem;animation:.4s ease-out slideUp;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-spinner{width:64px;height:64px;position:relative}.spinner-ring{border:4px solid #0000;border-top-color:#3b82f6;border-radius:50%;width:100%;height:100%;animation:1.2s cubic-bezier(.5,0,.5,1) infinite spin;position:absolute}.spinner-ring:first-child{border-top-color:#3b82f6;animation-delay:-.45s}.spinner-ring:nth-child(2){border-top-color:#60a5fa;width:80%;height:80%;animation-delay:-.3s;top:10%;left:10%}.spinner-ring:nth-child(3){border-top-color:#93c5fd;width:60%;height:60%;animation-delay:-.15s;top:20%;left:20%}.spinner-ring:nth-child(4){border-top-color:#dbeafe;width:40%;height:40%;top:30%;left:30%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-text{color:#1f2937;text-align:center;margin:0;font-family:Cairo,sans-serif;font-size:1.1rem;font-weight:600}.loading-dots{gap:.5rem;margin-top:.5rem;display:flex}.loading-dots span{background:#3b82f6;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both bounce}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.loading-dots span:nth-child(3){animation-delay:0}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@media (max-width:640px){.loading-container{min-width:160px;padding:1.5rem}.loading-spinner{width:48px;height:48px}.loading-text{font-size:1rem}}@media (prefers-color-scheme:dark){.loading-container{background:#1f2937}.loading-text{color:#f9fafb}}
