.comments { --avatar-size: 2.33em; --comment-padding-block: 0.65lh; --comment-padding-inline: 2ch; max-inline-size: 120ch; row-gap: var(--comment-padding-block); > :first-child { margin-block-start: var(--comment-padding-block); } } .comment { max-inline-size: 66ch; margin-block: calc(var(--comment-padding-block) * 0.3); margin-inline: 0 auto; position: relative; } .comment__avatar { margin-block-start: calc(var(--comment-padding-block) * 0.5); margin-inline: auto calc(var(--comment-padding-inline) * -0.75); z-index: 0; .comment--mine & { margin-inline: calc(var(--comment-padding-inline) * -0.75) auto; } } .comment__body { p { &:first-child { margin-block-start: 0; } &:last-child { margin-block-end: 0; } } } .comment__content { margin-inline: auto var(--avatar-size); padding: var(--comment-padding-block) var(--comment-padding-inline); .comment--mine & { margin-inline: var(--avatar-size) auto; } .comment:has(+ .event-summary) & { padding-block-end: calc(var(--comment-padding-block) * 1.5); } } .comment__input { --input-border-color: var(--color-subtle); line-height: inherit; min-block-size: calc(9lh + (2 * var(--comment-padding-block))); min-inline-size: 100%; padding-block: var(--comment-padding-block); padding-inline: calc(var(--comment-padding-inline) + calc((1lh - 1ex) / 2)); @supports (field-sizing: content) { field-sizing: content; min-block-size: calc(9lh + (2 * var(--comment-padding-block))); } } .comment--mine { flex-direction: row-reverse; margin-inline: auto 0; .comment__author { flex-direction: row-reverse; } } .comment__submit { position: absolute; inset: auto 0.5em 0.5em auto; } .comment__timestamp { color: var(--color-ink); opacity: 0.5; } .event-summary { color: var(--bubble-color); font-size: 0.875em; font-weight: normal; gap: 0.5ch; opacity: 0.7; padding: calc(var(--comment-padding-block) * 0.3) var(--comment-padding-inline); }