client/app/assets/less/inc/sidebar.less (213 lines of code) (raw):

#sidebar { background-color: @sidebar; position: fixed; left: 0; top: @header-height; z-index: 9; height: ~"calc(100% - 62px)"; @media (min-width: (@screen-lg-min + 80px)), (max-width: (@screen-sm-min)) { width: @sidebar-left-width; overflow: auto; } @media (min-width: @screen-sm-min) and (max-width: (@screen-md-max + 80px)) { &:not(.toggled) { width: @sidebar-left-mid-width; overflow: visible; } &.toggled { width: @sidebar-left-width; overflow: auto; } } @media (max-width: @screen-sm-min) { display: none; &.toggled { display: block; z-index: 12; } } } /* -------------------------------------------------------- Profile Menu -----------------------------------------------------------*/ .sms-profile { margin: 12px 0 10px; & > a { padding: 15px; display: block; color: @color-dark; & > img { width: 28px; height: 28px; border-radius: 50%; float: left; margin-right: 10px; margin-top: 3px; } } } /* -------------------------------------------------------- Sidebar Menu -----------------------------------------------------------*/ .side-menu { list-style: none; padding: 0; a { color: @color-dark; } & > li { width: 100%; display: block; & > a { display: block; padding: 9px 10px 9px 16px; position: relative; white-space: nowrap; .transition(color); & > .zmdi { font-size: 13px; width: 28px; height: 28px; border-radius: 50%; background-color: #000; line-height: 29px; margin-right: 7px; text-align: center; } .label { position: absolute; top: 15px; right: 12px; } } &.active > a, &:hover > a { color: #fff; } &.active > a { background: @sidebar-active-bg; .zmdi { background: #2C313A; color: #fff; } } } } .sm-sub { position: relative; &:not(.active) { & > ul { display: none; } } & > ul { position: relative; width: 100%; padding: 0 0 0 27px; background: darken(@sidebar, 1.5%); margin-bottom: 0; border: 0; list-style: none; &:before { content: ""; height: 100%; width: 1px; position: absolute; background: #1f2229; left: 30px; top: 0; } & > li { & > a { padding: 7px 18px 7px 28px; font-size: 12px; display: block; position: relative; white-space: nowrap; .transition(color); &:hover { color: #fff; } &:before { content: ""; width: 8px; height: 1px; background: #22252d; position: absolute; left: 4px; top: 14px; } } &.active > a { color: #fff; } &:first-child > a { &:before { top: 20px; } padding-top: 13px; } &:last-child > a { padding-bottom: 13px; } } } } /* -------------------------------------------------------- Sidebar for mid size screens -----------------------------------------------------------*/ @media (min-width: @screen-sm-min) and (max-width: (@screen-md-max + 80px)) { #sidebar:not(.toggled) { .side-menu > li { & > a { & > span { position: absolute; left: @sidebar-left-mid-width; background-color: @sidebar-active-bg; width: 180px; padding: 14px 18px; display: none; text-transform: uppercase; .animated(fadeIn, 300ms); } .label { display: none; } } &.sms-bottom > a > span { bottom: 0; } &:not(.sms-bottom) > a > span { top: 0; } &:hover { & a > span { display: block; } } } .sm-sub { & > ul { display: none !important; position: absolute; left: @sidebar-left-mid-width; width: 180px; padding-left: 0; .animated(fadeIn, 300ms); &:before { display: none; } & > li > a { padding-left: 18px; &:before { display: none; } } } &:not(.sms-bottom) > ul { top: 46px; border-top: 1px solid lighten(@sidebar, 5%); } &.sms-bottom > ul { bottom: 46px; border-bottom: 1px solid lighten(@sidebar, 5%); } &:hover { & > ul { display: block !important; } } } } }