.c-evidence-trigger { display: inline-flex; align-items: center; gap: 22px; min-height: 48px; min-width: 44px; padding: 9px 15px; margin-top: 22px; background: var(--white); border: 1px solid var(--green); text-decoration: none; font-size: 16px; line-height: 1.5; border-radius: 3px; }
.c-evidence-trigger:hover { background: var(--mint); }
.c-evidence { margin-top: 20px; padding: 30px; background: #e9eadd; }
.c-evidence h2 { font-size: 24px; }
.c-evidence-intro { color: var(--muted); font-size: 16px; margin-top: 12px; }
.c-footnotes { list-style: none; padding: 0; margin-top: 18px; }
.c-footnote { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 18px; padding: 22px 0; border-top: 1px solid #a6b09f; scroll-margin-top: 24px; }
.c-footnote-letter { display: grid; align-content: start; font-weight: 700; color: var(--green); }
.c-footnote h3 { font-size: 16px; }
.c-source-list { list-style: none; padding: 0; }
.c-source-link { display: inline-flex; align-items: center; min-height: 48px; min-width: 44px; padding: 10px 0; overflow-wrap: anywhere; font-size: 16px; line-height: 1.45; }
.c-source-link > span { margin-left: 10px; }
.c-drawer { color: var(--ink); background: var(--white); border: 0; border-left: 2px solid var(--green); padding: 0; margin: 0 0 0 auto; width: min(560px, 100%); max-width: 100%; height: 100dvh; max-height: 100dvh; overflow-y: auto; }
.c-drawer::backdrop { background: rgb(12 35 27 / 60%); }
.c-drawer-header { display: flex; align-items: start; gap: 20px; justify-content: space-between; padding: 26px; background: var(--mint); border-bottom: 1px solid var(--rule); }
.c-drawer-header h2 { font-size: 24px; }
.c-drawer-close { display: inline-flex; gap: 14px; align-items: center; flex-shrink: 0; min-height: 48px; min-width: 44px; padding: 10px 14px; border: 1px solid var(--green); background: var(--white); color: var(--green); font-size: 16px; border-radius: 3px; }
.c-drawer-body { padding: 28px; }
.c-drawer-body > p { margin: 18px 0; }
.c-drawer-body .c-source-list { margin-top: 18px; }
.c-drawer-body .c-reading-text { font-size: 18px; }
.c-drawer-return { display: inline-flex; min-height: 48px; align-items: center; padding: 10px 0; font-size: 16px; }
@media (max-width: 680px) {
  .c-evidence { padding: 24px 18px; }
  .c-footnote { grid-template-columns: 25px minmax(0, 1fr); gap: 10px; }
  .c-drawer-header { padding: 20px; gap: 12px; }
  .c-drawer-header h2 { font-size: 22px; }
  .c-drawer-body { padding: 22px; }
}
@media print {
  .c-drawer { display: none; }
  .c-evidence-trigger { display: none; }
  .c-source-link { color: #222; }
}
