.bw-skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.bw-skip:focus{position:fixed;top:.75rem;left:.75rem;width:auto;height:auto;clip-path:none;z-index:70;
  padding:.6rem 1rem;border-radius:10px;background:var(--bw-accent);color:var(--bw-bg)}
.bw-draft{position:relative;z-index:5;display:flex;flex-wrap:wrap;gap:.4rem 1rem;padding:.65rem 1rem;
  border-block:1px dashed #d69e2e;background:#2d2615;color:#ffe7a3;font:14px/1.5 var(--bw-mono)}
.bw-page-hero{padding-top:5rem}
.bw-objectives{display:grid;gap:.55rem;padding-left:1.25rem;max-width:62ch;color:var(--bw-ink3)}
.bw-opening{background:var(--bw-surface)}
.bw-question,.bw-activity{margin-top:1.5rem;padding:1.5rem;border:1px solid var(--bw-hair);
  border-radius:14px;background:var(--bw-surface);min-width:0}
.bw-stem{font-family:var(--bw-serif);font-size:1.08rem;color:var(--bw-ink2);margin:0 0 1rem}
.bw-stem mark{background:none;color:inherit;font-weight:700}
.bw-stem mark[data-weight="decisive"]{color:var(--bw-accent)}
.bw-ask{font-size:1rem;color:var(--bw-ink);margin:0 0 1rem}
.bw-options{display:grid;gap:.65rem}
.bw-option,.bw-spatial-point,.bw-quant-row,.bw-tab{min-height:2.75rem;width:100%;padding:.7rem .85rem;
  border:1px solid var(--bw-line);border-radius:10px;background:var(--bw-raise);color:var(--bw-ink2);
  font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere}
.bw-option:hover,.bw-spatial-point:hover,.bw-quant-row:hover,.bw-tab:hover{border-color:var(--bw-accent)}
.bw-option[data-state="correct"]{border-color:var(--bw-good);color:var(--bw-good)}
.bw-option[data-state="wrong"]{border-color:oklch(72% .15 25)}
.bw-option:disabled{cursor:default;opacity:.7}
.bw-feedback{min-height:1.7em;margin:1rem 0 0;color:var(--bw-ink3)}
.bw-beats{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--bw-hair)}
.bw-beats-label{margin:0 0 .65rem;color:var(--bw-accent);font-weight:700}
.bw-beats ol{display:grid;gap:.75rem;margin:0;padding-left:1.25rem}
.bw-beats b,.bw-beats span{display:block}
.bw-beats span{color:var(--bw-ink3)}
.bw-activity-prompt{margin:0 0 1rem;color:var(--bw-ink);font-weight:500}
.bw-tabs{display:flex;flex-wrap:wrap;gap:.5rem}
.bw-tab{width:auto;flex:1 1 10rem;text-align:center}
.bw-tab[aria-selected="true"]{border-color:var(--bw-accent);color:var(--bw-accent)}
.bw-compare-panel{margin-top:1rem;padding:1rem;border:1px solid var(--bw-hair);
  border-radius:10px;background:var(--bw-wash);color:var(--bw-ink3)}
.bw-motion-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(15rem,.85fr);
  gap:1rem;align-items:center;margin-top:1rem;padding:1rem;border:1px solid var(--bw-hair);
  border-radius:12px;background:linear-gradient(145deg,oklch(68% .16 250/.1),oklch(70% .14 300/.08))}
.bw-rib-stage{display:block;width:100%;min-height:16rem;border-radius:10px;
  background:radial-gradient(circle at 50% 52%,oklch(68% .16 250/.15),oklch(18% .025 260/.92) 66%)}
.bw-rib-stage text{fill:var(--bw-ink);font:700 14px/1 var(--bw-sans);paint-order:stroke fill;
  stroke:var(--bw-bg);stroke-width:4px;stroke-linejoin:round}
