/*****************************

Soundslice stylesheet
Authored by PJ Macklin

TODO: Convert px to rems/ems

*******************************/
#sheetmusic, #toggle-settings .gear-container, #toggle-settings-mobile .gear-container, .audiotype-controller, .button-elements, .progress-nib, .finetune-wrapper, .tracklabel .track-name, .track-control-rail, .view-icons button:before, .questionmark:before, .selector-ui, .selector-list li button, .settings-panel, .speed-toggler, .errormessage, .latest-video-link:after, .latest-video-details, .homepage-container, .partner-link {
  -webkit-transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: all 250ms cubic-bezier(0.165, 0.84, 0.44, 1); }

.button-elements, .trigger-button {
  border-radius: 4px; }

.errormessage {
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  -ms-border-radius: 6px;
  -o-border-radius: 6px; }

.control-icon, .artist-name, .speed-controls, .finetune-wrapper button, .speedlabel {
  color: #fff; }

.appwrapper {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  height: calc(100% - 72px);
  z-index: 1;
  background: #fff; }
  @media (max-width: 768px) {
    .appwrapper {
      height: calc(100% - 54px); } }

.musicwrapper {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -webkit-flex-direction: row;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  width: 100%;
  overflow: hidden;
  position: relative; }
  .musicwrapper.smalllabels .track-name {
    border-top-width: 3px;
    padding-top: 3px;
    font-size: 10px; }
  .musicwrapper.nolabels .track-name {
    font-size: 0; }

.notation {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative; }

#sheetmusic {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  width: 90%;
  height: 100%;
  margin: auto; }

#vertbar {
  position: absolute;
  top: 0;
  right: 0;
  width: 20px;
  cursor: pointer;
  z-index: 10; }

#vertbar:after {
  content: "";
  position: absolute;
  width: 8px;
  top: 0;
  bottom: 0;
  left: 6px;
  right: 6px;
  background: #bbb;
  border-radius: 6px;
  z-index: 9; }

#vertbar:hover:after {
  background: #999; }

.separator-block {
  border-bottom: 1px solid #3B3346; }

.control-icon {
  font: normal 13px/18px "proxima-nova", helvetica, arial, sans-serif;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .control-icon img, .control-icon svg {
    display: block;
    margin: auto;
    border: 0; }
  .control-icon.active {
    opacity: 1; }

.slidecontroller .left-slide-control, .slidecontroller .right-slide-control {
  top: 9px; }
.slidecontroller .ui-tooltip {
  bottom: 60%; }

.close-error {
  font: normal 13px/18px "proxima-nova", helvetica, arial, sans-serif;
  padding: 11px 0;
  width: 100%;
  border-top: 1px solid #FC5D2B;
  border-radius: 0 0 6px 6px; }
  .close-error:hover {
    background: #f9ce8d; }
  .close-error:active {
    background: #F3A42D; }

#toggle-settings .gear-container, #toggle-settings-mobile .gear-container {
  position: relative; }
#toggle-settings.active .gear-container, #toggle-settings-mobile.active .gear-container {
  -webkit-transform: rotate(60deg);
  -moz-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  -o-transform: rotate(60deg);
  transform: rotate(60deg); }

#toggle-container {
  padding-top: 5px; }
  #toggle-container.disabled #midi-toggle {
    display: none; }
  @media (max-width: 768px) {
    #toggle-container {
      display: none; } }

#midi-toggle {
  max-width: 60px;
  white-space: nowrap;
  overflow-x: hidden; }
  #midi-toggle.active {
    opacity: 1; }

#mobile-toggler .audiotype-controller:hover .button-elements {
  background: rgba(255, 255, 255, 0.2); }
#mobile-toggler .audiotype-controller:active .button-elements, #mobile-toggler .audiotype-controller.active .button-elements {
  background: rgba(255, 255, 255, 0.8);
  color: #3B3346; }

