
body.doc { display: block; }
body.doc header { padding-bottom: 1.5rem; border-bottom: 1px solid var(--rule); }
body.doc .name a { text-decoration: none; }
body.doc main { padding-top: 2.4rem; padding-bottom: 4rem; max-width: 64rem; }
body.doc footer { margin-top: 2rem; }
h1.title { font: 400 clamp(1.5rem, 3vw, 2.2rem)/1.2 var(--sans); letter-spacing: -.01em; margin: 0 0 .6rem; }
h2 { font: 500 1.05rem/1.3 var(--sans); margin: 2.2rem 0 .8rem; }
.meta { color: var(--muted); font-size: .9rem; margin: 0 0 1.6rem; }
.rationale { max-width: 44rem; white-space: pre-wrap; margin: 0; }
.muted { color: var(--muted); }
.status { font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.status.s-approved, .status.s-applied { color: var(--fg); }
.status.s-rejected, .status.s-stale { color: var(--accent); }
table.list { border-collapse: collapse; width: 100%; font-size: .92rem; }
table.list th, table.list td { text-align: left; padding: .55rem 1rem .55rem 0; border-bottom: 1px solid var(--rule); vertical-align: baseline; }
table.list th { font-weight: 500; color: var(--muted); border-bottom-color: var(--fg); }
table.list td.id, table.list td.date { white-space: nowrap; font-variant-numeric: tabular-nums; color: var(--muted); }
ol.ops { list-style: none; padding: 0; margin: 0; counter-reset: op; }
ol.ops li { border-top: 1px solid var(--rule); padding: .9rem 0; counter-increment: op; }
ol.ops li:last-child { border-bottom: 1px solid var(--rule); }
ol.ops .kind { margin: 0 0 .5rem; font-weight: 500; }
ol.ops .kind::before { content: counter(op) '. '; color: var(--muted); font-weight: 400; }
ol.ops .row { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr) auto minmax(0, 1fr); column-gap: .8rem; align-items: baseline; margin: .2rem 0; }
ol.ops .field { color: var(--muted); font-size: .85rem; }
code { font-family: var(--mono); font-size: .85rem; overflow-wrap: anywhere; }
code.target { font-weight: 400; color: var(--muted); }
code.before { color: var(--muted); text-decoration: line-through; text-decoration-color: var(--rule); }
code.after { color: var(--fg); }
.arrow { color: var(--accent); }
@media (max-width: 48rem) {
  ol.ops .row { grid-template-columns: minmax(0, 1fr); }
  ol.ops .arrow { display: none; }
  ol.ops code.after::before { content: '\2192  '; color: var(--accent); }
  table.list .hide-narrow { display: none; }
}
