:root { --pico-font-size: 15px; }
header nav .brand { text-decoration: none; }
form.inline { margin: 0; display: inline; }
form.inline button { margin: 0; padding: .25rem .75rem; font-size: .85rem; }
.filters { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-bottom: 1.25rem; }
.filters fieldset, .filters select { margin: 0; width: auto; }
.filters input[type="date"] { margin: 0; }
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: .75rem; margin-bottom: 1.25rem; }
.cards article { margin: 0; padding: .9rem 1rem; }
.cards .value { font-size: 1.6rem; font-weight: 700; line-height: 1.2; }
.cards .label { color: var(--pico-muted-color); font-size: .8rem; }
.cards .delta-pos { color: #1a7f37; } .cards .delta-neg { color: #b42318; }
.table-wrap { overflow-x: auto; }
table.data { font-size: .9rem; white-space: nowrap; }
table.data th a { text-decoration: none; }
table.data th a.active { text-decoration: underline; }
table.data td.num, table.data th.num { text-align: right; font-variant-numeric: tabular-nums; }
.muted { color: var(--pico-muted-color); }
.toolbar { display: flex; gap: .75rem; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-bottom: .75rem; }
.toolbar h2 { margin: 0; }
.chart-wrap { position: relative; height: 320px; margin-bottom: 1.5rem; }
.funnel { display: grid; grid-template-columns: repeat(4, 1fr); gap: .5rem; margin-bottom: 1.25rem; }
.funnel article { margin: 0; text-align: center; padding: .75rem; }
.funnel .value { font-size: 1.5rem; font-weight: 700; }
.funnel .cr { font-size: .8rem; color: var(--pico-muted-color); }
.inline-form { margin: 0; } .inline-form fieldset { margin: 0; }
.login { max-width: 560px; margin-top: 10vh; }
code.copy { cursor: pointer; }
button.small { padding: .2rem .6rem; font-size: .8rem; margin: 0; }
.pagination { display: flex; gap: .5rem; align-items: center; }
@media (max-width: 720px) { .funnel { grid-template-columns: repeat(2, 1fr); } }
