@use "@core-scss/template/placeholders" as *; @use "vuetify/lib/styles/tools/elevation" as elevation; @use "@configured-variables" as variables; $divider-gap: 0.75rem; // vertical nav app title .layout-nav-type-vertical { .layout-vertical-nav { @include elevation.elevation(3); // 👉 Nav header .nav-header { margin-block-start: variables.$vertical-nav-header-margin-top; .app-title-wrapper { h1 { font-size: 28px; } } } .nav-items { padding-block-start: 0.25rem; // â„šī¸ Reduce with width of the thumb in vertical nav menu so we can clearly see active indicator .ps__thumb-y { inline-size: 0.125rem; } .ps__rail-y.ps--clicking .ps__thumb-y, .ps__rail-y:focus > .ps__thumb-y, .ps__rail-y:hover > .ps__thumb-y { inline-size: 0.375rem; } } // nav-section-title's line .title-text { display: flex; flex-wrap: nowrap; align-items: center; justify-content: flex-start; column-gap: $divider-gap; &::before { flex: 0 1 calc(variables.$vertical-nav-horizontal-padding-start - $divider-gap); border-block-end: 1px solid rgba(var(--v-border-color), var(--v-border-opacity)); content: ""; margin-inline-start: -#{variables.$vertical-nav-horizontal-padding-start}; } } // Active status indicator .nav-link .router-link-exact-active, .nav-group.active:not(.nav-group .nav-group) > :first-child { &::after { position: absolute; background-color: rgb(var(--v-global-theme-primary)); block-size: 2.625rem; border-end-start-radius: 0.375rem; border-start-start-radius: 0.375rem; content: ""; inline-size: 0.25rem; inset-inline-end: - variables.$vertical-nav-horizontal-spacing; } } // 👉 Vertical nav link .nav-group { .nav-link { > .router-link-exact-active { @extend %nav-link-nested-active; // active status indicator removed &::after { content: none; } } } // Active & open states for nav group label &.open:not(.active), .nav-group.active { > :first-child { &.nav-group-label { svg, .nav-item-title { color: rgba(var(--v-theme-on-surface), var(--v-high-emphasis-opacity)); } } } } // nav-group active &.active:not(.nav-group .nav-group) { > :first-child { @extend %vertical-nav-group-active; } } } } }