:focus {
  outline: 3px solid #005fcc; /* deep blue, 5:1 contrast on white */
  outline-offset: 2px;
}
label:hover .tooltip-content,
label:focus-within .tooltip-content {
    opacity: 1;
    pointer-events: auto;
}
[role="tooltip"] {
  visibility: hidden;
  position: absolute;

  left: 2rem;
  background: black;
  color: white;
  padding: 0.5rem;
  border-radius: 0.25rem;
  /* Give some time before hiding so mouse can exit the input
  and enter the tooltip */
  transition: visibility 0.5s;
}
[aria-describedby]:hover,
[aria-describedby]:focus {
  position: relative;
}
[aria-describedby]:hover + [role="tooltip"],
[aria-describedby]:focus + [role="tooltip"],
[role="tooltip"]:hover,
[role="tooltip"]:focus {
  visibility: visible;
}

[role="tooltip"] {
  visibility: hidden;
  position: absolute;
  background: black;
  color: white;
  padding: 0.5rem;
  border-radius: 4px;
}

label:hover + [role="tooltip"],
label:focus-within + [role="tooltip"] {
  visibility: visible;
}

.search-result-link {
    color: #1a73e8;        /* blue, like standard links */
    text-decoration: underline;
    font-weight: bold;
}

.search-result-link:focus,
.search-result-link:hover {
    outline: 2px solid #1a73e8;
    outline-offset: 2px;
    text-decoration: none;
}

.search-result-description {
    margin: 0.25rem 0 1rem 0;
    color: #555;
}
