One icon contract; the set is a theme choice
The shipped default is Material Symbols Rounded: one weight across the set, on a four-step size scale, with optical size tracking each step automatically so stroke weight stays even from 20px to 48px. 555 icons are shown below, the bundled font carries the full set, and every Google axis stays live (the Style section below). The contract, not the set, is the rule here: icons sit on the size scale and inherit text colour, and every icon prop accepts your own element, so another icon set drops in beside or instead of the bundled one.
Sizes
4Components set --icon-size to one of these steps, never a raw font-size. The scale starts at 20px because that is the floor of the font’s optical-size axis (20–48); below it, stroke weight stops adapting and small icons read thin.
settings
SM20px--icon-size-500Compact controls, inline affordancessettings
MD24px--icon-size-600Default: most UI iconssettings
LG32px--icon-size-800Feature icons, section headerssettings
XL48px--icon-size-1200Marketing and empty statesStyle
The bundled font is the full Material Symbols variable font, and every axis Google exposes is a custom property you can set at any scope: --material-symbols-fill (0 line, 1 filled), --material-symbols-weight (100–700 stroke thickness), and --material-symbols-grade (-50–200 contrast tuning). Optical size is deliberately automatic: the browser feeds the rendered size into the axis, so strokes stay even across the size scale. Dark mode already applies a -25 grade so light-on-dark glyphs do not bloom, and the icon-filled class is shorthand for the fill axis on one icon. A shipped theme can set the weight and fill too, so icons match the look's type.
/* Every Google axis is a token-style hook; set them at any scope. */
:root {
--material-symbols-fill: 1; /* 0 line · 1 filled */
--material-symbols-weight: 300; /* 100-700 stroke thickness */
--material-symbols-grade: 0; /* -50-200 contrast tuning */
}
Navigation
39arrow_forward
arrow_forwardarrow_downward
arrow_downwardchevron_right
chevron_rightnavigate_before
navigate_beforenavigate_next
navigate_nextfullscreen_exit
fullscreen_exitdrag_indicator
drag_indicatorUser & account
19account_circle
account_circlesupervisor_account
supervisor_accountswitch_account
switch_accountperson_remove
person_removemanage_accounts
manage_accountsrecent_actors
recent_actorssupport_agent
support_agentadmin_panel_settings
admin_panel_settingsCommunication
30forward_to_inbox
forward_to_inboxmark_email_read
mark_email_readmark_email_unread
mark_email_unreadmove_to_inbox
move_to_inboxcontact_phone
contact_phonephone_in_talk
phone_in_talkquestion_answer
question_answerspeaker_notes
speaker_notesContent & files
34create_new_folder
create_new_foldersnippet_folder
snippet_folderfolder_shared
folder_sharedsticky_note_2
sticky_note_2content_paste
content_pastecloud_download
cloud_downloaddownload_for_offline
download_for_offlinefile_download
file_downloadMedia
41add_photo_alternate
add_photo_alternatephoto_library
photo_libraryauto_fix_high
auto_fix_highvideo_library
video_libraryskip_previous
skip_previousEditing & formatting
26format_italic
format_italicformat_underlined
format_underlinedformat_color_text
format_color_textformat_align_left
format_align_leftformat_align_center
format_align_centerformat_align_right
format_align_rightformat_align_justify
format_align_justifyformat_list_bulleted
format_list_bulletedformat_list_numbered
format_list_numberedformat_indent_increase
format_indent_increaseActions & status
48remove_circle
remove_circledo_not_disturb
do_not_disturbhighlight_off
highlight_offdisabled_by_default
disabled_by_defaultdelete_forever
delete_foreverdelete_outline
delete_outlinerestore_from_trash
restore_from_trashfavorite_border
favorite_borderbookmark_border
bookmark_borderbookmark_remove
bookmark_removeoutlined_flag
outlined_flagassistant_photo
assistant_photolabel_important
label_importantNotifications & alerts
21notifications
notificationsnotifications_active
notifications_activenotifications_none
notifications_nonenotifications_off
notifications_offnotification_important
notification_importanterror_outline
error_outlinewarning_amber
warning_amberreport_problem
report_problempriority_high
priority_highSettings & security
20settings_suggest
settings_suggestno_encryption
no_encryptionvisibility_off
visibility_offremove_red_eye
remove_red_eyeCommerce
24shopping_cart
shopping_cartadd_shopping_cart
add_shopping_cartremove_shopping_cart
remove_shopping_cartcard_giftcard
card_giftcardaccount_balance
account_balancecurrency_exchange
currency_exchangepoint_of_sale
point_of_saleshopping_basket
shopping_basketTime & calendar
17hourglass_empty
hourglass_emptyhourglass_full
hourglass_fullcalendar_today
calendar_todayevent_available
event_availablecalendar_month
calendar_monthquery_builder
query_builderpending_actions
pending_actionsLocation & maps
22location_city
location_cityTravel & transport
20flight_takeoff
flight_takeofflocal_airport
local_airportconnecting_airports
connecting_airportsdirections_car
directions_cardirections_bus
directions_busdirections_subway
directions_subwaydirections_train
directions_traindirections_bike
directions_bikedirections_walk
directions_walkdirections_run
directions_runlocal_shipping
local_shippingdeparture_board
departure_boardemoji_transportation
emoji_transportationlocal_gas_station
local_gas_stationDevices & hardware
28phone_android
phone_androiddesktop_windows
desktop_windowsdeveloper_board
developer_boardUI & display
22brightness_high
brightness_highbrightness_low
brightness_lowbrightness_auto
brightness_autoinvert_colors
invert_colorsscreen_rotation
screen_rotationscreen_lock_rotation
screen_lock_rotationstay_current_portrait
stay_current_portraitstay_current_landscape
stay_current_landscapeSocial & sharing
18cast_connected
cast_connectedalternate_email
alternate_emailimport_contacts
import_contactsperson_add_alt
person_add_altthumbs_up_down
thumbs_up_downsentiment_satisfied
sentiment_satisfiedemoji_emotions
emoji_emotionsData & analytics
19trending_down
trending_downtrending_flat
trending_flatview_timeline
view_timelineDevelopment
21integration_instructions
integration_instructionsHealth & wellness
16local_hospital
local_hospitalmedical_services
medical_serviceshealth_and_safety
health_and_safetymonitor_heart
monitor_heartfitness_center
fitness_centerself_improvement
self_improvementEntertainment
13sports_esports
sports_esportsvideogame_asset
videogame_assettheater_comedy
theater_comedylibrary_music
library_musicmic_external_on
mic_external_onFood & dining
13dinner_dining
dinner_diningbreakfast_dining
breakfast_diningemoji_food_beverage
emoji_food_beverageWeather & nature
13energy_savings_leaf
energy_savings_leafnature_people
nature_peopleSports
9sports_basketball
sports_basketballsports_soccer
sports_soccersports_tennis
sports_tennisskateboarding
skateboardingMiscellaneous
22emoji_objects
emoji_objectstips_and_updates
tips_and_updatesmilitary_tech
military_techworkspace_premium
workspace_premiumverified_user
verified_userqr_code_scanner
qr_code_scannerbarcode_reader
barcode_readervolunteer_activism
volunteer_activism