@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

#nx-modal-overlay {
  position: fixed; top: 0; left: 0; width: 100%; height: 100%;
  background: rgba(13, 15, 23, 0.85); backdrop-filter: blur(12px);
  z-index: 99999; display: none; align-items: center; justify-content: center;
  font-family: 'Inter', sans-serif;
}
#nx-modal {
  background: #161b2e; border: 1px solid rgba(99,114,255,0.18);
  border-radius: 18px; padding: 2rem; max-width: 440px; width: 92%;
  box-shadow: 0 24px 64px rgba(0,0,0,0.6); position: relative;
  overflow: hidden;
}
#nx-modal::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #6372ff, #a855f7);
}
#nx-modal h2 { 
  font-size: 1.25rem; font-weight: 800; margin-bottom: 0.8rem; letter-spacing: -0.5px; color: #fff;
  display: flex; align-items: center; gap: 0.6rem;
}
#nx-modal p { color: #7c87a6; font-size: 0.92rem; line-height: 1.65; margin-bottom: 2rem; }
.nx-modal-btns { display: flex; justify-content: flex-end; gap: 0.8rem; }
.nx-btn {
  padding: 0.75rem 1.6rem; border-radius: 11px; font-size: 0.88rem; font-weight: 700;
  cursor: pointer; transition: all .18s; border: none; font-family: 'Inter', sans-serif;
}
.nx-btn-primary { 
  background: #6372ff; color: #fff; 
  box-shadow: 0 4px 16px rgba(99,114,255,0.3); 
}
.nx-btn-primary:hover { transform: translateY(-2px); filter: brightness(1.1); box-shadow: 0 6px 20px rgba(99,114,255,0.4); }
.nx-btn-danger { background: #ef4444; color: #fff; box-shadow: 0 4px 16px rgba(239,68,68,0.25); }
.nx-btn-danger:hover { transform: translateY(-2px); filter: brightness(1.1); box-shadow: 0 6px 20px rgba(239,68,68,0.35); }
.nx-btn-secondary { background: rgba(255,255,255,0.05); color: #e2e8f0; border: 1px solid rgba(255,255,255,0.08); }
.nx-btn-secondary:hover { background: rgba(255,255,255,0.08); }

@keyframes nx-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes nx-pop { from { opacity: 0; transform: scale(0.95) translateY(10px); } to { opacity: 1; transform: scale(1) translateY(0); } }

.nx-animate-fade { animation: nx-fade .2s ease forwards; }
.nx-animate-pop { animation: nx-pop .25s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards; }
