.venue-search{padding:1.1rem;border:1px solid #dedede;border-radius:6px;background:#fff;margin-bottom:1.4rem}
.venue-search-fields{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(190px,1.5fr) minmax(125px,.8fr) auto;gap:.8rem;align-items:end}
.venue-search-field{display:flex;flex-direction:column;gap:.35rem;min-width:0;color:#62666b;font-weight:700;font-size:.8rem}
.venue-search-field input,.venue-search-field select{min-height:43px;font-size:.9rem;font-weight:400}
.venue-find-button{min-height:43px;white-space:nowrap}
.venue-search-bottom{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:.8rem;color:#62666b;font-size:.8rem}
.venue-all-filters{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;flex:0 0 132px;width:132px;min-height:43px;white-space:nowrap;color:#212529;border-color:#dedede;font-size:.85rem}
.venue-filter-modal .modal-dialog{max-width:640px}
.venue-filter-modal .modal-content{border:0;border-radius:12px;overflow:hidden}
.venue-filter-modal .modal-header{padding:1.25rem 1.5rem;border-color:#e5e5e5}
.venue-filter-modal .modal-title{font-size:1.35rem;font-weight:700}
.venue-filter-modal .btn-close{min-width:36px;min-height:36px;box-sizing:border-box}
.venue-filter-modal .modal-body{padding:1.5rem}
.venue-filter-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:1.25rem 1rem}
.venue-filter-wide{grid-column:1/-1}
.venue-filter-modal .venue-search-field{font-size:.85rem;gap:.5rem}
.venue-filter-modal .venue-search-field input,.venue-filter-modal .venue-search-field select{min-height:46px;font-size:1rem}
.venue-filter-name{border-top:1px solid #e5e5e5;padding-top:1.25rem;margin-top:.25rem}
.venue-filter-modal .modal-footer{padding:1rem 1.5rem;justify-content:space-between;border-color:#e5e5e5;background:#fff}
.venue-filter-modal .modal-footer .btn{min-height:44px;margin:0}
.venue-filter-modal .modal-footer .btn-primary{min-width:145px}
.venue-filter-modal .modal-footer .btn-link{padding-left:0;color:#62666b;text-decoration:none}
.venue-filter-error{font-size:.85rem;color:#b02111;margin:1rem 0 0}
.venue-filter-modal input[aria-invalid=true]{border-color:#b02111}
.pac-container{z-index:1080}
.venue-pending{font-size:.8rem;color:#d9230f;margin:.75rem 0 0}
.venue-name-chip{display:inline-flex;align-items:center;gap:.4rem;color:#d9230f;background:#fff2ef;border:1px solid #efb9b1;border-radius:4px;padding:.3rem .6rem;margin-top:.7rem;font-size:.8rem;text-decoration:none;overflow-wrap:anywhere}
.venue-shortcuts{margin-bottom:1.4rem}
.venue-shortcuts:has(>details:not([open])):has(+.venue-recents:not([open]):not([hidden])){margin-bottom:.15rem}
.venue-shortcut-heading{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap;margin-bottom:.65rem}
.venue-shortcut-heading h2{font-size:1rem;font-weight:700;margin:0}
.venue-shortcut-heading>span{font-size:.8rem;color:#62666b}
.venue-pills{display:flex;gap:.5rem;flex-wrap:wrap}
.venue-pill{display:inline-flex;align-items:center;min-height:39px;padding:.5rem .9rem;border:1px solid #dedede;border-radius:24px;font-size:.85rem;color:#212529;text-decoration:none;background:#fff}
.venue-pill:hover{color:#d9230f;border-color:#d9230f;background:#fff2ef}
.venue-pill[aria-current]{color:#fff;background:#d9230f;border-color:#d9230f}
.venue-more-sports{align-self:center;font-size:.8rem;padding:.4rem}
.venue-shortcuts summary,.venue-recents summary{font-size:.8rem;color:#d9230f;cursor:pointer;padding:.4rem 0}
.venue-shortcuts details .venue-pills{margin-top:.5rem}
.venue-recents{margin-bottom:1.25rem}
.venue-recent-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.4rem}
.venue-recent-links a{display:block;max-width:100%;border:1px solid #dedede;border-radius:4px;padding:.5rem .65rem;font-size:.8rem;color:#212529;text-decoration:none;overflow-wrap:anywhere}
.venue-sort-form{display:flex;gap:.5rem;align-items:center;color:#62666b;font-size:.8rem;flex-wrap:wrap}
.venue-sort-form select{width:auto;max-width:165px}
.venue-result-scope{font-size:.8rem;color:#62666b;margin-bottom:1rem}
.venue-result-distance{font-weight:700;color:#212529}
.venue-result-sports{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.8rem}
.venue-sport-badge{font-size:.75rem;padding:.2rem .45rem;border-radius:3px;background:#f4f4f4;color:#62666b}
.venue-matching-sport{color:#d9230f;background:#fff2ef;font-weight:700}
.venue-result:not(.activity-result) .venue-result-sports{margin-bottom:.35rem}
.venue-empty{padding:1.5rem;border:1px solid #dedede;border-radius:6px;margin-bottom:1rem}
.venue-empty h3{font-size:1.1rem;font-weight:700}
.venue-empty p{font-size:.9rem;color:#62666b}
.venue-also{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0;font-size:.85rem;border-top:1px solid #dedede;padding-top:1rem}
.venue-listing-cta{font-size:.85rem}
.venue-discovery a:focus-visible,.venue-discovery summary:focus-visible{outline:3px solid #d9230f;outline-offset:3px}
@media(max-width:850px){.venue-search-fields{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.venue-search{padding:.85rem}.venue-place-field{grid-column:1/-1;grid-row:1}.venue-find-button{grid-column:1/-1}.venue-search-field input,.venue-search-field select{font-size:1rem}.venue-results-heading{align-items:flex-start}.venue-sort-form{width:100%}.venue-pill{font-size:.8rem}.venue-filter-modal .modal-dialog{margin:.75rem;min-height:calc(100% - 1.5rem)}.venue-filter-modal .modal-header,.venue-filter-modal .modal-body,.venue-filter-modal .modal-footer{padding:1rem}.venue-filter-grid{grid-template-columns:minmax(0,1fr)}.venue-filter-modal .btn-close{min-width:44px;min-height:44px}.venue-filter-modal .modal-footer .btn-primary{min-width:135px}}
@media(pointer:coarse){.venue-pill,.venue-result-link,.venue-all-filters,.venue-recents summary{min-height:44px}}
@media(pointer:coarse){.venue-result .venue-activity-preview ul a{min-height:44px}}
