.full-width { width: 100%; } .border { border: .15rem solid var(--bd-color); } .float-left { float: left; } .float-right { float: right ; } table { border-collapse: collapse; } table, th, td { border: var(--bd-width) var(--bd-style) var(--bd-color); } h2:after, h3:after { display : block ; content: ''; margin-top: 0.2rem; border-bottom: var(--bd-width) var(--bd-style) var(--bd-color); } :root { --bg-color: ghostwhite; --fg-color: black; --bd-color: gray; --bd-width: .15rem; --bd-style: solid; --hv-fg-color: white; --hv-bg-color: silver; --header-width: 6rem; } html { background: var(--bg-color); color: var(--fg-color); list-style-position: inside; } body { top: 0; left: 0; margin: 0; display: flex; position: fixed; width: 100%; height: 100%; /*gap: 1rem;*/ } @media screen and (max-width: 480px) { body { flex-direction: column; position: static; } } header { max-width: fit-content; display: flex; flex-direction: column; height: 100%; border-right: var(--bd-width) var(--bd-style) var(--bd-color); overflow-y: auto; overflow-x: hidden; flex-shrink: 1; padding-right: 1rem; resize: horizontal; } header > nav { padding-left: .25rem; padding-top: 1rem; padding-bottom: 1rem; border-bottom: var(--bd-width) var(--bd-style) var(--bd-color); } nav { padding-left: 1rem; width: fit-content; display: flex; flex-direction: column; } main { /*margin-left: calc(var(--header-width) + 1rem);*/ padding-left: 1rem; padding: .5rem; flex-shrink: 100; overflow-y: auto; }