blob: 894c79c5116e1899de5e0fa562d4c2d12ea868ea [file] [log] [blame]
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);
}
}