       height: 3px;
       background: #0076ff;
       z-index: 9999;
-      transition: width #{DELAY}ms ease-out, opacity #{DELAY / 2}ms #{DELAY / 2}ms ease-in;
+      transition: width #{ANIMATION_DURATION}ms ease-out, opacity #{ANIMATION_DURATION / 2}ms #{ANIMATION_DURATION / 2}ms ease-in;
       transform: translate3d(0, 0, 0);
     }
   """


  fadeProgressElement: (callback) ->
    @progressElement.style.opacity = 0
    setTimeout(callback, DELAY * 1.5)

  uninstallProgressElement: ->
    document.documentElement.removeChild(@progressElement)

  startTrickling: ->
    @trickleInterval ?= setInterval(@trickle, DELAY)

  stopTrickling: ->
    clearInterval(@trickleInterval)

class Turbolinks.ProgressBar
  ANIMATION_DURATION = 300

  @defaultCSS: """
    .turbolinks-progress-bar {
