@props(['variant' => 'primary', 'as' => 'button', 'href' => null]) @php $variants = [ 'primary' => 'bg-indigo-600 text-white hover:bg-indigo-500 focus-visible:outline-indigo-600', 'secondary' => 'bg-white text-gray-700 border border-gray-300 hover:bg-gray-50 dark:bg-gray-900 dark:text-gray-200 dark:border-gray-700 dark:hover:bg-gray-800', 'danger' => 'bg-red-600 text-white hover:bg-red-500 focus-visible:outline-red-600', ]; $classes = 'inline-flex items-center justify-center gap-1.5 rounded-md px-3 py-2 text-sm font-medium shadow-sm transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 disabled:opacity-50 disabled:cursor-not-allowed '.($variants[$variant] ?? $variants['primary']); @endphp @if ($as === 'link') merge(['class' => $classes]) }}>{{ $slot }} @else @endif