diff --git a/app/assets/images/level/scrubber_background.png b/app/assets/images/level/scrubber_background.png
index a70abeb97..517a4c8c4 100644
Binary files a/app/assets/images/level/scrubber_background.png and b/app/assets/images/level/scrubber_background.png differ
diff --git a/app/styles/base.sass b/app/styles/base.sass
index 0acc6fb48..581dd249a 100644
--- a/app/styles/base.sass
+++ b/app/styles/base.sass
@@ -153,40 +153,6 @@ a
     cursor: pointer
       
 
-// Bigger versions of some Bootstrap icons
-// TODO: make the non-white versions of these if we ever need them
-.icon.big
-  background-image: url(/images/pages/base/glyphicons-simplified.png)
-
-.icon-white.big
-  background-image: url(/images/pages/base/glyphicons-simplified.png)
-
-.icon.big, .icon-white.big
-  width: 19px
-  height: 19px
-  line-height: 19px
-
-.icon-pause.big
-  background-position: -114px 0px
-
-.icon-play.big
-  background-position: -95px 0px
-
-.icon-repeat.big
-  background-position: -76px 0px
-
-.icon-volume-off.big
-  background-position: -57px 0px
-
-.icon-volume-down.big
-  background-position: -38px 0px
-
-.icon-volume-up.big
-  background-position: -19px 0px
-
-.icon-cog.big
-  background-position: 0px 0px
-
 // loading screens for everything but the play view
 .loading-screen
   .progress
@@ -339,3 +305,7 @@ kbd
   &.gem-60
     width: 60px
     height: 60px
+
+.popover
+  border-image: url(/images/level/popover_background.png) 29 39 fill stretch
+  border-width: 15px 20px
diff --git a/app/styles/play/level.sass b/app/styles/play/level.sass
index 2a1fc972d..3ba3274b6 100644
--- a/app/styles/play/level.sass
+++ b/app/styles/play/level.sass
@@ -144,14 +144,6 @@ $level-resize-transition-time: 0.5s
     left: -3px
     bottom: 0
     
-  #hud-top-gradient
-    top: -32px
-    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8*$GI) 100%)
-    left: 0
-    right: 0
-    bottom: 0
-    height: 3px
-
   #canvas-left-gradient
     left: 0px
     width: 5px
diff --git a/app/styles/play/level/goals.sass b/app/styles/play/level/goals.sass
index 94aef8605..b65998a21 100644
--- a/app/styles/play/level/goals.sass
+++ b/app/styles/play/level/goals.sass
@@ -9,7 +9,7 @@
   background: transparent url(/images/level/goals_background.png)
   background-size: 100% 100%
 
-  padding: 19px 17px 6px 25px
+  padding: 19px 17px 2px 25px
   z-index: 3
   font-size: 14px
 
diff --git a/app/styles/play/level/multiplayer-status.sass b/app/styles/play/level/multiplayer-status.sass
index 0e16da6bf..c0fe93828 100644
--- a/app/styles/play/level/multiplayer-status.sass
+++ b/app/styles/play/level/multiplayer-status.sass
@@ -4,6 +4,8 @@
 // TODO: Replace this devart with nice shinies
 
 #multiplayer-status-view
+  position: absolute
+
   .player-count
     color: white
   .players-available
diff --git a/app/styles/play/level/playback.sass b/app/styles/play/level/playback.sass
index 2434fb1af..92e5a2c81 100644
--- a/app/styles/play/level/playback.sass
+++ b/app/styles/play/level/playback.sass
@@ -2,50 +2,52 @@
 @import "app/styles/bootstrap/variables"
 
 #playback-view
+  $playback-button-color: rgb(248, 197, 146)
+  // When 75% alpha, it will look like the rgb(194, 154, 114) from Heald's design
   width: 55%
-  height: 30px
+  height: 60px
+  padding-top: 17px
   position: relative
