main { padding-top: 1em; } #fields { display: grid; grid-template-columns: min-content auto; gap: 0.5em; label { color: var(--line-color); text-align: right; &::after { content: ":" } } } #names { display: flex; flex-direction: column; width: min-content; div { display: flex; flex-direction: row; } } #addresses { display: grid; grid-template-columns: min-content auto; row-gap: 0.5em; .label { color: var(--line-color); text-align: right; } } #text_body { margin-top: 1em; p+p { margin-top: 0.5em; } em { font-style: italic; } strong { font-weight: bold; } } .grow-wrap { display: grid; &::after { content: attr(data-replicated-value) " "; white-space: pre-wrap; visibility: hidden; } &>textarea { resize: none; overflow: hidden; } &>textarea, &::after { /* Identical styling required!! */ margin-top: 1em; width: 100%; /* Place on top of each other */ grid-area: 1 / 1 / 2 / 2; } } .hint { font-size: small; } code { font-family: monospace; }