.reference-map-page { --map-boundary:var(--color-brand); --map-label:var(--color-primary); }
.reference-map-page .panel-card { min-width:0; }
.map-controls-panel { padding:14px 20px 16px;margin-bottom:10px;min-width:0; }
.map-controls-panel .map-toolbar { margin-bottom:0; }
@media (max-width:650px) { .map-controls-panel { padding:15px; } }
.map-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.map-search { margin-bottom:12px; }
.map-search { position:relative;z-index:900; }
#entityPanel { position:absolute;top:100%;left:0;right:0;margin:5px 0 0;padding:8px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #0003; }
#entityPanel #entityCount { margin:0 4px 6px; }
#entitySearchLabel { display:block;font-size:.82rem;font-weight:650;margin-bottom:5px; }
#entitySearch { width:100%;min-height:44px;padding:9px 12px;background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit; }

#entityCount { margin:4px 0;font-size:.8rem; }
.map-toolbar { display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:10px; }
.layer-selector { display:flex;gap:6px;flex-wrap:wrap; }
.layer-option { min-width:0; }
.layer-option [role="status"] { font-size:.75rem;max-width:180px;overflow-wrap:anywhere; }
.reference-map-page .map-layer-choice,.reference-map-page .map-secondary { min-height:36px;padding:5px 10px;font-size:.8rem;font-weight:700; }
.map-layer-choice[aria-checked="true"] { background:var(--color-brand);border-color:var(--color-brand);color:white; }
.map-workspace { display:block; }
.map-stage { min-width:0; }

