/* Buscador "¿Qué autoescuela me conviene?" (que-autoescuela-me-conviene.php) */
.ap-cerca-form {
    display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: flex-end;
    background: var(--ap-superficie); border: 1px solid var(--ap-borde); border-radius: var(--ap-radio);
    box-shadow: var(--ap-sombra); padding: 18px; margin-bottom: 20px;
}
.ap-cerca-form label { display: flex; flex-direction: column; gap: 4px; font-weight: 600; font-size: 14px; color: var(--ap-texto-2); margin: 0; }
.ap-cerca-form select, .ap-cerca-form input[type="text"] {
    height: 42px; border: 1px solid var(--ap-borde); border-radius: 6px; padding: 0 10px; font-size: 16px;
    background: var(--ap-superficie); color: var(--ap-texto);
}
.ap-cerca-cp { flex: 1 1 260px; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.ap-cerca-cp > label { font-weight: 600; font-size: 14px; color: var(--ap-texto-2); }
.ap-cerca-cp-fila { display: flex; gap: 8px; }
.ap-cerca-cp-fila input { flex: 1; min-width: 0; width: 100%; font-size: 20px !important; letter-spacing: .08em; }
.ap-cerca-cp-fila .btn { height: 42px; }
.ap-cerca-ubicacion {
    align-self: flex-start; background: none; border: 0; padding: 0; color: var(--ap-acento); font-size: 14px; cursor: pointer;
    display: inline-flex; align-items: center; gap: 4px;
}
.ap-cerca-ubicacion svg { width: 16px; height: 16px; }
.ap-cerca-resumen { color: var(--ap-texto-2); }
.ap-cerca-resumen svg { width: 16px; height: 16px; vertical-align: -3px; }
.ap-cerca-centros { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.ap-cerca-centros li {
    background: var(--ap-superficie); border: 1px solid var(--ap-borde); border-radius: var(--ap-radio); padding: 12px 14px;
    display: flex; flex-direction: column; gap: 2px; font-size: 14px; color: var(--ap-texto-2);
}
.ap-cerca-centros strong { color: var(--ap-texto); font-size: 16px; }
.ap-cerca-centros em { color: var(--ap-verde); font-style: normal; font-weight: 600; font-size: 13px; }
.ap-cerca-centro-cercano { border-color: var(--ap-verde) !important; box-shadow: inset 3px 0 0 var(--ap-verde); }
.ap-cerca-orden { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-bottom: 10px; font-size: 14px; }
.ap-cerca-orden span { color: var(--ap-texto-3); }
.ap-cerca-orden a { padding: 4px 10px; border: 1px solid var(--ap-borde); border-radius: 999px; text-decoration: none !important; }
.ap-cerca-orden a[aria-current] { background: var(--ap-acento); border-color: var(--ap-acento); color: #fff !important; }
.ap-cerca-tabla { background: var(--ap-superficie); }
.ap-cerca-tabla td, .ap-cerca-tabla th { vertical-align: middle !important; }
.ap-cerca-barra { display: inline-block; min-width: 92px; padding: 2px 6px; border-radius: 4px;
    background: linear-gradient(90deg, var(--ap-acento-suave) var(--pct), transparent var(--pct)); }
.ap-cerca-pocos { color: var(--ap-texto-3); }
.ap-cerca-separador td { background: var(--ap-superficie-2); color: var(--ap-texto-3); font-size: 13px; font-style: italic; }
.ap-cerca-nota { font-size: 13px; color: var(--ap-texto-3); }
.ap-cerca-como ol { padding-left: 20px; line-height: 1.8; }
/* tema.css trata la primera fila de las tablas antiguas (sin <thead>) como cabecera: aquí no. */
.ap .ap-cerca-tabla > tbody > tr:first-child > td {
    background: transparent; color: inherit; font-weight: 400; font-size: 14px; text-transform: none; letter-spacing: normal; border-bottom: 0;
}
.ap .ap-cerca-tabla > tbody > tr.ap-cerca-pocos > td { color: var(--ap-texto-3); }
@media (max-width: 700px) {
    .ap-cerca-form { padding: 14px; }
    .ap-cerca-cp { flex-basis: 100%; }
    .ap-cerca-form > label { flex: 1 1 140px; min-width: 0; }
    .ap-cerca-form select { width: 100%; }
    .ap-cerca-tabla th:nth-child(1), .ap-cerca-tabla td:nth-child(1),
    .ap-cerca-tabla th:nth-child(3), .ap-cerca-tabla td:nth-child(3) { display: none; }
}
.ap .ap-cerca-tabla td.text-right, .ap .ap-cerca-tabla th.text-right { text-align: right !important; }
