/* Follow the existing ivory/ink answer-board system, including night edition. */
.sd-decision { border-top: 3px double var(--ab-rule); border-bottom: 1px solid var(--ab-hair); margin: 1.5rem 0 2rem; padding: 1.2rem 0; color: var(--ab-ink); }
.sd-decision__eyebrow { margin: 0 0 .6rem; font: 500 .72rem var(--ab-sans); text-transform: uppercase; letter-spacing: .15em; color: var(--ab-ink-2); }
.sd-decision h3 { margin: 0 0 .8rem; font: 500 clamp(1.35rem, 3vw, 1.9rem)/1.2 var(--ab-serif); }
.sd-decision p { max-width: 80ch; line-height: 1.55; }
.sd-decision__rows { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin: 1.2rem 0; }
.sd-decision article { min-width: 0; border-top: 1px solid var(--ab-hair); padding-top: 1rem; }
.sd-decision h4 { font: 600 1rem var(--ab-sans); margin: 0 0 .6rem; overflow-wrap: anywhere; }
.sd-decision dl { margin: .6rem 0; display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: .45rem .8rem; font-size: .86rem; line-height: 1.5; }
.sd-decision dt { color: var(--ab-ink-2); }
.sd-decision dd { margin: 0; }
.sd-decision__note { font-size: .8rem; color: var(--ab-ink-2); }
.sd-decision details { border-top: 1px solid var(--ab-hair); padding-top: .8rem; margin-top: 1rem; }
.sd-decision summary { min-height: 44px; cursor: pointer; font-size: .85rem; }
.sd-decision summary:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.sd-decision ul { padding-left: 1.2rem; font-size: .85rem; line-height: 1.6; }
.sd-timing { margin: 1.5rem 0; padding: 1.2rem 0; border-top: 1px solid var(--ab-rule); border-bottom: 1px solid var(--ab-hair); }
.sd-timing h2 { font-size: 1.2rem; margin: 0 0 .8rem; }
.sd-timing p { line-height: 1.55; max-width: 85ch; }
.sd-elevation { margin: 1rem 0; }
.sd-elevation__bands { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; border-top: 1px solid var(--ab-hair); padding-top: .8rem; }
.sd-elevation__bands div { min-width: 0; }
.sd-elevation__bands b, .sd-elevation__bands span, .sd-elevation__bands small { display: block; font-size: .8rem; line-height: 1.5; }
.sd-elevation__bands b { font-weight: 600; margin-bottom: .35rem; }
.sd-elevation__bands small { color: var(--ab-ink-2); margin-top: .3rem; }
.sd-record, .sd-elevation details, .sd-change details { margin: .9rem 0; padding: .7rem 0; border-top: 1px solid var(--ab-hair); }
.sd-record summary, .sd-elevation summary, .sd-change summary { cursor: pointer; min-height: 44px; font-size: .85rem; line-height: 1.5; }
.sd-record summary:focus-visible, .sd-elevation summary:focus-visible, .sd-change summary:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.sd-record p, .sd-record li, .sd-elevation li, .sd-change p, .sd-change li { font-size: .85rem; line-height: 1.6; max-width: 85ch; }
/* "More detail" closes the What changed panel (owner, 6 Nov 2026): the 44px tap target is split evenly around the line
   rather than left as empty space under it, and the panel's own padding is the only gap below, so the space under the
   last line matches the space above the heading */
.sd-change details { padding: 0; }
.sd-change summary { min-height: 0; padding-block: calc((44px - 1.5em) / 2); }
.sd-change details:last-child { margin-bottom: calc(-1 * (44px - 1.5em) / 2); }
.sd-change details[open]:last-child { margin-bottom: 0; }
.sd-record ul, .sd-elevation ul { padding-left: 1.2rem; }
@media (max-width: 620px) {
  .sd-decision__rows { grid-template-columns: 1fr; }
  .sd-decision dl { grid-template-columns: 6.2rem minmax(0, 1fr); }
  .sd-elevation__bands { grid-template-columns: 1fr; gap: .75rem; }
  .sd-timing .table-wrap { overflow: visible; }
  .sd-timing table, .sd-timing tbody, .sd-timing tr, .sd-timing th, .sd-timing td { display: block; width: 100%; min-width: 0; }
  .sd-timing table { table-layout: auto; }
  .sd-timing thead { display: none; }
  .sd-timing tbody tr { padding: .65rem 0; border-bottom: 1px solid var(--ab-hair); }
  .sd-timing th, .sd-timing td { position: static; white-space: normal; border: 0; text-align: left; padding: .4rem .8rem; }
}
