.vpf-finder { margin: 0 0 1.5em; }
.vpf-finder .vpf-title { font-weight: 600; font-size: 1.1em; margin-bottom: .6em; }
.vpf-finder .vpf-fields { display: flex; gap: .6em; flex-wrap: wrap; align-items: flex-end; }
.vpf-finder .vpf-field { display: flex; flex-direction: column; gap: .25em; flex: 1 1 160px; min-width: 0; margin: 0; }
.vpf-finder .vpf-field > span { font-size: .85em; opacity: .8; }
.vpf-finder select { width: 100%; max-width: 100%; }
.vpf-finder select:disabled { opacity: .55; }
.vpf-finder .vpf-submit { flex: 0 0 auto; white-space: nowrap; }
.vpf-finder .vpf-submit:disabled { opacity: .5; cursor: not-allowed; }
.vpf-finder.vpf-vertical .vpf-fields { flex-direction: column; align-items: stretch; }
.vpf-finder.vpf-vertical .vpf-field { flex: 0 0 auto; }
.vpf-finder.vpf-loading { cursor: progress; }
.vpf-finder.vpf-loading .vpf-fields { opacity: .75; }
@media (max-width: 600px) { .vpf-finder .vpf-field, .vpf-finder .vpf-submit { flex: 1 1 100%; } }

.vpf-active .vpf-clear { margin-left: .5em; text-decoration: underline; }

.vpf-badge { display: inline-block; margin: 0 0 1em; padding: .4em .8em; border-radius: 4px; font-weight: 600; }
.vpf-badge-yes { background: #e7f6ea; color: #1e6b2f; }
.vpf-badge-yes::before { content: "\2713\00a0"; }
.vpf-badge-no { background: #fdecea; color: #9b1c1c; }
.vpf-badge-no::before { content: "\2715\00a0"; }

.vpf-fitment details { border-bottom: 1px solid rgba(0,0,0,.08); padding: .45em 0; }
.vpf-fitment summary { cursor: pointer; }
.vpf-fitment ul { margin: .4em 0 .4em 1.2em; font-size: .92em; }
.vpf-fitment .vpf-years { font-variant-numeric: tabular-nums; opacity: .75; margin-right: .4em; }
.vpf-fitment .vpf-count { opacity: .6; font-size: .9em; }
