/* /rulebooks/clause-history/ */
.ch-jump { list-style: none; padding: 0; margin: var(--space-3) 0; display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-4); }
.ch-jump a { display: inline-flex; align-items: center; min-height: var(--space-target); }
.ch-rules { list-style: none; padding: 0; margin: var(--space-3) 0 var(--space-5); display: grid; gap: var(--space-2); grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); }
.ch-rules > li { max-width: none; margin: 0; }
.ch-rule { display: flex; flex-direction: column; justify-content: center; gap: 2px; min-height: var(--space-target); height: 100%; box-sizing: border-box; padding: var(--space-2) var(--space-3); border: 1px solid var(--c-line); border-radius: var(--radius-card); background: var(--c-surface); text-decoration: none; color: var(--c-fg); }
.ch-rule:hover { border-color: var(--c-accent); }
.ch-rule:focus-visible { outline: 3px solid var(--c-focus); outline-offset: 2px; }
.ch-rule .muted { font-size: 0.85em; }
.ch-keylist { margin: 0; padding-left: var(--space-4); }
.ch-keylist li { max-width: none; margin-bottom: var(--space-1); }
.ch-tw { overflow-x: auto; max-width: 100%; border: 1px solid var(--c-line); border-radius: var(--radius-card); }
.ch-tw:focus-visible { outline: 3px solid var(--c-focus); outline-offset: -3px; }
.ch-table { border-collapse: collapse; width: 100%; font-size: 14px; }
.ch-table th, .ch-table td { text-align: left; vertical-align: top; padding: var(--space-1) var(--space-2); border-top: 1px solid var(--c-line); }
.ch-table thead th { background: var(--c-surface2); border-top: 0; }
.ch-table tbody th a { display: inline-flex; align-items: center; min-height: var(--space-target); }
.ch-thread { margin: var(--space-4) 0; }
.ch-rows { list-style: none; padding: 0; margin: var(--space-3) 0 0; display: grid; gap: var(--space-3); }
.ch-row { max-width: none; margin: 0; padding: var(--space-2) var(--space-3); border: 1px solid var(--c-line); border-left-width: 6px; border-radius: var(--radius-card); background: var(--c-bg); scroll-margin-top: var(--space-6); }
.ch-row:target { box-shadow: 0 0 0 3px var(--c-focus); }
.ch-k-first, .ch-k-same { border-left-style: solid; }
.ch-k-punct { border-left-style: dotted; }
.ch-k-moved { border-left-style: dashed; }
.ch-k-reworded { border-left-style: double; }
.ch-k-changed { border-left-style: solid; border-left-width: 10px; }
.ch-compact { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-2); }
.ch-compact a { display: inline-flex; align-items: center; min-height: var(--space-target); }
.ch-run { max-width: none; margin: 0; }
.ch-run > details { border: 1px solid var(--c-line); border-radius: var(--radius-card); padding: 0 var(--space-3); }
.ch-run summary { min-height: var(--space-target); display: flex; align-items: center; cursor: pointer; font-weight: 700; }
.ch-runlist { list-style: none; padding: 0 0 var(--space-2); margin: 0; display: grid; gap: var(--space-1); }
.ch-runlist > li { border-left-width: 3px; padding: var(--space-1) var(--space-2); }
.ch-h { margin: 0 0 var(--space-1); font-size: 1rem; overflow-wrap: anywhere; }
.ch-date { font-variant-numeric: tabular-nums; }
.ch-tags { margin: 0 0 var(--space-1); display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-2); }
.ch-kind, .ch-rev, .ch-tag { display: inline-block; padding: 1px var(--space-2); border: 1px solid var(--c-fg); border-radius: 999px; font-size: 0.85em; font-weight: 700; }
.ch-rev, .ch-tag { border-color: var(--c-line); font-weight: 400; }
.ch-cmp, .ch-count { margin: 0 0 var(--space-1); font-size: 0.9em; }
.ch-text { margin: var(--space-2) 0; padding: var(--space-2) var(--space-3); border-left: 3px solid var(--c-line); background: var(--c-surface); overflow-wrap: anywhere; max-width: none; }
.ch-note, .ch-same { margin: var(--space-2) 0; max-width: none; }
.ch-diff ins { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; background: transparent; font-weight: 600; }
.ch-diff del { text-decoration: line-through; text-decoration-thickness: 2px; color: var(--c-muted); }
.ch-diff ins::before { content: "[+ "; font-weight: 700; }
.ch-diff ins::after { content: " +]"; font-weight: 700; }
.ch-diff del::before { content: "[- "; font-weight: 700; }
.ch-diff del::after { content: " -]"; font-weight: 700; }
.ch-keylist ins { text-decoration: underline; text-decoration-thickness: 2px; background: transparent; font-weight: 600; }
.ch-keylist del { text-decoration: line-through; text-decoration-thickness: 2px; color: var(--c-muted); }
.ch-int { margin: var(--space-2) 0; }
.ch-int p { margin: 0 0 var(--space-1); max-width: none; }
.ch-ilist { margin: 0; padding-left: var(--space-4); }
.ch-ilist li { max-width: none; overflow-wrap: anywhere; }
.ch-link { margin: var(--space-1) 0 0; }
.ch-link a { display: inline-flex; align-items: center; min-height: var(--space-target); }
@media (forced-colors: active) { .ch-row { border-left-color: CanvasText; } }