.audiotype-controller {
  font-size: 12px;
  width: 100%;
  display: table;
  text-align: left;
  position: relative; }
  .audiotype-controller:hover {
    cursor: pointer; }
    .audiotype-controller:hover .button-elements {
      background: #e5e4e8; }
  .audiotype-controller:active .button-elements, .audiotype-controller.active .button-elements {
    background: #60516E;
    color: #fff; }
  .audiotype-controller input[type="radio"] {
    margin-left: -12px; }
  .audiotype-controller.disabled:hover {
    cursor: not-allowed; }
    .audiotype-controller.disabled:hover .button-elements {
      opacity: .5; }
    .audiotype-controller.disabled:hover .ui-tooltip {
      opacity: 1;
      visibility: visible;
      transition-delay: 0s;
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -ms-transition-delay: 0s;
      -o-transition-delay: 0s; }
  @media (max-width: 768px) {
    .audiotype-controller {
      text-align: center; } }

.button-elements {
  font-size: 16px;
  display: block;
  padding: 4px 8px;
  margin: 2px 0; }
  .button-elements img {
    vertical-align: middle;
    position: relative;
    top: -1px;
    margin: 0 10px; }

.tooltip-label {
  text-align: center;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #bdbbbf;
  text-transform: uppercase;
  letter-spacing: 1px;
  font: 13px/18px "proxima-nova", helvetica, arial, sans-serif; }

.noselect {
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  user-select: none; }

.artist-info {
  font-weight: bold;
  text-align: center;
  margin-bottom: 9px;
  white-space: nowrap;
  overflow: hidden; }
  @media (max-width: 768px) {
    .artist-info {
      display: none; } }

.artist-name {
  font-weight: normal; }
  .artist-name:before {
    content: "\2014 ";
    margin-right: 4px; }

.speed-controls {
  font-size: 11px;
  position: relative;
  width: 100%; }
  .speed-controls #speed-tooltip, .speed-controls #speed-tooltip-mobile {
    bottom: 90%; }
  .speed-controls:hover .finetune-wrapper {
    opacity: 1; }
  .speed-controls.unsupported .speed-controller, .speed-controls.unsupported .finetune-wrapper {
    opacity: .5; }
  .speed-controls.unsupported #speed-tooltip {
    display: none; }
  .speed-controls.unsupported:hover {
    cursor: not-allowed; }
    .speed-controls.unsupported:hover .speed-unsupported-tip {
      visibility: visible;
      z-index: 1000;
      opacity: 1;
      transition-delay: 0s;
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -ms-transition-delay: 0s;
      -o-transition-delay: 0s; }

.speedfull {
  display: block;
  padding: 0px 10px; }

.speedlimited {
  display: none; }

body.limitedspeed .speedfull {
  display: none; }
body.limitedspeed .speedlimited {
  display: block; }

.speed-unsupported-tip {
  font-size: 13px; }

.invisible-radio {
  visibility: hidden;
  position: absolute; }

.progress-bar {
  margin: 0 auto;
  width: 70%;
  height: 2px;
  border-radius: 3px;
  background: #60516E;
  position: relative; }
  .progress-bar:hover .progress-nib {
    opacity: 1; }
  .progress-bar::before {
    content: '';
    position: absolute;
    top: -10px;
    right: 0;
    bottom: -10px;
    left: 0; }
  @media (max-width: 768px) {
    .progress-bar {
      width: 65%; }
      .progress-bar::before {
        top: -24px;
        bottom: -26px; } }

.progress-marker {
  width: 0%;
  background: #F3A42D;
  height: 2px;
  border-radius: 3px;
  position: relative; }

.progress-nib {
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 6px;
  position: absolute;
  right: 0;
  top: 0;
  background: #F2EFF6;
  margin-right: -6px;
  margin-top: -5px;
  opacity: 0;
  cursor: pointer; }
  @media (max-width: 768px) {
    .progress-nib {
      opacity: 1;
      width: 16px;
      height: 16px;
      border-radius: 8px;
      margin-top: -7px; } }

.finetune-wrapper {
  opacity: 0;
  position: relative;
  top: -4px; }
  @media (max-width: 768px) {
    .finetune-wrapper {
      opacity: 1; }
      .finetune-wrapper:after {
        content: "";
        display: table;
        clear: both; } }
  .finetune-wrapper button {
    font-size: 12px;
    width: 20%;
    text-align: center;
    position: relative;
    display: inline-block;
    padding: 2px 0 6px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: .7; }
    .finetune-wrapper button .ui-tooltip {
      width: 50px;
      margin-left: -25px;
      font-family: "proxima-nova", helvetica, arial, sans-serif; }
      .finetune-wrapper button .ui-tooltip:before {
        border-width: 8px;
        margin-left: -8px; }
      .finetune-wrapper button .ui-tooltip:after {
        border-width: 6px;
        margin-left: -6px; }
    .finetune-wrapper button:before {
      content: "";
      display: block;
      width: 4px;
      height: 4px;
      background: #60516E;
      border-radius: 2px;
      position: relative;
      top: 0;
      left: 50%;
      margin-left: -2px;
      -webkit-backface-visibility: hidden;
      -moz-backface-visibility: hidden;
      -ms-backface-visibility: hidden;
      backface-visibility: hidden; }
    .finetune-wrapper button:hover {
      opacity: 1; }
      .finetune-wrapper button:hover:before {
        background: #fff;
        -webkit-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        backface-visibility: hidden; }
      .finetune-wrapper button:hover .ui-tooltip {
        opacity: 1;
        visibility: visible;
        transition-delay: 0s;
        -webkit-transition-delay: 0s;
        -moz-transition-delay: 0s;
        -ms-transition-delay: 0s;
        -o-transition-delay: 0s; }
    @media (max-width: 768px) {
      .finetune-wrapper button {
        display: block;
        float: left; }
        .finetune-wrapper button:before {
          background: #9382a3;
          border-radius: 0;
          width: 1px;
          margin-left: 0;
          height: 8px;
          margin-bottom: 4px; } }

