/* MatSciEd Quantum: shared styles for every module page.
   Colour tokens with light and dark values, type, layout, the section bar, benches, controls,
   the quick-check boxes, the UF / HWCOE / QTP strip and credit, and the Modules menu.
   Page-specific additions live in quantum-student.css, quantum-highschool.css, or the page. */
:root{
  --ground:#F2F4F4; --surface:#FFFFFF; --surface-2:#E8ECED; --bench:#FAFCFC;
  --ink:#101619; --ink-2:#38464B; --muted:#5B6A70; --faint:#8C9BA1;
  --rule:#D5DDDE; --rule-strong:#B6C3C5;
  --zero:#00819F; --one:#AA6609; --phase:#7448B1;
  --zero-soft:rgba(0,129,159,.13); --one-soft:rgba(170,102,9,.13); --phase-soft:rgba(116,72,177,.13);
  --grid:rgba(16,22,25,.09); --sphere:rgba(16,22,25,.55);
  --shade:rgba(0,129,159,.05);
  --shadow:0 1px 2px rgba(16,22,25,.04), 0 10px 30px -18px rgba(16,22,25,.30);
  --sel:rgba(0,129,159,.16);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#0D1214; --surface:#141B1E; --surface-2:#1C2528; --bench:#101A1D;
    --ink:#E4EDEF; --ink-2:#BAC8CC; --muted:#8FA1A7; --faint:#6B7B81;
    --rule:#243033; --rule-strong:#35464B;
    --zero:#1E9FA5; --one:#B97830; --phase:#906FC6;
    --zero-soft:rgba(30,159,165,.15); --one-soft:rgba(185,120,48,.16); --phase-soft:rgba(144,111,198,.16);
    --grid:rgba(228,237,239,.10); --sphere:rgba(228,237,239,.50);
    --shade:rgba(30,159,165,.05);
    --shadow:0 1px 2px rgba(0,0,0,.35), 0 12px 34px -20px rgba(0,0,0,.8);
    --sel:rgba(30,159,165,.18);
  }
}
:root[data-theme="dark"]{
  --ground:#0D1214; --surface:#141B1E; --surface-2:#1C2528; --bench:#101A1D;
  --ink:#E4EDEF; --ink-2:#BAC8CC; --muted:#8FA1A7; --faint:#6B7B81;
  --rule:#243033; --rule-strong:#35464B;
  --zero:#1E9FA5; --one:#B97830; --phase:#906FC6;
  --zero-soft:rgba(30,159,165,.15); --one-soft:rgba(185,120,48,.16); --phase-soft:rgba(144,111,198,.16);
  --grid:rgba(228,237,239,.10); --sphere:rgba(228,237,239,.50);
  --shade:rgba(30,159,165,.05);
  --shadow:0 1px 2px rgba(0,0,0,.35), 0 12px 34px -20px rgba(0,0,0,.8);
  --sel:rgba(30,159,165,.18);
}

*{box-sizing:border-box}
body{
  background:var(--ground); color:var(--ink);
  font-family:"Source Serif 4","Iowan Old Style",Georgia,serif;
  font-size:1.062rem; line-height:1.62;
  margin:0; padding-inline:20px; padding-block:0;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1080px;margin:0 auto}
.prose{max-width:66ch}
h1,h2,h3,h4,.mono,.eyebrow,.btn,label,th,.tab{font-family:Archivo,"Helvetica Neue",Arial,sans-serif}
.mono,.eq,.num,code,.eyebrow,.tag,kbd{font-family:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,monospace}
h1{font-size:clamp(2.1rem,5.4vw,3.3rem);line-height:1.04;font-weight:700;letter-spacing:-.024em;margin:0;text-wrap:balance}
h2{font-size:clamp(1.5rem,3.1vw,2.05rem);line-height:1.14;font-weight:600;letter-spacing:-.02em;margin:0;text-wrap:balance}
h3{font-size:1.12rem;font-weight:600;letter-spacing:-.008em;margin:0 0 .35em;text-wrap:balance}
h4{font-size:.883rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0;color:var(--muted)}
p{margin:0 0 1.05em}
a{color:inherit;text-underline-offset:3px;text-decoration-color:var(--rule-strong)}
strong{font-weight:600}
em{font-style:italic}
:focus-visible{outline:2px solid var(--zero);outline-offset:2px;border-radius:2px}

