/*
 * http://meyerweb.com/eric/tools/css/reset/
 * v2.0 | 20110126
 * License: none (public domain)
 */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl,
dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time,
mark, audio, video, input {
  box-sizing: border-box;
  cursor: default;
  flex: 0 0 auto;
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  min-width: 0;
  user-select: none;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

input, textarea {
  user-select: text; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

@font-face {
  font-family: "Fira Code";
  font-style: normal;
  font-weight: 300 700;
  src: url("/fonts/fira-code.ttf") format("truetype"); }

@font-face {
  font-family: "Roboto Slab";
  font-style: normal;
  font-weight: 100 900;
  src: url("/fonts/roboto-slab.ttf") format("truetype"); }

@font-face {
  font-family: "Rubik";
  font-style: normal;
  font-weight: 300 900;
  src: url("/fonts/rubik.ttf") format("truetype"); }

@font-face {
  font-family: "Rubik";
  font-style: italic;
  font-weight: 300 900;
  src: url("/fonts/rubik-italic.ttf") format("truetype"); }

.button-row {
  /* self layout */
  margin-top: 32px;
  /* child layout */
  display: flex;
  flex-flow: row;
  align-items: baseline;
  justify-content: flex-end; }
  .button-row > * {
    margin-left: 16px; }
    .button-row > *:first-child {
      margin-left: 0; }

.disabled {
  cursor: not-allowed;
  opacity: 25%; }

.fadable {
  transition: opacity 0.25s;
  opacity: 1; }
  .fadable.faded {
    opacity: 0;
    pointer-events: none; }

.h2 {
  font-family: "Roboto Slab", serif;
  font-size: 23.4375px;
  font-weight: 500;
  color: #091321; }

.label-row label {
  display: inline-block;
  min-width: 96px; }

.label-row + .label-row {
  margin-top: 16px; }

.missing-component {
  background: #fbfcfd;
  border: 1px dashed #bf1414;
  font-family: monospace;
  color: #cbd7e9;
  text-align: center;
  padding: 48px; }

.placeholder {
  font-family: "Roboto Slab", serif;
  font-size: 23.4375px;
  font-weight: 500;
  color: #cbd7e9;
  color: #cbd7e9; }

.scroll-buffer {
  height: 48px; }

form {
  width: 100%; }
  form input {
    /* decoration */
    font-family: "Fira Code", monospace;
    font-size: 15px;
    font-weight: 400;
    color: #091321;
    border: 1px solid #2E5FA5;
    color: #2E5FA5;
    /* child layout */
    padding: 4px 8px; }
  form table {
    width: 100%; }
    form table tr td {
      /* self layout */
      padding-bottom: 16px; }
      form table tr td label, form table tr td input, form table tr td textarea {
        width: calc(100% - 16px); }
      form table tr td p.error {
        /* self layout */
        display: none;
        /* decoration */
        font-family: "Rubik", sans-serif;
        font-size: 15px;
        font-style: italic;
        font-weight: 400;
        color: #b1b2b4;
        color: #bf1414;
        /* child layout */
        padding-top: 4px; }
    form table tr:last-child td {
      padding-bottom: 0; }
    form table tr.buttons td {
      padding-top: 16px;
      text-align: right; }
    form table tr.error input, form table tr.error textarea {
      color: #bf1414;
      border-color: #bf1414; }
    form table tr.error p.error {
      display: block; }
    form table tr.error td {
      padding-top: 16px; }
    form table tr.with-jump td {
      padding-top: 48px; }
  form textarea {
    /* self layout */
    height: 96px;
    /* decoration */
    font-family: "Fira Code", monospace;
    font-size: 15px;
    font-weight: 400;
    color: #091321;
    border: 1px solid #2E5FA5;
    color: #2E5FA5;
    /* child layout */
    padding: 4px 8px; }

a {
  font-family: "Rubik", sans-serif;
  font-size: 18.75px;
  font-weight: 400;
  color: #2E5FA5;
  cursor: pointer;
  text-decoration: underline;
  transition: color 100ms; }
  a:active {
    color: #6593d4; }
  a:hover {
    color: #3d77c9; }
  a:visited {
    color: #23487d; }

em {
  font-style: italic; }

h1 {
  font-family: "Roboto Slab", serif;
  font-size: 29.29688px;
  font-weight: 500;
  color: #091321; }

h2 {
  font-family: "Roboto Slab", serif;
  font-size: 23.4375px;
  font-weight: 500;
  color: #091321; }

h3 {
  font-family: "Roboto Slab", serif;
  font-size: 18.75px;
  font-weight: 500;
  color: #091321; }

html {
  /* self layout */
  min-width: 360px;
  min-height: 100%;
  /* child layout */
  display: flex;
  flex-flow: column;
  align-items: stretch;
  justify-content: stretch; }
  html body {
    /* self layout */
    flex: 1 1 100%;
    /* decoration */
    font-family: "Rubik", sans-serif;
    font-size: 18.75px;
    font-weight: 400;
    color: #091321;
    background: #fbfcfd;
    /* self layout */
    display: flex;
    flex-flow: column;
    align-items: stretch;
    justify-content: stretch; }
    html body #app {
      /* self layout */
      flex: 1 1 100%;
      /* child layout */
      display: flex;
      flex-flow: column;
      align-items: stretch;
      justify-content: stretch; }
      html body #app > * {
        /* self layout */
        flex: 1 1 100%;
        /* child layout */
        display: flex;
        flex-flow: column;
        align-items: stretch;
        justify-content: stretch; }

i {
  font-style: italic; }

input {
  /* decoration */
  font-family: "Fira Code", monospace;
  font-size: 15px;
  font-weight: 400;
  color: #091321;
  background: #fcfcfc;
  border: 1px solid #cbd7e9;
  color: #122642;
  outline: none;
  /* child layout */
  padding: 4px; }
  input.display-only {
    /* decoration */
    background-color: rgba(0, 0, 0, 0);
    border-color: rgba(0, 0, 0, 0);
    cursor: default;
    /* child layout */
    padding-left: 0; }
    input.display-only:focus {
      background-color: rgba(0, 0, 0, 0);
      border-color: rgba(0, 0, 0, 0);
      color: #122642; }
  input:focus {
    border-color: #2E5FA5;
    color: #2E5FA5; }
  input::placeholder {
    color: #79a1da; }

label {
  font-family: "Rubik", sans-serif;
  font-size: 18.75px;
  font-weight: 400;
  color: #091321; }

ol {
  /* self layout */
  margin: 16px 0 48px 0;
  /* decoration */
  list-style-type: decimal;
  list-style-position: outside; }
  ol li {
    margin-left: 16px; }
    ol li + li {
      margin-top: 4px; }

p {
  font-family: "Rubik", sans-serif;
  font-size: 18.75px;
  font-weight: 400;
  color: #091321; }

pre {
  font-family: "Fira Code", monospace;
  font-size: 15px;
  font-weight: 400;
  color: #091321;
  overflow-x: auto; }

strong {
  font-weight: 500; }

table tr th {
  font-family: "Rubik", sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #091321; }
  table tr th a {
    font-family: "Rubik", sans-serif;
    font-size: 15px;
    font-weight: 500;
    color: #091321;
    color: #122642;
    text-decoration: none; }
    table tr th a:hover {
      color: #2E5FA5;
      text-decoration: underline; }

table tr td {
  font-family: "Rubik", sans-serif;
  font-size: 15px;
  font-weight: 300;
  color: #091321; }
  table tr td a {
    font-family: "Rubik", sans-serif;
    font-size: 15px;
    font-weight: 300;
    color: #091321;
    color: #122642;
    text-decoration: none; }
    table tr td a:hover {
      color: #2E5FA5;
      text-decoration: underline; }

textarea::placeholder {
  color: #79a1da; }

tt {
  font-family: "Fira Code", monospace;
  font-size: 15px;
  font-weight: 400;
  color: #091321;
  white-space: nowrap; }

ul {
  /* self layout */
  margin: 16px 0 48px 0;
  /* decoration */
  list-style-type: disc;
  list-style-position: outside; }
  ul li {
    margin-left: 16px; }
    ul li + li {
      margin-top: 4px; }
  ul.simple {
    list-style-type: none; }
    ul.simple li {
      margin-left: 0; }

#chat-application {
  bottom: 16px !important; }
