@schukai/monster
Version:
Monster is a simple library for creating fast, robust and lightweight websites.
203 lines (202 loc) • 5.52 kB
CSS
/** generated from button.pcss **/
button {
background-color: var(--monster-bg-color-primary-1);
color: var(--monster-color-primary-1);
}
.monster-button-primary,
button {
align-items: center;
background-position: 50%;
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
box-shadow: var(--monster-box-shadow-1);
cursor: pointer;
display: flex;
font-family: var(--monster-font-family), sans-serif;
font-size: 1rem;
font-weight: 400;
gap: .4rem;
justify-content: center;
line-height: 1.5;
outline: none;
overflow: hidden;
padding: .375rem .75rem;
position: relative;
text-align: center;
text-decoration: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
vertical-align: middle;
width: -webkit-fill-available;
width: -moz-available;
width: stretch;
}
.monster-button-primary {
background-color: var(--monster-bg-color-primary-4);
border-color: var(--monster-bg-color-primary-4);
color: var(--monster-color-primary-4);
}
.monster-button-secondary {
background-color: var(--monster-bg-color-secondary-4);
border-color: var(--monster-bg-color-secondary-4);
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
color: var(--monster-color-secondary-4);
}
.monster-button-secondary,
.monster-button-tertiary {
align-items: center;
background-position: 50%;
box-shadow: var(--monster-box-shadow-1);
cursor: pointer;
display: flex;
font-family: var(--monster-font-family), sans-serif;
font-size: 1rem;
font-weight: 400;
gap: .4rem;
justify-content: center;
line-height: 1.5;
outline: none;
overflow: hidden;
padding: .375rem .75rem;
position: relative;
text-align: center;
text-decoration: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
vertical-align: middle;
width: -webkit-fill-available;
width: -moz-available;
width: stretch;
}
.monster-button-tertiary {
background-color: var(--monster-bg-color-tertiary-4);
border-color: var(--monster-bg-color-tertiary-4);
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
color: var(--monster-color-tertiary-4);
}
.monster-button-outline-primary {
background-color: var(--monster-color-primary-4);
border-color: var(--monster-bg-color-primary-4);
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
color: var(--monster-bg-color-primary-4);
}
.monster-button-outline-primary,
.monster-button-outline-secondary {
align-items: center;
background-position: 50%;
box-shadow: var(--monster-box-shadow-1);
cursor: pointer;
display: flex;
font-family: var(--monster-font-family), sans-serif;
font-size: 1rem;
font-weight: 400;
gap: .4rem;
justify-content: center;
line-height: 1.5;
outline: none;
overflow: hidden;
padding: .375rem .75rem;
position: relative;
text-align: center;
text-decoration: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
vertical-align: middle;
width: -webkit-fill-available;
width: -moz-available;
width: stretch;
}
.monster-button-outline-secondary {
background-color: var(--monster-color-secondary-4);
border-color: var(--monster-bg-color-secondary-4);
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
color: var(--monster-bg-color-secondary-4);
}
.monster-button-outline-tertiary {
align-items: center;
background-color: var(--monster-color-tertiary-4);
background-position: 50%;
border-color: var(--monster-bg-color-tertiary-4);
border-radius: var(--monster-border-radius);
border-style: var(--monster-border-style);
border-width: var(--monster-border-width);
box-shadow: var(--monster-box-shadow-1);
color: var(--monster-bg-color-tertiary-4);
cursor: pointer;
display: flex;
font-family: var(--monster-font-family), sans-serif;
font-size: 1rem;
font-weight: 400;
gap: .4rem;
justify-content: center;
line-height: 1.5;
outline: none;
overflow: hidden;
padding: .375rem .75rem;
position: relative;
text-align: center;
text-decoration: none;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
vertical-align: middle;
width: -webkit-fill-available;
width: -moz-available;
width: stretch;
}
button:hover {
box-shadow: var(--monster-box-shadow-2);
transition: background .8s, color .25s .0833333333s;
}
button:disabled {
cursor: not-allowed;
}
button:active {
box-shadow: var(--monster-box-shadow-2);
transition: background .8s, color .25s .0833333333s;
z-index: var(--monster-z-index-outline);
}
.monster-button-bar,
.monster-button-group {
align-content: center;
align-items: stretch;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
}
.monster-button-group {
box-sizing: border-box;
gap: 0;
margin: 1rem 0;
}
.monster-button-group > :not(:last-child) {
margin-right: calc(var(--monster-border-width) * -1);
}
.monster-button-group :hover {
box-shadow: none;
}
button:focus {
outline: 1px dashed var(--monster-color-selection-4);
outline-offset: 2px;
z-index: var(--monster-z-index-outline);
}
@media (prefers-color-scheme: light) {
button:focus {
outline: 1px dashed var(--monster-color-selection-3);
outline-offset: 2px;
z-index: var(--monster-z-index-outline);
}
}