/* ---------- masthead ---------- */
.top{
  position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--ground) 88%,transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);
  margin-inline:-20px;padding-inline:20px;
}
.topin{max-width:1080px;margin:0 auto;display:flex;align-items:center;gap:18px;height:46px}
.brand{font-family:"IBM Plex Mono",monospace;font-size:.825rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap;flex:0 1 auto;min-width:0;max-width:52%;overflow:hidden;text-overflow:ellipsis}
.brand b{color:var(--ink);font-weight:500}
.tocbar{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;flex:1;margin-left:auto}
.tocbar::-webkit-scrollbar{display:none}
.tocbar a{
  font-family:"IBM Plex Mono",monospace;font-size:.837rem;color:var(--muted);text-decoration:none;
  padding:4px 7px;border-radius:3px;white-space:nowrap;transition:background .15s,color .15s;
}
.tocbar a:hover{background:var(--surface-2);color:var(--ink)}
.tocbar a.on{color:var(--ink);background:var(--sel)}

/* ---------- hero ---------- */
.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:44px;align-items:center;padding-block:64px 52px}
.kicker{font-family:"IBM Plex Mono",monospace;font-size:.837rem;letter-spacing:.19em;text-transform:uppercase;color:var(--zero);margin-bottom:20px}
.stand{font-size:1.16rem;color:var(--ink-2);margin-top:22px;max-width:46ch}
.herofig{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px}
.herohint{font-family:"IBM Plex Mono",monospace;font-size:.812rem;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.claims{display:flex;flex-wrap:wrap;gap:0;margin-top:30px;border-top:1px solid var(--rule)}
.claim{flex:1 1 210px;padding:15px 20px 15px 0;border-right:1px solid var(--rule)}
.claim:last-child{border-right:none}
.claim .n{font-family:"IBM Plex Mono",monospace;font-size:.812rem;letter-spacing:.13em;color:var(--faint);display:block;margin-bottom:5px}
.claim .t{font-size:1rem;line-height:1.42;color:var(--ink-2)}

/* ---------- sections ---------- */
section{padding-block:26px 46px;scroll-margin-top:60px}
.shead{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0;align-items:start;margin-bottom:22px;border-top:2px solid var(--ink);padding-top:14px}
.snum{font-family:"IBM Plex Mono",monospace;font-size:.894rem;font-weight:500;color:var(--zero);padding-top:.25em}
.sdek{color:var(--muted);font-size:1.02rem;margin-top:.5em;max-width:62ch}
.body{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0}
.body > .col{min-width:0}

/* ---------- bench (interactive panel) ---------- */
.bench{
  background:var(--bench);border:1px solid var(--rule);border-radius:4px;
  margin:26px 0;box-shadow:var(--shadow);overflow:hidden;
}
.blab{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:9px 16px;border-bottom:1px solid var(--rule);background:var(--surface-2);
  font-family:"IBM Plex Mono",monospace;font-size:.812rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);
}
.blab .dot{width:6px;height:6px;border-radius:50%;background:var(--zero);flex:none}
.blab b{color:var(--ink);font-weight:500;letter-spacing:.09em}
.bbody{padding:18px 16px}
.bfoot{padding:11px 16px;border-top:1px solid var(--rule);background:var(--surface-2);font-size:1rem;color:var(--muted);line-height:1.5}
.bfoot b{color:var(--ink-2)}

.row{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}
.row > *{min-width:0}
.grow{flex:1 1 280px}
.stack{display:flex;flex-direction:column;gap:12px}
.stack > .ctrl{flex:0 0 auto}

