    /* ---- the site worker ---- */
    .worker {
      position: absolute;
      left: 0; top: 0;
      width: 42px; height: 56px;
      z-index: 5;
      pointer-events: none;
      will-change: transform;
      visibility: hidden; /* shown by worker.js once placed */
    }
    .worker .flip { width: 100%; height: 100%; transform-origin: 50% 50%; }
    .worker.faces-left .flip { transform: scaleX(-1); }
    .wk { width: 100%; height: 100%; overflow: visible; stroke: var(--ink); stroke-width: 2px; }
    .wk * { vector-effect: non-scaling-stroke; transform-box: view-box; }
    .wk .face, .wk .hand { fill: #12476f; }
    .wk .torso { fill: var(--blueprint-deep); }
    .wk .vest { stroke: var(--stamp); stroke-width: 2px; }
    .wk .eye { fill: var(--ink); stroke-width: 1.2px; }
    .wk .pupil { fill: var(--blueprint-deep); stroke: none; r: 2.6px; }
    .wk .mouth { stroke-width: 2px; }
    .wk .boot { fill: var(--blueprint-deep); }
    .wk .hatdome { fill: var(--tape-yellow); stroke: var(--tape-yellow); stroke-width: 2px; }
    .wk .hatdome { stroke: var(--ink); }
    .wk .hatrib { stroke: var(--ink); stroke-width: 2px; }
    .wk .hatbrim { stroke: var(--ink); }
    .wk .metal { fill: var(--ink-dim); }
    .wk .roller { fill: var(--stamp); }
    .wk .tape-m { stroke: var(--tape-yellow); stroke-width: 3px; }
    .wk .spark { stroke: var(--tape-yellow); stroke-width: 2px; }
    .wk .steam path { stroke: var(--ink-dim); stroke-width: 1.8px; }
    .wk .crate { fill: var(--blueprint-deep); }
    .wk .rope { stroke: var(--tape-yellow); stroke-width: 1.8px; }
    .wk .p-saw rect { fill: var(--blueprint-deep); }

    /* parts pivot where the joint is; the SVG's user units are px here */
    .wk .bob { transform-origin: 30px 78px; }
    .wk .leg.l { transform-origin: 26px 58px; }
    .wk .leg.r { transform-origin: 34px 58px; }
    .wk .arm.l { transform-origin: 22px 44px; }
    .wk .arm.r { transform-origin: 38px 44px; }
    .wk .head { transform-origin: 30px 38px; }
    .wk .hat { transform-origin: 30px 19px; }
    .wk .pupil { transform-origin: 32px 26px; }

    .wk .tool, .wk .props > g, .wk .steam { display: none; }
    .wk[data-act="hammer"] .t-hammer, .wk[data-act="drill"] .t-drill,
    .wk[data-act="saw"] .t-saw, .wk[data-act="measure"] .t-measure,
    .wk[data-act="paint"] .t-paint, .wk[data-act="weld"] .t-weld,
    .wk[data-act="coffee"] .t-coffee { display: inline; }
    .wk[data-act="hoist"] .p-hoist, .wk[data-act="weld"] .p-weld,
    .wk[data-act="saw"] .p-saw, .wk[data-act="coffee"] .steam { display: inline; }

