body:not(.light){
    --primary-bg-color: rgb(39, 39, 39);
    --secondary-bg-color: rgb(29, 29, 29);
    --tertiary-bg-color: #0c0e0f;

    --map-bg-color: rgb(94, 94, 94);

    --primary-button-color: rgb(68, 67, 67);
    --primary-button-hover-color: rgb(107, 105, 105);
    --primary-button-hover-delete-color: rgb(126, 42, 42);
    --primary-button-open-color: #9c8446;
    --primary-button-selected-color: #2A9D8F;
    --primary-button-border-color: rgb(124, 124, 124);

    --secondary-button-color: rgb(32, 32, 32);
    --secondary-button-hover-color: rgb(61, 61, 61);
    --secondary-border-color: black;

    --small-button-color: #264653;
    --small-button-border-color: rgb(12, 26, 65);
    --small-button-hover-color: #33667a;
    --small-button-text-color: white;

    --main-text-color: white;
    --emph-text-color: #c9a038;
    --emph-hover-text-color: #f1c861;
    --secondary-text-color: gray;

    --help-text-color: lightgray;
    --help-emph-text-color: #8a743d;


    --input-color: rgb(46, 46, 46);
    --input-border-color: rgb(129, 129, 129);

    --water-color: rgb(123, 123, 255);
    --terrain-color: #838383;
    --factor-color: red;
    --roughness-color: blue;
    --weirdness-indicator-color: #32524e;;
    --weirdness-indicator-border-color: #4b7e78;
    color-scheme: dark;
}

body.light{
    --primary-bg-color: rgb(255, 255, 255);
    --secondary-bg-color: rgb(230, 230, 230);
    --tertiary-bg-color: #264653;
    --map-bg-color: rgb(182, 182, 182);

    --primary-button-color: rgb(243, 243, 243);
    --primary-button-hover-color: #8EE1D7;
    --primary-button-hover-delete-color: rgb(255, 115, 115);
    --primary-button-open-color: #E9C46A;
    --primary-button-selected-color: #2A9D8F;
    --primary-button-border-color: rgb(46, 46, 46);

    --secondary-button-color: rgb(177, 177, 177);
    --secondary-button-hover-color: #619c95;
    --secondary-border-color: black;

    --small-button-color: #264653;
    --small-button-border-color: rgb(12, 26, 65);
    --small-button-hover-color: #33667a;
    --small-button-text-color: white;

    --main-text-color: black;
    --emph-text-color: #660000;
    --emph-hover-text-color: #a82929;
    --secondary-text-color: gray;

    --help-text-color: white;
    --help-emph-text-color: #dfaa9d;

    --input-color: white;
    --input-border-color: rgb(20, 20, 20);

    --water-color: rgb(123, 123, 255);
    --terrain-color: #182d35;
    --factor-color: red;
    --roughness-color: blue;
    --weirdness-indicator-color: #32524e;;
    --weirdness-indicator-border-color: #4b7e78;;
    color-scheme: light;
}


* {
    outline: none;
}

body {
    height: 100%;
    width: 100%;
    overflow: hidden;
    padding: 0;
    border: 0;
    margin: 0pt;
    position: absolute;
}

#main {
    display: flex;
    flex-direction: column;
    height: inherit;
}

/* Menubar */

#menu {
    width: 100vw;
    display: flex;
    background-color: var(--tertiary-bg-color);
}

#menu .logo{
    color: white;
    padding: 3pt;
}

#menu .logo img{
    height: 20pt;
}

#menu .button {
    height: auto;
    background-color: var(--primary-button-color);
    border-color: var(--primary-button-border-color);
    border-radius: 3pt;
    padding: 3pt 5pt;
    margin: 3pt;
    color: var(--emph-text-color);
    cursor: pointer;
    position: relative;
}

#menu .button .dropdown{
    position: absolute;
    z-index: 100000;
    background-color: var(--tertiary-bg-color);
    border-color: var(--secondary-border-color);
    border-radius: 3pt;
    top: 22pt;
    left: 0pt;
}

#menu .button:not(:hover) .dropdown{
    display: none;
}

#menu .button .dropdown .button{
    white-space: nowrap;
}


#menu .button.open {
    background-color: var(--primary-button-open-color)
}


#menu .button:hover {
    background-color: var(--primary-button-hover-color)
}

#menu .button img{
    width: 16pt;
    height: 16pt;
}

body:not(.light) #menu .button img{
    filter: invert();
}

