Components
Hover lifts the button; click presses it into its shadow. Use <button> or <a class="tl-btn">.
<button class="tl-btn tl-btn--primary">Primary</button>
<button class="tl-btn tl-btn--secondary">Secondary</button>
<button class="tl-btn tl-btn--ghost">Ghost</button>
<button class="tl-btn tl-btn--primary tl-btn--lg">Large</button>
<div class="tl-btn-group">
<button class="tl-btn tl-btn--secondary">Left</button>
<button class="tl-btn tl-btn--secondary">Right</button>
</div>
| Class | Description |
|---|---|
.tl-btn | Base button (required) |
.tl-btn--primary | Coral fill, white text |
.tl-btn--secondary | White fill, ink text |
.tl-btn--ink | Ink fill, cream text |
.tl-btn--danger | Red semantic fill |
.tl-btn--success | Green semantic fill |
.tl-btn--ghost | Transparent, no shadow |
.tl-btn--sm | Small size |
.tl-btn--lg | Large size |
.tl-btn--block | Full width |
.tl-btn-group | Grouped buttons wrapper |
disabled / .is-disabled | Non-interactive state |
Accessibility
Use native <button> for actions and <a> for navigation. Focus rings use :focus-visible with a 3px primary outline. Disabled buttons set pointer-events: none — prefer aria-disabled if the button must remain focusable.