@font-face {
  font-family: 'KeepCalmBook';
  src: url("/webfonts/386EC0_0_0.eot");
  src: url("/webfonts/386EC0_0_0.eot?#iefix") format("embedded-opentype"), url("/webfonts/386EC0_0_0.woff2") format("woff2"), url("/webfonts/386EC0_0_0.woff") format("woff"), url("/webfonts/386EC0_0_0.ttf") format("truetype");
}

:root,
body,
html {
  font-family: 'KeepCalmBook', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.btn-left {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-right {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  position: relative;
  left: -3px;
  padding-left: 3px;
  padding-right: 3px;
}

.marginTop {
  margin-top: 8px;
}

.pillarName {
  font-size: 2.4em;
  font-weight: 800;
}

.pillarScore {
  font-size: 1.4em;
  color: darkred;
  text-align: center;
}

.smallItalicised {
  font-size: 0.85em;
  font-style: italic;
}

.pointer {
  cursor: pointer;
  color: #17a2b8;
}

input,
textarea,
select {
  margin: 0 0 8px;
  width: 100%;
  padding: 4px;
}

.fileContainer p {
  display: none;
}

.pull-right {
  float: right !important;
}

img {
  max-width: 100%;
}

.noMargin {
  margin: 0 !important;
}

.message_text span {
  color: #17a2b8;
  font-weight: 800;
}

.paddingTopDouble {
  padding-top: 16px;
}

/* PLAYBACK 2D */

#PlaybackWindow {
  background-color: white;
  overflow: hidden;
  border-radius: 20px;
  padding: 10px;
}

#PlaybackChart svg text {
  font-size: 10px  !important;
}

.gradientBackdrop {
  background: linear-gradient(45deg, #a4519a 0%, #54dfcc 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  padding: 20px;
}

#PlaybackChart.withImage {
  padding-top: 120px;
}

.pillarLegend {
  max-height: 100px;
}

@media only screen and (min-width: 1024px) {
  #PlaybackWindow {
    border-radius: 50px;
    padding: 20px;
  }

  #PlaybackChart svg text {
    font-size: 12px !important;
  }

  .gradientBackdrop {
    padding: 50px;
  }

  .pillarLegend {
    max-height: 200px;
  }

  #PlaybackChart.withImage {
    padding-top: 200px;
  }
}

.pillarLegend {
  position: absolute;
  left: 50px;
  top: 50px;
  z-index: 2;
  border-top-left-radius: 50px;
}

.large_message_text {
  font-size: 2em;
}

.vertical_scroller {
  top: 100%;
  left: 0px;
  position: relative;
  -webkit-transition: top 300s linear;
  transition: top 300s linear;
}

.vertical_scroller.scrolling {
  top: -20000px;
}

.announcement {
  text-align: center;
  position: relative;
  height: 100%;
  width: 100%;
}

.announcementJustifiedVertically {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 100%;
}

.announcement h1 {
  padding: 50px 0;
  font-size: 3em;
}

.announcement h2 {
  font-size: 2em;
}

@media only screen and (max-width: 991px) {
  .announcement h1 {
    font-size: 2em;
  }

  .announcement h2 {
    font-size: 1.6em;
  }
}

@media only screen and (max-width: 767px) {
  .announcement h1 {
    font-size: 1.5em;
  }

  .announcement h2 {
    font-size: 1.4em;
  }
}

@media only screen and (max-width: 577px) {
  .annouceImage {
    position: absolute;
    top: 50%;
    width: 100%;
    margin: 0 auto;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  .announcement h1 {
    font-size: 1.3em;
  }

  .announcement h2 {
    font-size: 1.2em;
  }
}

.blockColour {
  height: 20px;
  width: 100%;
  border: 1px solid black;
  border-radius: 2px;
}

.faded {
  opacity: 0.5;
}

.cryptoTable {
  width: 100%;
}

.cryptoTable tr:nth-child(even) {
  background-color: #f8f8f8;
}

.cryptoTable th,
.cryptoTable td {
  text-align: left;
  padding: 5px 10px;
}

.cryptoTable th:last-child,
.cryptoTable td:last-child {
  text-align: right;
}

.react-datepicker__input-container input {
  border: 1px solid #ced4da;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  border-radius: 2px;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

.react-datepicker-ignore-onclickoutside {
  border-color: 80bdff;
  -webkit-box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
          box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.ImageLibrary {
  overflow-y: auto;
  width: 100%;
  max-height: 400px;
}

.LibraryItem {
  width: 100px;
  height: 100px;
  cursor: pointer;
  float: left;
  position: relative;
}

.LibraryRemove {
  background-color: red;
  color: white;
  border: 2px solid white;
  width: 20px;
  height: 20px;
  border-radius: 10px;
  position: absolute;
  top: -2px;
  left: -2px;
  text-align: center;
  font-weight: bold;
  font-size: 10px;
  cursor: pointer;
}

.announceAnimation {
  opacity: 0;
  font-size: 0em;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 2s ease-in-out;
  transition: all 2s ease-in-out;
}

.announceAnimation.animate {
  font-size: 1em;
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}

@media only screen and (min-width: 992px) {
  .md-vertical-align-up {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

@media only screen and (max-width: 991px) {
  .md-vertical-align-up {
    text-align: center;
  }
}

/* ProfileData */

#ProfileData > h1,
#ProfileData > div:first-child,
#ProfileData > div > div > label {
  margin-top: .5rem;
}

