.dzvhae-event-search { margin: 24px 0; width: 100%; clear: both; }
.dzvhae-event-search label { display: block; font-weight: 600; font-size: 1.15em; }
.dzvhae-event-search form > p { margin: 6px 0 12px; }
.dzvhae-search-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.dzvhae-search-controls input[type="search"] { flex: 1 1 260px; min-width: 0; width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #767676; border-radius: 3px; font: inherit; }
.dzvhae-search-controls button { min-height: 44px; padding: 10px 20px; background: #0077a8; color: #fff; border: 0; border-radius: 3px; font: inherit; cursor: pointer; }
.dzvhae-search-reset, .dzvhae-search-pagination a { display: inline-flex; min-height: 44px; align-items: center; padding: 8px; }
.dzvhae-event-search :is(input, button, a):focus-visible { outline: 3px solid #0077a8; outline-offset: 3px; }
.dzvhae-search-status { margin: 12px 0; }
.dzvhae-search-status:empty { display: none; }
.dzvhae-search-list { list-style: none; padding: 0; margin: 0; }
.dzvhae-search-list li { padding: 16px 0; border-bottom: 1px solid #ddd; overflow-wrap: anywhere; }
.dzvhae-search-list h3 { margin: 0 0 8px; }
.dzvhae-search-list p { margin: 4px 0; }
.dzvhae-search-pagination { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
@media (max-width: 600px) {
    .dzvhae-search-controls input[type="search"] { flex-basis: 100%; }
    .dzvhae-search-controls button { flex: 1; }
}