#menu .help{
    display: flex;
    flex-direction: row;
    overflow: hidden;
    width: 0;
    flex-grow: 1;
}

#menu .help .help-entry{
    white-space: nowrap;
    color: var(--help-text-color);  /* TODO */
    padding: 5pt;
    padding-right: 15pt;
}

#menu .help .help-entry .b{
    color: var(--help-emph-text-color); /* TODO */
}

#menu .link{
    margin: auto;
    margin-right: 5pt;
}

#menu .link a{
    color: gray;
}

/* Editor */

#content {
    flex-grow: 1;
    display: flex;
    width: 100vw;
    height: 0;
}

.main_content{
    flex-grow: 1;
    background-color: var(--primary-bg-color);
    width: 700pt;
}

#editor {
    display: flex;
    height: 100%;
}

/* Tooltip */

.tooltip {
    position: absolute;
    z-index: 1000;
    top: 0;
    left: 0;
    border-radius: 5pt;
}

.tooltip .tooltip_line {
    padding: 4pt;
    background-color: var(--secondary-bg-color);
    border: 1pt solid var(--secondary-border-color);
    color: var(--emph-text-color);
    font-size: 12pt;
    white-space: nowrap;
    width: min-content;
}

.tooltip.sidebar .tooltip_line.noises{
    display: none;
}

.tooltip .tooltip_line .icon{
    padding-left: 10pt;
    height: 12pt;
    position: relative;
    top:2pt
}

.tooltip .tooltip_line .name{
    display: inline;
}

.closable {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--tertiary-bg-color);
}

.closable.vertical {
    flex-direction: column;
}

.closable.horizontal {
    flex-direction: row;
}

.closable .button {
    background-color: var(--primary-button-color);
}

.closable.vertical .button {
    width: 15pt;
    height: 10pt;
    margin-top: 2pt;
    margin-bottom: 3pt;
}

.closable.horizontal .button {
    width: 10pt;
    height: 15pt;
    margin-left: 2pt;
    margin-right: 3pt;
}

.closable.closable.horizontal:not(.closed) .button {
    -webkit-mask: url('close_right.svg') no-repeat center;
    mask: url('close_right.svg') no-repeat center;
}

.closable.horizontal.closed .button {
    -webkit-mask: url('close_left.svg') no-repeat center;
    mask: url('close_left.svg') no-repeat center;
}

.closable.closable.vertical:not(.closed) .button {
    -webkit-mask: url('close_down.svg') no-repeat center;
    mask: url('close_down.svg') no-repeat center;
}

.closable.vertical.closed .button {
    -webkit-mask: url('close_up.svg') no-repeat center;
    mask: url('close_up.svg') no-repeat center;
}

.closable .button:hover {
    background-color: var(--primary-button-hover-color);
}

.closable.closed .content {
    display: none;
}

.closable.vertical:not(.closed) .content {
    width: 100%;
    height: fit-content;
    flex-grow: 1;
    flex-shrink: 1;
}

.closable.horizontal:not(.closed) .content {
    height: 100%;
    width: fit-content;
    flex-grow: 1;
    flex-shrink: 1;
}

/* Sidebar */

#sidebar {
    width: 250pt;
    min-width: 250pt;
    height: 100%;
    background-color: var(--secondary-bg-color);
    display: flex;
    flex-direction: column;
    border-right: 10pt solid var(--tertiary-bg-color);
}

#sidebar #sidebar_menu {
    overflow-y: scroll;
    overflow-x: hidden;
    flex-grow: 1;
}

#sidebar #splineDisplay #splineDisplaySvg {
    background-color: var(--secondary-bg-color);
    height: 140pt;
    width: 100%;
}

#sidebar #splineDisplay #splineDisplaySvg .water {
    fill: var(--water-color);
}

#sidebar #splineDisplay #splineDisplaySvg .terrain {
    fill: var(--terrain-color);
}

#sidebar #splineDisplay #splineDisplaySvg .factor {
    fill: none;
    stroke: var(--factor-color);
    stroke-width: 2pt;
    stroke-dasharray: 5 8;
    stroke-linecap: round;
}


#sidebar #splineDisplay #splineDisplaySvg .roughness {
    fill: none;
    stroke: var(--roughness-color);
    stroke-width: 2pt;
    stroke-dasharray: 5 8;
    stroke-linecap: round;
}

