:root { color-scheme: light dark; }
body { margin: 0; font: 16px/1.5 system-ui, sans-serif; }
main { max-width: 800px; margin: 0 auto; padding: 16px; }
main.narrow { max-width: 320px; }
header { display: flex; justify-content: space-between; align-items: center; }
h1 { font-size: 24px; margin: 8px 0 16px; }
label { display: block; margin-bottom: 12px; }
label input { display: block; width: 100%; box-sizing: border-box; padding: 8px; font: inherit; }
button { padding: 8px 16px; font: inherit; cursor: pointer; }
.error { color: #d33; }
#upload-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
#file-input { flex: 1; min-width: 0; }
progress { width: 100%; margin-top: 12px; }
table { width: 100%; border-collapse: collapse; margin-top: 8px; }
th, td { padding: 8px 8px 8px 0; text-align: left; border-bottom: 1px solid #8884; }
td:first-child { overflow-wrap: anywhere; }
td:not(:first-child), th:not(:first-child) { white-space: nowrap; }
