.marker{cursor:pointer;height:auto;position:relative;width:40px}.marker svg{height:auto;max-width:100%}.marker.active,.marker:hover{animation:jump .6s infinite}@keyframes jump{0%,to{transform:translateY(0)}45%{transform:translateY(-4px)}}.gm-style-iw-chr button{height:30px!important;width:27px!important}.gm-style-iw-chr button span{margin:0!important;width:auto!important}.gpx-point-tooltip{max-width:350px;min-width:250px;padding:0}.gpx-point-tooltip .tooltip-header{background-color:#2196f3;border-radius:8px 8px 0 0;color:#fff;padding:12px 16px}.gpx-point-tooltip .tooltip-header h4{font-size:16px;font-weight:600;margin:0}.gpx-point-tooltip .tooltip-content{background-color:#fff;border-radius:0 0 8px 8px;padding:16px}.gpx-point-tooltip .tooltip-content .info-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.gpx-point-tooltip .tooltip-content .info-row:last-child{margin-bottom:0}.gpx-point-tooltip .tooltip-content .info-row .label{color:#666;font-size:13px;font-weight:600;min-width:80px}.gpx-point-tooltip .tooltip-content .info-row .value{color:#212121;flex:1 1;font-size:13px;text-align:right;word-break:break-word}.gpx-point-tooltip .tooltip-content .additional-data{border-top:1px solid #e0e0e0;margin-top:16px;padding-top:16px}.gpx-point-tooltip .tooltip-content .additional-data .label{color:#666;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.gpx-info-window{display:flex;gap:10px;margin-top:0;min-width:70px}.gpx-info-window .content .title{align-items:center;display:flex;gap:5px}.gpx-info-window .content b{font-size:13px;margin-top:9px}.gpx-info-window .content p{margin:0}.gpx-info-window .content .info{margin-top:8px;text-align:left}.gpx-info-window .content .info p{color:#757575;font-size:12px}.gpx-upload{display:flex;flex-direction:column;gap:16px}.gpx-upload .upload-header h3{color:#212121;font-size:18px;font-weight:600;margin:0 0 8px}.gpx-upload .upload-header p{color:#757575;font-size:14px;margin:0}.gpx-upload .upload-area{background-color:#fafafa;border:2px dashed #bdbdbd;border-radius:12px;cursor:pointer;padding:32px 24px;transition:all .3s ease}.gpx-upload .upload-area:hover{background-color:#f5f5f5;border-color:#2196f3}.gpx-upload .upload-area .upload-content{align-items:center;display:flex;flex-direction:column;gap:12px}.gpx-upload .upload-area .upload-content svg{opacity:.7}.gpx-upload .upload-area .upload-content svg path{fill:inherit}.gpx-upload .upload-area .upload-content .upload-text{color:#212121;font-size:16px;font-weight:500;margin:0}.gpx-upload .upload-area .upload-content .upload-hint{color:#757575;font-size:12px;margin:0}.gpx-upload .upload-area .upload-content .file-name{color:#212121;font-size:14px;font-weight:500;margin:0;text-align:center;word-break:break-all}.gpx-upload .upload-area .upload-content .change-file-btn{background-color:#0000;border:1px solid #2196f3;border-radius:6px;color:#2196f3;cursor:pointer;font-size:14px;font-weight:500;margin-top:8px;padding:8px 16px;transition:all .2s ease}.gpx-upload .upload-area .upload-content .change-file-btn:hover{background-color:#2196f3;color:#fff}.gpx-upload .upload-area .upload-content.loading .spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#2196f3;height:40px;width:40px}.gpx-upload .upload-area .upload-content.loading p{color:#757575;font-size:14px;margin:0}.gpx-upload .upload-area .upload-content.success svg{opacity:1}.gpx-upload .error-message{background-color:#ffebee;border-radius:8px;color:#c62828;font-size:14px;padding:12px;text-align:center}.gpx-upload .snap-to-roads-section{display:flex;justify-content:center;padding:16px 0}.gpx-upload .snap-to-roads-section .snap-to-roads-btn{align-items:center;background-color:#2196f3;border:none;border-radius:8px;box-shadow:0 2px 8px #2196f34d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:12px 32px;transition:all .3s ease}.gpx-upload .snap-to-roads-section .snap-to-roads-btn:hover:not(:disabled){background-color:#1976d2;box-shadow:0 4px 12px #2196f366;transform:translateY(-2px)}.gpx-upload .snap-to-roads-section .snap-to-roads-btn:disabled{cursor:not-allowed;opacity:.7}.gpx-upload .snap-to-roads-section .snap-to-roads-btn.snapped{background-color:#4caf50;box-shadow:0 2px 8px #4caf504d}.gpx-upload .snap-to-roads-section .snap-to-roads-btn.snapped:hover{background-color:#4caf50;transform:none}.gpx-upload .snap-to-roads-section .snap-to-roads-btn .spinner.small{animation:spin 1s linear infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.gpx-upload .snap-to-roads-section .snap-to-roads-btn svg{height:20px;width:20px}.gpx-upload .sample-file-section{align-items:center;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:8px;padding-top:16px}.gpx-upload .sample-file-section p{color:#757575;font-size:14px;margin:0}.gpx-upload .sample-file-section .sample-file-btn{background-color:#f5f5f5;border:none;border-radius:6px;color:#212121;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s ease}.gpx-upload .sample-file-section .sample-file-btn:hover{background-color:#e0e0e0}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.App{height:100vh;position:relative;text-align:center;width:100vw}.control-pannel{background-color:#fff;border-radius:16px;left:6px;padding:18px;position:absolute;top:6px;width:345px;z-index:9}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:400;line-height:20px;margin:0}*{outline:none!important}
/*# sourceMappingURL=main.968ae3ea.css.map*/