html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-family: sans-serif;
  color: #c7d5e0;
  line-height: 1;
  background: #1b2838; }

html {
  margin-right: calc(-100vw + 100%);
  /* Fix for scroll-bar jump */ }

body {
  overflow-x: hidden; }

.logo {
  float: left;
  margin: 0 6px 0 0;
  max-height: 40px; }

.main {
  max-width: 900px;
  margin: 40px auto;
  padding: 20px;
  background: #171a21;
  border: 1px solid #233D51;
  border-radius: 8px; }
  .main .title {
    display: flex;
    justify-content: space-between;
    margin: 0 0 20px 0; }
    .main .title .menu {
      display: flex;
      justify-content: center;
      align-items: center;
      height: 40px; }
      .main .title .menu button {
        margin: 0 2px; }
  .main .server {
    display: flex;
    justify-content: space-between;
    margin: 6px 0;
    padding: 10px;
    border: 1px solid #c7d5e0;
    border-radius: 1px; }
    .main .server .name {
      font-weight: bold;
      margin: 0 0 6px 0; }
      .main .server .name .fas {
        margin: 0 4px;
        cursor: pointer; }
    .main .server .info {
      color: #c7d5e0; }
    .main .server .start {
      background: #4c6b22;
      color: #a4d007; }
    .main .server .stop {
      background: #7e1313;
      color: #d85d5d; }
    .main .server .online {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 6px 10px;
      background: #a4d007; }
    .main .server .offline {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 6px 10px;
      background: #d85d5d; }

.main-small {
  max-width: 450px; }

.end {
  font-size: 12px;
  text-align: center;
  margin: 20px 0 0 0; }

.tabs {
  display: flex;
  margin: 0 0 20px 0;
  border-style: solid;
  border-color: #4c6b22;
  border-width: 0 0 1px 0; }
  .tabs .tab {
    padding: 10px 12px;
    margin: 0 2px 0 0;
    border-radius: 2px 2px 0 0;
    cursor: pointer; }
  .tabs .tab-active {
    background: #4c6b22;
    color: #a4d007; }

.collapsible {
  margin: 10px 0; }
  .collapsible .collapsible-title {
    display: flex;
    justify-content: space-between;
    border-style: solid;
    border-color: #233D51;
    border-width: 0 0 1px 0;
    padding: 10px 6px;
    cursor: pointer; }
  .collapsible .collapsible-content {
    padding: 20px 6px 6px 6px; }

.box {
  border: 1px solid #c7d5e0;
  border-radius: 1px;
  padding: 20px;
  margin: 10px 0; }

.error-toast {
  position: absolute;
  left: 50%;
  top: 20px; }
  .error-toast .error-content {
    position: relative;
    left: -50%;
    border-radius: 1px;
    background: #d85d5d;
    color: #171a21;
    padding: 10px; }

h1 {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  font-size: 20px;
  font-weight: normal;
  margin: 0 0 0 6px; }

button, input[type~="submit"] {
  width: auto;
  border-width: 0;
  font-size: 14px;
  font-family: sans-serif;
  background: #233D51;
  color: #67c1f5;
  border-radius: 2px;
  padding: 8px 12px;
  margin: 4px 0;
  cursor: pointer; }
  button .fas, input[type~="submit"] .fas {
    margin-right: 6px; }

input, select, textarea {
  width: 100%;
  box-sizing: border-box;
  font-size: 14px;
  font-family: sans-serif;
  background: #1b2838;
  color: #f2f2f2;
  border: 1px solid #233D51;
  border-radius: 1px;
  padding: 6px;
  margin: 4px 0; }

input[type~="checkbox"] {
  width: auto;
  margin: 0 8px 0 0; }

.checkbox {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 30px; }
  .checkbox label {
    font-size: 14px; }

select {
  width: auto; }

label {
  width: 100%;
  box-sizing: border-box;
  font-size: 12px; }

.primary {
  background: #4c6b22 !important;
  color: #a4d007 !important; }

.error {
  color: #d85d5d;
  width: 100%;
  box-sizing: border-box;
  font-size: 12px; }

a {
  color: #67c1f5;
  text-decoration: none; }

@media (max-device-width: 700px) {
  .main {
    margin: 0 auto; } }
