Files
lmnp-organizer/frontend/src/app/components/workspace-navigation/workspace-navigation.css
T

157 lines
3.2 KiB
CSS

:host {
display: block;
}
.app-navigation {
position: fixed;
z-index: 20;
right: 0;
bottom: 0;
left: 0;
height: calc(72px + env(safe-area-inset-bottom));
padding: 6px 10px env(safe-area-inset-bottom);
border-top: 1px solid var(--border);
background: color-mix(in srgb, var(--surface) 94%, transparent);
box-shadow: 0 -10px 30px rgba(25, 40, 35, 0.06);
backdrop-filter: blur(18px);
}
.sidebar-brand,
.sidebar-user {
display: none;
}
.navigation-items {
display: grid;
height: 100%;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 4px;
}
.navigation-item.mat-mdc-button {
--mdc-text-button-label-text-color: var(--text-muted);
min-width: 0;
height: 60px;
border-radius: 14px;
padding: 5px 4px;
font-weight: 650;
letter-spacing: 0;
}
.navigation-item .mat-mdc-button-touch-target {
height: 60px;
}
.navigation-item svg {
width: 21px;
height: 21px;
margin: 0 auto 4px;
}
.navigation-item span {
display: block;
overflow: hidden;
font-size: 0.66rem;
text-overflow: ellipsis;
white-space: nowrap;
}
.navigation-item.active {
--mdc-text-button-label-text-color: var(--accent);
background: var(--surface-accent);
}
@media (min-width: 960px) {
.app-navigation {
top: 0;
right: auto;
bottom: auto;
width: 256px;
height: 100vh;
padding: 26px 18px;
border-top: 0;
border-right: 1px solid var(--border);
background: var(--surface);
box-shadow: none;
backdrop-filter: none;
}
.sidebar-brand {
display: flex;
align-items: center;
gap: 12px;
padding: 0 8px 32px;
}
.sidebar-brand > div {
display: flex;
flex-direction: column;
font-size: 0.86rem;
line-height: 1.15;
}
.sidebar-brand strong {
font-size: 1rem;
}
.sidebar-brand span:last-child {
color: var(--text-muted);
}
.navigation-items {
display: flex;
height: auto;
flex-direction: column;
gap: 6px;
}
.navigation-item.mat-mdc-button {
width: 100%;
height: 48px;
justify-content: flex-start;
border-radius: 13px;
padding: 0 14px;
}
.navigation-item .mat-mdc-button-touch-target {
height: 48px;
}
.navigation-item .mdc-button__label {
display: flex;
align-items: center;
gap: 12px;
}
.navigation-item svg {
width: 20px;
height: 20px;
margin: 0;
}
.navigation-item span {
font-size: 0.86rem;
}
.sidebar-user {
position: absolute;
right: 18px;
bottom: 24px;
left: 18px;
display: grid;
grid-template-columns: 36px minmax(0, 1fr);
gap: 10px;
padding: 14px;
border: 1px solid var(--border);
border-radius: 16px;
background: var(--surface-soft);
}
.sidebar-user > div:nth-child(2) {
display: flex;
min-width: 0;
flex-direction: column;
justify-content: center;
}
.sidebar-user strong,
.sidebar-user span {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.sidebar-user strong {
font-size: 0.82rem;
}
.sidebar-user span {
color: var(--text-muted);
font-size: 0.69rem;
}
.logout-action.mat-mdc-button {
--mdc-text-button-label-text-color: var(--text-muted);
grid-column: 1 / -1;
height: 34px;
border-top: 1px solid var(--border);
border-radius: 0;
font-size: 0.75rem;
}
}