/* ---------- controls ---------- */
.ctrls{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:flex-end}
.ctrl{display:flex;flex-direction:column;gap:5px;flex:1 1 170px;min-width:150px}
.ctrl > label{font-family:"IBM Plex Mono",monospace;font-size:.812rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between;gap:8px}
.ctrl > label .v{color:var(--ink);font-variant-numeric:tabular-nums}
input[type=range]{
  -webkit-appearance:none;appearance:none;width:100%;height:18px;background:transparent;margin:0;cursor:pointer;
}
input[type=range]::-webkit-slider-runnable-track{height:3px;background:var(--rule-strong);border-radius:2px}
input[type=range]::-moz-range-track{height:3px;background:var(--rule-strong);border-radius:2px}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;border-radius:50%;background:var(--zero);margin-top:-6px;border:2px solid var(--bench)}
input[type=range]::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:var(--zero);border:2px solid var(--bench)}
.btn{
  font-size:.883rem;font-weight:600;letter-spacing:.01em;padding:6px 11px;border-radius:3px;
  background:var(--surface);color:var(--ink);border:1px solid var(--rule-strong);cursor:pointer;
  transition:background .13s,border-color .13s,transform .06s;
}
.btn:hover{background:var(--surface-2);border-color:var(--ink-2)}
.btn:active{transform:translateY(1px)}
.btn.on{background:var(--zero);border-color:var(--zero);color:#fff}
.btn.gate{font-family:"IBM Plex Mono",monospace;font-weight:500;min-width:36px;text-align:center}
.btn.ghost{background:transparent;border-style:dashed}
.btn.wide{width:100%}
.btnrow{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.btnrow .sep{width:1px;align-self:stretch;background:var(--rule);margin-inline:4px}
.seg{display:inline-flex;border:1px solid var(--rule-strong);border-radius:3px;overflow:hidden}
.seg button{font-family:"IBM Plex Mono",monospace;font-size:.849rem;padding:5px 10px;background:var(--surface);color:var(--muted);border:none;border-right:1px solid var(--rule);cursor:pointer}
.seg button:last-child{border-right:none}
.seg button.on{background:var(--zero);color:#fff}
.swrap{display:flex;align-items:center;gap:7px;font-family:"IBM Plex Mono",monospace;font-size:.849rem;color:var(--muted);cursor:pointer;user-select:none}
input[type=checkbox]{accent-color:var(--zero);width:15px;height:15px;cursor:pointer}

/* ---------- canvas ---------- */
canvas{display:block;max-width:100%;touch-action:pan-y}
.cvwrap{display:flex;flex-direction:column;align-items:center;gap:6px}
.cvcap{font-family:"IBM Plex Mono",monospace;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);text-align:center}

/* ---------- readouts ---------- */
.read{font-family:"IBM Plex Mono",monospace;font-size:.894rem;line-height:1.85;font-variant-numeric:tabular-nums}
.read .k{color:var(--muted)}
.read .z{color:var(--zero)}
.read .o{color:var(--one)}
.read .p{color:var(--phase)}
.pbar{display:flex;flex-direction:column;gap:7px;margin-top:2px}
.pb{display:grid;grid-template-columns:58px minmax(0,1fr) 52px;gap:9px;align-items:center;font-family:"IBM Plex Mono",monospace;font-size:.854rem;font-variant-numeric:tabular-nums}
.pb .track{height:11px;background:var(--surface-2);border-radius:2px;overflow:hidden}
.pb .fill{height:100%;border-radius:2px;transition:width .22s ease}
.pb .lbl{color:var(--muted)}
.pb .val{text-align:right;color:var(--ink-2)}

/* ---------- tables ---------- */
.tbl{width:100%;border-collapse:collapse;font-family:"IBM Plex Mono",monospace;font-size:.872rem;font-variant-numeric:tabular-nums}
.tbl th{font-family:Archivo,sans-serif;font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:left;padding:6px 9px;border-bottom:1px solid var(--rule-strong)}
.tbl td{padding:5px 9px;border-bottom:1px solid var(--rule);color:var(--ink-2)}
.tbl tr:last-child td{border-bottom:none}
.tbl td.hi{background:var(--zero-soft);color:var(--ink)}
.tbl td.lo{color:var(--faint)}
.tbl .out{color:var(--ink);font-weight:500}
.tblscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* ---------- equations & notes ---------- */
.eq{
  display:block;font-size:.938rem;line-height:1.9;color:var(--ink);
  background:var(--surface);border-left:2px solid var(--zero);
  padding:11px 15px;margin:16px 0;border-radius:0 3px 3px 0;overflow-x:auto;white-space:nowrap;
}
.eq .c{color:var(--muted)}
.inl{font-family:"IBM Plex Mono",monospace;font-size:.88em;background:var(--surface-2);padding:.08em .32em;border-radius:2px}
.note{border-left:2px solid var(--rule-strong);padding:2px 0 2px 16px;margin:18px 0;color:var(--muted);font-size:1rem}
.note b{color:var(--ink-2)}
details.math{margin:16px 0;border:1px solid var(--rule);border-radius:3px;background:var(--surface);overflow:hidden}
details.math > summary{
  cursor:pointer;padding:8px 14px;font-family:"IBM Plex Mono",monospace;font-size:.837rem;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);list-style:none;
  display:flex;align-items:center;gap:8px;
}
details.math > summary::-webkit-details-marker{display:none}
details.math > summary::before{content:"+";color:var(--zero);font-weight:600}
details.math[open] > summary::before{content:"\2212"}
details.math > summary:hover{color:var(--ink)}
.mathbody{padding:2px 16px 14px;font-size:1rem;border-top:1px solid var(--rule)}
.mathbody .eq{background:var(--bench);margin:12px 0}
.matrix{display:inline-grid;grid-template-columns:repeat(2,minmax(52px,auto));gap:2px 12px;font-family:"IBM Plex Mono",monospace;font-size:.894rem;
  border-left:2px solid var(--ink-2);border-right:2px solid var(--ink-2);padding:6px 10px;text-align:right;font-variant-numeric:tabular-nums}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;font-family:"IBM Plex Mono",monospace;font-size:.872rem;font-variant-numeric:tabular-nums}
