body{margin:0;padding:0;overflow:hidden;font-family:Inter,Segoe UI,sans-serif}.map-wrapper.svelte-njbu1f{position:relative;width:100vw;height:100vh;background:#0f1117}.map-container.svelte-njbu1f{width:100%;height:100%;z-index:0}.app-header.svelte-njbu1f{position:absolute;top:0;left:0;right:0;z-index:1000;background:linear-gradient(to bottom,#0a0c12f5,#0a0c1200);padding:14px 20px;pointer-events:none}.header-brand.svelte-njbu1f{display:flex;align-items:center;gap:10px;color:#fff}.header-brand.svelte-njbu1f svg{color:#f59e0b}.brand-name.svelte-njbu1f{font-size:1.2rem;font-weight:700;letter-spacing:.04em;color:#fff;text-shadow:0 0 20px rgba(245,158,11,.5)}.brand-tagline.svelte-njbu1f{font-size:.72rem;color:#ffffff80;letter-spacing:.06em;text-transform:uppercase}.controls-panel.svelte-njbu1f{position:absolute;top:60px;left:16px;z-index:1000;background:#0c0e16eb;border:1px solid rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:200px;box-shadow:0 8px 32px #00000080;overflow:hidden}.panel-toggle.svelte-njbu1f{display:flex;align-items:center;gap:8px;width:100%;padding:12px 14px;background:none;border:none;color:#e2e8f0;font-size:.82rem;font-weight:600;letter-spacing:.05em;cursor:pointer;transition:background .15s;text-align:left}.panel-toggle.svelte-njbu1f:hover{background:#ffffff0f}.panel-toggle.svelte-njbu1f svg{color:#f59e0b}.panel-toggle.svelte-njbu1f span:where(.svelte-njbu1f){flex:1}.panel-body.svelte-njbu1f{padding:4px 12px 12px;border-top:1px solid rgba(255,255,255,.07)}.section-label.svelte-njbu1f{font-size:.62rem;font-weight:700;letter-spacing:.1em;color:#ffffff59;margin:10px 0 6px;text-transform:uppercase}.toggle-row.svelte-njbu1f{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:background .12s;margin-bottom:2px}.toggle-row.svelte-njbu1f:hover{background:#ffffff0f}.toggle-row.active.svelte-njbu1f{background:#ffffff0a}.toggle-row.svelte-njbu1f input[type=checkbox]:where(.svelte-njbu1f){display:none}.color-dot.svelte-njbu1f{width:12px;height:12px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.sidewalk-gradient.svelte-njbu1f{width:20px;height:8px;border-radius:3px;flex-shrink:0;background:linear-gradient(to right,#22c55e,#eab308,#f97316,#ef4444,#171717)}.toggle-label.svelte-njbu1f{flex:1;font-size:.8rem;color:#cbd5e1}.toggle-row.svelte-njbu1f svg{color:#fff6}.toggle-row.active.svelte-njbu1f svg{color:#ffffffb3}.sidewalk-legend.svelte-njbu1f{margin:6px 0 4px 8px;display:flex;flex-direction:column;gap:3px}.sidewalk-legend-row.svelte-njbu1f{display:flex;align-items:center;gap:8px}.sidewalk-swatch.svelte-njbu1f{width:20px;height:5px;border-radius:3px;flex-shrink:0}.sidewalk-legend-label.svelte-njbu1f{font-size:.72rem;color:#ffffff8c}.zoom-notice.svelte-njbu1f{display:flex;align-items:center;gap:6px;margin-top:10px;padding:6px 8px;border-radius:6px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.25);font-size:.72rem;color:#f59e0b}.zoom-active.svelte-njbu1f{display:flex;align-items:center;gap:6px;margin-top:10px;padding:6px 8px;border-radius:6px;background:#22c55e1f;border:1px solid rgba(34,197,94,.25);font-size:.72rem;color:#22c55e}.zoom-badge.svelte-njbu1f{position:absolute;bottom:40px;left:50%;transform:translate(-50%);z-index:1000;background:#0c0e16e0;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:6px 14px;font-size:.75rem;color:#ffffff8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;transition:all .3s ease;white-space:nowrap}.zoom-badge.unlocked.svelte-njbu1f{border-color:#22c55e66;color:#22c55e;background:#0c1610e6;box-shadow:0 0 16px #22c55e33}.route-tooltip{background:#0a0c12eb!important;border:1px solid rgba(255,255,255,.15)!important;color:#e2e8f0!important;font-size:.78rem!important;border-radius:8px!important;padding:6px 10px!important;box-shadow:0 4px 12px #0006!important}.route-tooltip:before{display:none!important}.leaflet-control-attribution{background:#0a0c12b3!important;color:#ffffff59!important;font-size:.65rem!important}.leaflet-control-attribution a{color:#ffffff80!important}.leaflet-control-zoom{border:1px solid rgba(255,255,255,.12)!important;border-radius:8px!important;overflow:hidden}.leaflet-control-zoom a{background:#0c0e16e6!important;color:#e2e8f0!important;border-bottom-color:#ffffff1a!important}.leaflet-control-zoom a:hover{background:#1e2337f2!important}