#sidebar #splineDisplay #splineDisplaySvg .weirdnesses {
    fill: var(--weirdness-indicator-color);
    fill-opacity: 0.3;
    stroke: var(--weirdness-indicator-border-color);
    stroke-width: 1pt;
    stroke-dasharray: 5 8;
    stroke-linecap: round;
}

#sidebar #splineDisplay #splineDisplaySvg .weirdness {
    stroke: var(--weirdness-indicator-border-color);
    stroke-width: 2pt;
    stroke-dasharray: 5 5;
    stroke-linecap: round;
}


#sidebar .sidebar_entry:not(.hidden) {
    width: 222pt;
    background-color: var(--primary-button-color);
    margin: 3pt;
    padding: 5pt;
    user-select: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    position: relative;
    border: 1pt solid var(--primary-button-border-color);
    border-radius: 3pt;
}

#sidebar .sidebar_entry:not(.hidden)::before {
    content: " ";
    display: block;
    position: absolute;
    top: -3pt;
    left: -3pt;
    right: -3pt;
    bottom: -3pt;
    z-index: 1;
}



#sidebar .sidebar_entry.assign_slices_button {
    height: 40pt;
    line-height: 40pt;
    color: var(--main-text-color);
    text-align: center;
    display: block;
}

#sidebar .sidebar_entry.spline .grid {
    height: 40pt;
}

#sidebar .sidebar_entry.slice .grid {
    height: 60pt;
}

#sidebar .sidebar_entry.layout .grid {
    height: 40pt;
}

#sidebar .sidebar_entry.biome .grid, #sidebar .sidebar_entry.vanilla_biome .grid {
    height: 22pt;
}


#sidebar .sidebar_entry.biome .color_selector, #sidebar .sidebar_entry.vanilla_biome .color_selector {
    height: 22pt;
    width: 22pt;
    min-width: 22pt;
    border: 0;
    margin: 0;
    padding: 0;
    border-top-style: hidden;
    border-right-style: hidden;
    border-left-style: hidden;
    border-bottom-style: hidden;   
    background-color: rgba(0,0,0,0); 
    z-index: 2;
}

#sidebar .sidebar_header {
    display: flex;
}

#sidebar .sidebar_header .name {
    font-size: 22;
    padding: 5pt;
    color: var(--emph-text-color);
    flex-grow: 1;
}

#sidebar .sidebar_header .beta_icon {
    display: inline-block;
    position: relative;
    font-size: 11;
    color: var(--secondary-bg-color);
    background-color: var(--emph-text-color);
    border-radius: 10pt;
    padding: 2pt 5pt 2pt 5pt;
    flex-grow: 1;
    top: 7pt;
    left: -8pt
}


#sidebar .sidebar_header .button {
    height: 15pt;
    width: 15pt;
    padding: 5pt;
    border-radius: 5pt;
    margin-right: 10pt;
    background-color: var(--small-button-color);
    line-height: 25pt;
    text-align: center;
    display: block;
    cursor: pointer;
}

#sidebar .sidebar_header .button:hover {
    background-color: var(--small-button-hover-color)
}

#sidebar .sidebar_header .button.open {
    background-color: var(--primary-button-open-color)
}

#sidebar .sidebar_header .button.hide.enabled {
    background-color: var(--primary-button-hover-delete-color);
}

#sidebar .sidebar_header .button.hide:hover {
    background-color: var(--primary-button-hover-delete-color);
}


#sidebar .sidebar_entry:hover {
    background-color: var(--primary-button-hover-color);
}

#sidebar .sidebar_entry.selected {
    background-color: var(--primary-button-selected-color);
}

#sidebar .sidebar_entry.open {
    background-color: var(--primary-button-open-color);
}

#sidebar .sidebar_entry.dragged {
    background-color: var(--secondary-bg-color);
    border: 0pt;
}

#sidebar .sidebar_entry.vanilla_biome {
    background-color: var(--secondary-button-color);
}

#sidebar .sidebar_entry.vanilla_biome:hover {
    background-color: var(--secondary-button-hover-color);
}

#sidebar .sidebar_entry.vanilla_biome.selected {
    background-color: var(--primary-button-selected-color);
}

#sidebar .sidebar_entry_list:not(.compact) .sidebar_entry.dragover_up{
    margin-top: 20pt;
}

#sidebar .sidebar_entry_list:not(.compact) .sidebar_entry.dragover_up::before {
    top: -20pt;
}