.kv dt{color:var(--muted)}
.kv dd{margin:0;color:var(--ink)}
.verdict{font-family:"IBM Plex Mono",monospace;font-size:.883rem;line-height:1.7;padding:9px 12px;border-radius:3px;background:var(--surface);border:1px solid var(--rule)}
.verdict.bad{border-left:3px solid var(--one)}
.verdict.good{border-left:3px solid var(--zero)}
.tag{display:inline-block;font-size:.794rem;letter-spacing:.11em;text-transform:uppercase;padding:2px 6px;border-radius:2px;background:var(--surface-2);color:var(--muted)}
.tag.z{background:var(--zero-soft);color:var(--zero)}
.tag.o{background:var(--one-soft);color:var(--one)}
.tag.p{background:var(--phase-soft);color:var(--phase)}
.legend{display:flex;flex-wrap:wrap;gap:5px 16px;font-family:"IBM Plex Mono",monospace;font-size:.825rem;color:var(--muted);margin-top:9px}
.legend span{display:flex;align-items:center;gap:6px}
.legend i{width:11px;height:11px;border-radius:2px;display:block;flex:none}

/* ---------- circuit strip ---------- */
.circ{display:flex;align-items:center;gap:0;flex-wrap:wrap;font-family:"IBM Plex Mono",monospace;font-size:.872rem;
  padding:9px 12px;background:var(--surface);border:1px solid var(--rule);border-radius:3px;min-height:42px}
.circ .wire{height:1px;background:var(--rule-strong);flex:1 0 14px;min-width:14px}
.circ .op{border:1px solid var(--ink-2);background:var(--bench);padding:2px 8px;border-radius:2px;color:var(--ink);white-space:nowrap}
.circ .op.ph{border-color:var(--phase);color:var(--phase)}
.circ .ket{color:var(--muted);white-space:nowrap}
.circ .mtr{border:1px solid var(--zero);color:var(--zero);padding:2px 8px;border-radius:2px}

