/*https://www.color-hex.com/color-palette/23357*/ body { margin: 0; background-color: #555; } #app { display: flex; flex-direction: column; height: 100vh; } .heartbeats { display: flex; flex: 10px 0 0; } .heartbeat { /*background-color: #4f5d75;*/ background-color: #2d3142; height: 10px; flex: 50% 0 0; /*outline: 1px solid #4f5d75;*/ outline: 1px solid #2d3142; z-index: 10; } .heartbeat.active { background-color: #bfc0c0; outline: 1px solid #bfc0c0; } .statusblocks { display: flex; flex-wrap: wrap; flex: 1; } .statusblock { flex: 25% 0 0; background-color: #BE452F; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 15vw; outline: 1px solid rgba(181, 165, 150, 0.40); font-weight: bold; } .statusblock.closed { background-color: #1B4D3E; } .statusblock div { } .statusrows { width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(8, 1fr); grid-column-gap: 0px; grid-row-gap: 0px; position: absolute; top: 10px; right: 0; bottom: 0; left: 0; } .statusrow { /*display: flex;*/ background-color: #BE452F; color: #fff; font-weight: bold; position: relative; } .statusrow.closed { background-color: #1B4D3E; } .statusrow > div { /*flex: 33%;*/ border-bottom: 1px solid #555; text-align: center; padding: 10px 20px; position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: flex; justify-content: center; align-items: center; } .statusrow > div > div { }