.c__button { display: flex; align-items: center; border: none; cursor: pointer; transition: background-color var(--c--theme--transitions--duration) var(--c--theme--transitions--ease-out); border-radius: var(--c--components--button--border-radius); font-weight: var(--c--components--button--font-weight); &--medium { height: var(--c--components--button--medium-height); font-size: var(--c--components--button--medium-font-size); padding: 0 var(--c--theme--spacings--s); &.c__button--icon-only { width: var(--c--components--button--medium-height); } } &--small { height: var(--c--components--button--small-height); font-size: var(--c--components--button--small-font-size); padding: 0 0.75rem; &.c__button--icon-only { width: var(--c--components--button--small-height); } } &--icon-only { padding: 0; justify-content: center; } &--with-icon--left, &--with-icon--right { gap: var(--c--theme--spacings--t); } &--with-icon--left { padding: 0 var(--c--theme--spacings--s) 0 var(--c--theme--spacings--t); } &--with-icon--right { padding: 0 var(--c--theme--spacings--t) 0 var(--c--theme--spacings--s); } &--primary { background-color: var(--c--theme--colors--primary-500); color: var(--c--theme--colors--primary-text); &:hover { background-color: var(--c--theme--colors--primary-600); } &:active, &.c__button--active { background-color: var(--c--theme--colors--primary-500); } &[disabled] { background-color: var(--c--theme--colors--greyscale-200); } } &--secondary { background-color: var(--c--theme--colors--secondary-500); color: var(--c--theme--colors--secondary-text); &:hover { background-color: var(--c--theme--colors--secondary-600); } &:active, &.c__button--active { background-color: var(--c--theme--colors--secondary-500); } &[disabled] { background-color: var(--c--theme--colors--greyscale-200); } } &--tertiary { background-color: transparent; color: var(--c--theme--colors--greyscale-800); &:hover { color: var(--c--theme--colors--greyscale-900); background-color: var(--c--theme--colors--greyscale-100); } &:active, &.c__button--active { color: var(--c--theme--colors--greyscale-800); background-color: var(--c--theme--colors--greyscale-200); } &[disabled] { background-color: transparent; } } &--danger { background-color: var(--c--theme--colors--danger-500); color: var(--c--theme--colors--danger-text); &:hover { background-color: var(--c--theme--colors--danger-600); } &:active { background-color: var(--c--theme--colors--danger-500); } &[disabled] { background-color: var(--c--theme--colors--greyscale-200); } } &[disabled] { cursor: not-allowed; color: var(--c--theme--colors--greyscale-400); } }