.gml-wrap{position:relative;width:100%;height:var(--gml-height,620px);border-radius:16px;overflow:hidden;background:#f7fbfc;font-family:inherit}
.gml-map{position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 50% 45%,#ffffff 0%,#eef8fb 60%,#e4f3f8 100%)}
.gml-wrap .maplibregl-canvas{outline:none}
.gml-wrap .maplibregl-ctrl-attrib{font-size:11px}

/* Search bar */
.gml-search{position:absolute;z-index:10;top:16px;left:16px;width:min(380px,calc(100% - 32px));display:flex;align-items:center;gap:10px;background:#000;color:#fff;border-radius:999px;padding:0 20px;height:48px;box-shadow:0 6px 20px rgba(0,0,0,.2)}
.gml-search svg{flex:none}
.gml-search input{flex:1;min-width:0;background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;color:#fff!important;font-size:16px;height:100%;padding:0!important;margin:0!important;text-transform:none!important}
.gml-search input::placeholder{color:#9aa4ab}
.gml-results{position:absolute;top:calc(100% + 8px);left:0;right:0;margin:0;padding:6px;list-style:none;background:#fff;color:#111;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.18);max-height:320px;overflow:auto}
.gml-results li{margin:0;list-style:none}
.gml-item{padding:10px 12px;border-radius:10px;cursor:pointer;display:flex;flex-direction:column}
.gml-item:hover{background:#eefbfd}
.gml-item b{font-weight:600;font-size:15px}
.gml-item small{color:#667;font-size:13px}
.gml-group{padding:8px 12px 4px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#889}
.gml-empty{padding:12px;color:#667}

/* Info card */
.gml-card{position:absolute;z-index:10;top:76px;left:16px;width:min(380px,calc(100% - 32px));background:#fff;color:#111;border-radius:18px;padding:22px 22px 20px;box-shadow:0 12px 36px rgba(0,0,0,.2)}
.gml-card[hidden]{display:none}
.gml-card h3{margin:0 34px 14px 0;font-size:22px;line-height:1.2;font-weight:500;text-transform:none!important;letter-spacing:normal!important;color:#111}
/* Reset theme button styles (Hello/Elementor etc. style every <button>) */
.gml-card .gml-x{position:absolute;top:12px;right:14px;width:32px;height:32px;min-width:0;appearance:none;-webkit-appearance:none;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;color:#111!important;padding:0!important;margin:0!important;font-size:28px;line-height:1;font-weight:400;text-transform:none;cursor:pointer}
.gml-card .gml-x:hover,.gml-card .gml-x:focus{background:transparent!important;color:#000!important;outline:none}
.gml-addr{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-size:15px}
.gml-addr svg{flex:none;margin-top:2px}
.gml-status{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:10px;font-size:15px}
.gml-status i{width:9px;height:9px;border-radius:50%;display:inline-block}
.gml-open i{background:#22c55e}
.gml-closed{color:#6b7280}.gml-closed i{background:#ef4444}
.gml-chargers{margin-bottom:16px;font-size:16px}
.gml-chargers>div{margin-bottom:2px}
.gml-type{color:var(--gml-color,#14c8e6);font-size:18px;font-weight:700}
.gml-kw{font-size:15px}
.gml-actions{display:flex;gap:10px;flex-wrap:wrap}
.gml-btn{display:inline-block;border:1.5px solid #111;border-radius:999px;padding:10px 22px;color:#111!important;text-decoration:none!important;font-size:15px;background:#fff;transition:background .15s,color .15s}
.gml-btn:hover{background:#111;color:#fff!important}

/* Selected pin */
.gml-pin-sel{filter:drop-shadow(0 3px 4px rgba(0,0,0,.35));cursor:default;line-height:0}

@media (max-width:600px){
	.gml-card{top:auto;bottom:12px;left:12px;right:12px;width:auto;padding:18px}
	.gml-wrap .maplibregl-ctrl-bottom-right{display:none}
}

/* Credit stays (required by OSM/OpenFreeMap) but shrinks to a small (i) button */
.gml-wrap .maplibregl-ctrl-attrib.maplibregl-compact{background:rgba(255,255,255,.7);min-height:22px}
.gml-wrap .maplibregl-ctrl-attrib-button{opacity:.55}
