Interface: ModeOverride
Defined in: Types.ts:167
Semantic-only overrides for the alternate color mode.
Core tokens are immutable across modes. Only semantic token references may change — remapping to different core tokens for the alternate mode.
Uses DeepPartial: every nested key is optional. Omitting a key inherits
the value from the base theme (see deepMerge in roots/helpers.ts,
which treats undefined and absent keys identically). An alternate
supplies only the leaves that differ from the base.
See
modes.md — "Modes remap semantic references, not core values."
Properties
semantic
semantic:
object
Defined in: Types.ts:168
border?
optionalborder?:object
border.divider?
optionaldivider?:object
Structural separator between content groups (low emphasis).
Use when splitting list rows, sections, toolbar regions, or grouped fields
— anywhere the line separates without enclosing.
Pair with a low-emphasis color (informational.muted.border.default); do
not use to enclose a surface or control — those are outline.surface /
outline.control.
border.divider.style?
optionalstyle?:`{core.border.${string}}`
border.divider.width?
optionalwidth?:`{core.border.${string}}`
border.outline?
optionaloutline?:object
border.outline.control?
optionalcontrol?:object
Boundary of an interactive control (button, input, toggle, chip, segmented item).
Use when the element is interactive and needs a visible edge at rest.
Pair with {ux}.{role}.border.{state} colors per FSL UX context; do not
use for containing surfaces — those are outline.surface.
border.outline.control.style?
optionalstyle?:`{core.border.${string}}`
border.outline.control.width?
optionalwidth?:`{core.border.${string}}`
border.outline.selected?
optionalselected?:object
Stronger-thickness boundary expressing selected / current state.
Use when selection or current-item status is communicated by line weight
(active tab, selected row, chosen card).
Resolves to a width strictly greater than outline.{surface,control}. Do
not use for keyboard focus — that is semantic.focus.ring.
border.outline.selected.style?
optionalstyle?:`{core.border.${string}}`
border.outline.selected.width?
optionalwidth?:`{core.border.${string}}`
border.outline.surface?
optionalsurface?:object
Boundary of a containing surface (card, panel, dialog, menu, grouped region).
Use when the element contains other content and needs a visible edge.
Pair with informational.{role}.border.{state} colors and (optionally)
semantic.elevation.surface.*; do not use for interactive controls — those
are outline.control.
border.outline.surface.style?
optionalstyle?:`{core.border.${string}}`
border.outline.surface.width?
optionalwidth?:`{core.border.${string}}`
colors?
optionalcolors?:object
colors.action?
optionalaction?:object
Anything the user triggers — buttons, toggles, menu items, action icons. Pick when the user is about to act.
colors.action.accent?
optionalaccent?:object
Highlighted action that draws attention without being the main path ("Try the new…" promo button).
colors.action.accent.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.action.accent.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.accent.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.accent.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.accent.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.accent.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.accent.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.accent.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.accent.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.accent.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.action.accent.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.accent.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.accent.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.accent.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.accent.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.accent.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.accent.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.accent.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.accent.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.action.accent.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.accent.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.accent.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.accent.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.accent.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.accent.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.accent.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.accent.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.muted?
optionalmuted?:object
Low-priority action — helper button, optional control, dismiss / cancel ghost.
colors.action.muted.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.action.muted.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.muted.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.muted.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.muted.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.muted.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.muted.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.muted.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.muted.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.muted.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.action.muted.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.muted.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.muted.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.muted.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.muted.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.muted.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.muted.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.muted.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.muted.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.action.muted.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.muted.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.muted.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.muted.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.muted.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.muted.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.muted.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.muted.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.negative?
optionalnegative?:object
Action whose intent is adverse: failure, invalid result, or destructive consequence (delete, cancel paid plan). Outcome (success / warning) lives in feedback.*, not here.
colors.action.negative.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.action.negative.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.negative.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.negative.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.negative.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.negative.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.negative.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.negative.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.negative.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.negative.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.action.negative.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.negative.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.negative.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.negative.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.negative.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.negative.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.negative.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.negative.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.negative.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.action.negative.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.negative.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.negative.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.negative.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.negative.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.negative.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.negative.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.negative.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.primary?
optionalprimary?:object
The single most important action on the view. Only one primary per {ux} per view — if two compete, the loser is secondary.
colors.action.primary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.action.primary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.primary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.primary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.primary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.primary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.primary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.primary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.primary.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.primary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.action.primary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.primary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.primary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.primary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.primary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.primary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.primary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.primary.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.primary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.action.primary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.primary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.primary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.primary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.primary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.primary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.primary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.primary.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.secondary?
optionalsecondary?:object
Alternative action that coexists with the primary one. Use when two actions share the surface and neither dominates.
colors.action.secondary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.action.secondary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.secondary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.secondary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.secondary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.secondary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.secondary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.secondary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.secondary.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.secondary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.action.secondary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.secondary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.secondary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.secondary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.secondary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.secondary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.secondary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.secondary.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.action.secondary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.action.secondary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.action.secondary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.action.secondary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.action.secondary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.action.secondary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure trigger or menu button is currently open. Use for buttons that own an open popup, menu, or panel.
colors.action.secondary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.action.secondary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.action.secondary.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Toggle button is currently engaged — persistent, not transient. Use for toolbar toggles ("Bold" pressed). Do not confuse with active (the brief moment of clicking).
colors.feedback?
optionalfeedback?:object
Surfaces that report the outcome of an action or system event — toasts, alerts, banners, inline validation. Pick when the system is reporting back.
colors.feedback.caution?
optionalcaution?:object
Feedback reporting risk that needs attention but does not block the user.
colors.feedback.caution.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.feedback.caution.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.caution.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.caution.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.caution.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.feedback.caution.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.caution.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.caution.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.caution.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.feedback.caution.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.caution.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.caution.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.muted?
optionalmuted?:object
Quiet feedback that should not steal attention — inline hints, low-priority status text.
colors.feedback.muted.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.feedback.muted.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.muted.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.muted.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.muted.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.feedback.muted.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.muted.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.muted.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.muted.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.feedback.muted.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.muted.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.muted.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.negative?
optionalnegative?:object
Feedback reporting failure or an invalid system state.
colors.feedback.negative.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.feedback.negative.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.negative.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.negative.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.negative.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.feedback.negative.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.negative.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.negative.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.negative.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.feedback.negative.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.negative.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.negative.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.positive?
optionalpositive?:object
Feedback reporting success, completion, or validity confirmed.
colors.feedback.positive.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.feedback.positive.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.positive.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.positive.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.positive.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.feedback.positive.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.positive.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.positive.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.positive.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.feedback.positive.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.positive.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.positive.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.primary?
optionalprimary?:object
Neutral / informational feedback that carries no valence — "Auto-saved", "Connected".
colors.feedback.primary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.feedback.primary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.primary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.primary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.primary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.feedback.primary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.primary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.primary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.feedback.primary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.feedback.primary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.feedback.primary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Prefer this over opacity.disabled for controls and text that carry colour contrast guarantees.
colors.feedback.primary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus — e.g. a focusable close button inside the feedback component.
colors.informational?
optionalinformational?:object
Presentational surfaces — hold, group, layer, frame, or display content; never drive a transaction.
Body text, page backgrounds, cards, panels, dialogs, dividers, list rows, accordions.
Interactivity is not a tiebreaker: a focusable Card or expandable accordion is still informational —
its purpose is presentational. Focusability is covered by semantic.focus.ring.*; disclosure by the expanded state.
colors.informational.accent?
optionalaccent?:object
Highlighted content that draws attention without being the main path — featured callout, promo tile.
colors.informational.accent.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.accent.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.accent.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.accent.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.accent.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.accent.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.accent.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.accent.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.accent.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.accent.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.accent.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.accent.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.accent.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.accent.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.accent.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.accent.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.accent.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.accent.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.accent.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.accent.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.accent.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.accent.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.accent.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.accent.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.accent.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.accent.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.accent.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.accent.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.accent.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.accent.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.caution?
optionalcaution?:object
Informational surface or text carrying caution — warning panel, advisory note.
colors.informational.caution.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.caution.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.caution.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.caution.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.caution.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.caution.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.caution.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.caution.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.caution.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.caution.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.caution.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.caution.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.caution.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.caution.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.caution.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.caution.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.caution.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.caution.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.caution.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.caution.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.caution.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.caution.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.caution.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.caution.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.caution.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.caution.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.caution.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.caution.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.caution.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.caution.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.muted?
optionalmuted?:object
Low-priority content — helper text, dividers, captions, metadata.
colors.informational.muted.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.muted.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.muted.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.muted.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.muted.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.muted.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.muted.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.muted.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.muted.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.muted.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.muted.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.muted.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.muted.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.muted.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.muted.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.muted.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.muted.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.muted.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.muted.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.muted.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.muted.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.muted.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.muted.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.muted.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.muted.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.muted.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.muted.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.muted.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.muted.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.muted.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.negative?
optionalnegative?:object
Informational surface or text reporting failure or invalid state — error empty state, broken-state panel.
colors.informational.negative.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.negative.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.negative.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.negative.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.negative.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.negative.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.negative.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.negative.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.negative.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.negative.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.negative.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.negative.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.negative.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.negative.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.negative.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.negative.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.negative.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.negative.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.negative.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.negative.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.negative.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.negative.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.negative.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.negative.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.negative.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.negative.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.negative.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.negative.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.negative.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.negative.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.positive?
optionalpositive?:object
Informational surface or text reporting success / completion (e.g. "All up to date" empty state).
colors.informational.positive.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.positive.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.positive.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.positive.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.positive.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.positive.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.positive.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.positive.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.positive.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.positive.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.positive.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.positive.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.positive.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.positive.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.positive.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.positive.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.positive.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.positive.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.positive.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.positive.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.positive.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.positive.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.positive.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.positive.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.positive.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.positive.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.positive.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.positive.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.positive.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.positive.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.primary?
optionalprimary?:object
Dominant content / surface on the view — page background, main panel, the card the user is reading.
colors.informational.primary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.primary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.primary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.primary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.primary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.primary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.primary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.primary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.primary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.primary.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.primary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.primary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.primary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.primary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.primary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.primary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.primary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.primary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.primary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.primary.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.primary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.primary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.primary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.primary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.primary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.primary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.primary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.primary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.primary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.primary.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.secondary?
optionalsecondary?:object
Supporting content / surface coexisting with primary — sidebar panel, secondary card.
colors.informational.secondary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.informational.secondary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.secondary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.secondary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.secondary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.secondary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.secondary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.secondary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.secondary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.secondary.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.secondary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.informational.secondary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.secondary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.secondary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.secondary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.secondary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.secondary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.secondary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.secondary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.secondary.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.informational.secondary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.informational.secondary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.informational.secondary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.informational.secondary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.informational.secondary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.informational.secondary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Accordion / collapsible panel / <details> is currently open — in-place reveal (FSL Lexicon §1).
colors.informational.secondary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.informational.secondary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.informational.secondary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Presentational element is one of many and the user picked it (selectable list row, focused card in a deck).
colors.informational.secondary.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Visited link rendered inside informational content.
colors.input?
optionalinput?:object
Anything the user enters or selects data into — text fields, selects, checkboxes, radios. Pick when the user is about to type / pick a value.
colors.input.caution?
optionalcaution?:object
Input whose value carries risk that needs attention but does not block submission.
colors.input.caution.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.caution.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.caution.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.caution.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.caution.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.caution.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.caution.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.caution.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.caution.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.caution.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.caution.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.caution.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.caution.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.caution.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.caution.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.caution.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.caution.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.caution.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.caution.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.caution.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.caution.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.caution.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.caution.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.caution.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.caution.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.caution.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.caution.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.caution.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.caution.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.caution.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.caution.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.caution.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.caution.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.caution.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.caution.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.caution.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.muted?
optionalmuted?:object
Low-priority input — quiet text field, ghost search, optional metadata input.
colors.input.muted.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.muted.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.muted.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.muted.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.muted.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.muted.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.muted.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.muted.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.muted.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.muted.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.muted.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.muted.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.muted.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.muted.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.muted.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.muted.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.muted.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.muted.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.muted.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.muted.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.muted.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.muted.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.muted.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.muted.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.muted.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.muted.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.muted.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.muted.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.muted.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.muted.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.muted.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.muted.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.muted.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.muted.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.muted.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.muted.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.negative?
optionalnegative?:object
Input whose value failed validation — maps from React Aria isInvalid. Validation failure is not a state on primary; it selects this role (FSL Lexicon §5).
colors.input.negative.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.negative.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.negative.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.negative.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.negative.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.negative.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.negative.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.negative.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.negative.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.negative.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.negative.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.negative.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.negative.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.negative.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.negative.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.negative.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.negative.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.negative.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.negative.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.negative.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.negative.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.negative.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.negative.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.negative.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.negative.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.negative.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.negative.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.negative.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.negative.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.negative.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.negative.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.negative.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.negative.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.negative.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.negative.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.negative.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.positive?
optionalpositive?:object
Input whose value reports success / completion / validity confirmed (e.g. "available" username field after async check).
colors.input.positive.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.positive.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.positive.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.positive.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.positive.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.positive.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.positive.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.positive.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.positive.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.positive.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.positive.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.positive.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.positive.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.positive.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.positive.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.positive.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.positive.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.positive.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.positive.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.positive.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.positive.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.positive.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.positive.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.positive.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.positive.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.positive.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.positive.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.positive.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.positive.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.positive.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.positive.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.positive.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.positive.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.positive.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.positive.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.positive.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.primary?
optionalprimary?:object
Default input role — the brand-influenced active style for the canonical control on the form.
colors.input.primary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.primary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.primary.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.primary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.primary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.primary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.primary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.primary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.primary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.primary.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.primary.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.primary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.primary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.primary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.primary.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.primary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.primary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.primary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.primary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.primary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.primary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.primary.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.primary.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.primary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.primary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.primary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.primary.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.primary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.primary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.primary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.primary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.primary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.primary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.primary.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.primary.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.primary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.secondary?
optionalsecondary?:object
Alternative input role coexisting with primary — e.g. a secondary search field on the same surface.
colors.input.secondary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.input.secondary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.secondary.background.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.secondary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.secondary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.secondary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.secondary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.secondary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.secondary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.secondary.background.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.secondary.background.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.secondary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.secondary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.input.secondary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.secondary.border.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.secondary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.secondary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.secondary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.secondary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.secondary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.secondary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.secondary.border.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.secondary.border.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.secondary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.input.secondary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.input.secondary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.input.secondary.text.checked?
optionalchecked?:`{core.colors.${(...)}}`
Two-state control that is currently on — checkbox, radio, switch. Do not use for selection from a set — that is selected.
colors.input.secondary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.input.secondary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.input.secondary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.input.secondary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Combobox / select / disclosure-style input is currently open.
colors.input.secondary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.input.secondary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.input.secondary.text.indeterminate?
optionalindeterminate?:`{core.colors.${(...)}}`
Boolean control in a mixed / unknown state — e.g. parent checkbox over partially-checked children.
colors.input.secondary.text.pressed?
optionalpressed?:`{core.colors.${(...)}}`
Persistent engaged state of a toggle-style input (e.g. a switch rendered as a button). See ActionColorStates.pressed for the disambiguation against active.
colors.input.secondary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Element is one of many in a set and the user picked it (segment in a segmented control, picker option). Do not use for two-state controls — those are checked.
colors.navigation?
optionalnavigation?:object
Anything that moves the user between views or sections — links, tabs, breadcrumbs, pagination. Pick when the user is about to go somewhere.
colors.navigation.accent?
optionalaccent?:object
Highlighted nav item that draws attention without being the main path — "What's new", featured destination.
colors.navigation.accent.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.navigation.accent.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.accent.background.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.accent.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.accent.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.accent.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.accent.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.accent.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.accent.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.accent.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.accent.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.accent.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.navigation.accent.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.accent.border.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.accent.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.accent.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.accent.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.accent.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.accent.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.accent.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.accent.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.accent.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.accent.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.navigation.accent.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.accent.text.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.accent.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.accent.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.accent.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.accent.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.accent.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.accent.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.accent.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.accent.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.muted?
optionalmuted?:object
Low-priority nav — footer links, breadcrumb separators, optional sub-items.
colors.navigation.muted.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.navigation.muted.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.muted.background.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.muted.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.muted.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.muted.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.muted.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.muted.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.muted.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.muted.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.muted.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.muted.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.navigation.muted.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.muted.border.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.muted.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.muted.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.muted.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.muted.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.muted.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.muted.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.muted.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.muted.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.muted.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.navigation.muted.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.muted.text.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.muted.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.muted.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.muted.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.muted.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.muted.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.muted.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.muted.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.muted.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.primary?
optionalprimary?:object
The dominant navigation surface on the view — main top nav, primary sidebar.
colors.navigation.primary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.navigation.primary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.primary.background.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.primary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.primary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.primary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.primary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.primary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.primary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.primary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.primary.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.primary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.navigation.primary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.primary.border.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.primary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.primary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.primary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.primary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.primary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.primary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.primary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.primary.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.primary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.navigation.primary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.primary.text.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.primary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.primary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.primary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.primary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.primary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.primary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.primary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.primary.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.secondary?
optionalsecondary?:object
Secondary navigation that coexists with the primary one — sub-nav, in-page tabs.
colors.navigation.secondary.background?
optionalbackground?:object
Fills and surface backgrounds. Use for any colored area larger than a line.
colors.navigation.secondary.background.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.secondary.background.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.secondary.background.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.secondary.background.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.secondary.background.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.secondary.background.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.secondary.background.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.secondary.background.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.secondary.background.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.secondary.background.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.secondary.border?
optionalborder?:object
Outlines, separators, rings, and other line-color pairings. For line geometry (width, style) consume semantic.borders.* instead — this dimension is colour only.
colors.navigation.secondary.border.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.secondary.border.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.secondary.border.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.secondary.border.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.secondary.border.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.secondary.border.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.secondary.border.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.secondary.border.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.secondary.border.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.secondary.border.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
colors.navigation.secondary.text?
optionaltext?:object
Readable foreground — labels, paragraphs, and text-like icons that inherit currentColor.
colors.navigation.secondary.text.active?
optionalactive?:`{core.colors.${(...)}}`
Pointer or key is currently down on the element — transient, lasts only while held. Releases back to default / hover. Do not use for persistent toggle state — that is pressed.
colors.navigation.secondary.text.current?
optionalcurrent?:`{core.colors.${(...)}}`
Element is the user's current location in the navigation set — active route, current step in a wizard. Do not use for set-membership without a routing meaning — that is selected.
colors.navigation.secondary.text.default?
optionaldefault?:`{core.colors.${(...)}}`
Resting / base state. The colour rendered when no other state asserts.
colors.navigation.secondary.text.disabled?
optionaldisabled?:`{core.colors.${(...)}}`
Element is non-interactive. Carries the contrast guarantees that semantic.opacity.disabled cannot — prefer this for controls and text over opacity.
colors.navigation.secondary.text.droptarget?
optionaldroptarget?:`{core.colors.${(...)}}`
Valid drag-and-drop destination during an active drag (FSL Lexicon §7). Applies wherever drop-target semantics are valid: file inputs, collection rows, informational surfaces, and any other entity that accepts dropped items.
colors.navigation.secondary.text.expanded?
optionalexpanded?:`{core.colors.${(...)}}`
Disclosure-style nav item (collapsible section, expandable submenu) is currently open.
colors.navigation.secondary.text.focused?
optionalfocused?:`{core.colors.${(...)}}`
Element has keyboard or programmatic focus. Pair with semantic.focus.ring.color when no {ux}.{role} context applies.
colors.navigation.secondary.text.hover?
optionalhover?:`{core.colors.${(...)}}`
Pointer is currently over the element. Do not use for keyboard focus — that is focused.
colors.navigation.secondary.text.selected?
optionalselected?:`{core.colors.${(...)}}`
Tab / item is one of many in the set and the user picked it. May coexist with current when the selected item also represents the live route.
colors.navigation.secondary.text.visited?
optionalvisited?:`{core.colors.${(...)}}`
Link points to a URL the user has visited.
dataviz?
optionaldataviz?:object
Data Visualization extension — semantic roles for analytical color, non-color encodings, and geospatial overlays. Optional: omit when the theme does not support dataviz.
This is the public API of the dataviz extension.
Components consume these tokens; never core.dataviz.* directly.
dataviz.color?
optionalcolor?:object
dataviz.color.reference?
optionalreference?:object
dataviz.color.reference.baseline?
optionalbaseline?:`{${string}}`
Color for a baseline or reference level (e.g. average, goal).
dataviz.color.reference.target?
optionaltarget?:`{${string}}`
Color for a target or objective line.
dataviz.color.scale?
optionalscale?:object
dataviz.color.scale.diverging?
optionaldiverging?:object
Midpoint comparison — 7 named positions around a true center. Only use when the data has a meaningful midpoint (zero, baseline, target).
dataviz.color.scale.diverging.neg1?
optionalneg1?:`{${(...)}}`
dataviz.color.scale.diverging.neg2?
optionalneg2?:`{${(...)}}`
dataviz.color.scale.diverging.neg3?
optionalneg3?:`{${(...)}}`
dataviz.color.scale.diverging.neutral?
optionalneutral?:`{${(...)}}`
Neutral midpoint class.
dataviz.color.scale.diverging.pos1?
optionalpos1?:`{${(...)}}`
dataviz.color.scale.diverging.pos2?
optionalpos2?:`{${(...)}}`
dataviz.color.scale.diverging.pos3?
optionalpos3?:`{${(...)}}`
dataviz.color.scale.sequential?
optionalsequential?:object
Ordered magnitude — 7 steps from low (1) to high (7). Use for quantitative ranges and progressive intensity.
dataviz.color.scale.sequential.1?
optional1?:`{${(...)}}`
dataviz.color.scale.sequential.2?
optional2?:`{${(...)}}`
dataviz.color.scale.sequential.3?
optional3?:`{${(...)}}`
dataviz.color.scale.sequential.4?
optional4?:`{${(...)}}`
dataviz.color.scale.sequential.5?
optional5?:`{${(...)}}`
dataviz.color.scale.sequential.6?
optional6?:`{${(...)}}`
dataviz.color.scale.sequential.7?
optional7?:`{${(...)}}`
dataviz.color.series?
optionalseries?:object
Categorical series identity — 8 named, unordered roles. Use for nominal categories, named series, distinct groups.
dataviz.color.series.1?
optional1?:`{${string}}`
dataviz.color.series.2?
optional2?:`{${string}}`
dataviz.color.series.3?
optional3?:`{${string}}`
dataviz.color.series.4?
optional4?:`{${string}}`
dataviz.color.series.5?
optional5?:`{${string}}`
dataviz.color.series.6?
optional6?:`{${string}}`
dataviz.color.series.7?
optional7?:`{${string}}`
dataviz.color.series.8?
optional8?:`{${string}}`
dataviz.color.state?
optionalstate?:object
dataviz.color.state.highlight?
optionalhighlight?:`{${string}}`
Emphasized / highlighted data mark.
dataviz.color.state.muted?
optionalmuted?:`{${string}}`
De-emphasized / non-highlighted data mark.
dataviz.color.state.selected?
optionalselected?:`{${string}}`
User-selected or actively focused data mark.
dataviz.color.status?
optionalstatus?:object
dataviz.color.status.missing?
optionalmissing?:`{${string}}`
Value is absent or unavailable.
dataviz.color.status.na?
optionalna?:`{${string}}`
Value is structurally absent (not measured or not applicable).
dataviz.color.status.suppressed?
optionalsuppressed?:`{${string}}`
Value is withheld for confidentiality or publication rules.
dataviz.encoding?
optionalencoding?:object
dataviz.encoding.opacity?
optionalopacity?:object
dataviz.encoding.opacity.context?
optionalcontext?:`{${string}}`
Opacity for contextual elements behind overlay data.
dataviz.encoding.opacity.muted?
optionalmuted?:`{${string}}`
Opacity for de-emphasized (non-highlighted) data marks.
dataviz.encoding.opacity.uncertainty?
optionaluncertainty?:`{${string}}`
Opacity for representing estimated or uncertain data visually.
dataviz.encoding.pattern?
optionalpattern?:object
dataviz.encoding.pattern.series?
optionalseries?:object
Series identity through fill texture — use for filled marks and overlays.
dataviz.encoding.pattern.series.1?
optional1?:`{${(...)}}`
dataviz.encoding.pattern.series.2?
optional2?:`{${(...)}}`
dataviz.encoding.pattern.series.3?
optional3?:`{${(...)}}`
dataviz.encoding.pattern.series.4?
optional4?:`{${(...)}}`
dataviz.encoding.pattern.series.5?
optional5?:`{${(...)}}`
dataviz.encoding.pattern.series.6?
optional6?:`{${(...)}}`
dataviz.encoding.shape?
optionalshape?:object
dataviz.encoding.shape.series?
optionalseries?:object
Series identity through mark shape — use for redundant differentiation.
dataviz.encoding.shape.series.1?
optional1?:`{${(...)}}`
dataviz.encoding.shape.series.2?
optional2?:`{${(...)}}`
dataviz.encoding.shape.series.3?
optional3?:`{${(...)}}`
dataviz.encoding.shape.series.4?
optional4?:`{${(...)}}`
dataviz.encoding.shape.series.5?
optional5?:`{${(...)}}`
dataviz.encoding.shape.series.6?
optional6?:`{${(...)}}`
dataviz.encoding.shape.series.7?
optional7?:`{${(...)}}`
dataviz.encoding.shape.series.8?
optional8?:`{${(...)}}`
dataviz.encoding.stroke?
optionalstroke?:object
dataviz.encoding.stroke.forecast?
optionalforecast?:`{${string}}`
Stroke style for projected or forward-looking data segments.
dataviz.encoding.stroke.reference?
optionalreference?:`{${string}}`
Stroke style for analytical reference guides or baselines.
dataviz.encoding.stroke.uncertainty?
optionaluncertainty?:`{${string}}`
Stroke style for uncertain or estimated bounds.
dataviz.geo?
optionalgeo?:object
dataviz.geo.context?
optionalcontext?:object
dataviz.geo.context.boundary?
optionalboundary?:`{${string}}`
Color for supportive boundary lines (region outlines, coastlines).
dataviz.geo.context.label?
optionallabel?:`{${string}}`
Color for contextual geographic labels (city names, region labels).
dataviz.geo.context.muted?
optionalmuted?:`{${string}}`
Reduced background wash for geographic base layer.
dataviz.geo.state?
optionalstate?:object
dataviz.geo.state.focus?
optionalfocus?:`{${string}}`
Fill or stroke for spatially focused region (keyboard / pointer focus).
dataviz.geo.state.selection?
optionalselection?:`{${string}}`
Fill or stroke for a spatially selected region.
elevation?
optionalelevation?:object
elevation.surface?
optionalsurface?:object
Shadow-based surface strata — the primary depth contract. Maps each stratum to a shadow recipe (core elevation reference).
elevation.surface.blocking?
optionalblocking?:`{core.elevation.${string}}`
Dialogs and blocking sheets
elevation.surface.flat?
optionalflat?:`{core.elevation.${string}}`
Surfaces flush with the page
elevation.surface.overlay?
optionaloverlay?:`{core.elevation.${string}}`
Dropdowns, popovers, floating surfaces
elevation.surface.raised?
optionalraised?:`{core.elevation.${string}}`
Cards and panels
elevation.tonal?
optionaltonal?:object
Tonal overlay tokens — optional surface color treatments paired with shadows to preserve depth perception in dark or heavily-colored themes.
Each token typically resolves to a color overlay (e.g., color-mix, rgba surface).
Omit when the product does not use tonal elevation.
When present, must cover the same strata that carry visible shadows.
See
elevation.md — "Surface + Shadow"
elevation.tonal.blocking?
optionalblocking?:`{core.colors.${string}}`
Tonal surface treatment paired with surface.blocking.
Use when the blocking stratum (dialogs, sheets) needs the strongest
tonal separation from the page beneath the scrim.
Pair with surface.blocking and semantic.overlay.scrim; resolves to
the strongest tonal overlay in the contract.
elevation.tonal.overlay?
optionaloverlay?:`{core.colors.${string}}`
Tonal surface treatment paired with surface.overlay.
Use when the overlay stratum (dropdowns, popovers) needs reinforced
tonal lift over the page beneath.
Pair with surface.overlay; resolves to a stronger overlay than tonal.raised.
elevation.tonal.raised?
optionalraised?:`{core.colors.${string}}`
Tonal surface treatment paired with surface.raised.
Use when the raised stratum needs an additional color overlay (typical in
dark themes where shadow alone is insufficient).
Pair with surface.raised; do not use without the matching shadow contract.
focus?
optionalfocus?:object
focus.ring?
optionalring?:object
focus.ring.color?
optionalcolor?:`{semantic.${string}}`
System-wide focus ring colour — cross-cutting infrastructure (model.md §6).
Use this when the component has no obvious FSL Entity Kind
(focusable Card, profile chip, custom widget). For components with a clear
{ux}, prefer {ux}.{role}.border.focused instead.
Must reference a semantic token so mode overrides remap it automatically.
focus.ring.style?
optionalstyle?:`{core.border.${string}}`
focus.ring.width?
optionalwidth?:`{core.border.${string}}`
motion?
optionalmotion?:object
motion.decorative?
optionaldecorative?:object
Ambient, non-essential motion (loops, parallax, idle flourishes). Use only when motion is never required for understanding the UI. Always disabled by default in static or reduced-motion themes; do not use for any motion the user must perceive to operate the interface.
motion.decorative.duration?
optionalduration?:`{core.motion.${string}}`
motion.decorative.easing?
optionaleasing?:`{core.motion.${string}}`
motion.emphasis?
optionalemphasis?:object
Attention-drawing motion for a relevant in-place change.
Use when the user must notice that something changed (status update,
value reconciliation, error appearing on a field).
Stronger than feedback; do not use for routine state changes — that is
feedback. May collapse to minimal motion in static themes.
motion.emphasis.duration?
optionalduration?:`{core.motion.${string}}`
motion.emphasis.easing?
optionaleasing?:`{core.motion.${string}}`
motion.feedback?
optionalfeedback?:object
Immediate response to a discrete user input on a single element.
Use when animating hover, press, toggle, or small confirmation tweaks
(color/scale/opacity changes on the element itself).
Do not use for elements entering or leaving the layout — those are
transition.enter / transition.exit.
motion.feedback.duration?
optionalduration?:`{core.motion.${string}}`
motion.feedback.easing?
optionaleasing?:`{core.motion.${string}}`
motion.transition?
optionaltransition?:object
motion.transition.enter?
optionalenter?:object
Element appearing into rest position (overlay, surface, revealed content).
Use when an element transitions from hidden/absent to visible.
Pair with transition.exit on the inverse phase; do not use for the
resting element's response to input — that is feedback.
motion.transition.enter.duration?
optionalduration?:`{core.motion.${string}}`
motion.transition.enter.easing?
optionaleasing?:`{core.motion.${string}}`
motion.transition.exit?
optionalexit?:object
Element leaving rest position (overlay closing, content dismissing).
Use when an element transitions from visible to hidden/absent.
Symmetric counterpart of transition.enter; the exit phase is shorter
by default to keep dismissal feeling responsive.
motion.transition.exit.duration?
optionalduration?:`{core.motion.${string}}`
motion.transition.exit.easing?
optionaleasing?:`{core.motion.${string}}`
opacity?
optionalopacity?:object
opacity.disabled?
optionaldisabled?:`{core.opacity.${string}}`
Dimming for image-like media in a disabled state (avatars, thumbnails, illustrations).
Use when the disabled element has no semantic color contract that can carry the state
(i.e. it is a visual asset, not a control).
Do not use for disabled controls or text — those consume {ux}.{role}.{dimension}.disabled
color tokens, which carry the contrast guarantees opacity cannot.
opacity.loading?
optionalloading?:`{core.opacity.${string}}`
De-emphasis veil for content during in-flight asynchronous work.
Use when content must remain visible (so the user keeps spatial context) while a
fetch / mutation / long task is pending.
Do not use for permanent disabled state — that is disabled. Remove the moment
the work resolves.
opacity.scrim?
optionalscrim?:`{core.opacity.${string}}`
Backdrop dimming for a blocking foreground layer.
Use when rendering the layer that sits behind a modal, dialog, drawer, or sheet
to attenuate the page underneath.
Pair with semantic.overlay.scrim (the colored backdrop fill); do not use on the
foreground surface itself — that surface stays fully opaque.
overlay?
optionaloverlay?:object
overlay.scrim?
optionalscrim?:string
Modal backdrop color — full CSS color including alpha.
radii?
optionalradii?:object
radii.control?
optionalcontrol?:`{core.radii.${string}}`
Radius for interactive controls and touchable UI elements.
radii.round?
optionalround?:`{core.radii.${string}}`
Full-round shape intent for pills, capsules, and circular affordances.
radii.surface?
optionalsurface?:`{core.radii.${string}}`
Radius for surfaces that contain or group content.
sizing?
optionalsizing?:object
sizing.hit?
optionalhit?:object
Ergonomic hit targets. Each token resolves to the fine-pointer value.
The CSS output layer (toCssVars) automatically injects coarse-pointer
overrides inside @media (any-pointer: coarse) — no component code needed.
Fine-pointer values (core.sizing.hit.fine.*) may use clamp(floor, preferred, max)
where floor is a fixed Npx ergonomic minimum — this guarantees accessibility
while allowing themes to express density preferences (e.g. via the rem scale).
Coarse-pointer values (core.sizing.hit.coarse.*) are always fixed px.
sizing.hit.base?
optionalbase?:`{core.sizing.${string}}`
Default interactive area for standard buttons, inputs, and toggles. Pick when no other step applies.
sizing.hit.min?
optionalmin?:`{core.sizing.${string}}`
Minimum interactive area for small / secondary targets (icon-only buttons, toolbar items). Enforce via min-width / min-height; not a visual size.
sizing.hit.prominent?
optionalprominent?:`{core.sizing.${string}}`
Prominent interactive area for high-emphasis or low-density targets (CTAs, dialog actions).
sizing.icon?
optionalicon?:object
Visual glyph dimensions. Set on the icon element itself; never used to
gate the hit target that wraps it (that is hit.*).
sizing.icon.lg?
optionallg?:`{core.sizing.${string}}`
Prominent glyph — emphasis or feature icons.
sizing.icon.md?
optionalmd?:`{core.sizing.${string}}`
Default glyph — pick this when no other step applies.
sizing.icon.sm?
optionalsm?:`{core.sizing.${string}}`
Compact glyph — dense UI, inline indicators, list-row icons.
sizing.identity?
optionalidentity?:object
Visual identity object dimensions (avatars, profile photos, brand marks,
entity logos). Carries the visual size only — the surrounding hit target,
if any, is sized via hit.*.
sizing.identity.lg?
optionallg?:`{core.sizing.${string}}`
Prominent identity — profile cards, feature surfaces.
sizing.identity.md?
optionalmd?:`{core.sizing.${string}}`
Default identity — toolbar, navigation, standard avatar slots.
sizing.identity.sm?
optionalsm?:`{core.sizing.${string}}`
Compact identity — list rows, dense lists, mention chips.
sizing.identity.xl?
optionalxl?:`{core.sizing.${string}}`
Hero identity — landing surfaces, brand-leading sections.
sizing.measure?
optionalmeasure?:object
sizing.measure.reading?
optionalreading?:string
Typed as RawValue by design: ch units cannot be expressed as a core
token reference. Override with a validated character-based clamp()
expression only — never px or rem.
sizing.surface?
optionalsurface?:object
sizing.surface.maxWidth?
optionalmaxWidth?:`{core.sizing.${string}}`
Maximum width of a structural surface (page shell, content column,
card / panel / dialog wrapper).
Use as max-width on the outer surface wrapper.
Pair with gutter.page for inline padding; do not use for line-length
readability — that is measure.reading.
sizing.viewport?
optionalviewport?:object
sizing.viewport.height?
optionalheight?:object
sizing.viewport.height.full?
optionalfull?:`{core.sizing.${string}}`
Full-height layouts using dynamic viewport units (100dvh).
Use intentionally — only when a region must occupy the full viewport
height (app shells, full-screen modals, mobile splash regions).
Do not use 100vh directly — dynamic units handle mobile chrome correctly.
sizing.viewport.width?
optionalwidth?:object
sizing.viewport.width.full?
optionalfull?:`{core.sizing.${string}}`
Full-width layouts using dynamic viewport units (100dvw).
Use intentionally — only when a region must span the full viewport
width (full-bleed banners, edge-to-edge surfaces).
Do not use 100vw directly — dynamic units avoid scrollbar overflow.
spacing?
optionalspacing?:object
spacing.gap?
optionalgap?:object
Distance between siblings (CSS gap on Flex/Grid containers).
Use when laying out a sequence of sibling elements; never for internal
padding (that is inset.*) and never for page/section structural padding
(that is gutter.*).
spacing.gap.inline?
optionalinline?:object
Horizontal grouping between inline siblings (icon + label, toolbar items, chip rows).
Use when items flow along the inline axis as a visual group.
gap.inline.xs is visual-only — never use it between independently
focusable interactive targets (use separation.interactive.min instead).
spacing.gap.inline.lg?
optionallg?:`{core.spacing.${string}}`
Spacious inline grouping — same magnitude as gap.stack.md.
spacing.gap.inline.md?
optionalmd?:`{core.spacing.${string}}`
Looser inline grouping — same magnitude as gap.stack.sm.
spacing.gap.inline.sm?
optionalsm?:`{core.spacing.${string}}`
Inline grouping — same magnitude as gap.stack.xs.
spacing.gap.inline.xl?
optionalxl?:`{core.spacing.${string}}`
Wide inline grouping — same magnitude as gap.stack.lg.
spacing.gap.inline.xs?
optionalxs?:`{core.spacing.${string}}`
Visual-only tight grouping (icon + label inside a single target). Never between focusable targets — use separation.interactive.min.
spacing.gap.stack?
optionalstack?:object
Vertical rhythm between stacked siblings (column layouts, lists, form fields).
Use when items flow along the block axis and rhythm carries hierarchy.
Pair with gap.inline for horizontal groupings; do not use for items
arranged along the inline axis — those are gap.inline.
spacing.gap.stack.lg?
optionallg?:`{core.spacing.${string}}`
Roomy vertical rhythm — separating distinct content clusters within a surface.
spacing.gap.stack.md?
optionalmd?:`{core.spacing.${string}}`
Default vertical rhythm — pick this when no other step applies.
spacing.gap.stack.sm?
optionalsm?:`{core.spacing.${string}}`
Medium vertical rhythm — sibling lines inside a form group.
spacing.gap.stack.xl?
optionalxl?:`{core.spacing.${string}}`
Section-level rhythm — separating major sections of a page.
spacing.gap.stack.xs?
optionalxs?:`{core.spacing.${string}}`
Tight vertical rhythm — micro-clusters within a single field.
spacing.gutter?
optionalgutter?:object
Structural outer padding for page-level and section-level layout regions.
page and section may use a clamp() expression with embedded {token.path} refs
(e.g. clamp({core.space.4}, {core.space.6}, {core.space.12})).
Typed as RawValue to allow both simple refs and responsive clamp expressions.
spacing.gutter.page?
optionalpage?:string
Outer padding bounding the page's content column.
Use as inline padding on the top-level page container.
Bounded clamp() contract by spec; do not use for inner sections — that
is gutter.section.
spacing.gutter.section?
optionalsection?:string
Outer padding separating a section's content from its parent's gutter.
Use on inner section wrappers nested inside a gutter.page container.
Bounded clamp() contract by spec; resolves tighter than gutter.page.
spacing.inset?
optionalinset?:object
Internal padding inside an element (CSS padding).
Use when the spacing lives between an element's edge and its own content;
never for the distance between siblings — that is gap.*.
spacing.inset.control?
optionalcontrol?:object
Padding inside an interactive control (button, input, chip, toggle).
Use on elements with a hit target and a single inner content cluster.
Pair with inset.surface on the containing surface; do not use for
containing surfaces — those are inset.surface.
spacing.inset.control.lg?
optionallg?:`{core.spacing.${string}}`
Roomy step — prominent controls / spacious surfaces.
spacing.inset.control.md?
optionalmd?:`{core.spacing.${string}}`
Default step — standard controls and surfaces. Pick this when no other step applies.
spacing.inset.control.sm?
optionalsm?:`{core.spacing.${string}}`
Compact step — tight controls / dense surfaces.
spacing.inset.surface?
optionalsurface?:object
Padding inside a containing surface (card, panel, dialog, menu, section).
Use on elements that contain other content blocks and need a margin
between their edge and the inner cluster.
Must be ≥ inset.control at the same step (validation rule); do not use
for the inner controls themselves — those are inset.control.
spacing.inset.surface.lg?
optionallg?:`{core.spacing.${string}}`
Roomy step — prominent controls / spacious surfaces.
spacing.inset.surface.md?
optionalmd?:`{core.spacing.${string}}`
Default step — standard controls and surfaces. Pick this when no other step applies.
spacing.inset.surface.sm?
optionalsm?:`{core.spacing.${string}}`
Compact step — tight controls / dense surfaces.
spacing.separation?
optionalseparation?:object
Ergonomic separation between independently actionable targets in dense clusters.
May use a clamp() expression with an embedded {token.path} ref
(e.g. clamp(8px, {core.space.2}, 12px)).
spacing.separation.interactive?
optionalinteractive?:object
spacing.separation.interactive.min?
optionalmin?:string
Minimum gap between adjacent interactive targets (toolbar buttons,
paginator arrows, segmented controls, dense menu items).
Use only between elements the user can click/tap/focus independently.
Do not use for visual-only groupings — that is gap.inline.xs.
text?
optionaltext?:object
text.body?
optionalbody?:object
Default reading text — paragraphs, descriptions, long-form content.
Use for any text the user will read rather than scan or select.
Optimized for readability; do not use for short UI strings or labels —
those are label.
text.body.lg?
optionallg?:object
Largest step of this family — strongest hierarchy within the family. Use for the most prominent instance of this role on the surface.
text.body.lg.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.body.lg.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.body.lg.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.body.lg.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.body.lg.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.body.lg.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.body.lg.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.body.md?
optionalmd?:object
Default step of this family — the unmarked choice. Use unless the surface explicitly calls for lg or sm.
text.body.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.body.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.body.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.body.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.body.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.body.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.body.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.body.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage. Use when space is constrained or when the text is secondary within the role.
text.body.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.body.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.body.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.body.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.body.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.body.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.body.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.code?
optionalcode?:object
Monospaced text for code snippets, logs, identifiers, or technical data.
Use whenever the text must align by character cell or distinguish similar
glyphs (Il1O0).
Do not use for UI strings that merely look technical — that is body or label.
text.code.md?
optionalmd?:object
Default step of this family — the unmarked choice.
text.code.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.code.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.code.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.code.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.code.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.code.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.code.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.code.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage.
text.code.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.code.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.code.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.code.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.code.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.code.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.code.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.display?
optionaldisplay?:object
High-impact hero text — landing surfaces and prominent page headers.
Use sparingly; reserved for the single most important text on a page.
Pair with headline for the next hierarchy step; do not use for section
headings inside content — those are headline.
text.display.lg?
optionallg?:object
Largest step of this family — strongest hierarchy within the family. Use for the most prominent instance of this role on the surface.
text.display.lg.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.display.lg.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.display.lg.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.display.lg.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.display.lg.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.display.lg.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.display.lg.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.display.md?
optionalmd?:object
Default step of this family — the unmarked choice. Use unless the surface explicitly calls for lg or sm.
text.display.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.display.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.display.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.display.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.display.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.display.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.display.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.display.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage. Use when space is constrained or when the text is secondary within the role.
text.display.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.display.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.display.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.display.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.display.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.display.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.display.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.headline?
optionalheadline?:object
Section or page headings that structure scanning of the document.
Use for the primary headings inside content (page title, major section breaks).
Below display in hierarchy, above title. Do not use for surface chrome
(card / panel / dialog headers) — those are title.
text.headline.lg?
optionallg?:object
Largest step of this family — strongest hierarchy within the family. Use for the most prominent instance of this role on the surface.
text.headline.lg.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.headline.lg.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.headline.lg.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.headline.lg.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.headline.lg.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.headline.lg.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.headline.lg.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.headline.md?
optionalmd?:object
Default step of this family — the unmarked choice. Use unless the surface explicitly calls for lg or sm.
text.headline.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.headline.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.headline.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.headline.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.headline.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.headline.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.headline.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.headline.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage. Use when space is constrained or when the text is secondary within the role.
text.headline.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.headline.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.headline.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.headline.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.headline.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.headline.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.headline.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.label?
optionallabel?:object
Short UI strings — field labels, button text, badges, metadata, captions.
Use for compact, scan-only text that names or describes adjacent UI.
Do not use for prose the user must read in sequence — that is body.
text.label.lg?
optionallg?:object
Largest step of this family — strongest hierarchy within the family. Use for the most prominent instance of this role on the surface.
text.label.lg.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.label.lg.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.label.lg.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.label.lg.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.label.lg.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.label.lg.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.label.lg.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.label.md?
optionalmd?:object
Default step of this family — the unmarked choice. Use unless the surface explicitly calls for lg or sm.
text.label.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.label.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.label.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.label.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.label.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.label.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.label.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.label.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage. Use when space is constrained or when the text is secondary within the role.
text.label.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.label.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.label.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.label.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.label.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.label.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.label.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.title?
optionaltitle?:object
Titles for surfaces — cards, panels, dialogs, sheets, menus, structured sections.
Use as the heading of a contained surface, not the heading of a content section.
Pair with body / label inside the same surface; do not use for top-level
page or document headings — those are headline / display.
text.title.lg?
optionallg?:object
Largest step of this family — strongest hierarchy within the family. Use for the most prominent instance of this role on the surface.
text.title.lg.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.title.lg.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.title.lg.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.title.lg.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.title.lg.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.title.lg.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.title.lg.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.title.md?
optionalmd?:object
Default step of this family — the unmarked choice. Use unless the surface explicitly calls for lg or sm.
text.title.md.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.title.md.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.title.md.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.title.md.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.title.md.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.title.md.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.title.md.lineHeight?
optionallineHeight?:`{core.font.${string}}`
text.title.sm?
optionalsm?:object
Smallest step of this family — compact / dense usage. Use when space is constrained or when the text is secondary within the role.
text.title.sm.fontFamily?
optionalfontFamily?:`{core.font.${string}}`
text.title.sm.fontOpticalSizing?
optionalfontOpticalSizing?:`{core.font.${string}}`
text.title.sm.fontSize?
optionalfontSize?:`{core.font.scale.${string}}`
text.title.sm.fontVariantNumeric?
optionalfontVariantNumeric?:`{core.font.${string}}`
text.title.sm.fontWeight?
optionalfontWeight?:`{core.font.${string}}`
text.title.sm.letterSpacing?
optionalletterSpacing?:`{core.font.${string}}`
text.title.sm.lineHeight?
optionallineHeight?:`{core.font.${string}}`
zIndex?
optionalzIndex?:object
zIndex.layer?
optionallayer?:object
zIndex.layer.base?
optionalbase?:`{core.zIndex.${string}}`
Page content in normal document flow. Use when the element participates in the default application stratum and has no claim above sibling content. Do not use to "reset" stacking inside a component — local layering is the component's own concern.
zIndex.layer.blocking?
optionalblocking?:`{core.zIndex.${string}}`
Surfaces that sit above other overlays and prevent interaction behind them.
Use when building dialogs, sheets, or blocking drawers paired with a scrim.
Pair with semantic.overlay.scrim and semantic.opacity.scrim; do not
use for non-blocking floating panels — those are overlay.
zIndex.layer.overlay?
optionaloverlay?:`{core.zIndex.${string}}`
Non-blocking floating surfaces above sticky and base content.
Use when building dropdowns, menus, popovers, or floating panels that
the user can dismiss by interacting elsewhere.
Do not use for surfaces that block the page behind them — those are
blocking.
zIndex.layer.sticky?
optionalsticky?:`{core.zIndex.${string}}`
Anchored bars that follow scroll while staying inside the app stack.
Use when building sticky headers, sticky navigation, or persistent
anchored toolbars.
Pair with position: sticky; do not use for non-anchored floating
surfaces — those are overlay.
zIndex.layer.transient?
optionaltransient?:`{core.zIndex.${string}}`
Highest application-controlled stratum before the browser top layer.
Use when building transient notifications that must surface above any
other app stratum (toasts, tooltip-like transient overlays).
Do not use for persistent UI — transient implies the element is
short-lived and self-dismissing.