/* The public research ledger (/ledger/ and its es/fr/de copies). Built by tools/ledger/build_ledger.py. */
.lg-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1px; margin-top: 30px; background: var(--line); border: 1px solid var(--line); }
.lg-card { background: var(--ink-2); padding: 18px 14px; display: flex; flex-direction: column; gap: 4px; }
.lg-card b { font-family: "Archivo Black", sans-serif; font-weight: 400; font-size: 2rem; line-height: 1; color: var(--amber); }
.lg-card span { font-size: 0.82rem; color: var(--bone-dim); line-height: 1.3; }
.lg-sec { padding: 56px 0; }
.lg-h2 { margin-top: 48px; }
.lg-bar { display: flex; height: 26px; border-radius: 4px; overflow: hidden; margin-top: 16px; border: 1px solid var(--line); }
.lg-seg { display: block; min-width: 3px; }
.lg-legend { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 14px; font-size: 0.9rem; color: var(--bone-dim); }
.lg-legend i, .lg-table i, .lg-f i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; margin-right: 7px; vertical-align: 0; }
.lg-legend b { color: var(--bone); font-weight: 600; margin-left: 4px; }
.lg-weeks { display: flex; align-items: flex-end; gap: 6px; height: 240px; margin-top: 18px; padding-bottom: 26px; border-bottom: 1px solid var(--line); position: relative; }
.lg-wk { flex: 1; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; position: relative; }
.lg-wk em { font-style: normal; font-size: 0.75rem; color: var(--bone-dim); margin-bottom: 4px; }
.lg-stack { width: 100%; max-width: 46px; display: flex; flex-direction: column; }
.lg-stack span { display: block; width: 100%; }
.lg-stack span:first-child { border-radius: 3px 3px 0 0; }
.lg-wk small { position: absolute; bottom: -22px; font-size: 0.68rem; color: var(--bone-dim); white-space: nowrap; }
.lg-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.lg-f { font: inherit; font-size: 0.8rem; padding: 7px 12px; border-radius: 999px; border: 1px solid var(--line); background: var(--ink-2); color: var(--bone-dim); cursor: pointer; }
.lg-f.is-on { background: var(--amber-fill); color: var(--on-amber); border-color: var(--amber-fill); }
.lg-tablewrap { overflow-x: auto; border: 1px solid var(--line); }
.lg-table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.lg-table th { text-align: left; background: var(--ink-3); padding: 10px 12px; font-size: 0.74rem; text-transform: uppercase; letter-spacing: 0.06em; white-space: nowrap; }
.lg-table td { padding: 11px 12px; border-top: 1px solid var(--line); vertical-align: top; }
.lg-table td:first-child { white-space: nowrap; color: var(--bone-dim); font-size: 0.82rem; }
.lg-table .lg-h { font-family: "Archivo Black", sans-serif; color: var(--amber); white-space: nowrap; }
.lg-table td:nth-child(3) { white-space: nowrap; }
.lg-table td:last-child { white-space: nowrap; color: var(--bone-dim); font-size: 0.78rem; }
.lg-notes { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; }
.lg-notes h2 { overflow-wrap: break-word; hyphens: auto; }
.lg-notes p, .lg-notes li { color: var(--bone-dim); }
.lg-notes ul { margin-top: 10px; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; }
.lg-notes h2 { margin-bottom: 8px; }
.lg-upd { margin-top: 16px; font-size: 0.8rem; }
@media (max-width: 860px) { .lg-cards { grid-template-columns: repeat(3, 1fr); } .lg-notes { grid-template-columns: minmax(0, 1fr); } .lg-table td:nth-child(3) { white-space: normal; } }
@media (max-width: 560px) {
  .lg-cards { grid-template-columns: repeat(2, 1fr); }
  .lg-weeks { gap: 3px; } .lg-wk small { display: none; }
  .lg-table thead { display: none; }
  .lg-table tr { display: grid; grid-template-columns: auto auto 1fr; gap: 4px 12px; padding: 12px; border-top: 1px solid var(--line); }
  .lg-table tr:first-child { border-top: 0; }
  .lg-table td { padding: 0; border: 0; }
  .lg-table td:nth-child(3) { white-space: normal; justify-self: end; text-align: right; font-size: 0.82rem; }
  .lg-table td:nth-child(4) { grid-column: 1 / -1; }
  .lg-table td.lg-rd { grid-column: 1 / 3; font-size: 0.8rem; color: var(--bone-dim); }
  .lg-table td.lg-rd::before { content: attr(data-k) ": "; }
  .lg-table td.lg-rd.is-none { visibility: hidden; }
  .lg-table td:last-child { grid-column: 3; justify-self: end; }
}

.lg-table tr[hidden] { display: none; }
