:root { --bar-black-color: #0c0c0d; --group-bar-size: 25px; --top-menu-height: 20px; } html, body, #content { width: 100%; height: 100%; overflow: hidden visible; background-color: #f9f9fa; } #bar { width: 100%; height: 100%; } #top-menu { width: 100%; height: var(--top-menu-height); position: sticky; top: 0; } #top-menu ul { background-color: var(--bar-black-color); color: #f9f9f2; list-style-type: none; margin: 0 0 5px 0; padding: 0; } #top-menu li { display: inline-block; width: 25px; height: var(--top-menu-height); text-align: center; padding: 0 7px 0; border-right: solid #cfcfcf 1px; } #bar-list { margin-top: 1px; background-color: var(--bar-black-color); width: 100vh; height: var(--group-bar-size); position: fixed; transform-origin: left top; transform: rotate(-90deg) translateX(-100%); } #bar-list-group { margin: 0 auto; height: 100%; } #bar-list-group li { padding-right: 10px; padding-left: 10px; margin-left: 1px; float: right; height: 100%; line-height: calc(var(--group-bar-size)*0.80); list-style: none; border-left: solid #cfcfcf 1px; } #bar-list-group li:first-child { border-right: solid #cfcfcf 1px; } .group-name { color: #f9f9f2; } .group-name.active-group { background-color: white; color: black; } .group-deletion-button { margin-right: 5px; text-align: center; vertical-align: middle; } .bar-tabs { width: calc(100% - var(--group-bar-size)); height: calc(100% - var(--top-menu-height)); margin-left: var(--group-bar-size); } .bar-tabs:not(.bar-tabs-active) { display: none; } .tabs { padding-top: 1px; width: 100%; height: 100%; } .inner-tabs { overflow-y: auto; scroll-behavior: smooth; } .tab { display: flex; align-items: center; justify-content: flex-start; border: solid #cfcfcf 1px; margin-bottom: 1px; padding-left: 2px; padding-bottom: 1px; width: 100%; height: 22px; background-color: #ffffff; scroll-margin-top: var(--top-menu-height); } .tab.active { background-color: #d4f2fc; } .tab.hover { background-color: #cccccc; } .tab.active.hover { background-color: #b2dceb; } .tab.discarded { color: grey; } .tab.being-dragged { border: dashed black 1px; } .tab-title { display: inline-block; align-self: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; width: 100%; } .tab-favicon { /* necessary to avoid flicker when hovering the close button */ flex-shrink: 0; display: inline-block; background-size: cover; background-position: center; width: 15px; height: 15px; margin-left: 5px; margin-right: 5px; vertical-align: middle; } .tab.discarded > .tab-favicon { filter: brightness(70%); } /*Huge thanks to @tobiasahlin at http://tobiasahlin.com/spinkit/ */ .three-dot-bounce { margin: 0px 6px 0px 6px; width: 15px; text-align: center; } .three-dot-bounce > div { margin-top: 0; /* this margin-bottom is used to center the three dots */ margin-bottom: 4px; padding-bottom: 0; padding-top: 0; width: 3px; height: 3px; background-color: #333; border-radius: 100%; display: inline-block; animation: sk-bouncedelay 1.4s infinite ease-in-out both; } .three-dot-bounce .three-dot-bounce-1 { animation-delay: -0.32s; } .three-dot-bounce .three-dot-bounce-2 { animation-delay: -0.16s; } @keyframes sk-bouncedelay { 0%, 80%, 100% { transform: scale(0); } 40% { transform: scale(1.0); } } .close-button-parent { width: 17px; height: 17px; margin-right: 4px; display: none; } .tab:hover > .close-button-parent { display: inline-block; } .close-button-parent:hover { background-color: #707070; } .close-button-outer { height: 15px; width: 2px; margin-left: 6.2px; margin-top: 1.2px; background-color: black; transform: rotate(45deg); z-index: 1; } .close-button-inner { height: 15px; width: 2px; background-color: black; transform: rotate(90deg); z-index: 2; } .close-button-parent:hover .close-button-outer { background-color: #cccccc; } .close-button-parent:hover .close-button-inner { background-color: #cccccc; } .shake-animation { display: inline-block; animation: .8s shake 1 alternate; } @keyframes shake { 0% { transform: skewX(-15deg); } 5% { transform: skewX(15deg); } 10% { transform: skewX(-15deg); } 15% { transform: skewX(15deg); } 20% { transform: skewX(0deg); } 100% { transform: skewX(0deg); } }