:root { color-scheme: light dark; --line: #8884; --warn: #b3261e; }
body { font: 16px/1.5 system-ui, sans-serif; max-width: 52rem; margin: 0 auto; padding: 1rem; }
header { display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px solid var(--line); }
h1 { font-size: 1.25rem; } h2 { font-size: 1rem; margin: 0 0 .5rem; }
section { border: 1px solid var(--line); border-radius: .5rem; padding: 1rem; margin: 1rem 0; }
button { font: inherit; padding: .5rem .9rem; border-radius: .4rem; border: 1px solid var(--line); cursor: pointer; }
button.warn { border-color: var(--warn); color: var(--warn); } button.quiet { border: none; text-decoration: underline; background: none; }
input { font: inherit; padding: .4rem; width: 16rem; max-width: 100%; }
table { width: 100%; border-collapse: collapse; } th, td { text-align: left; padding: .3rem .5rem; border-bottom: 1px solid var(--line); vertical-align: top; }
pre { white-space: pre-wrap; overflow-wrap: anywhere; background: #8881; padding: .75rem; border-radius: .4rem; max-height: 20rem; overflow: auto; }
.hint { color: #888; font-size: .875rem; } #message { padding: .5rem .75rem; border-left: 4px solid var(--warn); }
.approval { border-top: 1px solid var(--line); padding-top: .75rem; margin-top: .75rem; }
.approval:first-child { border-top: none; padding-top: 0; margin-top: 0; }