/* ---------- closing ---------- */
.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:0;border-top:1px solid var(--rule);margin-top:20px}
.role{padding:16px 20px 18px 0;border-bottom:1px solid var(--rule)}
.role h5{font-family:Archivo,sans-serif;font-size:1rem;font-weight:600;margin:0 0 5px;color:var(--ink)}
.role p{font-size:1rem;color:var(--muted);margin:0;line-height:1.5}
.role .n{font-family:"IBM Plex Mono",monospace;font-size:.787rem;letter-spacing:.12em;color:var(--zero);display:block;margin-bottom:7px}
footer{border-top:2px solid var(--ink);margin-top:40px;padding:20px 0 60px;font-family:"IBM Plex Mono",monospace;font-size:.837rem;color:var(--faint);line-height:1.8}

@media (max-width:880px){
  .hero{grid-template-columns:1fr;gap:30px;padding-block:40px 34px}
  .shead,.body{grid-template-columns:1fr}
  .snum{margin-bottom:6px;padding-top:0}
  .claim{border-right:none;border-bottom:1px solid var(--rule);padding-right:0}
  .claim:last-child{border-bottom:none}
  body{font-size:1.031rem}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms !important;transition-duration:.001ms !important}
}

/* ---- quick checks with an answer box ---- */
.quiz{margin:18px 0 0;border:1px solid var(--rule);border-left:2px solid var(--zero);background:var(--surface);border-radius:0 3px 3px 0;padding:12px 16px 14px}
.quiz .qh{font-family:"IBM Plex Mono",monospace;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--zero);margin-bottom:6px;display:flex;justify-content:space-between;gap:10px}
.quiz .qh .st{color:var(--muted)}
.quiz .qt{font-family:Archivo,sans-serif;font-weight:600;font-size:1rem;line-height:1.4;color:var(--ink);margin-bottom:11px;text-wrap:balance}
.quiz .opts{display:flex;flex-direction:column;gap:6px}
.quiz .opt{display:flex;gap:10px;align-items:flex-start;text-align:left;padding:8px 11px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--bench);cursor:pointer;font-family:"Source Serif 4",Georgia,serif;font-size:1rem;line-height:1.45;color:var(--ink-2);transition:border-color .12s,background .12s}
.quiz .opt:hover{border-color:var(--ink-2)}
.quiz .opt .L{font-family:"IBM Plex Mono",monospace;font-size:.837rem;color:var(--muted);padding-top:3px;min-width:14px;flex:none}
.quiz .opt.right{border-color:var(--zero);background:var(--zero-soft);color:var(--ink)}
.quiz .opt.wrong{border-color:var(--one);background:var(--one-soft)}
.quiz .opt:disabled{cursor:default}
.quiz .num{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.quiz .num .u{font-family:"IBM Plex Mono",monospace;font-size:.883rem;color:var(--muted)}
.quiz input[type=text]{font-family:"IBM Plex Mono",monospace;font-size:1rem;padding:6px 10px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--bench);color:var(--ink);width:150px}
.quiz input[type=text]:disabled{color:var(--muted)}
.quiz .fb{margin-top:10px;padding:9px 12px;border-radius:3px;font-size:1rem;line-height:1.5;color:var(--ink-2);border-left:3px solid var(--rule-strong);background:var(--bench)}
.quiz .fb.ok{border-left-color:var(--zero)}
.quiz .fb.no{border-left-color:var(--one)}
.quiz .fb b{color:var(--ink)}
.quiz .acts{margin-top:9px;display:flex;gap:6px;flex-wrap:wrap}
.quiz .sol{margin-top:10px;font-size:1rem;line-height:1.5;color:var(--ink-2);border-top:1px solid var(--rule);padding-top:9px}
.quiz .sol b{color:var(--ink)}