-  background: #383434
-  // Counteract 50px height of absolutely positioned control bar.
-  margin-top: 50px
+  background: transparent url(/images/level/scrubber_background.png)
+  background-size: 100% 100%
+  // Counteract 50px height of absolutely positioned control bar, but overlap by 10px of jagged transparent top.
+  margin-top: 50px - 10px
+  z-index: 2
 
   button
-    height: 26px
+    font-size: 26px
+    margin-left: 10px
     background: transparent
-    @include opacity(0.50)
-    i
+    @include opacity(0.75)
+    color: $playback-button-color
+    text-shadow: 1px 1px 0px black
+
+    .glyphicon
       position: relative
 
   button:hover
-    @include opacity(0.75)
-    
+    @include opacity(1)
+
   #play-button, #volume-button, #music-button
     float: left
-    margin-left: 2px
-    margin-top: 2px
-    width: 25px
     position: relative
     
   #music-button
-    @include opacity(0.25)
-    font-size: 20px
+    @include opacity(0.5)
     span
       position: relative
       left: -3px
       top: -2px
     &:hover
-      @include opacity(0.50)
+      @include opacity(0.75)
     &.music-on
-      @include opacity(0.50)
+      @include opacity(0.75)
       &:hover
-        @include opacity(0.75)
+        @include opacity(1)
     
   #play-button, #volume-button
-    i
+    .glyphicon
       display: none
-      position: absolute
-      left: 2px
-      top: 2px
  
   #settings-button
     padding-left: 4px
@@ -54,51 +56,58 @@
   #playback-settings
     float: right
     position: relative
-    top: 2px
-    margin-right: 2px
-    ul i
+    margin-right: 10px
+    ul button
       margin: 0 10px
     li:hover
       background: #add8e6
 
-  #play-button.disabled i
-    @include opacity(0.5)
-  #play-button.playing i.icon-pause
+  #play-button.disabled .glyphicon
+    @include opacity(0.75)
+  #play-button.playing .glyphicon-pause
     display: inline-block
-  #play-button.paused i.icon-play
+  #play-button.paused .glyphicon-play
     display: inline-block
-  #play-button.ended i.icon-repeat
+  #play-button.ended .glyphicon-repeat
     display: inline-block
 
-  #volume-button.vol-up i.icon-volume-up
+  #volume-button.vol-up .glyphicon.glyphicon-volume-up
     display: inline-block
-  #volume-button.vol-off i.icon-volume-off
+  #volume-button.vol-off .glyphicon.glyphicon-volume-off
     display: inline-block
-    @include opacity(0.50)
+    @include opacity(0.75)
     &:hover
-      @include opacity(0.75)
-  #volume-button.vol-down i.icon-volume-down
+      @include opacity(1)
+  #volume-button.vol-down .glyphicon.glyphicon-volume-down
     display: inline-block
 
   .scrubber
     position: absolute
-    left: 100px
-    top: 0px
+    left: 170px
+    top: 21px
     bottom: 0px
-    right: 125px
+    right: 175px
+    background: rgb(3, 3, 3)
+    height: 28px
+    border: 1px solid rgb(67, 67, 44)
+    border-radius: 14px
+
+    .scrubber-inner
+      border: 1px solid rgb(44, 38, 29)
+      width: 100%
+      height: 100%
+      border-radius: 14px
+      padding: 6px 8px
 
     .progress
       float: left
       width: 100%
-      height: 14px
-      margin-top: 8px
+      height: 12px
       cursor: pointer
       overflow: visible
       border: 1px solid #444
-      // Remove gradient background in favor of solid fill
-      background-color: #888
-      background-image: none
-      border-radius: 0
+      background: rgb(80, 67, 53)
+      border-radius: 6px
       border: 0
       // Can't do this transition because handle then jitters, but would be good for streaming.
       //@include transition(width .2s linear)
@@ -113,19 +122,19 @@
         @include transition(width .0s linear)
         position: relative
         // Remove gradient background in favor of solid fill
