COMPONENTS
Buttons
Native actions use the inherited primary accent by default. Set data-variant on a parent for shared semantic colours, or on an action for a local exception. Keep buttons for actions and anchors for navigation.
Usage
Markup: button, action inputs; a.button for destinations
Behaviour: Local action attributes override inherited values and legacy classes; data-appearance remains badge/alert-only.
- data-variant accepts primary, success, warning, danger and neutral. It applies to native buttons, button/submit/reset inputs and .button links. Other form controls do not acquire action colours, and navigation toggles keep their neutral menu styling.
- Existing secondary, danger and warning classes remain supported as local choices over inherited variants. A valid data-variant placed directly on an action takes precedence over those classes. An unsupported value leaves the nearest valid inherited variant in effect, with a local legacy class still taking priority.
- Outline and ghost are presentation classes that can combine with data-variant. data-appearance still applies only to badges and alerts. Secondary remains a class; it is not an accepted data-variant value.
- Shared theme, material, accent, shape, size, border, fill, depth and motion continue to apply. Glass and decorative edges consume the action's resolved semantic colours. Native disabled prevents activation; an anchor cannot be disabled with the disabled attribute.
Component API and styling module · Inherited appearance settings
Button variants
Use the shared semantic vocabulary. No identifying class is needed on native buttons.
Parent defaults and local exceptions
The button and badge share the parent's meaning. The delete action overrides only its variant.
Semantic colour with outline or ghost
Presentation classes remain optional. data-appearance is not a button setting.
Existing classes and precedence
Local semantic classes override the parent. An explicit action attribute wins when both APIs are present.
Links and native action inputs
Only native action input types receive the semantic button treatment. Destination links keep their .button hook.
Glass and semantic edge colours
The parent supplies the variant and material. A local primary value resets the semantic colour while retaining glass.
Actions in light and dark
Primary and secondary actions inherit the same accent. Theme changes their palette; shape, size, borders, depth and motion remain independently configurable. These examples use solid buttons; the optional glass stylesheet enables translucent button material.
Light
Dark
Sizes and disabled state
data-size can set inherited control sizes on html or a section; a value on a control overrides them. Native disabled prevents activation.
Links styled as actions
Use .button on a real destination link. Anchors do not support the disabled attribute.
Local button configuration
Shared attributes can be placed directly on a button or inherited from a surrounding section.
Gradient edges and motion
Plain is the default. Gradient is stationary; shine makes one 800ms sweep on hover or keyboard focus; animated turns slowly. Use continuous animation sparingly for a selected main action. Edges follow the action colour and shape, independently of fill. Native input buttons retain regular borders.
A shared edge with local exceptions
Set data-edge on html or a section to configure buttons, .button links and cards. A nearer plain value removes decoration. data-border none removes the gradient ring; data-motion none pauses it. Reduced motion keeps a static ring; higher contrast, forced colours and print remove decoration.