.mh-app:not([data-theme]),.mh-app[data-theme=dark]{--mh-bg:#0a1628;--mh-bg-deep:#07101f;--mh-surface:#132238;--mh-surface-elev:#1a2d45;--mh-surface-input:#0f1e33;--mh-border:#1f3449;--mh-border-strong:#2b4561;--mh-border-subtle:#16273c;--mh-text:#f3f8ff;--mh-text-soft:#dce8f5;--mh-text-secondary:#b4c7dc;--mh-text-muted:#93acc5;--mh-muted:#7590ac;--mh-accent:#22d3ee;--mh-accent-hover:#67e8f9;--mh-accent-deep:#0891b2;--mh-accent-on:#051826;--mh-accent-bg-subtle:rgba(34,211,238,.06);--mh-accent-bg:rgba(34,211,238,.12);--mh-accent-bg-strong:rgba(34,211,238,.18);--mh-accent-border:rgba(34,211,238,.32);--mh-accent-border-strong:rgba(34,211,238,.55);--mh-accent-glow:rgba(34,211,238,.25);--mh-success:#10b981;--mh-success-bg:rgba(16,185,129,.12);--mh-success-border:rgba(16,185,129,.35);--mh-success-text:#34d399;--mh-warning:#f59e0b;--mh-warning-bg:rgba(245,158,11,.12);--mh-warning-border:rgba(245,158,11,.35);--mh-warning-text:#fdba74;--mh-warning-deep:#f97316;--mh-danger:#ef4444;--mh-danger-deep:#dc2626;--mh-danger-bg:rgba(239,68,68,.12);--mh-danger-border:rgba(239,68,68,.35);--mh-danger-text-soft:#fca5a5;--mh-info:#3b82f6;--mh-info-bg:rgba(59,130,246,.12);--mh-info-border:rgba(59,130,246,.35);--mh-shadow-sm:0 1px 2px rgba(0,0,0,.4);--mh-shadow-md:0 4px 14px rgba(0,0,0,.35),0 0 0 1px hsla(0,0%,100%,.02);--mh-shadow-lg:0 20px 60px -20px rgba(34,211,238,.25),0 10px 30px -12px rgba(0,0,0,.55);--mh-ring:0 0 0 3px rgba(34,211,238,.35);--mh-grid:rgba(34,211,238,.045);--mh-glass:rgba(10,22,40,.72)}.mh-app[data-theme=light]{--mh-bg:#eaf2fa;--mh-bg-deep:#fff;--mh-surface:#fff;--mh-surface-elev:#fff;--mh-surface-input:#f6fafd;--mh-border:#d9e4f0;--mh-border-strong:#b8c7d9;--mh-border-subtle:#e5edf6;--mh-text:#07182d;--mh-text-soft:#142a49;--mh-text-secondary:#2e4a6c;--mh-text-muted:#506a87;--mh-muted:#6a83a0;--mh-accent:#0891b2;--mh-accent-hover:#0e7490;--mh-accent-deep:#155e75;--mh-accent-on:#fff;--mh-accent-bg-subtle:rgba(8,145,178,.06);--mh-accent-bg:rgba(8,145,178,.1);--mh-accent-bg-strong:rgba(8,145,178,.16);--mh-accent-border:rgba(8,145,178,.35);--mh-accent-border-strong:rgba(8,145,178,.55);--mh-accent-glow:rgba(8,145,178,.22);--mh-success:#047857;--mh-success-bg:rgba(4,120,87,.1);--mh-success-border:rgba(4,120,87,.35);--mh-success-text:#047857;--mh-warning:#b45309;--mh-warning-bg:rgba(180,83,9,.1);--mh-warning-border:rgba(180,83,9,.35);--mh-warning-text:#b45309;--mh-warning-deep:#9a3412;--mh-danger:#b91c1c;--mh-danger-deep:#991b1b;--mh-danger-bg:rgba(185,28,28,.08);--mh-danger-border:rgba(185,28,28,.35);--mh-danger-text-soft:#b91c1c;--mh-info:#1d4ed8;--mh-info-bg:rgba(29,78,216,.1);--mh-info-border:rgba(29,78,216,.35);--mh-shadow-sm:0 1px 2px rgba(10,31,54,.06);--mh-shadow-md:0 4px 14px rgba(10,31,54,.07),0 0 0 1px rgba(10,31,54,.04);--mh-shadow-lg:0 20px 60px -20px rgba(8,145,178,.25),0 10px 30px -12px rgba(10,31,54,.12);--mh-ring:0 0 0 3px rgba(8,145,178,.3);--mh-grid:rgba(8,145,178,.05);--mh-glass:hsla(0,0%,100%,.72)}.mh-app{background:var(--mh-bg);color:var(--mh-text);min-height:100vh;transition:background-color .25s ease,color .25s ease;line-height:1.5}.mh-app,.mh-app button,.mh-app input,.mh-app select,.mh-app textarea{font-size:15px}.mh-app h1{font-size:30px;line-height:1.2}.mh-app h2{font-size:22px;line-height:1.25}.mh-app h3{font-size:18px;line-height:1.3}.mh-app .mh-text-xs,.mh-app small{font-size:12.5px}.mh-app [data-muted=true]{color:var(--mh-text-secondary)}body:has(.mh-app){background:var(--mh-bg)}.mh-app ::-webkit-scrollbar{width:10px;height:10px}.mh-app ::-webkit-scrollbar-track{background:transparent}.mh-app ::-webkit-scrollbar-thumb{background:var(--mh-border-strong);border-radius:999px;border:2px solid transparent;background-clip:content-box}.mh-app ::-webkit-scrollbar-thumb:hover{background:var(--mh-accent-border-strong);background-clip:content-box}.mh-app ::selection{background:var(--mh-accent-bg-strong);color:var(--mh-text)}.mh-app a:focus-visible,.mh-app button:focus-visible,.mh-app input:focus-visible,.mh-app select:focus-visible,.mh-app textarea:focus-visible{outline:none;box-shadow:var(--mh-ring);border-radius:8px}.mh-app input::placeholder,.mh-app textarea::placeholder{color:var(--mh-text-muted);opacity:1}.mh-card{background:var(--mh-surface);border:1px solid var(--mh-border);border-radius:14px}.mh-card-link{transition:border-color .18s,transform .18s,box-shadow .18s}.mh-card-link:hover{border-color:var(--mh-accent-border-strong);transform:translateY(-2px);box-shadow:var(--mh-shadow-md)}.mh-app .leaflet-popup-content-wrapper{background:var(--mh-surface)!important;color:var(--mh-text)!important;border:1px solid var(--mh-border)!important;border-radius:12px!important;box-shadow:var(--mh-shadow-md)!important}.mh-app .leaflet-popup-tip{background:var(--mh-surface)!important;border:1px solid var(--mh-border)!important}.mh-app .leaflet-popup-close-button{color:var(--mh-text-muted)!important}.mh-app .leaflet-container a.leaflet-popup-close-button:hover{color:var(--mh-text)!important}.mh-app .leaflet-control-attribution{background:var(--mh-glass)!important;color:var(--mh-text-muted)!important;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mh-app .leaflet-control-attribution a{color:var(--mh-accent)!important}.mh-app .leaflet-control-zoom a{background:var(--mh-surface)!important;color:var(--mh-text)!important;border-color:var(--mh-border)!important}.mh-app .leaflet-control-zoom a:hover{background:var(--mh-surface-elev)!important;color:var(--mh-accent)!important}.mh-app:not([data-theme]) .leaflet-tile-pane,.mh-app[data-theme=dark] .leaflet-tile-pane{filter:brightness(.85) contrast(1.05) hue-rotate(180deg) invert(.93) saturate(.3)}.mh-app-bg{position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--mh-grid) 1px,transparent 1px),linear-gradient(90deg,var(--mh-grid) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 0,transparent 75%);mask-image:radial-gradient(ellipse 80% 60% at 50% 30%,#000 0,transparent 75%)}.mh-theme-toggle{display:inline-flex;aligalign-items:center;gap:4px;background:var(--mh-surface);border:1px solid var(--mh-border);border-radius:999px;padding:3px}.mh-theme-toggle button{background:transparent;border:none;color:var(--mh-text-secondary);padding:5px 10px;border-radius:999px;cursor:pointer;font-size:12.5px;font-weight:600;font-family:inherit;transition:background .15s,color .15s}.mh-theme-toggle button:hover{color:var(--mh-text)}.mh-theme-toggle button[data-active=true]{background:var(--mh-accent-bg);color:var(--mh-accent);font-weight:800}