/* The existing text reserves the exact box. Canvas contours never resize it or
   capture footer actions; touch devices keep a static, readable wordmark. */
[data-signal-edition] .signal-footer .signal-wordmark[data-signal-wordmark],[data-shared-effects] .signal-wordmark[data-signal-wordmark]{position:relative;isolation:isolate;opacity:1;pointer-events:auto;touch-action:pan-y;cursor:default;overflow:hidden}
.signal-wordmark-label{display:block;font:inherit;line-height:inherit;letter-spacing:inherit;pointer-events:none}
.signal-wordmark[data-signal-wordmark] .signal-wordmark-label{color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--ink) 28%,transparent)}
.signal-wordmark-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none;opacity:0}
.signal-wordmark[data-wordmark-ready=true] .signal-wordmark-canvas{opacity:1}
.signal-wordmark[data-wordmark-ready=true] .signal-wordmark-label{visibility:hidden}
@media(prefers-reduced-motion:reduce){.signal-wordmark[data-signal-wordmark]{animation:none!important;transition:none!important}}

/* Filled dots form the actual letters in these modes. The hidden source text
   still reserves the same footer space and is restored on teardown. */
.signal-wordmark:is([data-signal-wordmark=particles],[data-signal-wordmark=magnetic],[data-signal-wordmark=wave]) .signal-wordmark-label{color:color-mix(in srgb,var(--ink) 65%,transparent);-webkit-text-stroke:0}
