/* SweetAlert2 theme bridge for Bootstrap + variables.css */

:root {
  --swal2-bg: var(--bs-body-bg);
  --swal2-color: var(--bs-body-color);
  --swal2-muted: var(--bs-secondary-color, var(--bs-light-text));
  --swal2-border: var(--bs-border-color);
  --swal2-focus-ring: color-mix(in srgb, var(--bs-primary) 25%, transparent);
}

.swal2-container {
  z-index: 1080;
}

.swal2-container.swal2-backdrop-show,
.swal2-container.swal2-noanimation {
  background: color-mix(in srgb, var(--bs-dark) 45%, transparent);
}

.swal2-popup {
  background: var(--swal2-bg);
  color: var(--swal2-color);
  border: 1px solid var(--swal2-border);
  border-radius: var(--bs-border-radius-lg, 0.5rem);
  box-shadow: var(--bs-box-shadow-card, var(--bs-box-shadow));
}

.swal2-title {
  margin: 0;
  padding: 0.25rem 1rem 0;
  color: var(--swal2-color);
  font-size: 1.8rem;
  font-weight: 700;
}

.swal2-html-container {
  margin-top: 0.75rem;
  color: var(--swal2-color);
}

.swal2-footer {
  border-top: 1px solid var(--swal2-border);
  color: var(--swal2-muted);
}

.swal2-actions {
  gap: 0.5rem;
  margin-top: 1rem;
}

.swal2-actions .swal2-styled,
.swal2-actions .btn {
  margin: 0;
}

.swal2-actions:not(.swal2-loading) .swal2-styled:hover,
.swal2-actions:not(.swal2-loading) .swal2-styled:active,
.swal2-actions:not(.swal2-loading) .swal2-styled:focus {
  background-image: none !important;
}

.swal2-styled {
  border: 1px solid transparent;
  border-radius: var(--bs-border-radius, 0.375rem);
  box-shadow: none !important;
  font-weight: 600;
}

.swal2-styled:focus-visible,
.swal2-close:focus-visible {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--swal2-focus-ring) !important;
}

.swal2-styled.swal2-confirm {
  background: var(--bs-primary);
  color: var(--bs-white);
}

.swal2-actions .swal2-styled.swal2-confirm.btn-danger,
.swal2-actions .swal2-confirm.btn-danger {
  background: var(--bs-danger) !important;
  border-color: var(--bs-danger) !important;
  color: var(--bs-white) !important;
}

.swal2-actions .swal2-styled.swal2-confirm.btn-danger:hover,
.swal2-actions .swal2-confirm.btn-danger:hover,
.swal2-actions .swal2-styled.swal2-confirm.btn-danger:focus,
.swal2-actions .swal2-confirm.btn-danger:focus,
.swal2-actions .swal2-styled.swal2-confirm.btn-danger:active,
.swal2-actions .swal2-confirm.btn-danger:active {
  background: color-mix(in srgb, var(--bs-danger) 88%, black) !important;
  border-color: color-mix(in srgb, var(--bs-danger) 88%, black) !important;
  color: var(--bs-white) !important;
}

.swal2-styled.swal2-deny {
  background: var(--bs-danger);
  color: var(--bs-white);
}

.swal2-styled.swal2-cancel {
  background: var(--bs-secondary);
  color: var(--bs-white);
}

.swal2-input,
.swal2-file,
.swal2-textarea,
.swal2-select {
  border: 1px solid var(--swal2-border);
  border-radius: var(--bs-border-radius, 0.375rem);
  background: var(--bs-form-control-bg, var(--bs-body-bg));
  color: var(--swal2-color);
  box-shadow: none;
}

.swal2-input::placeholder,
.swal2-textarea::placeholder {
  color: var(--swal2-muted);
}

.swal2-input:focus,
.swal2-file:focus,
.swal2-textarea:focus,
.swal2-select:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem var(--swal2-focus-ring);
}

.swal2-input.swal2-inputerror,
.swal2-textarea.swal2-inputerror {
  border-color: var(--bs-danger) !important;
  box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--bs-danger) 25%, transparent) !important;
}

.swal2-validation-message {
  border: 1px solid var(--bs-danger-border-subtle, var(--bs-danger));
  border-radius: var(--bs-border-radius, 0.375rem);
  background: var(--bs-danger-bg-subtle, color-mix(in srgb, var(--bs-danger) 12%, transparent));
  color: var(--bs-danger);
  font-weight: 500;
}

.swal2-validation-message::before {
  background-color: var(--bs-danger);
}

.swal2-close {
  color: var(--swal2-muted);
}

.swal2-close:hover {
  color: var(--swal2-color);
}

.swal2-loader {
  border-color: var(--bs-primary) transparent var(--bs-primary) transparent;
}

.swal2-icon.swal2-error {
  border-color: var(--bs-danger);
  color: var(--bs-danger);
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
  background-color: var(--bs-danger);
}

.swal2-icon.swal2-warning {
  border-color: var(--bs-warning);
  color: var(--bs-warning);
}

.swal2-icon.swal2-info,
.swal2-icon.swal2-question {
  border-color: var(--bs-info);
  color: var(--bs-info);
}

.swal2-icon.swal2-success {
  border-color: var(--bs-success);
  color: var(--bs-success);
}

.swal2-icon.swal2-success .swal2-success-ring {
  border-color: color-mix(in srgb, var(--bs-success) 35%, transparent);
}

.swal2-icon.swal2-success [class^='swal2-success-line'] {
  background-color: var(--bs-success);
}

.swal2-popup.swal2-toast {
  border-radius: var(--bs-border-radius, 0.375rem);
  border: 1px solid var(--swal2-border);
  background: color-mix(in srgb, var(--swal2-bg) 90%, transparent);
  box-shadow: var(--bs-box-shadow, 0 0.25rem 0.75rem color-mix(in srgb, var(--bs-dark) 15%, transparent));
}

.swal2-popup.swal2-toast .swal2-title,
.swal2-popup.swal2-toast .swal2-html-container {
  color: var(--swal2-color);
}

.no-shadow .swal2-modal {
  box-shadow: none !important;
}

.swal-loading-popup {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  width: auto !important;
}

.swal-loading-popup .swal2-html-container,
.swal-loading-popup .swal2-title,
.swal-loading-popup .swal2-actions,
.swal-loading-popup .swal2-close {
  display: none !important;
}

.newSize {
  border-width: 0.5rem;
  width: 4rem !important;
  height: 4rem !important;
  z-index: 99999;
}
