.map-display{display:flex;flex-direction:column;gap:8px;position:relative;z-index:4;flex:0 0 auto;min-width:0;padding:8px;box-sizing:border-box;background:#f7faf8}
.map-display [hidden]{display:none!important}
.map-display-main{display:grid;gap:7px;min-width:0}.map-display-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}
.map-camera-actions{display:flex;flex-wrap:wrap;gap:4px;margin-left:auto}.map-camera-actions button{min-height:30px}
.map-display details>summary{cursor:pointer;list-style:none;padding:6px 10px;border:1px solid #c6d5ce;border-radius:6px;background:#fff;color:#25483e;font-weight:600;font-size:13px}
.map-display details>summary::after{content:' ▾';font-weight:400}.map-display details[open]>summary::after{content:' ▴'}
.map-display-settings,.map-display-legend,#map-reference-legend{position:relative;min-width:0}.map-display-settings[open],.map-display-legend[open],#map-reference-legend[open]{z-index:5}
.map-display-settings>.map-display-body,.map-display-legend>div,#map-reference-legend>.reference-legend{position:absolute;top:var(--map-popover-top,calc(100% + 4px));bottom:var(--map-popover-bottom,auto);left:var(--map-popover-left,0);right:auto;background:#fff;border:1px solid #c6d5ce;border-radius:8px;box-shadow:0 8px 24px #142d2526;max-height:var(--map-popover-height,min(65vh,560px));overflow:auto;overscroll-behavior:contain;padding:12px;margin:0;width:var(--map-popover-width,min(360px,calc(100vw - 16px)));box-sizing:border-box}
.map-display-body{display:grid;gap:12px}.map-display fieldset{min-width:0;margin:0;padding:8px 10px;border:1px solid #dce5df;border-radius:6px}.map-display legend{font-size:12px;font-weight:700;color:#526b60;padding:0 4px}
.map-display label{display:flex;align-items:center;gap:7px;min-width:0;font-size:13px;margin:4px 0}.map-display input[type=checkbox]{width:16px;height:16px;flex:none;margin:0}.map-display select{min-width:0;max-width:100%;flex:1;font-size:13px;padding:5px}.map-display label:has(select){justify-content:space-between;flex-wrap:wrap}.map-display label:has(select)>span{flex:none}.map-display label:has(select)>select{flex-basis:140px}
.map-display .map-display-layers{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:3px 8px 6px}.map-display-layers label{min-height:28px;margin:0;white-space:nowrap}.map-display-tabbed .map-display-layers{border:0;padding:0}.map-display-tabbed .map-display-layers>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.map-display-primary{min-width:0}.map-display-primary>fieldset{background:#fff}.map-display-primary>.map-display-ms,.map-display-primary>.map-display-references{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}.map-display-primary>.map-display-ms>label:has(select){flex:1 1 220px}.map-display-primary>.map-display-references>label{flex:1 1 220px}.map-display-primary>.map-display-references>label:has(input){flex-basis:180px}
.map-display-primary>.map-display-poi{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px}.map-display-primary>.map-display-poi>label:has(select){flex:1 1 220px}
.map-poi-categories{margin-top:8px;min-width:0}.map-poi-categories>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,125px),1fr));gap:3px 7px;padding-top:6px}.map-poi-categories img{height:20px;width:20px;object-fit:contain;flex:none}.map-poi-categories span{min-width:0;overflow-wrap:anywhere}.map-poi-direct{flex:1 0 100%;margin-top:0}.map-poi-direct>div{padding-top:0}.map-poi-direct>div>label{padding:5px 6px;margin:0;border:1px solid #d8e1db;border-radius:5px;background:#fafcfb}.map-poi-direct>div>label:has(input:checked){background:#edf7f0;border-color:#aacbb5}.map-category-actions{grid-column:1/-1;display:flex;gap:6px;align-items:center}
.map-display button{max-width:100%;padding:5px 10px;font-size:12px;white-space:normal}.map-display-reset{color:#315c48}.map-legend-row{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:12px}.map-legend-swatch{height:5px;width:22px;flex:none}.map-legend-swatch.dashed{background:repeating-linear-gradient(90deg,#b78028 0 6px,transparent 6px 9px)!important}.map-legend-swatch:has(img){height:20px}.map-legend-swatch img{width:20px;height:20px;object-fit:contain}
@media(max-width:599px){.map-display label{min-height:32px}.map-display-toolbar{gap:5px}.map-display button{padding:5px 8px}.map-camera-actions{gap:3px}}
