body { margin: 0; padding: 0; font-family: sans-serif; } .xP { height: 100vh; display: flex; flex-direction: column; overflow: hidden; } .title, .status { background: #f8f8f8; border-bottom: 1px solid #ccc; padding: .05rem .3rem; } .middle { flex: auto; display: flex; flex-direction: row; overflow: hidden; } .list { overflow-y: auto; border-right: 1px solid #ccc; min-width: 10rem; } .item { padding: .05rem .3rem; cursor: default; } .item.active { font-weight: bold; } /* Only Firefox currently supports align-content: safe end, thus this. */ .buffer-container { flex: auto; display: flex; flex-direction: column; overflow: hidden; } .filler { flex: auto; } .buffer { display: grid; grid-template-columns: max-content auto; overflow-y: auto; } .date { padding: .3rem; grid-column: span 2; font-weight: bold; } .time { padding: .1rem .3rem; background: #f8f8f8; color: #bbb; border-right: 1px solid #ccc; } .mark { padding-right: .3rem; text-align: center; display: inline-block; min-width: 2rem; } .mark.error { color: red; } .mark.join { color: green; } .mark.part { color: red; } .mark.action { color: darkred; } .content { padding: .1rem .3rem; white-space: pre-wrap; } .content .b { font-weight: bold; } .content .i { font-style: italic; } .content .u { text-decoration: underline; } .content .s { text-decoration: line-through; } .content .m { font-family: monospace; } .status { border-top: 2px solid #fff; } textarea { padding: .05rem .3rem; font-family: inherit; }