/* Small refinements to the existing proof and evaluation paths. */
.recording-reference { margin: 1rem 0; }
.recording-reference > .note { font-size: .875rem; line-height: 1.6; }
.recording-reference blockquote { margin: 1.25rem 0; padding: .25rem 1.25rem; border-left: 3px solid #176347; }
.connection-choices { padding: 1.5rem 0; border-top: 1px solid #d9e1e7; border-bottom: 1px solid #d9e1e7; }
.connection-choices li { margin: .75rem 0; }
.connection-choices a, .tour-quick-path a, .video-chapters a { color: #176347; text-decoration: underline; text-underline-offset: .18em; }
.video-chapters { margin: 1rem 0; font-size: .875rem; line-height: 1.6; }
.video-chapters a { display: block; width: fit-content; padding: .5rem 0; }
.video-chapters a:focus-visible { outline: 3px solid #185fa5; outline-offset: 3px; }
.tour-quick-path { margin: 1.5rem 0; padding: 1.5rem 0; border-top: 1px solid #d9e1e7; border-bottom: 1px solid #d9e1e7; line-height: 1.7; }
.tour-quick-path h3 { font-size: 1.125rem; margin: 0 0 .75rem; }
.tour-quick-path ol { padding-left: 1.5rem; }
.tour-quick-path li { margin: .6rem 0; }
#work-result .handover-result { margin: 0; padding: 1.5rem; }
#work-result .handover-output { grid-template-columns: 1fr; gap: 0; margin: 1rem 0; padding: 1rem 0; }
#work-result .handover-output p, #work-result .handover-output ul { margin-bottom: .75rem; }
#work-result .handover-result h3 { font-size: 1.375rem; }
@media (max-width: 600px) {
  #work-result .handover-result { padding: 1.25rem; }
  .connection-choices, .recording-reference { overflow-wrap: anywhere; }
}

/* Put the current HR result before its preserved review history. */
#hr-evidence > p { max-width: 78ch; line-height: 1.7; }
.hr-reviewed-output { margin: 1.5rem 0; padding: 1.5rem; border: 1px solid #d9e1e7; border-radius: 8px; background: #fff; }
.hr-reviewed-output h4 { font-size: 1.0625rem; line-height: 1.4; margin: 0 0 .75rem; }
.hr-reviewed-output .note { background: none; border: 0; padding: 0; font-size: .8125rem; line-height: 1.6; }
.hr-output-columns { display: grid; grid-template-columns: 1fr 1.4fr; gap: 2rem; margin-top: 1.25rem; }
.hr-output-columns ul { padding-left: 1.25rem; margin: 0; }
.hr-output-columns li { margin: 0 0 .65rem; line-height: 1.65; }
#hr-evidence .hr-review-sequence { margin: 1.25rem 0; }
.tour-hero .tour-quick-path { margin: 1.25rem 0; padding: 1rem 0; }
.tour-hero .tour-quick-path ol { margin: .5rem 0 0; }
.tour-hero .tour-quick-path li { font-size: 1rem; }
.runtime-map { margin: 1.5rem 0; }
.runtime-map table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.runtime-map caption { text-align: left; font-size: 1.125rem; font-weight: 600; margin: 0 0 1rem; }
.runtime-map th, .runtime-map td { padding: 1rem; border-bottom: 1px solid #d9e1e7; text-align: left; vertical-align: top; font-size: .875rem; line-height: 1.65; overflow-wrap: anywhere; }
.runtime-map thead { background: #edf3ee; }
.runtime-map th:first-child { width: 20%; }
.runtime-map p { margin: 0 0 .6rem; }
.runtime-map a { color: #176347; text-decoration: underline; text-underline-offset: .18em; }
@media (max-width: 700px) {
 .hr-output-columns { grid-template-columns: 1fr; gap: 1.25rem; }
 .hr-reviewed-output { padding: 1.125rem; }
 .runtime-map table, .runtime-map tbody, .runtime-map tr, .runtime-map th, .runtime-map td { display: block; width: 100%; }
 .runtime-map thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
 .runtime-map tbody tr { border: 1px solid #d9e1e7; border-radius: 8px; margin-bottom: 1rem; padding: .5rem; }
 .runtime-map tbody th:first-child { width: 100%; background: #edf3ee; border: 0; }
 .runtime-map td { border: 0; padding: .65rem 1rem; }
 .runtime-map td::before { content: attr(data-label); display: block; font-weight: 600; margin-bottom: .35rem; }
}

/* Keep archived proof usable without accumulating three levels of indentation. */
@media (max-width: 600px) {
  .demo-archive { padding-inline: 0; border-inline: 0; border-radius: 0; }
  .demo-archive .demo-notes { padding-inline: 0; border-inline: 0; border-radius: 0; }
  .demo-archive .detail-body { padding-inline: 0; }
}

/* In running text, a link must be distinguishable before hover. */
main :is(p, figcaption) a[href]:not(.btn):not(.shot-zoom),
main .detail-body :is(li, dd) a[href] {
  text-decoration: underline;
  text-underline-offset: .18em;
}
