Hypertabs { display: flex flex-direction: column height: 100% /* needed to stop scroller blowing out */ nav { display: flex background: linear-gradient(to bottom, #efefef, #e5e5e5) section.tabs { flex-grow: 1 display: flex min-width: 0 div.tab { flex-grow: 1 display: flex align-items: center justify-content: space-between min-width: 3.5rem font-size: .9rem background-color: #efefef overflow: hidden padding: 0 margin-left: .6rem border: 1px gainsboro solid border-bottom: none :hover { a.close { visibility: visible } } -selected { color: #222 background-color: #fff a.link { max-width: calc(100% - 2rem) } a.close { visibility: visible } } -notify { background-color: orange; } a { color: #666 :hover { color: #0088cc text-decoration: none } } a.link { flex-grow: 1 flex-shrink: 0 overflow-x: hidden min-width: 0 max-width: calc(100% - 1.4rem) white-space: nowrap text-overflow: ellipsis padding: .5rem 0 .5rem .6rem } a.close { visibility: hidden font-family: monospace line-height: 1rem width: .9rem height: .9rem /* border-radius: 1rem */ margin-right: .3rem display: flex justify-content: center :hover { background: #aaaaaa color: #fff font-weight: 600 } } } } div.navExtra { display: flex align-items: center } } section.content { display: flex height: 100% /* needed to stop making nav weird */ div.page { flex-grow: 1 display: flex /*hack to get give Scroller context it needs */ padding-top: .2rem } } }