.lemsrd{--navy:#13213a;--gold:#b8923a;font-family:inherit;margin:1.5em 0}
.lemsrd-count{color:var(--navy);font-weight:600;margin:0 0 .6em}
.lemsrd-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e3e6ec;font-size:15px}
.lemsrd-table thead th{background:var(--navy);color:#fff;text-align:left;padding:12px 10px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;border-bottom:3px solid var(--gold)}
.lemsrd-table td{padding:10px;border-bottom:1px solid #e3e6ec;color:#222;vertical-align:middle}
.lemsrd-table tbody tr:nth-child(even){background:#f7f8fa}
.lemsrd-table tbody tr:hover{background:#fbf4e4}
.lemsrd-name{font-weight:700;color:var(--navy)}
.lemsrd-photo img{width:60px;height:80px;object-fit:cover;border-radius:4px;border:2px solid var(--gold);display:block}
.lemsrd-detail a{display:inline-block;background:var(--navy);color:#fff!important;padding:6px 12px;border-radius:4px;text-decoration:none;font-size:14px}
.lemsrd-detail a:hover{background:var(--gold)}
.lemsrd-credit{font-size:13px;color:#666;margin-top:.8em}
.lemsrd-credit a{color:var(--gold)}
.lemsrd .screen-reader-text{position:absolute;left:-9999px}
@media (max-width:760px){
 .lemsrd-table thead{display:none}
 .lemsrd-table,.lemsrd-table tbody,.lemsrd-table tr,.lemsrd-table td{display:block;width:100%;box-sizing:border-box}
 .lemsrd-table{border:0;background:transparent}
 .lemsrd-table tr{position:relative;background:#fff!important;border:1px solid #e3e6ec;border-top:4px solid var(--navy);border-radius:6px;margin-bottom:14px;padding:10px 10px 10px 86px;min-height:110px}
 .lemsrd-table td{border:0;padding:3px 0}
 .lemsrd-photo{position:absolute;left:12px;top:12px;width:auto!important}
 .lemsrd-table td[data-label]:not(.lemsrd-name)::before{content:attr(data-label) ": ";font-weight:600;color:var(--navy)}
 .lemsrd-name{font-size:17px}
 .lemsrd-detail{margin-top:6px}
}

/* ---- Map (v1.1) ---- */
.lemsrd-mapwrap { margin: 0 0 18px; }
.lemsrd-map { height: 400px; width: 100%; border: 2px solid #13213a; border-radius: 8px; z-index: 0; }
.lemsrd-mapnote { font-size: 13px; color: #555; margin: 6px 0 0; font-style: italic; }
.lemsrd-pin { background: transparent; border: 0; }
.lemsrd-pin span { display: block; width: 22px; height: 22px; background: #13213a; border: 3px solid #b8923a; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); box-shadow: 0 1px 4px rgba(0,0,0,.4); box-sizing: border-box; }
.lemsrd-map .leaflet-popup-content a { color: #13213a; font-weight: 600; }
.lemsrd-map img { max-width: none !important; }
@media (max-width: 640px) { .lemsrd-map { height: 300px; } }
/* 1.1.1: shield Leaflet from theme/page img + filter rules */
.lemsrd .leaflet-container img, .lemsrd .leaflet-container .leaflet-tile { max-width: none !important; max-height: none !important; width: auto; height: auto; min-width: 0; min-height: 0; padding: 0 !important; margin: 0; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; filter: none !important; opacity: 1; background: none; }
.lemsrd .leaflet-container .leaflet-tile { width: 256px !important; height: 256px !important; visibility: inherit; }
.lemsrd-legend { background: #fff; padding: 6px 9px; border: 1px solid #13213a; border-radius: 6px; font: 12px/1.5 system-ui, sans-serif; color: #111; box-shadow: 0 1px 4px rgba(0,0,0,.25); }
.lemsrd-legend div { display: flex; align-items: center; gap: 6px; }
.lemsrd-lg-pin { display: inline-block; width: 12px; height: 12px; background: #13213a; border: 2px solid #b8923a; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); box-sizing: border-box; }
.lemsrd-lg-safe { display: inline-block; width: 12px; height: 12px; border-radius: 50%; background: rgba(239,83,80,.45); border: 2px solid #c62828; box-sizing: border-box; }
.lemsrd-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 12px; }
.lemsrd .lemsrd-btn { display: inline-block; padding: 9px 18px; border-radius: 6px; background: #13213a; color: #fff !important; border: 2px solid #b8923a; font-weight: 600; text-decoration: none !important; }
.lemsrd .lemsrd-btn:hover, .lemsrd .lemsrd-btn:focus { background: #b8923a; color: #13213a !important; }
.lemsrd .lemsrd-btn-gold { background: #b8923a; color: #13213a !important; }
.lemsrd .lemsrd-btn-gold:hover, .lemsrd .lemsrd-btn-gold:focus { background: #13213a; color: #fff !important; }
