.amcd-directory{max-width:1200px;margin:0 auto}
.amcd-header h2{margin:0 0 8px;color:#1e3a5f}
.amcd-header p{margin:0 0 20px;color:#566574}
.amcd-toolbar{display:flex;flex-direction:column;gap:14px;margin:20px 0}
.amcd-filters{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:12px}
.amcd-filters input,.amcd-filters select{height:46px;padding:0 12px;border:1px solid #d6dde5;border-radius:10px;width:100%;background:#fff}
.amcd-actions-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.amcd-geo-sort-btn{appearance:none;border:1px solid #b9cbe0;background:#f4f8fc;color:#1e3a5f;padding:10px 14px;border-radius:999px;font-weight:700;cursor:pointer}
.amcd-geo-sort-btn:disabled{opacity:.7;cursor:wait}
.amcd-results-meta{color:#566574;font-weight:700}
.amcd-area-chips{display:flex;flex-wrap:wrap;gap:10px}
.amcd-chip{appearance:none;border:1px solid #d7e1ea;background:#fff;color:#294766;padding:8px 12px;border-radius:999px;cursor:pointer;font-size:13px}
.amcd-chip.is-active{background:#1e3a5f;color:#fff;border-color:#1e3a5f}
.amcd-layout.amcd-layout-vertical{display:flex;flex-direction:column;gap:20px}
.amcd-map-wrap{display:flex;flex-direction:column;gap:10px;width:100%}
.amcd-map-notice{padding:12px 14px;border-radius:12px;background:#f8fbfd;border:1px solid #e1e9f0;color:#526070}
.amcd-map{width:100%;min-height:560px;border-radius:16px;overflow:hidden;background:#f5f7fa;border:1px solid #dbe5ee}
.amcd-list-wrap{width:100%}
.amcd-list{display:flex;flex-direction:column;gap:18px;max-height:none;overflow:visible}
.amcd-area-group{display:flex;flex-direction:column;gap:12px}
.amcd-area-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:2px solid #e8eef4}
.amcd-area-group-head h3{margin:0;color:#1e3a5f;font-size:22px}
.amcd-area-group-head span{font-size:13px;color:#5c6f84;font-weight:700}
.amcd-area-group-list{display:flex;flex-direction:column;gap:14px}
.amcd-card{border:1px solid #e5e7eb;border-radius:16px;padding:18px;background:#fff;box-shadow:0 8px 24px rgba(20,40,60,.04)}
.amcd-card h3{margin:0 0 8px;color:#1e3a5f}
.amcd-card p{margin:.3em 0;color:#334155}
.amcd-card.is-active{border-color:#0f5ea8;box-shadow:0 0 0 3px rgba(15,94,168,.12)}
.amcd-card-top{display:flex;justify-content:flex-end;min-height:20px}
.amcd-distance-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#eef6ff;color:#0f5ea8;font-size:12px;font-weight:700}
.amcd-clinic-link{appearance:none;border:none;background:none;padding:0;margin:0;font-size:22px;font-weight:700;color:#1e3a5f;cursor:pointer;text-align:left;line-height:1.4}
.amcd-clinic-link:hover{color:#0f5ea8;text-decoration:underline}
.amcd-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.amcd-tags span{display:inline-block;padding:4px 10px;border-radius:999px;background:#eef4fb;font-size:12px}
.amcd-actions{margin-top:12px}
.amcd-actions a{display:inline-block;text-decoration:none;border:1px solid #c8d7e6;color:#1e3a5f;padding:8px 12px;border-radius:10px}
.amcd-user-marker{background:#0f5ea8;color:#fff;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;box-shadow:0 6px 16px rgba(15,94,168,.25)}

.clinic-hours-card{margin-top:14px;background:#ffffff;border:1px solid #dbe5ee;border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(30,58,95,.04)}
.clinic-hours-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.clinic-hours-head h4{margin:0;font-size:18px;color:#1e3a5f;font-weight:700}
.clinic-hours-legend{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}
.clinic-hours-legend span{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:999px;background:#f4f8fb}
.clinic-hours-legend .is-open{color:#2f7d4a}
.clinic-hours-legend .is-short{color:#d08a00}
.clinic-hours-legend .is-closed{color:#7f8895}
.clinic-hours-table-wrap{overflow-x:auto;border:1px solid #e3eaf0;border-radius:14px}
.clinic-hours-table{width:100%;border-collapse:collapse;min-width:680px}
.clinic-hours-table th,.clinic-hours-table td{border-bottom:1px solid #e8eef3;padding:10px 8px;text-align:center}
.clinic-hours-table thead th{background:#f2f7fb;color:#294766;font-size:12px;font-weight:700}
.clinic-hours-table tbody th{background:#fafcff;color:#294766;font-weight:700;white-space:nowrap}
.clinic-hours-table td.open{color:#2f7d4a;font-weight:700;font-size:15px}
.clinic-hours-table td.short{color:#d08a00;font-weight:700;font-size:15px}
.clinic-hours-table td.closed{color:#97a2ae;font-weight:700;font-size:15px}
.clinic-hours-timeinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.clinic-hours-timeinfo div{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:#f8fbfd;border:1px solid #e1e9f0}
.clinic-hours-timeinfo strong{color:#1e3a5f}
.clinic-hours-timeinfo span{font-weight:600;color:#37485a}
.clinic-hours-note{margin-top:12px;padding:12px 14px;border-radius:12px;background:#fff9ec;border:1px solid #f1dfb1;color:#7a6020;font-size:13px;line-height:1.7}
.clinic-hours-table th:nth-child(7),.clinic-hours-table td:nth-child(7){background:#fcfaf2}
.clinic-hours-table th:nth-child(8),.clinic-hours-table td:nth-child(8),.clinic-hours-table th:nth-child(9),.clinic-hours-table td:nth-child(9){background:#f7f8fa}

@media (max-width:960px){
  .amcd-filters,.clinic-hours-timeinfo{grid-template-columns:1fr}
  .amcd-map{min-height:420px}
}
