/* Krionix FX layer — circuit canvases in dark sections, scroll progress */
.autostack, .contact { position: relative; overflow: hidden; }
.autostack > .wrap, .contact > .wrap { position: relative; z-index: 1; }
.circuit-canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.autostack .circuit-canvas { -webkit-mask-image: linear-gradient(to right, #000 0%, #000 30%, transparent 78%); mask-image: linear-gradient(to right, #000 0%, #000 30%, transparent 78%); }
.contact .circuit-canvas { -webkit-mask-image: linear-gradient(to left, #000 0%, #000 35%, transparent 90%); mask-image: linear-gradient(to left, #000 0%, #000 35%, transparent 90%); }
#fx-progress { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 120; pointer-events: none; }
#fx-progress i { display: block; height: 100%; transform-origin: 0 50%; transform: scaleX(0);
  background: linear-gradient(90deg, #112f77, #0ea5b7 55%, #1f9d55); box-shadow: 0 0 10px rgba(14,165,183,.7); }
