/* Scoped to the citation section; no external fonts or theme-wide rules. */
.yin-cite {
  --yin-cite-accent: #14745b;
  box-sizing: border-box;
  display: block;
  max-width: 100%;
  margin: 3rem 0 1.5rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid #d2d6d3;
  border-left: 4px solid var(--yin-cite-accent);
  border-radius: 4px;
  background: #f8f8f5;
  color: #202622;
  font: 400 16px/1.6 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: normal;
  text-align: left;
  text-transform: none;
  text-indent: 0;
  font-variant: normal;
  clear: both;
}
.yin-cite *, .yin-cite *::before, .yin-cite *::after { box-sizing: border-box; }
.yin-cite .yin-cite__header { margin: 0 0 1.25rem; padding: 0; }
.yin-cite .yin-cite__header h2 { margin: 0; padding: 0; color: #202622; background: transparent; border: 0; font: 650 1.2rem/1.3 system-ui,sans-serif; text-transform: none; letter-spacing: -.02em; }
.yin-cite .yin-cite__toolbar { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0 0 1.5rem; }
.yin-cite .yin-cite__field { display: flex; flex-direction: column; gap: .3rem; margin: 0; min-width: 0; color: #4a554d; font: 500 .75rem/1.5 system-ui,sans-serif; }
.yin-cite .yin-cite__field select { display: block; width: auto; min-width: 145px; max-width: 100%; min-height: 42px; margin: 0; padding: .45rem 1.4rem .45rem .65rem; border: 1px solid #bec6bf; border-radius: 3px; background: #fff; color: #202622; font: 500 .85rem/1.5 system-ui,sans-serif; text-transform: none; letter-spacing: normal; box-shadow: none; }
.yin-cite .yin-cite__label { margin: 0 0 .65rem; padding: 0; font: 600 .68rem/1.5 system-ui,sans-serif; color: #59635c; letter-spacing: .07em; text-transform: uppercase; }
.yin-cite .yin-cite__reference { margin: 0; padding: 0 0 0 1.35rem; text-indent: -1.35rem; color: #202622; font: 400 1rem/1.85 Georgia,"Times New Roman",serif; overflow-wrap: anywhere; word-break: normal; text-transform: none; letter-spacing: normal; }
.yin-cite .yin-cite__reference--note { padding-left: 0; text-indent: 0; }
.yin-cite .yin-cite__reference em { font-style: italic; }
.yin-cite a.yin-cite__url, .yin-cite a.yin-cite__url:visited { color: #31483b; font: inherit; background: transparent; border: 0; text-decoration: underline; text-decoration-color: #a2afa5; text-underline-offset: 3px; overflow-wrap: anywhere; }
.yin-cite .yin-cite__actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .65rem; margin: 1.4rem 0 0; }
.yin-cite .yin-cite__copy, .yin-cite .yin-cite__exports > summary { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: .65rem; min-height: 42px; margin: 0; padding: .55rem .85rem; border: 1px solid #bec6bf; border-radius: 3px; background: transparent; color: #29362c; box-shadow: none; font: 600 .78rem/1.3 system-ui,sans-serif; text-decoration: none; text-transform: none; letter-spacing: normal; cursor: pointer; white-space: nowrap; }
.yin-cite .yin-cite__copy { color: #fff; background: #263d30; border-color: #263d30; }
.yin-cite .yin-cite__copy:hover { color: #fff; background: #15271c; }
.yin-cite .yin-cite__copy:disabled { opacity: .7; cursor: wait; }
.yin-cite .yin-cite__exports { position: relative; margin: 0; padding: 0; border: 0; }
.yin-cite .yin-cite__exports > summary { list-style: none; }
.yin-cite .yin-cite__exports > summary::-webkit-details-marker { display: none; }
.yin-cite .yin-cite__exports > summary:hover { background: #e9ede7; }
.yin-cite .yin-cite__download-list { position: absolute; z-index: 20; top: calc(100% + .4rem); right: 0; width: 248px; max-width: calc(100vw - 64px); padding: .35rem; border: 1px solid #c7cec8; border-radius: 4px; background: #fff; box-shadow: 0 8px 24px #2026221a; }
.yin-cite a.yin-cite__download { display: flex; flex-direction: column; gap: .15rem; margin: 0; padding: .6rem .7rem; border: 0; border-radius: 2px; background: transparent; color: #263d30; font: 600 .82rem/1.4 system-ui,sans-serif; text-decoration: none; text-transform: none; letter-spacing: normal; }
.yin-cite a.yin-cite__download small { color: #59635c; font: 400 .72rem/1.5 system-ui,sans-serif; }
.yin-cite a.yin-cite__download:hover { background: #eef2ec; }
.yin-cite .yin-cite__bibtex { margin: 1.5rem 0 0; padding: 1rem 0 0; border-top: 1px solid #d9ded8; }
.yin-cite .yin-cite__bibtex-header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .65rem; margin: 0 0 .75rem; }
.yin-cite .yin-cite__bibtex-header h3 { margin: 0; padding: 0; border: 0; background: transparent; color: #46534a; font: 600 .85rem/1.5 system-ui,sans-serif; text-transform: none; letter-spacing: normal; }
.yin-cite .yin-cite__source { margin: 1.2rem 0 0; padding: .8rem 0 0; border: 0; border-top: 1px solid #d9ded8; }
.yin-cite .yin-cite__source > summary { margin: 0; padding: .25rem 0; color: #46534a; font: 500 .8rem/1.5 system-ui,sans-serif; cursor: pointer; }
.yin-cite .yin-cite__source-controls { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .75rem; margin: .9rem 0 .75rem; }
.yin-cite .yin-cite__copy--secondary { background: #fff; color: #263d30; border-color: #bec6bf; }
.yin-cite .yin-cite__copy--secondary:hover { background: #e9ede7; color: #15271c; }
.yin-cite .yin-cite__code { display: block; width: 100%; max-width: 100%; max-height: 20rem; margin: 0; padding: .9rem; overflow: auto; border: 1px solid #d2d9d3; border-radius: 3px; background: #edf0ea; color: #2a3730; font: 400 .77rem/1.7 ui-monospace,SFMono-Regular,Consolas,monospace; white-space: pre-wrap; overflow-wrap: anywhere; word-break: normal; tab-size: 2; text-indent: 0; }
.yin-cite .yin-cite__code code { margin: 0; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; white-space: inherit; }
.yin-cite .yin-cite__bibtex-code { max-height: none; }
.yin-cite .yin-cite__status { margin: 0; padding: 0; color: #344c3c; font: 400 .8rem/1.5 system-ui,sans-serif; }
.yin-cite .yin-cite__status:not(:empty) { margin-top: .8rem; }
.yin-cite :focus-visible { outline: 3px solid #2459a8; outline-offset: 3px; }
.yin-cite [hidden] { display: none !important; }
@media (max-width: 420px) {
  .yin-cite { padding: 1.1rem; }
  .yin-cite .yin-cite__toolbar { gap: .65rem; }
  .yin-cite .yin-cite__field { flex: 1 1 110px; }
  .yin-cite .yin-cite__field select { width: 100%; min-width: 0; }
  .yin-cite .yin-cite__actions { gap: .5rem; }
  .yin-cite .yin-cite__exports { max-width: 100%; }
  .yin-cite .yin-cite__download-list { position: static; margin-top: .4rem; max-width: 100%; }
}
@media print {
  .yin-cite { break-inside: avoid; color: #000; background: #fff; border: 1px solid #999; }
  .yin-cite .yin-cite__toolbar, .yin-cite .yin-cite__actions, .yin-cite .yin-cite__source, .yin-cite .yin-cite__status, .yin-cite .yin-cite__bibtex-header button { display: none; }
  .yin-cite .yin-cite__bibtex-code { max-height: none; overflow: visible; }
  .yin-cite a.yin-cite__url::after { content: none !important; }
}