.bw-rib-spine{fill:var(--bw-ink4)}
.bw-rib-sternum{fill:var(--bw-ink2)}
.bw-rib-path{fill:none;stroke:var(--bw-ink4);stroke-width:9;stroke-linecap:round;transition:.2s}
.bw-rib-path.is-active{stroke:var(--bw-accent);filter:drop-shadow(0 0 8px oklch(72% .16 280/.55))}
.bw-rib-axis{stroke:var(--bw-gold);stroke-width:3;stroke-dasharray:6 6}
.bw-rib-leader{fill:none;stroke:var(--bw-ink3);stroke-width:2}
.bw-motion-readout h3{margin:0 0 .5rem;color:var(--bw-ink)}
.bw-motion-readout p{margin:.5rem 0;color:var(--bw-ink3)}
.bw-motion-readout .bw-motion-chain{color:var(--bw-gold)}
.bw-motion-stage + .bw-compare-panels{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.bw-steps{display:grid;gap:.75rem;padding-left:1.4rem}
.bw-step b,.bw-step span{display:block}
.bw-step span{color:var(--bw-ink3)}
.bw-spatial-grid,.bw-quant-list{display:grid;gap:.65rem}
.bw-spatial-point span,.bw-spatial-point small,.bw-quant-row span,.bw-quant-row output{display:block}
.bw-spatial-point small,.bw-quant-row output{margin-top:.25rem;color:var(--bw-accent)}
.bw-elim-clues,.bw-elim-options{display:grid;gap:.65rem}
.bw-elim-options{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}
.bw-elim-clue,.bw-elim-option{min-height:2.75rem;padding:.75rem .85rem;border:1px solid var(--bw-line);
  border-radius:10px;background:var(--bw-raise);color:var(--bw-ink2);font:inherit;text-align:left;cursor:pointer}
.bw-elim-clue span,.bw-elim-clue small{display:block}
.bw-elim-clue small{margin-top:.35rem;color:var(--bw-accent)}
.bw-elim-clue:disabled{cursor:default;opacity:1}
.bw-elim-option[data-state="eliminated"]{opacity:.45;text-decoration:line-through}
.bw-elim-option[data-state="winner"]{border-color:var(--bw-good);color:var(--bw-good)}
.bw-protocol-steps{display:grid;gap:.45rem;margin:.75rem 0;padding-left:1.25rem}
.bw-protocol-note{margin:.75rem 0 0;color:var(--bw-gold)}
.bw-pearl{margin:1.5rem 0 0;padding:1rem;border:1px solid oklch(84% .085 85 / .35);
  border-radius:10px;background:oklch(84% .085 85 / .08);color:var(--bw-gold)}
.bw-fig figcaption small,.bw-sources small{display:block;color:var(--bw-ink4)}
.bw-case-progress{color:var(--bw-ink4)}
.bw-case-next{margin-top:1rem}
.bw-endmatter .bw-h2{margin-top:2.5rem}
.bw-endmatter .bw-h2:first-child{margin-top:0}
.bw-sources{display:grid;gap:.75rem;padding-left:1.2rem}
.bw-sources a{color:var(--bw-accent)}
.bw-reviewer-card{display:grid;grid-template-columns:6rem 1fr;gap:1.25rem;align-items:start}
.bw-reviewer-card .bw-media-fig{width:6rem;height:6rem;border-radius:18px}
.bw-reviewer-copy .bw-h3{margin:.1rem 0 .35rem}
.bw-reviewer-copy .bw-h3 a{color:var(--bw-ink)}
.bw-reviewer-role,.bw-reviewer-lane{margin:.35rem 0;color:var(--bw-ink2)}
.bw-reviewer-actions{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:center;margin-top:.85rem}
.bw-reviewer-actions a{color:var(--bw-accent);font-weight:700}
@media(max-width:520px){
  .bw-page-hero{padding-top:3rem}
  .bw-question,.bw-activity{padding:1rem}
  .bw-motion-stage,.bw-reviewer-card{grid-template-columns:1fr}
  .bw-elim-options{grid-template-columns:1fr}
}
