.support-contact { --support-rule: #b5c1af; margin-top: 3rem; padding-top: .5rem; border-top: 1px solid var(--support-rule); scroll-margin-top: 1rem; }
.support-contact form { display: grid; gap: .55rem; align-items: start; }
.support-contact label { font-weight: 700; }
.support-contact :is(input, textarea) { width: 100%; min-width: 0; padding: .65rem .8rem; font: inherit; color: var(--deep); background: var(--white); border: 1px solid var(--moss); border-radius: .2rem; }
.support-contact textarea { resize: vertical; }
.support-contact :is(input, textarea):focus-visible { outline: 2px solid var(--moss); outline-offset: 2px; }
.support-contact button { cursor: pointer; justify-self: start; align-self: start; font: inherit; font-weight: 700; }
.support-contact button:disabled { cursor: default; opacity: .65; }
.support-status:not(:empty) { margin-top: .7rem; }
.support-status[data-error] { color: #8b2721; }
.support-receipt, .support-thread { margin-top: 1rem; padding: 1rem; border: 1px solid var(--moss); border-radius: .25rem; }
.support-receipt input { margin-top: .6rem; }
.support-thread h3 { margin: 0; }
.support-thread ol { list-style: none; padding: 0; margin: 1rem 0; }
.support-thread li { margin-bottom: .85rem; padding: .75rem; border: 1px solid var(--support-rule); background: var(--white); }
.support-thread li p { margin: .4rem 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.support-thread li time { color: var(--moss); margin-left: .6rem; font-size: .875rem; }
