html,
body,
app-root {
  height: 100vh;
  display: block;
}
body {
  overflow: hidden;
  font-size: 1rem;
  margin: 0;
  padding: 0;
}
#block-ui-wrapper {
  z-index: 3000;
}
.app-gsa {
  * {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  ul {
    list-style: none;
  }
  button {
    align-items: center;
    &[disabled] {
      opacity: 0.5;
    }
    i.fa,
    i.fas,
    svg {
      margin-right: 10px;
    }
    user-select: none;
  }
  iframe {
    border: none;
  }
  small {
    display: block;
    font-size: small;
    * {
      font-size: small;
    }
  }
  .big {
    display: block;
    font-size: small;
    * {
      font-size: small;
    }
  }
  [routerlink] {
    outline: none !important;
  }
  a,
  a:hover {
    cursor: pointer;
    color: inherit;
  }
  .breakword {
    word-break: break-word;
  }
  input {
    &[type=checkbox] {
      cursor: pointer;
      transform: translateY(1px);
      &:focus {
        box-shadow: none;
      }
    }
  }
  u,
  .underline {
    text-decoration: underline;
  }
  pre {
    font-family: monospace;
    font-size: small;
    white-space: pre-wrap;
    background: #000;
    color: #fff;
  }
  .addspaces {
    & > *:not(:last-child) {
      margin-right: 1ch;
    }
  }
  .animated {
    transition: all 0.3s cubic-bezier(0.88, 0.07, 0.18, 0.97);
  }
  .animatedSlow {
    transition: all 0.7s cubic-bezier(0.88, 0.07, 0.18, 0.97);
  }
  .bgTransp {
    background: transparent !important;
  }
  .blurry {
    -webkit-filter: blur(5px);
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
  }
  .border {
    border: #00f dashed 1px;
    &.red {
      border: #f00 dashed 1px;
    }
    &.green {
      border: #008000 dashed 1px;
    }
    &.yellow {
      border: #ff0 dashed 1px;
    }
    &.purple {
      border: #800080 dashed 1px;
    }
  }
  button {
    &[disabled] {
      cursor: not-allowed !important;
    }
  }
  .capitalized,
  .capitalize {
    text-transform: capitalize;
  }
  .centered {
    text-align: center;
  }
  .cursorPointer,
  .pointer {
    cursor: pointer;
  }
  .dev {
    background-color: #242424 !important;
    color: #fff !important;
    padding: 2px 5px !important;
    font-family: 'Roboto Mono', monospace !important;
    font-size: x-small !important;
    text-align: left !important;
    word-break: break-all;
    line-height: initial;
    * {
      color: #fff !important;
      font-size: inherit !important;
      font-family: 'Roboto Mono', monospace !important;
      word-break: break-all;
    }
  }
  .displayBlock,
  .dispBlock {
    display: block;
  }
  .displayNone,
  .dispNone {
    display: none;
  }
  .flex {
    display: flex;
  }
  .baseline {
    align-items: baseline;
  }
  .center-h,
  .center-all {
    justify-content: center;
  }
  .column {
    flex-direction: column;
  }
  .grow,
  .flexgrow,
  .flexGrow {
    flex-grow: 1;
  }
  .inline,
  .center-v,
  .center-all {
    align-items: center;
    &:not(.column) {
      & > * {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
      }
    }
  }
  .flex-end {
    justify-content: flex-end;
  }
  .row {
    flex-direction: row;
  }
  .space-around {
    justify-content: space-around;
  }
  .space-between {
    justify-content: space-between;
  }
  .stretch {
    align-items: stretch;
  }
  .wrap {
    flex-wrap: wrap;
  }
  .flexgrow,
  .flex-grow {
    flex-grow: 1;
  }
  .fullscreen {
    width: 100vw;
    height: 100%;
    position: relative;
  }
  .fullwidth,
  .fullWidth {
    width: 100%;
  }
  .grid {
    display: grid;
  }
  .hidden,
  [hidden] {
    visibility: hidden !important;
  }
  .inverted {
    -webkit-filter: invert(100%);
  }
  label {
    cursor: pointer;
  }
  .noBorder,
  .noborder {
    border: none !important;
    tr,
    td {
      border: none !important;
    }
  }
  .noevents,
  .noEvents {
    pointer-events: none;
  }
  .nohighlight,
  ui-switch {
    -webkit-tap-highlight-color: rgba(255,255,255,0);
  }
  .noMargin,
  .nomargin {
    margin: 0 !important;
  }
  .noPadding,
  .nopadding {
    padding: 0 !important;
  }
  .nogrow,
  .noGrow {
    flex-grow: 0;
  }
  .noshrink,
  .noShrink {
    flex-shrink: 0;
  }
  .noselect,
  .noSelect {
    user-select: none;
  }
  .nounderline,
  .noUnderline {
    text-decoration: none !important;
  }
  .opaque {
    opacity: 1 !important;
  }
  .overlay {
    width: 200vw;
    height: 200vh;
    position: absolute;
    top: -100vh;
    left: -100vw;
    pointer-events: none;
    &.active {
      background-color: rgba(0,0,0,0.3);
      pointer-events: auto;
    }
  }
  .positionInitial {
    position: initial;
  }
  .scroller {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    flex-shrink: 1;
    height: 100%;
    max-height: 100%;
  }
  .shadow {
    box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
  }
  .showOnHover {
    opacity: 0.2;
    &:hover {
      opacity: 1;
    }
  }
  .showButtonsOnHover {
    .buttons {
      opacity: 0.2;
    }
    &:hover {
      .buttons {
        opacity: 1;
      }
    }
  }
  .singleLine,
  .nobreak,
  .nowrap {
    white-space: nowrap;
  }
  .spinning {
    -webkit-animation: spinning 2s linear infinite;
    -moz-animation: spinning 2s linear infinite;
    -ms-animation: spinning 2s linear infinite;
    -o-animation: spinning 2s linear infinite;
    animation: spinning 2s linear infinite;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .heightWithoutHeader {
    height: calc( 100vh - 48px );
  }
  * {
    font-family: 'simplon', 'Open Sans Condensed', sans-serif;
  }
  h1 {
    font-size: 3em;
    text-transform: uppercase;
  }
  input[type='text'] {
    padding: 23px 18px;
    min-width: 200px;
    background: #fff;
    border: #ededed solid 1px;
  }
  select {
    border: #ededed solid 1px;
    padding: 15px;
    font-size: initial;
    background: #fff;
  }
  table.w-table {
    border-collapse: collapse;
    th,
    td {
      padding: 15px;
    }
    thead {
      th {
        background: #f0f0f0;
        border: #cbcbcb solid 1px;
        color: #808080;
      }
    }
    tbody {
      tr {
        &:hover {
          td {
            background: #f0f0f0;
          }
        }
        td {
          background-color: #fff;
        }
      }
    }
  }
  button {
    transition: all 0.3s cubic-bezier(0.88, 0.07, 0.18, 0.97);
    padding: 0.5rem 1rem;
    border: #cbcbcb solid 1px;
    background: #ededed;
    cursor: pointer;
    outline: none;
    align-self: center;
    color: #808080;
    * {
      color: #808080;
    }
    &[disabled] {
      opacity: 0.3 !important;
    }
    &:hover {
      box-shadow: 0 2px 4px rgba(0,0,0,0.2);
      color: #1a1a1a;
      * {
        color: #1a1a1a;
      }
    }
    &:active,
    &.pressed {
      box-shadow: inset 0 1px 3px rgba(0,0,0,0.2);
      color: #1a1a1a;
    }
    &.small {
      padding: 0.2rem 0.4rem;
      font-size: small;
      * {
        font-size: small;
      }
    }
    &.pressed,
    &.active {
      cursor: auto;
      pointer-events: none;
      background: #fff;
      color: #1a1a1a;
      * {
        color: #1a1a1a;
      }
    }
    &.primary,
    &.blue {
      border-color: #53a5be;
      background: #67d0f0;
      &:hover {
        background: #5dbad8;
      }
      &:active {
        background: #4dc0e5;
      }
    }
    &.warning,
    &.yellow {
      border-color: #cbb177;
      background: #f1c669;
    }
    &.danger,
    &.red {
      border-color: #6c0d0d;
      background: #ff8686;
      &:hover {
        background: redDim;
      }
      &:active {
        background: #f16868;
      }
    }
  }
  * {
    position: relative;
  }
  search-results-info {
    display: block;
  }
  label {
    input[type=checkbox] {
      margin-right: 0.5ch;
    }
  }
  .blueBarActions {
    .addToReport {
      h6 {
        font-size: initial;
      }
      ul {
        li {
          margin: 1ch 0;
          &.disabled {
            label {
              pointer-events: none;
              opacity: 0.5;
            }
            span.red {
              visibility: visible;
            }
          }
          span.red {
            color: #6c0d0d;
          }
        }
      }
    }
  }
  em {
    background-color: #ffde96;
  }
  suggest-multiselect {
    display: flex;
    position: relative;
    background: #fff;
    border: #cbcbcb solid 1px;
    min-height: 70px;
  }
}
@keyframes spinning {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@font-face {
  font-family: 'simplon';
  font-weight: 400;
  src: url("/fonts/SimplonNorm-Regular-WebXL.eot");
  src: url("/fonts/SimplonNorm-Regular-WebXL-.eot#iefix") format('embedded-opentype'), url("/fonts/SimplonNorm-Regular-WebXL.woff2") format('woff2'), url("/fonts/SimplonNorm-Regular-WebXL.woff") format('woff'), url("/fonts/SimplonNorm-Regular-WebXL.ttf") format('truetype'), url("/fonts/SimplonNorm-Regular-WebXL.svg#Font") format('svg');
}
@font-face {
  font-family: 'simplon';
  font-weight: 500;
  src: url("/fonts/SimplonNorm-Medium-WebXL.eot");
  src: url("/fonts/SimplonNorm-Medium-WebXL-.eot#iefix") format('embedded-opentype'), url("/fonts/SimplonNorm-Medium-WebXL.woff2") format('woff2'), url("/fonts/SimplonNorm-Medium-WebXL.woff") format('woff'), url("/fonts/SimplonNorm-Medium-WebXL.ttf") format('truetype'), url("/fonts/SimplonNorm-Medium-WebXL.svg#Font") format('svg');
}
@font-face {
  font-family: 'simplon';
  font-weight: 700;
  src: url("/fonts/SimplonNorm-Bold-WebXL.eot");
  src: url("/fonts/SimplonNorm-Bold-WebXL-.eot#iefix") format('embedded-opentype'), url("/fonts/SimplonNorm-Bold-WebXL.woff2") format('woff2'), url("/fonts/SimplonNorm-Bold-WebXL.woff") format('woff'), url("/fonts/SimplonNorm-Bold-WebXL.ttf") format('truetype'), url("/fonts/SimplonNorm-Bold-WebXL.svg#Font") format('svg');
}
