.btn { display: inline-block; margin-bottom: 0; // For input.btn font-weight: normal; text-align: center; vertical-align: middle; touch-action: manipulation; cursor: pointer; background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214 border: var(--1px) solid transparent; white-space: nowrap; .button-size(var(--padding-base-vertical); var(--padding-base-horizontal); var(--font-size-base); var(--line-height-base)); user-select: none; &, &:active:hover, // Espo-fix &.active { &:focus, &.focus { .tab-focus(); } } &:hover, &:focus, &.focus { color: var(--btn-default-color); text-decoration: none; } &.disabled, &[disabled], fieldset[disabled] & { cursor: @cursor-disabled; opacity: 0.65; box-shadow: none; } a& { &.disabled, fieldset[disabled] & { pointer-events: none; // Future-proof disabling of clicks on `` elements } } } .btn-link { color: @link-color; font-weight: normal; border-radius: 0; &, &:active, &.active, &[disabled], fieldset[disabled] & { background-color: transparent; .box-shadow(none); } &, &:hover, &:focus, &:active { border-color: transparent; } &:hover { color: @link-hover-color; text-decoration: @link-hover-decoration; background-color: transparent; } &[disabled], fieldset[disabled] & { &:hover, &:focus { color: @btn-link-disabled-color; text-decoration: none; } } } .btn-lg { .button-size(var(--padding-large-vertical); var(--padding-large-horizontal); var(--font-size-large); var(--line-height-large)); } .btn-sm { .button-size(var(--padding-small-vertical); var(--padding-small-horizontal); var(--font-size-small); var(--line-height-small)); } .btn-block { display: block; width: 100%; } // Vertically space out multiple block buttons .btn-block + .btn-block { margin-top: var(--5px); } // Specificity overrides input[type="submit"], input[type="reset"], input[type="button"] { &.btn-block { width: 100%; } }