.loading{align-items:center;display:inline-flex;flex-direction:column;gap:12px;justify-content:center}.loading-fullscreen{background-color:#fffffff2;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-overlay{background-color:#fffc;bottom:0;left:0;position:absolute;right:0;top:0;z-index:100}.loading-text{color:var(--color-text-secondary);font-size:14px;text-align:center}.loading-spinner{animation:spin .8s linear infinite;border-color:var(--color-border);border-radius:50%;border-style:solid}.loading-spinner.loading-primary{border-top-color:#3b82f6}.loading-spinner.loading-secondary{border-top-color:var(--color-text-tertiary)}.loading-spinner.loading-white{border-color:#ffffff4d;border-top-color:var(--color-bg-primary)}.loading-spinner.loading-sm{border-width:2px;height:16px;width:16px}.loading-spinner.loading-md{border-width:3px;height:32px;width:32px}.loading-spinner.loading-lg{border-width:4px;height:48px;width:48px}.loading-dots{align-items:center;display:flex;gap:6px}.loading-dot{animation:bounce 1.4s ease-in-out infinite both;border-radius:50%}.loading-dots.loading-primary .loading-dot{background-color:#3b82f6}.loading-dots.loading-secondary .loading-dot{background-color:var(--color-text-tertiary)}.loading-dots.loading-white .loading-dot{background-color:var(--color-bg-primary)}.loading-dots.loading-sm .loading-dot{height:6px;width:6px}.loading-dots.loading-md .loading-dot{height:10px;width:10px}.loading-dots.loading-lg .loading-dot{height:14px;width:14px}.loading-dot:first-child{animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.loading-dot:nth-child(3){animation-delay:0s}.loading-pulse{animation:pulse 1.5s ease-in-out infinite;border-radius:50%}.loading-pulse.loading-primary{background-color:#3b82f6}.loading-pulse.loading-secondary{background-color:var(--color-text-tertiary)}.loading-pulse.loading-white{background-color:var(--color-bg-primary)}.loading-pulse.loading-sm{height:16px;width:16px}.loading-pulse.loading-md{height:32px;width:32px}.loading-pulse.loading-lg{height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes pulse{0%{opacity:1;transform:scale(.8)}50%{opacity:.5;transform:scale(1)}to{opacity:1;transform:scale(.8)}}:root{--color-bg-primary:#fff;--color-bg-secondary:#fff;--color-bg-tertiary:#f3f4f6;--color-bg-card:#fff;--color-bg-hover:#f9fafb;--color-bg-active:#eff6ff;--color-bg-overlay:#0006;--color-bg-modal:#ffffffe6;--color-text-primary:#333;--color-text-secondary:#6b7280;--color-text-tertiary:#9ca3af;--color-text-muted:#9ca3af;--color-text-inverse:#fff;--color-text-link:#4c6ef5;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-border-dark:#d1d5db;--color-border-hover:#d1d5db;--color-primary:#4c6ef5;--color-primary-hover:#3b5bdb;--color-primary-light:#e7f5ff;--color-primary-dark:#3b5bdb;--color-primary-gradient:linear-gradient(135deg,#4c6ef5,#7c3aed);--color-success:#22c55e;--color-success-light:#dcfce7;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-error:#ef4444;--color-error-light:#fee2e2;--color-info:#3b82f6;--color-info-light:#dbeafe;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #00000026;--color-shadow:#00000014;--color-shadow-md:#0000001f;--scrollbar-bg:#f1f1f1;--scrollbar-thumb:#c1c1c1;--scrollbar-thumb-hover:#a1a1a1;--focus-ring:#667eea;--focus-ring-offset:2px;--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease}*{box-sizing:border-box;margin:0;padding:0}body,html{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;transition:background-color var(--transition-normal),color var(--transition-normal)}#root,body,html{height:100%;width:100%}.loading-message{align-items:center;color:var(--color-text-secondary);display:flex;font-size:1rem;height:100%;justify-content:center}.hidden{display:none!important}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}button{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}button:disabled{cursor:not-allowed;opacity:.6}input,textarea{background-color:var(--color-bg-card);color:var(--color-text-primary);font-family:inherit;font-size:inherit}button:focus,input:focus,textarea:focus{outline:2px solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--scrollbar-bg)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}@keyframes ripple-expand{0%{opacity:.8;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}@keyframes marker-drop{0%{opacity:0;transform:translateY(-30px)}60%{opacity:1;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes marker-bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-10px)}50%{transform:translateY(0)}75%{transform:translateY(-5px)}}@keyframes bounce-marker{0%,to{transform:translateY(0)}25%{transform:translateY(-8px)}50%{transform:translateY(0)}75%{transform:translateY(-4px)}}@keyframes footstep-fade{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.2)}}.walker-avatar{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:40px;line-height:1;transition:transform .1s ease-out}.footstep-trail{animation:footstep-fade 1.2s ease-out forwards;background:radial-gradient(circle,#4c6ef599 0,#0000 70%);border-radius:50%;height:12px;width:12px}.kmap-ripple{background:radial-gradient(circle,var(--color-primary) 0,#0000 70%)}
/*# sourceMappingURL=main.57fe4362f15e90aa3113.css.map*/