Files
librePECS/main.css

215 lines
3.8 KiB
CSS

:root {
--foreground-high: rgba(10,10,10,1);
--foreground-low: rgba(40,40,40,1);
--background-high: rgba(200,200,200,0.5);
--background-low: rgba(250,250,250,0.5);
--middle-accent: rgba(128,128,128,0.1);
--middle-shade: rgba(128,128,128,0.5);
--shadows-color: rgba(138,138,138,1);
&.darkmode {
--foreground-high: rgba(250,250,250,0.5);
--foreground-low: rgba(200,200,200,1);
--background-high: rgba(40,40,40,0.5);
--background-low: rgba(10,10,10,1);
--shadows-color: rgba(138,138,138,1);
}
}
body {
margin:0;
background: var(--background-low);
color: var(--foreground-high);
}
#root {
height: 100vh;
width: 100vw;
margin: 0;
display: flex;
flex-direction: column;
justify-items: stretch;
align-items: stretch;
}
#navigation {
padding-top:25px;
height: 25px;
box-shadow: inset 0 -2px 3px 0 var(--shadows-color);
}
#view {
flex: 1;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr;
justify-items: center;
grid-gap: 5%;
padding: 5%;
}
.options_body > div {
display: flex;
justify-content: center;
align-items: center;
border-bottom: solid 1px var(--foreground-low);
padding: 0 20px 0 20px;
height: 40px;
label {
flex:1;
}
input[type="number"] {
width: 100px;
}
}
.dm-indicator {
display: inline-block;
height: 30px;
width: 30px;
background: yellow;
border-radius: 15px;
box-shadow: inset 0 0 5px 5px rgba(240,140,0,0.8);
appearance: unset;
}
.dm-indicator:checked {
background: lightgrey;
box-shadow: inset 10px 10px 5px -5px black;
}
.toggle-switch {
appearance: unset;
display: inline-block;
height: 30px;
width: 70px;
border-radius: 15px;
background: var(--background-low);
box-shadow: inset -40px 0px 2px -2px var(--foreground-high);
transition: box-shadow 300ms;
}
.toggle-switch:checked {
box-shadow: inset 40px 0px 2px -2px var(--foreground-high);
}
.board_tab {
display: inline-block;
height: 24px;
width: 100px;
border: solid 1px var(--foreground-low);
color: var(--foreground-high);
border-bottom: unset;
border-radius: 15px 15px 0 0;
background: var(--background-low);
text-align: center;
}
.active_board {
color: var(--foreground-low);
background: var(--background-high);
}
.libSlot, .pecSlot {
border: solid 3px var(--foreground-low);
border-radius: 6px;
user-select: none;
position: relative;
}
.pecSlot {
--square-pec-size: calc( min( min( 100vh, 100vw ), hypot( 100vh, 100vw ) ) * 0.15);
height: var(--square-pec-size);
width: var(--square-pec-size);
}
.empty {
color: var(--forground-low);
font-size: 100%;
text-align: center;
}
.dialog {
display: block;
position: absolute;
top: 0;
left: -100vw;
height: 100vh;
width: 100vw;
backdrop-filter: blur(0px);
transition: left 500ms, backdrop-filter 500ms;
}
.title_bar {
height: 50px;
box-shadow: inset 0 -2px 3px 0 var(--shadows-color);
display: flex;
justify-content: stretch;
font-size: 32pt;
user-select: none;
}
.title_text {
text-align: center;
flex: 1;
}
.options_button, .close {
display: inline-block;
background: var(--middle-accent);
box-shadow: inset 2px 2px 2px 0 var(--middle-shade);
width: 50px;
text-align: center;
cursor: pointer;
}
.options_button {
position: absolute;
height: 50px;
top: 0;
right: 0;
font-size: 32pt;
}
.focused {
left: 0vw;
backdrop-filter: blur(5px);
transition: left 500ms, backdrop-filter 500ms;
}
.library_body {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
grid-gap: 5%;
padding: 5%;
}
.options_body {
display: flex;
flex-direction: column;
align-items: stretch;
}
.pec {
text-align: center;
height: 100%;
width: 100%;
}
.pecImage {
height: 100%;
width: 100%;
object-fit: contain;
position: absolute;
top: 0;
left: 0;
}
.pecName {
position: absolute;
width: 100%;
bottom: 0;
left: 0;
text-align: center;
color: var(--foreground-high);
background: var(--background-high);
}