#sidebar .sidebar_entry_list:not(.compact) .sidebar_entry.dragover_down {
    margin-bottom: 20pt;
}

#sidebar .sidebar_entry_list:not(.compact) .sidebar_entry.dragover_down::before {
    bottom: -20pt;
}


#sidebar .label {
    color: var(--main-text-color);
    text-align: center;
    padding-top: 10pt;
}

#sidebar .sidebar_entry .name {
    display: inline-block;
    position: relative;
    text-align: left;
    margin-left: 5pt;
    vertical-align: middle;
    color: var(--main-text-color);
    background-color: rgba(0, 0, 0, 0);
    border: 0;
    font-size: 12pt;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    flex-grow: 1;
}

#sidebar .sidebar_entry .button {
    width: 10pt;
    height: 10pt;
    min-width: 10pt;
    background-color: var(--small-button-color);
    padding: 5pt;
    margin-left: 5pt;
    border-radius: 5pt;
    display: none;
    position: relative;
    z-index: 2;
}

#sidebar .sidebar_entry:hover:not(.dragged) .button {
    display: block;
}

#sidebar .sidebar_entry .button.delete:hover {
    background-color: var(--primary-button-hover-delete-color);
}

#sidebar .sidebar_entry .button.edit:hover {
    background-color: var(--small-button-hover-color);
}

#sidebar .sidebar_entry .button.hide.enabled {
    background-color: var(--primary-button-hover-delete-color);
    display: block;
}

#sidebar .sidebar_entry .button.hide:hover {
    background-color: var(--primary-button-hover-delete-color);
}

#sidebar .sidebar_entry .button.open {
    background-color: var(--primary-button-open-color);
    display: block;
}

#sidebar .sidebar_entry .button.open:hover {
    background-color: var(--primary-button-open-color);
}

#sidebar .sidebar_entry_list.compact .sidebar_entry{ 
    width: fit-content;
    display: inline-block;
    position: relative;
}

#sidebar .sidebar_entry_list.compact .sidebar_entry .name{ 
    display: none;
}

#sidebar .sidebar_entry_list.compact .sidebar_entry .button:not(.important){ 
    display: none;
}

#sidebar .sidebar_entry_list.compact .sidebar_entry .button.important{ 
    position: absolute;
    right: 0;
    bottom: 0;
}

#sidebar .sidebar_entry_list.compact .sidebar_entry.dragover_up::before {
    border-left: 3pt solid var(--emph-text-color);
    left: -5pt;
}

#sidebar .sidebar_entry_list.compact .sidebar_entry.dragover_down::before {
    border-right: 3pt solid var(--emph-text-color);
    right: -5pt;
}



#sidebar .spacer {
    width: 222pt;
    height: 5pt;
    margin: 5pt;
    padding: 5pt;
    user-select: none;
}

#sidebar .search_bar {
    width: 233pt;
    padding: 5pt;
    margin: 5pt;
    background-color: var(--input-color);
    color: var(--main-text-color);
    border: 2pt solid var(--input-border-color);
    outline: 0pt;
}

/* Assign Slices */

#assignSlices {
    margin: auto;
    min-width: 300pt;
    flex-grow: 1;
}

#assignSlices table {
    border-spacing: 0 5pt;
    cursor: default;
    user-select: none;
    margin: auto;
}

#assignSlices table tr .weirdness_name {
    text-align: right;
    color: var(--emph-text-color);
    padding-right: 10pt;
    width: 10pt;
    overflow: visible;
    white-space: nowrap;
}

#assignSlices table tr .slice_icon {
    background-color: var(--primary-button-color);
    border: 1pt solid var(--primary-button-border-color);
    border-radius: 3pt 0pt 0pt 3pt;
    border-right: 0;
    padding: 10pt;
}

#assignSlices table tr .slice_icon canvas {
    height: 70pt;
}

#assignSlices table tr .slice_name {
    background-color: var(--primary-button-color);
    color: var(--main-text-color);
    border: 1pt solid var(--primary-button-border-color);
    border-right: 0;
    border-left: 0;
    width: 250pt;
}

#assignSlices table tr .slice_mode_select {
    background-color: var(--primary-button-color);
    border: 1pt solid var(--primary-button-border-color);
    border-left: 0;
    border-radius: 0pt 3pt 3pt 0pt;
    padding-right: 10pt;
}

#assignSlices table tr .slice_mode_select img {
    height: 25pt;
}

