/* Cite panel, record download menu, references list, resource citation. */
.record-actions { position: relative; }
.cite-panel, .cite-download-menu {
  position: absolute; right: 0; top: 100%; z-index: 40; background: var(--surface, #fff);
  border: 1px solid var(--line, #d9dfe2); border-radius: var(--radius, 3px); box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
}
.cite-panel { width: min(560px, calc(100vw - 24px)); max-height: 70vh; overflow: auto; padding: 10px 14px; text-align: left; }
.cite-panel.hidden, .cite-download-menu.hidden { display: none; }
.cite-panel-head, .cite-block-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.cite-panel-head h2 { font-size: 15px; margin: 0; }
.cite-block { margin: 8px 0; }
.cite-block h3 { font-size: 13px; margin: 0; font-weight: 600; }
.cite-text {
  white-space: pre-wrap; word-break: break-word; font-family: var(--mono, monospace); font-size: 12px;
  background: var(--surface-soft, #f6f7f8); border: 1px solid var(--line-soft, #eef1f2); padding: 6px 8px; margin: 4px 0 0;
}
.cite-note { font-size: 12.5px; color: var(--ink-soft, #56656c); margin: 6px 0; }
.cite-download-menu { display: flex; flex-direction: column; min-width: 260px; padding: 4px 0; }
.cite-download-menu button { border: 0; background: none; text-align: left; padding: 6px 12px; color: var(--teal, #0a6e74); cursor: pointer; }
.cite-download-menu button:hover { background: var(--teal-soft, #e8f2f2); }
.cite-references { margin: 0; padding-left: 22px; font-size: 13px; }
.cite-references li { margin: 3px 0; overflow-wrap: anywhere; }
.footer-cite { font-size: 12px; overflow-wrap: anywhere; }
@media (max-width: 900px) { .cite-panel { position: fixed; left: 12px; right: 12px; top: 64px; width: auto; } }
