/* =======================================================
   Trinity — SweetAlert2 Custom Theme (dark / glass)
   ======================================================= */

/* Ensure above modals */
.swal2-container {
  z-index: 200000 !important;
  backdrop-filter: blur(2px);
}

/* Main popup */
.swal2-popup {
  background: rgba(0, 0, 0, 0.94) !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 14px !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(4px);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  padding: 1.6em 2em !important;
}

/* Title and text */
.swal2-title {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  text-shadow: 0 0 10px rgba(255,255,255,0.1);
}

.swal2-html-container {
  color: rgba(255,255,255,0.9) !important;
  font-size: 15px !important;
}

/* Icon colors */
.swal2-icon.swal2-success {
  border-color: #38c172 !important;
  color: #38c172 !important;
}
.swal2-icon.swal2-error {
  border-color: #ff4d4f !important;
  color: #ff4d4f !important;
}
.swal2-icon.swal2-warning {
  border-color: #facc15 !important;
  color: #facc15 !important;
}
.swal2-icon.swal2-info {
  border-color: #60a5fa !important;
  color: #60a5fa !important;
}

/* Buttons */
.swal2-styled {
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  padding: 10px 22px !important;
  box-shadow: 0 6px 20px rgba(0,0,0,0.25);
  transition: all 0.2s ease-in-out;
}

/* Confirm (main) */
.swal2-confirm {
  background: #ffffff !important;
  color: #000000 !important;
}
.swal2-confirm:hover {
  background: #e4e4e4 !important;
  transform: translateY(-2px);
}

/* Cancel */
.swal2-cancel {
  background: transparent !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,0.4) !important;
}
.swal2-cancel:hover {
  background: rgba(255,255,255,0.1) !important;
  transform: translateY(-2px);
}

/* Input fields */
.swal2-input,
.swal2-textarea {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.25) !important;
  border-radius: 8px !important;
  color: #fff !important;
  font-size: 15px !important;
}
.swal2-input:focus,
.swal2-textarea:focus {
  border-color: #ffffff !important;
  box-shadow: 0 0 0 2px rgba(255,255,255,0.2) !important;
}

/* Toast variant (top small notifications) */
.swal2-toast {
  background: rgba(0, 0, 0, 0.94) !important;
  color: #fff !important;
  border-radius: 10px !important;
  border: 1px solid rgba(255,255,255,0.08);
  box-shadow: 0 8px 20px rgba(0,0,0,0.7);
}

/* Loader spinner */
.swal2-loader {
  border-color: #fff rgba(255,255,255,0.2) rgba(255,255,255,0.2) rgba(255,255,255,0.2) !important;
}

/* Adjust scrollbar in custom HTML */
.swal2-html-container::-webkit-scrollbar {
  width: 8px;
}
.swal2-html-container::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.2);
  border-radius: 4px;
}

/* Optional animations */
.swal2-show {
  animation: swal-fade-in 0.25s ease-out;
}
@keyframes swal-fade-in {
  from { opacity: 0; transform: scale(0.9); }
  to { opacity: 1; transform: scale(1); }
}