-        background-color: #67A4C8
-        //background-image: none  // gradient looks kind of cool though; keep it in
+        background: rgb(245, 170, 49)
+        border: 1px solid rgb(62, 45, 16)
+        border-radius: 6px
 
         .scrubber-handle
           cursor: pointer
           position: absolute
-          right: -16px
-          top: -9px
-          background: transparent url(/images/level/playback_thumb.png)
-          width: 32px
-          height: 32px
-          // z: above the gradient line bordering the playback bar
-          z-index: 6
+          right: -18px
+          top: -11px
+          background: transparent url(/images/level/scrubber_knob.png)
+          background-size: contain
+          width: 36px
+          height: 36px
 
       .ui-slider-handle
         height: 100%
@@ -140,3 +149,5 @@
 body.ipad #playback-view
   #playback-settings
     display: none
+  .scrubber
+    right: 25px
diff --git a/app/styles/play/spectate.sass b/app/styles/play/spectate.sass
index 227b86db0..d102a7197 100644
--- a/app/styles/play/spectate.sass
+++ b/app/styles/play/spectate.sass
@@ -124,14 +124,6 @@
     left: -3px
     bottom: 0
 
-  #hud-top-gradient
-    top: -32px
-    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.8*$GI) 100%)
-    left: 0
-    right: 0
-    bottom: 0
-    height: 3px
-
   #canvas-left-gradient
     left: 0px
     width: 5px
diff --git a/app/templates/play/level/goals.jade b/app/templates/play/level/goals.jade
index d1e0b689c..5186106dd 100644
--- a/app/templates/play/level/goals.jade
+++ b/app/templates/play/level/goals.jade
@@ -1,6 +1,6 @@
 ul#primary-goals-list
 div.goals-status
-  strong(data-i18n="play_level.goals") Goals
+  span(data-i18n="play_level.goals") Goals
   span.spr :
   span(data-i18n="play_level.success").secret.goal-status.success Success!
   span(data-i18n="play_level.incomplete").secret.goal-status.incomplete Incomplete
diff --git a/app/templates/play/level/hud.jade b/app/templates/play/level/hud.jade
index 5153f1379..5e093bf04 100644
--- a/app/templates/play/level/hud.jade
+++ b/app/templates/play/level/hud.jade
@@ -1,5 +1,3 @@
-#hud-top-gradient.gradient
-
 .center
 
   .thang-canvas-wrapper.thang-elem
diff --git a/app/templates/play/level/playback.jade b/app/templates/play/level/playback.jade
index 5502f78cb..5d494cb67 100644
--- a/app/templates/play/level/playback.jade
+++ b/app/templates/play/level/playback.jade
@@ -1,45 +1,29 @@
 button.btn.btn-xs.btn-inverse#play-button.paused(title="Ctrl/Cmd + P: Toggle level play/pause")
-  i.icon-play.icon-white.big
-  i.icon-pause.icon-white.big
-  i.icon-repeat.icon-white.big
+  .glyphicon.glyphicon-play
+  .glyphicon.glyphicon-pause
+  .glyphicon.glyphicon-repeat
 
 button.btn.btn-xs.btn-inverse#volume-button(title="Adjust volume")
-  i.icon-volume-off.icon-white.big
-  i.icon-volume-down.icon-white.big
-  i.icon-volume-up.icon-white.big
+  .glyphicon.glyphicon-volume-off
+  .glyphicon.glyphicon-volume-down
+  .glyphicon.glyphicon-volume-up
 button.btn.btn-xs.btn-inverse#music-button(title="Toggle Music")
   span ♫
 
 .scrubber
-  .progress.secret#timeProgress
-    .progress-bar
-      .scrubber-handle
-      .popover.fade.top.in#timePopover
-        .arrow
-        h3.popover-title
-        .popover-content
+  .scrubber-inner
+    .progress.secret#timeProgress
+      .progress-bar
+        .scrubber-handle
+        .popover.fade.top.in#timePopover
+          .arrow
+          h3.popover-title
+          .popover-content
 
 .btn-group.dropup#playback-settings
   button.btn.btn-xs.btn-inverse.toggle-fullscreen(title="Toggle fullscreen")
