Files
habitica/website/client/src/assets/scss/button.scss
T
negue f2c6838e95 update dropdowns to use the updated / styled components (#12758)
* update dropdowns to use the updated / styled components

* update colors / behavior for colors

* remove class binding
2020-11-09 22:26:21 +01:00

272 lines
5.1 KiB
SCSS

.btn {
cursor: pointer;
font-family: 'Roboto', sans-serif;
font-size: 14px;
font-weight: bold;
line-height: 1.71;
border: 1px solid transparent;
padding: 0.219rem 0.75rem;
border-radius: 2px;
box-shadow: 0 1px 3px 0 rgba($black, 0.12), 0 1px 2px 0 rgba($black, 0.24);
color: $white;
&:hover, &:focus {
box-shadow: 0 3px 6px 0 rgba($black, 0.16), 0 3px 6px 0 rgba($black, 0.24);
&:disabled, &.disabled, &.btn-flat {
box-shadow: none;
}
}
&:focus {
border-color: $purple-400;
}
&:active, &.active:not(.btn-flat) {
box-shadow: none;
}
&:disabled, &.disabled {
cursor: default;
opacity: 0.75;
}
&.with-icon {
height: 2rem; // otherwise would something set the height to 33px
display: flex;
flex-direction: row;
align-items: center;
}
}
.btn-front {
font-size: 16px;
line-height: 1.5;
padding: 7.5px 15.5px;
}
.btn-primary {
background: $purple-200;
border: 1px solid transparent;
--icon-color: #{$purple-500};
&:focus {
background: $purple-200;
border-color: $purple-400;
--icon-color: #{$white};
}
&:not(:disabled):not(.disabled) {
&:hover {
background: #5d3b9c;
border: 1px solid transparent;
--icon-color: #{$white};
}
&:active, &.active {
background: $purple-200;
border: 1px solid transparent;
--icon-color: #{$white};
}
&:active:focus, &.active:focus {
box-shadow: none;
border-color: $purple-400;
}
}
&:disabled, &.disabled {
background: $gray-700;
border: 1px solid transparent;
cursor: default;
color: $gray-50;
--icon-color: #{$gray-300};
}
&.with-icon {
.svg-icon.color {
color: var(--icon-color);
}
}
}
.btn-secondary,
.dropdown > .btn-secondary.dropdown-toggle:not(.btn-success),
.show > .btn-secondary.dropdown-toggle:not(.btn-success)
{
background: $white;
border: 1px solid transparent;
color: $gray-50;
--icon-color: #{$gray-200};
&:focus, &:active {
color: $gray-50;
background: $white;
border-color: $purple-400;
--icon-color: #{$purple-300};
}
&:not(:disabled):not(.disabled) {
&:active, &.active {
color: $purple-300;
--icon-color: #{$purple-300};
&:focus {
color: $purple-300;
box-shadow: none;
border-color: $purple-400;
}
background: $white;
border: 1px solid transparent;
}
&:hover {
color: $purple-300;
background: $white !important;
border: 1px solid transparent;
--icon-color: #{$purple-300};
}
}
&:disabled, &.disabled {
color: $gray-50;
background: $white;
border: 1px solid transparent;
cursor: default;
opacity: 0.75;
--icon-color: #{$gray-300};
}
&.with-icon {
.svg-icon.color {
color: var(--icon-color);
}
}
}
.show > .btn-secondary.dropdown-toggle:not(.btn-success):not(:disabled):not(.disabled) {
--icon-color: #{$purple-300};
}
.btn-danger {
background: $maroon-100;
border: 1px solid transparent;
&:hover:not(:disabled):not(.disabled) {
background: #e14e4e;
border: 1px solid transparent;
}
&:focus {
background: $maroon-100;
border-color: $purple-400;
}
&:not(:disabled):not(.disabled):active:focus, &:not(:disabled):not(.disabled).active:focus {
box-shadow: none;
border-color: $purple-400;
}
&:not(:disabled):not(.disabled):active, &:not(:disabled):not(.disabled).active {
background: $maroon-100;
border: 1px solid transparent;
}
&:disabled, &.disabled {
background: $maroon-100;
border: 1px solid transparent;
cursor: default;
opacity: 0.75;
}
}
.btn-success {
background: $green-50;
border: 1px solid transparent;
&:hover:not(:disabled):not(.disabled) {
background: #32bd8a;
border: 1px solid transparent;
}
&:focus {
background: $green-50;
border-color: $purple-400;
}
&:not(:disabled):not(.disabled):active:focus, &:not(:disabled):not(.disabled).active:focus {
box-shadow: none;
border-color: $purple-400;
}
&:not(:disabled):not(.disabled):active, &:not(:disabled):not(.disabled).active {
background: $green-50;
border: 1px solid transparent;
}
&:disabled, &.disabled {
background: $green-50;
border: 1px solid transparent;
cursor: default;
opacity: 0.75;
}
}
.btn-info {
background: $blue-50;
&:disabled {
background: $blue-50;
}
&:hover:not(:disabled):not(.disabled) {
background-color: $blue-100;
}
&:active:not(:disabled):not(.disabled), &.active:not(:disabled):not(.disabled) {
background: $blue-50;
}
}
.btn-show-more {
display: block;
width: 50%;
max-width: 448px;
margin: 0 auto;
margin-top: 12px;
padding: 8px;
font-size: 14px;
line-height: 1.43;
font-weight: bold;
text-align: center;
background: $gray-600;
color: $gray-200 !important; // Otherwise it gets ignored when used on an A element
box-shadow: none;
&:hover {
box-shadow: none;
color: inherit !important;
}
}
.btn-flat {
border: 0;
box-shadow: none;
}
.btn-small {
font-size: 12px;
line-height: 1.33;
padding: 4px 8px;
}