frontend_projekt/css/sidebar.css

170 lines
2.7 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
Sidebar styles for OnlyPrompt
- modern soft card look
- responsive: full sidebar on desktop, icon-only on smaller screens
- logout button appears directly after the last menu item with separator line
*/
.sidebar-shell {
width: 100%;
height: 100%;
background: #ffffff;
border-right: 1px solid #eef2f7;
padding: 24px 16px;
display: flex;
flex-direction: column;
}
/* Logo */
.sidebar-logo {
display: flex;
align-items: center;
justify-content: center;
min-height: 72px;
margin-bottom: 32px;
padding: 6px 8px;
}
.sidebar-logo-full {
max-width: 170px;
width: 100%;
height: auto;
display: block;
}
.sidebar-logo-icon {
width: 36px;
height: 36px;
display: none;
}
/* Navigation normal block layout, no flex grow */
.sidebar {
/* No flex:1 keeps navigation at its natural height */
}
.sidebar ul {
list-style: none;
margin: 0;
padding: 0;
}
.sidebar li {
margin-bottom: 8px;
}
.sidebar a {
display: flex;
align-items: center;
gap: 14px;
text-decoration: none;
color: #475569;
font-size: 1rem;
font-weight: 600;
padding: 12px 16px;
transition: background 0.2s ease, color 0.2s ease;
}
.sidebar a:hover {
background: #f1f5f9;
}
.sidebar i {
font-size: 1.3rem;
flex-shrink: 0;
}
.icon-blue {
color: #3b82f6 !important;
}
.icon-purple {
color: #8b5cf6 !important;
}
.icon-pink {
color: #ec4899 !important;
}
/* Active item */
.sidebar a.active {
background: #eef2ff;
color: #2563eb;
border-left: 3px solid #3b82f6;
}
/* Bottom logout area directly after the menu, with separator line */
.sidebar-bottom {
margin-top: 16px; /* Small gap above the separator */
border-top: 1px solid #eef2f7;
padding-top: 16px;
}
.sidebar-logout {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 16px;
text-decoration: none;
color: #64748b;
font-weight: 600;
transition: background 0.2s ease;
}
.sidebar-logout:hover {
background: #f1f5f9;
}
.logout-left {
display: flex;
align-items: center;
gap: 12px;
}
.sidebar-logout i {
font-size: 1.2rem;
}
.logout-arrow {
color: #cbd5e1;
}
/* Responsive: icon-only sidebar */
@media (max-width: 900px) {
.sidebar-shell {
padding-left: 12px;
padding-right: 12px;
}
.sidebar-logo-full {
display: none;
}
.sidebar-logo-icon {
display: block;
}
.sidebar .nav-text,
.sidebar-logout .nav-text,
.logout-arrow {
display: none;
}
.sidebar a,
.sidebar-logout {
justify-content: center;
padding: 12px;
}
.sidebar a.active {
border-left: none;
border-right: 3px solid #3b82f6;
}
}
@media (max-width: 700px) {
.sidebar a,
.sidebar-logout {
padding: 10px;
}
}