/* Obsidian 风格定理 / 提示块（由 _plugins/obsidian_callouts.rb 注入 class） */
.post-content blockquote.callout {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem 0.75rem 1rem;
  border-left: 4px solid #6366f1;
  background: #f8fafc;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.callout .callout-title {
  font-weight: 600;
  font-size: 0.95rem;
  color: #4338ca;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.callout.callout-theorem {
  border-left-color: #0d9488;
}

.post-content blockquote.callout.callout-theorem .callout-title {
  color: #0f766e;
}

.post-content blockquote.callout.callout-lemma {
  border-left-color: #0891b2;
  background: #ecfeff;
}

.post-content blockquote.callout.callout-lemma .callout-title {
  color: #0e7490;
}

.post-content blockquote.callout.callout-proposition {
  border-left-color: #4f46e5;
  background: #eef2ff;
}

.post-content blockquote.callout.callout-proposition .callout-title {
  color: #3730a3;
}

.post-content blockquote.callout.callout-proof {
  border-left-color: #16a34a;
  background: #f0fdf4;
}

.post-content blockquote.callout.callout-proof .callout-title {
  color: #166534;
}

.post-content blockquote.callout.callout-definition {
  border-left-color: #1d4ed8;
  background: #eff6ff;
}

.post-content blockquote.callout.callout-definition .callout-title {
  color: #1e40af;
}

.post-content blockquote.callout.callout-remark {
  border-left-color: #6b7280;
  background: #f9fafb;
}

.post-content blockquote.callout.callout-remark .callout-title {
  color: #374151;
}

.post-content blockquote.callout.callout-example {
  border-left-color: #db2777;
  background: #fdf2f8;
}

.post-content blockquote.callout.callout-example .callout-title {
  color: #9d174d;
}

.post-content blockquote.callout.callout-corollary {
  border-left-color: #7c3aed;
  background: #f5f3ff;
}

.post-content blockquote.callout.callout-corollary .callout-title {
  color: #5b21b6;
}

.post-content blockquote.callout.callout-note {
  border-left-color: #0284c7;
  background: #f0f9ff;
}

.post-content blockquote.callout.callout-note .callout-title {
  color: #0c4a6e;
}

.post-content blockquote.callout.callout-exercise {
  border-left-color: #f59e0b;
  background: #fffbeb;
}

.post-content blockquote.callout.callout-exercise .callout-title {
  color: #92400e;
}

.post-content blockquote.callout p:last-child {
  margin-bottom: 0;
}

.post-content blockquote.callout .callout-body p {
  margin: 0 0 0.65rem 0;
}

.post-content blockquote.callout .callout-body p:last-child {
  margin-bottom: 0;
}

.post-content blockquote.callout .math-display {
  margin: 0.75rem 0;
}

.math-display,
.post-content .math-display {
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 100%;
  padding: 0.15rem 0;
}

.math-display mjx-container,
.post-content .math-display mjx-container {
  min-width: max-content;
}

/* 前端兜底：当 _plugins 未执行时，通过 JS 添加 obsidian-theorem class */
.post-content blockquote.obsidian-theorem {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #2563eb;
  background: #eff6ff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-theorem .callout-title {
  font-weight: 700;
  color: #1d4ed8;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-lemma {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #0891b2;
  background: #ecfeff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-lemma .callout-title {
  font-weight: 700;
  color: #0e7490;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-proposition {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #4f46e5;
  background: #eef2ff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-proposition .callout-title {
  font-weight: 700;
  color: #3730a3;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-proof {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #16a34a;
  background: #f0fdf4;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-proof .callout-title {
  font-weight: 700;
  color: #166534;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-definition {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #1d4ed8;
  background: #eff6ff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-definition .callout-title {
  font-weight: 700;
  color: #1e40af;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-remark {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #6b7280;
  background: #f9fafb;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-remark .callout-title {
  font-weight: 700;
  color: #374151;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-example {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #db2777;
  background: #fdf2f8;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-example .callout-title {
  font-weight: 700;
  color: #9d174d;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-corollary {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #7c3aed;
  background: #f5f3ff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-corollary .callout-title {
  font-weight: 700;
  color: #5b21b6;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-note {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #0284c7;
  background: #f0f9ff;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-note .callout-title {
  font-weight: 700;
  color: #0c4a6e;
  margin: 0 0 0.5rem 0;
}

.post-content blockquote.obsidian-exercise {
  margin: 1.25rem 0;
  padding: 0.75rem 1rem;
  border-left: 4px solid #f59e0b;
  background: #fffbeb;
  border-radius: 0 6px 6px 0;
}

.post-content blockquote.obsidian-exercise .callout-title {
  font-weight: 700;
  color: #92400e;
  margin: 0 0 0.5rem 0;
}