/* ============================================================================
   cutter-geometry / cutter.css

   Every colour is a token from msu-theme.css. The body's fill comes from
   the gradient and hatch the renderer defines, so no rule here sets `fill`
   on .cw-cutter-body or .cw-cutter-hatch - a class fill would win over the
   url() attribute and silently flatten the drawing.
   ==========================================================================*/

.cw-cutter-steel-hi { stop-color: color-mix(in srgb, var(--ink-soft) 55%, var(--paper)); }
.cw-cutter-steel-lo { stop-color: var(--ink-soft); }
.cw-cutter-body     { stroke: var(--ink); stroke-width: 1.5; stroke-linejoin: round; }
.cw-cutter-hatch    { stroke: none; }
.cw-cutter-hatch-line { stroke: var(--paper); stroke-width: 1; opacity: .4; }
.cw-cutter-edge {
  fill: none; stroke: var(--ink); stroke-width: 2;
  stroke-linejoin: round; stroke-linecap: round;
}
.cw-cutter-edge.is-engaged { stroke: var(--accent); stroke-width: 4; }
.cw-cutter-axis {
  fill: none; stroke: var(--paper); stroke-width: 1.5;
  stroke-dasharray: 6 3 2 3; opacity: .85;
}

/* Paper needs nothing here: the token layer resets every colour above to
   its light value under print media (msu-theme.css), so the cutter prints
   in ink whatever the screen theme was. */