-    i.icon-fullscreen.icon-white
+    .glyphicon.glyphicon-fullscreen
   button.btn.btn-xs.btn-inverse#zoom-in-button(title="Zoom In (or scroll down)")
-    i.icon-zoom-in.icon-white
+    .glyphicon.glyphicon-zoom-in
   button.btn.btn-xs.btn-inverse#zoom-out-button(title="Zoom Out (or scroll up)")
-    i.icon-zoom-out.icon-white
-  button.btn.btn-xs.btn-inverse.dropdown-toggle(data-toggle="dropdown")#settings-button
-    i.icon-cog.icon-white.big
-  ul.dropdown-menu
-    if me.get('name') == "Nick"
-      li(title="Ctrl/Cmd + \\: Toggle debug display").selectable#debug-toggle
-        i.icon-globe
-        | Debug Mode
-        i.icon-ok.secret
-    li.selectable#view-keyboard-shortcuts
-      i.icon-info-sign
-      span(data-i18n="play_level.keyboard_shortcuts") Key Shortcuts
-    li.selectable#edit-wizard-settings
-      i.icon-user
-      span(data-i18n="play_level.customize_wizard") Customize Wizard
-    li.selectable#edit-editor-config
-      i.icon-edit
-      span(data-i18n="play_level.editor_config") Editor Config
+    .glyphicon.glyphicon-zoom-out
diff --git a/app/views/play/level/LevelPlaybackView.coffee b/app/views/play/level/LevelPlaybackView.coffee
index 81bf36555..31b495642 100644
--- a/app/views/play/level/LevelPlaybackView.coffee
+++ b/app/views/play/level/LevelPlaybackView.coffee
@@ -17,7 +17,6 @@ module.exports = class LevelPlaybackView extends CocoView
     'level:scrub-forward': 'onScrubForward'
     'level:scrub-back': 'onScrubBack'
     'level:set-volume': 'onSetVolume'
-    'level:set-debug': 'onSetDebug'
     'surface:frame-changed': 'onFrameChanged'
     'god:new-world-created': 'onNewWorld'
     'god:streaming-world-updated': 'onNewWorld'
@@ -28,10 +27,6 @@ module.exports = class LevelPlaybackView extends CocoView
     'real-time-multiplayer:manual-cast': 'onRealTimeMultiplayerCast'
 
   events:
-    'click #debug-toggle': 'onToggleDebug'
-    'click #edit-wizard-settings': 'onEditWizardSettings'
-    'click #edit-editor-config': 'onEditEditorConfig'
-    'click #view-keyboard-shortcuts': 'onViewKeyboardShortcuts'
     'click #music-button': 'onToggleMusic'
     'click #zoom-in-button': -> Backbone.Mediator.publish 'camera:zoom-in', {} unless @shouldIgnore()
     'click #zoom-out-button': -> Backbone.Mediator.publish 'camera:zoom-out', {} unless @shouldIgnore()
@@ -52,59 +47,6 @@ module.exports = class LevelPlaybackView extends CocoView
     '⌘+], ctrl+]': 'onScrubForward'
     '⌘+⇧+], ctrl+⇧+]': 'onSingleScrubForward'
 
