:root { --fg: #1a2b1a; --muted: #5a6b5a; --line: #d6e0d6; --accent: #1f6b3a; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
       color: var(--fg); background: #f6faf6; }
.wrap { max-width: 760px; margin: 2rem auto; padding: 0 1rem; }
h1 { margin: 0 0 .25rem; font-size: 1.5rem; }
.sub { color: var(--muted); margin: 0 0 1.25rem; }
.search-form { display: flex; gap: 1rem; flex-wrap: wrap; align-items: end; }
.search-form label { display: flex; flex-direction: column; gap: .25rem; font-size: .85rem; color: var(--muted); }
.search-form select, .search-form input { padding: .45rem .5rem; border: 1px solid var(--line); border-radius: 6px; font-size: 1rem; }
button { padding: .5rem 1rem; border: 0; border-radius: 6px; background: var(--accent); color: #fff; font-size: 1rem; cursor: pointer; }
table.results { width: 100%; border-collapse: collapse; margin-top: .5rem; background: #fff; }
table.results th, table.results td { text-align: left; padding: .5rem .6rem; border-bottom: 1px solid var(--line); }
table.results th { font-size: .78rem; text-transform: uppercase; letter-spacing: .03em; color: var(--muted); }
.empty { color: var(--muted); }
a { color: var(--accent); }
