.boot-loader {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: #0a0c10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.boot-loader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.boot-loader__circuit {
  width: min(420px, 80vw);
  height: auto;
  overflow: visible;
}

.circuit-line {
  fill: none;
  stroke: #2a2f3a;
  stroke-width: 2;
}
.circuit-tick {
  stroke: #4da3ff;
  stroke-width: 3;
  stroke-linecap: round;
  filter: drop-shadow(0 0 3px #4da3ff);
}
.circuit-pins rect { fill: #4a5160; }

.circuit-chip {
  fill: #11151c;
  stroke: #3a4252;
  stroke-width: 2;
}
.circuit-chip__label {
  fill: #4da3ff;
  font-family: var(--mono);
  font-weight: 700;
  font-size: 17px;
  letter-spacing: 0.04em;
}

.circuit-pulse {
  fill: #6cb8ff;
  filter: drop-shadow(0 0 5px #4da3ff);
}

@media (prefers-reduced-motion: reduce) {
  .circuit-pulse animateMotion { display: none; }
}
