@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/roboto-latin-400-normal-BqEyEoaF.woff2)format("woff2"),url(/assets/roboto-latin-400-normal-D27F5sTu.woff)format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-fsTFPL3E.woff)format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/roboto-latin-700-normal-BZpUvMxY.woff2)format("woff2"),url(/assets/roboto-latin-700-normal-YuyVweIx.woff)format("woff")}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(/assets/material-symbols-outlined-Bz-4pmf0.woff2)format("woff2")}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{--m3-primary:#1f6feb;--m3-on-primary:#fff;--m3-primary-container:#d6e3ff;--m3-on-primary-container:#001a41;--m3-surface:#fdfcff;--m3-surface-container:#f0f0f4;--m3-surface-container-high:#e8e9ed;--m3-on-surface:#1a1c1e;--m3-on-surface-variant:#43474e;--m3-outline:#74777f;--m3-outline-variant:#c4c7ce;--m3-success:#2e7d32;--m3-error:#b3261e;--m3-success-container:#dcf0df;--m3-error-container:#f9dedc;--m3-on-error-container:#410e0b;--m3-warning:#946200;--m3-warning-container:#ff98001f;--m3-tertiary:#6b4fa1;--m3-state-hover:#0000000f;--m3-state-press:#0000001f;--sl-color-primary-50:#eef4ff;--sl-color-primary-100:#d6e3ff;--sl-color-primary-200:#b6cdff;--sl-color-primary-300:#8db1ff;--sl-color-primary-400:#5b8eff;--sl-color-primary-500:#1f6feb;--sl-color-primary-600:#1a5fd0;--sl-color-primary-700:#144ba6;--sl-color-primary-800:#0e3a82;--sl-color-primary-900:#001a41;--sl-font-sans:"Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--sl-input-border-radius-medium:8px;--sl-input-border-radius-small:6px;--sl-border-radius-medium:12px;--sl-border-radius-large:16px;--sl-shadow-medium:0 1px 2px #00000014, 0 2px 6px #0000000f;--sl-shadow-large:0 4px 12px #0000001f, 0 8px 24px #00000014;--sl-button-font-size-medium:14px;--sl-input-height-medium:40px;--sl-input-height-small:32px;--sl-focus-ring-color:var(--m3-primary);--sl-focus-ring-width:2px}:root[data-theme=dark]{--m3-primary:#8db1ff;--m3-on-primary:#00214f;--m3-primary-container:#1d3a73;--m3-on-primary-container:#d6e3ff;--m3-surface:#1f1f1f;--m3-surface-container:#2a2a2a;--m3-surface-container-high:#353535;--m3-on-surface:#e3e3e3;--m3-on-surface-variant:#c0c4cb;--m3-outline:#8e9099;--m3-outline-variant:#ffffff29;--m3-success:#9bd6ad;--m3-error:#ff8a80;--m3-success-container:#9bd6ad29;--m3-error-container:#ff8a8029;--m3-on-error-container:#f2b8b5;--m3-warning:#ffcc80;--m3-warning-container:#ffb74d2e;--m3-tertiary:#cbbdf5;--m3-state-hover:#ffffff14;--m3-state-press:#ffffff24}:root{--color-primary:#0080ff;--color-primary-hover:#06c;--color-primary-active:#004d99;--color-primary-light:#0080ff1a;--color-primary-border:#0080ff66;--color-primary-alpha-10:#0080ff1a;--color-primary-alpha-20:#0080ff33;--color-primary-alpha-25:#0080ff40;--color-primary-alpha-30:#0080ff4d;--color-primary-contrast:#fff;--color-primary-text:#fff;--color-success:#28a745;--color-success-light:#28a7451a;--color-warning:#ffc107;--color-warning-light:#ffc1071a;--color-danger:#d32f2f;--color-danger-hover:#b71c1c;--color-danger-light:#d32f2f1a;--color-danger-border:#d32f2f33;--color-error:var(--color-danger);--color-white:#fff;--color-black:#000;--color-gray-50:#fafafa;--color-gray-100:#f5f5f5;--color-gray-200:#eee;--color-gray-300:#e0e0e0;--color-gray-400:#bdbdbd;--color-gray-500:#9e9e9e;--color-gray-600:#757575;--color-gray-700:#616161;--color-gray-800:#424242;--color-gray-900:#212121;--color-border:#ccc;--color-border-light:#ddd;--color-border-dark:#999;--color-border-focus:var(--color-primary);--color-text-primary:#212121;--color-text-secondary:#444;--color-text-muted:#666;--color-text-disabled:#999;--color-text-inverse:#fff;--color-bg-primary:#fff;--color-bg-secondary:#fafafa;--color-bg-disabled:#f5f5f5;--color-bg-overlay:#00000080;--color-hover-bg:#f5f5f5;--color-hover-text:#212121;--color-header-bg:#fff;--color-primary-dark:#005bb5;--color-surface:#fff;--color-surface-hover:#e9ecef;--color-surface-focus:#f8f9fa;--color-surface-disabled:#f5f5f5;--color-surface-subtle:#fafafa;--color-surface-elevated:#fff;--color-surface-button:#f8f9fa;--color-surface-button-hover:#e9ecef;--color-border-hover:#adb5bd;--color-data-encounters-start:#fff3b0;--color-data-encounters-end:#d00000;--color-data-rate-start:#a7f3ff;--color-data-rate-end:#0038a8;--color-data-time-start:#c1fba4;--color-data-time-end:#ff6700;--color-data-nmac-start:#e0bbff;--color-data-nmac-end:#6a00f4;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:32px;--space-4xl:48px;--space-control-padding:var(--space-sm);--space-panel-padding:var(--space-md);--space-button-padding-y:var(--space-sm);--space-button-padding-x:10px;--space-field-margin:var(--space-md);--font-family-primary:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono:"Monaco", "Menlo", "Ubuntu Mono", monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-lg:14px;--font-size-xl:16px;--font-size-2xl:18px;--font-size-3xl:24px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.4;--line-height-relaxed:1.6;--border-width-thin:1px;--border-width-medium:2px;--border-width-thick:4px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-round:50%;--radius-button:var(--radius-md);--radius-panel:var(--radius-lg);--radius-input:var(--radius-md);--shadow-sm:0 1px 2px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 6px 20px #00000026;--shadow-xl:0 10px 25px #0003;--shadow-panel:var(--shadow-lg);--shadow-button:var(--shadow-sm);--shadow-dropdown:var(--shadow-md);--width-control:330px;--width-map-min:600px;--width-button-min:60px;--width-input-min:120px;--height-button:32px;--height-input:32px;--height-control-item:28px;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-tooltip:1070;--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--transition-fast:all var(--duration-fast) var(--ease-out);--transition-normal:all var(--duration-normal) var(--ease-out);--transition-colors:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--breakpoint-2xl:1400px}[data-theme=dark]{--color-bg-primary:#1a1a1a;--color-bg-secondary:#2d2d2d;--color-bg-disabled:#333;--color-bg-overlay:#000000b3;--color-text-primary:#fff;--color-text-secondary:#e0e0e0;--color-text-muted:#b3b3b3;--color-text-disabled:#666;--color-text-inverse:#212121;--color-border:#404040;--color-border-light:#555;--color-border-dark:#333;--color-gray-50:#333;--color-gray-100:#404040;--color-gray-200:#555;--color-gray-300:#666;--color-gray-400:#777;--color-gray-500:#888;--color-gray-600:#999;--color-gray-700:#aaa;--color-gray-800:#ccc;--color-gray-900:#e0e0e0;--color-primary:#4da6ff;--color-primary-hover:#66b3ff;--color-primary-light:#4da6ff33;--color-hover-bg:#333;--color-hover-text:#fff;--color-header-bg:#2a2a2a;--color-primary-text:#fff;--color-primary-dark:#39f;--color-surface:#2a2a2a;--color-surface-hover:#333;--color-surface-focus:#444;--color-surface-disabled:#333;--color-surface-subtle:#1f1f1f;--color-surface-elevated:#353535;--color-surface-button:#404040;--color-surface-button-hover:#4a4a4a;--color-border-hover:#666;--color-success:#4caf50;--color-warning:#ff9800;--color-warning-light:#ff980024;--color-danger:#ef5350;--color-danger-hover:#e53935}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg-primary:#1a1a1a;--color-bg-secondary:#2d2d2d;--color-text-primary:#fff;--color-text-secondary:#e0e0e0;--color-border:#404040;--color-surface:#2a2a2a;--color-surface-hover:#333;--color-surface-focus:#444;--color-surface-disabled:#333;--color-hover-bg:#333;--color-hover-text:#fff;--color-border-hover:#666;--color-text-disabled:#666}}@media (prefers-contrast:high){:root{--color-border:#000;--shadow-panel:0 0 0 2px var(--color-border)}}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-normal:0s;--duration-slow:0s;--transition-fast:none;--transition-normal:none;--transition-colors:none}}.m-0{margin:0}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.ml-0{margin-left:0}.ml-xs{margin-left:var(--space-xs)}.ml-sm{margin-left:var(--space-sm)}.ml-md{margin-left:var(--space-md)}.ml-lg{margin-left:var(--space-lg)}.mr-0{margin-right:0}.mr-xs{margin-right:var(--space-xs)}.mr-sm{margin-right:var(--space-sm)}.mr-md{margin-right:var(--space-md)}.mr-lg{margin-right:var(--space-lg)}.p-0{padding:0}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.pt-0{padding-top:0}.pt-xs{padding-top:var(--space-xs)}.pt-sm{padding-top:var(--space-sm)}.pt-md{padding-top:var(--space-md)}.pt-lg{padding-top:var(--space-lg)}.pb-0{padding-bottom:0}.pb-xs{padding-bottom:var(--space-xs)}.pb-sm{padding-bottom:var(--space-sm)}.pb-md{padding-bottom:var(--space-md)}.pb-lg{padding-bottom:var(--space-lg)}.pl-0{padding-left:0}.pl-xs{padding-left:var(--space-xs)}.pl-sm{padding-left:var(--space-sm)}.pl-md{padding-left:var(--space-md)}.pl-lg{padding-left:var(--space-lg)}.pr-0{padding-right:0}.pr-xs{padding-right:var(--space-xs)}.pr-sm{padding-right:var(--space-sm)}.pr-md{padding-right:var(--space-md)}.pr-lg{padding-right:var(--space-lg)}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.align-stretch{align-items:stretch}.flex-1{flex:1}.flex-auto{flex:auto}.flex-none{flex:none}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.grid-auto-1fr{grid-template-columns:auto 1fr}.grid-1fr-auto{grid-template-columns:1fr auto}.grid-auto-1fr-auto{grid-template-columns:auto 1fr auto}.grid-auto-1fr-auto-1fr{grid-template-columns:auto 1fr auto 1fr}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:sticky}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-disabled{color:var(--color-text-disabled)}.text-inverse{color:var(--color-text-inverse)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-nowrap{white-space:nowrap}.text-break{word-break:break-word}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.bg-disabled{background-color:var(--color-bg-disabled)}.bg-success{background-color:var(--color-success)}.bg-warning{background-color:var(--color-warning)}.bg-danger{background-color:var(--color-danger)}.border{border:var(--border-width-thin) solid var(--color-border)}.border-light{border:var(--border-width-thin) solid var(--color-border-light)}.border-dark{border:var(--border-width-thin) solid var(--color-border-dark)}.border-none{border:none}.border-t{border-top:var(--border-width-thin) solid var(--color-border)}.border-b{border-bottom:var(--border-width-thin) solid var(--color-border)}.border-l{border-left:var(--border-width-thin) solid var(--color-border)}.border-r{border-right:var(--border-width-thin) solid var(--color-border)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-round)}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.visible{visibility:visible}.invisible{visibility:hidden}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.focus-visible:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.transition{transition:var(--transition-normal)}.transition-fast{transition:var(--transition-fast)}.transition-colors{transition:var(--transition-colors)}.transition-none{transition:none}@media (width<=767px){.mobile-hidden{display:none}.mobile-only{display:block}}@media (width>=768px){.mobile-only{display:none}.desktop-only{display:block}}@media print{.print-hidden{display:none}}.basemap-control{position:relative}.basemap-control map-control-button{display:block}.basemap-grid{grid-template-columns:1fr;gap:12px;display:grid}.basemap-tile{cursor:pointer;border:1px solid var(--color-border,#e0e0e0);background:var(--color-bg-primary,#fff);border-radius:10px;transition:box-shadow .2s,transform .15s,border-color .2s;position:relative;overflow:hidden}.basemap-tile:hover{border-color:var(--color-primary,#1976d2);transform:translateY(-1px);box-shadow:0 3px 12px #0000001f}.basemap-tile:active{transform:translateY(0);box-shadow:0 1px 4px #00000014}.basemap-tile:focus{border-color:var(--color-primary,#1976d2);outline:none;box-shadow:0 0 0 3px #1976d233}.basemap-tile.selected{border-color:var(--color-primary,#1976d2);border-width:2px;box-shadow:0 2px 8px #1976d22e}.basemap-tile.selected .basemap-label{color:var(--color-primary,#1976d2);font-weight:600}.basemap-tile.selected:after{content:"✓";background:var(--color-primary,#1976d2);color:#fff;z-index:2;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:flex;position:absolute;top:4px;right:4px;box-shadow:0 1px 4px #00000040}.basemap-preview{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:10px 10px 0 0;width:100%;height:120px;position:relative}.basemap-preview:after{content:"";background:linear-gradient(#0000 40%,#00000014 100%);border-radius:10px 10px 0 0;position:absolute;inset:0}.basemap-label{color:var(--color-text-primary,#333);text-align:center;background:var(--color-bg-primary,#fff);letter-spacing:.1px;border-radius:0 0 10px 10px;padding:8px 10px;font-size:12px;font-weight:500}.no-layers{text-align:center;color:var(--color-text-secondary,#999);grid-column:1/-1;padding:32px 16px;font-size:13px;font-style:italic}[data-theme=dark] .basemap-tile{background:#2a2a2a;border-color:#444}[data-theme=dark] .basemap-tile:hover{box-shadow:0 3px 12px #00000059}[data-theme=dark] .basemap-label{color:#e0e0e0;background:#2a2a2a}[data-theme=dark] .basemap-tile.selected .basemap-label{color:#90caf9}[data-theme=dark] .basemap-preview:after{background:linear-gradient(#0000 40%,#00000040 100%)}[data-theme=dark] .no-layers{color:#aaa}.data-catalog-control{position:relative}.data-catalog-control map-control-button{display:block}.dc-search{background:var(--m3-surface-container-low,var(--color-bg-secondary,#f5f5f5));border:1px solid var(--m3-outline-variant,var(--color-border,#e0e0e0));border-radius:24px;align-items:center;gap:6px;margin:6px 0 8px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;display:flex}.dc-search:focus-within{border-color:var(--m3-primary,var(--color-primary,#1976d2));box-shadow:0 0 0 2px #1976d226}.dc-search-icon{opacity:.5;flex-shrink:0;font-size:14px}.dc-search-input{color:var(--color-text-primary,#333);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.dc-search-input::placeholder{color:var(--color-text-secondary,#999)}.dc-content{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#00000026 transparent;flex:1;min-height:0;padding:4px 0 8px;overflow-y:auto}.dc-content::-webkit-scrollbar{width:8px}.dc-content::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}.dc-content::-webkit-scrollbar-thumb:hover{background:#00000040}.dc-group{margin-bottom:4px}.dc-group-header{text-transform:uppercase;letter-spacing:.08em;color:var(--m3-on-surface,var(--color-text-primary,#1a1c1e));cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;padding:10px 16px 6px;font-size:11px;font-weight:600;transition:background .15s;display:flex}.dc-group-header:hover{background:var(--m3-state-hover,#0000000f)}.dc-chevron{font-size:12px;transition:transform .2s;display:inline-block}.dc-group--collapsed .dc-chevron{transform:rotate(-90deg)}.dc-group-body{grid-template-columns:1fr;gap:6px;max-height:6000px;padding:0 4px;transition:max-height .3s;display:grid;overflow:hidden}.dc-group--collapsed .dc-group-body{max-height:0}.dc-cat-icon{font-size:16px;line-height:1}.dc-cat-chip{background:var(--cat-accent,#9e9e9e);color:#fff;border-radius:10px;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:600;line-height:16px}.dc-card{background:var(--m3-surface,var(--color-bg-primary,#fdfcff));border:1px solid var(--m3-outline-variant,var(--color-border,#c4c7ce));border-left:4px solid var(--cat-accent,#9e9e9e);border-radius:12px;flex-direction:column;min-width:0;margin:4px 8px;padding:12px;transition:box-shadow .2s,background-color .15s,transform .15s;display:flex;position:relative;overflow:hidden}.dc-card:hover{background:var(--m3-surface-container,var(--color-bg-primary,#f0f0f4));transform:translateY(-1px);box-shadow:0 1px 3px #00000014}.dc-card--added{opacity:.5;pointer-events:none}.dc-card-top{align-items:center;gap:8px;margin-bottom:6px;display:flex}.dc-type-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.dc-type-vector{color:#1565c0;background:#e3f2fd}.dc-type-raster{color:#c62828;background:#fce4ec}.dc-card-title{color:var(--color-text-primary,#333);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.3;overflow:hidden}.dc-card-desc{color:var(--color-text-secondary,#666);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.dc-card-meta{margin-bottom:8px}.dc-attr{color:var(--color-text-secondary,#888);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-style:italic;display:block;overflow:hidden}.dc-card-footer{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;display:flex}.dc-licence-badge,.dc-res-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:600}.dc-licence-badge{color:#2e7d32;background:#e8f5e9}.dc-res-badge{color:#7b1fa2;background:#f3e5f5}.dc-add-btn{background:var(--color-primary,#1976d2);color:#fff;cursor:pointer;letter-spacing:.3px;border:none;border-radius:18px;margin-left:auto;padding:5px 14px;font-size:12px;font-weight:600;transition:background .2s,box-shadow .2s;position:relative;overflow:hidden}.dc-add-btn:hover{background:var(--color-primary-hover,#1565c0);box-shadow:0 2px 8px #1976d259}.dc-add-btn:active{box-shadow:none}.dc-btn-ripple{border-radius:inherit;opacity:0;pointer-events:none;background:#ffffff59;position:absolute;inset:0;transform:scale(0)}.dc-btn-ripple.dc-ripple-active{animation:.5s ease-out dcRipple}@keyframes dcRipple{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(2.5)}}.dc-added-badge{color:var(--color-success,#4caf50);margin-left:auto;padding:4px 10px;font-size:11px;font-weight:600}.dc-empty{text-align:center;color:var(--color-text-secondary,#999);padding:32px 16px;font-size:13px;font-style:italic}[data-theme=dark] .dc-flyout{background:var(--color-bg-primary,#1e1e1e);border-color:#444;box-shadow:0 8px 32px #00000080}[data-theme=dark] .dc-header{color:#fff;background:#263238}[data-theme=dark] .dc-search{background:#2a2a2a;border-color:#444}[data-theme=dark] .dc-search-input{color:#e0e0e0}[data-theme=dark] .dc-search-input::placeholder{color:#888}[data-theme=dark] .dc-group-header{color:#e0e0e0}[data-theme=dark] .dc-group-header:hover{background:#ffffff0f}[data-theme=dark] .dc-card{background:#2a2a2a;border-color:#444}[data-theme=dark] .dc-card:hover{box-shadow:0 3px 12px #00000059}[data-theme=dark] .dc-type-vector{color:#90caf9;background:#1a3a5c}[data-theme=dark] .dc-type-raster{color:#ef9a9a;background:#4a1a1a}[data-theme=dark] .dc-licence-badge{color:#81c784;background:#1b3a1b}[data-theme=dark] .dc-res-badge{color:#ce93d8;background:#301a3a}[data-theme=dark] .dc-card-title{color:#e0e0e0}[data-theme=dark] .dc-card-desc{color:#aaa}[data-theme=dark] .dc-added-badge{color:#81c784}[data-theme=dark] .dc-empty{color:#aaa}[data-theme=dark] .dc-content::-webkit-scrollbar-thumb{background:#ffffff26}[data-theme=dark] .dc-attr{color:#888}.btn{min-height:var(--height-button);min-width:var(--width-button-min);padding:var(--space-button-padding-y) var(--space-button-padding-x);box-sizing:border-box;font-family:var(--font-family-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);text-align:center;white-space:nowrap;background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-gray-800);border-radius:var(--radius-button);color:var(--color-text-primary);cursor:pointer;box-shadow:var(--shadow-button);transition:var(--transition-colors);-webkit-user-select:none;user-select:none;appearance:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-700);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn:disabled{background-color:var(--color-bg-disabled);border-color:var(--color-border-light);color:var(--color-text-disabled);cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary-border);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-primary:disabled{background-color:var(--color-bg-disabled);border-color:var(--color-border-light);color:var(--color-text-disabled)}.btn-success{background-color:var(--color-success);border-color:var(--color-success);color:var(--color-text-inverse)}.btn-success:hover:not(:disabled){background-color:#218838;border-color:#1e7e34}.btn-warning{background-color:var(--color-warning);border-color:var(--color-warning);color:var(--color-text-primary)}.btn-warning:hover:not(:disabled){background-color:#e0a800;border-color:#d39e00}.btn-danger,.btn-destructive{background-color:var(--color-danger);border-color:var(--color-danger-border);color:var(--color-text-inverse)}.btn-danger:hover:not(:disabled),.btn-destructive:hover:not(:disabled){background-color:#a50e1a;border-color:#a50e1a}.btn-secondary{border-color:var(--color-border-dark);color:var(--color-text-primary);background-color:#0000}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-700)}.btn-ghost{color:var(--color-text-primary);box-shadow:none;background-color:#0000;border-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-border-light)}.btn-sm{min-height:24px;padding:2px var(--space-sm);font-size:var(--font-size-sm);min-width:40px}.btn-lg{min-height:40px;padding:var(--space-md) var(--space-lg);font-size:var(--font-size-lg);min-width:80px}.btn-group{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.btn-group .btn{flex:1 1 0;min-width:0}.btn-group-attached{align-items:center;display:flex}.btn-group-attached .btn{border-right-width:0;border-radius:0}.btn-group-attached .btn:first-child{border-top-left-radius:var(--radius-button);border-bottom-left-radius:var(--radius-button)}.btn-group-attached .btn:last-child{border-top-right-radius:var(--radius-button);border-bottom-right-radius:var(--radius-button);border-right-width:var(--border-width-thin)}.btn-icon{align-items:center;gap:var(--space-xs);display:flex}.btn-icon-only{min-width:var(--height-button);padding:var(--space-xs)}.btn .icon{flex-shrink:0;width:16px;height:16px}.btn-loading{color:#0000;pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;animation:.6s linear infinite btn-spin;position:absolute;top:50%;left:50%}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=767px){.btn-group{flex-direction:column;align-items:stretch}.btn-group .btn{flex:none;width:100%}.btn{min-height:44px;padding:var(--space-md) var(--space-lg)}.btn-sm{min-height:36px;padding:var(--space-sm) var(--space-md)}}.theme-button{background:var(--color-surface-button,#f8f9fa);color:var(--color-text-primary,#333);border:1px solid var(--color-border,#dee2e6);cursor:pointer;letter-spacing:.01em;-webkit-user-select:none;user-select:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:500;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}.theme-button:hover:not(:disabled){background:var(--color-surface-button-hover,#e9ecef);border-color:var(--color-border-hover,#adb5bd);transform:translateY(-1px);box-shadow:0 2px 8px #0000001f,0 1px 4px #00000014}.theme-button:active:not(:disabled){transition-duration:.1s;transform:translateY(0);box-shadow:0 1px 2px #00000014}.theme-button.primary{background:var(--color-primary,#0080ff);color:#fff;border-color:var(--color-primary,#0080ff);box-shadow:0 2px 4px #0080ff33,0 1px 2px #00000014}.theme-button.primary:hover:not(:disabled){background:var(--color-primary-hover,#06c);border-color:var(--color-primary-hover,#06c);box-shadow:0 4px 12px #0080ff40,0 2px 6px #0000001f}.theme-button.secondary{background:var(--color-surface-button,#f8f9fa);color:var(--color-text-primary,#333);border-color:var(--color-border,#dee2e6)}.theme-button.secondary:hover:not(:disabled){background:var(--color-surface-button-hover,#e9ecef);border-color:var(--color-border-hover,#adb5bd)}.theme-button.danger{background:var(--color-danger,#d32f2f);color:#fff;border-color:var(--color-danger,#d32f2f);box-shadow:0 2px 4px #d32f2f33,0 1px 2px #00000014}.theme-button.danger:hover:not(:disabled){background:var(--color-danger-hover,#b71c1c);border-color:var(--color-danger-hover,#b71c1c);box-shadow:0 4px 12px #d32f2f40,0 2px 6px #0000001f}.theme-button.danger:focus{box-shadow:0 0 0 3px #d32f2f40,0 4px 12px #d32f2f40}.theme-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (prefers-contrast:high){.btn{border-width:var(--border-width-medium)}}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:hover:not(:disabled),.btn:active:not(:disabled){transform:none}.btn-loading:after{animation:none}}.form{gap:var(--space-field-margin);flex-direction:column;display:flex}.form-row{gap:var(--space-sm);align-items:flex-end;display:flex}.form-row .field{flex:1;margin-bottom:0}.form-grid{gap:var(--space-sm);align-items:center;display:grid}.form-grid-2{grid-template-columns:auto 1fr}.form-grid-4{grid-template-columns:auto 1fr auto 1fr}.field{margin-bottom:var(--space-field-margin);flex-direction:column;display:flex}.field:last-child{margin-bottom:0}.field-inline{align-items:center;gap:var(--space-sm);flex-direction:row}.field-inline label{flex-shrink:0;margin-bottom:0}.field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-xs);line-height:var(--line-height-normal);display:block}.field label.required:after{content:" *";color:var(--color-danger)}.label-sm{font-size:var(--font-size-xs)}.label-lg{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.input,.field input[type=text],.field input[type=number],.field input[type=email],.field input[type=password],.field input[type=url],.field input[type=search]{width:100%;min-height:var(--height-input);padding:var(--space-sm);box-sizing:border-box;font-family:var(--font-family-primary);font-size:var(--font-size-md);line-height:var(--line-height-normal);background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-input);color:var(--color-text-primary);transition:var(--transition-colors);appearance:none}.input:hover,.field input:hover{border-color:var(--color-border-dark)}.input:focus,.field input:focus{border-color:var(--color-border-focus);outline:none;box-shadow:0 0 0 3px #0078de1a}.input:disabled,.field input:disabled{background-color:var(--color-bg-disabled);border-color:var(--color-border-light);color:var(--color-text-disabled);cursor:not-allowed}.input-sm{min-height:28px;padding:var(--space-xs);font-size:var(--font-size-sm)}.input-lg{min-height:40px;padding:var(--space-md);font-size:var(--font-size-lg)}.select,.field select{width:100%;min-height:var(--height-input);padding:var(--space-sm);padding-right:var(--space-2xl);box-sizing:border-box;font-family:var(--font-family-primary);font-size:var(--font-size-md);line-height:var(--line-height-normal);background-color:var(--color-white);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right var(--space-sm) center;border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-input);color:var(--color-text-primary);cursor:pointer;transition:var(--transition-colors);appearance:none;background-repeat:no-repeat;background-size:16px 16px}.select:hover,.field select:hover{border-color:var(--color-border-dark)}.select:focus,.field select:focus{border-color:var(--color-border-focus);outline:none;box-shadow:0 0 0 3px #0078de1a}.select:disabled,.field select:disabled{background-color:var(--color-bg-disabled);border-color:var(--color-border-light);color:var(--color-text-disabled);cursor:not-allowed}.range,.field input[type=range]{background:var(--color-gray-200);appearance:none;border-radius:3px;outline:none;width:100%;height:6px}.range::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:var(--transition-fast);border-radius:50%}.field input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:var(--transition-fast);border-radius:50%}.range::-webkit-slider-thumb:hover{background:var(--color-primary-hover);transform:scale(1.1)}.field input[type=range]::-webkit-slider-thumb:hover{background:var(--color-primary-hover);transform:scale(1.1)}.range::-moz-range-thumb{background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:var(--transition-fast);border:none;border-radius:50%}.field input[type=range]::-moz-range-thumb{background:var(--color-primary);cursor:pointer;width:20px;height:20px;transition:var(--transition-fast);border:none;border-radius:50%}.range::-moz-range-thumb:hover{background:var(--color-primary-hover);transform:scale(1.1)}.field input[type=range]::-moz-range-thumb:hover{background:var(--color-primary-hover);transform:scale(1.1)}.checkbox,.radio,.field input[type=checkbox],.field input[type=radio]{width:16px;height:16px;margin-right:var(--space-xs);accent-color:var(--color-primary)}.checkbox-group,.radio-group{gap:var(--space-xs);flex-direction:column;display:flex}.checkbox-group.inline,.radio-group.inline{gap:var(--space-md);flex-flow:wrap}.checkbox-item,.radio-item{cursor:pointer;align-items:center;display:flex}.checkbox-item label,.radio-item label{cursor:pointer;font-weight:var(--font-weight-normal);margin-bottom:0}.field.valid input,.field.valid select,.input.valid{border-color:var(--color-success)}.field.valid input:focus,.field.valid select:focus,.input.valid:focus{box-shadow:0 0 0 3px #28a7451a}.field.invalid input,.field.invalid select,.input.invalid{border-color:var(--color-danger)}.field.invalid input:focus,.field.invalid select:focus,.input.invalid:focus{box-shadow:0 0 0 3px #b000201a}.field-message{font-size:var(--font-size-xs);margin-top:var(--space-xs);line-height:var(--line-height-normal)}.field-message.error{color:var(--color-danger)}.field-message.success{color:var(--color-success)}.field-message.info{color:var(--color-text-muted)}.field-error{margin-top:var(--space-xs);color:var(--m3-error,#b3261e);font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.input-group{align-items:stretch;display:flex}.input-group .input{border-right-width:0;border-radius:0}.input-group .input:first-child{border-top-left-radius:var(--radius-input);border-bottom-left-radius:var(--radius-input)}.input-group .input:last-child{border-top-right-radius:var(--radius-input);border-bottom-right-radius:var(--radius-input);border-right-width:var(--border-width-thin)}.input-group-addon{padding:var(--space-sm);background-color:var(--color-gray-50);border:var(--border-width-thin) solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-muted);align-items:center;display:flex}.input-group-addon:first-child{border-top-left-radius:var(--radius-input);border-bottom-left-radius:var(--radius-input);border-right-width:0}.input-group-addon:last-child{border-top-right-radius:var(--radius-input);border-bottom-right-radius:var(--radius-input);border-left-width:0}@media (width<=767px){.form-row{flex-direction:column;align-items:stretch}.form-grid-4,.form-grid-2{grid-template-columns:1fr}.input,.select,.field input,.field select{min-height:44px;padding:var(--space-md)}.input-sm{min-height:36px}}@media (prefers-contrast:high){.input,.select,.field input,.field select{border-width:var(--border-width-medium)}}.panel{box-sizing:border-box;background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-panel);width:100%;box-shadow:var(--shadow-panel);flex-direction:column;display:flex}.panel-padded{padding:var(--space-panel-padding)}.panel-control{width:var(--width-control);background-color:var(--color-white);padding:var(--space-control-padding);border-radius:var(--radius-md);box-shadow:var(--shadow-md);gap:var(--space-sm)}.panel-flyout{z-index:var(--z-dropdown);background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-lg);padding:var(--space-xs);position:absolute}.panel-modal{z-index:var(--z-modal);background-color:var(--color-white);border-radius:var(--radius-lg);max-width:90vw;max-height:90vh;box-shadow:var(--shadow-xl);padding:var(--space-2xl);position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.panel-sidebar{background-color:var(--color-bg-secondary);border-right:var(--border-width-thin) solid var(--color-border-light);height:100vh;padding:var(--space-lg);overflow-y:auto}.panel-card{border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-lg);background-color:var(--color-white);padding:var(--space-lg);box-shadow:var(--shadow-sm)}.panel-highlight{border-color:var(--color-primary);background-color:var(--color-primary-light)}.panel-warning{border-color:var(--color-warning);background-color:var(--color-warning-light)}.panel-error{border-color:var(--color-danger);background-color:var(--color-danger-light)}.panel-header{padding-bottom:var(--space-md);border-bottom:var(--border-width-thin) solid var(--color-border-light);margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.panel-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.panel-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:var(--space-xs) 0 0 0}.panel-body{flex:1;overflow-y:auto}.panel-footer{justify-content:flex-end;gap:var(--space-sm);padding-top:var(--space-md);border-top:var(--border-width-thin) solid var(--color-border-light);margin-top:var(--space-md);display:flex}.panel-grid{gap:var(--space-md);display:grid}.panel-grid-2{grid-template-columns:auto 1fr;align-items:center}.panel-grid-3{grid-template-columns:auto 1fr auto;align-items:center}.panel-grid-4{grid-template-columns:auto 1fr auto 1fr;align-items:center}.panel-row{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.panel-row:last-child{margin-bottom:0}.panel-column{gap:var(--space-sm);flex-direction:column;display:flex}.panel-log{gap:var(--space-sm);width:min(560px,45vw);height:40vh;padding:var(--space-sm);background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:900;opacity:0;pointer-events:none;visibility:hidden;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), visibility 0s linear var(--duration-normal);grid-template-columns:1fr 1fr;margin-right:50px;display:grid;position:absolute;bottom:64px;right:50%;transform:translateY(10px)}.panel-log.open{opacity:1;pointer-events:auto;visibility:visible;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out);transform:translateY(0)}.panel-query{width:min(560px,45vw);max-height:60vh;padding:var(--space-md);background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);z-index:900;font-size:var(--font-size-sm);opacity:0;pointer-events:none;visibility:hidden;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), visibility 0s linear var(--duration-normal);margin-left:50px;position:absolute;bottom:64px;left:50%;overflow:auto;transform:translateY(10px)}.panel-query.open{opacity:1;pointer-events:auto;visibility:visible;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out);transform:translateY(0)}.panel-slide-in-right{animation:slideInRight var(--duration-normal) var(--ease-out)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.panel-fade-in{animation:fadeIn var(--duration-normal) var(--ease-out)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.panel-scale-in{animation:scaleIn var(--duration-normal) var(--ease-out)}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (width<=767px){.panel-control{width:100%;max-width:calc(100vw - var(--space-lg))}.panel-modal{margin:var(--space-md);max-width:calc(100vw - var(--space-2xl));max-height:calc(100vh - var(--space-2xl))}.panel-log,.panel-query{left:var(--space-md);right:var(--space-md);bottom:var(--space-md);width:auto;height:50vh;margin:0;position:fixed}.panel-log{grid-template-columns:1fr;height:60vh}.panel-grid-4,.panel-grid-3,.panel-grid-2{grid-template-columns:1fr}.panel-row{flex-direction:column;align-items:stretch}}.panel[tabindex]{outline:none}.panel[tabindex]:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}@media (prefers-contrast:high){.panel{border-width:var(--border-width-medium)}}@media (prefers-reduced-motion:reduce){.panel-log,.panel-query{transition:none}.panel-slide-in-right,.panel-fade-in,.panel-scale-in{animation:none}}html,body{height:100%;font-family:var(--font-family-primary);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);margin:0;padding:0}#app{flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}#right{flex-direction:column;height:100vh;display:flex;position:relative}#map{background-color:var(--color-gray-100);flex:auto;min-height:280px;position:relative}.home-control .btn{background-color:var(--color-white);border-radius:var(--radius-sm);width:30px;min-width:30px;height:30px;transition:var(--transition-colors);border:none;justify-content:center;align-items:center;padding:0;display:flex}.home-control .btn:hover{background-color:var(--color-gray-50);transform:none}.home-control .btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:1px}.mini-flyout{background-color:var(--color-white);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-md);min-width:150px;padding:var(--space-xs);z-index:var(--z-dropdown);box-shadow:var(--shadow-lg);display:none;position:absolute;top:36px;left:0}.mini-flyout button{gap:var(--space-sm);box-sizing:border-box;text-align:left;width:100%;min-width:0;padding:var(--space-sm);background-color:var(--color-white);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:var(--transition-colors);border:0;grid-template-columns:20px 1fr;align-items:center;display:grid}.mini-flyout button:hover{background-color:var(--color-gray-50)}.edit-actions-flyout{background-color:var(--color-white)!important;border:var(--border-width-thin) solid var(--color-border)!important;border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-md)!important;padding:var(--space-xs)!important}.edit-actions-flyout a{background-color:var(--color-white)!important;border:var(--border-width-thin) solid var(--color-border)!important;border-radius:var(--radius-sm)!important;color:var(--color-text-primary)!important;transition:var(--transition-colors)!important}.edit-actions-flyout a:hover{background-color:var(--color-gray-50)!important;color:var(--color-text-primary)!important}.layers-panel{gap:var(--space-sm);flex-direction:column;max-height:300px;display:flex;overflow-y:auto}.layers-panel .section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs);color:var(--color-text-primary)}.layers-panel .row{gap:var(--space-sm);padding:var(--space-sm);border:var(--border-width-thin) solid var(--color-border-light);border-radius:var(--radius-md);background-color:var(--color-white);transition:var(--transition-colors);grid-template-rows:auto auto;grid-template-columns:18px 1fr;align-items:center;display:grid}.layers-panel .row:hover{background-color:var(--color-gray-50)}.layers-panel .patch{border:2px solid var(--color-gray-700);border-radius:var(--radius-sm);cursor:pointer;width:18px;height:16px;transition:var(--transition-colors);grid-area:1/1}.layers-panel .name-wrap{align-items:center;gap:var(--space-sm);grid-area:1/2;min-width:0;display:flex}.layers-panel .name{font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-primary);flex:auto;overflow:hidden}.layers-panel .rename{font-size:var(--font-size-xs);padding:2px var(--space-sm);background-color:var(--color-gray-50);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:none}.layers-panel .ctrls{gap:var(--space-xs);flex-wrap:wrap;grid-area:2/1/auto/span 2;display:flex}.layers-panel .ctrls .btn-sm{padding:2px var(--space-sm);font-size:var(--font-size-sm);border:var(--border-width-thin) solid var(--color-border-dark);border-radius:var(--radius-sm);background-color:var(--color-white);cursor:pointer;transition:var(--transition-colors)}.layers-panel .ctrls .btn-sm:hover{background-color:var(--color-gray-50)}.layers-panel .btn-extent{font-size:var(--font-size-xs);padding:2px var(--space-sm);white-space:nowrap}#error{color:var(--color-danger);font-size:var(--font-size-sm);min-height:18px;padding:var(--space-xs) var(--space-sm);background-color:var(--color-danger-light);border:var(--border-width-thin) solid var(--color-danger-border);border-radius:var(--radius-sm);margin:var(--space-xs);display:none}@media (width<=767px){.layers-panel .row{grid-template-rows:auto auto auto;grid-template-columns:1fr}.layers-panel .patch{grid-area:1/1;justify-self:start}.layers-panel .name-wrap{grid-area:2/1}.layers-panel .ctrls{grid-area:3/1}}@media (width<=480px){#map{min-height:200px}.mini-flyout{min-width:280px;max-width:calc(100vw - var(--space-2xl));position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}@media print{#app{height:auto}#map{flex:none;height:400px}.mini-flyout{display:none!important}}.layers-panel .patch:focus-visible,.layers-panel .rename:focus-visible,.layers-panel .btn-sm:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.skip-link{top:-40px;left:var(--space-sm);background-color:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-sm);border-radius:var(--radius-sm);z-index:var(--z-modal);transition:top var(--duration-fast) var(--ease-out);text-decoration:none;position:absolute}.skip-link:focus{top:var(--space-sm)}@media (prefers-reduced-motion:reduce){.layers-panel .row,.layers-panel .patch,.layers-panel .ctrls .btn-sm,.mini-flyout button{transition:none}}.maplibregl-popup .maplibregl-popup-content{box-shadow:var(--adac-popup-shadow,0 4px 12px #00000026);border-radius:12px;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow:hidden}.maplibregl-popup.maplibregl-popup-anchor-top .maplibregl-popup-tip,.maplibregl-popup.maplibregl-popup-anchor-top-left .maplibregl-popup-tip,.maplibregl-popup.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-bottom-color:var(--adac-popup-surface,#fff)}.maplibregl-popup.maplibregl-popup-anchor-bottom .maplibregl-popup-tip,.maplibregl-popup.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,.maplibregl-popup.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:var(--adac-popup-surface,#fff)}.maplibregl-popup.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--adac-popup-surface,#fff)}.maplibregl-popup .maplibregl-popup-close-button{color:var(--adac-popup-ink-soft,#555);background:0 0;border-radius:6px}.maplibregl-popup .maplibregl-popup-close-button:hover,.maplibregl-popup .maplibregl-popup-close-button:focus-visible{color:var(--adac-popup-ink,#000);background:var(--adac-popup-border,#00000014)}.maplibregl-popup.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--adac-popup-surface,#fff)}.popup-header{justify-content:space-between;align-items:center;gap:8px;padding:12px 32px 12px 12px;display:flex}.popup-title{text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:600;line-height:1.3}.popup-badge{text-transform:uppercase;letter-spacing:.5px;text-align:center;white-space:nowrap;border-radius:8px;flex-shrink:0;width:fit-content;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:500}.popup-body{padding:4px 12px 8px}.popup-row{grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:baseline;gap:12px;padding:7px 0;display:grid}.popup-row.popup-group{grid-template-columns:minmax(0,1fr)}.popup-row.popup-group .popup-label{font-weight:600}.popup-row.popup-group .popup-value{text-align:left;justify-self:start}.popup-label{text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:400}.popup-value{text-align:right;overflow-wrap:anywhere;justify-self:end;font-size:12px;font-weight:500;line-height:1.35}.popup-value.warn{color:var(--m3-warning,#946200);font-weight:700}.popup-note{margin:0 0 8px;font-size:11px;line-height:1.4}.popup-footer{text-align:center;padding:8px 12px;font-family:Courier New,monospace;font-size:10px}.theme-NMACGivenEncounter,.theme-EncounterRate,.theme-MACRate,.theme-EncounterTime,.theme-NumEncounters,.theme-NMACRate,.theme-spatial{--adac-popup-surface:var(--m3-surface,#fff);--adac-popup-surface-strong:#bbdefb;--adac-popup-border:#90caf9;--adac-popup-ink:#0d47a1;--adac-popup-ink-soft:#1565c0;--adac-popup-shadow:0 4px 12px #00000026}:root[data-theme=dark] .theme-NMACGivenEncounter,:root[data-theme=dark] .theme-EncounterRate,:root[data-theme=dark] .theme-MACRate,:root[data-theme=dark] .theme-EncounterTime,:root[data-theme=dark] .theme-NumEncounters,:root[data-theme=dark] .theme-NMACRate,:root[data-theme=dark] .theme-spatial{--adac-popup-surface:#152238;--adac-popup-surface-strong:#1d3a73;--adac-popup-border:#2f4d8a;--adac-popup-ink:#d6e3ff;--adac-popup-ink-soft:#a8c0e8;--adac-popup-shadow:0 6px 18px #0000008c}@media (prefers-color-scheme:dark){:root:not([data-theme]) .theme-NMACGivenEncounter,:root:not([data-theme]) .theme-EncounterRate,:root:not([data-theme]) .theme-MACRate,:root:not([data-theme]) .theme-EncounterTime,:root:not([data-theme]) .theme-NumEncounters,:root:not([data-theme]) .theme-NMACRate,:root:not([data-theme]) .theme-spatial{--adac-popup-surface:#152238;--adac-popup-surface-strong:#1d3a73;--adac-popup-border:#2f4d8a;--adac-popup-ink:#d6e3ff;--adac-popup-ink-soft:#a8c0e8;--adac-popup-shadow:0 6px 18px #0000008c}}.maplibregl-popup.theme-NMACGivenEncounter .maplibregl-popup-content,.maplibregl-popup.theme-EncounterRate .maplibregl-popup-content,.maplibregl-popup.theme-MACRate .maplibregl-popup-content,.maplibregl-popup.theme-EncounterTime .maplibregl-popup-content,.maplibregl-popup.theme-NumEncounters .maplibregl-popup-content,.maplibregl-popup.theme-NMACRate .maplibregl-popup-content,.maplibregl-popup.theme-spatial .maplibregl-popup-content{background:var(--adac-popup-surface);color:var(--adac-popup-ink)}.theme-NMACGivenEncounter .popup-header,.theme-EncounterRate .popup-header,.theme-MACRate .popup-header,.theme-EncounterTime .popup-header,.theme-NumEncounters .popup-header,.theme-NMACRate .popup-header,.theme-spatial .popup-header{border-bottom:1px solid var(--adac-popup-border);background:var(--adac-popup-surface-strong)}.theme-NMACGivenEncounter .popup-title,.theme-EncounterRate .popup-title,.theme-MACRate .popup-title,.theme-EncounterTime .popup-title,.theme-NumEncounters .popup-title,.theme-NMACRate .popup-title,.theme-spatial .popup-title{color:var(--adac-popup-ink)}.theme-NMACGivenEncounter .popup-badge,.theme-EncounterRate .popup-badge,.theme-MACRate .popup-badge,.theme-EncounterTime .popup-badge,.theme-NumEncounters .popup-badge,.theme-NMACRate .popup-badge,.theme-spatial .popup-badge{background:var(--adac-popup-border);color:var(--adac-popup-ink)}.theme-NMACGivenEncounter .popup-label,.theme-EncounterRate .popup-label,.theme-MACRate .popup-label,.theme-EncounterTime .popup-label,.theme-NumEncounters .popup-label,.theme-NMACRate .popup-label,.theme-spatial .popup-label{color:var(--adac-popup-ink-soft)}.theme-NMACGivenEncounter .popup-value,.theme-EncounterRate .popup-value,.theme-MACRate .popup-value,.theme-EncounterTime .popup-value,.theme-NumEncounters .popup-value,.theme-NMACRate .popup-value,.theme-spatial .popup-value{color:var(--adac-popup-ink)}.theme-NMACGivenEncounter .popup-row+.popup-row,.theme-EncounterRate .popup-row+.popup-row,.theme-MACRate .popup-row+.popup-row,.theme-EncounterTime .popup-row+.popup-row,.theme-NumEncounters .popup-row+.popup-row,.theme-NMACRate .popup-row+.popup-row,.theme-spatial .popup-row+.popup-row{border-top:1px solid var(--adac-popup-border)}.theme-NMACGivenEncounter .popup-note,.theme-EncounterRate .popup-note,.theme-MACRate .popup-note,.theme-EncounterTime .popup-note,.theme-NumEncounters .popup-note,.theme-NMACRate .popup-note,.theme-spatial .popup-note{color:var(--adac-popup-ink-soft)}.theme-NMACGivenEncounter .popup-footer,.theme-EncounterRate .popup-footer,.theme-MACRate .popup-footer,.theme-EncounterTime .popup-footer,.theme-NumEncounters .popup-footer,.theme-NMACRate .popup-footer,.theme-spatial .popup-footer{border-top:1px solid var(--adac-popup-border);color:var(--adac-popup-ink-soft)}.geocode-search-panel{width:100%;height:100%;font-family:var(--font-family-primary);flex-direction:column;gap:12px;display:flex}.geocode-tabs{border-bottom:1px solid var(--m3-outline-variant,#c4c7ce);flex:none;gap:4px;display:flex}.geocode-tab{appearance:none;font-family:var(--font-family-primary);font-size:var(--font-size-sm,13px);color:var(--color-text-muted,#999);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1 1 0;margin-bottom:-1px;padding:8px 10px;font-weight:500;transition:color .12s,border-color .12s,background-color .12s}.geocode-tab:hover{background:var(--m3-state-hover,#0000000f);color:var(--m3-on-surface,#1a1c1e)}.geocode-tab.is-active{color:var(--m3-primary,#1f6feb);border-bottom-color:var(--m3-primary,#1f6feb)}.geocode-tab:focus-visible{outline:2px solid var(--m3-primary,#1f6feb);outline-offset:-2px}.geocode-tabpanel{flex-direction:column;flex:auto;gap:12px;min-height:0;display:flex}.geocode-tabpanel[hidden]{display:none}.geocode-input-row{background:var(--color-bg-primary,#fff);border:1px solid var(--color-gray-800,#424242);border-radius:4px;flex:none;align-items:center;display:flex;overflow:hidden}.geocode-input{font-size:var(--font-size-sm,13px);font-family:var(--font-family-primary);color:var(--color-text-primary,#333);background:0 0;border:none;outline:none;flex:1;padding:7px 10px}.geocode-input::placeholder{color:var(--color-text-muted,#999)}.geocode-clear{cursor:pointer;color:var(--color-text-muted,#999);background:0 0;border:none;padding:4px 8px;font-size:14px;line-height:1}.geocode-clear:hover{color:var(--color-text-primary,#333)}.geocode-results{background:0 0;flex:1;min-height:0;overflow-y:auto}.geocode-results:not(:empty){border-top:1px solid var(--m3-outline-variant,#c4c7ce)}.geocode-result-item{font-size:var(--font-size-sm,13px);cursor:pointer;border-bottom:1px solid var(--m3-outline-variant,#c4c7ce);color:var(--m3-on-surface,#1a1c1e);padding:12px 14px;transition:background-color .12s}.geocode-result-item:last-child{border-bottom:none}.geocode-result-item:hover{background:var(--m3-state-hover,#0000000f)}.geocode-result-item:focus-visible{outline:2px solid var(--m3-primary,#1f6feb);outline-offset:-2px}.geocode-no-results,.geocode-error{cursor:default;color:var(--color-text-muted,#999);font-style:italic}.coord-advanced-toggle{color:var(--color-text-muted,#999);cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;font-size:12px;display:flex}.coord-advanced-toggle input{accent-color:var(--m3-primary,#1f6feb);cursor:pointer;margin:0}.coord-crs-row{flex:none;align-items:flex-end;gap:8px;display:flex}.coord-crs-row[hidden]{display:none}.coord-field{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.coord-field[hidden]{display:none}.coord-zone-field{flex:none}.coord-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted,#999);font-size:10px;font-weight:600}.coord-field select{appearance:auto;border:1px solid var(--color-gray-800,#424242);background:var(--color-bg-primary,#fff);width:100%;color:var(--color-text-primary,#333);font-family:var(--font-family-primary);border-radius:4px;padding:6px 8px;font-size:12px}.coord-field select:focus-visible{outline:2px solid var(--m3-primary,#1f6feb);outline-offset:-1px}.coord-feedback{font-size:var(--font-size-sm,13px);flex:none}.coord-feedback:empty{display:none}.coord-feedback.is-invalid{color:var(--color-danger,#b3261e);font-style:italic}.coord-detected{text-transform:uppercase;letter-spacing:.04em;color:var(--m3-primary,#1f6feb);margin-bottom:6px;font-size:11px;font-weight:500}.coord-readout{flex-direction:column;gap:4px;display:flex}.coord-readout-row{grid-template-columns:34px 1fr;align-items:baseline;gap:8px;display:grid}.coord-readout-label{letter-spacing:.04em;color:var(--color-text-muted,#999);font-size:10px;font-weight:600}.coord-readout-value{font-family:var(--font-family-mono,ui-monospace, "Cascadia Mono", "Consolas", monospace);color:var(--m3-on-surface,#1a1c1e);overflow-wrap:anywhere;font-size:12px}.coord-actions{flex:none;gap:8px;display:flex}.coord-go,.coord-add{appearance:none;font-family:var(--font-family-primary);font-size:var(--font-size-sm,13px);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;flex:1 1 0;padding:9px 14px;font-weight:500;transition:filter .12s,background-color .12s,opacity .12s}.coord-go{color:#fff;background:var(--m3-primary,#1f6feb)}.coord-add{color:var(--m3-primary,#1f6feb);box-shadow:inset 0 0 0 1px var(--m3-outline-variant,#c4c7ce);background:0 0}.coord-go:hover:not(:disabled){filter:brightness(1.08)}.coord-add:hover:not(:disabled){background:var(--m3-state-hover,#0000000f)}.coord-go:disabled,.coord-add:disabled{opacity:.4;cursor:not-allowed}.coord-go:focus-visible,.coord-add:focus-visible{outline:2px solid var(--m3-primary,#1f6feb);outline-offset:2px}.coord-status{color:var(--m3-primary,#1f6feb);flex:none;font-size:11.5px}.coord-status:empty{display:none}.coord-status.is-error{color:var(--color-danger,#b3261e)}.coord-hint{border-top:1px solid var(--m3-outline-variant,#c4c7ce);min-height:0;color:var(--color-text-muted,#999);flex:auto;padding-top:8px;overflow-y:auto}.coord-hint-title{text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:10px;font-weight:600}.coord-hint-list{margin:0}.coord-hint-list dt{margin-top:6px;font-size:11px}.coord-hint-list dd{margin:2px 0 0}.coord-hint-note{margin:8px 0 0;font-size:11px;font-style:italic}.coord-hint-list code{font-family:var(--font-family-mono,ui-monospace, "Cascadia Mono", "Consolas", monospace);color:var(--m3-on-surface,#1a1c1e);overflow-wrap:anywhere;font-size:11.5px}.geocode-marker-pin{color:var(--m3-primary,#1f6feb);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.geocode-marker-pin svg{filter:drop-shadow(0 1px 2px #00000059);width:32px;height:32px;display:block}[data-theme=dark] .geocode-marker-pin{color:var(--m3-primary,#8db1ff)}[data-theme=dark] .geocode-input-row{background:var(--color-bg-secondary,#2a2a2a);border-color:#ffffff40}[data-theme=dark] .geocode-input{color:var(--color-text-primary,#fff)}[data-theme=dark] .geocode-input::placeholder,[data-theme=dark] .geocode-clear{color:var(--color-text-muted,#b3b3b3)}[data-theme=dark] .geocode-clear:hover{color:var(--color-text-primary,#fff)}[data-theme=dark] .geocode-results{background:0 0}[data-theme=dark] .geocode-results:not(:empty){border-top-color:var(--m3-outline-variant,#ffffff24)}[data-theme=dark] .geocode-result-item{color:var(--m3-on-surface,#e3e3e3);border-bottom-color:var(--m3-outline-variant,#ffffff24)}[data-theme=dark] .geocode-result-item:hover{background:var(--m3-state-hover,#ffffff14)}[data-theme=dark] .geocode-tabs{border-bottom-color:var(--m3-outline-variant,#ffffff24)}[data-theme=dark] .geocode-tab{color:var(--color-text-muted,#b3b3b3)}[data-theme=dark] .geocode-tab:hover{background:var(--m3-state-hover,#ffffff14);color:var(--m3-on-surface,#e3e3e3)}[data-theme=dark] .geocode-tab.is-active{color:var(--m3-primary,#8db1ff);border-bottom-color:var(--m3-primary,#8db1ff)}[data-theme=dark] .coord-detected{color:var(--m3-primary,#8db1ff)}[data-theme=dark] .coord-readout-value,[data-theme=dark] .coord-hint-list code{color:var(--m3-on-surface,#e3e3e3)}[data-theme=dark] .coord-readout-label,[data-theme=dark] .coord-hint{color:var(--color-text-muted,#b3b3b3)}[data-theme=dark] .coord-feedback.is-invalid{color:var(--color-danger,#f2b8b5)}[data-theme=dark] .coord-hint{border-top-color:var(--m3-outline-variant,#ffffff24)}[data-theme=dark] .coord-go{background:var(--m3-primary,#8db1ff);color:#10243e}[data-theme=dark] .coord-add{color:var(--m3-primary,#8db1ff);box-shadow:inset 0 0 0 1px var(--m3-outline-variant,#ffffff2e)}[data-theme=dark] .coord-add:hover:not(:disabled){background:var(--m3-state-hover,#ffffff14)}[data-theme=dark] .coord-status{color:var(--m3-primary,#8db1ff)}[data-theme=dark] .coord-status.is-error{color:var(--color-danger,#f2b8b5)}[data-theme=dark] .coord-advanced-toggle,[data-theme=dark] .coord-field-label{color:var(--color-text-muted,#b3b3b3)}[data-theme=dark] .coord-field select{background:var(--color-bg-secondary,#2a2a2a);color:var(--color-text-primary,#fff);border-color:#ffffff40}@media (prefers-color-scheme:dark){:root:not([data-theme]) .geocode-input-row{background:#2a2a2a;border-color:#ffffff40}:root:not([data-theme]) .geocode-input{color:#fff}:root:not([data-theme]) .geocode-results{background:0 0}:root:not([data-theme]) .geocode-result-item{color:var(--m3-on-surface,#e3e3e3);border-bottom-color:var(--m3-outline-variant,#ffffff24)}:root:not([data-theme]) .geocode-result-item:hover{background:var(--m3-state-hover,#ffffff14)}:root:not([data-theme]) .geocode-tabs{border-bottom-color:var(--m3-outline-variant,#ffffff24)}:root:not([data-theme]) .geocode-tab{color:#b3b3b3}:root:not([data-theme]) .geocode-tab.is-active{color:var(--m3-primary,#8db1ff);border-bottom-color:var(--m3-primary,#8db1ff)}:root:not([data-theme]) .coord-readout-value,:root:not([data-theme]) .coord-hint-list code{color:var(--m3-on-surface,#e3e3e3)}:root:not([data-theme]) .coord-hint{color:#b3b3b3;border-top-color:var(--m3-outline-variant,#ffffff24)}:root:not([data-theme]) .coord-go{background:var(--m3-primary,#8db1ff);color:#10243e}}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left{background:var(--m3-surface-container,#f3f3f3);border-right:1px solid var(--m3-outline-variant,#0000001f);z-index:1000;pointer-events:auto;flex-direction:column;align-items:center;gap:4px;width:60px;padding:8px 0;display:flex;top:0;bottom:0;left:0;overflow:visible;box-shadow:1px 0 2px #0000000a}html[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left{background:#161616;border-right-color:#ffffff24;box-shadow:1px 0 2px #0000004d}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl{float:none;clear:none;box-shadow:none;background:0 0;border:none;border-radius:0;margin:0}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .geocode-search-wrapper{overflow:visible}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group{flex-direction:column;gap:4px;display:flex}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group button{background:var(--m3-surface,#fff);border:none;border-radius:999px;width:40px;height:40px;transition:background-color .12s,box-shadow .12s;box-shadow:0 1px 2px #00000014,0 2px 6px #0000000f}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group button:hover{background:var(--m3-primary-container,#d6e3ff)}[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group button{background:#2d2d2d}[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group button .maplibregl-ctrl-icon{filter:invert()}[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .maplibregl-ctrl-group button:hover{background:#264a8a}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .dev-panel-control,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .help-control,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .dark-mode-toggle-control{margin-top:auto}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .dev-panel-control~.help-control,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .dev-panel-control~.dark-mode-toggle-control,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left .help-control~.dark-mode-toggle-control{margin-top:0}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.my-layers-control,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.identify-control{margin-top:16px;position:relative}body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.my-layers-control:before,body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.identify-control:before{content:"";background:var(--m3-outline-variant,#00000024);width:24px;height:1px;margin:-10px auto 6px;display:block}html[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.my-layers-control:before,html[data-theme=dark] body.new-flyouts.engine-maplibre .maplibregl-ctrl-top-left>.identify-control:before{background:#ffffff24}body.engine-maplibre{--adac-attrib-clear-x:60px;--adac-attrib-clear-y:0px;--adac-attrib-pane-band:72px;--adac-attrib-legend-band:0px;--adac-attrib-floor:80px}body.engine-maplibre.new-flyouts{--adac-attrib-clear-x:70px}body.engine-maplibre:has(coord-zoom-level[expanded]){--adac-attrib-clear-x:310px}body.engine-maplibre:has(adac-flyout[open]){--adac-attrib-clear-x:450px}body.engine-maplibre:has(adac-flyout[flyout-id=help][open]){--adac-attrib-clear-x:670px}body.engine-maplibre:has(.log.open){--adac-attrib-clear-y:calc(40vh + 14px)}body.engine-maplibre:has(adac-pane[expanded]){--adac-attrib-pane-band:416px}body.engine-maplibre:has(adac-map-legend:not(.hidden):not([hidden])){--adac-attrib-legend-band:314px}body.engine-maplibre .maplibregl-ctrl-bottom-left{left:var(--adac-attrib-clear-x,70px);bottom:var(--adac-attrib-clear-y,0px)}body.engine-maplibre .maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib{box-sizing:border-box;overflow-wrap:anywhere;max-width:max(var(--adac-attrib-floor,0px), calc(100vw - var(--adac-attrib-clear-x,70px) - var(--adac-attrib-pane-band,72px) - var(--adac-attrib-legend-band,0px) - 20px))}html[data-theme=dark] body.engine-maplibre .maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib{color:#e3e3e3;background-color:#161616c7}html[data-theme=dark] body.engine-maplibre .maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib a{color:#b9c9ea}html[data-theme=dark] body.engine-maplibre .maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button{filter:invert();background-color:#0000}.container{width:100%;padding-left:var(--space-md);padding-right:var(--space-md);margin-left:auto;margin-right:auto}.container-fluid{width:100%;padding-left:var(--space-md);padding-right:var(--space-md)}@media (width>=576px){.container{max-width:540px}.d-sm-none{display:none!important}.d-sm-block{display:block!important}.d-sm-flex{display:flex!important}.d-sm-grid{display:grid!important}.grid-sm-1{grid-template-columns:1fr}.grid-sm-2{grid-template-columns:repeat(2,1fr)}.grid-sm-3{grid-template-columns:repeat(3,1fr)}.grid-sm-4{grid-template-columns:repeat(4,1fr)}.flex-sm-row{flex-direction:row}.flex-sm-column{flex-direction:column}.justify-sm-start{justify-content:flex-start}.justify-sm-center{justify-content:center}.justify-sm-end{justify-content:flex-end}.justify-sm-between{justify-content:space-between}.text-sm-left{text-align:left}.text-sm-center{text-align:center}.text-sm-right{text-align:right}}@media (width>=768px){.container{max-width:720px}.d-md-none{display:none!important}.d-md-block{display:block!important}.d-md-flex{display:flex!important}.d-md-grid{display:grid!important}.grid-md-1{grid-template-columns:1fr}.grid-md-2{grid-template-columns:repeat(2,1fr)}.grid-md-3{grid-template-columns:repeat(3,1fr)}.grid-md-4{grid-template-columns:repeat(4,1fr)}.flex-md-row{flex-direction:row}.flex-md-column{flex-direction:column}.justify-md-start{justify-content:flex-start}.justify-md-center{justify-content:center}.justify-md-end{justify-content:flex-end}.justify-md-between{justify-content:space-between}.text-md-left{text-align:left}.text-md-center{text-align:center}.text-md-right{text-align:right}.p-md-0{padding:0}.p-md-sm{padding:var(--space-sm)}.p-md-md{padding:var(--space-md)}.p-md-lg{padding:var(--space-lg)}.m-md-0{margin:0}.m-md-sm{margin:var(--space-sm)}.m-md-md{margin:var(--space-md)}.m-md-lg{margin:var(--space-lg)}}@media (width>=992px){.container{max-width:960px}.d-lg-none{display:none!important}.d-lg-block{display:block!important}.d-lg-flex{display:flex!important}.d-lg-grid{display:grid!important}.grid-lg-1{grid-template-columns:1fr}.grid-lg-2{grid-template-columns:repeat(2,1fr)}.grid-lg-3{grid-template-columns:repeat(3,1fr)}.grid-lg-4{grid-template-columns:repeat(4,1fr)}.flex-lg-row{flex-direction:row}.flex-lg-column{flex-direction:column}.justify-lg-start{justify-content:flex-start}.justify-lg-center{justify-content:center}.justify-lg-end{justify-content:flex-end}.justify-lg-between{justify-content:space-between}.text-lg-left{text-align:left}.text-lg-center{text-align:center}.text-lg-right{text-align:right}}@media (width>=1200px){.container{max-width:1140px}.d-xl-none{display:none!important}.d-xl-block{display:block!important}.d-xl-flex{display:flex!important}.d-xl-grid{display:grid!important}.grid-xl-1{grid-template-columns:1fr}.grid-xl-2{grid-template-columns:repeat(2,1fr)}.grid-xl-3{grid-template-columns:repeat(3,1fr)}.grid-xl-4{grid-template-columns:repeat(4,1fr)}.flex-xl-row{flex-direction:row}.flex-xl-column{flex-direction:column}.justify-xl-start{justify-content:flex-start}.justify-xl-center{justify-content:center}.justify-xl-end{justify-content:flex-end}.justify-xl-between{justify-content:space-between}.text-xl-left{text-align:left}.text-xl-center{text-align:center}.text-xl-right{text-align:right}}@media (width<=767px){:root{--height-button:44px;--height-input:44px;--height-control-item:36px;--space-button-padding-y:var(--space-md);--space-button-padding-x:var(--space-lg)}.form-row{flex-direction:column;align-items:stretch}.panel-control{width:100%;max-width:calc(100vw - var(--space-2xl))}.mobile-nav{background-color:var(--color-white);border-top:var(--border-width-thin) solid var(--color-border-light);padding:var(--space-sm);z-index:var(--z-fixed);position:fixed;bottom:0;left:0;right:0}.modal-overlay-mobile{background-color:var(--color-bg-overlay);z-index:var(--z-modal-backdrop);padding:var(--space-md);position:fixed;inset:0;overflow-y:auto}.panel-mobile-bottom{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:80vh;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.mobile-hidden{display:none!important}.mobile-only{display:block!important}}@media (width<=480px){:root{--space-md:8px;--space-lg:12px;--space-panel-padding:var(--space-sm)}.text-responsive{font-size:var(--font-size-sm)}.compact-mobile{padding:var(--space-xs);gap:var(--space-xs)}}@media (width>=768px){.desktop-only{display:block!important}.mobile-only{display:none!important}.hover-lift:hover{box-shadow:var(--shadow-lg);transition:var(--transition-fast);transform:translateY(-2px)}.desktop-sidebar{height:100vh;display:flex}.desktop-sidebar .sidebar{width:var(--width-control);flex-shrink:0;overflow-y:auto}.desktop-sidebar .main{flex:1;overflow:hidden}}@media (orientation:portrait){.portrait-stack{flex-direction:column}.portrait-full-width{width:100%}}@media (orientation:landscape){.landscape-row{flex-direction:row}.landscape-sidebar{width:var(--width-control)}}@media (-webkit-device-pixel-ratio>=2),(resolution>=192dpi){.crisp-border{border-width:.5px}.retina-shadow{box-shadow:0 2px 8px #0000001f,0 1px 3px #00000014}}@media (width>=768px){.text-scale-up{font-size:calc(var(--font-size-md) * 1.2)}}@media (prefers-contrast:high) and (width<=767px){.btn{border-width:var(--border-width-medium);font-weight:var(--font-weight-semibold)}}.responsive-img{max-width:100%;height:auto}.responsive-video{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.responsive-video iframe,.responsive-video video{width:100%;height:100%;position:absolute;top:0;left:0}@media (prefers-reduced-motion:reduce){.hover-lift:hover{transition:none;transform:none}}@media (width<=480px) and (height<=600px){.low-end-optimize{box-shadow:var(--shadow-sm)!important;transition:none!important;animation:none!important;transform:none!important}}#error{color:#b00020;background:#b000201a;border:1px solid #b0002033;border-radius:4px;min-height:18px;margin:4px;padding:4px 8px;font-size:12px;display:none}#error:not(:empty){display:block}#right{flex-direction:column;height:100vh;display:flex}.field{margin-bottom:12px}.field label{margin-bottom:4px;font-size:13px;display:block}.field input,.field select{box-sizing:border-box;border:1px solid #ccc;border-radius:6px;width:100%;padding:8px;font-size:13px}.row{grid-template-columns:1fr;gap:8px;display:grid}.btn{cursor:pointer;background:#fff;border:1px solid #222;border-radius:6px;padding:8px 10px;font-size:13px;display:inline-block}.btn.primary{color:#fff;background:#0078de;border-color:#0076de66}.btn.destructive{color:#fff;background:#b00020;border-color:#b000204d}.btn-group{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}#error{color:#b00020;min-height:18px;font-size:12px}.hint{color:#555;font-size:12px}.log{box-sizing:border-box;z-index:900;opacity:0;pointer-events:none;visibility:hidden;background:#fff;border:1px solid #ddd;border-radius:8px;flex-direction:column;gap:8px;width:min(560px,100vw - 60px);max-height:40vh;padding:8px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;display:flex;position:absolute;bottom:10px;left:70px;right:auto;transform:translateY(10px);box-shadow:0 6px 20px #0003}.log.open{opacity:1;pointer-events:auto;visibility:visible;transition:opacity .18s,transform .18s;transform:translateY(0)}.log pre{color:#d6e7ff;white-space:pre-wrap;word-break:break-word;background:#0b1020;border-radius:6px;flex:auto;min-height:80px;max-height:30vh;margin:0;padding:10px;font-size:12px;overflow:auto}.dev-tools-card h3{margin:0 0 6px;font-size:13px;font-weight:600}.dev-tools-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dev-btn{color:#d6e7ff;cursor:pointer;background:#1e293b;border:1px solid #334155;border-radius:4px;padding:4px 10px;font-size:11px;transition:background .15s}.dev-btn:hover{background:#334155}.dev-checkbox{color:#94a3b8;cursor:pointer;align-items:center;gap:4px;font-size:11px;display:flex}#dev-tile-zoom-row{border-top:1px solid #334155;margin-top:4px;padding-top:6px}.dev-tile-zoom-label{color:#94a3b8;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.dev-tile-zoom-note{color:#94a3b8;flex:100%;font-size:10px;font-style:italic;line-height:1.4}.dev-tile-zoom-note code{background:#1e293b;border-radius:3px;padding:0 4px;font-size:10px}.dev-pill{letter-spacing:.04em;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.dev-pill[data-state=auto]{color:#9bd6ad;cursor:default;background:#7ed59a2e}.dev-pill[data-state=override]{color:#ffd084;cursor:pointer;background:#ffb74d38}.dev-pill[data-state=override]:hover,.dev-pill[data-state=override]:focus-visible{filter:brightness(1.1);outline:none}.maplibregl-map.adac-draw-capture .maplibregl-marker,.maplibregl-map.adac-draw-capture .maplibregl-popup-content{pointer-events:none!important}.user-inputs div[style*=font-weight\:600],.user-inputs div[style*=fontWeight]{color:#333!important;visibility:visible!important;margin-bottom:4px!important;font-size:12px!important;font-weight:600!important;display:block!important}[data-theme=dark] .user-inputs div[style*=font-weight\:600],[data-theme=dark] .user-inputs div[style*=fontWeight]{color:#e0e0e0!important}#map{flex:auto;min-height:280px;position:relative}.mini-flyout{z-index:1000;background:#fff;border:1px solid #ccc;border-radius:6px;padding:4px;display:none;position:absolute;top:36px;left:0;box-shadow:0 4px 12px #00000026}.mini-flyout.open{display:block}.mini-flyout button{box-sizing:border-box;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:4px;grid-template-columns:20px 1fr;align-items:center;gap:8px;width:100%;min-width:0;padding:6px 8px;font-size:12px;display:grid}.mini-flyout button:hover{background:#f0f0f0}.icon{width:18px;height:18px}.layers-panel .section-title{margin-bottom:4px;font-size:12px;font-weight:600}.layers-panel .row{background:#fff;border:1px solid #eee;border-radius:6px;grid-template-rows:auto auto;grid-template-columns:18px 1fr;align-items:center;gap:6px;padding:6px;display:grid}.layers-panel .row+.row{margin-top:6px}.layers-panel .patch{cursor:pointer;border:2px solid #444;border-radius:4px;grid-area:1/1;width:18px;height:16px}.layers-panel .name-wrap{grid-area:1/2;align-items:center;gap:6px;min-width:0;display:flex}.layers-panel .name{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:12px;overflow:hidden}.layers-panel .rename{padding:2px 6px;font-size:11px;display:none}.layers-panel .row:hover .rename{display:inline-block}.layers-panel .ctrls{flex-wrap:wrap;grid-area:2/1/auto/span 2;gap:4px;display:flex}.layers-panel .ctrls .btn-sm{cursor:pointer;background:#fff;border:1px solid #999;border-radius:4px;padding:2px 6px;font-size:12px}.layers-panel .btn-extent{white-space:nowrap;padding:2px 6px;font-size:11px}.layers-panel .row.dim{opacity:.55}.layers-panel .hint{color:#555;font-size:11px}.user-inputs{font-family:var(--font-family-primary)!important}.user-inputs .field{margin-bottom:8px}.user-inputs .field label{color:var(--color-text-primary)!important;visibility:visible!important;margin-bottom:2px!important;font-size:11px!important;font-weight:600!important;display:block!important}.user-inputs .field input,.user-inputs .field select{border:1px solid var(--color-gray-400);background:var(--color-white);border-radius:4px;width:100%;padding:4px 6px;font-size:11px}.user-inputs .btn{border-radius:4px;margin:2px 0;padding:4px 8px;font-size:11px}.basemap-control a{font-size:16px!important}.identify-control,.mylayers-control,.query-builder-control,.results-mode-control,.theme-opacity-control,.draw-control,.upload-control,.add-web-layer-control,.airspace-volume-control{font-family:var(--font-family-primary)!important;font-size:12px!important;line-height:1.4!important}.identify-control a,.mylayers-control a,.query-builder-control a,.results-mode-control a,.theme-opacity-control a,.draw-control a,.upload-control a,.add-web-layer-control a,.airspace-volume-control a{color:#333!important;text-align:left!important;white-space:nowrap!important;text-overflow:clip!important;background:0 0!important;border:none!important;width:100%!important;padding:6px 10px!important;font-size:12px!important;line-height:1.4!important;display:block!important;overflow:visible!important}.identify-control a:hover,.mylayers-control a:hover,.query-builder-control a:hover,.results-mode-control a:hover,.theme-opacity-control a:hover,.draw-control a:hover,.upload-control a:hover,.add-web-layer-control a:hover,.airspace-volume-control a:hover{color:#000!important;background:#f0f0f0!important}[data-theme=dark] .identify-control a,[data-theme=dark] .mylayers-control a,[data-theme=dark] .query-builder-control a,[data-theme=dark] .results-mode-control a,[data-theme=dark] .theme-opacity-control a,[data-theme=dark] .draw-control a,[data-theme=dark] .upload-control a,[data-theme=dark] .add-web-layer-control a,[data-theme=dark] .airspace-volume-control a{color:#e0e0e0!important}[data-theme=dark] .identify-control a:hover,[data-theme=dark] .mylayers-control a:hover,[data-theme=dark] .query-builder-control a:hover,[data-theme=dark] .results-mode-control a:hover,[data-theme=dark] .theme-opacity-control a:hover,[data-theme=dark] .draw-control a:hover,[data-theme=dark] .upload-control a:hover,[data-theme=dark] .add-web-layer-control a:hover,[data-theme=dark] .airspace-volume-control a:hover{color:#fff!important;background:#333!important}
