/* Accessible search styles */

#search-form {
    margin-bottom: 2rem;
}

#search-form label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: bold;
}

#search-input {
    width: 100%;
    max-width: 400px;
    padding: 0.75rem;
    font-size: 1rem;
    border: 2px solid #333;
    border-radius: 0;
    margin-bottom: 0.5rem;
}

#search-input:focus {
    outline: 3px solid #0066cc;
    outline-offset: 2px;
}

#search-form button {
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    background: #333;
    color: #fff;
    border: 2px solid #333;
    cursor: pointer;
}

#search-form button:hover,
#search-form button:focus {
    background: #555;
    outline: 3px solid #0066cc;
    outline-offset: 2px;
}

.search-help {
    font-size: 0.875rem;
    color: #666;
    margin-top: 0.5rem;
}

.search-results-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.search-result-item {
    padding: 1rem 0;
    border-bottom: 1px solid #ddd;
}

.search-result-item:last-child {
    border-bottom: none;
}

.search-result-item a {
    text-decoration: underline;
    color: #0066cc;
}

.search-result-item a:visited {
    color: #551a8b;
}

.search-result-item p {
    margin: 0.5rem 0 0 0;
    color: #444;
}

/* High contrast focus indicators for accessibility */
a:focus,
button:focus,
input:focus {
    outline: 3px solid #0066cc;
    outline-offset: 2px;
}
