/* Shared Anatomy kit (MIT) for the isometric figures: geometry, shading and motion.
   Each figure adds only its own palette tokens in its own stylesheet, so every page
   that shows a figure must load this file before that stylesheet. */
  .iso-svg{display:block;width:100%;height:auto;overflow:visible}
  .iso-svg path,.iso-svg circle{vector-effect:non-scaling-stroke}
  .iso-fill{fill:var(--anatomy-paper);stroke:none}
  .iso-solid[data-lit]>.iso-fill{fill:var(--anatomy-face)}
  .iso-shade,.iso-top{stroke:none}
  .iso-shade[data-shade="0"]{fill:var(--anatomy-shade-0)}
  .iso-shade[data-shade="1"]{fill:var(--anatomy-shade-1)}
  .iso-shade[data-shade="2"]{fill:var(--anatomy-shade-2)}
  .iso-shade[data-shade="3"]{fill:var(--anatomy-shade-3)}
  .iso-top{fill:var(--anatomy-top)}
  .iso-solid[data-lit]>.iso-top{fill:var(--anatomy-lit-top)}
  .iso-solid[data-lit]>.iso-shade{fill:var(--anatomy-lit-shade)}
  .iso-solid[data-seamless]>.iso-shade,.iso-solid[data-seamless]>.iso-top{stroke-width:.4;stroke-linejoin:round}
  .iso-solid[data-seamless]>.iso-shade[data-shade="0"]{stroke:var(--anatomy-shade-0)}
  .iso-solid[data-seamless]>.iso-shade[data-shade="1"]{stroke:var(--anatomy-shade-1)}
  .iso-solid[data-seamless]>.iso-shade[data-shade="2"]{stroke:var(--anatomy-shade-2)}
  .iso-solid[data-seamless]>.iso-shade[data-shade="3"]{stroke:var(--anatomy-shade-3)}
  .iso-solid[data-seamless]>.iso-top{stroke:var(--anatomy-top)}
  .iso-solid[data-seamless][data-lit]>.iso-top{stroke:var(--anatomy-lit-top)}
  .iso-solid[data-seamless][data-lit]>.iso-shade{stroke:var(--anatomy-lit-shade)}
  .iso-solid[data-lit]>.iso-edge{stroke:var(--anatomy-lit)}
  .iso-halo{fill:var(--anatomy-halo);stroke:none;filter:blur(9px);opacity:var(--anatomy-halo-opacity);transform:translateY(3px)}
  .iso-line{fill:none;stroke:var(--anatomy-lo);stroke-width:var(--anatomy-weight);stroke-linecap:round;stroke-linejoin:round}
  .iso-line[data-tone="hi"]{stroke:var(--anatomy-hi)}
  .iso-line[data-tone="mid"]{stroke:var(--anatomy-mid)}
  .iso-line[data-tone="lo"]{stroke:var(--anatomy-lo)}
  .iso-line[data-tone="faint"]{stroke:var(--anatomy-faint)}
  .iso-line[data-tone="lit"]{stroke:var(--anatomy-lit)}
  .iso-line[data-tone="red"]{stroke:var(--anatomy-red)}
  .iso-line[data-tone="green"]{stroke:var(--anatomy-green)}
  .iso-line[data-tone="blue"]{stroke:var(--anatomy-blue)}
  .iso-line[data-dotted]{stroke-dasharray:.01 3.5;stroke-width:1}
  .iso-line[data-dashed]{stroke-dasharray:3 3}
  .iso-line[data-flow]{stroke-dasharray:2 6}
  .iso-wire-end{fill:var(--anatomy-paper);stroke:var(--anatomy-lo);stroke-width:var(--anatomy-weight)}
  .iso-wire[data-tone="hi"] .iso-wire-end{stroke:var(--anatomy-hi)}
  .iso-wire[data-tone="mid"] .iso-wire-end{stroke:var(--anatomy-mid)}
  .iso-wire[data-tone="faint"] .iso-wire-end{stroke:var(--anatomy-faint)}
  .iso-wire[data-tone="lit"] .iso-wire-end{stroke:var(--anatomy-lit)}
  .iso-dots circle{fill:var(--anatomy-dot);stroke:none;opacity:.32}
  .iso-dots[data-tone="hi"] circle{opacity:.85}
  .iso-dots[data-tone="mid"] circle{opacity:.45}
  .iso-dots[data-tone="lo"] circle{opacity:.22}
  .iso-dots[data-tone="faint"] circle{opacity:.12}
  .iso-face-text{fill:var(--anatomy-mid);font-family:var(--anatomy-mono);letter-spacing:.04em}
  .iso-face-text[data-tone="hi"]{fill:var(--anatomy-hi)}
  .iso-face-text[data-tone="lo"]{fill:var(--anatomy-lo)}
  .iso-face-text[data-tone="faint"]{fill:var(--anatomy-faint)}
  @keyframes iso-flow{to{stroke-dashoffset:-32}}
  @keyframes iso-pulse{0%,100%{opacity:.18}12%{opacity:1}40%{opacity:.18}}
  .iso-line[data-flow]{animation:iso-flow 1600ms linear infinite}
  .iso-dots circle[data-pulse]{animation:iso-pulse 1600ms steps(1,end) infinite;animation-delay:var(--pulse-at,0ms)}
  @media (prefers-reduced-motion:reduce){.iso-line[data-flow],.iso-dots circle[data-pulse]{animation:none}}