#assignSlices table tr:hover .slice_icon,
#assignSlices table tr:hover .slice_name,
#assignSlices table tr:hover .slice_mode_select{
    background-color: var(--primary-button-hover-color);
}

/* Editor */

#layoutEditor {
    flex-grow: 1;
    flex-shrink: 1;
    height: 100%;
    width: 300pt;
    text-align: center;
    /*overflow-y: auto;*/
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
}

#layoutEditor .titleBar{
    display: block;
    width: calc(100% - 20pt);
    padding: 10pt;
    margin: 0pt;
    display: flex;
    flex-direction: row;
}

#layoutEditor .button {
    width: 15pt;
    height: 15pt;
    padding: 5pt;
    background-color: var(--small-button-color);
    border-radius: 5pt;
    cursor: pointer;
}

#layoutEditor .button:hover {
    background-color: var(--small-button-hover-color);
}

#layoutEditor #layoutName {
    background-color: rgba(0,0,0,0);
    color: var(--emph-text-color);
    border: 0pt;
    outline: 0pt;
    font-size: 20pt;
    text-align: center;
    width: 10pt;
    flex-grow: 1;
}

#layoutEditor .axis_label{
    color: var(--main-text-color);
}

#layoutEditor .label_with_content{
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 300pt;
    flex-grow: 1;
    flex-shrink: 1;
}

#layoutEditor .label_with_content .axis_label{
    width: 20pt;
    min-width: 20pt;
    position: relative;
}

#layoutEditor .label_with_content .axis_label #vertical_label{
    position: absolute;
    left: 0;
    top: 50%;
    transform: rotate(-90deg);
    width: 100%;
}

#layoutEditor #layoutEditorDiv, #layoutEditor #gridEditorDiv{
    margin: 5pt;
    width: 300pt;
    min-width: 300pt;
    flex-grow: 1;
}

#layoutEditor #layoutEditorCanvas, #layoutEditor #gridEditorCanvas {
    margin: auto;
    max-width: 100%;
    max-height: 100%;
    outline: 0;
    flex-shrink: 2;
}


#layoutEditor #splineEditorDiv{
    width: 100%;
    height: 100%;
    overflow: hidden;
}

#layoutEditor #splineEditorDiv #splineEditorSvg{
    width: calc(100% - 20pt);
    height: calc(100% - 20pt);
}

#layoutEditor #splineEditorDiv svg{
    margin: 3pt;
    background-color: var(--secondary-bg-color);
}


#layoutEditor #splineEditorDiv .water{
    fill: var(--water-color);
}

#layoutEditor #splineEditorDiv .water{
    fill: var(--water-color);
}

#layoutEditor #splineEditorDiv .hide{
    display: none;
}

#layoutEditor #splineEditorDiv .add{
    width: 100%;
}

#layoutEditor #splineEditorDiv .snap_indicator{
    stroke: var(--emph-text-color);
    stroke-width: 2pt;
    stroke-dasharray: 5 5;
}

#layoutEditor #splineEditorDiv .spline.area{
    fill: var(--terrain-color);
    stroke: none;
}

#layoutEditor #splineEditorDiv .spline:not(.area){
    fill: none;
    stroke: var(--main-text-color);
}

#layoutEditor #splineEditorDiv .spline_pointer{
    fill: none;
    stroke: var(--emph-text-color);
    stroke-width: 5pt;
    stroke-opacity: 0.0;
}

#layoutEditor #splineEditorDiv svg:not(:hover) .handle{
    display: none;
}

#layoutEditor #splineEditorDiv .handle circle{
    fill: var(--emph-text-color);
}

#layoutEditor #splineEditorDiv .handle:hover circle{
    fill: var(--emph-hover-text-color);
}


#layoutEditor #splineEditorDiv .handle line.handle_line{
    fill: none;
    stroke: var(--emph-hover-text-color);
    stroke-width: 1pt;
}

#layoutEditor #splineEditorDiv .handle:not(:hover):not(.dragged) line{
    display: none;
}

#layoutEditor #splineEditorDiv .handle line.handle_line_pointer{
    fill: none;
    stroke: var(--emph-text-color);
    stroke-opacity: 0.0;
    stroke-width: 10pt;
}




.hidden {
    display: none !important;
}

/* Visualization */

#visualization_panel:not(.closed) {
    width: fit-content;
    flex-grow: 1;
}

#visualization {
    min-width: 300pt;
    width: 100%;
    height: 100%;
    background-color: var(--secondary-bg-color);
    position: relative;
}

