@props(['variant' => 'primary', 'tag' => 'button', 'type' => 'submit']) @php $base = 'inline-flex items-center justify-center gap-2 rounded-full px-5 py-2.5 text-sm font-medium transition disabled:cursor-not-allowed disabled:opacity-50'; $variants = [ 'primary' => 'bg-neutral-900 text-white hover:bg-neutral-700 dark:bg-white dark:text-neutral-900 dark:hover:bg-neutral-200', 'secondary' => 'bg-neutral-100 text-neutral-900 hover:bg-neutral-200 dark:bg-neutral-800 dark:text-neutral-100 dark:hover:bg-neutral-700', 'ghost' => 'text-neutral-600 hover:bg-neutral-100 dark:text-neutral-300 dark:hover:bg-neutral-800', 'danger' => 'bg-red-600 text-white hover:bg-red-700', ]; $classes = $base.' '.($variants[$variant] ?? $variants['primary']); @endphp @if ($tag === 'a') merge(['class' => $classes]) }}>{{ $slot }} @else @endif