.base-button[data-v-3931860b]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);font-family:inherit;font-weight:var(--font-weight-semibold);border:1px solid transparent;border-radius:var(--button-radius);transition:background-color .2s,transform .15s,opacity .15s}.base-button[data-v-3931860b]:disabled{opacity:.5;cursor:not-allowed}.base-button--primary[data-v-3931860b]{background-color:var(--color-primary);color:var(--color-on-primary)}.base-button--primary[data-v-3931860b]:hover:not(:disabled){transform:scale(1.02)}.base-button--primary-outline[data-v-3931860b]{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.base-button--primary-outline[data-v-3931860b]:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-primary) 8%,transparent)}.base-button--secondary[data-v-3931860b]{background-color:transparent;color:var(--color-on-surface);border-color:var(--color-outline-variant)}.base-button--secondary[data-v-3931860b]:hover:not(:disabled){background-color:var(--color-surface-variant)}.base-button--danger[data-v-3931860b]{background-color:var(--color-error);color:var(--color-on-error)}.base-button--danger[data-v-3931860b]:hover:not(:disabled){transform:scale(1.02)}.base-button--danger-outline[data-v-3931860b]{background-color:transparent;color:var(--color-error);border-color:var(--color-error)}.base-button--danger-outline[data-v-3931860b]:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-error) 8%,transparent)}.base-button--text[data-v-3931860b]{background-color:transparent;color:var(--color-on-surface-variant)}.base-button--text[data-v-3931860b]:hover:not(:disabled){background-color:var(--color-surface-variant)}.base-button--sm[data-v-3931860b]{padding:var(--button-padding-sm);font-size:var(--button-font-size-sm)}.base-button--md[data-v-3931860b]{padding:var(--button-padding-md);font-size:var(--button-font-size-md)}.base-button--lg[data-v-3931860b]{padding:var(--button-padding-lg);font-size:var(--button-font-size-lg)}.banner[data-v-da129b36]{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-surface);border-top:1px solid var(--color-outline-variant);box-shadow:var(--shadow-lg);z-index:300;padding:var(--spacing-lg) var(--spacing-xl);padding-bottom:calc(var(--spacing-lg) + var(--safe-bottom))}.content[data-v-da129b36]{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);max-width:600px;margin:0 auto}.text[data-v-da129b36]{font-size:var(--font-size-sm);color:var(--color-on-surface-variant);flex:1}.actions[data-v-da129b36]{display:flex;gap:var(--spacing-md);flex-shrink:0}.banner-enter-active[data-v-da129b36],.banner-leave-active[data-v-da129b36]{transition:transform .3s ease}.banner-enter-from[data-v-da129b36],.banner-leave-to[data-v-da129b36]{transform:translateY(100%)}.banner[data-v-bff80b52]{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-surface);border-top:1px solid var(--color-outline-variant);box-shadow:var(--shadow-lg);z-index:300;padding:var(--spacing-lg) var(--spacing-xl);padding-bottom:calc(var(--spacing-lg) + var(--safe-bottom))}.content[data-v-bff80b52]{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);max-width:600px;margin:0 auto}.text[data-v-bff80b52]{font-size:var(--font-size-sm);color:var(--color-on-surface-variant);flex:1}.actions[data-v-bff80b52]{display:flex;gap:var(--spacing-md);flex-shrink:0}.banner-enter-active[data-v-bff80b52],.banner-leave-active[data-v-bff80b52]{transition:transform .3s ease}.banner-enter-from[data-v-bff80b52],.banner-leave-to[data-v-bff80b52]{transform:translateY(100%)}:root{--slate-50: #f8fafc;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-900: #0f172a;--blue-500: #3b82f6;--blue-700: #1d4ed8;--blue-900: #1e3a8a;--red-50: #fef2f2;--red-600: #dc2626;--red-900: #7f1d1d;--green-600: #16a34a;--green-700: #2e7d32;--amber-500: #f59e0b;--orange-500: #f97316;--red-700: #c62828;--white: #ffffff;--white-a25: rgba(255, 255, 255, .25);--spacing-xxs: 4px;--spacing-xs: 8px;--spacing-sm: 12px;--spacing-md: 16px;--spacing-lg: 20px;--spacing-xl: 24px;--spacing-xxl: 32px;--spacing-3xl: 48px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-pill: 9999px;--radius-round: 50%;--color-backdrop: rgba(15, 23, 42, .35);--color-backdrop-strong: rgba(0, 0, 0, .6);--color-on-contrast: var(--white);--color-contrast-surface: rgba(255, 255, 255, .12);--color-contrast-surface-hover: rgba(255, 255, 255, .22);--color-contrast-outline: rgba(255, 255, 255, .55);--color-contrast-outline-strong: rgba(255, 255, 255, .85);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .1);--shadow-md: 0 2px 4px rgba(15, 23, 42, .06), 0 4px 8px rgba(15, 23, 42, .1), 0 1px 2px rgba(15, 23, 42, .04);--shadow-lg: 0 4px 6px rgba(15, 23, 42, .05), 0 10px 20px rgba(15, 23, 42, .1), 0 2px 4px rgba(15, 23, 42, .04);--shadow-control: 0 1px 2px rgba(0, 0, 0, .15);--color-primary: var(--slate-600);--color-primary-light: var(--slate-500);--color-primary-dark: var(--slate-700);--color-on-primary: var(--white);--color-accent: var(--blue-500);--color-surface: var(--slate-50);--color-on-surface: var(--slate-900);--color-surface-variant: var(--slate-200);--color-on-surface-variant: var(--slate-600);--color-outline: var(--slate-400);--color-outline-variant: var(--slate-300);--color-background: var(--white);--color-on-background: var(--slate-900);--color-error: var(--red-600);--color-on-error: var(--white);--color-error-container: var(--red-50);--color-on-error-container: var(--red-900);--color-success: var(--green-600);--color-on-success: var(--white);--color-warning: var(--amber-500);--color-friend: var(--orange-500);--color-route-start: var(--green-700);--color-route-end: var(--red-700);--color-fab-surface: var(--blue-900);--color-fab-surface-strong: var(--blue-700);--color-fab-on-surface: var(--white);--color-fab-border: var(--white-a25);--icon-size-xs: 16px;--icon-size-sm: 18px;--icon-size-md: 20px;--icon-size-lg: 24px;--icon-size-xl: 48px;--icon-button-size-sm: 32px;--icon-button-size-md: 40px;--icon-button-size-lg: 48px;--button-radius: 12px;--button-padding-sm: var(--spacing-xs) var(--spacing-md);--button-padding-md: var(--spacing-md);--button-padding-lg: var(--spacing-md) var(--spacing-xl);--button-font-size-sm: var(--font-size-sm);--button-font-size-md: var(--font-size-base);--button-font-size-lg: var(--font-size-lg)}:root{--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-regular: 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}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;width:100%}html{background-color:var(--color-background)}body{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-on-background);background-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{min-height:-webkit-fill-available;min-height:100lvh}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit}input,textarea{font-family:inherit}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none;font-size:20px;line-height:1}html:not(.fonts-ready) .material-symbols-outlined{display:inline-block;width:1em;overflow:hidden;visibility:hidden}
