@import url("/assets/iso.css");

/* Matches the SVG viewBox from interactive.js. Update both together. */
.bench-figure .iso-figure__frame {
  aspect-ratio: 615.2 / 396.9;
}

/* Materials */

.iso .m-pcb { --paper: color-mix(in srgb, var(--color-accent) 18%, var(--color-bg)); }
.iso .m-mat { --paper: color-mix(in srgb, var(--color-text) 4%, var(--color-bg)); }
.iso .m-res,
.iso .m-meter,
.iso .m-tool,
.iso .m-estop,
.iso .m-probe { --paper: color-mix(in srgb, var(--color-accent) 30%, var(--color-bg)); }
.iso .m-solder,
.iso .m-grip,
.iso .m-plug { --paper: color-mix(in srgb, var(--color-text) 10%, var(--color-bg)); }

/* Surface details */

.iso .grid { stroke: color-mix(in srgb, var(--color-text) 30%, var(--color-bg)); }
.iso .trace,
.iso .rail { stroke: var(--color-accent); }
.iso .hole { stroke-width: 0.9; opacity: 0.6; }
.iso .pins { stroke: color-mix(in srgb, var(--color-bg) 75%, var(--color-text)); }
.iso .band { stroke-width: 0.9; }
.iso .lcd { fill: color-mix(in srgb, var(--color-text) 80%, var(--color-bg)); }

.iso .wave {
  stroke: var(--color-accent);
  opacity: 0;
  transition: opacity 0.4s;
}

.iso .wave.is-on {
  opacity: 1;
}

/* Cable cores */

.iso .tube-in.hose { stroke: color-mix(in srgb, var(--color-text) 12%, var(--color-bg)); }
.iso .tube-in.wire-a,
.iso .tube-in.lead { stroke: var(--color-accent); }
.iso .tube-in.solder { stroke: color-mix(in srgb, var(--color-text) 25%, var(--color-bg)); }

/* Effects */

.iso .spark {
  stroke: var(--color-accent);
  stroke-width: 0.9;
}

.iso .tip-glow {
  fill: var(--color-accent);
  filter: blur(1.5px);
}
