body { margin: 0; padding: 0; background: #c0c0c0; } main { width: 65rem; margin-left: 240px; margin-bottom: 60px; } aside { width: 200px; position: fixed; top: 0; bottom: 0; padding: 8px; display: flex; align-items: stretch; } aside .tree-view { width: 100%; /* TODO: Move scrollbar into the recessed region? */ overflow-y: scroll; } h1 { margin: 12px 0; } hr { margin: 0; border: none; width: 400px; height: 1px; opacity: 0.5; background: linear-gradient( to right, red 20%, yellow 20%, yellow 36%, green 36%, green 60%, blue 60%, blue 100% ); } h2 { margin-bottom: 12px; } h3 { font-size: 1.6rem; } h3, h4 { /* Swap the margin for a top-padding so linking to this section results in a better scroll position */ padding-top: 20px; margin-top: 0; display: block; flex: 0 0 180px; } p { max-width: 50rem; line-height: 1.5; } .component { display: flex; margin-top: 24px; } blockquote { margin: 0 0 20px; padding: 20px; background: #dfdfdf; } blockquote footer { margin: 12px 0 0 12px; } .example { margin: 16px 0; padding: 12px 24px; border-left: 1px solid #808080; } details { margin-top: 12px; } summary { user-select: none; cursor: pointer; display: inline; } details[open] summary { margin-bottom: 8px; } button.focused { outline: 1px dotted #000000; outline-offset: -4px; } button.active { box-shadow: inset -1px -1px #ffffff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px #808080; } @media (max-width: 480px) { aside { display: none; } main { box-sizing: border-box; width: 100%; margin: 0; padding: 16px; } hr { width: 100%; } p { width: 100%; } h3, h4 { flex: 0; } .component { display: block; margin-top: 24px; } pre { overflow-x: scroll; } }