clone of olivero for island lives
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

132 lines
2.8 KiB

12 months ago
/**
* @file
* Buttons.
*/
@import "../base/media-queries.pcss.css";
.button {
display: inline-block;
height: var(--sp3);
margin-block: var(--sp1);
margin-inline-start: 0;
margin-inline-end: var(--sp1);
padding-block: calc((var(--sp3) - var(--line-height-s)) / 2);
padding-inline: var(--sp1-5);
cursor: pointer;
text-align: center;
text-decoration: none;
color: var(--color-text-primary-medium);
border: solid 2px currentColor;
border-radius: var(--border-radius);
background-color: var(--color--white);
font-family: var(--font-sans);
font-size: var(--font-size-l);
font-weight: 700;
appearance: none;
-webkit-font-smoothing: antialiased;
&:hover,
&:focus {
text-decoration: none;
color: var(--color-text-primary-loud);
border: solid 2px currentColor;
background: none;
font-weight: 700;
}
&:focus {
outline: 2px solid var(--color--primary-60);
outline-offset: 2px;
}
&:active {
color: var(--color-text-primary-medium);
border-color: currentColor;
}
&:disabled,
&.is-disabled {
cursor: default;
color: var(--color--gray-90);
border-color: var(--color--gray-90);
}
/*
IE11 doesn't work properly on button elements so we only do
inline-flex on modern browsers.
*/
@supports (display: inline-flex) {
display: inline-flex;
align-items: center;
/* Top padding accounts for font not being vertically centered within line-height. */
padding-block: 1px 0;
padding-inline: var(--sp1-5);
line-height: var(--line-height-s);
}
}
/* No margin if is part of a menu. */
.menu .button {
margin-block: 0;
margin-inline-start: 0;
margin-inline-end: 0;
}
.button--small {
height: var(--sp2-5);
padding-block: calc((var(--sp2-5) - var(--line-height-s)) / 2);
padding-inline: var(--sp);
font-size: var(--font-size-base);
line-height: normal;
}
.button--primary {
color: var(--color--white);
border-color: var(--color--primary-40);
background-color: var(--color--primary-40);
&:hover,
&:focus {
color: var(--color--white);
border-color: var(--color--primary-30);
background-color: var(--color--primary-30);
}
&:active {
color: var(--color--white);
background-color: var(--color--primary-40);
}
&:disabled,
&.is-disabled {
color: var(--color--white);
background-color: var(--color--gray-90);
}
}
.button--icon-back {
display: inline-flex;
align-items: center;
&::before {
display: block;
width: 0.5em;
height: 0.5em;
margin-inline-end: 0.5em;
content: "";
transform: rotate(45deg); /* LTR */
border-block-end: solid 2px currentColor;
border-inline-start: solid 2px currentColor;
}
}
[dir="rtl"] .button--icon-back::before {
transform: rotate(-45deg);
}
.shepherd-cancel-icon {
font-size: 1.5em;
}