Status: active Figma assembly contract.
Scope
Use the published Tabs_horiz_row component set for compact horizontal
tablist framing. This contract owns the row geometry and the Underline
property; tab labels, selected identity, panel content, and runtime keyboard
behavior remain outside this Figma assembly boundary.
Source Evidence
- Component set
17553:28500, key821b8e8b2e2cec2d8cdcc8b34a8f02c13afbe97f. Underline=on17553:28523, key86f7e3cb6d34f19068a0ae21f56525474eb8eb9b.Underline=off17553:28534, key2c9bb8b4556c7d164e7aff55c6382c00ba40cd03.
Required Assembly
- Rule ID:
tabs-horiz-row.published— use the canonicalTabs_horiz_rowcomponent set; do not redraw the horizontal row or replace it with an unrelated routing control. - Rule ID:
tabs-horiz-row.underline— preserveUnderline=onfor the secondary bottom divider andUnderline=offwhen that divider is absent. The property must not change the tab-item height or row gap. - The observed row contains repeated
tab_standarditem instances. Their labels and selected identity are screen configuration, not additional row properties.
Tokens And Sizing
- The row aligns items at the start with a
16pxgap. - Item height is
44px; the selected item's lower accent stroke is2px. Underline=onadds a1pxsecondary lower stroke.- Selected text uses accent. The observed inactive nested label is
#5F5F6D, mapped locally to--color-button-flat-secondary-pressed, which is the current runtime default.
Dependency Boundary
No standalone Figma component key for component.tab-standard was verified in
this scope. The repeated item is therefore documented as row configuration and
not declared as a sidecar dependency. Do not use this contract to bind a
vertical Tabs component or the separate Routing Tabs role.
Verification Checklist
tabs-horiz-row.published: the component set and selected row anatomy are preserved as published instances.tabs-horiz-row.underline: the chosenUnderlinevariant matches the presence or absence of the secondary bottom divider.