/* Grey-blue breathing: clear contrast without a saturated neon hue. */
.reference-moon-image { filter: saturate(.18); }
.mosaic-blue-texture {
  filter: grayscale(1) sepia(.38) saturate(1.2) hue-rotate(165deg) brightness(1.28);
}
.reference-moon-mosaic pattern rect { fill: #819aaf; fill-opacity: .38; }
.reference-moon-mosaic pattern path { stroke: #b2c5d5; stroke-width: 1.25; }
.reference-moon-mosaic,
.reference-moon-mosaic[data-mode="resting"] { opacity: .025; }
.reference-moon-mosaic[data-mode="breathing"] { animation-duration: 3.2s; }
@keyframes mosaic-blue-breathe {
  0%, 100% { opacity: .025; }
  50% { opacity: .72; }
}
.reference-moon-blue {
  filter: grayscale(1) sepia(.48) saturate(1.3) hue-rotate(165deg) brightness(1.4);
  opacity: .35;
  animation-duration: 2.8s;
}
@keyframes reference-blue-breathe {
  0%, 100% { opacity: .06; }
  50% { opacity: .95; }
}
.project-node.is-active strong,
.project-node.is-active .node-index {
  color: #b4c7d7;
  text-shadow: 0 0 9px #879eaf50;
}
@media (prefers-reduced-motion: reduce) {
  .reference-moon-mosaic[data-mode="breathing"] { opacity: .24; }
  .reference-moon-blue { opacity: .4; }
}
