/* * Button mixin- creates a button effect with correct * highlights/shadows, based on a base color. */ @mixin button( $button-color, $button-text-color: #fff ) { background: $button-color; border-color: $button-color; color: $button-text-color; &:hover, &:focus { background: lighten( $button-color, 3% ); border-color: darken( $button-color, 3% ); color: $button-text-color; } &:focus { box-shadow: 0 0 0 1px #fff, 0 0 0 3px $button-color; } &:active { background: darken( $button-color, 5% ); border-color: darken( $button-color, 5% ); color: $button-text-color; } &.active, &.active:focus, &.active:hover { background: $button-color; color: $button-text-color; border-color: darken( $button-color, 15% ); box-shadow: inset 0 2px 5px -3px darken( $button-color, 50% ); } }