#visualization.fullscreen {
    position: absolute;
    left: 0;
    width: 100vw;
    top: 0;
    height: 100vh;
    z-index: 5;
}


#visualization_map {
    height: 100%;
    width: 100%;
    background: var(--map-bg-color) url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400" fill-opacity=".25" ><rect x="200" width="200" height="200" /><rect y="200" width="200" height="200" /></svg>');
    background-size: 30px 30px;
}

#visualization_map  canvas.leaflet-tile{
    image-rendering: crisp-edges;
    image-rendering: pixelated;
}

#visualization .visualization_controlls{
    position: absolute;
    top: 62pt;
    left: 6pt;
    z-index: 400;
    width: 26pt;
}

#visualization #toggleIsolinesButton{
    width: 20pt;
    padding: 3pt;
}

#visualization #mapFullscreenButton {
    position: absolute;
    top: 9pt;
    right: 9;
    z-index: 400;
    width: 16pt;
    padding: 5pt;
}

.map_button{
    background-color: var(--small-button-color);
    border-radius: 5pt;
}

.map_button.enabled{
    background-color: var(--primary-button-open-color);
}

.map_button:hover{
    background-color: var(--small-button-hover-color);
}

.map_button.enabled:hover{
    background-color: var(--primary-button-open-color);
}

.height_selection{
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 5pt;
    position: relative;
    margin-top: 5pt;
    padding-top: 5pt;
    padding-bottom: 5pt;
}

.map_label{
    background-color: var(--small-button-color);
    color: white;
    border-radius: 5pt;
    min-width: 20pt;
    height: 15pt;
    padding: 3pt;
    text-align: center;
    line-height: 15pt;
    font-size: smaller;
    position: absolute;
    left: 25pt;
}

.height_selection:not(:hover) .map_label{
    display: none;
}

.map_range{
    width: 26pt;
    height: 150pt;
    -webkit-appearance: slider-vertical;
}


/* Settings */

#settings{
    padding: 20pt;
    overflow: auto;
}

#settings .title{
    color: var(--emph-text-color);
    margin-top: 10pt;
}

#settings .setting{
    margin: 10pt;
    padding: 5pt;
    background-color: var(--secondary-bg-color);
    border-radius: 5pt;
}

#settings .setting label{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;    
}

#settings .setting label .description{
    display: inline-block;
    color: var(--main-text-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#settings .setting label .description:not(.minor){
    width: 150pt;
}

#settings .setting label .description.minor{
    margin-left: 10pt;
    margin-right: 5pt;
    white-space: nowrap;
}


#settings .setting label input{
    color: var(--main-text-color);
    background-color: var(--input-color);
    border: 2pt solid var(--input-border-color);
    -moz-appearance: textfield;
    flex-grow: 1;
}

#settings .setting label input[type=checkbox]{
    flex-grow: 0;
    margin-right: 10pt;
}

#settings .setting label input[type=number]::-webkit-inner-spin-button,
#settings .setting label input[type=number]::-webkit-outer-spin-button{
    -webkit-appearance: none;
}

#settings .setting label output{
    width: 50pt;
    margin-left: 10pt;
    height: 100%;
}

#settings .setting label input.small{
    width: 30pt;
    max-width: 30pt;
    margin-left: 5pt;
    border-radius: 5pt;
    text-align: center;
}

#settings .setting label input.small.last{
    border-radius: 5pt 0pt 0pt 5pt;
}

#settings button{
    background-color: var(--small-button-color);
    border: 1pt solid var(--small-button-border-color);
    border-radius: 5pt;
    height: 20pt;
    padding-left: 5pt;
    padding-right: 5pt;
    color: var(--small-button-text-color);
}

#settings button:hover {
    background-color: var(--small-button-hover-color);
}

#settings .setting label button{
    width: 20pt;
    margin-right: 5pt;
    background-color: var(--small-button-color);
    border-color: var(--input-border-color);
    border-width: 2pt;

}

#settings .setting label button.delete{
    border-radius: 0pt 5pt 5pt 0pt;
    border-left-width: 0pt;
}


#settings .setting label button.delete:hover{
    background-color: var(--primary-button-hover-delete-color);
}

#settings .setting label button:hover{
    background-color: var(--small-button-hover-color);
}


#settings .setting label button img{
    width: 100%;
    height: 100%;
}

#settings button#update {
    font-size: 15pt;
    height: 28pt;
}

