/* Sources page: board 3-23 to 3-26. Tokens and shared parts come from sk.css. */
.wrapc { max-width: 1152px; margin: 0 auto; padding: 20px var(--gutter-phone) 56px; }
.wrapc h1 { font-size: 40px; line-height: 1; margin: 0; }
.wrapc .lead { margin: 10px 0 0; font-size: 17px; line-height: 1.5; color: var(--slate); }
.grp { margin-top: 40px; padding-top: 18px; border-top: 1.5px solid var(--ink); }
.grp h2 { font-size: var(--h2); line-height: 1.15; }
.grp .help { margin: 4px 0 0; font-size: 15px; line-height: 1.5; color: var(--slate); }
@media (min-width: 900px) { .wrapc { padding: 40px var(--gutter-desk) 96px; } .wrapc h1 { font-size: 60px; } }

/* one figure traced */
.steps { list-style: none; margin: 16px 0 0; padding: 0; }
.steps li { position: relative; padding: 0 0 28px 76px; min-height: 56px; }
.stn { position: absolute; left: 12px; top: 0; width: 40px; height: 40px; border-radius: 50%; border: 2.5px solid var(--ink); background: var(--paper); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 16px; }
.stn.last { background: var(--ochre); color: var(--onink); }
.steps .rail { top: 40px; }
.steps .k { display: block; font-size: 13px; color: var(--slate); }
.steps b { display: block; font-size: 18px; line-height: 1.3; }
.steps .rid { display: block; margin-top: 2px; font-size: 13px; color: var(--slate); overflow-wrap: anywhere; }
.steps .txt { display: block; margin-top: 4px; font-size: 14px; line-height: 1.5; }
.steps .big { display: block; margin-top: 6px; font-size: 26px; font-weight: 700; color: var(--ochre); }
.recq { margin: 8px 0 0; padding: 10px 0 10px 14px; border-left: 3px solid var(--line); font-size: 14px; line-height: 1.55; }
.recq i { color: var(--slate); }
.recq span { display: block; margin-top: 6px; }
.meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0 10px; margin-top: 6px; font-size: 13px; color: var(--slate); }
.meta a { display: inline-flex; align-items: center; min-height: var(--tap); }

/* confidence key */
.ckey { display: grid; grid-template-columns: 28px 96px minmax(0, 1fr); gap: 4px 10px; align-items: start; padding: 12px 0; border-bottom: 1px solid var(--rule); }
.ckey > svg { margin-top: 4px; } .ckey b { font-size: 16px; }
.ckey .dash-slot { padding: 8px 12px; font-size: 14px; line-height: 1.5; }
@media (max-width: 599px) { .ckey { grid-template-columns: 28px minmax(0, 1fr); } .ckey > div { grid-column: 1 / -1; } }

/* all sources */
.tw { overflow-x: auto; }
.stab { width: 100%; border-collapse: collapse; margin-top: 12px; font-variant-numeric: tabular-nums; }
.stab th { font-size: 13px; font-weight: 600; color: var(--slate); text-align: left; padding: 8px 10px 8px 0; border-bottom: 1px solid var(--line); }
.stab td { padding: 10px 10px 10px 0; border-bottom: 1px solid var(--rule); font-size: 15px; vertical-align: top; }
.stab .num { text-align: right; padding-right: 0; } .stab th.num { text-align: right; }
.stab .sub, .stab .pm { display: block; font-size: 13px; color: var(--slate); }
.stab .nw { white-space: nowrap; }
.stab .dk { display: none; }
@media (min-width: 900px) { .stab .dk { display: table-cell; } .stab .pm { display: none; } }
.stab td b { font-weight: 600; }

/* info icon: help lines behind it */
.ic { width: 24px; height: 24px; vertical-align: middle; display: inline-flex; align-items: center; justify-content: center; color: var(--slate); }
.ip { display: block; margin-top: 6px; font-size: 14px; line-height: 1.5; color: var(--slate); }
.ip[hidden] { display: none; } .ip > span { display: block; }
.ckey .rng { display: block; font-size: 13px; color: var(--slate); margin-bottom: 4px; }
