@props([ 'variant' => 'full', // full | mark 'class' => 'h-8', ]) @php /* | Renders the supplied logo when it exists, and a typographic wordmark | until then. | | The fallback is not decoration — it means every layout, email and print | view can be built and reviewed before the artwork lands, and the moment | the real file is dropped into public/brand/ it appears everywhere with | no template changes. The path comes from config('zylovpn.brand'), so | swapping artwork stays a one-line change. */ $configured = $variant === 'mark' ? config('zylovpn.brand.mark') : config('zylovpn.brand.logo'); $hasAsset = $configured && file_exists(public_path($configured)); @endphp @if ($hasAsset) {{ config('zylovpn.brand.name') }}merge(['class' => $class.' w-auto']) }} > @elseif ($variant === 'mark') {{-- Compact mark: shield outline with a signal glyph. --}} merge(['class' => $class.' w-auto']) }} viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="{{ config('zylovpn.brand.name') }}"> @else merge(['class' => 'inline-flex items-center gap-2.5']) }}> ZyloVPN @endif