Buttons

The Neptuno button with the Luna neon pill style, built only from palette tokens. Click counts are local demo state.

Variants and sizes

primary (neptunoBlue, the Neptuno brand color) and secondary (mexicanPink) use the neon pill; quiet is the plain surface for low-emphasis actions.

Button

Actions and links. Hover lifts the pill, strengthens the glow, and sweeps a light sheen.

iOS
  • KRXButtonStyle (.primary / .secondary) KRXCore-iOS/Source/UIUX/Styles/ButtonStyle.swift

Visual style ported from Luna Web: Luna/Web/src/lib/components/ui/Button.svelte (sibling repository), re-expressed with Neptuno palette tokens instead of Tailwind arbitrary colors. iOS uses solid KRXButtonStyle fills; the neon pill is web-only for now.

Interactive example

States

Icons and motion

arrow-right and chevron-right play the Luna swoosh: on hover, while pressed on touch, and on keyboard focus. Reduced-motion users get a static icon.

Button (icon)

Leading or trailing icon from the shared icon set.

iOS
  • KRXButtonStyle (.primary / .secondary) KRXCore-iOS/Source/UIUX/Styles/ButtonStyle.swift

iOS passes an SF Symbol via Button(title, systemImage:).

Interactive example

Module accents

Each module keeps its identity color from Widget.ModuleType. Pass its palette token as accent; the colors come from the palette module map, not new values.

Button (accent)

The neon pill re-tinted with a module color.

iOS
  • Widget.ModuleType.color iOS/Shared/Modules/Dashboard/Widget.swift

Interactive example