.meteor-scene { position: relative; isolation: isolate; overflow: hidden; }
.meteor-background { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; fill: none; color: #a6bacb; pointer-events: none; }
.meteor-background stop { stop-color: currentColor; }
.meteor-line { stroke-width: 1; vector-effect: non-scaling-stroke; }
.meteor-trail { opacity: 0; animation: meteor-fall var(--meteor-duration) linear infinite; animation-delay: var(--meteor-delay); animation-play-state: paused; }
.meteor-scene.is-meteor-visible .meteor-trail { animation-play-state: running; }
html.meteors-paused .meteor-trail { animation-play-state: paused; }
[data-theme="dark"] .meteor-background { color: #7899b6; }
@keyframes meteor-fall { 0% { opacity: 0; transform: translate(0, 0); } 8% { opacity: .65; } 76% { opacity: .65; } 94%, 100% { opacity: 0; transform: translate(-420px, 280px); } }
@media (max-width: 640px) { .meteor-trail:nth-of-type(n + 3) { display: none; } }
@media (prefers-reduced-motion: reduce) { .meteor-background { display: none; } .meteor-trail { animation: none; } }
