philomena/assets/css/elements/button.css

223 lines
5.1 KiB
CSS
Raw Normal View History

@define-mixin button-type $type {
.button--$(type) {
color: var(--$(type)-link-color) !important;
border-color: var(--$(type)-border-color);
2024-05-03 22:59:29 +02:00
background: var(--$(type)-muted-color);
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-05-07 22:52:17 +02:00
.button--$(type) a {
2024-06-06 20:21:21 +02:00
color: inherit;
2024-05-07 22:52:17 +02:00
}
2024-04-30 20:38:28 +02:00
.button--$(type).button--important {
color: var(--text-color) !important;
background: var(--$(type)-color);
}
2023-11-23 17:07:49 +01:00
2024-05-20 22:30:41 +02:00
.button--$(type):hover,
.button--$(type):active,
.button--$(type).selected {
2024-06-06 20:21:21 +02:00
color: var(--text-color) !important;
background: var(--$(type)-dark-color);
2024-05-07 19:33:56 +02:00
border-radius: var(--border-radius-inner);
2023-11-23 17:07:49 +01:00
}
.button__group--$(type) {
border-color: var(--$(type)-color);
background: var(--$(type)-dark-color);
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-04-30 20:38:28 +02:00
.button__group--$(type) a {
color: var(--$(type)-link-color);
}
2023-11-23 17:07:49 +01:00
2024-04-30 20:38:28 +02:00
.button__group--$(type) a:hover {
@mixin animated-transition;
color: var(--text-color);
background: var(--$(type)-color);
2024-05-07 19:33:56 +02:00
border-radius: var(--border-radius-inner);
2023-11-23 17:07:49 +01:00
}
}
2024-06-06 20:21:21 +02:00
@define-mixin button-block-type $type {
.block--$(type) .button:not([class*="button--"]) {
color: var(--$(type)-link-color) !important;
border-color: var(--$(type)-border-color);
background: var(--$(type)-muted-color);
}
.block--$(type) .button:not([class*="button--"]) a {
color: inherit;
}
.block--$(type) .button--important:not([class*="button--"]) {
color: var(--text-color) !important;
background: var(--$(type)-color);
}
.block--$(type) .button:not([class*="button--"]):hover,
.block--$(type) .button:not([class*="button--"]):active,
.block--$(type) .button:not([class*="button--"]).selected {
color: var(--text-color) !important;
background: var(--$(type)-dark-color);
border-radius: var(--border-radius-inner);
}
.block--$(type) .button__group:not([class*="button--"]),
.block--$(type)
.button__group--single:not([class*="button--"])
.block--$(type)
.button__group--standalone:not([class*="button--"]) {
border-color: var(--$(type)-color);
background: var(--$(type)-dark-color);
}
.block--$(type) .button__group:not([class*="button--"]) a,
.block--$(type)
.button__group--single:not([class*="button--"])
a
.block--$(type)
.button__group--standalone:not([class*="button--"])
a {
color: var(--$(type)-link-color);
}
.block--$(type) .button__group:not([class*="button--"]) a:hover,
.block--$(type)
.button__group--single:not([class*="button--"])
a:hover
.block--$(type)
.button__group--standalone:not([class*="button--"])
a:hover {
@mixin animated-transition;
color: var(--text-color);
background: var(--$(type)-color);
border-radius: var(--border-radius-inner);
}
}
2023-11-23 17:07:49 +01:00
.button {
@mixin animated-transition;
2024-04-28 18:51:40 +02:00
display: flex;
flex: 0 1 auto;
2023-11-23 17:07:49 +01:00
width: fit-content;
font-weight: bold;
2024-04-28 18:51:40 +02:00
font-size: var(--font-size);
2024-07-02 20:09:30 +02:00
background: var(--secondary-dark-color);
2024-06-06 20:21:21 +02:00
color: var(--link-color);
2024-04-17 16:52:50 +02:00
border-radius: var(--border-radius-inner);
2024-04-28 18:51:40 +02:00
padding: 0 var(--padding-small);
2024-04-17 16:52:50 +02:00
overflow: hidden;
2024-04-28 18:51:40 +02:00
line-height: var(--button-height);
align-items: center;
2024-05-07 19:33:56 +02:00
border-width: 0;
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-05-20 22:30:41 +02:00
.button:hover,
.button:active {
2024-04-30 20:38:28 +02:00
@mixin animated-transition;
2024-06-06 20:21:21 +02:00
color: var(--text-color);
2024-07-02 20:09:30 +02:00
background: var(--secondary-muted-color);
2024-05-07 19:33:56 +02:00
border-radius: var(--border-radius-inner);
2024-04-30 20:38:28 +02:00
cursor: pointer;
2023-11-23 17:07:49 +01:00
}
2024-04-28 18:51:40 +02:00
.button > i {
margin-right: var(--padding-small);
}
2024-05-01 00:10:05 +02:00
@mixin if-phone {
.button > span {
margin-left: var(--padding-small);
}
}
2023-11-23 17:07:49 +01:00
.button--important {
background: var(--primary-color);
}
.button__row {
display: flex;
flex-direction: row;
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-04-30 20:38:28 +02:00
.button__row > button {
margin-right: var(--padding-small);
2023-11-23 17:07:49 +01:00
}
2024-05-20 21:25:43 +02:00
.button__group--single {
margin-right: 0;
}
2024-05-20 22:30:41 +02:00
.button__group,
.button__group--single,
.button__group--standalone {
display: flex;
flex-direction: row;
2023-11-23 17:07:49 +01:00
border-radius: var(--border-radius-inner);
margin-right: var(--padding-normal);
background: var(--secondary-dark-color);
line-height: var(--button-group-height);
2024-06-06 20:21:21 +02:00
padding: 0 var(--padding-small);
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-05-20 22:30:41 +02:00
.button__group:last-child,
.button__group--single:last-child,
.button__group--standalone:last-child {
2024-04-30 20:38:28 +02:00
margin: 0;
2023-11-23 17:07:49 +01:00
}
.button__group--tall {
2024-05-20 22:30:41 +02:00
line-height: var(--button-group-tall-height);
2023-11-23 17:07:49 +01:00
}
.button__group--small {
2024-05-20 22:30:41 +02:00
line-height: var(--button-group-small-height);
2023-11-23 17:07:49 +01:00
}
.button__group .button {
border: 0;
border-right: var(--secondary-color);
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-04-30 20:38:28 +02:00
.button__group .button:last-child {
border-right: 0;
2023-11-23 17:07:49 +01:00
}
.button__group--standalone a {
@mixin animated-transition;
2023-11-23 17:07:49 +01:00
font-weight: bold;
padding: 0 var(--padding-small);
2024-04-30 20:38:28 +02:00
}
2023-11-23 17:07:49 +01:00
2024-04-30 20:38:28 +02:00
.button__group--standalone a:hover {
@mixin animated-transition;
background: var(--secondary-muted-color);
2024-05-07 19:33:56 +02:00
border-radius: var(--border-radius-inner);
2023-11-23 17:07:49 +01:00
}
2024-04-17 16:52:50 +02:00
.button--borderless {
border-width: 0;
}
2024-06-06 20:21:21 +02:00
.button--transparent,
.button--transparent:hover {
2024-05-31 20:07:00 +02:00
background: 0 !important;
}
2024-06-06 20:21:21 +02:00
@mixin button-block-type primary;
@mixin button-block-type secondary;
@mixin button-block-type success;
@mixin button-block-type warning;
@mixin button-block-type danger;
@mixin button-block-type information;
@mixin button-block-type special;
2024-05-01 00:10:05 +02:00
@mixin button-type primary;
@mixin button-type secondary;
@mixin button-type success;
@mixin button-type warning;
@mixin button-type danger;
@mixin button-type information;
@mixin button-type special;