// Buttons @mixin dark_button_color($base_color, $font_color: #fff) { background: $base_color; color: $font_color; border: 1px solid darken($base_color, 5%); &:hover { background: darken($base_color, 5%); color: $font_color; } } @mixin light_button_color($base_color, $font_color: #333) { background: $base_color; font-weight: 600; border: 1px solid darken($base_color, 5%); color: $font_color; &:hover { background: darken($base_color, 3%); color: $font_color; } } // Default .button { display: inline-block; margin: 0; padding: 0.5rem 1rem; border: 0; background: $lightGray; color: $darkestGray; text-align: center; text-decoration: none; font-size: 1rem; cursor: pointer; border-radius: $radius; white-space: nowrap; &.uppercase { border: 0 !important; border-radius: 0; text-transform: uppercase; font-size: 0.85rem; } &.arrow_l:before { content: "\f0d9"; font-family: 'FontAwesome'; margin-right: 1rem; } &.arrow:after { content: "\f0da"; font-family: 'FontAwesome'; margin-left: 1rem; } &.long_arrow:after { content: "\f178"; font-family: 'FontAwesome'; margin-left: 1rem; } &.loading { opacity: 0.65; cursor: default !important; i { margin-left: 0.5rem; } &.arrow:after { display: none; } } // #todo find an example of button.primary &.primary { @include dark_button_color(#e75845); } &.success { @include dark_button_color($successColor); } &.error { @include dark_button_color($errorColor); } &.info { @include dark_button_color(#1fa3ec); } &.white { @include light_button_color(#fff); } &.darker_gray { @include light_button_color(#ccc); } &.light_gray { @include light_button_color(#eeeff0, $blueGray); } &.gray { @include light_button_color($lighterGray); } &:hover { background: $gray; text-decoration: none; } &:active { box-shadow: inset 0 2px 3px hsla(0, 0%, 0%, 0.2); } &:focus { outline: thin dotted $darkestGray; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; } // Sizes // #todo refactor and catalog these sizes &.mini { padding: 0.238rem 0.563rem; font-size: 0.8125rem; } &.small { padding: 0.317rem 0.75rem; font-size: 0.875rem; } &.large, &.block { padding: 1rem 1.333rem; font-size: 1.125rem; line-height: 1.333; } &.block { display: block; } // States &[disabled], &.disabled, &.disabled:active { box-shadow: none !important; text-shadow: none !important; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)"; opacity: 0.65; cursor: default !important; } } // Link-styled buttons .button_link { font-size: inherit; background: none; padding: 0; line-height: inherit; border: 0; color: $linkColor; &:focus { outline: 0; } &:hover { text-decoration: underline; } }