:root{--pp-sage:#4a7c59;--pp-sage-light:#6fa882;--pp-sage-dark:#2d4f38;--pp-cream:#f5f0e8;--pp-warm:#faf8f4;--pp-mud:#8b6f47;--pp-bark:#3d2b1f;--pp-alert:#d4614a;--pp-safe-top:env(safe-area-inset-top,0px);--pp-safe-right:env(safe-area-inset-right,0px);--pp-safe-bottom:env(safe-area-inset-bottom,0px);--pp-safe-left:env(safe-area-inset-left,0px)}html,body,#root{width:100%;height:100%;min-height:100%}body{min-height:100dvh;color:var(--pp-bark);background:radial-gradient(circle at 100% 0,#6fa88229,#0000 32%),linear-gradient(#f7f2e7 0%,#efe7d8 100%);margin:0;padding:0;font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,monospace}#root{min-height:100dvh}#root>div{min-height:100%}button,input,textarea{font:inherit}.leaflet-container{background:#dce8d7;width:100%;height:100%;font-family:DM Mono,ui-monospace,SFMono-Regular,Menlo,monospace!important}.leaflet-top,.leaflet-bottom{z-index:440}.leaflet-top{top:var(--pp-safe-top)}.leaflet-right{right:var(--pp-safe-right)}.leaflet-bottom{bottom:var(--pp-safe-bottom)}.leaflet-left{left:var(--pp-safe-left)}.leaflet-top.leaflet-left{top:calc(12px + var(--pp-safe-top));left:calc(12px + var(--pp-safe-left))}.leaflet-control-zoom{margin:0!important}.leaflet-bar{backdrop-filter:blur(12px);overflow:hidden;border:1px solid #ffffff6b!important;border-radius:18px!important;box-shadow:0 10px 22px #00000029!important}.leaflet-control-zoom a{width:44px!important;height:44px!important;color:var(--pp-sage-dark)!important;background:#fcf8f1f0!important;border:none!important;font-size:22px!important;line-height:44px!important}.leaflet-control-zoom a:first-child{border-bottom:1px solid #3d2b1f14!important}.leaflet-control-zoom a:hover{background:#fffdf8fa!important}.leaflet-control-attribution{color:#3d2b1fb8!important;background:#fcf8f1d1!important;border-radius:12px 0 0!important}.leaflet-control-attribution a{color:var(--pp-sage-dark)!important}.leaflet-popup-content-wrapper{background:#fcf8f1f5;border-radius:22px;box-shadow:0 18px 34px #20181233}.leaflet-popup-tip{background:#fcf8f1f5}.leaflet-popup-content{min-width:170px;margin:14px 16px}.pp-map-shell{background:#dce8d7;width:100%;height:100%;position:relative;overflow:hidden}.pp-map-canvas{width:100%;height:100%}.pp-map-fallback{text-align:center;background:var(--pp-cream);height:100%;color:var(--pp-mud);justify-content:center;align-items:center;padding:18px;line-height:1.6;display:flex}.pp-map-pill{top:calc(14px + var(--pp-safe-top));z-index:450;-webkit-backdrop-filter:saturate(180%)blur(18px);opacity:0;pointer-events:none;background:#faf8f4c7;border:.5px solid #ffffffb8;border-radius:999px;align-items:center;gap:10px;width:fit-content;max-width:min(320px,100% - 32px);padding:8px 12px;transition:transform .18s ease-out,opacity .18s ease-out;display:flex;position:absolute;left:50%;transform:translate(-50%,-10px)scale(.98);box-shadow:0 8px 24px #2018121a,0 1px 2px #2018120f}.pp-map-pill.is-visible{opacity:1;transform:translate(-50%)scale(1)}.pp-map-pill-pending{border-color:#ffffffc7}.pp-map-pill-success{border-color:#ffffffd1}.pp-map-pill-icon{flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.pp-map-pill-icon svg{width:18px;height:18px}.pp-map-pill-pending .pp-map-pill-icon svg{fill:#3d2b1fa8;animation:1.35s ease-out infinite pp-map-pill-pulse}.pp-map-pill-success .pp-map-pill-icon svg{fill:#4a7c5929}.pp-map-pill-success .pp-map-pill-icon path{fill:none;stroke:var(--pp-sage);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}.pp-map-pill-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.pp-map-pill-label{color:#201812eb;letter-spacing:-.01em;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:600;line-height:1.2}.pp-map-pill-detail{color:#3d2b1fb8;text-wrap:pretty;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:12px;line-height:1.3}.pp-map-pill-success .pp-map-pill-label{color:#201812e0}@keyframes pp-map-pill-pulse{0%{opacity:.72;transform:scale(.92)}70%{opacity:1;transform:scale(1)}to{opacity:.72;transform:scale(.92)}}@media (prefers-reduced-motion:reduce){.pp-map-pill{transition:opacity .12s linear;transform:translate(-50%)}.pp-map-pill.is-visible{transform:translate(-50%)}.pp-map-pill-pending .pp-map-pill-icon svg{animation:none}}.pp-route-popup-body{color:var(--pp-bark)}.pp-route-popup-name{color:var(--pp-sage-dark);font-size:16px;font-weight:600}.pp-route-popup-detail{color:var(--pp-mud);margin-top:4px;font-size:13px;line-height:1.55}.pp-route-popup-warning{color:var(--pp-alert);margin-top:8px;font-size:12px;line-height:1.5}.leaflet-tooltip{color:var(--pp-bark);background:#fcf8f1f0;border:1px solid #ffffff94;border-radius:12px;box-shadow:0 10px 24px #20181224}.leaflet-tooltip-top:before{border-top-color:#fcf8f1f0}.leaflet-tooltip-right:before{border-right-color:#fcf8f1f0}.leaflet-tooltip-bottom:before{border-bottom-color:#fcf8f1f0}.leaflet-tooltip-left:before{border-left-color:#fcf8f1f0}.leaflet-tooltip.pp-grounds-label{box-shadow:none!important;background:0 0!important;border:none!important}.leaflet-tooltip.pp-grounds-label:before{display:none}.leaflet-tooltip.pp-grounds-label .leaflet-tooltip-content{background:0 0;margin:0}.pp-boundary-border:focus{outline:none}.pp-grounds-number-badge{background:var(--pp-grounds-badge);color:#fffdf8;border:2px solid #fffffff5;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:28px;padding:0 6px;font-size:12px;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 3px 12px #00000047}.pp-presence-wrap{justify-content:center;align-items:center;display:flex;position:relative}.pp-presence-wrap.is-you{z-index:2}.pp-presence-pulse,.pp-presence-aura,.pp-presence-heading-ring,.pp-presence-dot{position:absolute}.pp-presence-pulse{opacity:.18;z-index:0;border-radius:999px;animation:2.4s ease-out infinite pp-presence-pulse}.pp-presence-aura{opacity:.14;z-index:1;border-radius:999px;animation:1.8s ease-in-out infinite pp-presence-aura}.pp-presence-dot{z-index:3;border:2.5px solid #fffffff5;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:0 3px 10px #0000003d}.pp-presence-label{color:#fffdf8;letter-spacing:.3px;font-size:11px;font-weight:800;line-height:1}.pp-presence-heading-ring{z-index:2;transform-origin:50%;pointer-events:none;position:absolute}.pp-presence-heading-cone{background:var(--pp-heading-color,#2f6ea6);clip-path:polygon(50% 100%,0% 8%,18% 0%,82% 0%,100% 8%);filter:drop-shadow(0 2px 3px #0000003d);opacity:.55;width:46px;height:50px;position:absolute;top:0;left:50%;transform:translate(-50%)}.pp-presence-alert-glyph{color:#fffdf8;font-size:9px;font-weight:800;line-height:1}@keyframes pp-presence-pulse{0%{opacity:.22;transform:scale(.86)}70%{opacity:.08;transform:scale(1.24)}to{opacity:0;transform:scale(1.42)}}@keyframes pp-presence-aura{0%{opacity:.14;transform:scale(.96)}50%{opacity:.1;transform:scale(1)}to{opacity:.14;transform:scale(.96)}}