* { box-sizing: border-box; }
body {
font-family: system-ui, "Segoe UI", sans-serif;
margin: 0;
height: 100vh;
/* Complex mesh gradient background */
background:
radial-gradient(at 0% 0%, hsla(253,16%,7%,1) 0, transparent 50%),
radial-gradient(at 50% 0%, hsla(225,39%,30%,1) 0, transparent 50%),
radial-gradient(at 100% 0%, hsla(339,49%,30%,1) 0, transparent 50%);
background-color: #111;
display: flex;
}
.wrapper {
padding: 20px;
height: 100%;
}
.glass-sidebar {
width: 260px;
height: 100%;
background: rgba(255, 255, 255, 0.05);
backdrop-filter: blur(16px);
-webkit-backdrop-filter: blur(16px);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 24px;
padding: 24px;
display: flex;
flex-direction: column;
box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}
.logo {
display: flex;
align-items: center;
gap: 12px;
font-size: 1.4rem;
font-weight: 700;
color: #fff;
margin-bottom: 40px;
padding: 0 12px;
}
.logo-icon {
width: 24px;
height: 24px;
background: #60a5fa;
border-radius: 6px;
box-shadow: 0 0 10px rgba(96, 165, 250, 0.5);
}
.nav-menu {
display: flex;
flex-direction: column;
gap: 8px;
flex: 1;
}
.nav-item {
text-decoration: none;
color: #94a3b8;
padding: 12px 16px;
border-radius: 12px;
font-weight: 500;
display: flex;
align-items: center;
gap: 14px;
transition: all 0.2s ease;
position: relative;
overflow: hidden;
}
.nav-item svg {
width: 20px;
height: 20px;
}
.nav-item:hover {
background: rgba(255, 255, 255, 0.08);
color: #e2e8f0;
}
.nav-item.active {
background: rgba(59, 130, 246, 0.15);
color: #60a5fa;
border: 1px solid rgba(59, 130, 246, 0.2);
}
.badge {
margin-left: auto;
background: #ef4444;
color: white;
font-size: 0.75rem;
padding: 2px 6px;
border-radius: 10px;
font-weight: 600;
}
.user-profile {
margin-top: auto;
display: flex;
align-items: center;
gap: 12px;
padding: 12px;
background: rgba(0, 0, 0, 0.2);
border-radius: 16px;
border: 1px solid rgba(255, 255, 255, 0.05);
}
.user-profile img {
border-radius: 10px;
width: 40px;
height: 40px;
}
.user-info {
display: flex;
flex-direction: column;
}
.user-info .name {
color: #fff;
font-size: 0.9rem;
font-weight: 500;
}
.user-info .role {
color: #64748b;
font-size: 0.8rem;
}