/* Pump scope uses the current PHE reference contract and the live site theme.
   The isolated worktree's older PHE stylesheet is not the brand authority. */
.pump-reference{--pt-ink:var(--theme-page-title);--pt-muted:var(--theme-page-muted);--pt-line:var(--shell-border);--pt-paper:var(--neutral-50);--pt-accent:var(--theme-link)}
.pump-reference .pt-wrap{font-family:var(--font-sans);color:var(--theme-page-copy);background:var(--pt-paper)}
.pump-reference .pt-wrap h1,.pump-reference .pt-wrap h2,.pump-reference .pt-wrap h3{letter-spacing:normal;color:var(--pt-ink)}
.pump-reference .pump-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:2rem;padding-block:2rem;max-width:70rem;align-items:center}
.pump-reference .pump-hero:not(:has(.pump-media)){grid-template-columns:1fr}
.pump-reference .pump-hero>div{min-width:0}
.pump-reference .pump-hero .pt-lead{max-width:62ch}
.pump-reference .pt-eyebrow,.pump-reference .pt-toc-group strong{display:flex;align-items:center;gap:.65rem;color:var(--pt-accent)}
.pump-icon{font-size:1.6rem;flex:none;font-weight:400}
.pump-reference .pt-toc-grouped{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1.2rem}
.pump-reference .pt-toc-group ul{padding-left:1.1rem;margin:.5rem 0}
.pump-reference .pt-toc-group li{margin:.25rem 0}
.pump-reference .pt-toc a{display:inline-flex;min-height:2.75rem;align-items:center;line-height:1.35}
.pump-reference .pt-chapter{margin-top:3.75rem;scroll-margin-top:7rem}
.pump-reference .pt-chapter-head{display:flex;align-items:center;gap:.8rem;padding:1rem 1.25rem;border-left:3px solid var(--theme-primary);background:var(--theme-soft-bg);border-radius:0 8px 8px 0}
.pump-reference .pt-chapter-head p{margin:0;font-size:1.125rem;line-height:1.4;color:var(--pt-ink)}
.pump-reference .pt-chapter-number{flex:none;white-space:nowrap;font-size:.8rem;color:var(--pt-muted);font-variant-numeric:tabular-nums}
.pump-reference .pt-chapter-head .pump-icon{color:var(--pt-accent)}
.pump-reference .pt-chapter-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2.375rem}
.pump-reference .pump-section{min-width:0;max-width:70rem;scroll-margin-top:7rem;border:0;border-bottom:1px solid var(--pt-line);border-radius:0;padding:2rem 0;background:transparent}
.pump-reference .pt-section-wide{grid-column:1/-1}
.pump-reference .pt-chapter-body .pump-section h2{font-size:clamp(24px,2.3vw,31px);margin-bottom:1.25rem}
.pump-reference .pump-subtopics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem;margin-block:1.5rem}
.pump-reference .pump-subtopic{min-width:0;scroll-margin-top:7rem}
.pump-reference .pump-subtopic p:last-child{margin-bottom:0}
.pump-reference .pump-media{margin:0;min-width:0}
.pump-reference .pump-media img{display:block;width:100%;height:auto;max-height:28rem;object-fit:contain;border-radius:12px;background:var(--shell-surface)}
.pump-reference .pump-media figcaption{font-size:1rem;line-height:1.6;color:var(--pt-muted);margin-top:.75rem}
.pump-reference .pump-media-block{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:2rem;align-items:start}
.pump-reference .pump-media-copy{min-width:0}
.pump-reference .pump-hero .pump-media img{max-height:25rem}
.pump-reference .pump-media-keys{padding-left:1.25rem;margin-block:.75rem 0;font-size:1rem;line-height:1.6}
.pump-reference .pump-media-keys li+li{margin-top:.5rem}
.pump-reference .pump-section>p{max-width:78ch;line-height:1.72}
.pump-reference .pump-section h2{max-width:42ch}
.pump-related{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem;margin-top:.65rem}
.pump-related a,.pump-catalogue-link,.pump-footer a{display:inline-flex;align-items:center;min-height:2.75rem;gap:.35rem}
.pump-reference a:focus-visible{outline:3px solid var(--pt-accent);outline-offset:4px;border-radius:2px}
.pump-table{margin-block:1rem;max-width:70rem}
.pump-table table{width:100%;border-collapse:collapse;text-align:left;font-size:1rem}
.pump-table th,.pump-table td{padding:.85rem;border-bottom:1px solid var(--pt-line);vertical-align:top;line-height:1.55}
.pump-table th{font-weight:650}
.pump-table thead{background:var(--theme-soft-bg);color:var(--pt-ink)}
.pump-plot{max-width:42rem;margin:1.5rem 0;padding:1rem;border:1px solid var(--pt-line);border-radius:var(--radius,12px);background:var(--pt-paper)}
.pump-plot svg{display:block;width:100%;height:auto;overflow:visible}
.pump-plot svg text{fill:var(--pt-ink);font:600 30px system-ui,sans-serif}
.pump-axis{fill:none;stroke:var(--pt-ink);stroke-width:2}
.pump-qh-pump{fill:none;stroke:#176487;stroke-width:4}
.pump-qh-system{fill:none;stroke:#a14c22;stroke-width:4;stroke-dasharray:10 6}
.pump-qh-guide{fill:none;stroke:var(--pt-muted);stroke-width:1.5;stroke-dasharray:4 5}
.pump-qh-dot{fill:var(--pt-ink);stroke:var(--pt-paper);stroke-width:2}
.pump-plot-key{display:flex;flex-wrap:wrap;gap:.6rem 1.3rem;list-style:none;padding:0;margin:.8rem 0;font-size:1rem}
.pump-plot-key li{display:flex;gap:.5rem;align-items:center}
.pump-key-pump,.pump-key-system{display:inline-block;width:1.8rem;border-top:4px solid #176487}
.pump-key-system{border-color:#a14c22;border-top-style:dashed}
.pump-plot figcaption{font-size:1rem;line-height:1.6;color:var(--pt-muted)}
.pump-footer{border-top:2px solid var(--pt-line);padding-block:1rem 2rem;line-height:1.6}
@media(max-width:600px){.pump-reference .pt-wrap{padding-inline:1rem}.pump-reference .pump-hero{padding-top:1rem}.pump-reference .pt-actions{align-items:flex-start}.pump-reference .pump-section{padding-block:1.25rem}.pump-chapter{margin-block:2rem}.pump-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.pump-table tr{display:block;padding:.7rem 0;border-bottom:1px solid var(--pt-line)}.pump-table th,.pump-table td{display:block;border:0;padding:.35rem 0}.pump-table td:before{content:attr(data-label) ': ';font-weight:600}.pump-table th{font-size:1.08rem}.pump-plot{padding:.7rem;margin-inline:0}.pump-reference .pt-toc-grouped{grid-template-columns:1fr}.pump-related{gap:.2rem 1rem}}

.pump-reference .pt-toc a{font-size:1rem}.pump-reference .pt-toc-group ul{grid-template-columns:1fr}
/* Keep the subject definition before its image throughout the stacked layout. */
@media(max-width:900px){.pump-reference .pump-hero,.pump-reference .pump-media-block{grid-template-columns:1fr}.pump-reference .pump-media{max-width:44rem;width:100%}.pump-reference .pump-hero>div{order:1}.pump-reference .pump-hero>.pump-media{order:2;justify-self:center}}
@media(max-width:700px){.pump-reference .pt-chapter{margin-top:2.5rem}.pump-reference .pt-chapter-head{padding:.8rem .9rem}.pump-reference .pt-chapter-body,.pump-reference .pump-subtopics{grid-template-columns:1fr;gap:0}.pump-reference .pump-subtopic+.pump-subtopic{margin-top:1.25rem}.pump-reference .pump-section{padding-block:1.625rem}.pump-reference .pump-media-block{gap:1.25rem}.pump-reference .pump-media img{max-height:24rem}}

/* Follow the current PHE mobile shell arrangement within pump pages only. */
@media(max-width:600px){
  body.pump-reference .site-header .nav{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 10px;padding:6px 12px}
  body.pump-reference .site-header .burger{width:44px;min-width:44px;min-height:44px;margin:0}
  body.pump-reference .site-header .brand{justify-self:start;max-width:none;min-width:0}
  body.pump-reference .site-header .brand .upgr-logo{height:32px}
  body.pump-reference .site-header .brand img{height:32px;width:auto;max-width:180px}
  body.pump-reference .site-header .grow{display:none}
  body.pump-reference .site-header .header-icons{grid-column:1/-1;justify-self:end;gap:6px}
  body.pump-reference .site-header .icon-btn,body.pump-reference .site-header .personal-entry{width:44px;min-width:44px;min-height:44px}
  body.pump-reference .site-header .language-switch button{min-width:44px;min-height:44px}
}
/* Header height is measured by the existing shared shell, including resize. */
body.pump-reference .pump-section,body.pump-reference .pump-subtopic,body.pump-reference .pt-chapter,body.pump-reference #contents,body.pump-reference #main{scroll-margin-top:calc(var(--header-height,56px) + 18px)}
body.pump-reference>.skip:focus{position:fixed;z-index:1300}
/* Local reading actions keep the same touch target as the contents links. */
.pump-reference .pt-actions a,.pump-reference .pump-chapter-return a{display:inline-flex;align-items:center;min-height:44px}
.pump-reference .pump-chapter-return{margin:.75rem 0 0;font-size:1rem}
.pump-reference .pump-language-fallback{padding:1rem;text-align:right}
.pump-reference .pump-language-fallback a{display:inline-flex;align-items:center;min-height:44px}

/* Local comparison retained all 28 targets at 44px before adoption. */
.pump-reference .pt-toc-grouped{gap:.65rem 1.2rem}
.pump-reference .pt-toc-group ul{margin:.25rem 0}
.pump-reference .pt-toc-group li{margin:0}
.pump-reference .pump-section>p{max-width:68ch}

/* Bounded primary-action consumer; shared palette and state foregrounds win. */
.pump-reference .pt-button{min-height:var(--btn-min-h);padding:var(--btn-pad-y) var(--btn-pad-x);border-radius:var(--r-btn);background:var(--btn-primary-bg);border-color:var(--btn-primary-border);color:var(--btn-primary-text)!important;font-family:var(--font-sans);line-height:1.4}
.pump-reference .pt-button:hover{background:var(--btn-primary-bg-hover);border-color:var(--btn-primary-bg-hover);color:var(--btn-primary-text-hover)!important}
.pump-reference .pt-button:active{background:var(--btn-primary-bg-active);border-color:var(--btn-primary-bg-active);color:var(--btn-primary-text-active)!important}
.pump-reference .pt-button:focus-visible{outline:3px solid var(--theme-link);outline-offset:3px}
