AvilaDS
All design tokens exported from the Avila Design System — available as CSS custom properties prefixed with --avila-.
Design Tokens
Primitive tokens define raw values. Semantic tokens reference primitives and express intent — use semantic tokens in product code.
--avila-primitive-color-hot-pink#e8195a--avila-primitive-color-hot-pink-hover#b8103f--avila-primitive-color-hot-pink-active#8a0c2e--avila-primitive-color-hot-pink-subtle#fce8ee--avila-primitive-color-marigold#f5a623--avila-primitive-color-marigold-hover#c47d0a--avila-primitive-color-marigold-subtle#fdf3e0--avila-primitive-color-cobalt#1b4fd8--avila-primitive-color-cobalt-hover#1440b0--avila-primitive-color-cobalt-subtle#e8eefb--avila-primitive-color-teal#00c9a7--avila-primitive-color-teal-hover#009e84--avila-primitive-color-teal-subtle#e5faf7--avila-primitive-color-ink-100#1a1208--avila-primitive-color-ink-90#2e2416--avila-primitive-color-ink-80#3d3020--avila-primitive-color-ink-70#4f3e2c--avila-primitive-color-ink-60#6b5740--avila-primitive-color-ink-50#7a6e65--avila-primitive-color-ink-40#a09488--avila-primitive-color-ink-30#c0b8ae--avila-primitive-color-ink-20#d8d2ca--avila-primitive-color-ink-10#ece8e2--avila-primitive-color-ink-05#f5f2ee--avila-primitive-color-parchment#f5f0e8--avila-primitive-color-parchment-dark#e8e0d4--avila-primitive-color-off-white#fdfaf6--avila-primitive-color-white#ffffff--avila-primitive-color-success-base#1a7a4a--avila-primitive-color-success-subtle#e6f7ee--avila-primitive-color-warning-base#b86a00--avila-primitive-color-warning-subtle#fff3dc--avila-primitive-color-error-base#c8282e--avila-primitive-color-error-subtle#fdecea--avila-primitive-color-info-base#1b4fd8--avila-primitive-color-info-subtle#e8eefb--avila-color-background-page#fdfaf6Main page background--avila-color-background-surface#f5f0e8Card / panel surface--avila-color-background-surface-raised#ffffffElevated modal / dropdown--avila-color-background-surface-sunken#f5f2eeInset / input background--avila-color-background-overlay#1a1208Modal scrim--avila-color-text-primary#1a1208Primary body text--avila-color-text-secondary#3d3020Secondary / caption text--avila-color-text-muted#7a6e65Placeholder, disabled--avila-color-text-inverse#f5f0e8Text on dark surfaces--avila-color-text-accent#e8195aHighlighted / brand text--avila-color-text-link#e8195aHyperlinks--avila-color-text-link-hover#b8103fLink hover--avila-color-text-on-accent#f5f0e8Text on accent bg--avila-color-border-default#e8e0d4Default card / input border--avila-color-border-strong#c0b8aeStrong border, separator--avila-color-border-focus#e8195aFocus ring--avila-color-border-accent#f5a623Accent / brand border--avila-color-interactive-primary-bg#e8195aPrimary button bg--avila-color-interactive-primary-bg-hover#b8103fPrimary button hover--avila-color-interactive-primary-bg-active#8a0c2ePrimary button active--avila-color-interactive-primary-text#f5f0e8Primary button label--avila-color-interactive-secondary-bg#1a1208Secondary button bg--avila-color-interactive-secondary-text#f5f0e8Secondary button label--avila-color-interactive-ghost-text#e8195aGhost button label--avila-color-interactive-ghost-border#e8195aGhost button border--avila-color-accent-hot-pink#e8195aHot Pink accent--avila-color-accent-hot-pink-subtle#fce8eeHot Pink tint bg--avila-color-accent-marigold#f5a623Marigold accent--avila-color-accent-marigold-subtle#fdf3e0Marigold tint bg--avila-color-accent-cobalt#1b4fd8Cobalt accent--avila-color-accent-cobalt-subtle#e8eefbCobalt tint bg--avila-color-accent-teal#00c9a7Teal accent--avila-color-accent-teal-subtle#e5faf7Teal tint bg--avila-color-feedback-success-bg#e6f7eeSuccess background--avila-color-feedback-success-text#1a7a4aSuccess text / icon--avila-color-feedback-warning-bg#fff3dcWarning background--avila-color-feedback-warning-text#b86a00Warning text / icon--avila-color-feedback-error-bg#fdeceaError background--avila-color-feedback-error-text#c8282eError text / icon--avila-color-feedback-info-bg#e8eefbInfo background--avila-color-feedback-info-text#1b4fd8Info text / icon--avila-color-nav-bg#1a1208Nav background--avila-color-nav-text#f5f0e8Nav link text--avila-color-nav-text-muted#7a6e65Inactive nav links--avila-color-nav-border#2e2416Nav bottom border--avila-color-nav-cta-bg#e8195aNav CTA button--avila-color-nav-cta-text#f5f0e8Nav CTA label--avila-color-card-bg-light#ffffffDefault card background--avila-color-card-bg-dark#1a1208Dark card variant--avila-color-card-border#e8e0d4Card border--avila-color-metric-value#f5a623Metric / KPI number--avila-color-chip-text#1a1208Chip / tag text--avila-color-rainbow-hot-pink#e8195aRainbow Hot Pink--avila-color-rainbow-marigold#f5a623Rainbow Marigold--avila-color-rainbow-cobalt#1b4fd8Rainbow Cobalt--avila-color-rainbow-teal#00c9a7Rainbow TealDesign Tokens
A proportional spacing scale from 0 to 320px. Bar width is proportional to token value relative to the maximum (320px).
--avila-space-0--avila-space-1px--avila-space-0-5--avila-space-1--avila-space-1-5--avila-space-2--avila-space-2-5--avila-space-3--avila-space-3-5--avila-space-4--avila-space-5--avila-space-6--avila-space-7--avila-space-8--avila-space-9--avila-space-10--avila-space-11--avila-space-12--avila-space-14--avila-space-16--avila-space-20--avila-space-24--avila-space-28--avila-space-32--avila-space-36--avila-space-40--avila-space-48--avila-space-56--avila-space-64--avila-space-80Design Tokens
Nine steps from square to pill. The preview box shows the corner rounding at actual scale.
--avila-radius-none0px--avila-radius-xs2px--avila-radius-sm4px--avila-radius-md6px--avila-radius-lg8px--avila-radius-xl12px--avila-radius-2xl16px--avila-radius-3xl24px--avila-radius-full9999pxDesign Tokens
Font sizes, line heights, letter spacing, font weights, paragraph spacing, and semantic role sizes — all driven by Oswald.
--avila-fs-2xs--avila-fs-xs--avila-fs-sm--avila-fs-base--avila-fs-md--avila-fs-lg--avila-fs-xl--avila-fs-2xl--avila-fs-3xl--avila-fs-4xl--avila-fs-5xl--avila-fs-6xl--avila-fs-7xl--avila-fs-8xl--avila-fs-9xl--avila-fs-10xl--avila-role-display-hero--avila-role-display-xl--avila-role-display-lg--avila-role-display-md--avila-role-display-sm--avila-role-heading-h1--avila-role-heading-h2--avila-role-heading-h3--avila-role-heading-h4--avila-role-heading-h5--avila-role-metric-xl--avila-role-metric-lg--avila-role-metric-md--avila-role-metric-sm--avila-role-body-xl--avila-role-body-lg--avila-role-body-md--avila-role-body-sm--avila-role-body-xs--avila-role-label-lg--avila-role-label-md--avila-role-label-sm--avila-role-label-xs--avila-role-overline-lg--avila-role-overline-md--avila-role-overline-sm--avila-role-sublabel-md--avila-role-sublabel-sm| Variable | Value | Description |
|---|---|---|
| --avila-lh-none | 1 | 1:1 — display, all-caps labels |
| --avila-lh-tight | 1.1 | Tight — large display headings |
| --avila-lh-snug | 1.25 | Snug — subheadings |
| --avila-lh-normal | 1.5 | Normal — body copy default |
| --avila-lh-relaxed | 1.625 | Relaxed — long-form paragraphs |
| --avila-lh-loose | 2 | Loose — editorial / airy layouts |
| Variable | Value | Description |
|---|---|---|
| --avila-ls-tighter | -1.5px | Very tight — large display only |
| --avila-ls-tight | -0.5px | Tight — hero headlines |
| --avila-ls-snug | -0.25px | Slightly tight — subheadings |
| --avila-ls-normal | 0px | Normal — body copy |
| --avila-ls-wide | 0.3px | Wide — Oswald body / UI |
| --avila-ls-wider | 1px | Wider — labels, small caps |
| --avila-ls-widest | 1.5px | Widest — Bebas Neue overlines |
| --avila-ls-ultra | 2px | Ultra wide — Bebas Neue display |
| --avila-ls-tracking | 3px | Tracking — section eyebrow |
| Variable | Value | Description |
|---|---|---|
| --avila-fw-thin | 100 | Thin |
| --avila-fw-extralight | 200 | Extra Light |
| --avila-fw-light | 300 | Light |
| --avila-fw-regular | 400 | Regular — Oswald body |
| --avila-fw-medium | 500 | Medium |
| --avila-fw-semibold | 600 | SemiBold |
| --avila-fw-bold | 700 | Bold |
| --avila-fw-extrabold | 800 | Extra Bold |
| --avila-fw-black | 900 | Black / Heavy |
| Variable | Value | Description |
|---|---|---|
| --avila-para-none | 0px | No paragraph spacing |
| --avila-para-xs | 4px | Tight — dense UI lists |
| --avila-para-sm | 8px | Small — compact body |
| --avila-para-md | 12px | Medium — default body |
| --avila-para-lg | 16px | Large — editorial spacing |
| --avila-para-xl | 24px | XL — feature copy |
Design Tokens
Component heights, icon sizes, container widths, and the grid system.
| Variable | Value | Description |
|---|---|---|
| --avila-height-xs | 28px | Chip, badge, compact |
| --avila-height-sm | 36px | Compact input, tag |
| --avila-height-md | 44px | Default input, button |
| --avila-height-lg | 52px | Large CTA button |
| --avila-height-xl | 64px | XL component |
| Variable | Value | Description |
|---|---|---|
| --avila-icon-xs | 12px | Icon XS |
| --avila-icon-sm | 16px | Icon SM |
| --avila-icon-md | 20px | Icon MD — default |
| --avila-icon-lg | 24px | Icon LG |
| --avila-icon-xl | 32px | Icon XL |
| Variable | Value | Description |
|---|---|---|
| --avila-container-sm | 640px | Small container |
| --avila-container-md | 768px | Medium container |
| --avila-container-lg | 1024px | Large container |
| --avila-container-xl | 1280px | XL — portfolio default |
| --avila-container-2xl | 1440px | Full bleed |
| Variable | Value | Description |
|---|---|---|
| --avila-grid-columns | 12 | 12-column grid |
| --avila-grid-gutter | 24px | Column gutter |
| --avila-grid-margin | 80px | Outer margin |
Design Tokens
A structured stacking scale that keeps layering predictable and conflict-free.
| Variable | Value | Description |
|---|---|---|
| --avila-z-hide | -1 | Hidden layer |
| --avila-z-base | 0 | Default document flow |
| --avila-z-raised | 10 | Cards, hover elevation |
| --avila-z-dropdown | 100 | Dropdowns, selects |
| --avila-z-sticky | 200 | Sticky navigation |
| --avila-z-overlay | 300 | Overlays, backdrops |
| --avila-z-modal | 400 | Modal dialogs |
| --avila-z-toast | 500 | Toast notifications |
| --avila-z-tooltip | 600 | Tooltips |
Design Tokens
Animation and transition durations calibrated to interaction complexity.
| Variable | Value | Description |
|---|---|---|
| --avila-duration-instant | 0ms | Instant — no transition |
| --avila-duration-fast | 75ms | Fast — micro interactions |
| --avila-duration-snappy | 100ms | Snappy — button feedback |
| --avila-duration-base | 150ms | Base — default transition |
| --avila-duration-moderate | 200ms | Moderate — panels, reveals |
| --avila-duration-slow | 300ms | Slow — page transitions |
| --avila-duration-slower | 400ms | Slower — complex animations |
| --avila-duration-sluggish | 500ms | Sluggish — loading states |
Design Tokens
Opacity values from transparent to fully opaque, shown with a Hot Pink swatch.
Design Tokens
Blur radius values for constructing box shadows. Combine with --avila-color-card-shadow for consistent elevation.
| Variable | Value | Description |
|---|---|---|
| --avila-shadow-none | 0px | Flat / no elevation |
| --avila-shadow-xs | 2px | XS blur radius |
| --avila-shadow-sm | 4px | SM blur radius |
| --avila-shadow-md | 8px | MD blur radius — cards |
| --avila-shadow-lg | 16px | LG blur radius — modals |
| --avila-shadow-xl | 24px | XL blur radius — drawers |
| --avila-shadow-2xl | 40px | 2XL blur radius — hero |
| --avila-shadow-3xl | 64px | 3XL blur radius — full-page |
Design Tokens
Seven responsive breakpoints from mobile (320px) to ultrawide (1920px).
| Variable | Value | Description |
|---|---|---|
| --avila-bp-xs | 320px | XS — smallest phones |
| --avila-bp-sm | 480px | SM — large phones |
| --avila-bp-md | 768px | MD — tablets |
| --avila-bp-lg | 1024px | LG — small laptops |
| --avila-bp-xl | 1280px | XL — desktops |
| --avila-bp-2xl | 1440px | 2XL — large monitors |
| --avila-bp-3xl | 1920px | 3XL — ultrawide |