import type { ButtonHTMLAttributes, ReactNode } from 'react' /** * Display Case — Button * The quiet, bordered control the chrome leans on. `ghost` is the default (it * recedes); `primary` (warm ink) and `accent` (marigold) are for the rare * emphatic action; `subtle` is borderless. A toggle button lights marigold via * `aria-pressed`. * * Styling lives in the sibling `Button.css`, concatenated into the Vitrine * stylesheet and inlined into every document head server-side (see * `readVitrineCss` in server.ts) — no runtime injection. */ export type ButtonVariant = 'ghost' | 'primary' | 'accent' | 'subtle' export type ButtonSize = 'sm' | 'md' | 'lg' export interface ButtonProps extends ButtonHTMLAttributes { variant?: ButtonVariant size?: ButtonSize children?: ReactNode } export function Button({ variant = 'ghost', size = 'md', type = 'button', children, ...rest }: ButtonProps) { return ( ) }