.overlay[data-v-c443ac63]{z-index:1000;background:#f3efe6f0;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.overlay-card[data-v-c443ac63]{text-align:center;border:1px solid var(--border);border-radius:var(--radius);width:min(22rem,100vw - 2rem);box-shadow:var(--shadow);background:#fff;padding:1.5rem 1.35rem 1.35rem}.spinner[data-v-c443ac63]{border:3px solid var(--border);border-top-color:var(--cta);border-radius:50%;width:44px;height:44px;margin:0 auto 1rem;animation:.75s linear infinite spin-c443ac63}@keyframes spin-c443ac63{to{transform:rotate(360deg)}}.status[data-v-c443ac63]{color:#111;letter-spacing:.01em;margin:0 0 .85rem;font-size:1rem;font-weight:800}.progress[data-v-c443ac63]{border-radius:var(--radius);background:var(--cream);border:1px solid var(--border);height:.85rem;overflow:hidden}.progress-bar[data-v-c443ac63]{border-radius:var(--radius);background:var(--cta);border-right:1px solid var(--border);min-width:.35rem;height:100%;transition:width .25s}.timer[data-v-c443ac63]{color:#111;font-variant-numeric:tabular-nums;margin:.65rem 0 0;font-size:.9rem;font-weight:700}.timeout-hint[data-v-c443ac63]{color:#9f1239;margin-top:1rem;font-size:.85rem;font-weight:700}.error[data-v-c443ac63]{color:#9f1239;max-width:360px;margin-top:1rem;font-size:.9rem;font-weight:700}.overlay-actions[data-v-c443ac63]{margin-top:1.25rem}.overlay-cancel[data-v-c443ac63]{border:1px solid var(--border);color:var(--text);border-radius:var(--radius);min-height:48px;font:inherit;letter-spacing:normal;text-transform:none;cursor:pointer;box-shadow:var(--shadow);background:#fff;padding:.65rem 1.1rem;font-size:.88rem;font-weight:700}@media (hover:hover){.overlay-cancel[data-v-c443ac63]:hover{background:var(--cream)}}.global-error{z-index:1100;color:#991b1b;border-radius:var(--radius);background:#fef2f2;border:1px solid #fecaca;max-width:min(520px,100vw - 2rem);padding:.75rem 1rem;font-size:.9rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000001f}.pwa-update-toast{z-index:1200;color:#fff;border-radius:var(--radius);pointer-events:none;background:#1b4332;max-width:min(420px,100vw - 2rem);padding:.65rem 1rem;font-size:.875rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000002e}.gpx-form[data-v-5d2995f2]{flex-direction:column;gap:1.45rem;display:flex}.field-label[data-v-5d2995f2],.categories legend[data-v-5d2995f2]{letter-spacing:.06em;text-transform:uppercase;color:#111;margin-bottom:.55rem;font-size:.78rem;font-weight:800;display:block}.drop-zone[data-v-5d2995f2]{background:var(--cream);border:2px dashed var(--border);border-radius:var(--radius);cursor:pointer;text-align:center;color:#111;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-height:10.5rem;padding:1.45rem 1.1rem;display:flex;position:relative}@media (hover:hover){.drop-zone[data-v-5d2995f2]:hover{background:#fff}}.drop-zone[data-v-5d2995f2]:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.drop-zone.over[data-v-5d2995f2]{background:var(--cta);border-style:solid}.drop-zone.filled[data-v-5d2995f2]{background:#fff;border-style:solid}.file-input[data-v-5d2995f2]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.drop-icon[data-v-5d2995f2]{color:#111;margin-bottom:.35rem;font-size:1.7rem;font-weight:800;line-height:1}.drop-title[data-v-5d2995f2]{color:#111;margin:0;font-size:1.05rem;font-weight:800;line-height:1.3}.drop-limit[data-v-5d2995f2]{color:#111;opacity:.62;margin:.4rem 0 0;font-size:.82rem;font-weight:650}.drop-check[data-v-5d2995f2]{border-radius:var(--radius);background:var(--cta);width:2.15rem;height:2.15rem;color:var(--cta-text);border:1px solid #0000;justify-content:center;align-items:center;margin-bottom:.4rem;font-size:1.1rem;font-weight:800;display:inline-flex}.drop-status[data-v-5d2995f2]{text-transform:uppercase;letter-spacing:.08em;color:#111;margin:0;font-size:.72rem;font-weight:800}.drop-filename[data-v-5d2995f2]{color:#111;word-break:break-word;max-width:100%;margin:.25rem 0 0;font-size:1.08rem;font-weight:800;line-height:1.3}.drop-meta[data-v-5d2995f2]{color:#111;opacity:.62;margin:.2rem 0 0;font-size:.82rem;font-weight:650}.drop-actions[data-v-5d2995f2]{flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;margin-top:.85rem;display:flex}.drop-change[data-v-5d2995f2]{letter-spacing:normal;text-transform:none;color:var(--text);text-underline-offset:3px;font-size:.78rem;font-weight:650;text-decoration:underline}.drop-clear[data-v-5d2995f2]{border:1px solid var(--border);border-radius:var(--radius);letter-spacing:normal;text-transform:none;color:var(--text);cursor:pointer;background:#fff;padding:.35rem .65rem;font-size:.78rem;font-weight:650}@media (hover:hover){.drop-clear[data-v-5d2995f2]:hover{background:var(--cream);color:var(--text)}}.radius-row[data-v-5d2995f2]{box-sizing:border-box;align-items:center;gap:.85rem;min-height:56px;padding:.45rem .15rem .7rem;display:flex}.radius-row input[type=range][data-v-5d2995f2]{accent-color:var(--cta);flex:1}.radius-slider[data-v-5d2995f2]::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:10px}.radius-row input[type=range][data-v-5d2995f2]::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:10px}.radius-slider[data-v-5d2995f2]::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:10px}.radius-row input[type=range][data-v-5d2995f2]::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:10px}.radius-slider[data-v-5d2995f2]::-webkit-slider-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:36px;height:36px;box-shadow:none;margin-top:-15px}.radius-row input[type=range][data-v-5d2995f2]::-webkit-slider-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:36px;height:36px;box-shadow:none;margin-top:-15px}.radius-slider[data-v-5d2995f2]::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:36px;height:36px;box-shadow:none}.radius-row input[type=range][data-v-5d2995f2]::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:36px;height:36px;box-shadow:none}.radius-value[data-v-5d2995f2]{box-sizing:border-box;border-radius:var(--radius);border:1px solid var(--border);color:#111;width:7.25rem;min-height:2.75rem;box-shadow:none;background:#fff;flex:0 0 7.25rem;font-weight:800}.categories[data-v-5d2995f2]{border:none;margin:0;padding:0}.category-grid[data-v-5d2995f2]{flex-wrap:wrap;gap:.45rem;display:flex}.cat-chip[data-v-5d2995f2]{border-radius:var(--radius);border:1px solid var(--border);color:#111;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;align-items:center;gap:.4rem;min-height:44px;padding:.5rem .8rem;font-size:.88rem;font-weight:700;display:inline-flex}@media (hover:hover){.cat-chip[data-v-5d2995f2]:hover{background:var(--cream)}}.cat-chip[data-v-5d2995f2]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.cat-chip.active[data-v-5d2995f2]{background:var(--cta);color:var(--cta-text);border-color:#0000;font-weight:800}@media (width>=769px){.cat-chip[data-v-5d2995f2]{min-height:0;padding:.4rem .7rem;font-size:.84rem}}@media (width<=768px){.radius-row[data-v-5d2995f2]{min-height:68px;padding:.55rem .1rem .85rem}.radius-slider[data-v-5d2995f2]::-webkit-slider-thumb{width:52px;height:52px;margin-top:-22px}.radius-row input[type=range][data-v-5d2995f2]::-webkit-slider-thumb{width:52px;height:52px;margin-top:-22px}.radius-slider[data-v-5d2995f2]::-moz-range-thumb{width:52px;height:52px}.radius-row input[type=range][data-v-5d2995f2]::-moz-range-thumb{width:52px;height:52px}}.error[data-v-5d2995f2]{border:1px solid var(--border);color:#9f1239;background:#fff;margin:0;padding:.55rem .7rem;font-size:.9rem;font-weight:700}.btn-primary[data-v-5d2995f2]{background:var(--cta);color:var(--cta-text);border-radius:var(--radius);box-shadow:var(--shadow);letter-spacing:normal;text-transform:none;cursor:pointer;border:1px solid #0000;padding:.9rem 1.35rem;font-size:.92rem;font-weight:700;transition:background .15s}@media (hover:hover){.btn-primary[data-v-5d2995f2]:hover:not(:disabled){background:var(--cta-hover)}}.btn-primary[data-v-5d2995f2]:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.btn-primary[data-v-5d2995f2]:disabled{opacity:1;background:var(--surface-2);color:var(--text-muted);box-shadow:none;cursor:not-allowed}.recent-menu[data-v-6192cabb]{flex-shrink:0;display:inline-flex;position:relative}.recent-btn[data-v-6192cabb]{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;font:inherit;white-space:nowrap;box-shadow:var(--shadow);background:#fff;align-items:center;gap:.35rem;padding:.45rem .7rem;font-size:.82rem;font-weight:650;line-height:1.15;display:inline-flex}.recent-count[data-v-6192cabb]{background:var(--cta);min-width:1.35rem;height:1.35rem;color:var(--cta-text);border-radius:999px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.recent-chevron[data-v-6192cabb]{opacity:.75;font-size:.85em}@media (hover:hover){.recent-btn[data-v-6192cabb]:hover,.recent-btn.active[data-v-6192cabb]{background:var(--cream)}}.brutal:not(.tool-style) .recent-btn[data-v-6192cabb]{min-height:2.5rem;box-shadow:var(--shadow);background:var(--cta);color:var(--cta-text);letter-spacing:normal;text-transform:none;border-width:1px;padding:.55rem .9rem;font-size:.92rem}.brutal:not(.tool-style) .recent-count[data-v-6192cabb]{color:var(--cta);background:#fff}@media (hover:hover){.brutal:not(.tool-style) .recent-btn[data-v-6192cabb]:hover,.brutal:not(.tool-style) .recent-btn.active[data-v-6192cabb]{background:var(--cta-hover)}}@media (width>=721px){.brutal:not(.tool-style) .recent-btn[data-v-6192cabb]{min-height:2.6rem;padding:.55rem 1rem;font-size:.95rem}}.tool-style .recent-btn[data-v-6192cabb]{box-shadow:none;font-weight:650}.tool-style .recent-btn.active[data-v-6192cabb]{background:var(--cta);color:var(--cta-text)}.tool-style .recent-btn.active .recent-count[data-v-6192cabb]{color:var(--cta);background:#fff}.recent-panel{z-index:10050;box-sizing:border-box;max-width:min(22rem, calc(100vw - 16px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:.45rem;padding:.65rem;display:flex;position:fixed;overflow:hidden auto}.recent-panel.brutal-panel{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.recent-panel-head strong{color:#111;font-size:.92rem;font-weight:800;display:block}.recent-panel-head p{color:#444;overflow-wrap:anywhere;word-break:break-word;margin:.25rem 0 0;font-size:.75rem;line-height:1.35}.recent-empty{color:#444;overflow-wrap:anywhere;word-break:break-word;margin:.35rem .25rem;font-size:.85rem;font-weight:650}.recent-panel-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.recent-panel-list li{align-items:stretch;gap:.3rem;display:flex}.recent-panel-open{text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--cream);cursor:pointer;color:#111;min-width:0;font:inherit;flex:1;padding:.6rem .7rem}@media (hover:hover){.recent-panel-open:hover{background:var(--cream)}}.recent-panel-title{align-items:center;gap:.4rem;min-width:0;display:flex}.recent-panel-open strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;font-weight:800;display:block;overflow:hidden}.recent-offline-badge{border:1px solid var(--border);border-radius:var(--radius);background:var(--primary);color:#fff;letter-spacing:.02em;text-transform:none;flex:none;padding:.12rem .4rem;font-size:.62rem;font-weight:700;line-height:1.2}.recent-offline-badge.partial{color:#111;background:#fff}.recent-panel-open>span:last-child{opacity:.8;margin-top:.15rem;font-size:.72rem;font-weight:650;display:block}.recent-panel-remove{border:1px solid var(--border);border-radius:var(--radius);color:#111;cursor:pointer;background:#fff;flex:none;width:2.5rem;font-size:1.25rem;font-weight:800;line-height:1}.recent-panel-remove:hover{background:#fee2e2}.feedback[data-v-b6eb5deb]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-top:4rem;padding:1.5rem}.feedback h2[data-v-b6eb5deb]{color:var(--primary-dark);margin:0 0 1rem;font-size:1.55rem;font-weight:800}.feedback-form[data-v-b6eb5deb]{grid-template-columns:1fr 1fr;gap:.85rem 1rem;display:grid;position:relative}.hp[data-v-b6eb5deb]{opacity:0;pointer-events:none;width:0;height:0;position:absolute;left:-9999px}.field[data-v-b6eb5deb]{color:var(--text-muted);flex-direction:column;gap:.35rem;font-size:.82rem;font-weight:600;display:flex}.field-full[data-v-b6eb5deb]{grid-column:1/-1}.field input[data-v-b6eb5deb],.field textarea[data-v-b6eb5deb]{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);resize:vertical;padding:.65rem .75rem;font-weight:400}.field input[data-v-b6eb5deb]:disabled,.field textarea[data-v-b6eb5deb]:disabled{opacity:.7}.field input[data-v-b6eb5deb]:focus,.field textarea[data-v-b6eb5deb]:focus{outline:2px solid color-mix(in srgb, var(--primary) 45%, transparent);outline-offset:1px;border-color:var(--primary)}.feedback-submit[data-v-b6eb5deb]{background:var(--cta);color:var(--cta-text);border-radius:var(--radius);box-shadow:var(--shadow);letter-spacing:normal;text-transform:none;cursor:pointer;border:1px solid #0000;grid-column:1/-1;justify-self:start;margin-top:.25rem;padding:.75rem 1.4rem;font-size:.88rem;font-weight:700;transition:background .15s}@media (hover:hover){.feedback-submit[data-v-b6eb5deb]:hover:not(:disabled){background:var(--cta-hover)}}.feedback-submit[data-v-b6eb5deb]:disabled{opacity:1;background:var(--surface-2);color:var(--text-muted);box-shadow:none;cursor:default}.feedback-error[data-v-b6eb5deb]{color:var(--danger);grid-column:1/-1;margin:0;font-size:.85rem}.feedback-hint[data-v-b6eb5deb]{color:var(--primary-dark);grid-column:1/-1;margin:0;font-size:.85rem;font-weight:600}@media (width<=640px){.feedback-form[data-v-b6eb5deb]{grid-template-columns:1fr}}.skip-link[data-v-efb3b5f1]{z-index:1000;border-radius:var(--radius);background:var(--primary);color:#fff;padding:.55rem .9rem;font-weight:700;text-decoration:none;transition:transform .15s;position:absolute;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link[data-v-efb3b5f1]:focus{outline:2px solid var(--primary-dark);outline-offset:2px;transform:translateY(0)}.landing[data-v-efb3b5f1]{background:var(--bg);color:#111;--display:"Helvetica Neue", Helvetica, Arial, sans-serif;min-height:100%}.landing.plan-fullscreen[data-v-efb3b5f1]{background:var(--bg);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.landing.plan-fullscreen>main[data-v-efb3b5f1]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.page-wrap[data-v-efb3b5f1]{width:100%;max-width:1180px;padding-inline:max(1.25rem, env(safe-area-inset-left,0px));box-sizing:border-box;margin:0 auto;padding-inline-end:max(1.25rem, env(safe-area-inset-right,0px))}.hero-band[data-v-efb3b5f1]{isolation:isolate;border-bottom:1px solid var(--border);align-items:stretch;min-height:min(48vh,520px);display:flex;position:relative;overflow:hidden}.hero-band--app[data-v-efb3b5f1]{background:var(--bg);min-height:0;overflow:visible}.hero-band--app .hero[data-v-efb3b5f1]{flex:none;min-height:0;padding:0}.app-privacy[data-v-efb3b5f1]{color:var(--text-muted);max-width:36rem;margin:.65rem 0 0;font-size:.8rem;font-weight:500;line-height:1.4}.hero-media[data-v-efb3b5f1]{z-index:0;position:absolute;inset:0}.hero-photo[data-v-efb3b5f1]{object-fit:cover;object-position:center 40%;filter:saturate(1.05)contrast(1.08);width:100%;height:100%;display:block}.hero-scrim[data-v-efb3b5f1]{background:linear-gradient(90deg,#0000009e 0%,#00000047 42%,#00000014 100%),linear-gradient(#0006 0%,#0000002e 36%,#000000d1 100%);position:absolute;inset:0}.hero-wrap[data-v-efb3b5f1]{z-index:1;width:100%;max-width:1180px;padding-inline:max(1.25rem, env(safe-area-inset-left,0px));box-sizing:border-box;flex-direction:column;flex:1;justify-content:flex-end;margin:0 auto;padding-inline-end:max(1.25rem, env(safe-area-inset-right,0px));display:flex;position:relative}.hero[data-v-efb3b5f1]{z-index:1;flex-direction:column;flex:auto;width:100%;min-height:min(48vh,520px);padding:0 0 4.25rem;display:flex;position:relative}.hero-top[data-v-efb3b5f1]{z-index:20;box-sizing:border-box;width:100%;padding:max(.45rem, env(safe-area-inset-top,0px)) max(.75rem, env(safe-area-inset-right,0px)) .15rem max(.75rem, env(safe-area-inset-left,0px));justify-content:space-between;align-items:flex-start;gap:.5rem;min-width:0;display:flex;position:relative}.hero-top-actions[data-v-efb3b5f1]{flex-shrink:0;align-items:center;gap:.6rem;display:inline-flex}.hero-sticky-sentinel[data-v-efb3b5f1]{pointer-events:none;width:100%;height:1px;margin:0;position:relative}.sticky-nav[data-v-efb3b5f1]{z-index:200;box-sizing:border-box;min-height:52px;padding:max(.4rem, env(safe-area-inset-top,0px)) max(.75rem, env(safe-area-inset-right,0px)) .4rem max(.75rem, env(safe-area-inset-left,0px));border-bottom:1px solid var(--border);opacity:0;pointer-events:none;background:#fff;justify-content:space-between;align-items:center;gap:.5rem;transition:transform .22s,opacity .18s;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-110%);box-shadow:0 4px 14px #0000000f}.sticky-nav.visible[data-v-efb3b5f1]{opacity:1;pointer-events:auto;transform:translateY(0)}.sticky-nav-actions[data-v-efb3b5f1]{flex-shrink:0;align-items:center;gap:.5rem;display:inline-flex}.sticky-brand[data-v-efb3b5f1]{padding:.22rem}.sticky-logo[data-v-efb3b5f1]{width:2rem;height:2rem}.brand-lockup[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);background:var(--cream);box-shadow:var(--shadow);cursor:pointer;font:inherit;flex-shrink:0;justify-content:center;align-items:center;padding:.32rem;line-height:0;display:inline-flex}.brand-lockup picture[data-v-efb3b5f1]{justify-content:center;align-items:center;line-height:0;display:flex}.brand-logo[data-v-efb3b5f1]{object-fit:contain;object-position:center;width:2.5rem;height:2.5rem;display:block}.hero-center[data-v-efb3b5f1]{text-align:left;flex-direction:column;align-self:flex-start;align-items:flex-start;width:100%;max-width:min(100%,58rem);margin:0;padding:.85rem 0 0;display:flex}.hero-title[data-v-efb3b5f1]{font-family:var(--display);color:#fff;letter-spacing:-.02em;text-transform:none;text-shadow:0 1px 12px #00000059;flex-direction:column;align-items:flex-start;margin:0 0 .7rem;font-size:clamp(2rem,5.4vw,3.6rem);font-weight:750;line-height:1.02;display:flex}.hero-title-lead[data-v-efb3b5f1]{letter-spacing:.02em;opacity:.92;text-shadow:none;margin-bottom:.22em;font-size:.42em;font-weight:650;line-height:1.15}.hero-title-route[data-v-efb3b5f1]{white-space:normal;letter-spacing:.012em}.hero-sub[data-v-efb3b5f1]{color:#fff;border-radius:var(--radius);background:#1111116b;max-width:28rem;margin:0 0 1.15rem;padding:.5rem .75rem;font-size:clamp(.95rem,1.55vw,1.08rem);font-weight:500;line-height:1.45;display:inline-block}.cta-primary[data-v-efb3b5f1]{border-radius:var(--radius);letter-spacing:normal;text-transform:none;cursor:pointer;background:var(--cta);color:var(--cta-text);box-shadow:var(--shadow);border:1px solid #0000;padding:.8rem 1.25rem;font-size:.95rem;font-weight:700;transition:background .15s}@media (hover:hover){.cta-primary[data-v-efb3b5f1]:hover{background:var(--cta-hover)}}.cta-row[data-v-efb3b5f1]{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.65rem;display:flex}.stats-bar[data-v-efb3b5f1]{z-index:3;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);isolation:isolate;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:1px;margin-top:-2.75rem;margin-bottom:4.25rem;padding:0;display:grid;position:relative;overflow:hidden}.stat[data-v-efb3b5f1]{text-align:left;background:#fff;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:.25rem;min-width:0;min-height:5.25rem;padding:1.15rem 1.1rem 1.2rem;display:flex}.stat strong[data-v-efb3b5f1]{font-family:var(--display);letter-spacing:-.02em;color:inherit;text-transform:none;font-size:clamp(1.05rem,2vw,1.4rem);font-weight:750;line-height:1.15}.stat span[data-v-efb3b5f1]{color:#111;opacity:.7;font-size:.78rem;font-weight:650;line-height:1.3}.stat-sep[data-v-efb3b5f1]{display:none}.app-section[data-v-efb3b5f1]{padding-top:.5rem;scroll-margin-top:1.5rem}.section-head[data-v-efb3b5f1]{margin-bottom:1.1rem}.section-head h2[data-v-efb3b5f1]{font-family:var(--display);letter-spacing:-.02em;text-transform:none;color:#111;white-space:nowrap;margin:0;font-size:clamp(1.55rem,2.8vw,2.35rem);font-weight:750;line-height:1.05}.section-head p[data-v-efb3b5f1]{color:#111;margin:0;font-size:.92rem}.mode-tabs[data-v-efb3b5f1]{background:0 0;border:none;gap:.4rem;margin-bottom:.75rem;padding:0;display:flex}.mode-tabs button[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);letter-spacing:normal;text-transform:none;cursor:pointer;min-height:2.75rem;color:var(--text);box-shadow:none;flex:1;padding:.7rem .75rem;font-size:.88rem;font-weight:650;transition:background .15s,border-color .15s,box-shadow .15s}.mode-tabs button[data-v-efb3b5f1]:focus-visible{outline:2px solid var(--cta);outline-offset:2px}.mode-tabs button[data-v-efb3b5f1]:last-child{border-right:1px solid var(--border)}.mode-tabs button.active[data-v-efb3b5f1]{background:var(--surface);color:var(--text);border-color:var(--border);box-shadow:var(--shadow);font-weight:700}@media (hover:hover){.mode-tabs button[data-v-efb3b5f1]:hover:not(.active){background:var(--cream);border-color:color-mix(in srgb, var(--cta) 40%, var(--border))}}.hero-card[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;padding:1.35rem 1.4rem 1.5rem}.hero-card[hidden][data-v-efb3b5f1]{display:none}.nearby-pending[data-v-efb3b5f1]{color:#111;margin:0;padding:.85rem .2rem;font-size:.95rem;font-weight:700}.landing[data-v-efb3b5f1] .menu-btn{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.landing[data-v-efb3b5f1] .hero-card .field-label,.landing[data-v-efb3b5f1] .hero-card legend{letter-spacing:.06em;text-transform:uppercase;color:#111;font-size:.78rem;font-weight:800}.landing[data-v-efb3b5f1] .hero-card .cat-chip{border:1px solid var(--border);border-radius:var(--radius);color:#111;background:#fff;font-weight:700}.landing[data-v-efb3b5f1] .hero-card .cat-chip.active{background:var(--cta);color:var(--cta-text);border-color:#0000}.landing[data-v-efb3b5f1] .hero-card .btn-primary,.landing[data-v-efb3b5f1] .feedback-submit{border-radius:var(--radius);background:var(--cta);color:var(--cta-text);box-shadow:var(--shadow);text-transform:none;letter-spacing:normal;border:1px solid #0000;font-weight:700}.landing[data-v-efb3b5f1] .hero-card .btn-primary:disabled{background:var(--surface-2);color:var(--text-muted);box-shadow:none;opacity:1}.landing[data-v-efb3b5f1] .hero-card .radius-value{border-radius:var(--radius);border:1px solid var(--border);color:#111;box-shadow:none;background:#fff}.landing[data-v-efb3b5f1] .hero-card .radius-slider::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);background:#d8d2c6}.landing[data-v-efb3b5f1] .hero-card .radius-row input[type=range]::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);background:#d8d2c6}.landing[data-v-efb3b5f1] .hero-card .radius-slider::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);background:#d8d2c6}.landing[data-v-efb3b5f1] .hero-card .radius-row input[type=range]::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);background:#d8d2c6}.landing[data-v-efb3b5f1] .hero-card .radius-slider::-webkit-slider-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);box-shadow:none}.landing[data-v-efb3b5f1] .hero-card .radius-row input[type=range]::-webkit-slider-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);box-shadow:none}.landing[data-v-efb3b5f1] .hero-card .radius-slider::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);box-shadow:none}.landing[data-v-efb3b5f1] .hero-card .radius-row input[type=range]::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);box-shadow:none}.landing[data-v-efb3b5f1] .hero-card .load-summary,.landing[data-v-efb3b5f1] .hero-card .ios-geo-hint{border-radius:var(--radius);border:1px solid var(--border);background:var(--cream);color:#111}.landing[data-v-efb3b5f1] .feedback{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-top:6.5rem}.landing[data-v-efb3b5f1] .feedback h2{font-family:var(--display);text-transform:none;letter-spacing:-.02em;color:#111;white-space:nowrap;font-weight:750}.landing[data-v-efb3b5f1] .field input,.landing[data-v-efb3b5f1] .field textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--cream)}.features-section[data-v-efb3b5f1],.how-section[data-v-efb3b5f1],.guide-teaser[data-v-efb3b5f1],.updates-section[data-v-efb3b5f1],.faq-section[data-v-efb3b5f1]{margin-top:6.5rem}.how-section[data-v-efb3b5f1]{margin-top:6.25rem}.features-section h2[data-v-efb3b5f1],.how-section h2[data-v-efb3b5f1],.guide-teaser h2[data-v-efb3b5f1],.updates-section h2[data-v-efb3b5f1],.faq-section h2[data-v-efb3b5f1]{font-family:var(--display);color:#111;letter-spacing:-.02em;text-transform:none;white-space:nowrap;margin:0 0 1.5rem;font-size:clamp(1.55rem,2.8vw,2.35rem);font-weight:750;line-height:1.05}.guide-teaser p[data-v-efb3b5f1]{color:#111;max-width:36rem;margin:-.4rem 0 1.1rem;font-size:1.02rem;line-height:1.45}.guide-teaser-link[data-v-efb3b5f1]{color:var(--cta-text);text-transform:none;letter-spacing:normal;border-radius:var(--radius);background:var(--cta);box-shadow:var(--shadow);border:1px solid #0000;padding:.55rem .9rem;font-weight:700;text-decoration:none;display:inline-block}.guide-teaser-more[data-v-efb3b5f1]{line-height:1.45;margin:.85rem 0 0!important;font-size:.92rem!important}.guide-teaser-more a[data-v-efb3b5f1]{color:#111;text-underline-offset:2px;font-weight:700;text-decoration-thickness:2px}@media (hover:hover){.guide-teaser-link[data-v-efb3b5f1]:hover{background:var(--cta-hover)}}.updates-section h2[data-v-efb3b5f1]{margin-bottom:.45rem}.updates-lead[data-v-efb3b5f1]{color:#111;margin:0 0 1.1rem;font-size:.92rem;line-height:1.45}.updates-list[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin:0;padding:0;list-style:none;overflow:hidden}.updates-row[data-v-efb3b5f1]{border-bottom:1px solid var(--border);align-items:baseline;gap:.75rem;padding:.85rem 1rem;font-size:.95rem;font-weight:650;line-height:1.4;display:flex}.updates-row[data-v-efb3b5f1]:last-child{border-bottom:none}.updates-tag[data-v-efb3b5f1]{letter-spacing:.04em;text-transform:uppercase;color:var(--cta-text);background:var(--cta);border-radius:var(--radius);flex:none;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.updates-tag[data-kind=fix][data-v-efb3b5f1]{background:var(--primary);color:#fff}.updates-tag[data-kind=bug][data-v-efb3b5f1]{color:#fff;background:#bc4749}.features-section[data-v-efb3b5f1],.how-section[data-v-efb3b5f1]{background:0 0}.features-grid[data-v-efb3b5f1],.steps[data-v-efb3b5f1]{box-shadow:none;background:0 0;border:none;align-items:stretch;gap:.75rem;display:grid;overflow:visible}.features-grid[data-v-efb3b5f1]{grid-template-rows:1fr 1fr;grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);box-sizing:border-box;background:#fff;flex-direction:column;align-items:flex-start;gap:.45rem;height:100%;padding:1.25rem 1.2rem 1.4rem;display:flex}.feature-card[data-v-efb3b5f1]:first-child{grid-area:1/1}.feature-card[data-v-efb3b5f1]:nth-child(2){grid-area:1/2}.feature-card[data-v-efb3b5f1]:nth-child(3){grid-area:1/3}.feature-card[data-v-efb3b5f1]:nth-child(4){grid-area:2/2}.feature-card[data-v-efb3b5f1]:nth-child(5){grid-area:2/3}.feature-card[data-v-efb3b5f1]:nth-child(6){grid-area:2/1}.feature-card[data-v-efb3b5f1]:hover{background:var(--surface-2)}.feature-card strong[data-v-efb3b5f1]{letter-spacing:-.02em;text-transform:none;color:#111;margin-bottom:0;font-size:1.05rem;font-weight:750;line-height:1.15;display:block}.feature-card p[data-v-efb3b5f1]{color:#2a2a2a;margin:0;font-size:.88rem;line-height:1.45}.steps[data-v-efb3b5f1]{grid-template-columns:repeat(3,minmax(0,1fr))}.step[data-v-efb3b5f1]{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;align-items:flex-start;gap:.65rem;padding:1.2rem 1.15rem 1.4rem;display:flex}.step-num[data-v-efb3b5f1]{border-radius:var(--radius);color:#111;width:auto;height:auto;font-family:var(--display);letter-spacing:-.03em;background:0 0;font-size:clamp(2.1rem,4vw,3.2rem);font-weight:800;line-height:.9;display:block}.step strong[data-v-efb3b5f1]{text-transform:none;letter-spacing:-.02em;margin-bottom:.15rem;font-size:1.05rem;font-weight:750;display:block}.step p[data-v-efb3b5f1]{color:#111;margin:0;font-size:.88rem;line-height:1.45}.faq-list[data-v-efb3b5f1]{border:1px solid var(--border);background:#fff;flex-direction:column;gap:0;display:flex}.faq-item[data-v-efb3b5f1]{border:none;border-bottom:1px solid var(--border);border-radius:var(--radius);background:#fff}.faq-item[data-v-efb3b5f1]:last-child{border-bottom:none}.faq-item[data-v-efb3b5f1]:focus-within{border-color:inherit;box-shadow:none;background:var(--surface-2)}.faq-q[data-v-efb3b5f1]{border-radius:var(--radius);cursor:pointer;text-align:left;color:#111;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1.05rem 1.15rem;font-size:1rem;font-weight:800;display:flex}.faq-q[data-v-efb3b5f1]:focus{outline:none}.faq-q[data-v-efb3b5f1]:focus-visible{outline:2px solid var(--primary);outline-offset:-3px;background:var(--cta);color:var(--cta-text)}.faq-chevron[data-v-efb3b5f1]{color:#111;flex-shrink:0;font-size:1.4rem;font-weight:800;transition:transform .15s;transform:rotate(0)}.faq-chevron.open[data-v-efb3b5f1]{transform:rotate(90deg)}.faq-a[data-v-efb3b5f1]{color:#111;padding:0 1.15rem 1.1rem;font-size:.9rem;line-height:1.55}.faq-a[hidden][data-v-efb3b5f1]{display:none}.site-footer[data-v-efb3b5f1]{border-top:1px solid var(--border);text-align:left;color:#111;margin:6.5rem 0 2.5rem;padding-top:1.25rem;font-size:.78rem;font-weight:650}.site-footer a[data-v-efb3b5f1]{color:#111;text-underline-offset:2px;text-decoration:underline}.plan-topbar[data-v-efb3b5f1]{box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;width:100%;max-width:100%;min-height:58px;padding:max(.7rem, env(safe-area-inset-top,0px)) max(.75rem, env(safe-area-inset-right,0px)) .7rem max(.75rem, env(safe-area-inset-left,0px));border-bottom:1px solid var(--border);z-index:40;background:#fff;flex-wrap:nowrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;display:flex;overflow:auto hidden}.landing--native .plan-topbar[data-v-efb3b5f1]{padding-top:calc(.7rem + env(safe-area-inset-top,0px))}.landing--native .page-wrap[data-v-efb3b5f1]{padding-top:.5rem}.landing--native .stats-bar[data-v-efb3b5f1]{display:none}.landing--native .hero-top[data-v-efb3b5f1]{padding-bottom:.35rem}.landing--native .app-section[data-v-efb3b5f1]{padding-top:1.75rem}.landing--native .section-head[data-v-efb3b5f1]{margin-bottom:1.5rem}.landing--native .mode-tabs[data-v-efb3b5f1]{margin-bottom:1rem}.back-btn[data-v-efb3b5f1]{background:var(--cta);border-radius:var(--radius);color:var(--cta-text);cursor:pointer;white-space:nowrap;min-height:40px;box-shadow:var(--shadow);-webkit-tap-highlight-color:transparent;border:1px solid #0000;flex-shrink:0;padding:.55rem .85rem;font-size:.88rem;font-weight:700}@media (hover:hover){.back-btn[data-v-efb3b5f1]:hover{background:var(--cta-hover)}}.plan-topbar-actions[data-v-efb3b5f1]{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:.4rem;min-width:0;margin-left:auto;display:flex}.plan-export-btn[data-v-efb3b5f1]{background:var(--cta);border-radius:var(--radius);color:var(--cta-text);cursor:pointer;white-space:nowrap;min-height:40px;box-shadow:var(--shadow);-webkit-tap-highlight-color:transparent;border:1px solid #0000;padding:.55rem .85rem;font-size:.88rem;font-weight:700}@media (hover:hover){.plan-export-btn[data-v-efb3b5f1]:hover:not(:disabled){background:var(--cta-hover)}}.plan-export-btn[data-v-efb3b5f1]:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=768px){.plan-topbar[data-v-efb3b5f1]{padding:max(.55rem, env(safe-area-inset-top,0px)) max(.65rem, env(safe-area-inset-right,0px)) .55rem max(.65rem, env(safe-area-inset-left,0px));gap:.4rem;min-height:56px}.back-btn[data-v-efb3b5f1]{min-width:0;min-height:44px;padding:.55rem .7rem;font-size:.85rem}.plan-export-btn[data-v-efb3b5f1]{min-width:0;min-height:44px;padding:.55rem .65rem;font-size:.82rem}.plan-topbar-actions[data-v-efb3b5f1]{gap:.35rem}.plan-topbar-actions[data-v-efb3b5f1] .menu-icon{font-size:1.4rem}}@media (width<=520px){.landing--native .plan-export-btn[data-v-efb3b5f1],.plan-export-btn[data-v-efb3b5f1],.landing--native .back-btn[data-v-efb3b5f1],.back-btn[data-v-efb3b5f1]{padding:.5rem .55rem;font-size:.78rem}}.planner-stage[data-v-efb3b5f1]{flex-direction:column;flex:1;min-height:0;display:flex}@media (width<=960px){.section-head h2[data-v-efb3b5f1],.features-section h2[data-v-efb3b5f1],.how-section h2[data-v-efb3b5f1],.guide-teaser h2[data-v-efb3b5f1],.updates-section h2[data-v-efb3b5f1],.faq-section h2[data-v-efb3b5f1],.landing[data-v-efb3b5f1] .feedback h2{white-space:normal}.features-grid[data-v-efb3b5f1]{grid-template-rows:none;grid-template-columns:1fr 1fr}.steps[data-v-efb3b5f1]{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card[data-v-efb3b5f1]:nth-child(n){grid-area:auto}}@media (width<=640px){.hero-band[data-v-efb3b5f1],.hero[data-v-efb3b5f1]{min-height:min(46vh,440px)}.hero-band--app[data-v-efb3b5f1],.hero-band--app .hero[data-v-efb3b5f1]{min-height:0}.hero[data-v-efb3b5f1]{padding-bottom:3.5rem}.hero-band--app .hero[data-v-efb3b5f1]{padding-bottom:0}.hero-center[data-v-efb3b5f1]{text-align:left;align-self:flex-start;align-items:flex-start;padding:.6rem 0 0}.hero-title[data-v-efb3b5f1]{letter-spacing:.015em;font-size:clamp(1.85rem,10.5vw,2.85rem)}.cta-row[data-v-efb3b5f1]{justify-content:flex-start}.hero-sub[data-v-efb3b5f1]{max-width:100%;font-size:.92rem}.brand-logo[data-v-efb3b5f1]{width:2.25rem;height:2.25rem}.features-grid[data-v-efb3b5f1],.steps[data-v-efb3b5f1]{grid-template-columns:1fr}.stats-bar[data-v-efb3b5f1]{grid-template-columns:1fr;margin-top:-1.75rem;margin-bottom:3.25rem}.mode-tabs button[data-v-efb3b5f1]{padding:.7rem .4rem;font-size:.78rem}.hero-card[data-v-efb3b5f1]{box-shadow:var(--shadow);padding:1.1rem 1rem 1.25rem}.features-section[data-v-efb3b5f1],.how-section[data-v-efb3b5f1],.guide-teaser[data-v-efb3b5f1],.updates-section[data-v-efb3b5f1],.faq-section[data-v-efb3b5f1]{margin-top:4.75rem}}*,:before,:after{box-sizing:border-box}:root{--primary:#2d6a4f;--primary-dark:#1b4332;--bg:#fff;--cream:#f2f2f2;--surface:#fff;--surface-2:#ebebeb;--text:#1a1a1a;--text-muted:#5c5c5c;--border:#e2e2e2;--danger:#bc4749;--cta:#2d6a4f;--cta-hover:#1b4332;--cta-text:#fff;--cta-soft:#eef4f0;--cta-soft-hover:#e4eee8;--cta-soft-border:#c5d6cc;--cta-soft-text:#1a1a1a;--radius:8px;--shadow:none}html,body,#app{height:100%;min-height:100%;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif}button,input,select{font:inherit}.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}a{color:var(--primary)}.maplibregl-ctrl-attrib{font-size:10px!important}.maplibregl-canvas{cursor:grab}.maplibregl-canvas:active{cursor:grabbing!important}.maplibregl-canvas.poi-hover:not(:active){cursor:pointer}.maplibregl-canvas-container{touch-action:none}html.map-overlay-open,html.map-overlay-open body{overscroll-behavior:none;overflow:hidden}html.native-app{--native-safe-top:env(safe-area-inset-top,0px);--native-safe-right:env(safe-area-inset-right,0px);--native-safe-bottom:env(safe-area-inset-bottom,0px);--native-safe-left:env(safe-area-inset-left,0px)}html.map-overlay-open .maplibregl-canvas,html.map-overlay-open .maplibregl-canvas-container{pointer-events:none!important}.radius-row{box-sizing:border-box;align-items:center;gap:.85rem;min-width:0;min-height:56px;padding:.45rem .2rem .7rem;display:flex;overflow:visible}.radius-slider,.radius-row input[type=range]{min-width:0;height:56px;min-height:56px;accent-color:var(--cta);appearance:none;cursor:pointer;touch-action:none;background:0 0;flex:1;margin:0;padding:0}.radius-slider::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:8px}.radius-row input[type=range]::-webkit-slider-runnable-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:8px}.radius-slider::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:8px}.radius-row input[type=range]::-moz-range-track{border-radius:var(--radius);border:1px solid var(--border);box-sizing:border-box;background:#d8d2c6;height:8px}.radius-slider::-webkit-slider-thumb{appearance:none;border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:28px;height:28px;box-shadow:var(--shadow);cursor:grab;outline:none;margin-top:-11px}.radius-row input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:28px;height:28px;box-shadow:var(--shadow);cursor:grab;outline:none;margin-top:-11px}.radius-slider::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:28px;height:28px;box-shadow:var(--shadow);cursor:grab}.radius-row input[type=range]::-moz-range-thumb{border-radius:var(--radius);border:1px solid var(--border);background:var(--cta);width:28px;height:28px;box-shadow:var(--shadow);cursor:grab}.radius-value{box-sizing:border-box;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);width:7.25rem;box-shadow:var(--shadow);color:var(--text);text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;outline:none;flex:0 0 7.25rem;justify-content:center;align-items:center;min-height:2.75rem;padding:.45rem .4rem;font-size:.95rem;font-weight:700;line-height:1.2;display:inline-flex}@media (width<=768px){.radius-row{min-height:68px;padding:.55rem .15rem .85rem}.radius-slider,.radius-row input[type=range]{height:68px;min-height:68px}.radius-slider::-webkit-slider-runnable-track{height:12px}.radius-row input[type=range]::-webkit-slider-runnable-track{height:12px}.radius-slider::-moz-range-track{height:12px}.radius-row input[type=range]::-moz-range-track{height:12px}.radius-slider::-webkit-slider-thumb{width:40px;height:40px;margin-top:-16px}.radius-row input[type=range]::-webkit-slider-thumb{width:40px;height:40px;margin-top:-16px}.radius-slider::-moz-range-thumb{width:40px;height:40px}.radius-row input[type=range]::-moz-range-thumb{width:40px;height:40px}.radius-value{flex-basis:7.5rem;width:7.5rem;min-height:3rem;font-size:1rem}}.btn-primary{background:var(--cta);color:var(--cta-text);border-radius:var(--radius);box-shadow:var(--shadow);letter-spacing:normal;text-transform:none;cursor:pointer;border:1px solid #0000;font-weight:700;transition:background .15s}@media (hover:hover){.btn-primary:hover:not(:disabled){background:var(--cta-hover)}}.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
