/* Buscador */
.buscar-form{
  display:flex;
  gap:10px;
  margin-top:8px;
}
.buscar-form input{
  flex:1;
  min-width:0;
  font:inherit;
  font-size:18px;
  color:var(--ink);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:999px;
  padding:14px 22px;
}
.buscar-form input:focus{
  outline:none;
  border-color:var(--saffron);
  box-shadow:0 0 0 4px var(--saffron-soft);
}
.buscar-hint{
  margin:14px 4px 0;
  font-size:14px;
  color:var(--muted);
}

.buscar-section{
  background:var(--paper);
  padding:36px 0 88px;
  min-height:46vh;
}
.buscar-estado{
  margin:0 0 18px;
  font-size:15px;
  color:var(--muted);
}
.buscar-resultados{
  list-style:none;
  margin:0;
  padding:0;
}
.buscar-resultados li{ border-bottom:1px solid var(--line); }
.buscar-resultados a{
  display:block;
  padding:18px 14px;
  margin:0 -14px;
  border-radius:var(--radius);
  text-decoration:none;
  transition:background .15s ease;
}
.buscar-resultados a:hover,
.buscar-resultados a:focus-visible{ background:var(--cream); outline:none; }
.buscar-resultados strong{
  display:block;
  font-family:var(--display);
  font-size:22px;
  font-weight:500;
  line-height:1.25;
}
.buscar-tipo{
  display:inline-block;
  margin-bottom:6px;
  padding:2px 10px;
  border-radius:999px;
  background:var(--saffron-soft);
  color:var(--saffron);
  font-size:12px;
  font-weight:600;
}
.buscar-ruta{
  display:block;
  margin-top:2px;
  font-size:13px;
  color:var(--saffron);
}
.buscar-frag{
  display:block;
  margin-top:6px;
  font-size:15px;
  line-height:1.6;
  color:var(--muted);
}
.buscar-frag mark{
  background:var(--warm);
  color:var(--ink);
  font-weight:600;
  padding:0 2px;
  border-radius:3px;
}

.buscar-sugerencias[hidden]{ display:none; }
.buscar-sugerencias p:last-child{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
}
.buscar-sugerencias a{
  padding:8px 16px;
  border:1px solid var(--line);
  border-radius:999px;
  font-size:14px;
  font-weight:500;
  text-decoration:none;
}
.buscar-sugerencias a:hover{ border-color:var(--saffron); color:var(--saffron); }

@media (max-width: 640px){
  .buscar-form{ flex-direction:column; }
  .buscar-section{ padding:24px 0 60px; }
}
