@mixin btn { @include appearance(none); @include background(linear-gradient(tint($gray, 25%), $gray)); @include box-shadow(rgba(#000, 0.1) 0 1px, rgba(#fff, 0.5) 0 0 1px inset); @include radius; background-color: tint($gray, 10%); border: 1px solid shade($gray, 5%); color: #fff; display: inline-block; font: 11px/#{$line-height} $font; letter-spacing: 1px; margin: 0 0 $sp2; padding: 3px 10px; position: relative; text-align: center; text-decoration: none; text-transform: uppercase; vertical-align: top; min-width: 40px; height: 32px; &:not(:empty) { min-width: 100px; } &:hover { @include box-shadow(rgba(#000, 0.1) 0 1px); background: tint($darkgray, 15%); border-color: transparent; } &:active { @include box-shadow(rgba(#000, 0.2) 0 0 4px inset); background: $darkgray; border-color: shade($gray, 30%) shade($gray, 30%) shade($gray, 20%); } &[class*="icon-"]:before { font-size: 18px; vertical-align: top; } &[class*="icon-"]:not(:empty):before { margin: 0 7px 0 0; } } @include keyframes(warn) { from { background: tint($gray, 10%); } to { background: shade($red, 10%); } } @mixin btn-action { @include background(linear-gradient(tint($green, 30%), $green)); background-color: tint($green, 10%); border: 1px solid shade($green, 5%); &:hover { background: $green; } &:active { background: shade($green, 5%); border-color: shade($green, 30%) shade($green, 30%) shade($green, 20%); } } @mixin btn-warning { &:hover { @include animation(warn 0.4s); background: shade($red, 10%); } &:active { background: shade($red, 20%); border-color: shade($red, 35%) shade($red, 35%) shade($red, 25%); } } @mixin btn-pill { @include box-shadow(none); border: 0; padding: 0 10px; min-width: 0; height: 24px; } @mixin btn-small { padding: 0 10px; min-width: 0; height: 26px; &[class*="icon-"]:before { font-size: 15px; } &[class*="icon-"]:not(:empty):before { margin: 0 5px 0 0; } } @mixin btn-big { padding: 7px 16px; min-width: 130px; height: 40px; } .#{$moovui-prefix}btn.pill { @include btn-pill; } .#{$moovui-prefix}btn.small { @include btn-small; } .#{$moovui-prefix}btn { @include btn; } .#{$moovui-prefix}btn.big { @include btn-big; } .#{$moovui-prefix}btn.action { @include btn-action; } .#{$moovui-prefix}btn.warning { @include btn-warning; } @if $moovui-init { input[type="submit"], input[type="button"], button { @include btn; } }