@import '../abstracts/variables'; .fab { padding: 0; font-family: var(--typography-button-family); font-size: var(--typography-button-size); font-weight: var(--typography-button-weight); line-height: var(--typography-button-lineheight); letter-spacing: var(--typography-button-letterspacing); text-transform: var(--typography-button-text-transform); min-width: 0; box-shadow: 0px 3px 5px -1px rgba(0,0,0,0.2),0px 6px 10px 0px rgba(0,0,0,0.14),0px 1px 18px 0px rgba(0,0,0,0.12); box-sizing: border-box; min-height: 36px; transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; border-radius: 50%; color: var(--palette-text-primary); background-color: var(--palette-action-default-hover); &:hover, &:focus-visible { box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0,0,0,.12); text-decoration: none; background-color: var(--palette-action-disabled-background); } &:active { box-shadow: 0px 7px 8px -4px rgba(0,0,0,0.2),0px 12px 17px 2px rgba(0,0,0,0.14),0px 5px 22px 4px rgba(0,0,0,0.12); } &:disabled { color: var(--palette-action-disabled); box-shadow: none; background-color: var(--palette-action-disabled-background); cursor: default; pointer-events: none; &:hover { background-color: var(--palette-action-disabled-background); } } } .fab-disable-elevation { box-shadow: none; &:hover { box-shadow: none; } &:active { box-shadow: none; } &.focus-visible { box-shadow: none; } &:disabled { box-shadow: none; } } .fab-label { width: 100%; display: inherit; align-items: inherit; justify-content: inherit; } @each $color in $palette-colors { .fab-#{$color} { color: var(--palette-#{$color}-text); background-color: var(--palette-#{$color}); &:hover, &:focus-visible { background-color: var(--palette-#{$color}-darken); } } } .fab-extended { &.fab-size-large { width: auto; height: 48px; padding: 0 16px; min-width: 48px; min-height: auto; border-radius: 24px; .fab-label { gap: 8px; } } &.fab-size-small { width: auto; height: 34px; padding: 0 12px; min-width: 34px; border-radius: 17px; .fab-label { gap: 4px; } } &.fab-size-medium { width: auto; height: 40px; padding: 0 16px; min-width: 40px; border-radius: 20px; .fab-label { gap: 8px; } } } .fab-color-inherit { color: inherit; } .fab-size-small { width: 40px; height: 40px; } .fab-size-medium { width: 48px; height: 48px; } .fab-size-large { width: 56px; height: 56px; }