:root {
    --font-color: black;
    --font-disabled-color: #888;
    --placeholder-color: #aaa;
    --body-bg-color: white;
    --control-bg-color: #dffcde;
    --smiles-img-bg-color: white;
    --bg-color: white;
    --bg-disabled-color: #dfecde;
    --tab-underline: #adb5bd;
    --selected-tab-underline: #198754;
    --base-column-size: 30%;
    --panel-padding: 10px;
    --plot-height: 450px;
    --large-radius: 8px;
    --small-radius: 5px;
}

[data-theme="dark"] {
    --font-color: white;
    --font-disabled-color: #a0a0aa;
    --placeholder-color: #a0aaba;
    --body-bg-color: #121212;
    --control-bg-color: #212121;
    --smiles-img-bg-color: #e5ecf6;
    --bg-color: #212121;
    --bg-disabled-color: #161616;
    --tab-underline: #45A29E;
    --selected-tab-underline: #D6D6D6;
}

[plot-height="350"] {
    --plot-height: 350px;
}

[plot-height="450"] {
    --plot-height: 450px;
}

[plot-height="550"] {
    --plot-height: 550px;
}

[plot-height="650"] {
    --plot-height: 650px;
}

[data-cols="1"] {
    --base-column-size: 80%;
}

[data-cols="2"] {
    --base-column-size: 40%;
}

[data-cols="4"] {
    --base-column-size: 22%;
}

[data-cols="5"] {
    --base-column-size: 18%;
}

body {
    width: auto !important;
    color: black;
    color: var(--font-color);
    background-color: white;
    background-color: var(--body-bg-color);
}

.control {
    width: 100%;
    display: inline-block;
    background-color: #dffcde;
    background-color: var(--control-bg-color);
    height: auto;
    border-radius: 5px;
    border-radius: var(--small-radius);
    box-shadow: 0px 4px 5px 0px hsla(0, 0%, 0%, 0.14),
        0px 1px 10px 0px hsla(0, 0%, 0%, 0.12),
        0px 2px 4px -1px hsla(0, 0%, 0%, 0.2);
}

.logo {
    text-align: center;
    margin: 0;
    color: black;
    color: var(--font-color)
}

.logo>h1 {
    margin: 0.2rem;
}

.links {
    position: absolute;
    text-align: right;
    right: 10px;
    right: var(--panel-padding);
}

.links img {
    height: 2.0rem;
    margin: 5px;
}

.links img:hover {
    filter: invert(0.4)
}

[data-theme="dark"] .links img {
    filter: invert(1)
}

[data-theme="dark"] .links img:hover {
    filter: invert(0.7)
}

#plots {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
    gap: 10px;
    gap: var(--panel-padding);
    margin-top: 10px;
    margin-top: var(--panel-padding);
}

.plots {
    display: block;
    min-width: 20rem;
    flex: 1 1 var(--base-column-size);
    background-color: #dffcde !important;
    background-color: var(--control-bg-color) !important;
    border-radius: 8px;
    border-radius: var(--large-radius);
    box-shadow: 0px 4px 5px 0px hsla(0, 0%, 0%, 0.14),
        0px 1px 10px 0px hsla(0, 0%, 0%, 0.12),
        0px 2px 4px -1px hsla(0, 0%, 0%, 0.2);
    padding: 10px;
    padding: var(--panel-padding);
}

.smiles-img {
    width: 100%;
    max-height: var(--plot-height);
    display: block;
    margin-left: auto;
    margin-right: auto;
    background-color: var(--smiles-img-bg-color);
    border-radius: 8px;
    border-radius: var(--large-radius);
}

.plot-container.plotly>div {
    height: var(--plot-height) !important;
}