/* ============================================================================
   wb-ui · inline-citations（行内引用角标 + 来源列表）
   1:1 移植自 aicss.dev InlineCitations.module.css（fetched 2026-08-13）。
   正文 [n] 标记 → 数字角标（hover 出玻璃 tooltip）；底部来源列表
   （hover 出跳转箭头）。仅入库不接入（无引用类 run event）。
   data-state：running（与 ok 同貌）/ ok / error（尾注）/ empty。零裸色。
   ========================================================================== */

.wbui-inline-citations {
  font-size: 14px;             /* 上游原值 */
  line-height: 19px;
  color: var(--wbui-ink);
  font-family: var(--wbui-sans);
}
.wbui-inline-citations[data-state="empty"] { display: none; }
.wbui-inline-citations p { margin: 0; }

.wbui-cite-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex: none;
  border-radius: 4px;
  background: var(--wbui-cite-mark-bg);
  color: var(--wbui-ink-2);
  font-size: 9px;
  font-weight: var(--wbui-fw-semibold);
  line-height: 1;
  vertical-align: 5.5px;
  margin: 0 2px;
}
a.wbui-cite-mark {
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s, background 0.15s;
}
a.wbui-cite-mark:hover { color: var(--wbui-ink); background: var(--wbui-cite-mark-bg-hover); }

.wbui-cite-tip { position: relative; display: inline; }
.wbui-cite-tip-box {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 6px);
  transform: translateX(-50%) translateY(1px);
  font-size: 10px;
  line-height: 1;
  font-weight: var(--wbui-fw-medium);
  color: var(--wbui-cite-tip-ink);
  background: var(--wbui-cite-tip-bg);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  padding: 4px 5px;
  border-radius: 6px;
  white-space: nowrap;
  pointer-events: none;
  opacity: 0;
  filter: blur(2px);
  transition: opacity 0.15s ease, transform 0.15s ease, filter 0.15s ease;
  z-index: 1000;
}
.wbui-cite-tip:hover .wbui-cite-tip-box,
.wbui-cite-tip:focus-within .wbui-cite-tip-box {
  opacity: 1;
  filter: blur(0);
  transform: translateX(-50%) translateY(0);
}

.wbui-cite-footer {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid var(--wbui-border);
}
.wbui-cite-ref {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  line-height: 18px;
  color: var(--wbui-ink-2);
  min-width: 0;
  text-decoration: none;
  cursor: pointer;
}
.wbui-cite-ref .wbui-cite-mark { margin: 0; }
.wbui-cite-ref-label {
  color: var(--wbui-ink);
  font-weight: 450;                /* 上游原值 */
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wbui-cite-sep { color: var(--wbui-ink-2); flex: none; }
.wbui-cite-ref-host { color: var(--wbui-ink-2); flex: none; white-space: nowrap; transition: color 0.16s; }
.wbui-cite-arrow {
  display: inline-flex;
  flex: none;
  margin-left: -2px;
  color: var(--wbui-ink-2);
  opacity: 0;
  transform: rotate(45deg) translate(0, 2px);
  transition: opacity 0.16s, transform 0.22s;
  pointer-events: none;
}
.wbui-cite-ref:hover .wbui-cite-arrow { opacity: 1; transform: rotate(45deg) translate(0, 0); }
.wbui-cite-ref:hover .wbui-cite-ref-host { color: var(--wbui-ink); }

.wbui-cite-error-note { display: block; margin-top: 6px; font-size: 12px; color: var(--wbui-danger); }
