obscreen/data/www/scss/base/_menu.scss
2024-07-15 23:43:18 +02:00

192 lines
3.2 KiB
SCSS

menu {
width: 300px;
background: $layoutBackground;
overflow-y: auto;
overflow-x: visible;
padding: 20px;
z-index: 2000;
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: flex-start;
border-right: $layoutBorder;
min-width: 64px;
h1.logo {
margin: 40px 0 0 10px;
align-self: stretch;
display: flex;
a {
@include pixel-text(0);
flex: 1;
font-family: 'Sixtyfour', 'Work Sans', 'Arial', 'sans-serif';
align-self: stretch;
padding-right: 3px;
font-size: 20px;
text-transform: uppercase;
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
position: relative;
img {
flex-shrink: 0;
width: 30px;
margin-right: 10px;
position: absolute;
left: 5px;
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
&.after {
opacity: 0;
}
}
}
}
&:hover {
h1.logo {
a {
@include pixel-text(3);
img {
&.before {
opacity: 0;
}
&.after {
animation-duration: 200ms;
animation-name: logotouch;
}
}
}
}
}
nav {
display: flex;
align-self: stretch;
flex: 1;
ul {
margin: 60px 0 20px 0;
flex: 1;
align-self: flex-start;
display: flex;
flex-direction: column;
list-style: none;
li {
align-self: stretch;
overflow: hidden;
position: relative;
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
margin: 10px 0;
border-radius: $baseRadius;
a {
color: rgba(255, 255, 255, 0.9);
font-size: 16px;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
align-self: stretch;
flex: 1;
padding-top: 5px;
padding-bottom: 5px;
padding-left: 10px;
i {
color: $white;
opacity: .2;
background: transparent;
display: flex;
justify-content: center;
align-items: center;
align-self: stretch;
padding: 10px 10px;
width: 40px;
border-radius: $baseRadius;
text-align: center;
margin-right: 20px;
}
}
&:after {
background: $white;
content: "";
height: 195px;
left: -200px;
opacity: .2;
position: absolute;
top: -50px;
transform: rotate(35deg);
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
width: 50px;
z-index: -2;
cursor: pointer;
}
&.active {
a {
color: $primary;
font-weight: bold;
i {
opacity: 1;
background: rgba(255, 255, 255, 0.9);
background: #017BFF;
}
}
}
&:hover {
background: $primary;
&:after {
z-index: 2;
left: 120%;
transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
}
a {
color: $white;
font-weight: bold;
i {
color: $white;
opacity: 1;
}
}
}
}
}
}
footer {
background: rgba(255, 255, 255, 0.01);
padding: 20px 0;
display: flex;
flex-direction: row;
align-self: stretch;
text-align: center;
justify-content: center;
p {
color: #444;
&.version {
a {
color: #777;
font-weight: bold;
}
}
}
}
}