src/css/Sidebar.scss (135 lines of code) (raw):

#sidebar { border-radius: 4px; border: 1px solid $sidebar-border-color; } .Sidebar__container { font-size: $font-size-small; } .Sidebar__content { overflow-y: scroll; } .Sidebar__section { display: flex; flex-direction: column; background-color: white; max-height: 100%; overflow: hidden; font-size: $font-size-base; } .Sidebar__section--is-closed { background: none; border: 0; } .Sidebar__container + .Sidebar__container { margin-top: $gutter-width; } .Sidebar__header-container { position: relative; padding: $gutter-width; & + & { border-top: 1px solid $sidebar-border-color; } } .Sidebar__header-bottom { display: flex; margin-top: $gutter-width; } .Sidebar__header-contact { margin-left: auto; font-size: $font-size-small; max-width: 130px; } .Sidebar__header { display: flex; align-items: center; position: relative; flex-shrink: 0.2; font-weight: bold; justify-content: space-between; } .Sidebar__header-button-container { position: relative; } .Sidebar__header-change-indicator { position: absolute; right: -4px; bottom: 22px; width: 10px; height: 10px; background-image: radial-gradient(closest-corner at 4px 4px, $match-color 0%, $sidebar-highlight-color 100%); border-radius: 50%; display: inline-block; z-index: 1; } .Sidebar__filter-toggle { display: inline-block; padding: 1px 2px; vertical-align: middle; border-radius: $base-border-radius; min-width: 30px; font-weight: bold; height: fit-content; margin-right: calc($gutter-width / 2); font-size: $font-size-base; cursor: pointer; &:focus { outline: none; } &:disabled { cursor: not-allowed; } } .Sidebar__header-sort { font-weight: normal; } .Sidebar__list { margin: 0; padding: 0; list-style: none; } .Sidebar__awaiting-match { padding: $gutter-width; color: gray; } .Sidebar__list { margin: 0; padding: 0; list-style: none; } .Sidebar__list-item + .Sidebar__list-item { border-top: 1px solid $sidebar-border-color; } .LoadingBar { position: absolute; height: 3px; left: 0; bottom: 0; background-color: $sidebar-highlight-color; width: 100%; transition: width 0.3s, opacity 0.3s; } .LoadingBar__animated-background { animation-duration: 1.75s; animation-fill-mode: forwards; animation-iteration-count: infinite; animation-name: placeHolderShimmer; animation-timing-function: linear; background: linear-gradient( to right, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 0.5) 15%, rgba(255, 255, 255, 0) 20% ); background-size: 800px 104px; height: 100%; position: relative; } @keyframes placeHolderShimmer { 0% { background-position: -200px 0; } 100% { background-position: 400px 0; } }