// ─── Shared List Navigation Styles ──────────────────────────────────────────── // Plain CSS rules (not a mixin) for sidebar and context-panel list items, so no // alias is needed. Consumers live in several libraries at different depths; // pick the relative @use path from the consuming stylesheet, for example: // @use '../../../../../../ui/styles/nav-list'; .nav-list { flex: 1; overflow-y: auto; padding: 0 8px 12px; display: flex; flex-direction: column; gap: 2px; } .nav-item { position: relative; width: 100%; display: flex; align-items: center; gap: 10px; padding: 6px 4px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--mat-sys-on-surface-variant); text-align: left; text-decoration: none; cursor: pointer; font-size: 0.875rem; font-weight: 500; box-sizing: border-box; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.18s ease, transform 0.18s ease; mat-icon { font-size: 18px; width: 18px; height: 18px; flex-shrink: 0; } span, .nav-item-label { line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; min-width: 0; } .nav-item-meta { font-size: 0.8rem; min-width: 2ch; text-align: right; flex-shrink: 0; color: var(--mat-sys-on-surface-variant); opacity: 0.7; } &:hover:not(.selected):not(.active):not(.is-active) { background: var(--app-selection-surface); color: var(--mat-sys-on-surface); } &.selected, &.active, &.is-active { background: linear-gradient( 135deg, var(--app-selection-surface-strong), var(--app-selection-surface) ) !important; color: var(--app-selection-color) !important; border-color: var(--app-selection-border) !important; font-weight: 600; box-shadow: inset 0 0 0 1px var(--app-selection-border), 0 12px 20px -18px var(--app-selection-glow); transform: translateY(-1px); * { color: var(--app-selection-color) !important; } .nav-item-meta { color: var(--app-selection-color) !important; opacity: 0.92; } /* &::before { content: ''; position: absolute; inset-inline-start: 2px; top: 7px; bottom: 7px; width: 2px; border-radius: 999px; background: var(--app-selection-color); box-shadow: 0 0 10px var(--app-selection-glow); } */ } }