/* SPDX-License-Identifier: MIT OR AGPL-3.0-only
 * Copyright (c) 2026 Nameflare contributors. See SDK-LICENSE.md for the MIT option. */
.nameflare-name{position:relative;display:inline-block;isolation:isolate;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;font-weight:800;line-height:1.4;white-space:pre}
.nameflare-name::before{content:attr(data-text);position:absolute;inset:0;z-index:-1;background:none;color:transparent;-webkit-text-fill-color:transparent;-webkit-text-stroke:0;text-shadow:var(--nameflare-shadows,none);pointer-events:none}
.nameflare-complex{background-image:none!important}
.nameflare-paint-layer{position:absolute;inset:0;pointer-events:none;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;white-space:inherit;line-height:inherit;font:inherit}
.nameflare-paint-layer::after{content:attr(data-text);white-space:inherit}
.nameflare-name[data-animation=flow],.nameflare-name[data-animation=flow]>.nameflare-paint-layer{animation:nameflare-flow var(--nameflare-speed,4s) linear infinite}
.nameflare-name[data-animation=shimmer],.nameflare-name[data-animation=shimmer]>.nameflare-paint-layer{animation:nameflare-flow var(--nameflare-speed,4s) ease-in-out infinite alternate}
.nameflare-name[data-animation=pulse]{animation:nameflare-pulse var(--nameflare-speed,4s) ease-in-out infinite}
.nameflare-name[data-paused=true],.nameflare-name[data-paused=true]>.nameflare-paint-layer{animation-play-state:paused}
@keyframes nameflare-flow{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes nameflare-pulse{0%,100%{opacity:1;background-position:0% 50%}50%{opacity:.7;background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.nameflare-name,.nameflare-paint-layer{animation:none!important}}