.mediumspeed .finetune-wrapper button {
  width: 25%; }
  .mediumspeed .finetune-wrapper button:first-of-type {
    display: none; }

.controlbar {
  background: #3B3346;
  width: 100%;
  height: 73px;
  color: #fff;
  z-index: 11;
  padding: 0 5%; }
  @media (max-width: 768px) {
    .controlbar {
      height: 54px;
      padding: 0; } }

.controlbar-table {
  display: table;
  width: 100%;
  height: 100%; }
  .controlbar-table section {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 20%;
    position: relative;
    padding-top: 5px; }
    .controlbar-table section.mid {
      padding-top: 0;
      width: 60%; }
    .controlbar-table section.right {
      text-align: right; }
    @media (max-width: 768px) {
      .controlbar-table section.speed-controls, .controlbar-table section.right {
        display: none; } }

.controlbar-center {
  width: 100%;
  display: table;
  table-layout: fixed; }
  @media (max-width: 768px) {
    .controlbar-center {
      table-layout: auto; } }
  .controlbar-center .centerbit {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 15%;
    position: relative; }
    .controlbar-center .centerbit.mid {
      width: 70%; }
      .controlbar-center .centerbit.mid .progress-bar {
        width: 100%; }
      @media (max-width: 768px) {
        .controlbar-center .centerbit.mid {
          padding: 0 10px; } }
    .controlbar-center .centerbit.settings {
      display: none; }
      @media (max-width: 768px) {
        .controlbar-center .centerbit.settings {
          display: table-cell; } }

.speedlabel {
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 11px;
  margin-bottom: 5px; }

.loader-circle {
  background: #3B3346;
  width: 100%;
  height: 32px;
  display: none; }
  .loader-circle img {
    width: 32px;
    height: 32px;
    margin: auto; }

#playcontainer.loading .playbutton-wrapper, #playcontainer.loading .menuarrow {
  display: none; }
#playcontainer.loading .loader-circle {
  display: block; }
  #playcontainer.loading .loader-circle img {
    -webkit-animation: loadingspin 1s infinite linear;
    -moz-animation: loadingspin 1s infinite linear;
    -ms-animation: loadingspin 1s infinite linear;
    -o-animation: loadingspin 1s infinite linear;
    animation: loadingspin 1s infinite linear; }

.playicon, .pauseicon {
  color: #fff;
  position: relative;
  margin: auto;
  -webkit-backface-visibility: hidden; }
  .playicon svg, .pauseicon svg {
    width: 32px;
    height: 32px; }

@media (max-width: 768px) {
  #show-play-menu {
    display: none; } }

.playing-1 .play-2, .playing-1 .play-3 {
  display: none; }

.playing-2 .play-1, .playing-2 .play-3 {
  display: none; }

.playing-3 .play-1, .playing-3 .play-2 {
  display: none; }

.playing .playicon {
  display: none; }
.playing .pauseicon {
  display: block; }
.playing .menuarrow {
  visibility: hidden;
  transition: none; }

.pauseicon {
  display: none; }

.time-count, .measure-count {
  margin-bottom: 0;
  font-family: Consolas, monaco, monospace; }

.measure-count {
  font-size: 13px; }

