html, body {
  margin: 0;
  padding: 0;
}

body {
  --fg: #333;
  --bg: #eee;
  --element: #ddd;
  --element-hover: #f5f5f5;
  --intense: #fff;
  --intense-hover: #e3e3e3;
  --border: #666;
  --link: #06d;

  font: 16px Helvetica, sans-serif;
  color: var(--fg);
  background: var(--bg);
}

body.dark {
  --fg: #eee;
  --bg: #333;
  --element: #111;
  --element-hover: #444;
  --intense: #111;
  --intense-hover: #444;
  --border: #aaa;
  --link: #6af;
}

h1 {
  font-size: 40px;
  font-weight: bold;
  margin: 20px 0;
}

h2 {
  font-size: 25px;
  font-weight: bold;
  margin: 30px 0;
}

a {
  text-decoration: none;
  color: var(--link);
}

a:hover {
  text-decoration: underline;
}

p {
  margin: 0 0 1em 0;
  line-height: 1.5;
}

ul, ol {
  margin: 0;
  padding: 0 0 0 25px;
  list-style-position: outside;
}

li {
  margin: 0 0 1em 0;
  padding: 0;
  line-height: 1.5;
}

.close-list li {
  margin: 0;
}

kbd {
  display: inline-block;
  margin: 0 1px;
  padding: 2px 3px;
  border: 1px solid var(--border);
  border-radius: 3px;
  background: var(--intense);
  font: 11px "Menlo", "Consolas", monospace;
  white-space: nowrap;
}

.kbd-group {
  white-space: nowrap;
}

hr {
  border: none;
  border-bottom: 1px solid var(--border);
  margin: 30px auto;
  padding: 0;
}

button {
  font: inherit;
  color: inherit;
  outline: none;
  border: none;
  margin: 0;
}

button:focus {
  text-decoration: underline;
}

.heading-fidl {
  margin-left: 10px;
}

.heading-bolt {
  color: var(--intense);
  -webkit-text-stroke-width: 1.5px;
  -webkit-text-stroke-color: var(--fg);
  margin-right: 5px;
}

.wrapper {
  margin: 0 20px;
  display: flex;
  flex-flow: column;
  min-height: 100vh;
}

.heading {
  text-align: center;
}

.container {
  border: 1px solid var(--border);
  border-radius: 5px;
  overflow: hidden;
  flex-grow: 1;
  margin-bottom: 20px;
  position: relative;
}

.split-container {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  display: flex;
}

.split-container--horizontal {
  flex-direction: column;
}

.split-container--vertical {
  flex-direction: row;
}

.split-item {
  display: flex;
  min-width: 0;
  flex-direction: column;
  height: 100%;
}

.split-item--first {
  flex-shrink: 0;
}

.split-item--second {
  flex-grow: 1;
}

.split-splitter {
  flex-shrink: 0;
  background: var(--border);
}

.split-splitter--vertical {
  cursor: ew-resize;
}

.split-splitter--horizontal {
  cursor: ns-resize;
}

.navbar {
  display: flex;
  min-width: 0;
}

.navbar-item {
  text-align: center;
  flex-grow: 1;
  min-width: 0;
  padding: 5px;
  overflow: hidden;
  white-space: nowrap;
  user-select: none;
  -webkit-user-select: none;
  outline: none;
  border: none;
  /* Override the Ace theme foreground color */
  color: inherit;
}

.navbar-item:focus {
  text-decoration: none;
}

.navbar-item--active {
  font-weight: bold;
}

.navbar-item:not(:first-child) {
  border-left: 1px solid var(--border);
}

.navbar-item:not(.navbar-item--active) {
  cursor: pointer;
  border-bottom: 1px solid var(--border);
  background: var(--element);
}

.navbar-item:not(.navbar-item--active):hover {
  background: var(--element-hover);
}

.editor-wrapper {
  display: contents;
}

.editor {
  font: 14px "Menlo", "Consolas", monospace;
  flex-grow: 1;
}

.controls-container {
  position: absolute;
  top: 23px;
  right: 20px;
}

.controls-button {
  background: var(--intense);
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 5px;
  cursor: pointer;
  display: inline-block;
  margin-left: 10px;
  user-select: none;
  -webkit-user-select: none;
}

.controls-button:hover {
  background: var(--intense-hover);
}

.modal-container {
  position: absolute;
  background: rgba(255, 255, 255, 0.5);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
}

.modal-box {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  max-width: min(100% - 100px, 525px);
  padding: 0 20px 20px;
  background: var(--bg);
  border-left: 1px solid var(--border);
  overflow-y: auto;
}

.modal-box .form-control {
  margin-bottom: 12px;
}

.form-select {
  margin-left: 8px;
  width: 120px;
}

.form-checkbox {
  margin-right: 8px;
}

.form-text, .form-number {
  margin-left: 8px;
  width: 40px;
}

.form-number--invalid {
  color: #f33;
}

.form-button-group {
  margin-top: 30px;
}

.form-button {
  background: var(--intense);
  padding: 8px;
  margin: 0 5px;
  border: 1px solid var(--border);
  border-radius: 5px;
  cursor: pointer;
  display: inline-block;
  font: inherit;
  color: inherit;
  font-size: 14px;
}

.form-button:hover {
  background: var(--intense-hover);
}

.output-options {
  border-top: 1px solid var(--border);
  background: var(--element);
  min-height: 36px;
}

.output-options .form-control {
  display: inline-block;
  padding: 10px 15px;
}

.loader {
  position: absolute;
  top: 10px;
  left: 20px;
  z-index: 999;
  opacity: 0;
  transition: opacity .25s ease-in-out;
}

@media (max-width: 750px) {
  .heading {
    text-align: left;
  }

  .status {
    left: 0;
    right: 0;
    text-align: center;
  }
}

/* https://loading.io/css/ */
.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: var(--border);
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}
