/* Minegolia /map/ Phase 2 — map-first GIS workspace. */
.mg-map-page{
  --mg-map-bg:#071018;
  --mg-map-surface:#0d1922;
  --mg-map-panel:#0a141d;
  --mg-map-border:rgba(215,166,65,.32);
  --mg-map-border-muted:rgba(255,255,255,.1);
  --mg-map-gold:#d7a641;
  --mg-map-gold-bright:#f1c75b;
  --mg-map-text:#f0eee8;
  --mg-map-muted:#aab2b7;
  --mg-map-green:#6ea481;
}
.mg-map-workspace{padding:18px 0 38px}
.mg-map-pagebar{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:14px;padding:0 2px}
.mg-map-pagebar-copy{max-width:710px}
.mg-map-pagebar h1{margin:4px 0 5px;color:var(--mg-map-text);font-size:clamp(26px,2.55vw,38px);line-height:1.02;letter-spacing:-.02em}
.mg-map-pagebar p{margin:0;color:var(--mg-map-muted);font-size:12px;line-height:1.45}
.mg-map-data-summary{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:520px}
.mg-map-data-summary>span{display:flex;align-items:center;gap:7px;min-height:30px;padding:5px 9px;border:1px solid var(--mg-map-border-muted);border-radius:4px;background:rgba(9,20,28,.7);color:var(--mg-map-muted);font-size:9px;line-height:1.25;letter-spacing:.02em}
.mg-map-data-summary b{color:var(--mg-map-text);font-weight:700}
.mg-map-state-dot{width:7px;height:7px;border-radius:50%;background:#65717a;flex:0 0 auto}
.mg-map-state-dot.is-live{background:var(--mg-map-green);box-shadow:0 0 0 3px rgba(110,164,129,.12)}
.mg-map-state-dot.is-pending{background:var(--mg-map-gold);box-shadow:0 0 0 3px rgba(215,166,65,.12)}
.mg-map-canvas-wrap{position:relative;width:100%;height:min(720px,calc(100vh - 205px));min-height:560px;overflow:hidden;border:1px solid var(--mg-map-border);border-radius:7px;background:var(--mg-map-bg);box-shadow:0 16px 46px rgba(0,0,0,.34)}
.mg-live-map{width:100%;height:100%;min-height:420px;background:var(--mg-map-bg);z-index:1}
.mg-map-page .leaflet-container{background:var(--mg-map-bg);font-family:inherit;color:var(--mg-map-text)}
.mg-map-page .mg-basemap-standard-pane{filter:grayscale(.54) invert(.9) hue-rotate(168deg) brightness(.9) contrast(1.08) saturate(.64)}
.mg-map-page .leaflet-control-attribution{max-width:calc(100% - 18px);padding:3px 7px!important;background:rgba(5,12,17,.9)!important;color:#c0c7ca!important;border:1px solid rgba(255,255,255,.09);border-radius:4px;font-size:10px!important;line-height:1.35!important;white-space:normal}
.mg-map-page .leaflet-control-attribution a{color:var(--mg-map-gold-bright)!important;text-decoration:underline;text-underline-offset:2px}
.mg-map-page .leaflet-bottom.leaflet-right{right:4px;bottom:4px}
.mg-map-controls{position:absolute;top:10px;right:auto;bottom:auto;left:10px;z-index:900;display:flex;width:max-content;height:auto;align-items:flex-start;flex-direction:column;gap:5px;pointer-events:none}
body.page-template-page-map .mg-map-controls .mg-map-btn{display:grid;place-items:center;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:1px solid var(--mg-map-border);border-radius:4px;background:rgba(8,18,26,.94);color:var(--mg-map-text);font:700 20px/1 inherit;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.24);transition:border-color .16s,background .16s,color .16s}
body.page-template-page-map .mg-map-controls .mg-map-btn{pointer-events:auto}
.mg-map-btn:hover,.mg-map-btn:focus-visible,.mg-map-btn[aria-pressed="true"],.mg-map-btn[aria-expanded="true"]{border-color:var(--mg-map-gold-bright);background:var(--mg-map-gold);color:#111;outline:0}
.mg-map-btn:focus-visible{box-shadow:0 0 0 3px rgba(215,166,65,.25)}
.mg-map-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mg-map-layer-panel{position:absolute;z-index:920;top:10px;right:10px;bottom:50px;width:312px;max-width:calc(100% - 74px);padding:0 13px 13px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--mg-map-gold) rgba(255,255,255,.05);border:1px solid var(--mg-map-border);border-radius:6px;background:rgba(7,16,24,.97);box-shadow:0 16px 38px rgba(0,0,0,.48);transform:translateX(calc(100% + 20px));visibility:hidden;opacity:0;pointer-events:none;transition:transform .2s ease,opacity .16s ease,visibility 0s .2s}
.mg-map-layer-panel::-webkit-scrollbar{width:7px}
.mg-map-layer-panel::-webkit-scrollbar-thumb{background:var(--mg-map-gold);border:2px solid var(--mg-map-panel);border-radius:8px}
.mg-map-layer-panel::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
.mg-map-layer-panel.is-open{transform:translateX(0);visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
.mg-layer-panel-header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 -13px;padding:12px 13px 10px;border-bottom:1px solid var(--mg-map-border-muted);background:rgba(7,16,24,.99)}
.mg-layer-panel-header h2{margin:1px 0 0;color:var(--mg-map-text);font-size:14px;line-height:1.1;letter-spacing:.045em}
body.page-template-page-map .mg-layer-panel-close{display:grid;place-items:center;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border:1px solid var(--mg-map-border-muted);border-radius:4px;background:transparent;color:var(--mg-map-muted);font:300 22px/1 inherit;cursor:pointer}
.mg-layer-panel-close:hover,.mg-layer-panel-close:focus-visible{color:var(--mg-map-gold-bright);border-color:var(--mg-map-border);outline:0}
.mg-layer-panel-summary{display:flex;align-items:center;gap:6px;margin:10px 0;padding:7px 8px;border:1px solid var(--mg-map-border-muted);border-radius:4px;color:var(--mg-map-muted);font-size:9px;line-height:1.3}
.mg-layer-group{border-top:1px solid var(--mg-map-border-muted)}
.mg-layer-group:last-of-type{border-bottom:1px solid var(--mg-map-border-muted)}
.mg-layer-group summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:11px 0;color:var(--mg-map-text);font-size:10px;font-weight:800;letter-spacing:.045em;cursor:pointer;list-style:none}
.mg-layer-group summary::-webkit-details-marker{display:none}
.mg-layer-group summary>span:first-child{display:flex;align-items:center;min-width:0}
.mg-layer-group summary>span:first-child::before{content:'›';margin-right:6px;color:var(--mg-map-gold);font-size:17px;font-weight:500;line-height:1;transform:rotate(0);transition:transform .16s}
.mg-layer-group[open] summary>span:first-child::before{transform:rotate(90deg)}
.mg-status-chip{padding:3px 5px;border:1px solid rgba(255,255,255,.13);border-radius:3px;color:#9aa3a8;font-size:8px;line-height:1.2;letter-spacing:.045em;white-space:nowrap}
.mg-status-chip.is-live{border-color:rgba(110,164,129,.42);color:#9bc6aa}
.mg-map-basemaps{margin:0;padding:0 0 9px 20px;border:0}
.mg-map-basemaps label{display:flex;align-items:center;gap:8px;min-height:31px;color:var(--mg-map-muted);font-size:11px;cursor:pointer}
.mg-map-basemaps input,.mg-layer-item input{accent-color:var(--mg-map-gold);flex:0 0 auto}
.mg-layer-items{display:grid;gap:0;padding:0 0 10px 20px}
.mg-layer-item{display:grid;grid-template-columns:16px 9px minmax(0,1fr);align-items:start;gap:7px;padding:6px 0;color:var(--mg-map-muted);font-size:11px;line-height:1.35;cursor:pointer}
.mg-layer-item input{width:14px;height:14px;margin:0}
.mg-layer-item small{display:block;margin-top:2px;color:#929ba1;font-size:8px;letter-spacing:.04em}
.mg-layer-item>span:last-child{min-width:0;overflow-wrap:anywhere}
.mg-layer-source-categories{margin:3px 0 4px 32px;padding:7px 8px;border-left:2px solid rgba(215,166,65,.42);background:rgba(215,166,65,.045);color:var(--mg-map-text);font-size:9px;line-height:1.4}
.mg-layer-source-categories small{display:block;margin-top:2px;color:var(--mg-map-muted);font-size:8px}
.mg-layer-scale-note{display:block;margin-top:2px;color:#8fa0aa;font-size:8px}
.mg-layer-item.is-disconnected{cursor:not-allowed;opacity:.68}
.mg-layer-swatch{width:8px;height:8px;margin-top:3px;border-radius:2px;background:#888}
.mg-layer-swatch.is-special{background:rgba(110,164,129,.86);border:1px solid #9bc6aa}
.mg-layer-swatch.is-license{background:rgba(215,166,65,.88);border:1px solid var(--mg-map-gold-bright)}
.mg-layer-swatch.is-disconnected{background:repeating-linear-gradient(135deg,#657078 0 2px,transparent 2px 4px);border:1px solid #657078}
.mg-map-source-note{margin:11px 0 0;padding:9px;border-left:2px solid var(--mg-map-gold);background:rgba(215,166,65,.055);color:#9ea7ac;font-size:9px;line-height:1.45}
.mg-map-identify-card{position:absolute;z-index:915;right:10px;bottom:50px;width:330px;max-width:calc(100% - 74px);max-height:58%;padding:0 13px 12px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--mg-map-gold) rgba(255,255,255,.05);border:1px solid var(--mg-map-border);border-radius:6px;background:rgba(7,16,24,.98);box-shadow:0 16px 38px rgba(0,0,0,.48);transform:translateX(calc(100% + 20px));visibility:hidden;opacity:0;pointer-events:none;transition:transform .2s ease,opacity .16s ease,visibility 0s .2s}
.mg-map-identify-card.is-open{transform:translateX(0);visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
.mg-identify-header{position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 -13px 9px;padding:12px 13px 10px;border-bottom:1px solid var(--mg-map-border-muted);background:rgba(7,16,24,.99)}
.mg-identify-header h2{margin:1px 0 0;color:var(--mg-map-text);font-size:14px;line-height:1.1;letter-spacing:.045em}
body.page-template-page-map .mg-identify-close{display:grid;place-items:center;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;border:1px solid var(--mg-map-border-muted);border-radius:4px;background:transparent;color:var(--mg-map-muted);font:300 22px/1 inherit;cursor:pointer}
.mg-identify-close:hover,.mg-identify-close:focus-visible{color:var(--mg-map-gold-bright);border-color:var(--mg-map-border);outline:0}
.mg-identify-message{margin:10px 0;padding:10px;border:1px solid var(--mg-map-border-muted);border-radius:4px;color:var(--mg-map-muted);font-size:10px;line-height:1.45}
.mg-identify-message.is-loading{border-color:var(--mg-map-border);color:var(--mg-map-text)}
.mg-identify-count{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 7px;color:var(--mg-map-muted);font-size:9px}
.mg-identify-count b{color:var(--mg-map-gold-bright)}
.mg-identify-results{display:grid;gap:6px}
body.page-template-page-map .mg-identify-result{display:block;width:100%;min-height:0;padding:9px;border:1px solid var(--mg-map-border-muted);border-radius:4px;background:rgba(255,255,255,.025);color:var(--mg-map-text);text-align:left;cursor:pointer}
body.page-template-page-map .mg-identify-result:hover,body.page-template-page-map .mg-identify-result:focus-visible,body.page-template-page-map .mg-identify-result[aria-pressed="true"]{border-color:var(--mg-map-gold);background:rgba(215,166,65,.075);outline:0}
.mg-identify-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}
.mg-identify-result-head strong{color:var(--mg-map-text);font-size:12px;line-height:1.3}
.mg-identify-result-head span{flex:0 0 auto;padding:2px 4px;border:1px solid rgba(110,164,129,.35);border-radius:3px;color:#9bc6aa;font-size:8px;letter-spacing:.035em}
.mg-identify-fields{display:grid;grid-template-columns:minmax(76px,.65fr) 1.35fr;gap:3px 7px;margin:0}
.mg-identify-fields dt{color:#98a1a6;font-size:9px}
.mg-identify-fields dd{min-width:0;margin:0;color:#d0d4d6;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.mg-identify-more{margin:7px 0 0;color:var(--mg-map-muted);font-size:8px;text-align:center}
.mg-identify-source{margin:9px 0 0;padding-top:8px;border-top:1px solid var(--mg-map-border-muted);color:#9ea7ac;font-size:9px;line-height:1.4}
.mg-identified-feature{filter:drop-shadow(0 0 2px rgba(0,0,0,.95))}
.mg-map-legend{position:absolute;z-index:890;left:55px;bottom:46px;display:flex;align-items:flex-start;gap:9px;max-width:min(470px,calc(100% - 390px));max-height:240px;padding:6px 8px;overflow:auto;overscroll-behavior:contain;border:1px solid var(--mg-map-border);border-radius:4px;background:rgba(7,16,24,.95);color:var(--mg-map-muted);font-size:10px;box-shadow:0 4px 14px rgba(0,0,0,.26)}
body.page-template-page-map .mg-map-legend-toggle{display:flex;align-items:center;gap:5px;width:auto;height:auto;min-width:0;min-height:0;padding:0;border:0;background:transparent;color:var(--mg-map-gold);font:700 9px/1.2 inherit;letter-spacing:.06em;cursor:pointer}
.mg-map-legend-toggle svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .16s}
.mg-map-legend.is-expanded .mg-map-legend-toggle svg{transform:rotate(180deg)}
.mg-map-legend-items{display:flex;align-items:flex-start;gap:12px}
.mg-map-legend:not(.is-expanded) .mg-map-legend-items{display:none}
.mg-map-legend-group{display:grid;gap:4px;min-width:0}
.mg-map-legend-group[hidden],.mg-map-legend-empty[hidden]{display:none!important}
.mg-map-legend-group>strong{color:var(--mg-map-gold);font-size:8px;line-height:1.2;letter-spacing:.055em}
.mg-map-legend-group>div{display:grid;gap:3px}
.mg-map-legend-item{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:6px;min-width:145px;line-height:1.25}
.mg-map-legend-item img{display:block;width:20px;height:20px;object-fit:contain;image-rendering:auto}
.mg-map-legend-loading,.mg-map-legend-error{font-size:8px;line-height:1.35;color:var(--mg-map-muted)}
.mg-map-legend-empty{color:var(--mg-map-muted);font-size:8px}
.mg-map-status{position:absolute;z-index:880;top:11px;left:55px;max-width:min(390px,calc(100% - 390px));padding:6px 9px;border:1px solid var(--mg-map-border-muted);border-radius:4px;background:rgba(7,16,24,.93);color:var(--mg-map-muted);font-size:9px;line-height:1.35;opacity:1;transition:opacity .25s}
.mg-map-status:empty{opacity:0;pointer-events:none}
.mg-map-canvas-wrap.mg-map-is-fullscreen{position:fixed!important;z-index:100000!important;inset:0!important;width:100vw!important;height:100vh!important;border:0!important;border-radius:0!important}
.mg-map-canvas-wrap:fullscreen{width:100vw;height:100vh;border:0;border-radius:0}
.mg-map-canvas-wrap:fullscreen .leaflet-bottom.leaflet-right,.mg-map-canvas-wrap.mg-map-is-fullscreen .leaflet-bottom.leaflet-right{right:8px;bottom:8px}
.mg-map-canvas-wrap:fullscreen .leaflet-control-attribution,.mg-map-canvas-wrap.mg-map-is-fullscreen .leaflet-control-attribution{max-width:calc(100vw - 20px)}
.mg-map-canvas-wrap:fullscreen .mg-map-layer-panel,.mg-map-canvas-wrap:fullscreen .mg-map-identify-card,.mg-map-canvas-wrap.mg-map-is-fullscreen .mg-map-layer-panel,.mg-map-canvas-wrap.mg-map-is-fullscreen .mg-map-identify-card{max-height:calc(100vh - 70px)}
body.mg-map-lock-scroll{overflow:hidden}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width:900px){
  .mg-map-workspace{padding-top:14px}
  .mg-map-pagebar{align-items:flex-start;flex-direction:column;gap:9px;margin-bottom:12px}
  .mg-map-data-summary{justify-content:flex-start;max-width:none}
  .mg-map-canvas-wrap{height:min(680px,calc(100vh - 220px));min-height:570px}
  .mg-map-layer-panel{width:300px;max-width:calc(100% - 68px)}
  .mg-map-identify-card{width:320px;max-width:calc(100% - 68px)}
  .mg-map-legend{max-width:calc(100% - 370px)}
  .mg-map-status{max-width:calc(100% - 370px)}
}
@media (max-width:640px){
  html body.page-template-page-map main.mg-map-page .mg-container{width:100%!important;max-width:none;margin-inline:0!important}
  .mg-map-workspace{padding:11px 0 24px}
  .mg-map-pagebar{gap:8px;margin-bottom:10px;padding-inline:16px}
  .mg-map-pagebar h1{font-size:25px}
  .mg-map-pagebar p{font-size:11px}
  .mg-map-data-summary{gap:5px}
  .mg-map-data-summary>span{min-height:28px;padding:4px 7px;font-size:8px}
  .mg-map-canvas-wrap{height:640px;min-height:560px;border-radius:5px}
  .mg-map-controls{top:8px;left:8px;gap:5px}
  body.page-template-page-map .mg-map-controls .mg-map-btn{width:44px;height:44px;min-width:44px;min-height:44px}
  .mg-map-layer-panel{top:auto;left:8px;right:8px;bottom:48px;width:auto;max-width:none;max-height:72%;padding-left:12px;padding-right:12px;border-radius:7px;transform:translateY(calc(100% + 58px))}
  .mg-map-layer-panel.is-open{transform:translateY(0)}
  .mg-map-identify-card{top:auto;left:8px;right:8px;bottom:48px;width:auto;max-width:none;max-height:48%;padding-left:12px;padding-right:12px;border-radius:7px;transform:translateY(calc(100% + 58px))}
  .mg-map-identify-card.is-open{transform:translateY(0)}
  .mg-layer-panel-header{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
  .mg-identify-header{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
  body.page-template-page-map .mg-layer-panel-close{width:40px;height:40px;min-width:40px;min-height:40px}
  body.page-template-page-map .mg-identify-close{width:44px;height:44px;min-width:44px;min-height:44px}
  .mg-map-status{top:9px;left:60px;right:8px;max-width:none}
  .mg-map-legend{left:8px;right:auto;bottom:48px;max-width:calc(100% - 16px);padding:0}
  body.page-template-page-map .mg-map-legend-toggle{min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--mg-map-border);border-radius:4px;background:rgba(7,16,24,.95)}
  .mg-map-legend.is-expanded{right:8px;display:block;padding:7px 8px}
  .mg-map-legend.is-expanded .mg-map-legend-toggle{min-height:28px;padding:0;border:0;background:transparent}
  .mg-map-legend-items{display:grid;grid-template-columns:1fr;gap:7px;margin-top:4px}
  .mg-map-legend{max-height:44px;overflow:hidden}
  .mg-map-legend.is-expanded{max-height:45%;overflow:auto}
  .mg-map-page .leaflet-control-attribution{font-size:10px!important;max-width:calc(100% - 4px)}
}
@media (prefers-reduced-motion:reduce){.mg-map-layer-panel,.mg-map-identify-card,.mg-map-btn,.mg-map-status,.mg-map-legend-toggle svg{transition:none}}