/* ---------- institutional strip and credit ---------- */
.ufbar{background:var(--surface);border-bottom:1px solid var(--rule);margin-inline:-20px;padding:24px 20px}
.ufbar-in{max-width:1080px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.ufbar a{display:block;color:inherit;text-decoration:none}
.ufbar .college{flex:0 1 298px;min-width:0}
.ufbar .college img{display:block;width:298px;max-width:100%;height:auto}
.ufbar .college .logo-dark{display:none}
.ufbar .qtp{display:flex;align-items:center;gap:12px;flex:none;font-family:Archivo,"Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1rem;line-height:1.2;color:var(--ink-2)}
.ufbar .qtp img{display:block;width:47px;height:72px}
.ufbar a:hover span{text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:3px}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .ufbar .college .logo-light{display:none}
  :root:not([data-theme="light"]) .ufbar .college .logo-dark{display:block}
  :root:not([data-theme="light"]) .ufbar .qtp img{filter:invert(1)}
}
:root[data-theme="dark"] .ufbar .college .logo-light{display:none}
:root[data-theme="dark"] .ufbar .college .logo-dark{display:block}
:root[data-theme="dark"] .ufbar .qtp img{filter:invert(1)}
@media (max-width:640px){.ufbar .qtp{display:none}}
.credit{margin-top:18px;padding-top:16px;border-top:1px solid var(--rule);color:var(--muted)}
.credit p{margin:0 0 6px}
.credit a{color:var(--ink-2)}
.credit nav{display:flex;flex-wrap:wrap;gap:2px 22px}

canvas{height:auto}

/* ---------- the Modules menu and the previous / next links ---------- */
.topin{position:relative}
.qnav-btn{display:inline-flex;align-items:center;gap:7px;flex:none;height:30px;padding:0 11px 0 9px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--surface);color:var(--ink-2);font-family:"IBM Plex Mono",monospace;font-size:.825rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.qnav-btn:hover{border-color:var(--ink-2);color:var(--ink)}
.qnav-btn[aria-expanded="true"]{background:var(--sel);border-color:var(--zero);color:var(--ink)}
.qnav-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.qnav-panel{position:absolute;top:calc(100% + 1px);left:0;z-index:50;width:min(340px,calc(100vw - 32px));padding:8px 0 12px;background:var(--surface);border:1px solid var(--rule);border-top:none;border-radius:0 0 4px 4px;box-shadow:var(--shadow)}
.qnav-panel a{display:block;padding:6px 18px;font-family:Archivo,"Helvetica Neue",Arial,sans-serif;font-size:1rem;line-height:1.35;color:var(--ink-2);text-decoration:none}
.qnav-panel a[href]:hover,.qnav-panel a[href]:focus-visible{background:var(--surface-2);color:var(--ink)}
.qnav-panel a[aria-current="page"]{color:var(--ink);font-weight:600;box-shadow:inset 3px 0 0 var(--zero)}
.qnav-panel .qnav-home{padding-bottom:10px;margin-bottom:2px;border-bottom:1px solid var(--rule);font-weight:600;color:var(--zero)}
.qnav-panel h5{margin:12px 18px 3px;font-family:"IBM Plex Mono",monospace;font-size:.8rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pager{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:44px}
.pager a{display:block;padding:13px 16px 14px;border:1px solid var(--rule);border-radius:4px;background:var(--surface);color:inherit;text-decoration:none;transition:border-color .13s}
.pager a:hover{border-color:var(--ink-2)}
.pager .next{grid-column:2;text-align:right}
.pager .lab{display:block;margin-bottom:4px;font-family:"IBM Plex Mono",monospace;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pager .prev .lab::before{content:"\2190\00a0"}
.pager .next .lab::after{content:"\00a0\2192"}
.pager .t{display:block;font-family:Archivo,"Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:1.06rem;line-height:1.3;color:var(--ink)}
@media (max-width:560px){
  .qnav-btn span{display:none}
  .qnav-btn{padding:0 7px}
  .pager{grid-template-columns:1fr}
  .pager .next{grid-column:auto}
}
