import type { ButtonHTMLAttributes } from 'react' import { cn } from '@/lib/cn' export type ButtonVariant = 'primary' | 'ghost' /** Shared button styling, exported so anchor "buttons" (e.g. the OIDC link) match. */ export function buttonClasses(variant: ButtonVariant = 'primary', className?: string) { return cn( 'inline-flex items-center justify-center rounded-md px-4 py-2 text-sm font-medium transition-colors', 'outline-none focus-visible:ring-2 focus-visible:ring-accent/40', 'disabled:cursor-not-allowed disabled:opacity-60', variant === 'primary' && 'bg-accent text-accent-contrast hover:bg-accent-strong', variant === 'ghost' && 'border border-border text-fg hover:bg-border/50', className, ) } interface ButtonProps extends ButtonHTMLAttributes { variant?: ButtonVariant } export function Button({ variant = 'primary', className, type = 'button', ...props }: ButtonProps) { return