:root {
  --primary-color: #23389c;
}

body {
  transition: background-color 180ms ease, color 180ms ease;
}

.mi-toast-host {
  position: fixed;
  inset: auto 16px 16px auto;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mi-toast {
  min-width: 280px;
  max-width: 360px;
  border-radius: 12px;
  padding: 12px 14px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(12px);
}

.mi-toast.mi-success {
  background: rgba(16, 185, 129, 0.12);
  border: 1px solid rgba(16, 185, 129, 0.25);
}

.mi-toast.mi-error {
  background: rgba(239, 68, 68, 0.12);
  border: 1px solid rgba(239, 68, 68, 0.25);
}

.mi-toast.mi-info {
  background: rgba(59, 130, 246, 0.12);
  border: 1px solid rgba(59, 130, 246, 0.25);
}

.mi-loading {
  position: relative;
  pointer-events: none;
  opacity: 0.75;
}

.mi-loading:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.45);
  border-radius: inherit;
}