[class^="icon-"], [class*=" icon-"] {
  font-family: 'soundslice-icons';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-chord-shape:before {
  content: "\e600"; }

.icon-edit-pencil:before {
  content: "\e601"; }

.icon-lyrics:before {
  content: "\e602"; }

.icon-music-note:before {
  content: "\e603"; }

.icon-tab-icon:before {
  content: "\e604"; }

.dark-icon {
  color: #3B3346; }

.svg-icon-tiny {
  width: 10px;
  height: 10px; }

.tracklabel .track-name {
  -webkit-transform: rotate(-90deg) translateX(-100%);
  -moz-transform: rotate(-90deg) translateX(-100%);
  -ms-transform: rotate(-90deg) translateX(-100%);
  -o-transform: rotate(-90deg) translateX(-100%);
  transform: rotate(-90deg) translateX(-100%);
  -webkit-transform-origin: 0 0%;
  -moz-transform-origin: 0 0%;
  -ms-transform-origin: 0 0%;
  -o-transform-origin: 0 0%;
  transform-origin: 0 0%;
  border-top: 4px solid #FC5D2B;
  position: absolute;
  z-index: 10;
  padding-top: 6px;
  text-align: right;
  white-space: nowrap; }
  .tracklabel .track-name:hover {
    color: #FC5D2B; }
  .tracklabel .track-name:after {
    content: "";
    padding-right: 6px; }
  @media (max-width: 768px) {
    .tracklabel .track-name {
      border-top-width: 3px;
      padding-top: 3px;
      font-size: 10px; } }

#tracklabels-tooltip:before, #tracklabels-tooltip:after {
  bottom: auto;
  left: auto;
  margin-left: 0;
  border-bottom-color: transparent; }

.hiddenlabel .track-name {
  opacity: .5; }
  .hiddenlabel .track-name:hover {
    opacity: 1; }

.track-control-rail {
  display: none;
  opacity: 0;
  width: 200px;
  padding: 20px;
  position: absolute;
  top: 20px;
  bottom: 73px; }

.track-name, .track-header {
  margin-bottom: 11px; }

body.track-settings-active #sheetmusic {
  -webkit-transform: translate3d(180px, 0, 0);
  -moz-transform: translate3d(180px, 0, 0);
  -ms-transform: translate3d(180px, 0, 0);
  -o-transform: translate3d(180px, 0, 0);
  transform: translate3d(180px, 0, 0); }
body.track-settings-active .track-control-rail {
  display: block;
  opacity: 1; }
body.track-settings-active .tracklabel {
  display: none; }
body.track-settings-active:not(.sidevideo) #fretboard, body.track-settings-active:not(.sidevideo) #keyboard {
  -webkit-transform: translate3d(calc(5% + 180px), -120px, 0);
  -moz-transform: translate3d(calc(5% + 180px), -120px, 0);
  -ms-transform: translate3d(calc(5% + 180px), -120px, 0);
  -o-transform: translate3d(calc(5% + 180px), -120px, 0);
  transform: translate3d(calc(5% + 180px), -120px, 0); }
body.short-footer .controlbar {
  height: 64px; }
body.short-footer .settings-panel {
  bottom: 64px; }
body.short-footer #playcontainer {
  margin-top: 8px; }
  @media (max-width: 768px) {
    body.short-footer #playcontainer {
      margin-top: 0; } }

.tracks-button {
  margin: auto;
  display: block;
  color: #F2EFF6;
  width: 100%; }
  .tracks-button:hover, .tracks-button.active {
    opacity: 1; }
  .tracks-button img {
    vertical-align: middle;
    position: relative;
    top: -1px;
    margin: 0 5px; }

