/* Home tool finder (hero). Loaded only on the front page when the finder module is on. */
.finder { display: grid; gap: var(--s3); width: 100%; max-width: 640px; text-align: left; }
.finder__ask { display: flex; gap: var(--s2); padding: var(--s2); border: 1px solid var(--c-border); border-radius: var(--radius-lg); background: var(--c-bg); box-shadow: var(--shadow); }
.finder__ask:focus-within { border-color: var(--c-focus); }
.finder__input { flex: 1; min-width: 0; min-height: 48px; padding: var(--s2) var(--s3); border: 0; background: none; font-size: 1.0625rem; }
.finder__input:focus-visible { outline: none; }
.finder__go { flex: 0 0 auto; }
@media (max-width: 479.98px) { .finder__go span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } .finder__go { padding-inline: var(--s3); } }
.finder__hint { margin: 0; font-size: var(--fs-sm); color: var(--c-muted); }
.finder__results { display: grid; gap: var(--s3); padding: var(--s4); border: 1px solid var(--c-border); border-radius: var(--radius-lg); background: var(--c-bg); }
.finder__results[hidden], .finder__cta[hidden], .finder__request[hidden] { display: none; }
.finder__status { margin: 0; font-weight: 600; }
.finder__list { display: grid; gap: var(--s2); }
.finder-card { position: relative; display: flex; align-items: center; gap: var(--s3); min-height: 72px; padding: var(--s3); border: 1px solid var(--c-border); border-radius: var(--radius); }
.finder-card:hover { border-color: var(--c-brand); }
.finder-card__logo { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; overflow: hidden; border-radius: var(--radius); background: var(--c-brand-soft); color: var(--c-brand-strong); font-weight: 800; font-size: 1.25rem; }
.finder-card__logo img { width: 100%; height: 100%; object-fit: contain; }
.finder-card__logo--shot img { object-fit: cover; object-position: top center; }
.finder-card__body { min-width: 0; }
.finder-card__title { margin: 0; font-weight: 700; }
.finder-card__title a { color: var(--c-text); text-decoration: none; }
.finder-card__summary { margin: 0; font-size: var(--fs-sm); color: var(--c-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-clamp: 2; overflow: hidden; }
.finder-card__meta { margin: 0; font-size: .8125rem; color: var(--c-muted); }
.finder-card--skeleton { background: linear-gradient(90deg, var(--c-surface) 25%, var(--c-border) 50%, var(--c-surface) 75%) 0 0 / 200% 100%; border-color: transparent; }
@media (prefers-reduced-motion: no-preference) { .finder-card--skeleton { animation: finder-shimmer 1.2s linear infinite; } }
@keyframes finder-shimmer { to { background-position: -200% 0; } }
.finder__cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s2) var(--s3); padding-top: var(--s3); border-top: 1px solid var(--c-border); }
.finder__cta p { margin: 0; font-size: var(--fs-sm); color: var(--c-muted); }
.finder__request { padding-top: var(--s3); border-top: 1px solid var(--c-border); }
.finder__status:focus:not(:focus-visible) { outline: none; }