-  # popover that shows at the current mouse position on the progressbar, using the bootstrap popover.
-  # Could make this into a jQuery plugins itself theoretically.
-  class HoverPopup extends $.fn.popover.Constructor
-    constructor: () ->
-      @enabled = true
-      @shown = false
-      @type = 'HoverPopup'
-      @options =
-        placement: 'top'
-        container: 'body'
-        animation: true
-        html: true
-        delay:
-          show: 400
-      @$element = $('#timeProgress')
-      @$tip = $('#timePopover')
-
-      @content = ''
-
-    getContent: -> @content
-
-    show: ->
-      unless @shown
-        super()
-        @shown = true
-
-    updateContent: (@content) ->
-      @setContent()
-      @$tip.addClass('fade top in')
-
-    onHover: (@e) ->
-      pos = @getPosition()
-      actualWidth  = @$tip[0].offsetWidth
-      actualHeight = @$tip[0].offsetHeight
-      calculatedOffset =
-        top: pos.top - actualHeight
-        left: pos.left + pos.width / 2 - actualWidth / 2
-      this.applyPlacement(calculatedOffset, 'top')
-
-    getPosition: ->
-      top: @$element.offset().top
-      left: if @e? then @e.pageX else @$element.offset().left
-      height: 0
-      width: 0
-
-    hide: ->
-      super()
-      @shown = false
-
-    disable: ->
-      super()
-      @hide()
-
   constructor: ->
     super(arguments...)
     me.on('change:music', @updateMusicButton, @)
@@ -192,20 +134,6 @@ module.exports = class LevelPlaybackView extends CocoView
     @currentTime = 0
     @lastLoadedFrameCount = loadedFrameCount
 
-  onToggleDebug: ->
-    return if @shouldIgnore()
-    flag = $('#debug-toggle i.icon-ok')
-    Backbone.Mediator.publish('level:set-debug', {debug: flag.hasClass('invisible')})
-
-  onEditWizardSettings: ->
-    Backbone.Mediator.publish 'level:edit-wizard-settings', {}
-
-  onEditEditorConfig: ->
-    @openModalView new EditorConfigModal session: @options.session
-
-  onViewKeyboardShortcuts: ->
-    @openModalView new KeyboardShortcutsModal()
-
   onDisableControls: (e) ->
     if not e.controls or 'playback' in e.controls
       @disabled = true
@@ -340,10 +268,6 @@ module.exports = class LevelPlaybackView extends CocoView
     Backbone.Mediator.publish 'level:set-letterbox', on: false
     Backbone.Mediator.publish 'playback:real-time-playback-ended', {}
 
-  onSetDebug: (e) ->
-    flag = $('#debug-toggle i.icon-ok')
-    flag.toggleClass 'invisible', not e.debug
-
   # to refactor
 
   hookUpScrubber: ->
@@ -423,3 +347,56 @@ module.exports = class LevelPlaybackView extends CocoView
     $(window).off('resize', @onWindowResize)
     @onWindowResize = null
     super()
+
+# popover that shows at the current mouse position on the progressbar, using the bootstrap popover.
+# Could make this into a jQuery plugins itself theoretically.
+class HoverPopup extends $.fn.popover.Constructor
+  constructor: () ->
+    @enabled = true
+    @shown = false
+    @type = 'HoverPopup'
+    @options =
+      placement: 'top'
+      container: 'body'
+      animation: true
+      html: true
+      delay:
+        show: 400
+    @$element = $('#timeProgress')
+    @$tip = $('#timePopover')
+
+    @content = ''
+
+  getContent: -> @content
+
+  show: ->
+    unless @shown
+      super()
+      @shown = true
+
+  updateContent: (@content) ->
+    @setContent()
+    @$tip.addClass('fade top in')
+
+  onHover: (@e) ->
+    pos = @getPosition()
+    actualWidth  = @$tip[0].offsetWidth
+    actualHeight = @$tip[0].offsetHeight
+    calculatedOffset =
+      top: pos.top - actualHeight
+      left: pos.left + pos.width / 2 - actualWidth / 2
+    this.applyPlacement(calculatedOffset, 'top')
+
+  getPosition: ->
+    top: @$element.offset().top
+    left: if @e? then @e.pageX else @$element.offset().left
+    height: 0
+    width: 0
+
+  hide: ->
+    super()
+    @shown = false
+
+  disable: ->
+    super()
+    @hide()