.ppn-booksearch {
    margin: .75rem 0 1rem;
}

.ppn-booksearch__label {
    border: 0;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.ppn-booksearch__row {
    display: flex;
    gap: .5rem;
}

.ppn-booksearch__row input[type="search"] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%236c757d' d='M11.5 10.5h-.79l-.28-.27A6.47 6.47 0 0 0 12 6.5 5.5 5.5 0 1 0 6.5 12a6.47 6.47 0 0 0 3.73-1.57l.27.28v.79l4.25 4.24 1.27-1.27-4.25-4.25-.27.28ZM6.5 10A3.5 3.5 0 1 1 10 6.5 3.5 3.5 0 0 1 6.5 10Z'/%3E%3C/svg%3E");
    background-position: right .75rem center;
    background-repeat: no-repeat;
    padding-right: 2.25rem;
}

.ppn-booksearch__results {
    list-style: none;
    margin: .75rem 0 0;
    padding: 0;
}

.ppn-booksearch__results li {
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    padding: .5rem 0;
}

.ppn-booksearch__results a {
    font-weight: 600;
}

.ppn-booksearch__snippet {
    display: block;
    font-size: .875rem;
    margin-top: .25rem;
}

.ppn-booksearch__highlight {
    background: rgba(0, 0, 0, .08);
    border-radius: .125rem;
    color: inherit;
    padding: 0 .1em;
}

@media (max-width: 480px) {
    .ppn-booksearch__row {
        align-items: stretch;
        flex-direction: column;
    }
}