.close-track-settings {
  position: absolute;
  left: 0;
  top: 12px;
  padding: 10px 10px 10px 5px; }
  .close-track-settings:hover {
    color: #FC5D2B; }

.settings-list label {
  color: #A4A1A6;
  width: 30%;
  display: inline-block;
  cursor: pointer;
  margin-right: 10%; }
  .settings-list label + span {
    width: 60%;
    position: absolute; }
.settings-list > button {
  font-size: 13px;
  text-align: left;
  width: 100%;
  position: relative; }
  .settings-list > button:before {
    font-family: "soundslice-icons";
    content: "\e603";
    position: absolute;
    left: -15px;
    top: 2px;
    opacity: 0; }

.settings-label {
  border-top: 1px solid #F2EFF6;
  padding-top: 11px;
  margin: 11px 0; }

.view-icons {
  font-size: 32px; }
  .view-icons button {
    position: relative;
    width: 25%;
    padding: 6px 0; }
    .view-icons button .ui-tooltip {
      width: 80px;
      margin-left: -40px;
      font-family: "proxima-nova", helvetica, arial, sans-serif;
      font-size: 13px;
      bottom: 80%;
      pointer-events: none; }
      .view-icons button .ui-tooltip:before {
        border-width: 8px;
        margin-left: -8px; }
      .view-icons button .ui-tooltip:after {
        border-width: 6px;
        margin-left: -6px; }
    .view-icons button:before {
      font-size: 32px; }
    .view-icons button:before, .view-icons button:after {
      color: #bdbbbf; }
    .view-icons button.active:before, .view-icons button.active:after {
      color: #3B3346; }
    .view-icons button.active:hover:before, .view-icons button.active:hover:after {
      color: #3B3346; }
    .view-icons button.active:active:before, .view-icons button.active:active:after {
      color: #FC5D2B; }
    .view-icons button:hover:before, .view-icons button:hover:after {
      color: #8b878d; }
    .view-icons button:hover .ui-tooltip {
      visibility: visible;
      z-index: 1000;
      opacity: 1;
      transition-delay: 0s;
      -webkit-transition-delay: 0s;
      -moz-transition-delay: 0s;
      -ms-transition-delay: 0s;
      -o-transition-delay: 0s; }
    .view-icons button:active:before, .view-icons button:active:after {
      color: #FC5D2B; }
    .view-icons button.icon-chord-shape:after {
      content: "Am7";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      text-align: center;
      font-size: 11px;
      font-family: "proxima-nova", helvetica, arial, sans-serif; }
    .view-icons button.icon-chord-shape.name-only:after {
      color: #3B3346; }
    .view-icons button.icon-chord-shape.name-only:before {
      color: #bdbbbf; }

.questionmark {
  position: absolute;
  right: 0; }
  .questionmark:before {
    content: "?";
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    text-align: center;
    background: #60516E;
    color: #fff;
    font-size: 11px;
    line-height: 16px;
    font-family: "proxima-nova", helvetica, arial, sans-serif; }
  .questionmark:hover:before {
    background: #3B3346; }
  .questionmark:hover .ui-tooltip {
    visibility: visible;
    z-index: 1000;
    opacity: 1;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s; }

.trigger-button {
  border: 1px solid #3B3346; }
  .trigger-button:hover, .trigger-button.active {
    background: #3B3346; }

.selector-ui {
  padding: 5px 0;
  position: absolute;
  z-index: 0;
  visibility: hidden;
  opacity: 0; }
  .selector-ui.active {
    z-index: 10;
    opacity: 1;
    visibility: visible; }

.selector-offset {
  margin-left: 36%; }

.selector-list {
  max-height: 400px;
  overflow-y: scroll;
  left: 0;
  padding: 0; }
  .selector-list li {
    list-style-type: none; }
    .selector-list li:not(:last-of-type) button {
      border-bottom: 1px solid #F2EFF6; }
    .selector-list li button {
      font-size: 13px;
      padding: 11px 10px;
      display: block;
      width: 100%;
      text-align: left;
      color: #60516E; }
      .selector-list li button:hover {
        background: #F2EFF6; }
      .selector-list li button:active, .selector-list li button.active {
        background: #60516E;
        color: #fff; }
        .selector-list li button:active .synth-descriptor, .selector-list li button.active .synth-descriptor {
          color: #fff; }

.synth-descriptor {
  font-size: .8125em;
  line-height: 18px;
  color: #A4A1A6;
  display: block; }

.twelve-keys {
  width: auto; }

.note-control {
  position: relative; }
  .note-control:hover .note-up, .note-control:hover .note-down {
    opacity: 1;
    visibility: visible; }

.note-up:before {
  content: "";
  position: absolute;
  border: 10px solid transparent;
  bottom: 100%;
  left: 50%;
  margin-left: -10px;
  border-bottom-color: #F2EFF6;
  border-bottom-color: #A4A1A6; }

.note-down:before {
  content: "";
  position: absolute;
  border: 10px solid transparent;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border-top-color: #F2EFF6;
  border-top-color: #A4A1A6; }

.note-up, .note-down {
  opacity: 0;
  display: inline-block;
  visibility: hidden; }
  .note-up:before, .note-down:before {
    border-width: 6px;
    margin-left: -6px; }

#synth-toggle-tooltip {
  max-height: 490px;
  padding: 0; }
  #synth-toggle-tooltip h4 {
    margin-bottom: 0;
    padding: 10px; }

#synthops-list {
  padding: 4px;
  max-height: 450px;
  overflow-y: auto; }

.long-synthlist #synth-toggle-tooltip {
  width: 400px;
  margin-left: -200px; }
.long-synthlist #synthops-list {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  -o-column-count: 2;
  column-count: 2; }

.synthvolume {
  position: relative;
  text-align: center;
  padding-top: 27px;
  padding-left: 15%;
  padding-right: 15%; }
  .synthvolume .volume-slider {
    background: #60516E;
    height: 2px;
    top: -5px; }
    .synthvolume .volume-slider::-webkit-slider-thumb {
      background: #ac9fb9;
      top: 0; }
    .synthvolume .volume-slider::-ms-thumb {
      background: #ac9fb9;
      border: 0; }
    .synthvolume .volume-slider::-ms-fill-lower, .synthvolume .volume-slider::-ms-fill-upper {
      background: #60516E; }
  .synthvolume .inputrange::-moz-range-track {
    height: 2px;
    background: #60516E; }
  .synthvolume .inputrange::-moz-range-thumb {
    background: #ac9fb9; }
  .synthvolume .left-slide-control, .synthvolume .right-slide-control {
    opacity: 1;
    width: auto;
    top: 24px; }
    .synthvolume .left-slide-control img, .synthvolume .right-slide-control img {
      width: 24px;
      height: auto; }
  .synthvolume .left-slide-control {
    left: 0; }
  .synthvolume .right-slide-control {
    right: 0; }

#fretboard, #keyboard {
  display: none;
  height: 120px;
  top: 120px;
  z-index: 10;
  pointer-events: none;
  position: relative;
  -webkit-transition: -webkit-transform 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition: -moz-transform 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition: -ms-transform 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition: -o-transform 250ms cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform 250ms cubic-bezier(0.165, 0.84, 0.44, 1); }
  #fretboard.active, #keyboard.active {
    display: block;
    -webkit-transform: translate3d(0, -120px, 0);
    -moz-transform: translate3d(0, -120px, 0);
    -ms-transform: translate3d(0, -120px, 0);
    -o-transform: translate3d(0, -120px, 0);
    transform: translate3d(0, -120px, 0);
    z-index: 11; }

.instrument-button {
  display: none; }
  .instrument-button.visible {
    display: inline-block; }
  @media (max-width: 768px) {
    .instrument-button, .instrument-button.visible {
      display: none; } }

.settings-panel .instrument-block {
  display: none; }
  @media (max-width: 768px) {
    .settings-panel .instrument-block.visible {
      display: block; } }
  @media (max-width: 768px) {
    .settings-panel .instrument-block button, .settings-panel .instrument-block button.visible {
      display: block; } }

.menuarrow {
  position: relative;
  top: -8px;
  left: -10px; }
  .menuarrow svg {
    width: 15px;
    height: 15px; }

#fretboard-nut {
  background: #F2EFF6;
  color: #60516E;
  left: -80px; }

#fretcapo {
  background: #A4A1A6;
  color: #fff;
  padding-top: 2px;
  margin-left: -105px; }

.fretboard-overlay {
  box-shadow: 0 3px 1px rgba(51, 51, 51, 0.3), 0 -3px 1px rgba(51, 51, 51, 0.3);
  width: 120px;
  height: 20px;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  font-size: 13px;
  -webkit-transform-origin: 100% 0%;
  -moz-transform-origin: 100% 0%;
  -ms-transform-origin: 100% 0%;
  -o-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
  position: absolute;
  z-index: 12; }

#keyboard {
  background: #6d5c7d; }

#keyboard-nut {
  color: #fff;
  width: 120px;
  height: 30px;
  -webkit-transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  transform: rotate(-90deg);
  font-size: 13px;
  -webkit-transform-origin: 0% 0%;
  -moz-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  -o-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
  position: absolute;
  top: 120px;
  z-index: 12;
  text-align: center; }

.settings-panel {
  position: fixed;
  right: -325px;
  top: 0;
  bottom: 73px;
  width: 325px;
  z-index: 200;
  background: #60516E;
  overflow: auto;
  color: #F2EFF6; }
  .settings-panel .ui-tooltip {
    background-color: #fff; }
    .settings-panel .ui-tooltip:after {
      border-top-color: #fff; }
  .settings-panel h3 {
    font: 0.8125em/18px "proxima-nova", helvetica, arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px; }
  @media (max-width: 768px) {
    .settings-panel {
      bottom: 54px; } }

.appwrapper.settingson .settings-panel {
  right: 0; }

.left-slide-control {
  left: 20px; }

.right-slide-control {
  right: 20px; }

.left-slide-control, .right-slide-control {
  position: absolute;
  top: 14px;
  width: 36px;
  text-align: center; }
  .left-slide-control:active, .right-slide-control:active {
    -webkit-transform: translate3d(0, 1px, 0);
    -moz-transform: translate3d(0, 1px, 0);
    -ms-transform: translate3d(0, 1px, 0);
    -o-transform: translate3d(0, 1px, 0);
    transform: translate3d(0, 1px, 0); }

.sidebar-header {
  padding: 26px 20px;
  background: #3B3346;
  color: #fff; }
  @media (max-width: 768px) {
    .sidebar-header {
      padding: 13px 20px; } }

.sidebar-separator {
  background: #3B3346;
  padding: 5px 20px;
  color: #fff; }

.listcontrolblock {
  padding: 16px 20px;
  position: relative;
  text-align: center; }
  .listcontrolblock .inputrange {
    width: 200px; }
    .listcontrolblock .inputrange::-webkit-slider-runnable-track {
      background: #3B3346; }
    .listcontrolblock .inputrange::-moz-range-track {
      background: #3B3346; }
    .listcontrolblock .inputrange::-ms-fill-lower, .listcontrolblock .inputrange::-ms-fill-upper {
      background: #3B3346; }
  .listcontrolblock .speed-toggler {
    color: rgba(242, 239, 246, 0.5);
    border-color: #3B3346; }
    .listcontrolblock .speed-toggler:hover, .listcontrolblock .speed-toggler:active, .listcontrolblock .speed-toggler.active {
      color: #F2EFF6; }
    .listcontrolblock .speed-toggler:active, .listcontrolblock .speed-toggler.active {
      background: #3B3346; }

.speed-toggler {
  color: #60516E;
  font-size: 12px;
  border: 2px solid #60516E;
  width: 50%;
  display: inline-block;
  padding: 10px 4px; }
  .speed-toggler:first-of-type {
    border-radius: 4px 0 0 4px;
    border-right: 0; }
  .speed-toggler:last-of-type {
    border-radius: 0 4px 4px 0;
    border-left: 0; }
  .speed-toggler:hover, .speed-toggler:active, .speed-toggler.active {
    color: #F2EFF6; }
  .speed-toggler:active, .speed-toggler.active {
    background: #60516E; }

.inputrange {
  -webkit-appearance: none;
  width: 85%;
  position: relative;
  top: -5px; }
  .inputrange:focus {
    outline: none; }
  .inputrange::-webkit-slider-runnable-track {
    width: 85%;
    height: 2px;
    background: #60516E;
    border: 0;
    border-radius: 6px; }
  .inputrange::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 12px;
    height: 12px;
    background: #F2EFF6;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    margin-top: -0.5em; }
  .inputrange::-moz-range-track {
    background: #60516E;
    height: 2px;
    border: 0;
    border-radius: 6px; }
  .inputrange::-moz-range-thumb {
    width: 12px;
    height: 12px;
    background: #F2EFF6;
    border: 0;
    border-radius: 50%;
    cursor: pointer; }
  .inputrange:-moz-focusring {
    outline: 1px solid #3B3346;
    outline-offset: -1px; }
  .inputrange::-ms-track {
    background: transparent;
    color: transparent;
    height: 2px;
    border-color: transparent;
    border-width: 12px 0; }
  .inputrange::-ms-fill-lower, .inputrange::-ms-fill-upper {
    background: #60516E;
    border-radius: 12px; }
  .inputrange::-ms-thumb {
    width: 12px;
    height: 12px;
    background: #F2EFF6;
    border: 0;
    border-radius: 50%;
    cursor: pointer; }

.vidsizer {
  display: none;
  width: 8px;
  background: #dad6e0;
  cursor: ew-resize; }
  .vidsizer:hover {
    background: #cdc7d5; }

body.video-active .video-sidebar {
  display: block; }
body.video-active.sidevideo .vidsizer {
  display: block; }
body.video-active.topvideo .musicwrapper {
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
body.video-active.topvideo .video-sidebar {
  width: 100% !important;
  height: auto;
  position: relative;
  overflow: hidden;
  background: transparent; }

.partial-support .video-warning {
  display: block; }

.video-sidebar {
  position: relative;
  display: none;
  width: 320px;
  background: #F2EFF6; }

.video-wrapper {
  width: 100%;
  height: 0;
  position: relative;
  padding-bottom: 56.25%; }
  .video-wrapper.narrow {
    padding-bottom: 0; }

.sidevideo .video-wrapper {
  pointer-events: none; }

.video-container {
  background: #000;
  position: absolute;
  width: 100%;
  height: 100%; }

.video-warning {
  background: #60516E;
  display: none;
  padding: 16px; }
  .video-warning img {
    margin-right: 11px; }
  .video-warning p {
    overflow: hidden;
    color: #fff;
    line-height: 18px; }
  @media (max-width: 768px) {
    .video-warning {
      -webkit-transform: translateY(-100%);
      -moz-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
      -o-transform: translateY(-100%);
      transform: translateY(-100%);
      background: rgba(96, 81, 110, 0.8); } }

.errormessage {
  width: 600px;
  position: absolute;
  background: rgba(246, 185, 93, 0.95);
  text-align: center;
  left: 50%;
  top: 15%;
  margin-left: -300px;
  z-index: 9999;
  padding: 20px 0 0;
  opacity: 0;
  visibility: hidden; }
  .errormessage p {
    margin-top: 5px;
    margin-bottom: 22px; }
  .errormessage.active {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, 10px, 0);
    -moz-transform: translate3d(0, 10px, 0);
    -ms-transform: translate3d(0, 10px, 0);
    -o-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s; }
  @media (max-width: 768px) {
    .errormessage {
      width: 90%;
      margin-left: -45%; } }

#autoscrollon {
  background: #3B3346;
  color: #fff;
  font-weight: bold;
  padding: 11px 12px 9px;
  border-radius: 6px;
  position: absolute;
  left: 4%;
  bottom: 0;
  font: normal 13px "proxima-nova", helvetica, arial, sans-serif;
  z-index: -1;
  opacity: 0;
  visibility: none; }
  #autoscrollon:hover {
    background: #FC5D2B; }
  #autoscrollon.offroad {
    z-index: 10;
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate3d(0, -10px, 0);
    -moz-transform: translate3d(0, -10px, 0);
    -ms-transform: translate3d(0, -10px, 0);
    -o-transform: translate3d(0, -10px, 0);
    -transform: translate3d(0, -10px, 0); }

.latest-video-link {
  position: relative;
  display: block; }
  .latest-video-link:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(59, 51, 70, 0.8);
    opacity: 0; }
  .latest-video-link:hover:after {
    opacity: 1; }

.latest-video-details {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  color: #fff;
  line-height: 22px;
  padding: 10px;
  background: -webkit-linear-gradient(#3B3346, rgba(59, 51, 70, 0));
  background: -moz-linear-gradient(#3B3346, rgba(59, 51, 70, 0));
  background: -ms-linear-gradient(#3B3346, rgba(59, 51, 70, 0));
  background: linear-gradient(#3B3346, rgba(59, 51, 70, 0));
  z-index: 2; }
  .latest-video-details .small {
    display: block;
    opacity: .7; }

.ie9 .latest-video-details {
  background-color: rgba(59, 51, 70, 0.5); }

.song-title {
  font-family: "freight-display-pro", serif;
  font-size: 21px; }

.container:not(.hero-container) {
  padding-top: 44px; }

.border-container:after {
  content: "";
  border-bottom: 1px solid #cfcfcf;
  display: block;
  margin: 66px auto 0; }
  @media (max-width: 768px) {
    .border-container:after {
      width: 90%; } }

.hero-container {
  background-color: #60516E;
  background-image: -webkit-radial-gradient(center bottom, circle cover, #f6b95d 30%, #60516E 70%, #3B3346);
  background-image: -moz-radial-gradient(center bottom, circle cover, #f6b95d 30%, #60516E 70%, #3B3346);
  background-image: -ms-radial-gradient(center bottom, circle cover, #f6b95d 30%, #60516E 70%, #3B3346);
  background-image: radial-gradient(center bottom, circle cover, #f6b95d 30%, #60516E 70%, #3B3346);
  color: #fff;
  position: relative;
  z-index: 5; }
  @media (max-width: 768px) {
    .hero-container {
      margin-bottom: 0; } }

.dark-container {
  background-color: #60516E;
  background-image: -webkit-radial-gradient(center bottom, circle cover, #60516E 60%, #3B3346);
  background-image: -moz-radial-gradient(center bottom, circle cover, #60516E 60%, #3B3346);
  background-image: -ms-radial-gradient(center bottom, circle cover, #60516E 60%, #3B3346);
  background-image: radial-gradient(center bottom, circle cover, #60516E 60%, #3B3346);
  color: #fff; }
  .dark-container a {
    color: #F3A42D; }
    .dark-container a:hover {
      color: #f7802c; }

.homepage-container {
  position: relative;
  z-index: 1;
  background: #fff; }

#sheetmusic {
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 73px;
  width: calc(100% - 66px);
  height: auto; }
  @media (max-width: 768px) {
    #sheetmusic {
      bottom: 54px; } }

.sheetmusic-container {
  background: #fff;
  position: relative;
  padding: 0 33px;
  width: 100%;
  height: 500px; }

.browser-header {
  background: #F2EFF6;
  width: 100%;
  border-radius: 4px 4px 0 0; }

.browser-buttons {
  text-align: left;
  padding: 5px 10px 7px;
  list-style: none; }
  .browser-buttons li {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #aaa;
    margin: 0 2px; }

.controlbar {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0; }
  .controlbar section.speed-controls {
    padding-top: 12px; }
  .controlbar section.right {
    padding-bottom: 2px; }

.controlbar-center .centerbit.mid {
  padding-bottom: 14px; }
  @media (max-width: 768px) {
    .controlbar-center .centerbit.mid {
      padding-bottom: 0; } }

.controlbar-table section.right {
  text-align: center; }

#autoscrollon {
  bottom: 83px; }
  @media (max-width: 768px) {
    #autoscrollon {
      bottom: 64px; } }

.control-icon {
  display: inline-block;
  vertical-align: top;
  float: none;
  font-size: 16px; }
  .control-icon, .control-icon:hover {
    color: #F2EFF6; }

.view-demo {
  margin-top: -4px; }
  @media (max-width: 768px) {
    .view-demo {
      margin-top: 0; } }

.partner-link:hover {
  opacity: .6; }
