3 // --------------------------------------------------
 
   7 // --------------------------------------------------
 
  11   display: inline-block;
 
  14   margin-bottom: 0; // For input.btn
 
  15   font-size: @baseFontSize;
 
  16   line-height: @baseLineHeight;
 
  18   vertical-align: middle;
 
  20   .buttonBackground(@btnBackground, @btnBackgroundHighlight, @grayDark, 0 1px 1px rgba(255,255,255,.75));
 
  21   border: 1px solid @btnBorder;
 
  22   *border: 0; // Remove the border to prevent IE7's black border on input:focus
 
  23   border-bottom-color: darken(@btnBorder, 10%);
 
  24   .border-radius(@baseBorderRadius);
 
  25   .ie7-restore-left-whitespace(); // Give IE7 some love
 
  26   .box-shadow(~"inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05)");
 
  32     text-decoration: none;
 
  33     background-position: 0 -15px;
 
  35     // transition is only when going to hover/focus, otherwise the background
 
  36     // behind the gradient (there for IE<=9 fallback) gets mismatched
 
  37     .transition(background-position .1s linear);
 
  40   // Focus state for keyboard and accessibility
 
  48     background-image: none;
 
  50     .box-shadow(~"inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)");
 
  57     background-image: none;
 
  67 // --------------------------------------------------
 
  71   padding: @paddingLarge;
 
  72   font-size: @fontSizeLarge;
 
  73   .border-radius(@borderRadiusLarge);
 
  75 .btn-large [class^="icon-"],
 
  76 .btn-large [class*=" icon-"] {
 
  82   padding: @paddingSmall;
 
  83   font-size: @fontSizeSmall;
 
  84   .border-radius(@borderRadiusSmall);
 
  86 .btn-small [class^="icon-"],
 
  87 .btn-small [class*=" icon-"] {
 
  90 .btn-mini [class^="icon-"],
 
  91 .btn-mini [class*=" icon-"] {
 
  97   padding: @paddingMini;
 
  98   font-size: @fontSizeMini;
 
  99   .border-radius(@borderRadiusSmall);
 
 104 // -------------------------
 
 111   .box-sizing(border-box);
 
 114 // Vertically space out multiple block buttons
 
 115 .btn-block + .btn-block {
 
 119 // Specificity overrides
 
 120 input[type="submit"],
 
 122 input[type="button"] {
 
 131 // --------------------------------------------------
 
 133 // Provide *some* extra contrast for those who can get it
 
 139 .btn-inverse.active {
 
 140   color: rgba(255,255,255,.75);
 
 143 // Set the backgrounds
 
 144 // -------------------------
 
 146   .buttonBackground(@btnPrimaryBackground, @btnPrimaryBackgroundHighlight);
 
 148 // Warning appears are orange
 
 150   .buttonBackground(@btnWarningBackground, @btnWarningBackgroundHighlight);
 
 152 // Danger and error appear as red
 
 154   .buttonBackground(@btnDangerBackground, @btnDangerBackgroundHighlight);
 
 156 // Success appears as green
 
 158   .buttonBackground(@btnSuccessBackground, @btnSuccessBackgroundHighlight);
 
 160 // Info appears as a neutral blue
 
 162   .buttonBackground(@btnInfoBackground, @btnInfoBackgroundHighlight);
 
 164 // Inverse appears as dark gray
 
 166   .buttonBackground(@btnInverseBackground, @btnInverseBackgroundHighlight);
 
 170 // Cross-browser Jank
 
 171 // --------------------------------------------------
 
 174 input[type="submit"].btn {
 
 176   // Firefox 3.6 only I believe
 
 177   &::-moz-focus-inner {
 
 182   // IE7 has some default padding on button controls
 
 184   *padding-bottom: 3px;
 
 188     *padding-bottom: 7px;
 
 192     *padding-bottom: 3px;
 
 196     *padding-bottom: 1px;
 
 202 // --------------------------------------------------
 
 204 // Make a button look and behave like a link
 
 207 .btn-link[disabled] {
 
 208   background-color: transparent;
 
 209   background-image: none;
 
 213   border-color: transparent;
 
 220   color: @linkColorHover;
 
 221   text-decoration: underline;
 
 222   background-color: transparent;
 
 224 .btn-link[disabled]:hover,
 
 225 .btn-link[disabled]:focus {
 
 227   text-decoration: none;