  /* -----------------------------------------
     Animate.less 
     ----------------------------------------- */
     .animated {
      -webkit-animation-duration: 1s;
      animation-duration: 1s;
      -webkit-animation-fill-mode: both;
      animation-fill-mode: both;
    }
    .animated.infinite {
      -webkit-animation-iteration-count: infinite;
      animation-iteration-count: infinite;
    }
    .animated.hinge {
      -webkit-animation-duration: 2s;
      animation-duration: 2s;
    }
    @-webkit-keyframes bounce {
      0%,
      20%,
      53%,
      80%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
      40%,
      43% {
        transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
      }
      70% {
        transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
      }
    }
    @keyframes bounce {
      0%,
      20%,
      53%,
      80%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
      40%,
      43% {
        transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
      }
      70% {
        transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
      }
    }
    .bounce {
      -webkit-animation-name: bounce;
      animation-name: bounce;
      -webkit-transform-origin: center bottom;
      -ms-transform-origin: center bottom;
      transform-origin: center bottom;
    }
    @-webkit-keyframes flash {
      0%,
      50%,
      100% {
        opacity: 1;
      }
      25%,
      75% {
        opacity: 0;
      }
    }
    @keyframes flash {
      0%,
      50%,
      100% {
        opacity: 1;
      }
      25%,
      75% {
        opacity: 0;
      }
    }
    .flash {
      -webkit-animation-name: flash;
      animation-name: flash;
    }
    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes pulse {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    @keyframes pulse {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    .pulse {
      -webkit-animation-name: pulse;
      animation-name: pulse;
    }
    @-webkit-keyframes rubberBand {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
      }
      40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
      }
      50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
      }
      65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
      }
      75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    @keyframes rubberBand {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
      }
      40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
      }
      50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
      }
      65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
      }
      75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    .rubberBand {
      -webkit-animation-name: rubberBand;
      animation-name: rubberBand;
    }
    @-webkit-keyframes shake {
      0%,
      100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
      10%,
      30%,
      50%,
      70%,
      90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
      }
      20%,
      40%,
      60%,
      80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
      }
    }
    @keyframes shake {
      0%,
      100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
      10%,
      30%,
      50%,
      70%,
      90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
      }
      20%,
      40%,
      60%,
      80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
      }
    }
    .shake {
      -webkit-animation-name: shake;
      animation-name: shake;
    }
    @-webkit-keyframes swing {
      20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg);
      }
      40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg);
      }
      60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg);
      }
      80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg);
      }
      100% {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg);
      }
    }
    @keyframes swing {
      20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg);
      }
      40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg);
      }
      60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg);
      }
      80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg);
      }
      100% {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg);
      }
    }
    .swing {
      -webkit-transform-origin: top center;
      -ms-transform-origin: top center;
      transform-origin: top center;
      -webkit-animation-name: swing;
      animation-name: swing;
    }
    @-webkit-keyframes tada {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      10%,
      20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
      }
      30%,
      50%,
      70%,
      90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
      }
      40%,
      60%,
      80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    @keyframes tada {
      0% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
      10%,
      20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
      }
      30%,
      50%,
      70%,
      90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
      }
      40%,
      60%,
      80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
      }
      100% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    .tada {
      -webkit-animation-name: tada;
      animation-name: tada;
    }
    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes wobble {
      0% {
        -webkit-transform: none;
        transform: none;
      }
      15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
      }
      30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
      }
      45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
      }
      60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
      }
      75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes wobble {
      0% {
        -webkit-transform: none;
        transform: none;
      }
      15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
      }
      30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
      }
      45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
      }
      60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
      }
      75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    .wobble {
      -webkit-animation-name: wobble;
      animation-name: wobble;
    }
    @-webkit-keyframes bounceIn {
      0%,
      20%,
      40%,
      60%,
      80%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
      }
      40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
      }
      80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
      }
      100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    @keyframes bounceIn {
      0%,
      20%,
      40%,
      60%,
      80%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
      }
      40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
      }
      80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
      }
      100% {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
      }
    }
    .bounceIn {
      -webkit-animation-name: bounceIn;
      animation-name: bounceIn;
      -webkit-animation-duration: .75s;
      animation-duration: .75s;
    }
    @-webkit-keyframes bounceInDown {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
      }
      75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes bounceInDown {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0);
        transform: translate3d(0, -3000px, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0);
        transform: translate3d(0, 25px, 0);
      }
      75% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, 5px, 0);
        transform: translate3d(0, 5px, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    .bounceInDown {
      -webkit-animation-name: bounceInDown;
      animation-name: bounceInDown;
    }
    @-webkit-keyframes bounceInLeft {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0);
      }
      75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
      }
      90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes bounceInLeft {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0);
        transform: translate3d(-3000px, 0, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0);
        transform: translate3d(25px, 0, 0);
      }
      75% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
      }
      90% {
        -webkit-transform: translate3d(5px, 0, 0);
        transform: translate3d(5px, 0, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    .bounceInLeft {
      -webkit-animation-name: bounceInLeft;
      animation-name: bounceInLeft;
    }
    @-webkit-keyframes bounceInRight {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0);
      }
      75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
      }
      90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes bounceInRight {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0);
        transform: translate3d(3000px, 0, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0);
        transform: translate3d(-25px, 0, 0);
      }
      75% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
      }
      90% {
        -webkit-transform: translate3d(-5px, 0, 0);
        transform: translate3d(-5px, 0, 0);
      }
      100% {
        -webkit-transform: none;
        transform: none;
      }
    }
    .bounceInRight {
      -webkit-animation-name: bounceInRight;
      animation-name: bounceInRight;
    }
    @-webkit-keyframes bounceInUp {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
      }
      75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
      }
      100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
    }
    @keyframes bounceInUp {
      0%,
      60%,
      75%,
      90%,
      100% {
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      }
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0);
        transform: translate3d(0, 3000px, 0);
      }
      60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
      }
      75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
      }
      90% {
        -webkit-transform: translate3d(0, -5px, 0);
        transform: translate3d(0, -5px, 0);
      }
      100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
      }
    }
    .bounceInUp {
      -webkit-animation-name: bounceInUp;
      animation-name: bounceInUp;
    }
    @-webkit-keyframes bounceOut {
      20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
      }
      50%,
      55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
    }
    @keyframes bounceOut {
      20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
      }
      50%,
      55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
    }
    .bounceOut {
      -webkit-animation-name: bounceOut;
      animation-name: bounceOut;
      -webkit-animation-duration: .75s;
      animation-duration: .75s;
    }
    @-webkit-keyframes bounceOutDown {
      20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
      }
      40%,
      45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
    }
    @keyframes bounceOutDown {
      20% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
      }
      40%,
      45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
    }
    .bounceOutDown {
      -webkit-animation-name: bounceOutDown;
      animation-name: bounceOutDown;
    }
    @-webkit-keyframes bounceOutLeft {
      20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
    }
    @keyframes bounceOutLeft {
      20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0);
        transform: translate3d(20px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
    }
    .bounceOutLeft {
      -webkit-animation-name: bounceOutLeft;
      animation-name: bounceOutLeft;
    }
    @-webkit-keyframes bounceOutRight {
      20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
    }
    @keyframes bounceOutRight {
      20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0);
        transform: translate3d(-20px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
    }
    .bounceOutRight {
      -webkit-animation-name: bounceOutRight;
      animation-name: bounceOutRight;
    }
    @-webkit-keyframes bounceOutUp {
      20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
      }
      40%,
      45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
    }
    @keyframes bounceOutUp {
      20% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
      }
      40%,
      45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
    }
    .bounceOutUp {
      -webkit-animation-name: bounceOutUp;
      animation-name: bounceOutUp;
    }
    @-webkit-keyframes fadeIn {
      0% {
        opacity: 0;
      }
      100% {
        opacity: 1;
      }
    }
    @keyframes fadeIn {
      0% {
        opacity: 0;
      }
      100% {
        opacity: 1;
      }
    }
    .fadeIn {
      -webkit-animation-name: fadeIn;
      animation-name: fadeIn;
    }
    @-webkit-keyframes fadeInDown {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInDown {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInDown {
      -webkit-animation-name: fadeInDown;
      animation-name: fadeInDown;
    }
    @-webkit-keyframes fadeInDownBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInDownBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInDownBig {
      -webkit-animation-name: fadeInDownBig;
      animation-name: fadeInDownBig;
    }
    @-webkit-keyframes fadeInLeft {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInLeft {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInLeft {
      -webkit-animation-name: fadeInLeft;
      animation-name: fadeInLeft;
    }
    @-webkit-keyframes fadeInLeftBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInLeftBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInLeftBig {
      -webkit-animation-name: fadeInLeftBig;
      animation-name: fadeInLeftBig;
    }
    @-webkit-keyframes fadeInRight {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInRight {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInRight {
      -webkit-animation-name: fadeInRight;
      animation-name: fadeInRight;
    }
    @-webkit-keyframes fadeInRightBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInRightBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInRightBig {
      -webkit-animation-name: fadeInRightBig;
      animation-name: fadeInRightBig;
    }
    @-webkit-keyframes fadeInUp {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInUp {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInUp {
      -webkit-animation-name: fadeInUp;
      animation-name: fadeInUp;
    }
    @-webkit-keyframes fadeInUpBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes fadeInUpBig {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .fadeInUpBig {
      -webkit-animation-name: fadeInUpBig;
      animation-name: fadeInUpBig;
    }
    @-webkit-keyframes fadeOut {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
      }
    }
    @keyframes fadeOut {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
      }
    }
    .fadeOut {
      -webkit-animation-name: fadeOut;
      animation-name: fadeOut;
    }
    @-webkit-keyframes fadeOutDown {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
      }
    }
    @keyframes fadeOutDown {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
      }
    }
    .fadeOutDown {
      -webkit-animation-name: fadeOutDown;
      animation-name: fadeOutDown;
    }
    @-webkit-keyframes fadeOutDownBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
    }
    @keyframes fadeOutDownBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
      }
    }
    .fadeOutDownBig {
      -webkit-animation-name: fadeOutDownBig;
      animation-name: fadeOutDownBig;
    }
    @-webkit-keyframes fadeOutLeft {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
      }
    }
    @keyframes fadeOutLeft {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
      }
    }
    .fadeOutLeft {
      -webkit-animation-name: fadeOutLeft;
      animation-name: fadeOutLeft;
    }
    @-webkit-keyframes fadeOutLeftBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
    }
    @keyframes fadeOutLeftBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
      }
    }
    .fadeOutLeftBig {
      -webkit-animation-name: fadeOutLeftBig;
      animation-name: fadeOutLeftBig;
    }
    @-webkit-keyframes fadeOutRight {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
      }
    }
    @keyframes fadeOutRight {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
      }
    }
    .fadeOutRight {
      -webkit-animation-name: fadeOutRight;
      animation-name: fadeOutRight;
    }
    @-webkit-keyframes fadeOutRightBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
    }
    @keyframes fadeOutRightBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
      }
    }
    .fadeOutRightBig {
      -webkit-animation-name: fadeOutRightBig;
      animation-name: fadeOutRightBig;
    }
    @-webkit-keyframes fadeOutUp {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
      }
    }
    @keyframes fadeOutUp {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
      }
    }
    .fadeOutUp {
      -webkit-animation-name: fadeOutUp;
      animation-name: fadeOutUp;
    }
    @-webkit-keyframes fadeOutUpBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
    }
    @keyframes fadeOutUpBig {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
      }
    }
    .fadeOutUpBig {
      -webkit-animation-name: fadeOutUpBig;
      animation-name: fadeOutUpBig;
    }
    @-webkit-keyframes flip {
      0% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
      }
      40% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
      }
      50% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
      80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
    }
    @keyframes flip {
      0% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
      }
      40% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
      }
      50% {
        -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
      80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
      }
    }
    .animated.flip {
      -webkit-backface-visibility: visible;
      backface-visibility: visible;
      -webkit-animation-name: flip;
      animation-name: flip;
    }
    @-webkit-keyframes flipInX {
      0% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0;
      }
      40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transition-timing-function: ease-in;
      }
      60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
    }
    @keyframes flipInX {
      0% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0;
      }
      40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transition-timing-function: ease-in;
      }
      60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
    }
    .flipInX {
      -webkit-backface-visibility: visible !important;
      backface-visibility: visible !important;
      -webkit-animation-name: flipInX;
      animation-name: flipInX;
    }
    @-webkit-keyframes flipInY {
      0% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0;
      }
      40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transition-timing-function: ease-in;
      }
      60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
    }
    @keyframes flipInY {
      0% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transition-timing-function: ease-in;
        opacity: 0;
      }
      40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transition-timing-function: ease-in;
      }
      60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
      }
      100% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
    }
    .flipInY {
      -webkit-backface-visibility: visible !important;
      backface-visibility: visible !important;
      -webkit-animation-name: flipInY;
      animation-name: flipInY;
    }
    @-webkit-keyframes flipOutX {
      0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
      30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0;
      }
    }
    @keyframes flipOutX {
      0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
      30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0;
      }
    }
    .flipOutX {
      -webkit-animation-name: flipOutX;
      animation-name: flipOutX;
      -webkit-animation-duration: .75s;
      animation-duration: .75s;
      -webkit-backface-visibility: visible !important;
      backface-visibility: visible !important;
    }
    @-webkit-keyframes flipOutY {
      0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
      30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0;
      }
    }
    @keyframes flipOutY {
      0% {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
      }
      30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0;
      }
    }
    .flipOutY {
      -webkit-backface-visibility: visible !important;
      backface-visibility: visible !important;
      -webkit-animation-name: flipOutY;
      animation-name: flipOutY;
      -webkit-animation-duration: .75s;
      animation-duration: .75s;
    }
    @-webkit-keyframes lightSpeedIn {
      0% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
      }
      60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes lightSpeedIn {
      0% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
      }
      60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1;
      }
      80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
        opacity: 1;
      }
      100% {
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .lightSpeedIn {
      -webkit-animation-name: lightSpeedIn;
      animation-name: lightSpeedIn;
      -webkit-animation-timing-function: ease-out;
      animation-timing-function: ease-out;
    }
    @-webkit-keyframes lightSpeedOut {
      0% {
        opacity: 1;
      }
      100% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
      }
    }
    @keyframes lightSpeedOut {
      0% {
        opacity: 1;
      }
      100% {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
      }
    }
    .lightSpeedOut {
      -webkit-animation-name: lightSpeedOut;
      animation-name: lightSpeedOut;
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
    }
    @-webkit-keyframes rotateIn {
      0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes rotateIn {
      0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .rotateIn {
      -webkit-animation-name: rotateIn;
      animation-name: rotateIn;
    }
    @-webkit-keyframes rotateInDownLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes rotateInDownLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .rotateInDownLeft {
      -webkit-animation-name: rotateInDownLeft;
      animation-name: rotateInDownLeft;
    }
    @-webkit-keyframes rotateInDownRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes rotateInDownRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .rotateInDownRight {
      -webkit-animation-name: rotateInDownRight;
      animation-name: rotateInDownRight;
    }
    @-webkit-keyframes rotateInUpLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes rotateInUpLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .rotateInUpLeft {
      -webkit-animation-name: rotateInUpLeft;
      animation-name: rotateInUpLeft;
    }
    @-webkit-keyframes rotateInUpRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    @keyframes rotateInUpRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: none;
        transform: none;
        opacity: 1;
      }
    }
    .rotateInUpRight {
      -webkit-animation-name: rotateInUpRight;
      animation-name: rotateInUpRight;
    }
    @-webkit-keyframes rotateOut {
      0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0;
      }
    }
    @keyframes rotateOut {
      0% {
        -webkit-transform-origin: center;
        transform-origin: center;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: center;
        transform-origin: center;
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0;
      }
    }
    .rotateOut {
      -webkit-animation-name: rotateOut;
      animation-name: rotateOut;
    }
    @-webkit-keyframes rotateOutDownLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
    }
    @keyframes rotateOutDownLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
      }
    }
    .rotateOutDownLeft {
      -webkit-animation-name: rotateOutDownLeft;
      animation-name: rotateOutDownLeft;
    }
    @-webkit-keyframes rotateOutDownRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
    }
    @keyframes rotateOutDownRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
    }
    .rotateOutDownRight {
      -webkit-animation-name: rotateOutDownRight;
      animation-name: rotateOutDownRight;
    }
    @-webkit-keyframes rotateOutUpLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
    }
    @keyframes rotateOutUpLeft {
      0% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: left bottom;
        transform-origin: left bottom;
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
      }
    }
    .rotateOutUpLeft {
      -webkit-animation-name: rotateOutUpLeft;
      animation-name: rotateOutUpLeft;
    }
    @-webkit-keyframes rotateOutUpRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0;
      }
    }
    @keyframes rotateOutUpRight {
      0% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        opacity: 1;
      }
      100% {
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0;
      }
    }
    .rotateOutUpRight {
      -webkit-animation-name: rotateOutUpRight;
      animation-name: rotateOutUpRight;
    }
    @-webkit-keyframes hinge {
      0% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
      }
      20%,
      60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
      }
      40%,
      80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
      }
      100% {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
      }
    }
    @keyframes hinge {
      0% {
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
      }
      20%,
      60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
      }
      40%,
      80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-transform-origin: top left;
        transform-origin: top left;
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
      }
      100% {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
      }
    }
    .hinge {
      -webkit-animation-name: hinge;
      animation-name: hinge;
    }
    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes rollIn {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    @keyframes rollIn {
      0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
      }
      100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
      }
    }
    .rollIn {
      -webkit-animation-name: rollIn;
      animation-name: rollIn;
    }
    /* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
    @-webkit-keyframes rollOut {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
      }
    }
    @keyframes rollOut {
      0% {
        opacity: 1;
      }
      100% {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
      }
    }
    .rollOut {
      -webkit-animation-name: rollOut;
      animation-name: rollOut;
    }
    @-webkit-keyframes zoomIn {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      50% {
        opacity: 1;
      }
    }
    @keyframes zoomIn {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      50% {
        opacity: 1;
      }
    }
    .zoomIn {
      -webkit-animation-name: zoomIn;
      animation-name: zoomIn;
    }
    @-webkit-keyframes zoomInDown {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomInDown {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomInDown {
      -webkit-animation-name: zoomInDown;
      animation-name: zoomInDown;
    }
    @-webkit-keyframes zoomInLeft {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomInLeft {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomInLeft {
      -webkit-animation-name: zoomInLeft;
      animation-name: zoomInLeft;
    }
    @-webkit-keyframes zoomInRight {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomInRight {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomInRight {
      -webkit-animation-name: zoomInRight;
      animation-name: zoomInRight;
    }
    @-webkit-keyframes zoomInUp {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomInUp {
      0% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomInUp {
      -webkit-animation-name: zoomInUp;
      animation-name: zoomInUp;
    }
    @-webkit-keyframes zoomOut {
      0% {
        opacity: 1;
      }
      50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      100% {
        opacity: 0;
      }
    }
    @keyframes zoomOut {
      0% {
        opacity: 1;
      }
      50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
      }
      100% {
        opacity: 0;
      }
    }
    .zoomOut {
      -webkit-animation-name: zoomOut;
      animation-name: zoomOut;
    }
    @-webkit-keyframes zoomOutDown {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomOutDown {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomOutDown {
      -webkit-animation-name: zoomOutDown;
      animation-name: zoomOutDown;
    }
    @-webkit-keyframes zoomOutLeft {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
      }
    }
    @keyframes zoomOutLeft {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
        -webkit-transform-origin: left center;
        transform-origin: left center;
      }
    }
    .zoomOutLeft {
      -webkit-animation-name: zoomOutLeft;
      animation-name: zoomOutLeft;
    }
    @-webkit-keyframes zoomOutRight {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
      }
    }
    @keyframes zoomOutRight {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
        -webkit-transform-origin: right center;
        transform-origin: right center;
      }
    }
    .zoomOutRight {
      -webkit-animation-name: zoomOutRight;
      animation-name: zoomOutRight;
    }
    @-webkit-keyframes zoomOutUp {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    @keyframes zoomOutUp {
      40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
      }
      100% {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
      }
    }
    .zoomOutUp {
      -webkit-animation-name: zoomOutUp;
      animation-name: zoomOutUp;
    }
    @-webkit-keyframes slideInDown {
      0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
    }
    @keyframes slideInDown {
      0% {
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
    }
    .slideInDown {
      -webkit-animation-name: slideInDown;
      animation-name: slideInDown;
    }
    @-webkit-keyframes slideInLeft {
      0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
    }
    @keyframes slideInLeft {
      0% {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
    }
    .slideInLeft {
      -webkit-animation-name: slideInLeft;
      animation-name: slideInLeft;
    }
    @-webkit-keyframes slideInRight {
      0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
    }
    @keyframes slideInRight {
      0% {
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
    }
    .slideInRight {
      -webkit-animation-name: slideInRight;
      animation-name: slideInRight;
    }
    @-webkit-keyframes slideInUp {
      0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
    }
    @keyframes slideInUp {
      0% {
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
        visibility: visible;
      }
      100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
    }
    .slideInUp {
      -webkit-animation-name: slideInUp;
      animation-name: slideInUp;
    }
    @-webkit-keyframes slideOutDown {
      0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
      }
    }
    @keyframes slideOutDown {
      0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateY(100%);
        transform: translateY(100%);
      }
    }
    .slideOutDown {
      -webkit-animation-name: slideOutDown;
      animation-name: slideOutDown;
    }
    @-webkit-keyframes slideOutLeft {
      0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
      }
    }
    @keyframes slideOutLeft {
      0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
      }
    }
    .slideOutLeft {
      -webkit-animation-name: slideOutLeft;
      animation-name: slideOutLeft;
    }
    @-webkit-keyframes slideOutRight {
      0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
      }
    }
    @keyframes slideOutRight {
      0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
      }
    }
    .slideOutRight {
      -webkit-animation-name: slideOutRight;
      animation-name: slideOutRight;
    }
    @-webkit-keyframes slideOutUp {
      0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
      }
    }
    @keyframes slideOutUp {
      0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
      }
      100% {
        visibility: hidden;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
      }
    }
    .slideOutUp {
      -webkit-animation-name: slideOutUp;
      animation-name: slideOutUp;
    }
  /* -----------------------------------------
     C3 charts styles
     ----------------------------------------- */
     .c3 svg {
      font: 10px "Open Sans", "Times New Roman", Times, serif;
    }
    .c3 path,
    .c3 line {
      fill: none;
      stroke: #000;
    }
    .c3 text {
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    .c3 .c3-legend-item-tile path,
    .c3 .c3-xgrid-focus path,
    .c3 .c3-ygrid path,
    .c3 .c3-event-rect path,
    .c3 .c3-bars path {
      shape-rendering: crispEdges;
    }
    .c3 .c3-chart-arc path {
      stroke: #fff;
    }
    .c3 .c3-chart-arc text {
      fill: #fff;
      font-size: 13px;
    }
    .c3 .c3-xgrid,
    .c3 .c3-ygrid {
      stroke-dasharray: 3 3;
    }
    .c3 .c3-text.c3-empty {
      font-size: 2em;
    }
    .c3 .c3-line {
      stroke-width: 2px;
    }
    .c3 .c3-circle {
      stroke-width: 2px;
      stroke: white;
      fill: white;
    }
    .c3 .c3-selected-circle {
      fill: white;
      stroke-width: 2px;
    }
    .c3 .c3-bar {
      stroke-width: 0;
    }
    .c3 .c3-bar._expanded_ {
      fill-opacity: 0.75;
    }
    .c3 .c3-target .c3-focused {
      opacity: 1;
    }
    .c3 .c3-target .c3-defocused {
      opacity: 0.3 !important;
    }
    .c3 .c3-target.c3-focused path.c3-line,
    .c3 .c3-target.c3-focused path.c3-step {
      stroke-width: 2px;
    }
    .c3 .c3-region {
      fill: steelblue;
      fill-opacity: 0.1;
    }
    .c3 .c3-brush .extent {
      fill-opacity: 0.1;
    }
    .c3 .c3-legend-item {
      font-size: 12px;
    }
    .c3 .c3-legend-item-hidden {
      opacity: 0.15;
    }
    .c3 .c3-legend-background {
      opacity: 0.75;
      fill: white;
      stroke: lightgray;
      stroke-width: 1;
    }
    .c3 .c3-title {
      fon: 14px "Montserrat", Helvetica, Arial, sans-serif;
    }
    .c3 .c3-tooltip-container {
      z-index: 10;
    }
    .c3 .c3-tooltip {
      border-collapse: collapse;
      border-spacing: 0;
      empty-cells: show;
      opacity: 0.9;
    }
    .c3 .c3-tooltip tr {
      border: 1px solid;
    }
    .c3 .c3-tooltip th {
      font-size: 14px;
      padding: 2px 5px;
      text-align: left;
    }
    .c3 .c3-tooltip td {
      font-size: 13px;
      padding: 3px 6px;
      border-left: 1px dotted;
    }
    .c3-tooltip td > span {
      display: inline-block;
      width: 10px;
      height: 10px;
      margin-right: 6px;
    }
    .c3-tooltip td.value {
      text-align: right;
    }
    /*-- Area --*/
    .c3-area {
      stroke-width: 0;
      opacity: 0.2;
    }
    /*-- Arc --*/
    .c3-chart-arcs-title {
      dominant-baseline: middle;
      font-size: 1.3em;
    }
    .c3-chart-arcs .c3-chart-arcs-background {
      fill: #e0e0e0;
      stroke: none;
    }
    .c3-chart-arcs .c3-chart-arcs-gauge-unit {
      fill: #000;
      font-size: 16px;
    }
    .c3-chart-arcs .c3-chart-arcs-gauge-max {
      fill: #777;
    }
    .c3-chart-arcs .c3-chart-arcs-gauge-min {
      fill: #777;
    }
    .c3-chart-arc .c3-gauge-value {
      fill: #000;
    }
  /* -----------------------------------------
     Circfull progress bars
     ----------------------------------------- */
     .circliful {
      position: relative;
      float: left;
      margin-right: 10px;
      margin-bottom: 10px;
    }
    .circliful .circle-text,
    .circliful .circle-info,
    .circliful .circle-text-half,
    .circliful .circle-info-half {
      width: 100%;
      position: absolute;
      text-align: center;
      display: inline-block;
      color: #080b0d;
      font-weight: bold;
    }
    .circliful .circle-text-half {
      top: 8px;
    }
    .circliful i {
      margin: 5px 3px 0 3px;
      position: relative;
    }
  /* -----------------------------------------
     Flot charts
     ----------------------------------------- */
     #flotTip {
      max-width: 150px;
      padding: 3px 8px;
      color: #ffffff;
      text-align: center;
      text-decoration: none;
      background-color: #455a64 !important;
      border-radius: 2px !important;
      border-width: 0 !important;
      z-index: 100;
      opacity: 0.9;
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      font-size: 13px !important;
    }
    .tickLabel {
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      font-size: 11px;
      text-align: center;
      font-weight: normal;
    }
  /* -----------------------------------------
     Morris charts
     ----------------------------------------- */
     .morris-hover {
      position: absolute;
      z-index: 1070;
    }
    .morris-hover.morris-default-style {
      border-radius: 2px;
      padding: 6px;
      color: #ffffff;
      background: #455a64;
      font-size: 12px;
      text-align: center;
      max-width: 150px;
      padding: 3px 8px;
    }
    .morris-hover.morris-default-style .morris-hover-row-label {
      font-weight: bold;
      margin: 0.25em 0;
    }
    .morris-hover.morris-default-style .morris-hover-point {
      white-space: nowrap;
      margin: 0.1em 0;
      color: #ffffff !important;
    }
  /* -----------------------------------------
     Easy pie charts
     ----------------------------------------- */
     .easyPieChart {
      position: relative;
      text-align: center;
    }
    .easyPieChart canvas {
      position: absolute;
      top: 0;
      left: 0;
    }
    .pie-charts {
      display: inline-block;
      text-align: center;
      padding: 0 12px;
      margin-bottom: 20px;
    }
    .pie-charts .easyPieChart {
      font-weight: bold;
    }
    .pie-charts div.label {
      font-size: 100%;
      width: 100%;
      float: left;
      margin-top: 10px;
    }
    .pie-charts .pie-chart {
      position: relative;
    }
    .pie-charts .pie-chart canvas {
      position: absolute;
      left: 0;
      top: 0;
    }
  /* -----------------------------------------
     Sparklines
     ----------------------------------------- */
     .jqstooltip {
      box-sizing: content-box;
      border-color: #455a64 !important;
      -webkit-opacity: 0.8;
      -khtml-opacity: 0.8;
      -moz-opacity: 0.8;
      opacity: 0.8;
      -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
      filter: alpha(opacity=80);
      font-size: 12px;
      font-weight: bold;
      border-radius: 2px !important;
      background: #455a64;
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      width: auto !important;
      height: auto !important;
    }
    .sparkline {
      width: 100%;
      display: inline-block;
      margin-bottom: 5px;
    }
  /* -----------------------------------------
     Duallistbox
     ----------------------------------------- */
     .bootstrap-duallistbox-container .buttons {
      width: 100%;
      margin-bottom: 7px;
    }
    .bootstrap-duallistbox-container .box1 .filtered .clear1 {
      display: inline-block;
    }
    .bootstrap-duallistbox-container .box2 .filtered .clear2 {
      display: inline-block;
    }
    .bootstrap-duallistbox-container label {
      display: block;
    }
    .bootstrap-duallistbox-container .info {
      display: inline-block;
      margin-bottom: 5px;
      font-size: 11px;
    }
    .bootstrap-duallistbox-container .clear1,
    .bootstrap-duallistbox-container .clear2 {
      display: none;
      font-size: 10px;
    }
    .bootstrap-duallistbox-container .move,
    .bootstrap-duallistbox-container .remove {
      width: 60%;
    }
    .bootstrap-duallistbox-container .btn-group .btn {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    .bootstrap-duallistbox-container select {
      border-top-left-radius: 0;
      border-top-right-radius: 0;
      border-bottom-left-radius: 2px;
      border-bottom-right-radius: 2px;
      width: 100%;
      height: 300px;
      padding: 0;
      border-width: 1px;
      transition: border-color 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .bootstrap-duallistbox-container .moveall,
    .bootstrap-duallistbox-container .removeall {
      width: 40%;
    }
    .bootstrap-duallistbox-container .filter {
      height: 42px;
      margin: 0 0 5px 0;
      box-sizing: border-box;
      display: block;
      width: 100%;
      padding: 6px 12px;
      font-size: 13px;
      line-height: 1.42857143;
      border: 1px solid;
      border-radius: 2px;
      transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
      transition: all border-color ease-in-out .15s, box-shadow ease-in-out .15s ease-out;
    }
    .bootstrap-duallistbox-container .moveonselect .move,
    .bootstrap-duallistbox-container .moveonselect .remove {
      display: none;
    }
    .bootstrap-duallistbox-container .moveonselect .moveall,
    .bootstrap-duallistbox-container .moveonselect .removeall {
      width: 100%;
    }
  /* -----------------------------------------
     Fancy select
     ----------------------------------------- */
     div.fancy-select {
      position: relative;
      width: 100%;
    }
    div.fancy-select.disabled {
      opacity: 0.5;
    }
    div.fancy-select select:focus + div.trigger.open {
      box-shadow: none;
    }
    div.fancy-select div.trigger {
      border-radius: 2px;
      cursor: pointer;
      padding: 6px 12px;
      white-space: nowrap;
      text-overflow: ellipsis;
      position: relative;
      /*border: 1px solid;*/      border-bottom: 1px solid #e8e8e8;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    div.fancy-select div.trigger:after {
      content: "";
      display: block;
      position: absolute;
      width: 0;
      height: 0;
      border: 5px solid transparent;
      top: 15px;
      right: 14px;
    }
    div.fancy-select div.trigger.open {
      border: 1px solid;
      box-shadow: none;
    }
    div.fancy-select ul.options {
      list-style: none;
      margin: 0;
      padding: 0;
      position: absolute;
      top: 30px;
      left: 0;
      visibility: hidden;
      opacity: 0;
      z-index: 50;
      max-height: 200px;
      overflow: auto;
      border-radius: 2px;
      border: 1px solid;
      min-width: 200px;
      width: 100%;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.175);
      transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out;
      -webkit-transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out;
      -moz-transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out;
      -ms-transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out;
      -o-transition: opacity 300ms ease-out, top 300ms ease-out, visibility 300ms ease-out;
    }
    div.fancy-select ul.options.open {
      visibility: visible;
      top: 32px;
      opacity: 1;
      /* have to use a non-visibility transition to prevent this iOS issue (bug?): */
      /*http://stackoverflow.com/questions/10736478/css-animation-visibility-visible-works-on-chrome-and-safari-but-not-on-ios*/
      transition: opacity 300ms ease-out, top 300ms ease-out;
      -webkit-transition: opacity 300ms ease-out, top 300ms ease-out;
      -moz-transition: opacity 300ms ease-out, top 300ms ease-out;
      -ms-transition: opacity 300ms ease-out, top 300ms ease-out;
      -o-transition: opacity 300ms ease-out, top 300ms ease-out;
      border-bottom: 1px solid #c4c7ca;
    }
    div.fancy-select ul.options.overflowing {
      top: auto;
      bottom: 36px;
      transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out;
      -webkit-transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out;
      -moz-transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out;
      -ms-transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out;
      -o-transition: opacity 300ms ease-out, bottom 300ms ease-out, visibility 300ms ease-out;
    }
    div.fancy-select ul.options.overflowing.open {
      top: auto;
      bottom: 36px;
      transition: opacity 300ms ease-out, bottom 300ms ease-out;
      -webkit-transition: opacity 300ms ease-out, bottom 300ms ease-out;
      -moz-transition: opacity 300ms ease-out, bottom 300ms ease-out;
      -ms-transition: opacity 300ms ease-out, bottom 300ms ease-out;
      -o-transition: opacity 300ms ease-out, bottom 300ms ease-out;
    }
    div.fancy-select ul.options li {
      padding: 7px 12px;
      cursor: pointer;
      white-space: nowrap;
      transition: all 150ms ease-out;
      -webkit-transition: all 150ms ease-out;
      -moz-transition: all 150ms ease-out;
      -ms-transition: all 150ms ease-out;
      -o-transition: all 150ms ease-out;
    }
    div.fancy-select ul.options li i {
      margin-top: 2px;
      margin-right: 5px;
    }
  /* -----------------------------------------
     Select2
     ----------------------------------------- */
     .select2-container {
      box-sizing: border-box;
      display: inline-block;
      margin: 0;
      position: relative;
      vertical-align: middle;
    }
    .select2-container .select2-selection--single {
      box-sizing: border-box;
      cursor: pointer;
      display: block;
      height: 28px;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-select: none;
    }
    .select2-container .select2-selection--single .select2-selection__rendered {
      display: block;
      padding-left: 8px;
      padding-right: 20px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
      padding-right: 8px;
      padding-left: 20px;
    }
    .select2-container .select2-selection--multiple {
      box-sizing: border-box;
      cursor: pointer;
      display: block;
      min-height: 32px;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-select: none;
    }
    .select2-container .select2-selection--multiple .select2-selection__rendered {
      display: inline-block;
      overflow: hidden;
      padding-left: 8px;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .select2-container .select2-search--inline {
      float: left;
    }
    .select2-container .select2-search--inline .select2-search__field {
      box-sizing: border-box;
      border: none;
      font-size: 100%;
      margin-top: 5px;
    }
    .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
      -webkit-appearance: none;
    }
    .select2-dropdown {
      background-color: white;
      border: 1px solid #aaa;
      border-radius: 4px;
      box-sizing: border-box;
      display: block;
      position: absolute;
      left: -100000px;
      width: 100%;
      z-index: 1051;
    }
    .select2-results {
      display: block;
    }
    .select2-results__options {
      list-style: none;
      margin: 0;
      padding: 0;
    }
    .select2-results__option {
      padding: 6px;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      -webkit-user-select: none;
    }
    .select2-results__option[aria-selected] {
      cursor: pointer;
    }
    .select2-container--open .select2-dropdown {
      left: 0;
    }
    .select2-container--open .select2-dropdown--above {
      border-bottom: none;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    .select2-container--open .select2-dropdown--below {
      border-top: none;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }
    .select2-search--dropdown {
      display: block;
      padding: 4px;
    }
    .select2-search--dropdown .select2-search__field {
      padding: 4px;
      width: 100%;
      box-sizing: border-box;
    }
    .select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
      -webkit-appearance: none;
    }
    .select2-search--dropdown.select2-search--hide {
      display: none;
    }
    .select2-close-mask {
      border: 0;
      margin: 0;
      padding: 0;
      display: block;
      position: fixed;
      left: 0;
      top: 0;
      min-height: 100%;
      min-width: 100%;
      height: auto;
      width: auto;
      opacity: 0;
      z-index: 99;
      background-color: #fff;
      filter: alpha(opacity=0);
    }
    .select2-hidden-accessible {
      border: 0;
      clip: rect(0 0 0 0);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      position: absolute;
      width: 1px;
    }
    .select2-container--default .select2-selection--single {
      background-color: #fff;
      border: 1px solid #aaa;
      border-radius: 4px;
    }
    .select2-container--default .select2-selection--single .select2-selection__rendered {
      color: #444;
      line-height: 28px;
    }
    .select2-container--default .select2-selection--single .select2-selection__clear {
      cursor: pointer;
      float: right;
      font-weight: bold;
    }
    .select2-container--default .select2-selection--single .select2-selection__placeholder {
      color: #999;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow {
      height: 26px;
      position: absolute;
      top: 1px;
      right: 1px;
      width: 20px;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow b {
      border-color: #888 transparent transparent transparent;
      border-style: solid;
      border-width: 5px 4px 0 4px;
      height: 0;
      left: 50%;
      margin-left: -4px;
      margin-top: -2px;
      position: absolute;
      top: 50%;
      width: 0;
    }
    .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
      float: left;
    }
    .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
      left: 1px;
      right: auto;
    }
    .select2-container--default.select2-container--disabled .select2-selection--single {
      background-color: #eee;
      cursor: default;
    }
    .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
      display: none;
    }
    .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
      border-color: transparent transparent #888 transparent;
      border-width: 0 4px 5px 4px;
    }
    .select2-container--default .select2-selection--multiple {
      background-color: white;
      border: 1px solid #aaa;
      border-radius: 4px;
      cursor: text;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__rendered {
      box-sizing: border-box;
      list-style: none;
      margin: 0;
      padding: 0 5px;
      width: 100%;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__placeholder {
      color: #999;
      margin-top: 5px;
      float: left;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__clear {
      cursor: pointer;
      float: right;
      font-weight: bold;
      margin-top: 5px;
      margin-right: 10px;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__choice {
      background-color: #e4e4e4;
      border: 1px solid #aaa;
      border-radius: 4px;
      cursor: default;
      float: left;
      margin-right: 5px;
      margin-top: 5px;
      padding: 0 5px;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
      color: #999;
      cursor: pointer;
      display: inline-block;
      font-weight: bold;
      margin-right: 2px;
    }
    .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
      color: #333;
    }
    .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice,
    .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder {
      float: right;
    }
    .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
      margin-left: 5px;
      margin-right: auto;
    }
    .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
      margin-left: 2px;
      margin-right: auto;
    }
    .select2-container--default.select2-container--focus .select2-selection--multiple {
      border: solid black 1px;
      outline: 0;
    }
    .select2-container--default.select2-container--disabled .select2-selection--multiple {
      background-color: #eee;
      cursor: default;
    }
    .select2-container--default.select2-container--disabled .select2-selection__choice__remove {
      display: none;
    }
    .select2-container--default.select2-container--open.select2-container--above .select2-selection--single,
    .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }
    .select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
    .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    .select2-container--default .select2-search--dropdown .select2-search__field {
      border: 1px solid #aaa;
    }
    .select2-container--default .select2-search--inline .select2-search__field {
      background: transparent;
      border: none;
      outline: 0;
    }
    .select2-container--default .select2-results > .select2-results__options {
      max-height: 200px;
      overflow-y: auto;
    }
    .select2-container--default .select2-results__option[role=group] {
      padding: 0;
    }
    .select2-container--default .select2-results__option[aria-disabled=true] {
      color: #999;
    }
    .select2-container--default .select2-results__option[aria-selected=true] {
      background-color: #ddd;
    }
    .select2-container--default .select2-results__option .select2-results__option {
      padding-left: 1em;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__group {
      padding-left: 0;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -1em;
      padding-left: 2em;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -2em;
      padding-left: 3em;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -3em;
      padding-left: 4em;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -4em;
      padding-left: 5em;
    }
    .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
      margin-left: -5em;
      padding-left: 6em;
    }
    .select2-container--default .select2-results__option--highlighted[aria-selected] {
      background-color: #5897fb;
      color: white;
    }
    .select2-container--default .select2-results__group {
      cursor: default;
      display: block;
      padding: 6px;
    }
    .select2-container--classic .select2-selection--single {
      background-color: #f6f6f6;
      border: 1px solid #aaa;
      border-radius: 4px;
      outline: 0;
      background-image: linear-gradient(to bottom, #ffffff 50%, #eeeeee 100%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
    }
    .select2-container--classic .select2-selection--single:focus {
      border: 1px solid #5897fb;
    }
    .select2-container--classic .select2-selection--single .select2-selection__rendered {
      color: #444;
      line-height: 28px;
    }
    .select2-container--classic .select2-selection--single .select2-selection__clear {
      cursor: pointer;
      float: right;
      font-weight: bold;
      margin-right: 10px;
    }
    .select2-container--classic .select2-selection--single .select2-selection__placeholder {
      color: #999;
    }
    .select2-container--classic .select2-selection--single .select2-selection__arrow {
      background-color: #ddd;
      border: none;
      border-left: 1px solid #aaa;
      border-top-right-radius: 4px;
      border-bottom-right-radius: 4px;
      height: 26px;
      position: absolute;
      top: 1px;
      right: 1px;
      width: 20px;
      background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#cccccc', GradientType=0);
    }
    .select2-container--classic .select2-selection--single .select2-selection__arrow b {
      border-color: #888 transparent transparent transparent;
      border-style: solid;
      border-width: 5px 4px 0 4px;
      height: 0;
      left: 50%;
      margin-left: -4px;
      margin-top: -2px;
      position: absolute;
      top: 50%;
      width: 0;
    }
    .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
      float: left;
    }
    .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
      border: none;
      border-right: 1px solid #aaa;
      border-radius: 0;
      border-top-left-radius: 4px;
      border-bottom-left-radius: 4px;
      left: 1px;
      right: auto;
    }
    .select2-container--classic.select2-container--open .select2-selection--single {
      border: 1px solid #5897fb;
    }
    .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
      background: transparent;
      border: none;
    }
    .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
      border-color: transparent transparent #888 transparent;
      border-width: 0 4px 5px 4px;
    }
    .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
      border-top: none;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
      background-image: linear-gradient(to bottom, #ffffff 0%, #eeeeee 50%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0);
    }
    .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
      border-bottom: none;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
      background-image: linear-gradient(to bottom, #eeeeee 50%, #ffffff 100%);
      background-repeat: repeat-x;
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
    }
    .select2-container--classic .select2-selection--multiple {
      background-color: white;
      border: 1px solid #aaa;
      border-radius: 4px;
      cursor: text;
      outline: 0;
    }
    .select2-container--classic .select2-selection--multiple:focus {
      border: 1px solid #5897fb;
    }
    .select2-container--classic .select2-selection--multiple .select2-selection__rendered {
      list-style: none;
      margin: 0;
      padding: 0 5px;
    }
    .select2-container--classic .select2-selection--multiple .select2-selection__clear {
      display: none;
    }
    .select2-container--classic .select2-selection--multiple .select2-selection__choice {
      background-color: #e4e4e4;
      border: 1px solid #aaa;
      border-radius: 4px;
      cursor: default;
      float: left;
      margin-right: 5px;
      margin-top: 5px;
      padding: 0 5px;
    }
    .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
      color: #888;
      cursor: pointer;
      display: inline-block;
      font-weight: bold;
      margin-right: 2px;
    }
    .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
      color: #555;
    }
    .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
      float: right;
    }
    .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
      margin-left: 5px;
      margin-right: auto;
    }
    .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
      margin-left: 2px;
      margin-right: auto;
    }
    .select2-container--classic.select2-container--open .select2-selection--multiple {
      border: 1px solid #5897fb;
    }
    .select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
      border-top: none;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }
    .select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
      border-bottom: none;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    .select2-container--classic .select2-search--dropdown .select2-search__field {
      border: 1px solid #aaa;
      outline: 0;
    }
    .select2-container--classic .select2-search--inline .select2-search__field {
      outline: 0;
    }
    .select2-container--classic .select2-dropdown {
      background-color: white;
      border: 1px solid transparent;
    }
    .select2-container--classic .select2-dropdown--above {
      border-bottom: none;
    }
    .select2-container--classic .select2-dropdown--below {
      border-top: none;
    }
    .select2-container--classic .select2-results > .select2-results__options {
      max-height: 200px;
      overflow-y: auto;
    }
    .select2-container--classic .select2-results__option[role=group] {
      padding: 0;
    }
    .select2-container--classic .select2-results__option[aria-disabled=true] {
      color: grey;
    }
    .select2-container--classic .select2-results__option--highlighted[aria-selected] {
      background-color: #3875d7;
      color: white;
    }
    .select2-container--classic .select2-results__group {
      cursor: default;
      display: block;
      padding: 6px;
    }
    .select2-container--classic.select2-container--open .select2-dropdown {
      border-color: #5897fb;
    }
  /* -----------------------------------------
      Select 2 bootstrap theme
      ----------------------------------------- */
      .select2-container--bootstrap {
        display: block;
        width: 100% !important;
      }
      .select2-container--bootstrap .select2-selection {
        background-color: #ffffff;
        border: 1px solid #b2c0c6;
        border-radius: 2px;
        color: #080b0d;
        font-family: FranklinGothicWebBook, Arial, sans-serif;
        font-size: 13px;
        outline: 0;
      }
      .select2-container--bootstrap .select2-search--dropdown .select2-search__field {
        background-color: #ffffff;
        border: 1px solid #b2c0c6;
        border-radius: 2px;
        color: #080b0d;
        font-family: FranklinGothicWebBook, Arial, sans-serif;
        font-size: 13px;
      }
      .select2-container--bootstrap .select2-search__field {
        outline: 0;
      }
      .select2-container--bootstrap .select2-search__field::-webkit-input-placeholder {
        color: #607d8b;
      }
      .select2-container--bootstrap .select2-search__field:-moz-placeholder {
        color: #607d8b;
      }
      .select2-container--bootstrap .select2-search__field::-moz-placeholder {
        color: #607d8b;
        opacity: 1;
      }
      .select2-container--bootstrap .select2-search__field:-ms-input-placeholder {
        color: #607d8b;
      }
      .select2-container--bootstrap .select2-results__option[role=group] {
        padding: 0;
      }
      .select2-container--bootstrap .select2-results__option[aria-disabled=true] {
        color: #cfd8dc;
        cursor: not-allowed;
      }
      .select2-container--bootstrap .select2-results__option[aria-selected=true] {
        background-color: #f5f5f5;
        color: #3b4c55;
      }
      .select2-container--bootstrap .select2-results__option--highlighted[aria-selected] {
        background-color: #337ab7;
        color: #ffffff;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option {
        padding: 6px 12px;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__group {
        padding-left: 0;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -12px;
        padding-left: 24px;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -24px;
        padding-left: 36px;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -36px;
        padding-left: 48px;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -48px;
        padding-left: 60px;
      }
      .select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
        margin-left: -60px;
        padding-left: 72px;
      }
      .select2-container--bootstrap .select2-results__group {
        color: #607d8b;
        display: block;
        padding: 6px 12px;
        font-size: 12px;
        line-height: 1.42857143;
        white-space: nowrap;
      }
      .select2-container--bootstrap.select2-container--focus .select2-selection,
      .select2-container--bootstrap.select2-container--open .select2-selection {
        box-shadow: inset 0 0 2px #2196f3;
        transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
        transition: all border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s ease-out;
        border-color: #2196f3;
      }
      .select2-container--bootstrap.select2-container--open .select2-selection .select2-selection__arrow b {
        border-color: transparent transparent #607d8b transparent;
        border-width: 0 4px 4px 4px;
      }
      .select2-container--bootstrap.select2-container--open.select2-container--below .select2-selection {
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 0;
        border-bottom-color: transparent;
      }
      .select2-container--bootstrap.select2-container--open.select2-container--above .select2-selection {
        border-top-right-radius: 0;
        border-top-left-radius: 0;
        border-top-color: transparent;
      }
      .select2-container--bootstrap .select2-selection__clear {
        color: #607d8b;
        cursor: pointer;
        float: right;
        font-weight: bold;
        margin-right: 10px;
      }
      .select2-container--bootstrap .select2-selection__clear:hover {
        color: #333;
      }
      .select2-container--bootstrap.select2-container--disabled .select2-selection {
        border-color: #b2c0c6;
        box-shadow: none;
      }
      .select2-container--bootstrap.select2-container--disabled .select2-selection,
      .select2-container--bootstrap.select2-container--disabled .select2-search__field {
        cursor: not-allowed;
      }
      .select2-container--bootstrap.select2-container--disabled .select2-selection,
      .select2-container--bootstrap.select2-container--disabled .select2-selection--multiple .select2-selection__choice {
        background-color: #eceff1;
      }
      .select2-container--bootstrap.select2-container--disabled .select2-selection__clear,
      .select2-container--bootstrap.select2-container--disabled .select2-selection--multiple .select2-selection__choice__remove {
        display: none;
      }
      .select2-container--bootstrap .select2-dropdown {
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
        border-color: #2196f3;
        overflow-x: hidden;
        margin-top: -1px;
      }
      .select2-container--bootstrap .select2-dropdown--above {
        margin-top: 1px;
      }
      .select2-container--bootstrap .select2-results > .select2-results__options {
        max-height: 200px;
        overflow-y: auto;
      }
      .select2-container--bootstrap .select2-selection--single {
        height: 32px;
        line-height: 1.42857143;
        padding: 6px 24px 6px 12px;
      }
      .select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
        position: absolute;
        bottom: 0;
        right: 12px;
        top: 0;
        width: 4px;
      }
      .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
        border-color: #607d8b transparent transparent transparent;
        border-style: solid;
        border-width: 4px 4px 0 4px;
        height: 0;
        left: 0;
        margin-left: -4px;
        margin-top: -2px;
        position: absolute;
        top: 50%;
        width: 0;
      }
      .select2-container--bootstrap .select2-selection--single .select2-selection__rendered {
        color: #080b0d;
        padding: 0;
      }
      .select2-container--bootstrap .select2-selection--single .select2-selection__placeholder {
        color: #607d8b;
      }
      .select2-container--bootstrap .select2-selection--multiple {
        min-height: 32px;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered {
        box-sizing: border-box;
        display: block;
        line-height: 1.42857143;
        list-style: none;
        margin: 0;
        overflow: hidden;
        padding: 0;
        width: 100%;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__placeholder {
        color: #607d8b;
        float: left;
        margin-top: 5px;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
        color: #080b0d;
        background: #eeeeee;
        border: 1px solid #cfd8dc;
        border-radius: 4px;
        cursor: default;
        float: left;
        margin: 5px 0 0 6px;
        padding: 0 6px;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
        background: transparent;
        padding: 0 12px;
        height: 30px;
        line-height: 1.42857143;
        margin-top: 0;
        min-width: 5em;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove {
        color: #999;
        cursor: pointer;
        display: inline-block;
        font-weight: bold;
        margin-right: 3px;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove:hover {
        color: #333;
      }
      .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
        margin-top: 6px;
      }
      .select2-container--bootstrap.input-sm,
      .select2-container--bootstrap.input-lg {
        border-radius: 0;
        font-size: 12px;
        height: auto;
        line-height: 1;
        padding: 0;
      }
      .select2-container--bootstrap.input-sm .select2-selection--single,
      .input-group-sm .select2-container--bootstrap .select2-selection--single,
      .form-group-sm .select2-container--bootstrap .select2-selection--single {
        border-radius: 1px;
        font-size: 12px;
        height: 30px;
        line-height: 1.5;
        padding: 5px 22px 5px 10px;
      }
      .select2-container--bootstrap.input-sm .select2-selection--single .select2-selection__arrow b,
      .input-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b,
      .form-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
        margin-left: -5px;
      }
      .select2-container--bootstrap.input-sm .select2-selection--multiple,
      .input-group-sm .select2-container--bootstrap .select2-selection--multiple,
      .form-group-sm .select2-container--bootstrap .select2-selection--multiple {
        min-height: 30px;
      }
      .select2-container--bootstrap.input-sm .select2-selection--multiple .select2-selection__choice,
      .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice,
      .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
        font-size: 12px;
        line-height: 1.5;
        margin: 4px 0 0 5px;
        padding: 0 5px;
      }
      .select2-container--bootstrap.input-sm .select2-selection--multiple .select2-search--inline .select2-search__field,
      .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field,
      .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
        padding: 0 10px;
        font-size: 12px;
        height: 28px;
        line-height: 1.5;
      }
      .select2-container--bootstrap.input-sm .select2-selection--multiple .select2-selection__clear,
      .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear,
      .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
        margin-top: 5px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--single,
      .input-group-lg .select2-container--bootstrap .select2-selection--single,
      .form-group-lg .select2-container--bootstrap .select2-selection--single {
        border-radius: 4px;
        font-size: 17px;
        height: 45px;
        line-height: 1.3333333;
        padding: 10px 31px 10px 16px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--single .select2-selection__arrow,
      .input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow,
      .form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
        width: 5px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--single .select2-selection__arrow b,
      .input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b,
      .form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
        border-width: 5px 5px 0 5px;
        margin-left: -5px;
        margin-left: -10px;
        margin-top: -2.5px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--multiple,
      .input-group-lg .select2-container--bootstrap .select2-selection--multiple,
      .form-group-lg .select2-container--bootstrap .select2-selection--multiple {
        min-height: 45px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--multiple .select2-selection__choice,
      .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice,
      .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
        font-size: 17px;
        line-height: 1.3333333;
        border-radius: 4px;
        margin: 9px 0 0 8px;
        padding: 0 10px;
      }
      .select2-container--bootstrap.input-lg .select2-selection--multiple .select2-search--inline .select2-search__field,
      .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field,
      .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
        padding: 0 16px;
        font-size: 17px;
        height: 43px;
        line-height: 1.3333333;
      }
      .select2-container--bootstrap.input-lg .select2-selection--multiple .select2-selection__clear,
      .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear,
      .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
        margin-top: 10px;
      }
      .select2-container--bootstrap.input-lg.select2-container--open .select2-selection--single .select2-selection__arrow b {
        border-color: transparent transparent #607d8b transparent;
        border-width: 0 5px 5px 5px;
      }
      .input-group-lg .select2-container--bootstrap.select2-container--open .select2-selection--single .select2-selection__arrow b {
        border-color: transparent transparent #607d8b transparent;
        border-width: 0 5px 5px 5px;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--single {
        padding-left: 24px;
        padding-right: 12px;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__rendered {
        padding-right: 0;
        padding-left: 0;
        text-align: right;
        /* 1 */
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__clear {
        float: left;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__arrow {
        left: 12px;
        right: auto;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__arrow b {
        margin-left: 0;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice,
      .select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder {
        float: right;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
        margin-left: 0;
        margin-right: 6px;
      }
      .select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
        margin-left: 2px;
        margin-right: auto;
      }
      .has-warning .select2-dropdown,
      .has-warning .select2-selection {
        border-color: #8a6d3b;
      }
      .has-warning .select2-container--focus .select2-selection,
      .has-warning .select2-container--open .select2-selection {
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
        border-color: #66512c;
      }
      .has-warning.select2-drop-active {
        border-color: #66512c;
      }
      .has-warning.select2-drop-active.select2-drop.select2-drop-above {
        border-top-color: #66512c;
      }
      .has-error .select2-dropdown,
      .has-error .select2-selection {
        border-color: #a94442;
      }
      .has-error .select2-container--focus .select2-selection,
      .has-error .select2-container--open .select2-selection {
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
        border-color: #843534;
      }
      .has-error.select2-drop-active {
        border-color: #843534;
      }
      .has-error.select2-drop-active.select2-drop.select2-drop-above {
        border-top-color: #843534;
      }
      .has-success .select2-dropdown,
      .has-success .select2-selection {
        border-color: #3c763d;
      }
      .has-success .select2-container--focus .select2-selection,
      .has-success .select2-container--open .select2-selection {
        box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
        border-color: #2b542c;
      }
      .has-success.select2-drop-active {
        border-color: #2b542c;
      }
      .has-success.select2-drop-active.select2-drop.select2-drop-above {
        border-top-color: #2b542c;
      }
      .input-group .select2-container--bootstrap {
        display: table;
        table-layout: fixed;
        position: relative;
        z-index: 2;
        float: left;
        width: 100%;
        margin-bottom: 0;
      }
      .input-group.select2-bootstrap-prepend .select2-container--bootstrap .select2-selection {
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
      }
      .input-group.select2-bootstrap-append .select2-container--bootstrap .select2-selection {
        border-bottom-right-radius: 0;
        border-top-right-radius: 0;
      }
      .select2-bootstrap-append .select2-container--bootstrap,
      .select2-bootstrap-prepend .select2-container--bootstrap,
      .select2-bootstrap-append .input-group-btn,
      .select2-bootstrap-prepend .input-group-btn,
      .select2-bootstrap-append .input-group-btn .btn,
      .select2-bootstrap-prepend .input-group-btn .btn {
        vertical-align: top;
      }
      .form-control.select2-hidden-accessible {
        position: absolute !important;
        width: 1px !important;
      }
      .form-inline .select2-container--bootstrap {
        display: inline-block;
      }
  /* -----------------------------------------
     Bootstrap tagsinput
     ----------------------------------------- */
     .bootstrap-tagsinput {
      border: 1px solid;
      display: inline-block;
      padding: 4px 0;
      vertical-align: middle;
      border-radius: 2px;
      max-width: 100%;
      line-height: 22px;
      cursor: text;
      width: 100%;
    }
    .bootstrap-tagsinput .tag:first-child {
      margin-left: 6px;
    }
    .bootstrap-tagsinput input {
      outline: none;
      padding: 0;
      margin: 0;
      width: auto !important;
      max-width: inherit;
    }
    .bootstrap-tagsinput .tag {
      margin-right: 2px;
      color: white;
    }
    .bootstrap-tagsinput .tag [data-role="remove"] {
      margin-left: 8px;
      cursor: pointer;
    }
    .bootstrap-tagsinput .tag [data-role="remove"][data-role="remove"]:after {
      content: "x";
      padding: 0px 2px;
    }
  /* -----------------------------------------
     Bootstrap typeahead
     ----------------------------------------- */
     .tt-input,
     .tt-hint {
      width: 260px;
      height: 24px;
      padding: 4px 6px;
      font-size: 16px;
      line-height: 24px;
      border: 1px solid;
      border-radius: 2px;
      outline: none;
    }
    .tt-dropdown-menu {
      width: 250px;
      margin-top: 5px;
      padding: 5px 0;
      border: 1px solid;
      border-radius: 2px;
    }
    .tt-suggestion {
      padding: 3px 10px;
      font-size: 14px;
      line-height: 24px;
    }
    .tt-suggestion p {
      margin: 0;
    }
  /* -----------------------------------------
     Touchspin - spinner
     ----------------------------------------- */
     .bootstrap-touchspin .input-group-btn-vertical {
      position: relative;
      white-space: nowrap;
      width: 1%;
      vertical-align: middle;
      display: table-cell;
    }
    .bootstrap-touchspin .input-group-btn-vertical > .btn {
      display: block;
      float: none;
      width: 100%;
      max-width: 100%;
      padding: 8px 10px;
      margin-left: -1px;
      position: relative;
      border: 1px solid #b2c0c6;
    }
    .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
      border-radius: 0;
      border-top-right-radius: 4px;
    }
    .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
      margin-top: -2px;
      border-radius: 0;
      border-bottom-right-radius: 4px;
    }
    .bootstrap-touchspin .input-group-btn-vertical i {
      position: absolute;
      top: 3px;
      left: 5px;
      font-size: 9px;
      font-weight: normal;
      color: #425b6c;
    }
    .bootstrap-touchspin .bootstrap-touchspin-prefix {
      border-right: 0;
    }
    .bootstrap-touchspin .bootstrap-touchspin-postfix {
      border-left: 0;
    }
    .bootstrap-touchspin .form-control {
      border-bottom-left-radius: 2px !important;
      border-top-left-radius: 2px !important;
    }
  /* -----------------------------------------
     Bootstrap timepicker
     ----------------------------------------- */
     .bootstrap-timepicker {
      position: relative;
    }
    .bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu {
      left: auto;
      right: 0;
    }
    .bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:before {
      left: auto;
      right: 12px;
    }
    .bootstrap-timepicker.pull-right .bootstrap-timepicker-widget.dropdown-menu:after {
      left: auto;
      right: 13px;
    }
    .bootstrap-timepicker .add-on {
      cursor: pointer;
    }
    .bootstrap-timepicker .add-on i {
      display: inline-block;
      width: 16px;
      height: 16px;
    }
    .bootstrap-timepicker .input-group-addon {
      border-right-width: 0;
      border-top-left-radius: 2px !important;
      border-bottom-left-radius: 2px !important;
    }
    .bootstrap-timepicker-widget.dropdown-menu {
      width: 260px;
      padding: 5px;
    }
    .bootstrap-timepicker-widget.dropdown-menu.open {
      display: inline-block;
    }
    .bootstrap-timepicker-widget.dropdown-menu:before {
      border-bottom: 12px solid;
      border-left: 12px solid;
      border-right: 12px solid;
      content: "";
      display: inline-block;
      left: 20px;
      position: absolute;
      top: -23px;
    }
    .bootstrap-timepicker-widget.dropdown-menu:after {
      border-bottom: 10px solid;
      border-left: 10px solid;
      border-right: 10px solid;
      content: "";
      display: inline-block;
      left: 21px;
      position: absolute;
      top: -20px;
    }
    .bootstrap-timepicker-widget a.btn,
    .bootstrap-timepicker-widget input {
      border-radius: 2px;
    }
    .bootstrap-timepicker-widget table {
      width: 100%;
      margin: 0;
    }
    .bootstrap-timepicker-widget table td {
      text-align: center;
      height: 30px;
      margin: 0;
      padding: 2px;
    }
    .bootstrap-timepicker-widget table td:not(.separator) {
      min-width: 30px;
    }
    .bootstrap-timepicker-widget table td span {
      width: 100%;
    }
    .bootstrap-timepicker-widget table td a {
      display: inline-block;
      margin-bottom: 0;
      font-weight: normal;
      text-align: center;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      border: 1px solid;
      white-space: nowrap;
      padding: 6px 12px;
      font-size: 13px;
      line-height: 1.42857143;
      border-radius: 2px;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      color: #080b0d;
      background-color: #eeeeee;
      border-color: #cfd8dc;
      width: 100%;
    }
    .bootstrap-timepicker-widget table td a:focus,
    .bootstrap-timepicker-widget table td a:active:focus,
    .bootstrap-timepicker-widget table td a.active:focus,
    .bootstrap-timepicker-widget table td a.focus,
    .bootstrap-timepicker-widget table td a:active.focus,
    .bootstrap-timepicker-widget table td a.active.focus {
      outline: thin dotted;
      outline: 5px auto -webkit-focus-ring-color;
      outline-offset: -2px;
    }
    .bootstrap-timepicker-widget table td a:hover,
    .bootstrap-timepicker-widget table td a:focus,
    .bootstrap-timepicker-widget table td a.focus {
      text-decoration: none;
    }
    .bootstrap-timepicker-widget table td a:focus,
    .bootstrap-timepicker-widget table td a.focus {
      color: #080b0d;
      background-color: #d5d5d5;
      border-color: #859ca6;
    }
    .bootstrap-timepicker-widget table td a:hover {
      color: #080b0d;
      background-color: #d5d5d5;
      border-color: #acbbc2;
    }
    .bootstrap-timepicker-widget table td a:active,
    .bootstrap-timepicker-widget table td a.active,
    .open > .dropdown-toggle.bootstrap-timepicker-widget table td a {
      color: #080b0d;
      background-color: #d5d5d5;
      border-color: #acbbc2;
    }
    .bootstrap-timepicker-widget table td a:active:hover,
    .bootstrap-timepicker-widget table td a.active:hover,
    .open > .dropdown-toggle.bootstrap-timepicker-widget table td a:hover,
    .bootstrap-timepicker-widget table td a:active:focus,
    .bootstrap-timepicker-widget table td a.active:focus,
    .open > .dropdown-toggle.bootstrap-timepicker-widget table td a:focus,
    .bootstrap-timepicker-widget table td a:active.focus,
    .bootstrap-timepicker-widget table td a.active.focus,
    .open > .dropdown-toggle.bootstrap-timepicker-widget table td a.focus {
      color: #080b0d;
      background-color: #c3c3c3;
      border-color: #859ca6;
    }
    .bootstrap-timepicker-widget table td a:active,
    .bootstrap-timepicker-widget table td a.active,
    .open > .dropdown-toggle.bootstrap-timepicker-widget table td a {
      background-image: none;
    }
    .bootstrap-timepicker-widget table td a.disabled,
    .bootstrap-timepicker-widget table td a[disabled],
    fieldset[disabled] .bootstrap-timepicker-widget table td a,
    .bootstrap-timepicker-widget table td a.disabled:hover,
    .bootstrap-timepicker-widget table td a[disabled]:hover,
    fieldset[disabled] .bootstrap-timepicker-widget table td a:hover,
    .bootstrap-timepicker-widget table td a.disabled:focus,
    .bootstrap-timepicker-widget table td a[disabled]:focus,
    fieldset[disabled] .bootstrap-timepicker-widget table td a:focus,
    .bootstrap-timepicker-widget table td a.disabled.focus,
    .bootstrap-timepicker-widget table td a[disabled].focus,
    fieldset[disabled] .bootstrap-timepicker-widget table td a.focus,
    .bootstrap-timepicker-widget table td a.disabled:active,
    .bootstrap-timepicker-widget table td a[disabled]:active,
    fieldset[disabled] .bootstrap-timepicker-widget table td a:active,
    .bootstrap-timepicker-widget table td a.disabled.active,
    .bootstrap-timepicker-widget table td a[disabled].active,
    fieldset[disabled] .bootstrap-timepicker-widget table td a.active {
      background-color: #eeeeee;
      border-color: #cfd8dc;
    }
    .bootstrap-timepicker-widget table td a .badge {
      color: #eeeeee;
      background-color: #080b0d;
    }
    .bootstrap-timepicker-widget table td a i {
      margin-top: 2px;
    }
    .bootstrap-timepicker-widget table td input {
      width: 25px;
      margin: 0;
      text-align: center;
    }
    .bootstrap-timepicker-widget .modal-content {
      padding: 4px;
    }
    @media (min-width: 767px) {
      .bootstrap-timepicker-widget.modal {
        width: 200px;
        margin-left: -100px;
      }
    }
    @media (max-width: 767px) {
      .bootstrap-timepicker {
        width: 100%;
      }
      .bootstrap-timepicker .dropdown-menu {
        width: 100%;
      }
    }
  /* -----------------------------------------
     Color picker 
     ----------------------------------------- */
     .colorpicker-saturation {
      width: 100px;
      height: 100px;
      cursor: crosshair;
      float: left;
    }
    .colorpicker-saturation i {
      display: block;
      height: 5px;
      width: 5px;
      border: 1px solid;
      border-radius: 5px;
      position: absolute;
      top: 0;
      left: 0;
      margin: -4px 0 0 -4px;
    }
    .colorpicker-saturation i b {
      display: block;
      height: 5px;
      width: 5px;
      border: 1px solid;
      border-radius: 5px;
    }
    .colorpicker-hue,
    .colorpicker-alpha {
      width: 15px;
      height: 100px;
      float: left;
      cursor: row-resize;
      margin-left: 4px;
      margin-bottom: 4px;
    }
    .colorpicker-hue i,
    .colorpicker-alpha i {
      display: block;
      height: 1px;
      border-top: 1px solid;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      margin-top: -1px;
    }
    .colorpicker-alpha {
      display: none;
    }
    .colorpicker {
      *zoom: 1;
      top: 0;
      left: 0;
      padding: 4px;
      min-width: 130px;
      width: auto;
      margin-top: 12px;
      border-radius: 2px;
      z-index: 2500;
    }
    .colorpicker:before,
    .colorpicker:after {
      display: table;
      content: "";
      line-height: 0;
    }
    .colorpicker:after {
      clear: both;
    }
    .colorpicker:before {
      content: '';
      display: inline-block;
      border-left: 12px solid;
      border-right: 12px solid;
      border-bottom: 12px solid;
      position: absolute;
      top: -23px;
      left: 20px;
    }
    .colorpicker:after {
      content: '';
      display: inline-block;
      border-left: 10px solid;
      border-right: 10px solid;
      border-bottom: 10px solid;
      position: absolute;
      top: -20px;
      left: 21px;
    }
    .colorpicker-inline {
      margin-top: 1px;
    }
    .colorpicker-inline:after,
    .colorpicker-inline:before {
      border: none;
    }
    .colorpicker div {
      position: relative;
    }
    .colorpicker.colorpicker-with-alpha {
      min-width: 140px;
    }
    .colorpicker.colorpicker-with-alpha .colorpicker-alpha {
      display: block;
    }
    .colorpicker-color {
      height: 10px;
      margin-top: 5px;
      clear: both;
      background-position: 0 100%;
    }
    .colorpicker-color div {
      height: 10px;
    }
    .colorpicker-element .input-group-addon i,
    .colorpicker-element .add-on i {
      display: inline-block;
      cursor: pointer;
      height: 16px;
      vertical-align: text-top;
      width: 16px;
    }
    .colorpicker.colorpicker-inline {
      position: relative;
      display: inline-block;
      float: none;
      z-index: auto;
    }
    .colorpicker.colorpicker-horizontal {
      width: 110px;
      min-width: 110px;
      height: auto;
    }
    .colorpicker.colorpicker-horizontal .colorpicker-saturation {
      margin-bottom: 4px;
    }
    .colorpicker.colorpicker-horizontal .colorpicker-color {
      width: 100px;
    }
    .colorpicker.colorpicker-horizontal .colorpicker-hue,
    .colorpicker.colorpicker-horizontal .colorpicker-alpha {
      width: 100px;
      height: 15px;
      float: left;
      cursor: col-resize;
      margin-left: 0px;
      margin-bottom: 4px;
    }
    .colorpicker.colorpicker-horizontal .colorpicker-hue i,
    .colorpicker.colorpicker-horizontal .colorpicker-alpha i {
      display: block;
      height: 15px;
      position: absolute;
      top: 0;
      left: 0;
      width: 1px;
      margin-top: 0px;
    }
    .colorpicker.colorpicker-hidden {
      display: none;
    }
    .colorpicker.colorpicker-visible {
      display: block;
    }
    .colorpicker-inline.colorpicker-visible {
      display: inline-block;
    }
  /* -----------------------------------------
     Bootstrap datepicker
     ----------------------------------------- */
     .datepicker {
      padding: 5px;
      border-radius: 2px;
      width: auto;
      direction: ltr;
    }
    .datepicker-inline {
      width: 220px;
    }
    .datepicker.datepicker-rtl {
      direction: rtl;
    }
    .datepicker.datepicker-rtl table tr td span {
      float: right;
    }
    .datepicker-dropdown.datepicker-orient-left:before {
      left: 22px;
    }
    .datepicker-dropdown.datepicker-orient-left:after {
      left: 21px;
    }
    .datepicker-dropdown.datepicker-orient-right:before {
      right: 20px;
    }
    .datepicker-dropdown.datepicker-orient-right:after {
      right: 21px;
    }
    .datepicker-dropdown.datepicker-orient-top:before {
      top: -22px;
    }
    .datepicker-dropdown.datepicker-orient-top:after {
      top: -20px;
    }
    .datepicker-dropdown.datepicker-orient-bottom:before {
      bottom: -12px;
      border-bottom: 0;
    }
    .datepicker-dropdown.datepicker-orient-bottom:after {
      bottom: -10px;
      border-bottom: 0;
    }
    .datepicker-dropdown.datepicker-orient-bottom {
      margin-top: 0;
    }
    .datepicker > div {
      display: none;
    }
    .datepicker.days div.datepicker-days {
      display: block;
    }
    .datepicker.months div.datepicker-months {
      display: block;
    }
    .datepicker.years div.datepicker-years {
      display: block;
    }
    .datepicker table {
      margin: 0;
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    .datepicker table tr td,
    .datepicker table tr th {
      text-align: center;
      width: 30px;
      height: 30px;
      border-radius: 2px;
      border: none;
      font-weight: normal;
    }
    .table-striped .datepicker table tr td,
    .table-striped .datepicker table tr th {
      background-color: transparent;
    }
    .datepicker table tr td.day:hover,
    .datepicker table tr td.day.focused {
      cursor: pointer;
    }
    .datepicker table tr td.disabled,
    .datepicker table tr td.disabled:hover {
      cursor: default;
    }
    .datepicker table tr td.range,
    .datepicker table tr td.range:hover,
    .datepicker table tr td.range.disabled,
    .datepicker table tr td.range.disabled:hover {
      border-radius: 0;
    }
    .datepicker table tr td.range.today,
    .datepicker table tr td.range.today:hover,
    .datepicker table tr td.range.today.disabled,
    .datepicker table tr td.range.today.disabled:hover {
      border-radius: 0;
    }
    .datepicker table tr td span {
      display: block;
      width: 23%;
      height: 54px;
      line-height: 54px;
      float: left;
      margin: 1%;
      cursor: pointer;
      border-radius: 2px;
    }
    .datepicker table tr td span.disabled,
    .datepicker table tr td span.disabled:hover {
      cursor: default;
    }
    .datepicker th.datepicker-switch {
      width: 145px;
    }
    .datepicker thead tr:first-child th,
    .datepicker tfoot tr th {
      cursor: pointer;
    }
    .datepicker .dow {
      font-size: 13px;
    }
    .datepicker .cw {
      font-size: 10px;
      width: 12px;
      padding: 0 2px 0 5px;
      vertical-align: middle;
    }
    .datepicker thead tr:first-child th.cw {
      cursor: default;
      background-color: transparent;
    }
    .input-group.date .input-group-addon i {
      cursor: pointer;
      width: 16px;
      height: 16px;
    }
    .input-daterange input {
      text-align: center;
    }
    .input-daterange input:first-child {
      border-radius: 2px 0 0 2px;
    }
    .input-daterange input:last-child {
      border-radius: 0 2px 2px 0;
    }
    .input-daterange .input-group-addon + input + .input-group-addon {
      border-left-width: 0;
      border-right-width: 0;
    }
  /* -----------------------------------------
      Summernote wysiwyg editor
      ----------------------------------------- */
      .note-editor {
        border: 1px solid #cfd8dc !important;
        position: relative;
        overflow: hidden;
        /* dropzone */
        /* codeview mode */
        /* fullscreen mode */
        /* statusbar */
      }
      .note-editor .note-dropzone {
        position: absolute;
        display: none;
        z-index: 100;
        color: #87cefa;
        background-color: white;
        opacity: 0.95;
        pointer-event: none;
      }
      .note-editor .note-dropzone .note-dropzone-message {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        font-size: 28px;
        font-weight: bold;
      }
      .note-editor .note-dropzone.hover {
        color: #098ddf;
      }
      .note-editor.dragover .note-dropzone {
        display: table;
      }
      .note-editor.codeview .note-editing-area .note-editable {
        display: none;
      }
      .note-editor.codeview .note-editing-area .note-codable {
        display: block;
      }
      .note-editor.fullscreen {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 1050;
        /* bs3 modal-backdrop: 1030, bs2: 1040 */
      }
      .note-editor.fullscreen .note-editable {
        background-color: white;
      }
      .note-editor.fullscreen .note-resizebar {
        display: none;
      }
      .note-editor .note-editing-area {
        position: relative;
        overflow: hidden;
        /* editable */
        /* codeable */
      }
      .note-editor .note-editing-area .note-editable {
        background-color: #fff;
        color: #000;
        padding: 10px;
        overflow: auto;
        outline: none;
      }
      .note-editor .note-editing-area .note-editable[contenteditable=true]:empty:not(:focus):before {
        content: attr(data-placeholder);
      }
      .note-editor .note-editing-area .note-editable[contenteditable="false"] {
        background-color: #e5e5e5;
      }
      .note-editor .note-editing-area .note-codable {
        display: none;
        width: 100%;
        padding: 10px;
        border: none;
        box-shadow: none;
        font-family: FranklinGothicWebBook, Arial, sans-serif;
        font-size: 14px;
        color: #ccc;
        background-color: #222;
        resize: none;
        /* override BS2 default style */
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        border-radius: 0;
        margin-bottom: 0;
      }
      .note-editor .note-statusbar {
        background-color: #f5f5f5;
      }
      .note-editor .note-statusbar .note-resizebar {
        padding-top: 1px;
        height: 8px;
        width: 100%;
        cursor: ns-resize;
      }
      .note-editor .note-statusbar .note-resizebar .note-icon-bar {
        width: 20px;
        margin: 1px auto;
        border-top: 1px solid #cfd8dc;
      }
      .note-air-editor {
        outline: none;
      }
      .note-popover .popover {
        max-width: none;
      }
      .note-popover .popover .popover-content a {
        display: inline-block;
        max-width: 200px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        /* for FF */
        vertical-align: middle;
        /* for FF */
      }
      .note-popover .popover .arrow {
        left: 20px;
      }
      .note-popover .popover .popover-content,
      .panel-heading.note-toolbar {
        margin: 0;
        padding: 0 0 5px 5px;
        background: #fff !important;
        /* dropdown-menu for toolbar and popover */
        /* color palette for toolbar and popover */
      }
      .note-popover .popover .popover-content > .btn-group,
      .panel-heading.note-toolbar > .btn-group {
        margin-top: 5px;
        margin-left: 0;
        margin-right: 5px;
      }
      .note-popover .popover .popover-content .btn-group .note-table,
      .panel-heading.note-toolbar .btn-group .note-table {
        min-width: 0;
        padding: 5px;
      }
      .note-popover .popover .popover-content .btn-group .note-table .note-dimension-picker,
      .panel-heading.note-toolbar .btn-group .note-table .note-dimension-picker {
        font-size: 18px;
      }
      .note-popover .popover .popover-content .btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher,
      .panel-heading.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher {
        position: absolute !important;
        z-index: 3;
        width: 10em;
        height: 10em;
        cursor: pointer;
      }
      .note-popover .popover .popover-content .btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted,
      .panel-heading.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted {
        position: relative !important;
        z-index: 1;
        width: 5em;
        height: 5em;
        background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIj4+Pjp6ekKlAqjAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKhmnaJzPAAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat;
      }
      .note-popover .popover .popover-content .btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted,
      .panel-heading.note-toolbar .btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted {
        position: absolute !important;
        z-index: 2;
        width: 1em;
        height: 1em;
        background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIjd6vvD2f9LKLW+AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKwNDEVT0AAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC') repeat;
      }
      .note-popover .popover .popover-content .note-style h1,
      .panel-heading.note-toolbar .note-style h1,
      .note-popover .popover .popover-content .note-style h2,
      .panel-heading.note-toolbar .note-style h2,
      .note-popover .popover .popover-content .note-style h3,
      .panel-heading.note-toolbar .note-style h3,
      .note-popover .popover .popover-content .note-style h4,
      .panel-heading.note-toolbar .note-style h4,
      .note-popover .popover .popover-content .note-style h5,
      .panel-heading.note-toolbar .note-style h5,
      .note-popover .popover .popover-content .note-style h6,
      .panel-heading.note-toolbar .note-style h6,
      .note-popover .popover .popover-content .note-style blockquote,
      .panel-heading.note-toolbar .note-style blockquote {
        margin: 0;
      }
      .note-popover .popover .popover-content .note-color .dropdown-toggle,
      .panel-heading.note-toolbar .note-color .dropdown-toggle {
        width: 20px;
        padding-left: 5px;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu,
      .panel-heading.note-toolbar .note-color .dropdown-menu {
        min-width: 340px;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group {
        margin: 0;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group:first-child,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group:first-child {
        margin: 0 5px;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group .note-palette-title,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group .note-palette-title {
        font-size: 12px;
        margin: 2px 7px;
        text-align: center;
        border-bottom: 1px solid #eee;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group .note-color-reset,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group .note-color-reset {
        font-size: 11px;
        margin: 3px;
        padding: 0 3px;
        cursor: pointer;
        border-radius: 5px;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group .note-color-row,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group .note-color-row {
        height: 20px;
      }
      .note-popover .popover .popover-content .note-color .dropdown-menu .btn-group .note-color-reset:hover,
      .panel-heading.note-toolbar .note-color .dropdown-menu .btn-group .note-color-reset:hover {
        background: #eee;
      }
      .note-popover .popover .popover-content .note-para .dropdown-menu,
      .panel-heading.note-toolbar .note-para .dropdown-menu {
        min-width: 216px;
        padding: 5px;
      }
      .note-popover .popover .popover-content .note-para .dropdown-menu > div:first-child,
      .panel-heading.note-toolbar .note-para .dropdown-menu > div:first-child {
        margin-right: 5px;
      }
      .note-popover .popover .popover-content .dropdown-menu,
      .panel-heading.note-toolbar .dropdown-menu {
        min-width: 90px;
        /* dropdown-menu right position */
        /* http://forrst.com/posts/Bootstrap_right_positioned_dropdown-2KB */
        /* dropdown-menu for selectbox */
      }
      .note-popover .popover .popover-content .dropdown-menu.right,
      .panel-heading.note-toolbar .dropdown-menu.right {
        right: 0;
        left: auto;
      }
      .note-popover .popover .popover-content .dropdown-menu.right::before,
      .panel-heading.note-toolbar .dropdown-menu.right::before {
        right: 9px;
        left: auto !important;
      }
      .note-popover .popover .popover-content .dropdown-menu.right::after,
      .panel-heading.note-toolbar .dropdown-menu.right::after {
        right: 10px;
        left: auto !important;
      }
      .note-popover .popover .popover-content .dropdown-menu.note-check li a i,
      .panel-heading.note-toolbar .dropdown-menu.note-check li a i {
        color: deepskyblue;
        visibility: hidden;
      }
      .note-popover .popover .popover-content .dropdown-menu.note-check li a.checked i,
      .panel-heading.note-toolbar .dropdown-menu.note-check li a.checked i {
        visibility: visible;
      }
      .note-popover .popover .popover-content .note-fontsize-10,
      .panel-heading.note-toolbar .note-fontsize-10 {
        font-size: 10px;
      }
      .note-popover .popover .popover-content .note-color-palette,
      .panel-heading.note-toolbar .note-color-palette {
        line-height: 1;
      }
      .note-popover .popover .popover-content .note-color-palette div .note-color-btn,
      .panel-heading.note-toolbar .note-color-palette div .note-color-btn {
        width: 20px;
        height: 20px;
        padding: 0;
        margin: 0;
        border: 1px solid #fff;
      }
      .note-popover .popover .popover-content .note-color-palette div .note-color-btn:hover,
      .panel-heading.note-toolbar .note-color-palette div .note-color-btn:hover {
        border: 1px solid #000;
      }
      .note-dialog > div {
        display: none;
        /* BS2's hide pacth. */
      }
      .note-dialog .form-group {
        /* overwrite BS's form-horizontal minus margins */
        margin-left: 0;
        margin-right: 0;
      }
      .note-dialog .note-modal-form {
        margin: 0;
        /* overwrite BS2's form margin bottom */
      }
      .note-dialog .note-image-dialog .note-dropzone {
        min-height: 100px;
        font-size: 30px;
        line-height: 4;
        /* vertical-align */
        color: lightgray;
        text-align: center;
        border: 4px dashed lightgray;
        margin-bottom: 10px;
      }
      .note-dialog .note-help-dialog {
        font-size: 12px;
        color: #ccc;
        background-color: #222 !important;
        -webkit-opacity: 0.9;
        -khtml-opacity: 0.9;
        -moz-opacity: 0.9;
        opacity: 0.9;
        -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=90);
        filter: alpha(opacity=90);
        /* BS2's background pacth. */
        background: transparent;
        border: none;
      }
      .note-dialog .note-help-dialog .modal-content {
        background: transparent;
        border: 1px solid white;
        box-shadow: none;
        border-radius: 5px;
      }
      .note-dialog .note-help-dialog a {
        font-size: 12px;
        color: white;
      }
      .note-dialog .note-help-dialog .title {
        color: white;
        font-size: 14px;
        font-weight: bold;
        padding-bottom: 5px;
        margin-bottom: 10px;
        border-bottom: white 1px solid;
      }
      .note-dialog .note-help-dialog .modal-close {
        font-size: 14px;
        color: #dddd00;
        cursor: pointer;
      }
      .note-dialog .note-help-dialog .text-center {
        margin: 10px 0 0;
      }
      .note-dialog .note-help-dialog .note-shortcut {
        padding-top: 8px;
        padding-bottom: 8px;
      }
      .note-dialog .note-help-dialog .note-shortcut-row {
        margin-right: -5px;
        margin-left: -5px;
      }
      .note-dialog .note-help-dialog .note-shortcut-col {
        padding-right: 5px;
        padding-left: 5px;
      }
      .note-dialog .note-help-dialog .note-shortcut-title {
        font-size: 13px;
        font-weight: bold;
        color: #dddd00;
      }
      .note-dialog .note-help-dialog .note-shortcut-key {
        font-family: "HelveticaRegular", Arial, sans-serif;
        color: #dddd00;
        text-align: right;
      }
      .note-handle {
        /* control selection */
      }
      .note-handle .note-control-selection {
        position: absolute;
        display: none;
        border: 1px solid black;
      }
      .note-handle .note-control-selection > div {
        position: absolute;
      }
      .note-handle .note-control-selection .note-control-selection-bg {
        width: 100%;
        height: 100%;
        background-color: black;
        -webkit-opacity: 0.3;
        -khtml-opacity: 0.3;
        -moz-opacity: 0.3;
        opacity: 0.3;
        -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=30);
        filter: alpha(opacity=30);
      }
      .note-handle .note-control-selection .note-control-handle {
        width: 7px;
        height: 7px;
        border: 1px solid black;
      }
      .note-handle .note-control-selection .note-control-holder {
        width: 7px;
        height: 7px;
        border: 1px solid black;
      }
      .note-handle .note-control-selection .note-control-sizing {
        width: 7px;
        height: 7px;
        border: 1px solid black;
        background-color: white;
      }
      .note-handle .note-control-selection .note-control-nw {
        top: -5px;
        left: -5px;
        border-right: none;
        border-bottom: none;
      }
      .note-handle .note-control-selection .note-control-ne {
        top: -5px;
        right: -5px;
        border-bottom: none;
        border-left: none;
      }
      .note-handle .note-control-selection .note-control-sw {
        bottom: -5px;
        left: -5px;
        border-top: none;
        border-right: none;
      }
      .note-handle .note-control-selection .note-control-se {
        right: -5px;
        bottom: -5px;
        cursor: se-resize;
      }
      .note-handle .note-control-selection .note-control-se.note-control-holder {
        cursor: default;
        border-top: none;
        border-left: none;
      }
      .note-handle .note-control-selection .note-control-selection-info {
        right: 0;
        bottom: 0;
        padding: 5px;
        margin: 5px;
        color: white;
        background-color: black;
        font-size: 12px;
        border-radius: 5px;
        -webkit-opacity: 0.7;
        -khtml-opacity: 0.7;
        -moz-opacity: 0.7;
        opacity: 0.7;
        -ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=70);
        filter: alpha(opacity=70);
      }
  /* -----------------------------------------
     Bootstrap markdown
     ----------------------------------------- */
     .md-editor {
      display: block;
      border: 1px solid;
      border-radius: 2px;
    }
    .md-editor > .md-header,
    .md-editor .md-footer {
      display: block;
      padding: 6px 0;
    }
    .md-editor > .md-header {
      margin: 0;
    }
    .md-editor > .md-preview {
      border-top: 1px solid;
      border-bottom: 1px solid;
      min-height: 10px;
      overflow: auto;
    }
    .md-editor > textarea {
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      font-size: 13px;
      outline: 0;
      outline: thin dotted  \9;
      /* IE6-9 */
      margin: 0;
      display: block;
      padding: 0;
      width: 100%;
      border-top: 1px solid;
      border-bottom: 1px solid;
      border-radius: 0;
    }
    .md-editor.active {
      outline: 0;
    }
    .md-editor .md-controls {
      float: right;
      padding: 3px;
    }
    .md-editor .md-controls .md-control {
      right: 5px;
      padding: 3px 3px 3px 10px;
    }
    .md-editor.md-fullscreen-mode {
      width: 100%;
      height: 100%;
      position: fixed;
      top: 0;
      left: 0;
      z-index: 99999;
      padding: 60px 30px 15px;
    }
    .md-editor.md-fullscreen-mode .md-footer {
      display: none;
    }
    .md-editor.md-fullscreen-mode .md-input,
    .md-editor.md-fullscreen-mode .md-preview {
      margin: 0 auto !important;
      height: 100% !important;
      font-size: 20px !important;
      padding: 20px !important;
      line-height: 1.6em !important;
      resize: none !important;
    }
    .md-editor.md-fullscreen-mode .md-preview {
      overflow: auto;
    }
    .md-editor.md-fullscreen-mode .md-header {
      background: none;
      text-align: center;
      position: fixed;
      width: 100%;
      top: 20px;
    }
    .md-editor.md-fullscreen-mode .btn-group {
      float: none;
    }
    .md-editor.md-fullscreen-mode .md-fullscreen-controls {
      position: absolute;
      top: 20px;
      right: 20px;
      text-align: right;
      z-index: 1002;
      display: block;
    }
    .md-editor.md-fullscreen-mode .md-fullscreen-controls a {
      clear: right;
      margin: 10px;
      width: 30px;
      height: 30px;
      text-align: center;
    }
    .md-editor.md-fullscreen-mode .md-fullscreen-controls a:hover {
      text-decoration: none;
    }
    .md-editor.md-fullscreen-mode .md-editor {
      height: 100% !important;
      position: relative;
    }
    .md-editor .md-fullscreen-controls {
      display: none;
    }
    .md-nooverflow {
      overflow: hidden;
      position: fixed;
      width: 100%;
    }
  /* -----------------------------------------
     Bootstrap Form wizard
     ----------------------------------------- */
     .bwizard .bwizard-steps {
      list-style: none;
      display: inline-block;
      padding: 0;
      text-align: center;
      margin: 0;
    }
    .bwizard .bwizard-steps li {
      display: table-cell;
      width: 1%;
      float: none;
      position: relative;
    }
    .bwizard .bwizard-steps li a {
      width: 100%;
      display: inline-block;
      text-decoration: none;
      position: relative;
      padding: 20px 0;
    }
    .bwizard .bwizard-steps li a .step-number {
      border-radius: 50%;
      width: 30px;
      height: 30px;
      display: inline-block;
      padding: 5px 11px;
    }
    .bwizard .bwizard-steps li a .step-number:after {
      content: "\2192";
      position: relative;
      left: 18px;
      top: -1px;
    }
    .bwizard .bwizard-steps li a .step-text {
      padding-left: 20px;
    }
    .bwizard .bwizard-steps li:first-child a .step-number {
      padding-left: 11px;
    }
    .bwizard .wizard-progress {
      margin: -5px 0 0;
      padding: 15px;
    }
    .bwizard .wizard-progress .progress {
      margin-bottom: 0;
    }
    .bwizard form {
      margin-top: 10px;
    }
    .bwizard form .tab-content {
      padding: 0 15px;
    }
    .bwizard .pager {
      margin: 0;
      padding: 20px 15px;
    }
    .bwizard.vertical-wizard:before,
    .bwizard.vertical-wizard:after {
      content: " ";
      display: table;
    }
    .bwizard.vertical-wizard:after {
      clear: both;
    }
    .bwizard.vertical-wizard .bwizard-steps {
      float: left;
      width: 200px;
      border-bottom: none;
    }
    .bwizard.vertical-wizard .bwizard-steps li {
      width: 100%;
      display: inline-block;
    }
    .bwizard.vertical-wizard .bwizard-steps li a .step-number:after {
      content: "";
    }
    .bwizard.vertical-wizard .wizard-form-wrap {
      padding-left: 210px;
      padding-top: 15px;
    }
    .bwizard.vertical-wizard .wizard-form-wrap form {
      float: left;
      width: 100%;
    }
    .bwizard.vertical-wizard .wizard-form-wrap form:before,
    .bwizard.vertical-wizard .wizard-form-wrap form:after {
      content: " ";
      display: table;
    }
    .bwizard.vertical-wizard .wizard-form-wrap form:after {
      clear: both;
    }
    .bwizard.vertical-wizard .wizard-pager-wrap {
      float: left;
      width: 100%;
    }
    .bwizard.vertical-wizard .wizard-pager-wrap:before,
    .bwizard.vertical-wizard .wizard-pager-wrap:after {
      content: " ";
      display: table;
    }
    .bwizard.vertical-wizard .wizard-pager-wrap:after {
      clear: both;
    }
  /* -----------------------------------------
     Dropzone plugin
     ----------------------------------------- */
     .dropzone,
     .dropzone *,
     .dropzone-previews,
     .dropzone-previews * {
      box-sizing: border-box;
    }
    .dropzone {
      position: relative;
      border: 3px dashed;
      padding: 1em;
    }
    .dropzone.dz-clickable {
      cursor: pointer;
    }
    .dropzone.dz-clickable .dz-message,
    .dropzone.dz-clickable .dz-message span {
      cursor: pointer;
    }
    .dropzone.dz-clickable * {
      cursor: default;
    }
    .dropzone .dz-message {
      opacity: 1;
      -ms-filter: none;
      -webkit-filter: none;
      filter: none;
    }
    .dropzone.dz-started .dz-message {
      display: none;
    }
    .dropzone .dz-preview,
    .dropzone-previews .dz-preview {
      position: relative;
      display: inline-block;
      margin: 17px;
      vertical-align: top;
      border: 1px solid;
      padding: 6px 6px 6px 6px;
    }
    .dropzone .dz-preview.dz-file-preview [data-dz-thumbnail],
    .dropzone-previews .dz-preview.dz-file-preview [data-dz-thumbnail] {
      display: none;
    }
    .dropzone .dz-preview .dz-details,
    .dropzone-previews .dz-preview .dz-details {
      width: 100px;
      height: 100px;
      position: relative;
      padding: 5px;
      margin-bottom: 22px;
    }
    .dropzone .dz-preview .dz-details .dz-filename,
    .dropzone-previews .dz-preview .dz-details .dz-filename {
      overflow: hidden;
      height: 100%;
    }
    .dropzone .dz-preview .dz-details img,
    .dropzone-previews .dz-preview .dz-details img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100px;
      height: 100px;
    }
    .dropzone .dz-preview .dz-details .dz-size,
    .dropzone-previews .dz-preview .dz-details .dz-size {
      position: absolute;
      bottom: -28px;
      left: 3px;
      height: 28px;
      line-height: 28px;
    }
    .dropzone .dz-preview.dz-error .dz-error-mark,
    .dropzone-previews .dz-preview.dz-error .dz-error-mark {
      display: block;
    }
    .dropzone .dz-preview.dz-success .dz-success-mark,
    .dropzone-previews .dz-preview.dz-success .dz-success-mark {
      display: block;
    }
    .dropzone .dz-preview:hover .dz-details img,
    .dropzone-previews .dz-preview:hover .dz-details img {
      display: none;
    }
    .dropzone .dz-preview .dz-success-mark,
    .dropzone-previews .dz-preview .dz-success-mark,
    .dropzone .dz-preview .dz-error-mark,
    .dropzone-previews .dz-preview .dz-error-mark {
      display: none;
      position: absolute;
      width: 40px;
      height: 40px;
      font-size: 30px;
      text-align: center;
      right: -10px;
      top: -10px;
    }
    .dropzone .dz-preview .dz-progress,
    .dropzone-previews .dz-preview .dz-progress {
      position: absolute;
      top: 100px;
      left: 6px;
      right: 6px;
      height: 6px;
      display: none;
    }
    .dropzone .dz-preview .dz-progress .dz-upload,
    .dropzone-previews .dz-preview .dz-progress .dz-upload {
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      width: 0%;
    }
    .dropzone .dz-preview.dz-processing .dz-progress,
    .dropzone-previews .dz-preview.dz-processing .dz-progress {
      display: block;
    }
    .dropzone .dz-preview .dz-error-message,
    .dropzone-previews .dz-preview .dz-error-message {
      display: none;
      position: absolute;
      top: -5px;
      left: -20px;
      padding: 8px 10px;
      min-width: 140px;
      max-width: 500px;
      z-index: 500;
    }
    .dropzone .dz-preview:hover.dz-error .dz-error-message,
    .dropzone-previews .dz-preview:hover.dz-error .dz-error-message {
      display: block;
    }
    .dropzone {
      border: 1px solid;
      min-height: 360px;
      border-radius: 3px;
      padding: 23px;
    }
    .dropzone .dz-default.dz-message {
      opacity: 1;
      -ms-filter: none;
      -webkit-filter: none;
      filter: none;
      transition: opacity 0.3s ease-in-out;
      position: absolute;
      width: 428px;
      height: 123px;
      margin-left: -214px;
      margin-top: -61.5px;
      top: 50%;
      left: 50%;
    }
    .dropzone .dz-default.dz-message span {
      display: none;
    }
    .dropzone.dz-square .dz-default.dz-message {
      background-position: 0 -123px;
      width: 268px;
      margin-left: -134px;
      height: 174px;
      margin-top: -87px;
    }
    .dropzone.dz-drag-hover .dz-message {
      opacity: 0.15;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=15)";
      filter: alpha(opacity=15);
    }
    .dropzone.dz-started .dz-message {
      display: block;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      filter: alpha(opacity=0);
    }
    .dropzone .dz-preview,
    .dropzone-previews .dz-preview {
      font-size: 14px;
    }
    .dropzone .dz-preview.dz-image-preview:hover .dz-details img,
    .dropzone-previews .dz-preview.dz-image-preview:hover .dz-details img {
      display: block;
      opacity: 0.1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)";
      filter: alpha(opacity=10);
    }
    .dropzone .dz-preview.dz-success .dz-success-mark,
    .dropzone-previews .dz-preview.dz-success .dz-success-mark {
      opacity: 1;
      -ms-filter: none;
      -webkit-filter: none;
      filter: none;
    }
    .dropzone .dz-preview.dz-error .dz-error-mark,
    .dropzone-previews .dz-preview.dz-error .dz-error-mark {
      opacity: 1;
      -ms-filter: none;
      -webkit-filter: none;
      filter: none;
    }
    .dropzone .dz-preview .dz-error-mark,
    .dropzone-previews .dz-preview .dz-error-mark,
    .dropzone .dz-preview .dz-success-mark,
    .dropzone-previews .dz-preview .dz-success-mark {
      display: block;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      filter: alpha(opacity=0);
      transition: opacity 0.4s ease-in-out;
    }
    .dropzone .dz-preview .dz-error-mark span,
    .dropzone-previews .dz-preview .dz-error-mark span,
    .dropzone .dz-preview .dz-success-mark span,
    .dropzone-previews .dz-preview .dz-success-mark span {
      display: none;
    }
    .dropzone .dz-preview .dz-progress .dz-upload,
    .dropzone-previews .dz-preview .dz-progress .dz-upload {
      -webkit-animation: loading 0.4s linear infinite;
      -ms-animation: loading 0.4s linear infinite;
      animation: loading 0.4s linear infinite;
      transition: width 0.3s ease-in-out;
      border-radius: 2px;
      position: absolute;
      top: 0;
      left: 0;
      width: 0%;
      height: 100%;
    }
    .dropzone .dz-preview.dz-success .dz-progress,
    .dropzone-previews .dz-preview.dz-success .dz-progress {
      display: block;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      filter: alpha(opacity=0);
      transition: opacity 0.4s ease-in-out;
    }
    .dropzone .dz-preview .dz-error-message,
    .dropzone-previews .dz-preview .dz-error-message {
      display: block;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      filter: alpha(opacity=0);
      transition: opacity 0.3s ease-in-out;
    }
    .dropzone .dz-preview:hover.dz-error .dz-error-message,
    .dropzone-previews .dz-preview:hover.dz-error .dz-error-message {
      opacity: 1;
      -ms-filter: none;
      -webkit-filter: none;
      filter: none;
    }
    .dropzone a.dz-remove,
    .dropzone-previews a.dz-remove {
      border-radius: 2px;
      border: 1px solid;
      text-decoration: none;
      display: block;
      padding: 4px 5px;
      text-align: center;
      margin-top: 26px;
    }
    .dropzone a.dz-remove:hover,
    .dropzone-previews a.dz-remove:hover {
      color: #666;
    }
  /* -----------------------------------------
     Codemirror
     ----------------------------------------- */
     /* BASICS */
     .CodeMirror {
      /* Set height, width, borders, and global font properties here */
      font-family: monospace;
      height: 300px;
      z-index: 1;
    }
    .CodeMirror-scroll {
      /* Set scrolling behaviour here */
      overflow: auto;
    }
    /* PADDING */
    .CodeMirror-lines {
      padding: 4px 0;
      /* Vertical padding around content */
    }
    .CodeMirror pre {
      padding: 0 4px;
      /* Horizontal padding of content */
    }
    .CodeMirror-scrollbar-filler,
    .CodeMirror-gutter-filler {
      background-color: white;
      /* The little square between H and V scrollbars */
    }
    /* GUTTER */
    .CodeMirror-gutters {
      border-right: 1px solid #ddd;
      background-color: #f7f7f7;
      white-space: nowrap;
    }
    .CodeMirror-linenumber {
      padding: 0 3px 0 5px;
      min-width: 20px;
      text-align: right;
      color: #999;
      box-sizing: content-box;
    }
    .CodeMirror-guttermarker {
      color: black;
    }
    .CodeMirror-guttermarker-subtle {
      color: #999;
    }
    /* CURSOR */
    .CodeMirror div.CodeMirror-cursor {
      border-left: 1px solid black;
    }
    /* Shown when moving in bi-directional text */
    .CodeMirror div.CodeMirror-secondarycursor {
      border-left: 1px solid silver;
    }
    .CodeMirror.cm-fat-cursor div.CodeMirror-cursor {
      width: auto;
      border: 0;
      background: #7e7;
    }
    .CodeMirror.cm-fat-cursor div.CodeMirror-cursors {
      z-index: 1;
    }
    .cm-animate-fat-cursor {
      width: auto;
      border: 0;
      -webkit-animation: blink 1.06s steps(1) infinite;
      animation: blink 1.06s steps(1) infinite;
    }
    @-webkit-keyframes blink {
      0% {
        background: #7e7;
      }
      50% {
        background: none;
      }
      100% {
        background: #7e7;
      }
    }
    @keyframes blink {
      0% {
        background: #7e7;
      }
      50% {
        background: none;
      }
      100% {
        background: #7e7;
      }
    }
    /* Can style cursor different in overwrite (non-insert) mode */
    .cm-tab {
      display: inline-block;
      text-decoration: inherit;
    }
    .CodeMirror-ruler {
      border-left: 1px solid #ccc;
      position: absolute;
    }
    /* DEFAULT THEME */
    .cm-s-default .cm-keyword {
      color: #708;
    }
    .cm-s-default .cm-atom {
      color: #219;
    }
    .cm-s-default .cm-number {
      color: #164;
    }
    .cm-s-default .cm-def {
      color: #00f;
    }
    .cm-s-default .cm-variable-2 {
      color: #05a;
    }
    .cm-s-default .cm-variable-3 {
      color: #085;
    }
    .cm-s-default .cm-comment {
      color: #a50;
    }
    .cm-s-default .cm-string {
      color: #a11;
    }
    .cm-s-default .cm-string-2 {
      color: #f50;
    }
    .cm-s-default .cm-meta {
      color: #555;
    }
    .cm-s-default .cm-qualifier {
      color: #555;
    }
    .cm-s-default .cm-builtin {
      color: #30a;
    }
    .cm-s-default .cm-bracket {
      color: #997;
    }
    .cm-s-default .cm-tag {
      color: #170;
    }
    .cm-s-default .cm-attribute {
      color: #00c;
    }
    .cm-s-default .cm-header {
      color: blue;
    }
    .cm-s-default .cm-quote {
      color: #090;
    }
    .cm-s-default .cm-hr {
      color: #999;
    }
    .cm-s-default .cm-link {
      color: #00c;
    }
    .cm-negative {
      color: #d44;
    }
    .cm-positive {
      color: #292;
    }
    .cm-header,
    .cm-strong {
      font-weight: bold;
    }
    .cm-em {
      font-style: italic;
    }
    .cm-link {
      text-decoration: underline;
    }
    .cm-strikethrough {
      text-decoration: line-through;
    }
    .cm-s-default .cm-error {
      color: #f00;
    }
    .cm-invalidchar {
      color: #f00;
    }
    /* Default styles for common addons */
    div.CodeMirror span.CodeMirror-matchingbracket {
      color: #0f0;
    }
    div.CodeMirror span.CodeMirror-nonmatchingbracket {
      color: #f22;
    }
    .CodeMirror-matchingtag {
      background: rgba(255, 150, 0, 0.3);
    }
    .CodeMirror-activeline-background {
      background: #e8f2ff;
    }
    /* STOP */
  /* The rest of this file contains styles related to the mechanics of
  the editor. You probably shouldn't touch them. */
  .CodeMirror {
    line-height: 1;
    position: relative;
    overflow: hidden;
    background: white;
    color: black;
  }
  .CodeMirror-scroll {
    /* 30px is the magic margin used to hide the element's real scrollbars */
    /* See overflow: hidden in .CodeMirror */
    margin-bottom: -30px;
    margin-right: -30px;
    padding-bottom: 30px;
    height: 100%;
    outline: none;
    /* Prevent dragging from highlighting the element */
    position: relative;
    box-sizing: content-box;
  }
  .CodeMirror-sizer {
    position: relative;
    border-right: 30px solid transparent;
    box-sizing: content-box;
  }
  /* The fake, visible scrollbars. Used to force redraw during scrolling
     before actuall scrolling happens, thus preventing shaking and
     flickering artifacts. */
     .CodeMirror-vscrollbar,
     .CodeMirror-hscrollbar,
     .CodeMirror-scrollbar-filler,
     .CodeMirror-gutter-filler {
      position: absolute;
      z-index: 6;
      display: none;
    }
    .CodeMirror-vscrollbar {
      right: 0;
      top: 0;
      overflow-x: hidden;
      overflow-y: scroll;
    }
    .CodeMirror-hscrollbar {
      bottom: 0;
      left: 0;
      overflow-y: hidden;
      overflow-x: scroll;
    }
    .CodeMirror-scrollbar-filler {
      right: 0;
      bottom: 0;
    }
    .CodeMirror-gutter-filler {
      left: 0;
      bottom: 0;
    }
    .CodeMirror-gutters {
      position: absolute;
      left: 0;
      top: 0;
      padding-bottom: 30px;
      z-index: 3;
    }
    .CodeMirror-gutter {
      white-space: normal;
      height: 100%;
      box-sizing: content-box;
      padding-bottom: 30px;
      margin-bottom: -32px;
      display: inline-block;
      /* Hack to make IE7 behave */
      *zoom: 1;
      *display: inline;
    }
    .CodeMirror-gutter-wrapper {
      position: absolute;
      z-index: 4;
      height: 100%;
    }
    .CodeMirror-gutter-elt {
      position: absolute;
      cursor: default;
      z-index: 4;
    }
    .CodeMirror-lines {
      cursor: text;
      min-height: 1px;
      /* prevents collapsing before first draw */
    }
    .CodeMirror pre {
      /* Reset some styles that the rest of the page might have set */
      border-radius: 0;
      border-width: 0;
      background: transparent;
      font-family: inherit;
      font-size: inherit;
      margin: 0;
      white-space: pre;
      word-wrap: normal;
      line-height: inherit;
      color: inherit;
      z-index: 2;
      position: relative;
      overflow: visible;
    }
    .CodeMirror-wrap pre {
      word-wrap: break-word;
      white-space: pre-wrap;
      word-break: normal;
    }
    .CodeMirror-linebackground {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      z-index: 0;
    }
    .CodeMirror-linewidget {
      position: relative;
      z-index: 2;
      overflow: auto;
    }
    .CodeMirror-wrap .CodeMirror-scroll {
      overflow-x: hidden;
    }
    .CodeMirror-measure {
      position: absolute;
      width: 100%;
      height: 0;
      overflow: hidden;
      visibility: hidden;
    }
    .CodeMirror-measure pre {
      position: static;
    }
    .CodeMirror div.CodeMirror-cursor {
      position: absolute;
      border-right: none;
      width: 0;
    }
    div.CodeMirror-cursors {
      visibility: hidden;
      position: relative;
      z-index: 3;
    }
    .CodeMirror-focused div.CodeMirror-cursors {
      visibility: visible;
    }
    .CodeMirror-selected {
      background: #d9d9d9;
    }
    .CodeMirror-focused .CodeMirror-selected {
      background: #d7d4f0;
    }
    .CodeMirror-crosshair {
      cursor: crosshair;
    }
    .cm-searching {
      background: #ffa;
      background: rgba(255, 255, 0, 0.4);
    }
    /* IE7 hack to prevent it from returning funny offsetTops on the spans */
    .CodeMirror span {
      *vertical-align: text-bottom;
    }
    /* Used to force a border model for a node */
    .cm-force-border {
      padding-right: .1px;
    }
    @media print {
      /* Hide the cursor when printing */
      .CodeMirror div.CodeMirror-cursors {
        visibility: hidden;
      }
    }
    /* See issue #2901 */
    .cm-tab-wrap-hack:after {
      content: '';
    }
    /* Help users use markselection to safely style text background */
    span.CodeMirror-selectedtext {
      background: none;
    }
    /* Based on Sublime Text's Monokai theme */
    .cm-s-monokai.CodeMirror {
      background: #272822;
      color: #f8f8f2;
    }
    .cm-s-monokai div.CodeMirror-selected {
      background: #49483E !important;
    }
    .cm-s-monokai .CodeMirror-gutters {
      background: #272822;
      border-right: 0px;
    }
    .cm-s-monokai .CodeMirror-guttermarker {
      color: white;
    }
    .cm-s-monokai .CodeMirror-guttermarker-subtle {
      color: #d0d0d0;
    }
    .cm-s-monokai .CodeMirror-linenumber {
      color: #d0d0d0;
    }
    .cm-s-monokai .CodeMirror-cursor {
      border-left: 1px solid #f8f8f0 !important;
    }
    .cm-s-monokai span.cm-comment {
      color: #75715e;
    }
    .cm-s-monokai span.cm-atom {
      color: #ae81ff;
    }
    .cm-s-monokai span.cm-number {
      color: #ae81ff;
    }
    .cm-s-monokai span.cm-property,
    .cm-s-monokai span.cm-attribute {
      color: #a6e22e;
    }
    .cm-s-monokai span.cm-keyword {
      color: #f92672;
    }
    .cm-s-monokai span.cm-string {
      color: #e6db74;
    }
    .cm-s-monokai span.cm-variable {
      color: #a6e22e;
    }
    .cm-s-monokai span.cm-variable-2 {
      color: #9effff;
    }
    .cm-s-monokai span.cm-def {
      color: #fd971f;
    }
    .cm-s-monokai span.cm-bracket {
      color: #f8f8f2;
    }
    .cm-s-monokai span.cm-tag {
      color: #f92672;
    }
    .cm-s-monokai span.cm-link {
      color: #ae81ff;
    }
    .cm-s-monokai span.cm-error {
      background: #f92672;
      color: #f8f8f0;
    }
    .cm-s-monokai .CodeMirror-activeline-background {
      background: #373831 !important;
    }
    .cm-s-monokai .CodeMirror-matchingbracket {
      text-decoration: underline;
      color: white !important;
    }
  /* -----------------------------------------
     Prism styles
     ----------------------------------------- */
     /* http://prismjs.com/download.html?themes=prism&languages=markup+css+clike+javascript+aspnet+c+csharp+coffeescript+ruby+css-extras+git+handlebars+java+objectivec+perl+php+php-extras+python+scss+sql+swift&plugins=line-highlight+line-numbers+autolinker+file-highlight+show-language */
     code[class*="language-"],
     pre[class*="language-"] {
      color: black;
      text-shadow: 0 1px white;
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      direction: ltr;
      text-align: left;
      white-space: pre;
      word-spacing: normal;
      word-break: normal;
      word-wrap: normal;
      line-height: 1.5;
      -moz-tab-size: 4;
      tab-size: 4;
      -webkit-hyphens: none;
      -moz-hyphens: none;
      -ms-hyphens: none;
      hyphens: none;
    }
    pre[class*="language-"]::-moz-selection,
    pre[class*="language-"] ::-moz-selection,
    code[class*="language-"]::-moz-selection,
    code[class*="language-"] ::-moz-selection {
      text-shadow: none;
      background: #fafafa;
    }
    pre[class*="language-"]::selection,
    pre[class*="language-"] ::selection,
    code[class*="language-"]::selection,
    code[class*="language-"] ::selection {
      text-shadow: none;
      background: #fafafa;
    }
    @media print {
      code[class*="language-"],
      pre[class*="language-"] {
        text-shadow: none;
      }
    }
    /* Code blocks */
    pre[class*="language-"] {
      padding: 1em;
      margin: 1em 0;
      overflow: auto;
    }
    :not(pre) > code[class*="language-"],
    pre[class*="language-"] {
      background: #fafafa;
    }
    /* Inline code */
    :not(pre) > code[class*="language-"] {
      padding: .1em;
      border-radius: .3em;
    }
    .token.comment,
    .token.prolog,
    .token.doctype,
    .token.cdata {
      color: slategray;
    }
    .token.punctuation {
      color: #999;
    }
    .namespace {
      opacity: .7;
    }
    .token.property,
    .token.tag,
    .token.boolean,
    .token.number,
    .token.constant,
    .token.symbol,
    .token.deleted {
      color: #905;
    }
    .token.selector,
    .token.attr-name,
    .token.string,
    .token.char,
    .token.builtin,
    .token.inserted {
      color: #690;
    }
    .token.operator,
    .token.entity,
    .token.url,
    .language-css .token.string,
    .style .token.string {
      color: #a67f59;
      background: rgba(255, 255, 255, 0.5);
    }
    .token.atrule,
    .token.attr-value,
    .token.keyword {
      color: #07a;
    }
    .token.function {
      color: #DD4A68;
    }
    .token.regex,
    .token.important,
    .token.variable {
      color: #e90;
    }
    .token.important,
    .token.bold {
      font-weight: bold;
    }
    .token.italic {
      font-style: italic;
    }
    .token.entity {
      cursor: help;
    }
    pre[data-line] {
      position: relative;
      padding: 1em 0 1em 3em;
    }
    .line-highlight {
      position: absolute;
      left: 0;
      right: 0;
      padding: inherit 0;
      margin-top: 1em;
      /* Same as .prism’s padding-top */
      background: rgba(153, 122, 102, 0.08);
      background: linear-gradient(left, rgba(153, 122, 102, 0.1) 70%, rgba(153, 122, 102, 0));
      pointer-events: none;
      line-height: inherit;
      white-space: pre;
    }
    .line-highlight:before,
    .line-highlight[data-end]:after {
      content: attr(data-start);
      position: absolute;
      top: .4em;
      left: .6em;
      min-width: 1em;
      padding: 0 .5em;
      background-color: rgba(153, 122, 102, 0.4);
      color: #f5f2f0;
      font: bold 65%/1.5 sans-serif;
      text-align: center;
      vertical-align: .3em;
      border-radius: 999px;
      text-shadow: none;
      box-shadow: 0 1px white;
    }
    .line-highlight[data-end]:after {
      content: attr(data-end);
      top: auto;
      bottom: .4em;
    }
    pre.line-numbers {
      position: relative;
      padding-left: 3.8em;
      counter-reset: linenumber;
    }
    pre.line-numbers > code {
      position: relative;
    }
    .line-numbers .line-numbers-rows {
      position: absolute;
      pointer-events: none;
      top: 0;
      font-size: 100%;
      left: -3.8em;
      width: 3em;
      /* works for line-numbers below 1000 lines */
      letter-spacing: -1px;
      border-right: 1px solid #999;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    .line-numbers-rows > span {
      pointer-events: none;
      display: block;
      counter-increment: linenumber;
    }
    .line-numbers-rows > span:before {
      content: counter(linenumber);
      color: #999;
      display: block;
      padding-right: 0.8em;
      text-align: right;
    }
    .token a {
      color: inherit;
    }
    div.prism-show-language {
      position: relative;
    }
    div.prism-show-language > div.prism-show-language-label[data-language] {
      color: #080b0d;
      background-color: #cfd8dc;
      display: inline-block;
      position: absolute;
      bottom: auto;
      left: auto;
      top: 0;
      right: 0;
      width: auto;
      height: auto;
      font-size: 0.9em;
      border-radius: 0 0 0 5px;
      padding: 0.2em 0.8em;
      text-shadow: none;
      z-index: 1;
      box-shadow: none;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none;
    }
  /* -----------------------------------------
    Noty notifications
    ----------------------------------------- */
    .noty_bar .noty_message {
      text-align: left !important;
      line-height: 22px !important;
      padding: 10px 15px !important;
    }
    .noty_bar .noty_message .noty_text:before,
    .noty_bar .noty_message .noty_text:after {
      content: " ";
      display: table;
    }
    .noty_bar .noty_message .noty_text:after {
      clear: both;
    }
    .noty_bar .noty_message .noty_text i {
      float: left;
      font-size: 24px;
      margin-right: 10px;
      margin-top: -1px;
    }
    .noty_bar .noty_message .noty_text .noty-img-avatar {
      border-radius: 2px;
      width: 20%;
      height: 20%;
      margin-right: 15px;
      float: left;
    }
    .noty_bar .noty_message .noty_text .noty-text-title {
      float: left;
      font-size: 13px;
      width: 70%;
    }
    .noty_bar .noty_message .noty_text .noty-text {
      float: left;
      display: inline-block;
      font-size: 12px;
    }
    .noty_bar .noty_message .noty_close {
      position: absolute;
      right: 15px;
      top: 10px;
      opacity: 1;
    }
    .noty_bar .noty_buttons {
      padding: 0 15px 15px;
      text-align: right;
      border-top: none;
      margin-left: -1px;
      margin-right: -1px;
    }
  /*-------------------------------------*\
      HINT.css - A CSS tooltip library
      \*-------------------------------------*/
      .hint,
      [data-hint] {
        position: relative;
        display: inline-block;
      }
      .hint:before,
      [data-hint]:before,
      .hint:after,
      [data-hint]:after {
        position: absolute;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        visibility: hidden;
        opacity: 0;
        z-index: 1000000;
        pointer-events: none;
        transition: 0.3s ease;
        transition-delay: 0ms;
      }
      .hint:hover:before,
      [data-hint]:hover:before,
      .hint:focus:before,
      [data-hint]:focus:before,
      .hint:hover:after,
      [data-hint]:hover:after,
      .hint:focus:after,
      [data-hint]:focus:after {
        visibility: visible;
        opacity: 1;
        transition-delay: 100ms;
      }
      .hint:before,
      [data-hint]:before {
        content: '';
        position: absolute;
        background: transparent;
        border: 6px solid transparent;
        z-index: 1000001;
      }
      .hint:after,
      [data-hint]:after {
        content: attr(data-hint);
        padding: 8px 10px;
        font-family: FranklinGothicWebBook, Arial, sans-serif;
        font-size: 12px;
        line-height: 13px;
        white-space: nowrap;
        border-radius: 2px;
      }
      .hint--top:before {
        margin-bottom: -12px;
      }
      .hint--top:after {
        margin-left: -18px;
      }
      .hint--top:before,
      .hint--top:after {
        bottom: 100%;
        left: 50%;
      }
      .hint--top:hover:after,
      .hint--top:focus:after,
      .hint--top:hover:before,
      .hint--top:focus:before {
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
      }
      .hint--bottom:before {
        margin-top: 3px;
      }
      .hint--bottom:after {
        margin-left: -18px;
        margin-top: 15px;
      }
      .hint--bottom:before,
      .hint--bottom:after {
        top: 100%;
        left: 50%;
      }
      .hint--bottom:hover:after,
      .hint--bottom:focus:after,
      .hint--bottom:hover:before,
      .hint--bottom:focus:before {
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
      }
      .hint--right:before {
        margin-left: -12px;
        margin-bottom: -6px;
      }
      .hint--right:after {
        margin-bottom: -14px;
      }
      .hint--right:before,
      .hint--right:after {
        left: 100%;
        bottom: 50%;
      }
      .hint--right:hover:after,
      .hint--right:focus:after,
      .hint--right:hover:before,
      .hint--right:focus:before {
        -webkit-transform: translateX(8px);
        -ms-transform: translateX(8px);
        transform: translateX(8px);
      }
      .hint--left:before {
        margin-right: -12px;
        margin-bottom: -6px;
      }
      .hint--left:after {
        margin-bottom: -14px;
      }
      .hint--left:before,
      .hint--left:after {
        right: 100%;
        bottom: 50%;
      }
      .hint--left:hover:after,
      .hint--left:focus:after,
      .hint--left:hover:before,
      .hint--left:focus:before {
        -webkit-transform: translateX(-8px);
        -ms-transform: translateX(-8px);
        transform: translateX(-8px);
      }
      .hint--always:after,
      .hint--always:before {
        opacity: 1;
        visibility: visible;
      }
      .hint--always.hint--top:after,
      .hint--always.hint-bottom:after,
      .hint--always.hint--top:before,
      .hint--always.hint-bottom:before {
        webkit-transform: translateY(-8px);
        -webkit-transform: translateY(-8px);
        -ms-transform: translateY(-8px);
        transform: translateY(-8px);
      }
      .hint--always.hint--left:after,
      .hint--always.hint--right:after,
      .hint--always.hint--left:before,
      .hint--always.hint--right:before {
        -webkit-transform: translateX(8px);
        -ms-transform: translateX(8px);
        transform: translateX(8px);
      }
  /* -----------------------------------------
     Bootstrap sliders
     ----------------------------------------- */
     .slider {
      display: inline-block;
      vertical-align: middle;
      position: relative;
      margin-top: 9px;
    }
    .slider.slider-horizontal {
      width: 100%;
      height: 16px;
    }
    .slider.slider-horizontal .slider-track {
      height: 8px;
      width: 100%;
      margin-top: -4px;
      top: 50%;
      left: 0;
    }
    .slider.slider-horizontal .slider-selection {
      height: 100%;
      top: 0;
      bottom: 0;
    }
    .slider.slider-horizontal .slider-handle {
      margin-left: -8px;
      margin-top: -6.4px;
    }
    .slider.slider-vertical {
      height: 210px;
      width: 16px;
      margin-right: 10px;
    }
    .slider.slider-vertical .slider-track {
      width: 8px;
      height: 100%;
      margin-left: -4px;
      left: 50%;
      top: 0;
    }
    .slider.slider-vertical .slider-selection {
      width: 100%;
      left: 0;
      top: 0;
      bottom: 0;
    }
    .slider.slider-vertical .slider-handle {
      margin-left: -5.92592593px;
      margin-top: -8px;
    }
    .slider.slider-disabled .slider-track {
      cursor: not-allowed;
    }
    .slider input {
      display: none;
    }
    .slider .tooltip.top {
      margin-top: -36px;
    }
    .slider .tooltip-inner {
      white-space: nowrap;
    }
    .slider .hide {
      display: none;
    }
    .slider-track {
      position: absolute;
      cursor: pointer;
    }
    .slider-selection {
      position: absolute;
      -ms-box-sizing: border-box;
      box-sizing: border-box;
      border-radius: 2px;
    }
    .slider-handle {
      position: absolute;
      width: 20px;
      height: 20px;
      -webkit-filter: none;
      filter: none;
      border-radius: 50%;
    }
  /* -----------------------------------------
     Nestable lists
     ----------------------------------------- */
     .dd {
      position: relative;
      display: block;
      margin: 0;
      padding: 0;
      max-width: 600px;
      list-style: none;
      font-size: 13px;
      line-height: 20px;
    }
    .dd-list {
      display: block;
      position: relative;
      margin: 0;
      padding: 0;
      list-style: none;
    }
    .dd-list .dd-list {
      padding-left: 30px;
    }
    .dd-collapsed .dd-list {
      display: none;
    }
    .dd-item,
    .dd-empty,
    .dd-placeholder {
      display: block;
      position: relative;
      margin: 0;
      padding: 0;
      min-height: 20px;
      font-size: 13px;
      line-height: 20px;
    }
    .dd-handle {
      display: block;
      height: 30px;
      margin: 5px 0;
      padding: 5px 10px;
      color: #333;
      text-decoration: none;
      font-weight: bold;
      border: 1px solid #ccc;
      background: #fafafa;
      background: linear-gradient(top, #fafafa 0%, #eeeeee 100%);
      border-radius: 3px;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
    }
    .dd-handle:hover {
      color: #2ea8e5;
      background: #fff;
    }
    .dd-item > button {
      display: block;
      position: relative;
      cursor: pointer;
      float: left;
      width: 25px;
      height: 20px;
      margin: 5px 0;
      padding: 0;
      text-indent: 100%;
      white-space: nowrap;
      overflow: hidden;
      border: 0;
      background: transparent;
      font-size: 12px;
      line-height: 1;
      text-align: center;
      font-weight: bold;
    }
    .dd-item > button:before {
      content: '+';
      display: block;
      position: absolute;
      width: 100%;
      text-align: center;
      text-indent: 0;
    }
    .dd-item > button[data-action="collapse"]:before {
      content: '-';
    }
    .dd-placeholder,
    .dd-empty {
      margin: 5px 0;
      padding: 0;
      min-height: 30px;
      background: #f2fbff;
      border: 1px dashed #b6bcbf;
      box-sizing: border-box;
      -moz-box-sizing: border-box;
    }
    .dd-empty {
      border: 1px dashed #bbb;
      min-height: 100px;
      background-color: #e5e5e5;
      background-image: linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff), linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff);
      background-size: 60px 60px;
      background-position: 0 0, 30px 30px;
    }
    .dd-dragel {
      position: absolute;
      pointer-events: none;
      z-index: 9999;
    }
    .dd-dragel > .dd-item .dd-handle {
      margin-top: 0;
    }
    .dd-dragel .dd-handle {
      box-shadow: 2px 4px 6px 0 rgba(0, 0, 0, 0.1);
    }
  /**
   * Nestable Extras
   */
   .nestable-lists {
    display: block;
    clear: both;
    padding: 30px 0;
    width: 100%;
    border: 0;
    border-top: 2px solid #ddd;
    border-bottom: 2px solid #ddd;
  }
  #nestable-menu {
    padding: 0;
    margin: 20px 0;
  }
  #nestable-output,
  #nestable2-output {
    width: 100%;
    height: 7em;
    font-size: 0.75em;
    line-height: 1.333333em;
    font-family: FranklinGothicWebBook, Arial, sans-serif;
    padding: 5px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
  }
  #nestable2 .dd-handle {
    color: #fff;
    border: 1px solid #999;
    background: #bbb;
    background: linear-gradient(top, #bbbbbb 0%, #999999 100%);
  }
  #nestable2 .dd-handle:hover {
    background: #bbb;
  }
  #nestable2 .dd-item > button:before {
    color: #fff;
  }
  @media only screen and (min-width: 700px) {
    .dd {
      float: left;
      width: 48%;
    }
    .dd + .dd {
      margin-left: 2%;
    }
  }
  .dd-hover > .dd-handle {
    background: #2ea8e5 !important;
  }
  /**
   * Nestable Draggable Handles
   */
   .dd3-content {
    display: block;
    height: 30px;
    margin: 5px 0;
    padding: 5px 10px 5px 40px;
    color: #333;
    text-decoration: none;
    font-weight: bold;
    border: 1px solid #ccc;
    background: #fafafa;
    background: linear-gradient(top, #fafafa 0%, #eeeeee 100%);
    border-radius: 3px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
  }
  .dd3-content:hover {
    color: #2ea8e5;
    background: #fff;
  }
  .dd-dragel > .dd3-item > .dd3-content {
    margin: 0;
  }
  .dd3-item > button {
    margin-left: 30px;
  }
  .dd3-handle {
    position: absolute;
    margin: 0;
    left: 0;
    top: 0;
    cursor: pointer;
    width: 30px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border: 1px solid #aaa;
    background: #ddd;
    background: linear-gradient(top, #dddddd 0%, #bbbbbb 100%);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .dd3-handle:before {
    content: '≡';
    display: block;
    position: absolute;
    left: 0;
    top: 3px;
    width: 100%;
    text-align: center;
    text-indent: 0;
    color: #fff;
    font-size: 20px;
    font-weight: normal;
  }
  .dd3-handle:hover {
    background: #ddd;
  }
  /* -----------------------------------------
     Bootstrap treeview
     ----------------------------------------- */
     .treeview .list-group-item {
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    .treeview span.indent {
      margin-left: 10px;
      margin-right: 10px;
    }
    .treeview span.icon {
      width: 12px;
      margin-right: 5px;
    }
    .treeview .node-disabled {
      color: silver;
      cursor: not-allowed;
    }
  /* -----------------------------------------
     Datatables 1.10.9
     ----------------------------------------- */
     table.dataTable {
      clear: both;
      margin-top: 6px !important;
      margin-bottom: 6px !important;
      max-width: none !important;
    }
    table.dataTable td,
    table.dataTable th {
      box-sizing: content-box;
    }
    table.dataTable td.dataTables_empty,
    table.dataTable th.dataTables_empty {
      text-align: center;
    }
    table.dataTable.nowrap th,
    table.dataTable.nowrap td {
      white-space: nowrap;
    }
    div.dataTables_wrapper div.dataTables_length label {
      font-weight: normal;
      text-align: left;
      white-space: nowrap;
    }
    div.dataTables_wrapper div.dataTables_length select {
      width: 75px;
      display: inline-block;
    }
    div.dataTables_wrapper div.dataTables_filter {
      text-align: right;
    }
    div.dataTables_wrapper div.dataTables_filter label {
      font-weight: normal;
      white-space: nowrap;
      text-align: left;
    }
    div.dataTables_wrapper div.dataTables_filter input {
      margin-left: 0.5em;
      display: inline-block;
      width: auto;
    }
    div.dataTables_wrapper div.dataTables_info {
      padding-top: 8px;
      white-space: nowrap;
    }
    div.dataTables_wrapper div.dataTables_paginate {
      margin: 0;
      white-space: nowrap;
      text-align: right;
    }
    div.dataTables_wrapper div.dataTables_paginate ul.pagination {
      margin: 2px 0;
      white-space: nowrap;
    }
    table.dataTable thead > tr > th.sorting_asc,
    table.dataTable thead > tr > th.sorting_desc,
    table.dataTable thead > tr > th.sorting,
    table.dataTable thead > tr > td.sorting_asc,
    table.dataTable thead > tr > td.sorting_desc,
    table.dataTable thead > tr > td.sorting {
      padding-right: 30px;
    }
    table.dataTable thead > tr > th:active,
    table.dataTable thead > tr > td:active {
      outline: none;
    }
    table.dataTable thead .sorting,
    table.dataTable thead .sorting_asc,
    table.dataTable thead .sorting_desc,
    table.dataTable thead .sorting_asc_disabled,
    table.dataTable thead .sorting_desc_disabled {
      cursor: pointer;
      position: relative;
    }
    table.dataTable thead .sorting:after,
    table.dataTable thead .sorting_asc:after,
    table.dataTable thead .sorting_desc:after,
    table.dataTable thead .sorting_asc_disabled:after,
    table.dataTable thead .sorting_desc_disabled:after {
      position: absolute;
      bottom: 8px;
      right: 8px;
      display: block;
      font-family: 'Glyphicons Halflings';
      opacity: 0.5;
    }
    table.dataTable thead .sorting:after {
      opacity: 0.2;
      content: "\e150";
      /* sort */
    }
    table.dataTable thead .sorting_asc:after {
      content: "\e155";
      /* sort-by-attributes */
    }
    table.dataTable thead .sorting_desc:after {
      content: "\e156";
      /* sort-by-attributes-alt */
    }
    div.dataTables_scrollHead table.dataTable {
      margin-bottom: 0 !important;
    }
    div.dataTables_scrollBody table {
      margin-top: 0 !important;
      margin-bottom: 0 !important;
    }
    div.dataTables_scrollBody table thead .sorting:after,
    div.dataTables_scrollBody table thead .sorting_asc:after,
    div.dataTables_scrollBody table thead .sorting_desc:after {
      display: none;
    }
    div.dataTables_scrollFoot table {
      margin-top: 0 !important;
    }
    @media screen and (max-width: 767px) {
      div.dataTables_wrapper div.dataTables_length,
      div.dataTables_wrapper div.dataTables_filter,
      div.dataTables_wrapper div.dataTables_info,
      div.dataTables_wrapper div.dataTables_paginate {
        text-align: center;
      }
    }
    table.dataTable.table-condensed > thead > tr > th {
      padding-right: 20px;
    }
    table.dataTable.table-condensed .sorting:after,
    table.dataTable.table-condensed .sorting_asc:after,
    table.dataTable.table-condensed .sorting_desc:after {
      top: 6px;
      right: 6px;
    }
    table.table-bordered.dataTable {
      border-collapse: separate !important;
    }
  /* -----------------------------------------
     Datatables row fix
     ----------------------------------------- */
     .dataTables_wrapper .row {
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
    .dataTables_wrapper .row .col-xs-6:first-child {
      padding-left: 0;
    }
    .dataTables_wrapper .row .col-xs-6:last-child {
      padding-right: 0;
    }
    .dataTables_paginate .pagination {
      margin-top: -5px;
      float: right;
    }
  /* -----------------------------------------
     Responsive datatables
     ----------------------------------------- */
     table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child,
     table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child {
      position: relative;
      padding-left: 30px;
      cursor: pointer;
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child:before {
      top: 9px;
      left: 5px;
      height: 16px;
      width: 16px;
      display: block;
      position: absolute;
      border: 2px solid;
      border-radius: 16px;
      text-align: center;
      line-height: 14px;
      box-sizing: content-box;
      content: '+';
      margin-right: 5px;
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr > td:first-child.dataTables_empty:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr > th:first-child.dataTables_empty:before {
      display: none;
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,
    table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before {
      content: '-';
    }
    table.dataTable.dtr-inline.collapsed > tbody > tr.child td:before {
      display: none;
    }
    table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child,
    table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child {
      padding-left: 27px;
    }
    table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td:first-child:before,
    table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th:first-child:before {
      top: 5px;
      left: 4px;
      height: 14px;
      width: 14px;
      border-radius: 14px;
      line-height: 12px;
    }
    table.dataTable.dtr-column > tbody > tr > td.control,
    table.dataTable.dtr-column > tbody > tr > th.control {
      position: relative;
      cursor: pointer;
    }
    table.dataTable.dtr-column > tbody > tr > td.control:before,
    table.dataTable.dtr-column > tbody > tr > th.control:before {
      top: 50%;
      left: 50%;
      height: 16px;
      width: 16px;
      margin-top: -10px;
      margin-left: -10px;
      display: block;
      position: absolute;
      border: 2px solid;
      border-radius: 16px;
      text-align: center;
      line-height: 14px;
      box-sizing: content-box;
      content: '+';
    }
    table.dataTable.dtr-column > tbody > tr.parent td.control:before,
    table.dataTable.dtr-column > tbody > tr.parent th.control:before {
      content: '-';
    }
    table.dataTable > tbody > tr.child {
      padding: 0.5em 1em;
    }
    table.dataTable > tbody > tr.child ul {
      display: inline-block;
      list-style-type: none;
      margin: 0;
      padding: 0;
    }
    table.dataTable > tbody > tr.child ul li {
      border-bottom: 1px solid;
      padding: 0.5em 0;
    }
    table.dataTable > tbody > tr.child ul li:first-child {
      padding-top: 0;
    }
    table.dataTable > tbody > tr.child ul li:last-child {
      border-bottom: none;
    }
    table.dataTable > tbody > tr.child span.dtr-title {
      display: inline-block;
      min-width: 75px;
      font-weight: bold;
    }
  /* -----------------------------------------
     FullCalendar - v2.4.0 
     ----------------------------------------- */
     .fc {
      direction: ltr;
      text-align: left;
    }
    .fc-rtl {
      text-align: right;
    }
    body .fc {
      font-size: 1em;
    }
    /* Colors*/
    .fc-unthemed th,
    .fc-unthemed td,
    .fc-unthemed thead,
    .fc-unthemed tbody,
    .fc-unthemed .fc-divider,
    .fc-unthemed .fc-row,
    .fc-unthemed .fc-popover {
      border-color: #cfd8dc;
    }
    .fc-unthemed .fc-popover {
      background-color: #fff;
    }
    .fc-unthemed .fc-divider,
    .fc-unthemed .fc-popover .fc-header {
      background: #eceff1;
    }
    .fc-unthemed .fc-popover .fc-header .fc-close {
      color: #666;
    }
    .fc-unthemed .fc-today {
      background: #eceff1;
    }
    .fc-highlight {
      background: #eceff1;
      opacity: .3;
      filter: alpha(opacity=30);
    }
    .fc-bgevent {
      background: #2196f3;
      opacity: .3;
      filter: alpha(opacity=30);
    }
    .fc-nonbusiness {
      background: #d7d7d7;
    }
    .fc-icon {
      display: inline-block;
      width: 1em;
      height: 1em;
      line-height: 1em;
      font-size: 1em;
      text-align: center;
      overflow: hidden;
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    .fc-icon:after {
      position: relative;
      margin: 0 -1em;
    }
    .fc-icon-left-single-arrow:after {
      content: "\02039";
      font-weight: bold;
      font-size: 200%;
      top: -7%;
      left: 3%;
    }
    .fc-icon-right-single-arrow:after {
      content: "\0203A";
      font-weight: bold;
      font-size: 200%;
      top: -7%;
      left: -3%;
    }
    .fc-icon-left-double-arrow:after {
      content: "\000AB";
      font-size: 160%;
      top: -7%;
    }
    .fc-icon-right-double-arrow:after {
      content: "\000BB";
      font-size: 160%;
      top: -7%;
    }
    .fc-icon-left-triangle:after {
      content: "\25C4";
      font-size: 125%;
      top: 3%;
      left: -2%;
    }
    .fc-icon-right-triangle:after {
      content: "\25BA";
      font-size: 125%;
      top: 3%;
      left: 2%;
    }
    .fc-icon-down-triangle:after {
      content: "\25BC";
      font-size: 125%;
      top: 2%;
    }
    .fc-icon-x:after {
      content: "\000D7";
      font-size: 200%;
      top: 6%;
    }
    /* Buttons (styled <button> tags, normalized to work cross-browser)*/
    .fc button {
      box-sizing: border-box;
      margin: 0;
      height: 2.1em;
      padding: 0 .6em;
      font-size: 1em;
      white-space: nowrap;
      cursor: pointer;
    }
    .fc button::-moz-focus-inner {
      margin: 0;
      padding: 0;
    }
    .fc-state-default {
      border: 1px solid;
    }
    .fc-state-default.fc-corner-left {
      border-top-left-radius: 4px;
      border-bottom-left-radius: 4px;
    }
    .fc-state-default.fc-corner-right {
      border-top-right-radius: 4px;
      border-bottom-right-radius: 4px;
    }
    /* icons in buttons */
    .fc button .fc-icon {
      position: relative;
      top: -0.05em;
      margin: 0 .2em;
      vertical-align: middle;
    }
    .fc-state-default {
      background-color: #f5f5f5;
      background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
      background-repeat: repeat-x;
      border-color: #e6e6e6 #e6e6e6 #bfbfbf;
      border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
      color: #333;
      text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    }
    .fc-state-hover,
    .fc-state-down,
    .fc-state-active,
    .fc-state-disabled {
      color: #333333;
      background-color: #e6e6e6;
    }
    .fc-state-hover {
      color: #333333;
      text-decoration: none;
      background-position: 0 -15px;
      transition: background-position 0.1s linear;
    }
    .fc-state-down,
    .fc-state-active {
      background-color: #cccccc;
      background-image: none;
      box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
    }
    .fc-state-disabled {
      cursor: default;
      background-image: none;
      opacity: 0.65;
      filter: alpha(opacity=65);
      box-shadow: none;
    }
    /* Buttons Groups*/
    .fc-button-group {
      display: inline-block;
    }
    .fc .fc-button-group > * {
      float: left;
      margin: 0 0 0 -1px;
    }
    .fc .fc-button-group > :first-child {
      margin-left: 0;
    }
    /* Popover*/
    .fc-popover {
      position: absolute;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    }
    .fc-popover .fc-header {
      padding: 2px 4px;
    }
    .fc-popover .fc-header .fc-title {
      margin: 0 2px;
    }
    .fc-popover .fc-header .fc-close {
      cursor: pointer;
    }
    .fc-ltr .fc-popover .fc-header .fc-title,
    .fc-rtl .fc-popover .fc-header .fc-close {
      float: left;
    }
    .fc-rtl .fc-popover .fc-header .fc-title,
    .fc-ltr .fc-popover .fc-header .fc-close {
      float: right;
    }
    .fc-unthemed .fc-popover {
      border-width: 1px;
      border-style: solid;
    }
    .fc-unthemed .fc-popover .fc-header .fc-close {
      font-size: .9em;
      margin-top: 2px;
    }
    .fc-popover > .ui-widget-header + .ui-widget-content {
      border-top: 0;
    }
    /* Misc Reusable Components*/
    .fc-divider {
      border-style: solid;
      border-width: 1px;
    }
    hr.fc-divider {
      height: 0;
      margin: 0;
      padding: 0 0 2px;
      border-width: 1px 0;
    }
    .fc-clear {
      clear: both;
    }
    .fc-bg,
    .fc-bgevent-skeleton,
    .fc-highlight-skeleton,
    .fc-helper-skeleton {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
    }
    .fc-bg {
      bottom: 0;
    }
    .fc-bg table {
      height: 100%;
    }
    /* Tables*/
    .fc table {
      width: 100%;
      table-layout: fixed;
      border-collapse: collapse;
      border-spacing: 0;
      font-size: 1em;
    }
    .fc th {
      text-align: center;
    }
    .fc th,
    .fc td {
      border-style: solid;
      border-width: 1px;
      padding: 0;
      vertical-align: top;
    }
    .fc td.fc-today {
      border-style: double;
    }
    /* Fake Table Rows*/
    .fc .fc-row {
      border-style: solid;
      border-width: 0;
    }
    .fc-row table {
      border-left: 0 hidden transparent;
      border-right: 0 hidden transparent;
      border-bottom: 0 hidden transparent;
    }
    .fc-row:first-child table {
      border-top: 0 hidden transparent;
    }
    .fc-row {
      position: relative;
    }
    .fc-row .fc-bg {
      z-index: 1;
    }
    .fc-row .fc-bgevent-skeleton,
    .fc-row .fc-highlight-skeleton {
      bottom: 0;
    }
    .fc-row .fc-bgevent-skeleton table,
    .fc-row .fc-highlight-skeleton table {
      height: 100%;
    }
    .fc-row .fc-highlight-skeleton td,
    .fc-row .fc-bgevent-skeleton td {
      border-color: transparent;
    }
    .fc-row .fc-bgevent-skeleton {
      z-index: 2;
    }
    .fc-row .fc-highlight-skeleton {
      z-index: 3;
    }
    .fc-row .fc-content-skeleton {
      position: relative;
      z-index: 4;
      padding-bottom: 2px;
    }
    .fc-row .fc-helper-skeleton {
      z-index: 5;
    }
    .fc-row .fc-content-skeleton td,
    .fc-row .fc-helper-skeleton td {
      background: none;
      border-color: transparent;
      border-bottom: 0;
    }
    .fc-row .fc-content-skeleton tbody td,
    .fc-row .fc-helper-skeleton tbody td {
      border-top: 0;
    }
    /* Scrolling Container*/
    .fc-scroller {
      overflow-y: scroll;
      overflow-x: hidden;
    }
    .fc-scroller > * {
      position: relative;
      width: 100%;
      overflow: hidden;
    }
    /* Global Event Styles*/
    .fc-event {
      position: relative;
      display: block;
      font-size: .85em;
      line-height: 1.3;
      border-radius: 3px;
      border: 1px solid #3a87ad;
      background-color: #3a87ad;
      font-weight: normal;
    }
    .fc-event,
    .fc-event:hover,
    .ui-widget .fc-event {
      color: #fff;
      text-decoration: none;
    }
    .fc-event[href],
    .fc-event.fc-draggable {
      cursor: pointer;
    }
    .fc-not-allowed,
    .fc-not-allowed .fc-event {
      cursor: not-allowed;
    }
    .fc-event .fc-bg {
      z-index: 1;
      background: #fff;
      opacity: .25;
      filter: alpha(opacity=25);
    }
    .fc-event .fc-content {
      position: relative;
      z-index: 2;
    }
    .fc-event .fc-resizer {
      position: absolute;
      z-index: 3;
    }
    /* Horizontal Events*/
    .fc-ltr .fc-h-event.fc-not-start,
    .fc-rtl .fc-h-event.fc-not-end {
      margin-left: 0;
      border-left-width: 0;
      padding-left: 1px;
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
    .fc-ltr .fc-h-event.fc-not-end,
    .fc-rtl .fc-h-event.fc-not-start {
      margin-right: 0;
      border-right-width: 0;
      padding-right: 1px;
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }
    /* resizer */
    .fc-h-event .fc-resizer {
      top: -1px;
      bottom: -1px;
      left: -1px;
      right: -1px;
      width: 5px;
    }
    /* left resizer  */
    .fc-ltr .fc-h-event .fc-start-resizer,
    .fc-ltr .fc-h-event .fc-start-resizer:before,
    .fc-ltr .fc-h-event .fc-start-resizer:after,
    .fc-rtl .fc-h-event .fc-end-resizer,
    .fc-rtl .fc-h-event .fc-end-resizer:before,
    .fc-rtl .fc-h-event .fc-end-resizer:after {
      right: auto;
      cursor: w-resize;
    }
    /* right resizer */
    .fc-ltr .fc-h-event .fc-end-resizer,
    .fc-ltr .fc-h-event .fc-end-resizer:before,
    .fc-ltr .fc-h-event .fc-end-resizer:after,
    .fc-rtl .fc-h-event .fc-start-resizer,
    .fc-rtl .fc-h-event .fc-start-resizer:before,
    .fc-rtl .fc-h-event .fc-start-resizer:after {
      left: auto;
      cursor: e-resize;
    }
    /* DayGrid events*/
    .fc-day-grid-event {
      margin: 1px 2px 0;
      padding: 2px;
    }
    .fc-day-grid-event .fc-content {
      white-space: nowrap;
      overflow: hidden;
    }
    .fc-day-grid-event .fc-time {
      font-weight: bold;
    }
    .fc-day-grid-event .fc-resizer {
      left: -3px;
      right: -3px;
      width: 7px;
    }
    /* Event Limiting*/
    a.fc-more {
      margin: 1px 3px;
      font-size: .85em;
      cursor: pointer;
      text-decoration: none;
    }
    a.fc-more:hover {
      text-decoration: underline;
    }
    .fc-limited {
      display: none;
    }
    .fc-day-grid .fc-row {
      z-index: 1;
    }
    .fc-more-popover {
      z-index: 2;
      width: 220px;
    }
    .fc-more-popover .fc-event-container {
      padding: 10px;
    }
    .fc-toolbar {
      text-align: center;
      margin-bottom: 1em;
    }
    .fc-toolbar .fc-left {
      float: left;
    }
    .fc-toolbar .fc-right {
      float: right;
    }
    .fc-toolbar .fc-center {
      display: inline-block;
    }
    .fc .fc-toolbar > * > * {
      float: left;
      margin-left: .75em;
    }
    .fc .fc-toolbar > * > :first-child {
      margin-left: 0;
    }
    .fc-toolbar h2 {
      margin: 0;
      font-size: 16px;
      margin-top: 5px;
      margin-bottom: 5px;
    }
    .fc-toolbar button {
      position: relative;
    }
    .fc-toolbar .fc-state-hover,
    .fc-toolbar .ui-state-hover {
      z-index: 2;
    }
    .fc-toolbar .fc-state-down {
      z-index: 3;
    }
    .fc-toolbar .fc-state-active,
    .fc-toolbar .ui-state-active {
      z-index: 4;
    }
    .fc-toolbar button:focus {
      z-index: 5;
    }
    /* View Structure*/
    .fc-view-container *,
    .fc-view-container *:before,
    .fc-view-container *:after {
      box-sizing: content-box;
    }
    .fc-view,
    .fc-view > table {
      position: relative;
      z-index: 1;
    }
    /* BasicView*/
    .fc-basicWeek-view .fc-content-skeleton,
    .fc-basicDay-view .fc-content-skeleton {
      padding-top: 1px;
      padding-bottom: 1em;
    }
    .fc-basic-view .fc-body .fc-row {
      min-height: 4em;
    }
    .fc-row.fc-rigid {
      overflow: hidden;
    }
    .fc-row.fc-rigid .fc-content-skeleton {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
    }
    .fc-basic-view .fc-week-number,
    .fc-basic-view .fc-day-number {
      padding: 0 2px;
    }
    .fc-basic-view td.fc-week-number span,
    .fc-basic-view td.fc-day-number {
      padding: 0 5px;
      font-weight: bold;
      font-size: 20px;
      color: #425b6c;
    }
    .fc-basic-view .fc-week-number {
      text-align: center;
    }
    .fc-basic-view .fc-week-number span {
      display: inline-block;
      min-width: 1.25em;
    }
    .fc-ltr .fc-basic-view .fc-day-number {
      text-align: right;
    }
    .fc-rtl .fc-basic-view .fc-day-number {
      text-align: left;
    }
    .fc-day-number.fc-other-month {
      opacity: 0.3;
      filter: alpha(opacity=30);
    }
    /* AgendaView all-day area*/
    .fc-agenda-view .fc-day-grid {
      position: relative;
      z-index: 2;
    }
    .fc-agenda-view .fc-day-grid .fc-row {
      min-height: 3em;
    }
    .fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
      padding-top: 1px;
      padding-bottom: 1em;
    }
    .fc .fc-axis {
      vertical-align: middle;
      padding: 0 4px;
      white-space: nowrap;
    }
    .fc-ltr .fc-axis {
      text-align: right;
    }
    .fc-rtl .fc-axis {
      text-align: left;
    }
    .ui-widget td.fc-axis {
      font-weight: normal;
    }
    /* TimeGrid Structure*/
    .fc-time-grid-container,
    .fc-time-grid {
      position: relative;
      z-index: 1;
    }
    .fc-time-grid {
      min-height: 100%;
    }
    .fc-time-grid table {
      border: 0 hidden transparent;
    }
    .fc-time-grid > .fc-bg {
      z-index: 1;
    }
    .fc-time-grid .fc-slats,
    .fc-time-grid > hr {
      position: relative;
      z-index: 2;
    }
    .fc-time-grid .fc-bgevent-skeleton,
    .fc-time-grid .fc-content-skeleton {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
    }
    .fc-time-grid .fc-bgevent-skeleton {
      z-index: 3;
    }
    .fc-time-grid .fc-highlight-skeleton {
      z-index: 4;
    }
    .fc-time-grid .fc-content-skeleton {
      z-index: 5;
    }
    .fc-time-grid .fc-helper-skeleton {
      z-index: 6;
    }
    .fc-time-grid .fc-slats td {
      height: 1.5em;
      border-bottom: 0;
    }
    .fc-time-grid .fc-slats .fc-minor td {
      border-top-style: dotted;
    }
    .fc-time-grid .fc-slats .ui-widget-content {
      background: none;
    }
    .fc-time-grid .fc-highlight-container {
      position: relative;
    }
    .fc-time-grid .fc-highlight {
      position: absolute;
      left: 0;
      right: 0;
    }
    /* TimeGrid Event Containment*/
    .fc-time-grid .fc-event-container,
    .fc-time-grid .fc-bgevent-container {
      position: relative;
    }
    .fc-ltr .fc-time-grid .fc-event-container {
      margin: 0 2.5% 0 2px;
    }
    .fc-rtl .fc-time-grid .fc-event-container {
      margin: 0 2px 0 2.5%;
    }
    .fc-time-grid .fc-event,
    .fc-time-grid .fc-bgevent {
      position: absolute;
      z-index: 1;
    }
    .fc-time-grid .fc-bgevent {
      left: 0;
      right: 0;
    }
    /* Generic Vertical Event*/
    .fc-v-event.fc-not-start {
      border-top-width: 0;
      padding-top: 1px;
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }
    .fc-v-event.fc-not-end {
      border-bottom-width: 0;
      padding-bottom: 1px;
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0;
    }
    /* TimeGrid Event Styling*/
    .fc-time-grid-event {
      overflow: hidden;
    }
    .fc-time-grid-event .fc-time,
    .fc-time-grid-event .fc-title {
      padding: 0 1px;
    }
    .fc-time-grid-event .fc-time {
      font-size: .85em;
      white-space: nowrap;
    }
    .fc-time-grid-event.fc-short .fc-content {
      white-space: nowrap;
    }
    .fc-time-grid-event.fc-short .fc-time,
    .fc-time-grid-event.fc-short .fc-title {
      display: inline-block;
      vertical-align: top;
    }
    .fc-time-grid-event.fc-short .fc-time span {
      display: none;
    }
    .fc-time-grid-event.fc-short .fc-time:before {
      content: attr(data-start);
    }
    .fc-time-grid-event.fc-short .fc-time:after {
      content: "\000A0-\000A0";
    }
    .fc-time-grid-event.fc-short .fc-title {
      font-size: .85em;
      padding: 0;
    }
    /* resizer */
    .fc-time-grid-event .fc-resizer {
      left: 0;
      right: 0;
      bottom: 0;
      height: 8px;
      overflow: hidden;
      line-height: 8px;
      font-size: 11px;
      font-family: monospace;
      text-align: center;
      cursor: s-resize;
    }
    .fc-time-grid-event .fc-resizer:after {
      content: "=";
    }
    .fc-day-header {
      padding: 10px 0 !important;
      background-color: #eceff1;
    }
    .fc-other-month {
      background-image: linear-gradient(135deg, rgba(0, 0, 0, 0.02) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.02) 50%, rgba(0, 0, 0, 0.02) 75%, transparent 75%, transparent);
      background-color: #fff;
      background-size: 32px 32px;
    }
    #external-events {
      float: left;
      width: 100%;
      text-align: left;
    }
    #external-events .label {
      margin: 10px 0 0;
      padding: 10px;
      color: #fff;
      font-size: 1em;
      cursor: move;
      border-radius: 2px;
      width: 100%;
      text-align: left;
      font-weight: normal;
    }
    #external-events .label i {
      margin-right: 5px;
    }
    .fc-event-default {
      background-color: #cfd8dc;
      border-color: #cfd8dc;
    }
    .fc-event-success {
      background-color: #4caf50;
      border-color: #4caf50;
    }
    .fc-event-danger {
      background-color: #f44336;
      border-color: #f44336;
    }
    .fc-event-warning {
      background-color: #fbc02d;
      border-color: #fbc02d;
    }
    .fc-event-info {
      background-color: #1976d2;
      border-color: #1976d2;
    }
    .fc-content i {
      margin-right: 5px;
    }
  /* -----------------------------------------
      Gallery
      ----------------------------------------- */
      .ekko-lightbox-container {
        position: relative;
      }
      .ekko-lightbox-nav-overlay {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 100;
        width: 100%;
        height: 100%;
      }
      .ekko-lightbox-nav-overlay a {
        z-index: 100;
        display: block;
        width: 49%;
        height: 100%;
        font-size: 30px;
        color: #fff;
        text-shadow: 2px 2px 4px #000;
        opacity: 0;
        -webkit-filter: dropshadow(color=#000000, offx=2, offy=2);
        filter: dropshadow(color=#000000, offx=2, offy=2);
        transition: opacity 0.5s;
      }
      .ekko-lightbox-nav-overlay a:empty {
        width: 49%;
      }
      .ekko-lightbox a:hover {
        text-decoration: none;
        opacity: 1;
      }
      .ekko-lightbox .glyphicon-chevron-left {
        left: 0;
        float: left;
        padding-left: 15px;
        text-align: left;
      }
      .ekko-lightbox .glyphicon-chevron-right {
        right: 0;
        float: right;
        padding-right: 15px;
        text-align: right;
      }
      .ekko-lightbox .modal-footer {
        text-align: left;
      }
  /* -----------------------------------------
     Vector maps
     ----------------------------------------- */
     svg {
      -ms-touch-action: none;
      touch-action: none;
    }
    .jvectormap-container {
      width: 100%;
      height: 100%;
      position: relative;
      overflow: hidden;
      -ms-touch-action: none;
      touch-action: none;
    }
    .jvectormap-tip {
      position: absolute;
      display: none;
      border: solid 1px #455a64;
      border-radius: 2px;
      background: #455a64;
      color: #ffffff;
      font-family: FranklinGothicWebBook, Arial, sans-serif;
      font-size: smaller;
      padding: 3px 5px;
      z-index: 999;
    }
    .jvectormap-zoomin,
    .jvectormap-zoomout,
    .jvectormap-goback {
      position: absolute;
      left: 10px;
      border-radius: 2px;
      background: #607d8b;
      padding: 3px;
      color: white;
      cursor: pointer;
      line-height: 10px;
      text-align: center;
      box-sizing: content-box;
    }
    .jvectormap-zoomin,
    .jvectormap-zoomout {
      width: 10px;
      height: 10px;
    }
    .jvectormap-zoomin {
      top: 10px;
    }
    .jvectormap-zoomout {
      top: 30px;
    }
    .jvectormap-goback {
      bottom: 10px;
      z-index: 1000;
      padding: 6px;
    }
    .jvectormap-spinner {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      background: center no-repeat url(data:image/gif;base64,R0lGODlhIAAgAPMAAP///wAAAMbGxoSEhLa2tpqamjY2NlZWVtjY2OTk5Ly8vB4eHgQEBAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAIAAgAAAE5xDISWlhperN52JLhSSdRgwVo1ICQZRUsiwHpTJT4iowNS8vyW2icCF6k8HMMBkCEDskxTBDAZwuAkkqIfxIQyhBQBFvAQSDITM5VDW6XNE4KagNh6Bgwe60smQUB3d4Rz1ZBApnFASDd0hihh12BkE9kjAJVlycXIg7CQIFA6SlnJ87paqbSKiKoqusnbMdmDC2tXQlkUhziYtyWTxIfy6BE8WJt5YJvpJivxNaGmLHT0VnOgSYf0dZXS7APdpB309RnHOG5gDqXGLDaC457D1zZ/V/nmOM82XiHRLYKhKP1oZmADdEAAAh+QQJCgAAACwAAAAAIAAgAAAE6hDISWlZpOrNp1lGNRSdRpDUolIGw5RUYhhHukqFu8DsrEyqnWThGvAmhVlteBvojpTDDBUEIFwMFBRAmBkSgOrBFZogCASwBDEY/CZSg7GSE0gSCjQBMVG023xWBhklAnoEdhQEfyNqMIcKjhRsjEdnezB+A4k8gTwJhFuiW4dokXiloUepBAp5qaKpp6+Ho7aWW54wl7obvEe0kRuoplCGepwSx2jJvqHEmGt6whJpGpfJCHmOoNHKaHx61WiSR92E4lbFoq+B6QDtuetcaBPnW6+O7wDHpIiK9SaVK5GgV543tzjgGcghAgAh+QQJCgAAACwAAAAAIAAgAAAE7hDISSkxpOrN5zFHNWRdhSiVoVLHspRUMoyUakyEe8PTPCATW9A14E0UvuAKMNAZKYUZCiBMuBakSQKG8G2FzUWox2AUtAQFcBKlVQoLgQReZhQlCIJesQXI5B0CBnUMOxMCenoCfTCEWBsJColTMANldx15BGs8B5wlCZ9Po6OJkwmRpnqkqnuSrayqfKmqpLajoiW5HJq7FL1Gr2mMMcKUMIiJgIemy7xZtJsTmsM4xHiKv5KMCXqfyUCJEonXPN2rAOIAmsfB3uPoAK++G+w48edZPK+M6hLJpQg484enXIdQFSS1u6UhksENEQAAIfkECQoAAAAsAAAAACAAIAAABOcQyEmpGKLqzWcZRVUQnZYg1aBSh2GUVEIQ2aQOE+G+cD4ntpWkZQj1JIiZIogDFFyHI0UxQwFugMSOFIPJftfVAEoZLBbcLEFhlQiqGp1Vd140AUklUN3eCA51C1EWMzMCezCBBmkxVIVHBWd3HHl9JQOIJSdSnJ0TDKChCwUJjoWMPaGqDKannasMo6WnM562R5YluZRwur0wpgqZE7NKUm+FNRPIhjBJxKZteWuIBMN4zRMIVIhffcgojwCF117i4nlLnY5ztRLsnOk+aV+oJY7V7m76PdkS4trKcdg0Zc0tTcKkRAAAIfkECQoAAAAsAAAAACAAIAAABO4QyEkpKqjqzScpRaVkXZWQEximw1BSCUEIlDohrft6cpKCk5xid5MNJTaAIkekKGQkWyKHkvhKsR7ARmitkAYDYRIbUQRQjWBwJRzChi9CRlBcY1UN4g0/VNB0AlcvcAYHRyZPdEQFYV8ccwR5HWxEJ02YmRMLnJ1xCYp0Y5idpQuhopmmC2KgojKasUQDk5BNAwwMOh2RtRq5uQuPZKGIJQIGwAwGf6I0JXMpC8C7kXWDBINFMxS4DKMAWVWAGYsAdNqW5uaRxkSKJOZKaU3tPOBZ4DuK2LATgJhkPJMgTwKCdFjyPHEnKxFCDhEAACH5BAkKAAAALAAAAAAgACAAAATzEMhJaVKp6s2nIkolIJ2WkBShpkVRWqqQrhLSEu9MZJKK9y1ZrqYK9WiClmvoUaF8gIQSNeF1Er4MNFn4SRSDARWroAIETg1iVwuHjYB1kYc1mwruwXKC9gmsJXliGxc+XiUCby9ydh1sOSdMkpMTBpaXBzsfhoc5l58Gm5yToAaZhaOUqjkDgCWNHAULCwOLaTmzswadEqggQwgHuQsHIoZCHQMMQgQGubVEcxOPFAcMDAYUA85eWARmfSRQCdcMe0zeP1AAygwLlJtPNAAL19DARdPzBOWSm1brJBi45soRAWQAAkrQIykShQ9wVhHCwCQCACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiRMDjI0Fd30/iI2UA5GSS5UDj2l6NoqgOgN4gksEBgYFf0FDqKgHnyZ9OX8HrgYHdHpcHQULXAS2qKpENRg7eAMLC7kTBaixUYFkKAzWAAnLC7FLVxLWDBLKCwaKTULgEwbLA4hJtOkSBNqITT3xEgfLpBtzE/jiuL04RGEBgwWhShRgQExHBAAh+QQJCgAAACwAAAAAIAAgAAAE7xDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfZiCqGk5dTESJeaOAlClzsJsqwiJwiqnFrb2nS9kmIcgEsjQydLiIlHehhpejaIjzh9eomSjZR+ipslWIRLAgMDOR2DOqKogTB9pCUJBagDBXR6XB0EBkIIsaRsGGMMAxoDBgYHTKJiUYEGDAzHC9EACcUGkIgFzgwZ0QsSBcXHiQvOwgDdEwfFs0sDzt4S6BK4xYjkDOzn0unFeBzOBijIm1Dgmg5YFQwsCMjp1oJ8LyIAACH5BAkKAAAALAAAAAAgACAAAATwEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GGl6NoiPOH16iZKNlH6KmyWFOggHhEEvAwwMA0N9GBsEC6amhnVcEwavDAazGwIDaH1ipaYLBUTCGgQDA8NdHz0FpqgTBwsLqAbWAAnIA4FWKdMLGdYGEgraigbT0OITBcg5QwPT4xLrROZL6AuQAPUS7bxLpoWidY0JtxLHKhwwMJBTHgPKdEQAACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GAULDJCRiXo1CpGXDJOUjY+Yip9DhToJA4RBLwMLCwVDfRgbBAaqqoZ1XBMHswsHtxtFaH1iqaoGNgAIxRpbFAgfPQSqpbgGBqUD1wBXeCYp1AYZ19JJOYgH1KwA4UBvQwXUBxPqVD9L3sbp2BNk2xvvFPJd+MFCN6HAAIKgNggY0KtEBAAh+QQJCgAAACwAAAAAIAAgAAAE6BDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfYIDMaAFdTESJeaEDAIMxYFqrOUaNW4E4ObYcCXaiBVEgULe0NJaxxtYksjh2NLkZISgDgJhHthkpU4mW6blRiYmZOlh4JWkDqILwUGBnE6TYEbCgevr0N1gH4At7gHiRpFaLNrrq8HNgAJA70AWxQIH1+vsYMDAzZQPC9VCNkDWUhGkuE5PxJNwiUK4UfLzOlD4WvzAHaoG9nxPi5d+jYUqfAhhykOFwJWiAAAIfkECQoAAAAsAAAAACAAIAAABPAQyElpUqnqzaciSoVkXVUMFaFSwlpOCcMYlErAavhOMnNLNo8KsZsMZItJEIDIFSkLGQoQTNhIsFehRww2CQLKF0tYGKYSg+ygsZIuNqJksKgbfgIGepNo2cIUB3V1B3IvNiBYNQaDSTtfhhx0CwVPI0UJe0+bm4g5VgcGoqOcnjmjqDSdnhgEoamcsZuXO1aWQy8KAwOAuTYYGwi7w5h+Kr0SJ8MFihpNbx+4Erq7BYBuzsdiH1jCAzoSfl0rVirNbRXlBBlLX+BP0XJLAPGzTkAuAOqb0WT5AH7OcdCm5B8TgRwSRKIHQtaLCwg1RAAAOwAAAAAAAAAAAA==);
    }
    .jvectormap-legend-title {
      font-weight: bold;
      font-size: 14px;
      text-align: center;
    }
    .jvectormap-legend-cnt {
      position: absolute;
    }
    .jvectormap-legend-cnt-h {
      bottom: 0;
      right: 0;
    }
    .jvectormap-legend-cnt-v {
      top: 0;
      right: 0;
    }
    .jvectormap-legend {
      background: black;
      color: white;
      border-radius: 3px;
    }
    .jvectormap-legend-cnt-h .jvectormap-legend {
      float: left;
      margin: 0 10px 10px 0;
      padding: 3px 3px 1px 3px;
    }
    .jvectormap-legend-cnt-h .jvectormap-legend .jvectormap-legend-tick {
      float: left;
    }
    .jvectormap-legend-cnt-v .jvectormap-legend {
      margin: 10px 10px 0 0;
      padding: 3px;
    }
    .jvectormap-legend-cnt-h .jvectormap-legend-tick {
      width: 40px;
    }
    .jvectormap-legend-cnt-h .jvectormap-legend-tick-sample {
      height: 15px;
    }
    .jvectormap-legend-cnt-v .jvectormap-legend-tick-sample {
      height: 20px;
      width: 20px;
      display: inline-block;
      vertical-align: middle;
    }
    .jvectormap-legend-tick-text {
      font-size: 12px;
    }
    .jvectormap-legend-cnt-h .jvectormap-legend-tick-text {
      text-align: center;
    }
    .jvectormap-legend-cnt-v .jvectormap-legend-tick-text {
      display: inline-block;
      vertical-align: middle;
      line-height: 20px;
      padding-left: 3px;
    }
  /* -----------------------------------------
     Email app
     ----------------------------------------- */
     .email-app .email-nav-side {
      border-right: 1px solid;
    }
    .email-app .email-nav-side h5 {
      font-weight: bold;
    }
    .email-app .email-nav-side .nav li a {
      font-weight: bold;
      padding-left: 5px;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .email-app .email-nav-side .nav li a i {
      float: left;
      margin-right: 15px;
      font-size: 22px;
      margin-top: -1px;
    }
    .email-app .email-nav-side .nav li a:hover i,
    .email-app .email-nav-side .nav li a:focus i {
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .email-app .email-list {
      border-right: 1px solid;
      border-left: 1px solid;
      margin-left: -1px;
    }
    .email-app .email-list .btn-toolbar {
      margin-bottom: 15px;
    }
    .email-app .email-list .email-toolbar-search {
      margin-bottom: 15px;
    }
    .email-app .email-list .list-group {
      margin-bottom: 0;
    }
    .email-app .email-list .email-list-item {
      padding: 10px;
      position: relative;
      border-width: 0;
      border-left-width: 4px;
      margin-bottom: 5px;
    }
    .email-app .email-list .email-list-item .email-list-checkbox {
      float: left;
      margin: 0 10px;
    }
    .email-app .email-list .email-list-item .email-list-checkbox .checkbox-custom {
      padding-top: 7px;
    }
    .email-app .email-list .email-list-item .email-inbox-avatar {
      float: left;
      border-radius: 50%;
      margin-right: 15px;
      border: 2px solid;
      padding: 2px;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .email-app .email-list .email-list-item .email-inbox-name {
      width: 100%;
      font-size: 16px;
      margin-bottom: 5px;
    }
    .email-app .email-list .email-list-item .email-inbox-info {
      position: absolute;
      top: 10px;
      right: 15px;
    }
    .email-app .email-list .email-list-item .email-inbox-info .email-inbox-favorite {
      margin-right: 5px;
    }
    .email-app .email-list .email-list-item .email-inbox-info .email-inbox-attachment {
      margin-right: 5px;
    }
    .email-app .email-list .email-list-item .email-inbox-info .email-inbox-date {
      font-weight: bold;
    }
    .email-app .email-list .email-list-item .email-txt-preview {
      margin-bottom: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }
    .email-app .email-read {
      margin-top: 20px;
    }
    .email-app .email-read:before,
    .email-app .email-read:after {
      content: " ";
      display: table;
    }
    .email-app .email-read:after {
      clear: both;
    }
    .email-app .email-read .email-read-header {
      float: left;
      width: 100%;
    }
    .email-app .email-read .email-read-header .email-read-avatar {
      border-radius: 50%;
      float: left;
      margin-right: 15px;
      margin-bottom: 0;
      border: 2px solid;
      padding: 2px;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .email-app .email-read .email-read-header .email-read-name {
      margin-top: 2px;
      margin-bottom: 0;
    }
    .email-app .email-read .email-read-title {
      float: left;
      width: 100%;
    }
    .email-app .email-read .email-read-title:before,
    .email-app .email-read .email-read-title:after {
      content: " ";
      display: table;
    }
    .email-app .email-read .email-read-title:after {
      clear: both;
    }
    .email-app .email-read .email-read-title h3 {
      float: left;
    }
    .email-app .email-read .email-read-title .email-read-date {
      float: right;
      margin-top: 20px;
      margin-bottom: 10px;
    }
    .email-app .email-read .email-read-attachment {
      padding-top: 20px;
    }
  /* -----------------------------------------
     Chat app styles
     ----------------------------------------- */
     .chat-app .chat-app-header {
      height: 50px;
    }
    .chat-app .chat-app-header .chat-app-title {
      margin: 0;
      line-height: 50px;
      padding-left: 15px;
    }
    .chat-app .chat-app-header .close-right-sidebar {
      font-size: 32px;
      position: absolute;
      right: 20px;
      top: 8px;
      opacity: 0.6;
      width: 32px;
      height: 32px;
      border: 3px solid;
      border-radius: 50%;
      line-height: 26px;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .chat-app .chat-app-header .close-right-sidebar:focus {
      outline: 0;
    }
    .chat-app .chat-search {
      margin: 15px 15px 0;
    }
    .chat-app .user-list .list-group-item {
      border: none;
      line-height: 16px;
      position: relative;
      padding: 0;
    }
    .chat-app .user-list .list-group-item a {
      float: left;
      width: 100%;
      line-height: 16px;
      position: relative;
      padding: 5px 15px;
      text-decoration: none;
    }
    .chat-app .user-list .list-group-item a .avatar {
      float: left;
      margin-right: 10px;
      border-radius: 50%;
      border: 2px solid;
      padding: 2px;
      width: 42px;
      height: 42px;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .chat-app .user-list .list-group-item a .name {
      display: block;
      font-weight: bold;
      width: 100%;
      margin-top: 5px;
    }
    .chat-app .user-list .list-group-item a .status {
      width: 100%;
      display: block;
      font-size: 13px;
    }
    .chat-app .user-list .list-group-item a .status:before {
      content: "";
      border-radius: 50%;
      width: 8px;
      height: 8px;
      position: relative;
      float: left;
      margin-top: 4px;
      margin-right: 5px;
    }
    .chat-app .chat-messages {
      display: none;
    }
    .chat-app .chat-messages.open {
      display: block;
      margin-right: 0;
      position: fixed;
      padding-left: 0;
      list-style: none;
      top: 50px;
      right: 0;
      bottom: 130px;
      width: 320px;
      z-index: 10;
    }
    .chat-app .chat-messages ul {
      list-style: none;
      padding-left: 0;
      position: relative;
      height: 100%;
    }
    .chat-app .chat-messages li {
      position: relative;
      padding: 5px 15px;
      margin-bottom: 10px;
    }
    .chat-app .chat-messages li .avatar {
      float: left;
    }
    .chat-app .chat-messages li .avatar img {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      margin-right: 5px;
      border: 1px solid;
      transition: border 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .chat-app .chat-messages li .chat-name {
      margin-top: 8px;
      font-weight: bold;
    }
    .chat-app .chat-messages li .chat-name .chat-time {
      font-size: 10px;
      display: block;
      font-weight: normal;
    }
    .chat-app .chat-messages li .message {
      border-radius: 2px;
      padding: 10px;
      position: relative;
    }
    .chat-app .chat-messages li .message p {
      margin-bottom: 0;
    }
    .chat-app .chat-messages li .message:after,
    .chat-app .chat-messages li .message:before {
      bottom: 100%;
      left: 22px;
      border: solid;
      content: " ";
      height: 0;
      width: 0;
      position: absolute;
      pointer-events: none;
    }
    .chat-app .chat-messages li.chat-back {
      border-top: 1px solid;
      border-bottom: 1px solid;
      padding-left: 0;
      transition: background 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .chat-app .chat-messages li.chat-back a {
      float: none;
      display: inline-block;
      transition: all 0.4s cubic-bezier(0.445, 0.05, 0.55, 0.95);
    }
    .chat-app .chat-messages li.chat-me .avatar {
      float: right;
      margin-left: 5px;
    }
    .chat-app .chat-messages li.chat-me .chat-name {
      text-align: right;
    }
    .chat-app .chat-messages li.chat-me .message:after,
    .chat-app .chat-messages li.chat-me .message:before {
      right: 18px;
      left: auto;
    }
    .chat-app #chat-write {
      display: none;
      height: auto;
      float: left;
      position: fixed;
      bottom: 0;
      right: 0;
      width: 320px;
      border-left: 1px solid;
      z-index: 11;
    }
    .chat-app #chat-write form {
      padding: 15px;
    }
    .chat-app #chat-write.open {
      display: block;
      margin-right: 0;
    }