#inspectorMessage { font-size:.82rem;overflow-wrap:anywhere; }
#inspectorMessage:empty,#inspectionQuality:empty { display:none; }
#locatorValue { display:block;font:700 1.15rem var(--font-mono);margin:9px 0; }
.inspection-entity { display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.85rem;overflow-wrap:anywhere;margin-bottom:9px; }
#prefixValue { font-weight:700; }
.inspection-codes { display:flex;flex-wrap:wrap;gap:5px 10px;font-size:.85rem;margin-bottom:6px; }
.inspection-codes span:empty { display:none; }
#gridValue,#inspectionQuality { font-size:.75rem;overflow-wrap:anywhere; }
#clearSelection { margin-top:8px; }
#entityPanel { margin:8px 0; }
#entityListHelp { font-size:.75rem; }
#entityResults { max-height:230px;overflow:auto;display:flex;flex-direction:column;gap:5px; }
.entity-result { display:grid;grid-template-columns:64px minmax(0,1fr);gap:2px 10px;width:100%;min-height:52px;padding:8px 12px;text-align:left;cursor:pointer;font:inherit;color:var(--color-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md); }
.entity-result strong { grid-row:1 / 3;align-self:center;font:700 1rem var(--font-mono); }
.entity-result span { font-size:.85rem;overflow-wrap:anywhere; }
.entity-result small { grid-column:2;font-size:.72rem; }
.entity-result:hover,.entity-result[aria-pressed="true"] { border-color:var(--color-brand);background:color-mix(in srgb,var(--color-brand) 10%,var(--color-surface)); }
.reference-sources { margin-top:12px;border-top:1px solid var(--color-border);padding-top:8px; }
.reference-sources summary { cursor:pointer;font-weight:650;font-size:.82rem;min-height:36px;align-content:center; }
.reference-sources .source-note { font-size:.78rem;overflow-wrap:anywhere;margin:7px 0; }
#referenceMap { width:100%;height:clamp(360px,65vh,660px);background:var(--color-surface);border-radius:var(--radius-md); }
#mapStatus { font-size:.8rem; }
.reference-map-page :focus-visible { outline:3px solid var(--color-brand);outline-offset:3px; }
.reference-map-page .leaflet-control-zoom a { min-width:36px;min-height:36px;line-height:36px; }
.reference-map-page .leaflet-control-zoom a,.reference-map-page .leaflet-control-attribution { background:var(--color-surface);color:var(--color-primary); }
.reference-map-page .leaflet-control-attribution { max-width:100%;white-space:normal;overflow-wrap:anywhere; }
.reference-map-page .leaflet-control-attribution a { color:var(--color-primary); }
.dxcc-prefix-label,.cq-zone-label,.itu-zone-label,.grid-locator-label { pointer-events:none!important;background:none;border:0; }
.dxcc-prefix-label span,.cq-zone-label span,.itu-zone-label span,.grid-locator-label span { display:block;text-align:center;font:700 12px/18px var(--font-mono),monospace;background:none;border:0;box-shadow:none;text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff,0 0 3px #fff;color:#25323d; }
.cq-zone-label span { color:#702078; }
.itu-zone-label span { color:#124a88; }
.dxcc-prefix-label span { font-size:13px; }
@media (max-width:575px) { #referenceMap { height:clamp(340px,58vh,480px); }.reference-map-page .map-layer-choice { padding:6px 9px; }.map-toolbar { gap:6px; }#entityResults { max-height:200px; } }

.reference-map-page .map-layer-choice { min-height:40px;padding:7px 15px;font-size:.88rem; }
.layer-selector { padding:4px;gap:4px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface); }
.reference-map-page .map-layer-choice { display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;font-size:.92rem; }
.map-layer-choice svg { width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;flex-shrink:0; }
.map-layer-choice[aria-checked="true"] { box-shadow:0 2px 5px #0002; }
.map-reference-popup #locatorValue { font-size:1.35rem;letter-spacing:.06em;color:var(--color-brand);padding-bottom:7px;border-bottom:1px solid var(--color-border); }
.map-reference-popup .inspection-entity { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px; }
.map-reference-popup #entityValue { font-size:1rem;font-weight:750; }
.map-reference-popup #prefixValue { font-family:var(--font-mono);font-size:.83rem;color:var(--color-muted); }
.map-reference-popup .inspection-codes { display:flex;gap:7px; }
.map-reference-popup .inspection-codes span { padding:5px 7px;background:var(--color-page);border-radius:4px;font:650 .78rem var(--font-mono); }
.map-reference-popup #gridValue { display:none; }
.map-reference-popup .reference-popup { min-width:min(220px,calc(100vw - 100px)); }
@media (max-width:575px) { .layer-option { flex:1 1 auto; }.map-reference-popup .inspection-entity { grid-template-columns:minmax(0,1fr) minmax(0,auto); } }
@media (max-width:575px) { .layer-selector { width:100%;flex-wrap:nowrap; }.layer-option { flex:1 1 auto; }.reference-map-page .map-layer-choice { width:100%;padding:6px 5px;font-size:.77rem;gap:4px; }.map-layer-choice svg { width:15px;height:15px; }#entityPanel #entityResults { max-height:min(230px,35vh); }.map-reference-popup .inspection-codes { gap:4px; }.map-reference-popup .inspection-codes span { padding:5px 4px;font-size:.73rem; } }
.map-reference-popup .leaflet-popup-content-wrapper,.map-reference-popup .leaflet-popup-tip { background:var(--color-surface);color:var(--color-primary); }
.map-reference-popup .leaflet-popup-content { max-width:min(260px,calc(100vw - 100px));margin:12px 26px 12px 12px;line-height:1.4; }
.map-reference-popup .leaflet-popup-content p { margin:6px 0; }
.map-reference-popup .leaflet-popup-close-button { width:32px;height:32px;font-size:24px;line-height:30px;color:var(--color-primary); }
.map-reference-popup #locatorValue { margin:0 0 7px; }
#referenceParking:not([hidden]) { margin-top:10px;max-width:350px; }

.map-stage { position:relative;z-index:0; }
.maps-utility { padding-top:12px; }
.map-icon-definitions { position:absolute;width:0;height:0;overflow:hidden; }
.map-toolbar { flex-wrap:nowrap;align-items:stretch;gap:10px; }
.layer-selector { flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;border:0;background:none;box-shadow:none;gap:8px; }
.layer-option { display:flex;flex-direction:column; }
.reference-map-page .map-layer-choice { width:100%;min-height:46px; }
#mapReset { display:flex;align-items:center;justify-content:center;gap:7px;flex:none;font-weight:650; }
#mapReset svg,.reference-popup svg { width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;flex-shrink:0; }
.reference-popup svg { position:static!important;display:block; }
.inspection-locator { display:flex;align-items:center;gap:7px;border-bottom:1px solid var(--color-border);margin-bottom:8px;color:var(--color-brand); }
.map-reference-popup .inspection-locator #locatorValue { margin:0;padding:0 0 7px;border:0; }
.inspection-codes>.reference-datum { display:inline-flex;align-items:center;gap:4px; }
.map-reference-popup .inspection-codes>.reference-datum>span { padding:0;background:none;font:inherit; }
.reference-datum:has(>span:empty),.inspection-locator:has(>#locatorValue:empty) { display:none; }
.reference-sources .source-note { font-size:.75rem;margin:8px 0;color:var(--color-muted); }
.reference-sources .source-note strong { color:var(--color-primary); }
.map-reference-popup .reference-heading { margin:0 0 10px;padding-bottom:9px;border-bottom:1px solid var(--color-border);color:var(--color-primary);font:750 1.1rem/1.25 var(--font-sans);overflow-wrap:anywhere; }
.inspection-data { display:grid;gap:6px; }
.reference-row { display:grid;grid-template-columns:15px minmax(0,1fr) minmax(0,auto);align-items:baseline;gap:7px;font-size:.79rem; }
.reference-row>svg { align-self:center; }
.reference-row>span { color:var(--color-muted); }
.map-reference-popup .reference-row>strong { color:var(--color-primary);text-align:right;font:700 .8rem var(--font-mono);overflow-wrap:anywhere;margin:0;padding:0;border:0; }
.reference-row:has(>strong:empty) { display:none; }
.map-reference-popup .reference-popup { min-width:min(240px,calc(100vw - 100px)); }
.map-reference-popup .leaflet-popup-content { max-width:min(280px,calc(100vw - 100px)); }
@media (max-width:575px) { .map-toolbar { flex-wrap:wrap; }.layer-selector { flex-basis:100%;grid-template-columns:repeat(2,minmax(0,1fr)); }.reference-map-page .map-layer-choice { font-size:.88rem;padding:8px; }.map-layer-choice svg { width:18px;height:18px; }#mapReset { min-height:38px;margin-left:auto; }.map-reference-popup .inspection-codes { gap:5px; }.map-reference-popup .inspection-codes>.reference-datum { padding:5px 4px;font-size:.7rem;gap:3px; }.reference-popup .inspection-codes svg { width:12px;height:12px; } }
.map-reference-popup .reference-row>strong:is(#prefixValue,#locatorValue) { font:700 .8rem var(--font-mono);color:var(--color-primary);letter-spacing:normal;margin:0;padding:0;border:0; }
.reference-actions { margin-top:9px;padding-top:9px;border-top:1px solid var(--color-border); }.reference-actions #clearSelection { margin-top:0; }
