body {
  font-size: 16px;
  line-height: 1.35em;
}

#searchForm fieldset {
  display: flex;
  flex-direction: row;
  margin: 0;
  border: 0;
  padding: .25em;
}

#keyword {
  flex: auto;
  min-width: 150px;
}

#helper {
  width: 2em;
}

#help {
  padding: .25em;
  font-size: .9em;
}

#help > div {
  overflow-wrap: break-word;
  white-space: pre-wrap;
}

#messages,
#result {
  margin: 0;
  padding: 0;
}

#messages {
  margin-top: 1em;
}

.warn {
  color: #f0ad4e;
}

.error {
  color: red;
}

.tree-search {
  width: unset;
}

.tree-search li > div {
  white-space: normal;
  overflow-wrap: break-word;
}

.tree-search li > div:first-child {
  padding-left: 1.36em;
  text-indent: -1.36em;
}

.tree-search li > div:first-child a:hover {
  background-color: rgba(196, 221, 252, .5);
}

.tree-search li > div:first-child a:focus {
  outline-style: auto;
  background-color: rgba(196, 221, 252, 1);
}

.tree-search li > div.details {
  margin-top: .25em;
  margin-bottom: .25em;
  border: 0;
  padding-left: 1.6em;
  font-size: .85em;
}

.tree-search li > div.details::before {
  display: none;
}

.tree-search li > div.details .comment {
  margin: .4em 0 .2em;
  border: 1px solid gray;
  border-radius: 3px;
  padding: .2em;
}

.tree-search li > div.details .context {
  margin: .5em 0;
}

.tree-search li > div.details .source {
  margin: .4em 0;
  color: green;
  word-break: break-all;
}
