/* Accepted guide detail B: illustrated handbook. Only guide detail pages opt in. */
body[data-guide-experience][data-guide-handbook] {
  --handbook-blue: #e6f4fc;
  --handbook-green: #edf6e9;
  --handbook-yellow: #fff7dc;
  --handbook-rule: #c2dce7;
  background: #fffefa;
}

body[data-guide-experience][data-guide-handbook] .container { max-width: 1360px; }
body[data-guide-experience][data-guide-handbook] .guide-hero {
  display: grid;
  grid-template-columns: 5rem minmax(0, 1fr) minmax(12rem, 19rem);
  gap: clamp(1rem, 2.3vw, 2rem);
  align-items: center;
  padding: 1rem 0 1.5rem;
  text-align: left;
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-title-art {
  width: 5rem;
  height: 5rem;
  object-fit: contain;
}
body[data-guide-experience][data-guide-handbook] .guide-hero h1 {
  max-width: 27em;
  margin: 0 0 .8rem;
  font-size: clamp(1.75rem, 2.6vw, 2.35rem);
  line-height: 1.5;
  text-wrap: balance;
}
body[data-guide-experience][data-guide-handbook] .guide-title-break { display: block; }
body[data-guide-experience][data-guide-handbook] .guide-description {
  max-width: 46em;
  margin: 0;
  font-size: .98rem;
  line-height: 1.85;
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-title-landscape {
  display: block;
  width: 100%;
  height: 9rem;
  object-fit: cover;
  object-position: center bottom;
  border-radius: 50% 40% 10% 10%;
}
body[data-guide-experience][data-guide-handbook] .guide-experience-container { padding-top: 0; }
body[data-guide-experience][data-guide-handbook] .guide-reading-workbench { margin-bottom: 1.5rem; }

/* Chapter links follow the article's real section order and wrap without a rail. */
body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
  gap: .7rem;
  padding: 0;
  margin: 0 0 1.25rem;
  border: 0;
  border-radius: 0;
  background: transparent;
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters a {
  justify-content: center;
  gap: .65rem;
  min-height: 3.1rem;
  height: 100%;
  padding: .6rem .8rem;
  margin: 0;
  border: 1px solid var(--handbook-rule);
  border-radius: 7px;
  background: #fff;
  font-size: .96rem;
  font-weight: 600;
  text-align: left;
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters a[aria-current] {
  background: var(--handbook-blue);
  border-color: #72abc3;
}
body[data-guide-experience][data-guide-handbook] .guide-chapter-index {
  flex: 0 0 auto;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

/* The model stays HTML; only its bounded diagram region can scroll. */
body[data-guide-experience][data-guide-handbook] .guide-handbook-overview {
  display: block;
  padding: 0;
  margin: 0 0 1.5rem;
  min-height: 0;
  overflow: visible;
  background: #fff;
  border: 1px solid var(--handbook-rule);
  border-radius: 9px;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual {
  width: 100%;
  padding: 0 0 1rem;
  margin: 0;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual h2 {
  width: auto;
  max-width: none;
  margin: 0 0 .75rem;
  padding: .9rem 1.3rem;
  border-radius: 8px 8px 0 0;
  background: var(--handbook-blue);
  text-align: left;
  font-size: clamp(1.2rem, 1.8vw, 1.6rem);
  line-height: 1.6;
}
body[data-guide-experience][data-guide-handbook] .guide-map-layout {
  max-width: 100%;
  min-width: 0;
  padding: .55rem 1rem;
  overflow: auto;
  overscroll-behavior-inline: contain;
  scrollbar-gutter: stable;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-nodes {
  gap: 1.8rem;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-flow .guide-visual-nodes,
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-equation .guide-visual-nodes {
  grid-template-columns: repeat(var(--visual-count), minmax(8.5rem, 1fr));
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-node,
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-result,
body[data-guide-experience][data-guide-handbook] .guide-policy-origin {
  border-radius: 7px;
  box-shadow: none;
  background: var(--handbook-blue);
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-node:nth-child(3n+2) { background: var(--handbook-green); }
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-node:nth-child(3n) { background: var(--handbook-yellow); }
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-node > a,
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-result > a,
body[data-guide-experience][data-guide-handbook] .guide-policy-origin > a {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
  gap: .6rem;
  padding: 1rem .75rem;
  border-radius: 6px;
  text-align: center;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-copy,
body[data-guide-experience][data-guide-handbook] .guide-policy-origin > a > div { flex: 0 1 auto; }
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-art {
  width: 3.5rem;
  height: 3.5rem;
  margin: 0;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-copy strong { font-size: 1.08rem; }
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-copy p { font-size: .91rem; }
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-arrow {
  left: calc(100% + .1rem);
  top: calc(50% - .925rem);
  transform: none;
  background: #fff;
}
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-context,
body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-note {
  width: auto;
  max-width: 66em;
  margin: .75rem 1.25rem 0;
  padding: 0;
  background: transparent;
}
body[data-guide-experience][data-guide-handbook] .guide-policy-paths { z-index: 0; }
body[data-guide-experience][data-guide-handbook] .guide-policy-origin,
body[data-guide-experience][data-guide-handbook] .guide-policy-map .guide-visual-node,
body[data-guide-experience][data-guide-handbook] .guide-policy-map .guide-visual-result { position: relative; z-index: 1; }
body[data-guide-experience][data-guide-handbook] .guide-introduction { max-width: 64rem; margin: 1.5rem auto 2rem; }
body[data-guide-experience][data-guide-handbook] .guide-intro { max-width: 47em; }
body[data-guide-experience][data-guide-handbook] .guide-workbench-heading { text-align: left; margin: 0 0 1rem; }
body[data-guide-experience][data-guide-handbook] .guide-workbench-heading > h2 { font-size: 1.4rem; margin: 0 0 .35rem; }
body[data-guide-experience][data-guide-handbook] .guide-workbench-heading p { max-width: none; margin: 0; }

/* Pale chapter strips frame the full prose; body text has a steady reading width. */
body[data-guide-experience][data-guide-handbook] .guide-reading-grid { display: block; }
body[data-guide-experience][data-guide-handbook] .guide-reading-panels {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
body[data-guide-experience][data-guide-handbook] .guide-reading-panels .guide-section,
body[data-guide-experience][data-guide-handbook] .guide-reading-panels .guide-section + .guide-section,
body[data-guide-experience][data-guide-handbook] .guide-reading-workbench[data-reading-mode="section"] .guide-section {
  --chapter-color: var(--handbook-blue);
  margin: 0 0 1.5rem;
  padding: 0;
  border: 1px solid var(--handbook-rule);
  border-radius: 8px;
  background: #fff;
}
body[data-guide-experience][data-guide-handbook] .guide-reading-panels .guide-section:nth-child(3n+2) { --chapter-color: var(--handbook-green); }
body[data-guide-experience][data-guide-handbook] .guide-reading-panels .guide-section:nth-child(3n) { --chapter-color: var(--handbook-yellow); }
body[data-guide-experience][data-guide-handbook] .guide-chapter-heading {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: .85rem 1.25rem;
  border-radius: 7px 7px 0 0;
  background: var(--chapter-color);
}
body[data-guide-experience][data-guide-handbook] .guide-chapter-number {
  display: grid;
  place-items: center;
  flex: 0 0 2.8rem;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 50%;
  background: #1d6587;
  color: #fff;
  font-size: 1.25rem;
  font-variant-numeric: tabular-nums;
}
body[data-guide-experience][data-guide-handbook] .guide-section:nth-child(3n+2) .guide-chapter-number { background: #357365; }
body[data-guide-experience][data-guide-handbook] .guide-section:nth-child(3n) .guide-chapter-number { background: #746017; }
body[data-guide-experience][data-guide-handbook] .guide-chapter-heading > h2 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: clamp(1.2rem, 1.8vw, 1.55rem);
  line-height: 1.6;
  scroll-margin-top: 7rem;
}
body[data-guide-experience][data-guide-handbook] .guide-chapter-body {
  max-width: 50rem;
  margin: 0 auto;
  padding: 1.2rem clamp(1rem, 3vw, 2rem) 1.4rem;
}
body[data-guide-experience][data-guide-handbook] .guide-chapter-body > :first-child { margin-top: 0; }
body[data-guide-experience][data-guide-handbook] .guide-chapter-body p { max-width: 46em; }
body[data-guide-experience][data-guide-handbook] .guide-chapter-body .guide-list { background: var(--chapter-color); }
body[data-guide-experience][data-guide-handbook] .guide-chapter-body .guide-table-wrap { margin: 1rem 0; overflow: auto; }
body[data-guide-experience][data-guide-handbook] .guide-chapter-body .guide-table { min-width: 26rem; }

/* Worked examples and the worksheet entry are part of the reading path. */
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout { display: block; padding-top: 0; border-top: 0; }
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout .guide-main { max-width: none; }
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout .guide-toc {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.1rem;
  padding: .8rem 0;
  margin: 0 0 1.5rem;
  border: 0;
  border-top: 1px solid var(--handbook-rule);
  border-bottom: 1px solid var(--handbook-rule);
}
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout .guide-toc strong { display: none; }
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout .guide-toc a { border: 0; padding: .4rem 0; font-size: .86rem; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-example {
  padding: 1.35rem clamp(1rem, 3vw, 2rem);
  margin: 0 0 1.5rem;
  border: 1px solid #e7d28d;
  border-radius: 8px;
  background: var(--handbook-yellow);
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-example > h2 {
  margin: .75rem 0 1rem;
  padding: 0;
  border: 0;
  font-size: clamp(1.25rem, 1.9vw, 1.6rem);
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-example > :is(p, h3) { max-width: 50rem; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-example .example-table-wrap { background: #fff; overflow: auto; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-example .example-table { min-width: 29rem; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-example .example-label { margin: 0; }
body[data-guide-experience][data-guide-handbook] .judgment-examples { max-width: 62rem; margin: 2rem auto; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(15rem, 22rem);
  gap: 1rem 2rem;
  align-items: center;
  background: var(--handbook-blue);
  margin: 2rem 0;
}
body[data-guide-experience][data-guide-handbook] .guide-handbook-cta h2 { margin: 0 0 .4rem; font-size: 1.45rem; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-cta p { margin: 0; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-cta-links { min-width: 0; }
body[data-guide-experience][data-guide-handbook] .guide-handbook-cta .btn { width: 100%; white-space: normal; }
body[data-guide-experience][data-guide-handbook] .guide-evidence-layout .guide-side {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
  gap: 2rem;
  padding: 2rem 0 0;
  margin: 2rem 0 0;
  border: 0;
  border-top: 1px solid var(--handbook-rule);
}
body[data-guide-experience][data-guide-handbook] .guide-faq,
body[data-guide-experience][data-guide-handbook] .source-list,
body[data-guide-experience][data-guide-handbook] .page-citation { max-width: 62rem; margin-inline: auto; }

@media (max-width: 62rem) {
  body[data-guide-experience][data-guide-handbook] .guide-handbook-cta { grid-template-columns: minmax(0, 1fr); }
  body[data-guide-experience][data-guide-handbook] .guide-hero { grid-template-columns: 4rem minmax(0, 1fr); gap: 1rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-title-art { width: 4rem; height: 4rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-title-landscape { display: none; }
}
@media (max-width: 40rem) {
  body[data-guide-experience][data-guide-handbook] .guide-hero { grid-template-columns: minmax(0, 1fr); padding-top: .6rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-title-art { width: 3.5rem; height: 3.5rem; }
  body[data-guide-experience][data-guide-handbook] .guide-hero h1 { font-size: 1.65rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters { gap: .5rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters a { justify-content: flex-start; }
  body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual h2 { padding: .8rem 1rem; }
  body[data-guide-experience][data-guide-handbook] .guide-map-layout { padding-inline: .7rem; }
  body[data-guide-experience][data-guide-handbook] .guide-chapter-heading { align-items: flex-start; gap: .7rem; padding: .85rem; }
  body[data-guide-experience][data-guide-handbook] .guide-chapter-number { width: 2.3rem; height: 2.3rem; flex-basis: 2.3rem; font-size: 1.05rem; }
  body[data-guide-experience][data-guide-handbook] .guide-chapter-body { padding: 1rem; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-cta { grid-template-columns: minmax(0, 1fr); padding: 1.1rem; }
}

@media print {
  body[data-guide-experience][data-guide-handbook] .guide-handbook-title-art,
  body[data-guide-experience][data-guide-handbook] .guide-handbook-title-landscape,
  body[data-guide-experience][data-guide-handbook] .guide-handbook-chapters,
  body[data-guide-experience][data-guide-handbook] .guide-handbook-cta-links { display: none !important; }
  body[data-guide-experience][data-guide-handbook] .guide-hero,
  body[data-guide-experience][data-guide-handbook] .guide-handbook-cta { display: block; }
  body[data-guide-experience][data-guide-handbook] .guide-map-layout,
  body[data-guide-experience][data-guide-handbook] .guide-chapter-body .guide-table-wrap,
  body[data-guide-experience][data-guide-handbook] .guide-handbook-example .example-table-wrap { overflow: visible; }
  body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-flow .guide-visual-nodes,
  body[data-guide-experience][data-guide-handbook] .guide-landscape .guide-visual-equation .guide-visual-nodes { grid-template-columns: repeat(var(--visual-count), minmax(0, 1fr)); }
  body[data-guide-experience][data-guide-handbook] .guide-reading-panels .guide-section { border-color: #888; break-inside: auto; }
  body[data-guide-experience][data-guide-handbook] .guide-chapter-heading { break-after: avoid; }
  body[data-guide-experience][data-guide-handbook] .guide-chapter-body { max-width: none; }
  body[data-guide-experience][data-guide-handbook] .guide-handbook-example .example-table,
  body[data-guide-experience][data-guide-handbook] .guide-chapter-body .guide-table { min-width: 0; }
}
