frontend_nyla/src/components/Sidebar/SidebarStyles/SidebarItem.module.css

129 lines
2.3 KiB
CSS

.menu {
display: flex;
flex-direction: column;
align-items: flex-start;
position: relative;
margin: 0;
padding: 0;
}
.menu li {
display: flex;
width: 220px;
height: 44px;
padding: 0 3px 0 27px;
margin: 0;
align-items: center;
color: var(--color-text);
list-style: none;
position: relative;
}
.menu li:hover, .menu li.active {
background: var(--color-secondary);
color: var(--color-bg);
border-top-right-radius: 25px;
border-bottom-right-radius: 25px;
}
.menu li:hover a, .menu li.active a {
color: var(--color-bg);
text-decoration: none;
}
.menu li a {
text-decoration: none;
font-family: var(--font-family);
font-size: 0.9rem;
font-style: normal;
font-weight: 500;
line-height: normal;
color: inherit;
display: flex;
align-items: center;
justify-content: left;
position: absolute;
height: 100%;
opacity: 1;
white-space: nowrap;
overflow: hidden;
transition: opacity 0.3s ease-in-out;
}
.menuLink {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
padding-right: 15px;
padding-left: 35px;
}
.icon {
display: flex;
width: 25px;
height: 25px;
padding: 2.292px 2.3px 2.508px 2.292px;
justify-content: center;
align-items: center;
flex-shrink: 0;
flex-grow: 0; /* Prevent growth during transitions */
position: absolute;
top: 50%;
transform: translateY(-50%); /* Center vertically */
}
.hassubmenu {
width: 20px;
height: 20px;
opacity: 1;
margin-left: auto; /* Push to right side, replacing gap spacing */
transition: opacity 0.3s ease-in-out;
}
.rotated {
transform: rotate(180deg);
}
.menuText {
white-space: nowrap;
overflow: hidden;
opacity: 1;
margin-left: 5px; /* Replace gap with margin to prevent layout shifts */
transition: opacity 0.3s ease-in-out;
}
.minimizedOverlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 10;
}
/* Minimized Menu Styles */
.menu.minimized li {
width: 46px;
padding: 0 3px 0 11px;
justify-content: flex-start;
position: relative;
}
.menu.minimized li a{
opacity: 0;
}
.menu.minimized li:hover,
.menu.minimized li.active {
border-radius: 15px;
color: var(--color-bg);
}