baboolastyles
Version:
Styles used for baboola apps (see at https://baboolaos.netlify.app). You can use it too.
280 lines (263 loc) • 7.33 kB
CSS
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html:not(.nobaboolastyles),
.baboolastyles {
& ::-webkit-scrollbar {
background: linear-gradient(to right, #999, #ddd) ;
box-shadow: inset 0 2px 3px #0005;
width: 1rem;
border-left: 1px solid white;
}
& *::-webkit-scrollbar-thumb {
background: linear-gradient(to right, #fff, #ccc) ;
box-shadow: inset 0 2px 3px #fff;
border: 1px solid darkgrey;
}
body {
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif;
}
.toolbar {
display: flex;
flex-wrap: wrap;
align-items: center;
min-height: 4rem;
max-height: 4rem;
padding: 0.75rem;
gap: 1rem;
background: linear-gradient(to bottom, #fff, #ccc);
border-bottom: 1px solid grey;
box-shadow: inset 0 -1px 0 white;
& label {
display: flex;
flex-direction: column;
font-size: 0.8rem;
padding-inline: 0.5rem;
border-left: 1px solid #aaa;
box-shadow: inset 1px 0 0 white;
}
}
button,
select {
font-size: 0.9rem;
font-family: inherit;
padding: 0.5rem 1rem;
outline: 0;
cursor: pointer;
color: black;
text-shadow: 0 -1px 1px #0003, 0 1px 1px white;
border-radius: 999rem;
border: 1px solid grey;
background: linear-gradient(to bottom, #fff, #ccc);
box-shadow: 0 -2px 2px #0002, 0 3px 2px #fffc, inset 0 0 9px #0003;
& span {
display: flex;
justify-content: center;
}
&,
& span {
transition: all 0.1s;
}
&:active,
&.active,
&.selected {
box-shadow: 0 -2px 2px #0002, 0 3px 2px #fffc, inset 0 0 9px #0008;
color: #4488aa;
& span {
scale: 0.9;
}
}
}
input[type="range"] {
appearance: none;
height: 1.5rem;
background: none;
border-radius: 999rem;
display: flex;
position: relative;
&::-webkit-slider-runnable-track {
background: white;
box-shadow: inset 0 2px 1px #0001, 0 -2px 1px #0001, 0 1px 1px #fff8;
border: 1px solid rgba(128, 128, 128, 0.452);
border-radius: 999rem;
height: 0.5rem;
display: flex;
}
&::-moz-range-track {
background: white;
box-shadow: inset 0 2px 1px #0001, 0 -2px 1px #0001, 0 1px 1px #fff8;
border: 1px solid rgba(128, 128, 128, 0.452);
border-radius: 999rem;
height: 0.5rem;
display: flex;
}
&::-moz-range-thumb {
appearance: none;
width: 1.5rem;
height: 1rem;
background: linear-gradient(to bottom, #575757, #090909);
border-radius: 0.35rem;
box-shadow: inset 0 0 0 1px rgb(145, 145, 145), inset 0 2px 1px #fff3,
inset 0 0 1px black;
cursor: pointer;
position: relative;
top: 50%;
}
&::-webkit-slider-thumb {
appearance: none;
width: 1.5rem;
height: 1rem;
background: linear-gradient(to bottom, #575757, #090909);
border-radius: 0.35rem;
box-shadow: inset 0 0 0 1px rgb(145, 145, 145), inset 0 2px 1px #fff3,
inset 0 0 1px black;
cursor: pointer;
position: relative;
top: 50%;
transform: translateY(-50%);
}
@media screen and (max-width: 1300px) {
width: 5rem;
}
}
:disabled {
opacity: 0.8;
pointer-events: none;
}
input:not([type="range"]):not([type="checkbox"]):not([type="radio"]):not(
[type="color"]
) {
padding: 0.5rem 0.5rem;
border-radius: 999rem;
border: 1px solid #888;
outline: 0;
font-size: 0.9rem;
box-shadow: inset 0 3px 5px #0005, 0 -2px 2px #0002, 0 2px 2px #fff;
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue",
sans-serif;
background: white;
color: black;
}
.modal {
position: fixed;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
padding: 1rem;
z-index: 99999;
background: linear-gradient(to bottom, #fff, #ccc);
border-radius: 1.5rem;
box-shadow: inset 0 3px 3px #fff4, inset 0 0 4px #0005, 0 4px 4px #0004,
0 0 0 9000px #0007;
color: black;
width: 15rem;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
& p,
& input {
margin-bottom: 1rem;
width: 100%;
}
& > button {
min-width: 13rem;
}
& .buttons {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 0.5rem;
}
}
.checkmark {
height: 3rem;
width: 3rem;
margin-block: 1rem;
display: grid;
font-size: 2rem;
place-items: center;
background: green;
border-radius: 999rem;
}
input[type="checkbox"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: 2.5rem;
height: 1.2rem;
margin-top: 0.2rem;
background-color: transparent;
border-radius: 999rem;
border-top: 1px solid grey;
border-bottom: 1px solid white;
cursor: pointer;
box-shadow: inset 0 2px 1px #0003;
position: relative;
background: linear-gradient(to bottom, #d0d0d0, #ececec);
transition: all 0.4s ease-in-out;
&::after {
content: "";
position: absolute;
top: 50%;
transform: translateY(-50%);
transition: all 0.1s ease-in-out;
aspect-ratio: 1;
border-radius: 999rem;
height: 0.9rem;
background: linear-gradient(to bottom, #ffffff, #b4b4b4);
box-shadow: inset 0 2px 1px #fff3, inset 0 -1px 1px rgba(0, 0, 0, 0.311),
0 1px 2px rgba(0, 0, 0, 0.689);
}
&:not(:checked)::after {
left: 0.1rem;
}
&:checked::after {
left: calc(100% - 0.1rem);
transform: translate(-100%, -50%);
}
&:checked {
background: linear-gradient(to bottom, #00754e, #009b53);
}
}
.menu {
height: 100vh;
background: linear-gradient(to bottom, #eee, #ddd);
border-right: 1px solid grey;
padding: 1rem;
display: flex;
flex-direction: column;
gap: 1rem;
min-width: 15rem;
& > div {
text-shadow: 0 -1px 1px #0002, 0 1px 1px #fff;
height: 2.5rem;
padding: 0rem 1rem;
border: 1px solid grey;
display: flex;
align-items: center;
cursor: pointer;
background: linear-gradient(to bottom, #fff, #ccc);
border-radius: 99rem;
box-shadow: inset 0 0 13px #0004, 0 -3px 3px #0002, 0 3px 2px #fff;
transition: all 0.1s;
&.selected {
color: #4488aa;
box-shadow: inset 0 0 8px #4488aaa8, 0 -3px 3px #0002, 0 3px 3px #fff2;
}
&:active {
color: #4488aa;
box-shadow: inset 0 0 8px #000a, 0 -3px 3px #0002, 0 3px 3px #fff2;
font-size: 0.9rem;
}
}
}
.plastic {
background: linear-gradient(to bottom, #fff, #ccc);
box-shadow: inset 0 -4px 4px #0005, inset 0 3px 4px #fff, 0 50px 30px #0004;
}
}