/* THE RIGS' STYLES FOR PAGES OUTSIDE A STORY (2026-10-09): the "rigs" block of app/story/story.css, every
   selector scoped under .rigs - story.css also styles html and body for the story page, so a page that only
   shows a character (the landing page) cannot link it. GENERATED from story.css by hand-run script; if the rig
   block there changes, regenerate this copy. */
/* ------------------------------------------------------------------ rigs ------- */
.rigs .fig { position: absolute; left: 0; top: 0; width: 0; height: 0; z-index: 5; }
.rigs .fig div { position: absolute; }
.rigs .fig .inner { left: 0; top: 0; }
.rigs .j { width: 0; height: 0; }
.rigs .shadow { left: -150px; top: -22px; width: 300px; height: 44px; border-radius: 50%;
  background: radial-gradient(closest-side, rgba(40,26,14,.34), rgba(40,26,14,0)); }
.rigs .dogshadow { left: -190px; top: -26px; width: 380px; height: 52px; }
.rigs .fig.dog.jump { animation: jump .5s ease-out 2; }
@keyframes jump { 50% { margin-top: -60px; } }
.rigs .fig.dog.tremble .inner { animation: tremble .12s linear infinite; }
@keyframes tremble { 50% { transform: translateX(4px); } }
/* the detective's side rig: the walk test's measured pivots, unchanged */
.rigs .det .body { left: 0; top: 0; }
.rigs .det .torso { left: -100px; top: -355px; width: 194px; height: 400px; }
.rigs .det .neck { left: 0; top: -315px; }
.rigs .det .head { left: -125px; top: -292px; width: 270px; height: 304px; }
.rigs .det .shoulder { left: -42px; top: -210px; }
.rigs .det .upper { left: -33px; top: -30px; width: 67px; height: 203px; }
.rigs .det .elbow { left: 2px; top: 150px; }
.rigs .det .fore { left: -8px; top: -19px; width: 184px; height: 38px; transform-origin: 8px 19px; transform: rotate(90deg); }
.rigs .det .hip { left: 0; top: 0; }
.rigs .det .thigh { left: -50px; top: -38px; width: 109px; height: 235px; }
.rigs .det .knee { left: 8px; top: 167px; }
.rigs .det .shin { left: -38px; top: -38px; width: 76px; height: 167px; }
.rigs .det .ankle { left: 0; top: 112px; }
.rigs .det .boot { left: -40px; top: -15px; width: 139px; height: 109px; }
.rigs .det .far { filter: brightness(.7) saturate(.85); }
.rigs .det .zFarArm { z-index: 1; } .rigs .det .zFarLeg { z-index: 2; } .rigs .det .zTorso { z-index: 3; }
.rigs .det .zNearLeg { z-index: 4; } .rigs .det .zHead { z-index: 6; } .rigs .det .zNearArm { z-index: 7; }
.rigs .det .boot { z-index: 0; } .rigs .det .ankle { z-index: 0; } .rigs .det .shin { z-index: 1; }
.rigs .det .elbow { z-index: 0; } .rigs .det .upper { z-index: 1; }
.rigs .det .knee { z-index: 0; } .rigs .det .thigh { z-index: 1; }
.rigs .det .front, .rigs .det .front div { transform-origin: 0 0; }
.rigs .det .front .farm { z-index: 0; } .rigs .det .front .ftorso { z-index: 2; } .rigs .det .front .fhead { z-index: 3; }
.rigs .det .front .legs, .rigs .det .front .breathe { left: 0; top: 0; }
.rigs .det .front .fleg { z-index: 1; } .rigs .det .front .fboot { z-index: 0; transform-origin: 50% 50%; }
.rigs .det .front .fhold { z-index: 4; transform-origin: 50% 100%; }

.rigs .dog .far { filter: brightness(.72) saturate(.85); }
.rigs .dog .dside, .rigs .dog .dsit, .rigs .dog .dcrawl { left: 0; top: 0; transform-origin: 0 0; }

.rigs .gma .gbody, .rigs .gma .gbody div { transform-origin: 0 0; }

.rigs .pc { position: absolute; background-repeat: no-repeat; background-size: 100% 100%; }
