.filters { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 22px 0 14px; }
.filters input { grid-column: 1 / -1; }
.filters input, .filters select { height: 42px; border: var(--rule); border-radius: 4px; background: var(--paper); padding: 0 10px; font-size: 14px; }
.count { grid-column: 1 / -1; font-size: 12.5px; color: var(--ink-2); }
table.ledger { border-top: var(--rule); }
.ledger th { text-align: left; padding: 0; border-bottom: var(--rule); }
.ledger th button, .ledger th span { display: block; width: 100%; text-align: inherit; background: none; border: 0; padding: 10px 8px 10px 0; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--ink-2); cursor: pointer; }
.ledger th.num button { text-align: right; padding-right: 0; }
.ledger th button[aria-sort] { color: var(--ink); font-weight: 500; }
.ledger th button[aria-sort="ascending"]::after { content: " ↑"; } .ledger th button[aria-sort="descending"]::after { content: " ↓"; }
.ledger td { padding: 11px 8px 11px 0; border-bottom: var(--hair); vertical-align: middle; font-size: 15px; }
.ledger td.num { padding-right: 0; font-size: 16px; font-weight: 500; }
.ledger td.mono { font-size: 13.5px; }
.ledger tr[data-id] { cursor: pointer; }
.ledger tr[data-id]:hover td, .ledger tr.open td { background: var(--paper-2); }
.ledger .cn { display: flex; align-items: center; gap: 10px; }
.ledger .cn b { display: block; font-weight: 600; line-height: 1.2; }
.ledger .cn small { font: 400 12.5px "Plex Mono", monospace; color: var(--terra); }
.ledger tr.detail td { background: var(--paper-2); padding: 4px 0 22px; border-bottom: var(--rule); }
.detail .case { max-width: 720px; padding: 0 12px; }
.detail .case-top { display: none; }
.detail .case dl { margin-top: 6px; }
.detail .onrug { margin-top: 14px; }
.hide-s { display: none; }
.method-grid { display: grid; gap: 24px; }
.method h3 { font-family: "Fraunces", serif; font-weight: 600; font-size: 21px; margin-bottom: 6px; font-variation-settings: "opsz" 36; }
.excl { list-style: none; font-size: 14.5px; }
.excl li { padding: 6px 0; border-bottom: var(--hair); }
.excl b { font-weight: 600; }
@media (min-width: 900px) {
  .filters { grid-template-columns: 1fr 200px 200px auto; align-items: center; }
  .filters input { grid-column: auto; }
  .count { grid-column: auto; text-align: right; }
  .hide-s { display: table-cell; }
  .method-grid { grid-template-columns: 1fr 1fr; gap: 34px 56px; }
}
.ledger th:last-child, .ledger td:last-child { width: 64px; padding-left: 16px; }
.disp-s { display: block; font: 400 10.5px "Plex Mono", monospace; text-transform: uppercase; letter-spacing: .05em; color: var(--terra); }

.more-row { text-align: center; margin: 18px 0 8px; }
.pager { display: flex; justify-content: center; align-items: center; gap: 14px; }
.pager[hidden] { display: none; }
.pager span { font-size: 13px; min-width: 9em; text-align: center; }
.disp-s { white-space: nowrap; }
@media (max-width: 699px) { .disp-s .xp { display: none; } }
.ledger td:first-child, .ledger .cn > div { min-width: 0; overflow-wrap: anywhere; word-break: break-word; }
@media (max-width: 700px) { table.ledger { table-layout: fixed; width: 100%; } table.ledger td:first-child { width: auto; } }
.filters { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.filters input, .filters select { min-width: 0; width: 100%; }
.filters #q { grid-column: 1 / -1; }
@media (min-width: 900px) { .filters { grid-template-columns: minmax(0, 1fr) 200px 200px auto; } .filters #q { grid-column: auto; } }
