/*    Variables    */
:root {
    --color-bg: #000000;
    --color-fg: #ffffff;
    --color-fg-half: #ffffffc0;
    --transparent: transparent;
    --border-radius: 0.125em;
}

/*    Elements    */
* {
    font-family: monospace;
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-size: 1rem;
}
:focus {
    outline: none;
}
::selection {
    background-color: var(--color-fg);
    color: var(--color-bg);
}
::placeholder {
    color: var(--color-fg);
    opacity: 0.25;
}

::-webkit-scrollbar {
    width: 5px;
}
::-webkit-scrollbar-track {
    background: var(--transparent);
}
::-webkit-scrollbar-thumb {
    background: var(--transparent);
    border-left: 1px solid var(--color-fg);
    border-radius: var(--border-radius);
    
}
::-webkit-scrollbar-thumb:hover {
    background: var(--color-fg);
}

html {
    background-color: var(--color-bg);
}
body {
    overflow-x: hidden;
    background-color: var(--color-bg);
}
a {
    color: var(--color-fg);
    text-decoration: none;
    border-bottom: 1px solid var(--color-fg);
    padding: 0 0.15em;
}
a:hover {
    color: var(--color-bg);
    background: var(--color-fg);
    border-radius: var(--border-radius);
}
button {
    color: var(--color-fg);
    background: transparent;
    border: 1px solid var(--color-fg);
    border-radius: var(--border-radius);
    padding: 0 0.15em;
    width: max-content;
}
button:hover {
    color: var(--color-bg);
    background: var(--color-fg);
    border-radius: var(--border-radius);
}
.console-input-line {
    width: 100%;
    border: none;
    background: var(--transparent);
    color: var(--color-fg);
    caret-color: var(--color-fg);
    resize: none;
    cursor: text;
}
.tab1 {
    padding-left: 2rem;
}
.wide {
    width: 100%;
}
.interactable {
    cursor: pointer;
}
.hidden {
    display: none;
}
.flex-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.flex-container.centered {
    justify-content: center;
}
.flex-container.horizontal {
    flex-direction: row;
}
.flex-container.horizontal-rtl {
    flex-direction: row-reverse;
}
.flex-container.wrap {
    flex-wrap: wrap;
}
.flex-item.flex-last{
    align-self: flex-end;
}
.flex-item.grow {
    flex-grow: 1;
}
.flex-item.shrink {
    flex-shrink: 1;
}
.console-output-line {
    white-space: pre-wrap;
}
.console-output-line.centered {
    text-align: center;
}
#console-container {
    min-height: min-content;
    display: flex;
    padding: 1rem;
    background-color: var(--transparent);
    color: var(--color-fg);
}