/* Shared icon primitive (arch 09 ยง5). Icons are fill: currentColor SVG, so they inherit the surrounding text colour and theme automatically. The size classes map to the Carbon scale tokens; the glyph keeps its own rounded geometry and is exempt from --radius (square chrome applies to chrome, not icons). */ .icon { display: inline-block; flex: 0 0 auto; fill: currentColor; vertical-align: middle; } .sm { width: var(--icon-sm); height: var(--icon-sm); } .md { width: var(--icon-md); height: var(--icon-md); } .lg { width: var(--icon-lg); height: var(--icon-lg); } .xl { width: var(--icon-xl); height: var(--icon-xl); }