#asd-directory { font-family: Arial, sans-serif; }
#asd-directory header { background:#000; color:#fff; padding:15px; text-align:center; font-size:20px; }
#asd-directory .filters { padding:15px; text-align:center; background:#f7f7f7; border-bottom:1px solid #e5e5e5; }
#asd-directory .filters-row { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; align-items:center; }
#asd-directory input[type="text"], #asd-directory select { padding:8px; min-width:180px; border:1px solid #ccc; border-radius:4px; }
#asd-directory button#asd-search-btn { padding:8px 14px; background:#0069d9; color:#fff; border:none; border-radius:4px; cursor:pointer; }
#asd-directory button#asd-search-btn:hover { background:#0053ad; }
#asd-map { width:100%; height:500px; opacity:0.95; transition:opacity 300ms ease; }
#asd-results { padding: 15px; background: #fafafa; border-top: 1px solid #ddd; }
.asd-result-item { padding: 10px; border-bottom: 1px solid #eee; }
.asd-result-item h4 { margin: 0 0 5px; font-size: 16px; }
.asd-result-item p { margin: 0 0 5px; color: #555; }
.asd-actions a { color: #0073e6; text-decoration: none; margin-right: 10px; }
.asd-actions a:hover { text-decoration: underline; }
.asd-actions button.asd-show-map { background: #0073e6; color: #fff; border: none; padding: 5px 10px; margin-left: 10px; border-radius: 4px; cursor: pointer; }
.asd-actions button.asd-show-map:hover { background: #005bb5; }
.asd-actions .asd-directions { color: #28a745; font-weight: bold; margin-left: 10px; text-decoration: none; }
.asd-actions .asd-directions:hover { text-decoration: underline; }

/* Ads + Popup */
#asd-directory .ads { background:#eee; text-align:center; padding:20px; }
#asd-popup.popup-overlay { position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); display:flex; align-items:center; justify-content:center; z-index:9999; }
#asd-popup .popup { background:#fff; padding:20px; border-radius:10px; width:320px; text-align:center; box-shadow:0 10px 30px rgba(0,0,0,0.2); }
#asd-popup input { width:100%; padding:8px; margin-bottom:10px; border:1px solid #ccc; border-radius:4px; }
#asd-popup button { background:#000; color:white; padding:10px; width:100%; border:none; border-radius:5px; cursor:pointer; }
#asd-popup button.secondary { background:#999; margin-top:8px; }
#asd-popup button:hover { opacity:0.9; }

/* Autocomplete suggestions */
.asd-suggestions { position:absolute; background:#fff; border:1px solid #ccc; width:calc(100% - 40px); max-width:420px; left:20px; top:58px; z-index:10000; }
.asd-suggestion { padding:8px; cursor:pointer; }
.asd-suggestion:hover { background:#f0f0f0; }

@media (max-width: 600px) {
  #asd-map { height: 420px; }
  .asd-suggestions { left:10px; width:calc(100% - 20px); top:54px; }
  #asd-directory .filters-row { flex-direction:column; align-items:stretch; }
}
