:root {
  color-scheme: light dark;
}

html,
body {
  margin: 0;
  padding: 0;
}

body {
  min-height: 100vh;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  background:
    radial-gradient(circle at top left, rgba(37, 99, 235, 0.16), transparent 28%),
    radial-gradient(circle at top right, rgba(16, 185, 129, 0.12), transparent 24%),
    linear-gradient(180deg, #f8fafc 0%, #eef2ff 45%, #f1f5f9 100%);
}

@media (prefers-color-scheme: dark) {
  body {
    background:
      radial-gradient(circle at top left, rgba(96, 165, 250, 0.18), transparent 28%),
      radial-gradient(circle at top right, rgba(52, 211, 153, 0.12), transparent 24%),
      linear-gradient(180deg, #060914 0%, #0b1226 45%, #070a14 100%);
  }
}

@keyframes portal-spin {
  to {
    transform: rotate(360deg);
  }
}

.portal-spinner {
  animation: portal-spin 0.9s linear infinite;
}

#toast[data-type="success"] {
  border-color: rgba(52, 211, 153, 0.28);
}

#toast[data-type="error"] {
  border-color: rgba(248, 113, 113, 0.28);
}

#toast[data-type="info"] {
  border-color: rgba(96, 165, 250, 0.28);
}