* { box-sizing: border-box; }
:root { font-family: "Inter", system-ui, sans-serif; color: #18272b; background: #eef3f2; line-height: 1.55; }
body { margin: 0; }
header { background: #122a2a; color: #fff; }
.bar { max-width: 72rem; margin: auto; padding: 1rem clamp(1rem, 4vw, 3rem); display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
header a { color: #fff; }
.brand { font-size: 1.2rem; font-weight: 750; text-decoration: none; }
main { max-width: 37rem; margin: clamp(1.25rem, 7vw, 5rem) auto; width: calc(100% - 2rem); background: #fff; border: 1px solid #d6e1dd; border-radius: 1rem; padding: clamp(1.1rem, 4vw, 2.5rem); }
main.wide { max-width: 70rem; }
h1 { line-height: 1.15; margin: 0 0 1.4rem; font-size: clamp(1.75rem, 5vw, 2.55rem); letter-spacing: -.035em; }
form { display: grid; gap: 1rem; }
label { font-weight: 650; }
input:not([type=file]) { display: block; width: 100%; margin-top: .35rem; border: 1px solid #839994; border-radius: .45rem; padding: .65rem .75rem; font: inherit; }
button, input::file-selector-button { background: #136454; color: #fff; font: inherit; font-weight: 700; border: 0; border-radius: .5rem; padding: .6rem .9rem; cursor: pointer; }
button:disabled { opacity: .65; cursor: wait; }
button.quiet { background: #294844; }
:focus-visible { outline: 3px solid #a65317; outline-offset: 3px; }
#drop { border: 2px dashed #65978a; background: #edf8f4; border-radius: .75rem; padding: 1.5rem; text-align: center; }
#drop.active { background: #d5f2e8; border-color: #136454; }
#drop p { margin: 0 0 1rem; }
.picker { display: grid; justify-items: center; gap: .5rem; }
.picker input { width: 100%; max-width: 20rem; font: inherit; }
.muted { color: #485f5a; }
#results { overflow-wrap: anywhere; padding-left: 1.2rem; }
#status:empty, #results:empty { display: none; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; text-align: left; }
td, th { border-bottom: 1px solid #dae4e1; padding: .75rem .65rem; }
td:first-child { min-width: 12rem; overflow-wrap: anywhere; }
td a { color: #085948; font-weight: 700; }
.actions { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: 1rem; }
[hidden] { display: none !important; }
