:root { color-scheme: light dark; font: 16px system-ui, sans-serif; }
body { margin: 0; }
main { max-width: 44rem; margin: auto; padding: 2rem 1rem; }
header { border-bottom: 1px solid GrayText; margin-bottom: 1rem; }
header p:first-child { font-weight: 800; letter-spacing: .18em; }
h1 { margin: 0; font-size: 2.8rem; }
label, summary { display: block; margin: .7rem 0 .3rem; font-weight: 600; }
summary { display: list-item; cursor: pointer; }
input, textarea, select, button { font: inherit; padding: .55rem; border-radius: .5rem; }
input, textarea { width: 100%; box-sizing: border-box; }
.actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .5rem; }
#messages article { margin-top: .75rem; padding: .8rem; border: 1px solid GrayText; border-radius: .7rem; }
#messages p { white-space: pre-wrap; overflow-wrap: anywhere; margin-bottom: 0; }
#status { min-height: 1.3em; }
[hidden] { display: none !important; }
.actions { align-items: center; }
button { cursor: pointer; }
button:disabled { cursor: default; }
header p:last-child { max-width: 36rem; }
