.uas-map-container{max-width:1240px}
.uas-map-layout{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:24px;align-items:start}
.uas-map-panel,.uas-map-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);box-shadow:var(--shadow-small)}
.uas-map-panel{padding:22px}
.uas-map-panel h2{margin:0 0 16px;color:var(--color-primary-dark);font-size:1.25rem}
.uas-map-search{display:grid;gap:7px;font-weight:700}
.uas-map-search-row{display:flex;flex-direction:column;gap:8px}
.uas-map-search input{box-sizing:border-box;width:100%;min-width:0;padding:10px 11px;border:1px solid var(--color-border);border-radius:var(--radius-small);font:inherit}
.uas-map-search .button{align-self:flex-start;white-space:nowrap}
.uas-map-hint,.uas-map-layers p{margin:10px 0;color:var(--color-text-muted);font-size:.9rem;line-height:1.5}
.uas-map-location-button{width:100%;margin-top:8px}
.uas-map-layers{margin-top:22px;border-top:1px solid var(--color-border);padding-top:16px}
.uas-map-layers summary{cursor:pointer;font-weight:700;color:var(--color-primary-dark)}
.uas-map-layer-list{display:grid;gap:9px;margin-top:14px;max-height:430px;overflow:auto;padding-right:5px}
.uas-map-layer-list label{display:flex;align-items:flex-start;gap:8px;font-size:.93rem;line-height:1.35}
.uas-map-layer-list input{margin-top:.22rem}
.uas-map-card{overflow:hidden}
.uas-map-status{min-height:1.5em;margin:0;padding:13px 16px;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:.92rem}
.uas-map-status.is-error{color:#a32222;background:#fff4f2}
.uas-map-stage{position:relative}
.uas-map-canvas{height:580px;background:#eaf0f3}
.uas-map-canvas .leaflet-control-attribution{box-sizing:border-box;max-width:calc(100% - 12px);white-space:normal;line-height:1.35;overflow-wrap:anywhere}
.uas-map-loading{position:absolute;z-index:800;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;background:rgba(244,248,249,.82);color:var(--color-primary-dark);text-align:center;backdrop-filter:blur(2px)}
.uas-map-loading[hidden]{display:none}
.uas-map-loading strong{font-size:1.05rem}
.uas-map-loading span:last-child{font-size:.9rem;color:var(--color-text-muted)}
.uas-map-spinner{width:34px;height:34px;border:4px solid rgba(41,110,116,.22);border-top-color:#296e74;border-radius:50%;animation:uas-map-spin .8s linear infinite}
@keyframes uas-map-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.uas-map-spinner{animation-duration:1.8s}}
.uas-map-results{padding:18px 20px;border-top:1px solid var(--color-border);background:#f7faf9}
.uas-map-results[hidden]{display:none}
.uas-map-results h3{margin:0 0 8px;color:var(--color-primary-dark);font-size:1.05rem}
.uas-map-results>p{margin:6px 0;line-height:1.5}
.uas-map-results.is-active{background:#fff7f3;border-top-color:#e8c1b6}
.uas-map-results.is-incomplete{background:#fff1ef;border-top-color:#dca89e;color:#85291e}
.uas-map-result-zone{margin-top:13px;padding:12px 14px;border:1px solid #e7c9c1;border-radius:var(--radius-small);background:#fff}
.uas-map-result-zone.is-future{border-color:#b9cee0;background:#f5f9fc}
.uas-map-result-zone h4,.uas-map-result-zone p{margin:0 0 5px}
.uas-map-result-zone__type,.uas-map-results__meta{color:var(--color-text-muted);font-size:.86rem}
.uas-map-results__meta{margin-top:14px!important}
.uas-map-legal{margin:20px 0 0;color:var(--color-text-muted);font-size:.92rem;line-height:1.55}
.uas-map-popup{min-width:210px;max-width:300px}
.uas-map-popup__type{margin:0 0 3px;color:var(--color-primary-dark);font-size:.78rem;font-weight:700;text-transform:uppercase}
.uas-map-popup h3{margin:0 0 8px;font-size:1.05rem}
.uas-map-popup p{margin:7px 0;line-height:1.45}
.uas-map-popup__future{color:#315f8c;font-weight:700}
.uas-map-popup__reference{font-size:.86rem;color:#526271}
.uas-map-popup__note{font-size:.86rem;color:#526271}
@media(max-width:820px){.uas-map-layout{grid-template-columns:1fr}.uas-map-panel{padding:18px}.uas-map-canvas{height:480px}}
@media(max-width:520px){.uas-map-search .button{width:100%}.uas-map-canvas{height:410px}.uas-map-status{padding:12px 14px}.uas-map-panel{padding:16px}.uas-map-results{padding:16px}.uas-map-canvas .leaflet-control-attribution{font-size:9px}}
