Files
Frontend-Internal-Developer…/frontend/src/app/components/sidebar/styles.module.css
Laux Dev 2c9f2d612b Refactor
2026-03-19 18:57:20 +08:00

222 lines
4.0 KiB
CSS

.mainContainer {
display: flex;
width: 250px;
flex-direction: column;
justify-content: space-between;
align-items: center;
flex-shrink: 0;
height: 100vh;
align-self: stretch;
border-right: 1px solid #2c2d3d;
user-select: none;
border-right: 1px solid #2c2d3d;
background: #191a24;
transition: all 150ms;
}
.topContainer {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 16px;
align-self: stretch;
}
.logoContainer {
display: flex;
height: 84px;
padding: 12px 16px;
flex-direction: column;
justify-content: center;
align-items: flex-start;
position: relative;
gap: 12px;
align-self: stretch;
border-bottom: 1px solid #2c2d3d;
border-bottom: 1px solid color(display-p3 0.1725 0.1765 0.2353);
}
.logoContainer > div {
display: flex;
padding-right: 6px;
align-items: center;
gap: 8px;
align-self: stretch;
}
.logoIconContainer {
display: flex;
width: 50px;
height: 50px;
padding: 8px;
justify-content: center;
align-items: center;
gap: 9px;
aspect-ratio: 1/1;
border-radius: 4px;
}
.logoDescription {
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-start;
gap: 4px;
flex: 1 0 0;
}
.logoDescription > p:nth-child(1) {
color: #fff;
color: color(display-p3 1 1 1);
font-size: 0.94rem;
font-style: normal;
font-weight: 500;
line-height: 18px;
}
.logoDescription > p:nth-child(2) {
color: #85869b;
color: color(display-p3 0.5216 0.5255 0.6);
font-size: 0.63rem;
font-style: normal;
font-weight: 400;
line-height: normal;
letter-spacing: 0.05px;
align-self: stretch;
}
.navContainer {
display: flex;
flex-direction: column;
align-items: flex-start;
align-self: stretch;
}
.nav {
display: flex;
padding: 16px 24px;
align-items: center;
cursor: pointer;
gap: 16px;
font-family: Inter;
font-size: 1rem;
font-style: normal;
font-weight: 400;
line-height: normal;
border-left: 2px solid #959aff00;
align-self: stretch;
}
.nav:hover {
background: rgba(149, 154, 255, 0.05);
}
.nav path {
stroke: #858699;
}
.nav:hover path {
stroke: #d2d3e0;
}
.active {
border-left: 2px solid #959aff;
background: rgba(149, 154, 255, 0.05);
color: #959aff;
font-family: Inter;
font-size: 1rem;
font-style: normal;
font-weight: 400;
line-height: normal;
}
.active:hover path {
stroke: #969af9;
}
.active path {
stroke: #969af9;
}
.navFooterContainer {
display: flex;
padding: 16px;
flex-direction: column;
align-items: flex-start;
gap: 10px;
align-self: stretch;
}
.navFooterContainer > div {
display: flex;
padding: 12px 16px;
flex-direction: column;
align-items: flex-start;
gap: 24px;
align-self: stretch;
border-radius: 8px;
border: 1px solid #292b43;
background: #1d1e2c;
box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}
.navFooterContainer > div > div {
display: flex;
width: 100%;
justify-content: space-between;
align-items: center;
flex: 1 0 0;
}
.navFooterContainer > div > div > p {
color: #d2d3e1;
font-family: Inter;
font-size: 1rem;
font-style: normal;
font-weight: 500;
line-height: normal;
}
.collapsed {
width: 80px;
}
.noDisplay {
display: none;
}
.blockDisplay {
display: block;
}
.logoContainer .toggleContainer {
position: absolute;
right: -15px;
bottom: 50%;
transform: translateY(50%);
background-color: #191a24;
padding: 5px;
border-radius: 50%;
border: 1px solid #292b43;
transition: all 150ms;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
.arrowIcon {
transition: all 400ms;
}
.arrowIcon path {
stroke: rgba(255, 255, 255, 0.858);
}
.toggle {
transform: rotate(90deg) scale(0.8);
}
.notToggle {
transform: rotate(-90deg) scale(0.8);
}
.toggleContainer:hover {
background-color: #333652;
}
@media (max-width: 1050px) {
.mainContainer {
width: 80px;
}
.label {
display: none;
}
.logoContainer .toggleContainer {
display: none;
}
}
@media (max-width: 768px) {
.mainContainer {
display: none;
}
.label {
display: none;
}
}