/* Obsidian Callout Styles
   Matches Obsidian's native callout rendering with butterfly theme aesthetics */

.callout {
  margin: 1em 0;
  padding: 16px 20px;
  border-left: 4px solid;
  border-radius: 4px;
  background: #f7f7f7;
  color: var(--font-color, #333);
}

.callout-title {
  font-weight: 600;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  user-select: none;
}

.callout-icon {
  font-size: 1.05em;
  width: 1.2em;
  text-align: center;
  flex-shrink: 0;
}

.callout-title-text {
  line-height: 1.4;
}

.callout-content > :first-child { margin-top: 0; }
.callout-content > :last-child  { margin-bottom: 0; }

/* ── Per-type colors ── */

.callout-note      { border-left-color: #448aff; }
.callout-note .callout-icon { color: #448aff; }

.callout-abstract  { border-left-color: #5c6bc0; }
.callout-abstract .callout-icon { color: #5c6bc0; }

.callout-info      { border-left-color: #00acc1; }
.callout-info .callout-icon { color: #00acc1; }

.callout-todo      { border-left-color: #2196f3; }
.callout-todo .callout-icon { color: #2196f3; }

.callout-tip       { border-left-color: #4caf50; }
.callout-tip .callout-icon { color: #4caf50; }

.callout-important { border-left-color: #e040fb; }
.callout-important .callout-icon { color: #e040fb; }

.callout-success   { border-left-color: #43a047; }
.callout-success .callout-icon { color: #43a047; }

.callout-question  { border-left-color: #ff8f00; }
.callout-question .callout-icon { color: #ff8f00; }

.callout-warning   { border-left-color: #e9b143; }
.callout-warning .callout-icon { color: #e9b143; }

.callout-failure   { border-left-color: #d32f2f; }
.callout-failure .callout-icon { color: #d32f2f; }

.callout-danger    { border-left-color: #e53935; }
.callout-danger .callout-icon { color: #e53935; }

.callout-bug       { border-left-color: #c62828; }
.callout-bug .callout-icon { color: #c62828; }

.callout-example   { border-left-color: #7c4dff; }
.callout-example .callout-icon { color: #7c4dff; }

.callout-quote     { border-left-color: #9e9e9e; }
.callout-quote .callout-icon { color: #9e9e9e; }

/* ── Collapsible callouts ── */
details.callout > .callout-title {
  cursor: pointer;
}

/* ── Dark mode ── */
[data-theme='dark'] .callout {
  background: rgba(255, 255, 255, 0.05);
}

[data-theme='dark'] .callout-note      { background: rgba(68, 138, 255, 0.1); }
[data-theme='dark'] .callout-abstract  { background: rgba(92, 107, 192, 0.1); }
[data-theme='dark'] .callout-info      { background: rgba(0, 172, 193, 0.1); }
[data-theme='dark'] .callout-todo      { background: rgba(33, 150, 243, 0.1); }
[data-theme='dark'] .callout-tip       { background: rgba(76, 175, 80, 0.1); }
[data-theme='dark'] .callout-important { background: rgba(224, 64, 251, 0.1); }
[data-theme='dark'] .callout-success   { background: rgba(67, 160, 71, 0.1); }
[data-theme='dark'] .callout-question  { background: rgba(255, 143, 0, 0.1); }
[data-theme='dark'] .callout-warning   { background: rgba(233, 177, 67, 0.1); }
[data-theme='dark'] .callout-failure   { background: rgba(211, 47, 47, 0.1); }
[data-theme='dark'] .callout-danger    { background: rgba(229, 57, 53, 0.1); }
[data-theme='dark'] .callout-bug       { background: rgba(198, 40, 40, 0.1); }
[data-theme='dark'] .callout-example   { background: rgba(124, 77, 255, 0.1); }
[data-theme='dark'] .callout-quote     { background: rgba(158, 158, 158, 0.1); }
