Skip to content

Pagination theming ​

The values listed below are exposed as --rozie-pagination-* custom properties, each with a built-in fallback, so Pagination works with zero configuration and re-skins by remapping tokens. The structural rules compile per-leaf and are not consumer-overridable.

css
:root {
  --rozie-pagination-gap: 0.25rem;
  --rozie-pagination-accent: #0066cc;
  --rozie-pagination-size: 2.25rem;
  --rozie-pagination-hover-bg: rgba(0, 0, 0, 0.05);
}

Tokens ​

layout / typography ​

TokenDefault
--rozie-pagination-gap0.25rem
--rozie-pagination-fontinherit
--rozie-pagination-font-weight500

accent — the single color most consumers will set; the active page + focus ring derive from it

TokenDefault
--rozie-pagination-accent#0066cc

per-control box model ​

TokenDefault
--rozie-pagination-size2.25rem
--rozie-pagination-padding-x0.5rem
--rozie-pagination-fg#1a1a1a
--rozie-pagination-bgtransparent
--rozie-pagination-border-width1px
--rozie-pagination-borderrgba(0, 0, 0, 0.18)
--rozie-pagination-radius6px

hover ​

TokenDefault
--rozie-pagination-hover-bgrgba(0, 0, 0, 0.05)
--rozie-pagination-hover-borderrgba(0, 0, 0, 0.28)

active (current) page ​

TokenDefault
--rozie-pagination-active-fg#fff

focus ring ​

TokenDefault
--rozie-pagination-ring-width2px
--rozie-pagination-ring-offset1px

ellipsis marker ​

TokenDefault
--rozie-pagination-ellipsis-fgrgba(0, 0, 0, 0.5)

disabled ​

TokenDefault
--rozie-pagination-disabled-opacity0.5

Defaulted where Pagination reads them ​

Public, but declared nowhere by base.css: the fallback below applies only while no scope sets the token, and it is resolved at the component itself — so it follows a value set on any ancestor (a token it defaults to included).

TokenDefault
--rozie-pagination-active-bgvar(--rozie-pagination-accent, #0066cc)
--rozie-pagination-active-bordervar(--rozie-pagination-accent, #0066cc)
--rozie-pagination-ringvar(--rozie-pagination-accent, #0066cc)

Design-system bridges ​

Each package ships token presets that map Pagination's tokens onto a known design system's published CSS variables — import base.css first, then a bridge:

ts
import '@rozie-ui/pagination-react/themes/base.css';
import '@rozie-ui/pagination-react/themes/bootstrap.css';
import '@rozie-ui/pagination-react/themes/material.css';
import '@rozie-ui/pagination-react/themes/shadcn.css';

See also ​

Pre-1.0 — APIs may change between minor versions.