.markdown-alert {
  /*
   * Keep a generic fallback so alerts still have sensible colors even when
   * data-color-scheme is missing or a custom color scheme is introduced.
   */
  --alert-color: var(--accent-color);
  --alert-border-color: var(--alert-color);
  --alert-title-color: var(--alert-color);
  --alert-background: var(--card-bg);

  padding: 16px;
  margin-bottom: 24px;
  border-left: 4px solid var(--alert-border-color);
  background-color: var(--alert-background);
  border-radius: 6px;
  border-right: 1px solid var(--border-color);
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}

.markdown-alert-title {
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 0.95rem;
  margin: 0 0 8px 0;
  line-height: 1;
  color: var(--alert-title-color);
}

.markdown-alert-icon {
  margin-right: 8px;
  font-family: var(--font-code);
  font-size: 0.9em;
}

.markdown-alert-content > *:first-child {
  margin-top: 0;
}

.markdown-alert-content > *:last-child {
  margin-bottom: 0;
}

/* Generic fallbacks. Theme-specific values below restore the original core colors. */
.markdown-alert-note {
  --alert-color: #388bfd;
}

.markdown-alert-tip {
  --alert-color: #2da44e;
}

.markdown-alert-important {
  --alert-color: #8957e5;
}

.markdown-alert-warning {
  --alert-color: #bf8700;
}

.markdown-alert-caution {
  --alert-color: #cf222e;
}

/* Dark color scheme: values restored from the pre-move core theme. */
:root[data-color-scheme="dark"] .markdown-alert-note {
  --alert-background: #0d1117;
  --alert-border-color: #388bfd;
  --alert-title-color: #58a6ff;
}

:root[data-color-scheme="dark"] .markdown-alert-tip {
  --alert-background: #0d1117;
  --alert-border-color: #3fb950;
  --alert-title-color: #3fb950;
}

:root[data-color-scheme="dark"] .markdown-alert-important {
  --alert-background: #0d1117;
  --alert-border-color: #a371f7;
  --alert-title-color: #a371f7;
}

:root[data-color-scheme="dark"] .markdown-alert-warning {
  --alert-background: #0d1117;
  --alert-border-color: #d29922;
  --alert-title-color: #d29922;
}

:root[data-color-scheme="dark"] .markdown-alert-caution {
  --alert-background: #0d1117;
  --alert-border-color: #f85149;
  --alert-title-color: #f85149;
}

/* Light color scheme: values restored from the pre-move core theme. */
:root[data-color-scheme="light"] .markdown-alert-note {
  --alert-background: #eff6ff;
  --alert-border-color: #2563eb;
  --alert-title-color: #1d4ed8;
}

:root[data-color-scheme="light"] .markdown-alert-tip {
  --alert-background: #ecfdf5;
  --alert-border-color: #059669;
  --alert-title-color: #047857;
}

:root[data-color-scheme="light"] .markdown-alert-important {
  --alert-background: #f5f3ff;
  --alert-border-color: #7c3aed;
  --alert-title-color: #6d28d9;
}

:root[data-color-scheme="light"] .markdown-alert-warning {
  --alert-background: #fffbeb;
  --alert-border-color: #d97706;
  --alert-title-color: #b45309;
}

:root[data-color-scheme="light"] .markdown-alert-caution {
  --alert-background: #fef2f2;
  --alert-border-color: #dc2626;
  --alert-title-color: #b91c1c;
}
