/**
 * Default theme for the Pagination component using modern neutral colors
 */
const paginationTheme = {
    // Base container styles
    baseStyle: "flex items-center justify-center gap-1",
    // Unified item styles for all pagination elements (pages, navigation, etc.)
    // Light mode: white background, muted text, neutral borders
    // Dark mode: neutral-800 background, lighter text, neutral-600 borders
    itemStyle: "inline-flex items-center justify-center font-medium rounded-[var(--form-radius)] transition-all duration-200 ease-in-out " +
        // Focus styles
        "focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-primary)] focus-visible:ring-offset-2 dark:focus-visible:ring-offset-[var(--color-neutral-900)] " +
        // Base state - light
        "cursor-pointer bg-white border border-transparent text-[var(--color-text-muted)] " +
        // Base state - dark
        "dark:bg-[var(--color-neutral-800)] dark:text-[var(--color-neutral-400)] dark:border-transparent " +
        // Hover state - light
        "hover:text-[var(--color-text-primary)] hover:bg-[var(--color-background-secondary)] hover:border-[var(--color-border)] " +
        // Hover state - dark
        "dark:hover:bg-[var(--color-neutral-700)] dark:hover:text-[var(--color-neutral-200)] dark:hover:border-[var(--color-neutral-600)] " +
        // Active state - light
        "data-[active=true]:bg-white data-[active=true]:border-[var(--color-border)] data-[active=true]:text-[var(--color-text-primary)] " +
        // Active state - dark (uses primary color accent)
        "dark:data-[active=true]:bg-[var(--color-primary-900)] dark:data-[active=true]:border-[var(--color-primary-700)] dark:data-[active=true]:text-[var(--color-primary-300)] " +
        // Disabled state
        "data-[disabled=true]:opacity-50 data-[disabled=true]:cursor-not-allowed data-[disabled=true]:pointer-events-none",
    // Unified item sizes
    itemSizes: {
        sm: "size-8 min-w-[2rem] text-base",
        md: "size-10 min-w-[2.5rem] text-base",
    },
    // Ellipsis styles
    ellipsisStyle: "inline-flex items-center justify-center font-medium text-[var(--color-text-muted)] dark:text-[var(--color-neutral-500)] cursor-default pointer-events-none",
};

export { paginationTheme };
