/* Shared decorative layer; external CSS survives home / Projects content swaps. */
body::after {
  transform: translate3d(var(--star-x, 0px), var(--star-y, 0px), 0);
}
.shooting-star {
  transform-origin: right center;
  position: fixed;
  z-index: -1;
  pointer-events: none;
  width: 130px;
  height: 2px;
  opacity: 0;
  border-radius: 100%;
  background: linear-gradient(90deg, transparent, rgba(var(--meteor-color, 190, 175, 255), .65) 70%, #fff);
  box-shadow: 0 0 9px rgba(var(--meteor-color, 190, 175, 255), .55);
}
.shooting-star::after {
  content: '';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: var(--meteor-head, 4px);
  height: var(--meteor-head, 4px);
  border-radius: 50%;
  background: #f8f5ff;
  box-shadow: 0 0 10px 2px rgba(var(--meteor-color, 190, 175, 255), .7);
}
@media (prefers-reduced-motion: reduce) {
  body::after { transform: none; }
  .shooting-star { display: none; }
}
