/* V63 · Guardian art direction
   One silhouette per guardian. Existing practice clocks and asana transforms
   stay canonical. No CSS animation timers, second rigs or duplicated bodies. */

/* NILA — sculpted cervical bridge, no rectangular stroke-neck. */
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-neck{
  fill:var(--mg-coat)!important;
  stroke:var(--mg-deep)!important;
  stroke-width:1.8!important;
  stroke-opacity:.24;
  stroke-linecap:round;
  stroke-linejoin:round;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-nasal-bridge{
  fill:none;stroke:var(--mg-deep);stroke-width:2.8;
  stroke-linecap:round;stroke-opacity:.28;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-snout{
  fill:var(--mg-chest);stroke:var(--mg-deep);
  stroke-width:1.4;stroke-opacity:.25;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-muzzle-ridge{
  stroke-opacity:.24;stroke-width:2.4;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-head{
  shape-rendering:geometricPrecision;
}

/* BREATH — a connected rounded wing silhouette and chest-driven ribs.
   The existing --studio-rib-expansion and phase clock remain sole motion source. */
#instructor-flow .studio-breath-dragon .sd31-wings{
  stroke-linecap:round;stroke-linejoin:round;
  /* The existing studio breath clock owns this scale. The wings open
     symmetrically from the thorax and never acquire an independent loop. */
  transform-box:fill-box;transform-origin:center 42%;
  transform:scaleX(var(--studio-guardian-wing,1));
  transition:transform .21s linear,opacity .21s linear;
}
#instructor-flow .studio-breath-dragon .sd31-breath-line{
  stroke-linecap:round;stroke-linejoin:round;
}
#instructor-flow .studio-breath-dragon .sd31-snout-bridge{
  stroke-linecap:round;
}

/* UMA — restful wing mantle and anatomical folded arms. No autonomous motion. */
#instructor-flow .meditation-guardian :is(.uma-arm-left,.uma-arm-right){
  stroke-linejoin:round;
}
#instructor-flow .meditation-guardian .uma-palms,
#instructor-flow .meditation-guardian .uma-wrist-light,
#instructor-flow .meditation-guardian .uma-closed-eyes,
#instructor-flow .meditation-guardian .uma-brow-light{
  stroke-linecap:round;stroke-linejoin:round;
}
#instructor-flow .studio-guided[data-studio-active="meditation"] .meditation-guardian .uma-moon{
  opacity:.62;
}
#instructor-flow .studio-guided[data-studio-active="meditation"][data-meditation-focus="body"] .meditation-guardian .uma-moon{
  opacity:.70;
}
#instructor-flow .studio-guided[data-studio-active="meditation"][data-meditation-focus="space"] .meditation-guardian .uma-moon{
  opacity:.85;
}
#instructor-flow .studio-guided[data-studio-active="meditation"][data-meditation-style="silent"] .meditation-guardian .uma-moon{
  opacity:.38;
}

/* Avoid heavy filters on narrow devices without shrinking guardian anatomy. */
@media(max-width:600px){
  :is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian{
    filter:none!important;
  }
  /* Large SVG drop-shadows can cost another compositing pass on mobile. */
  #instructor-flow .studio-guided[data-studio-active="breath"] .studio-breath-dragon,
  #instructor-flow .studio-guided[data-studio-active="meditation"] .meditation-guardian{
    filter:none!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #instructor-flow .studio-breath-dragon *,
  #instructor-flow .meditation-guardian *,
  :is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian *{
    animation:none!important;transition:none!important;
  }
}
body.quiet-mode #instructor-flow .studio-breath-dragon *,
body.quiet-mode #instructor-flow .meditation-guardian *,
body.quiet-mode :is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian *{
  animation:none!important;transition:none!important;
}

/* V64: accessibility freezes the wings' breathing scale without affecting
   the existing textual inhale/exhale cues or their shared clock. */
@media(prefers-reduced-motion:reduce){
  #instructor-flow .studio-breath-dragon .sd31-wings{transform:none!important}
}
body.quiet-mode #instructor-flow .studio-breath-dragon .sd31-wings{transform:none!important}

/* V65: changes grounded in actual twelve-scene Playwright image review.
   Nila previously read as a pale detached mask with circular mechanical
   joints. The underlying authored paths remain unchanged and inspectable. */
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-face{
  fill:var(--mg-coat)!important;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian .mg-face-glaze{
  stroke:var(--mg-light);stroke-opacity:.40;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian
 :is(.mg-hinge-shell,.mg-socket-shape){
  opacity:.06;
}
:is(#instructor-flow,#studio-asana-library) :is(#flow-guide,.studio-library-stage) .movement-guardian
 :is(.mg-hinge-crease,.mg-socket-light){
  opacity:.18;
}
/* The standing asanas had crest tips pressed against the upper crop.
   Move the whole connected creature (including feet and contact shadows),
   never individual paws or the animation's parent pivot. */
#instructor-flow #flow-guide .yy-pose:is([data-pose="pose-1"],[data-pose="pose-2"],[data-pose="transition"])
 .movement-guardian{
  transform:translateY(14px);
}
