:root {
    --background-color: rgb(235, 221, 221);
    --background-color-90: #ffffffe6;
    --normal-font-color: #333333;
    --normal-font-color-12: rgba(51, 51, 51, 0.12);
    --normal-font-color-80: rgba(51, 51, 51, 0.8);
    --normal-font-color-50: rgba(51, 51, 51, 0.5);
    --normal-font-color-30: rgba(51, 51, 51, 0.3);
    --opposite-font-color: rgb(235, 221, 221);
    --hover-color: rgb(171, 137, 137);
    --heading-font-color: #b81010;
    --top-heading-font-color: rgb(198, 129, 0);
    --link-font-color: rgb(255, 165, 0);
    --banner-color: #b81010;
    --opposite-bg-color: #000;
    --opposite-bg-color-80: rgba(24, 24, 24, 0.8);
    --opposite-bg-color-5: rgba(24, 24, 24, 0.05);
    --opposite-bg-color-10: rgba(24, 24, 24, 0.1);
}

body.darkTheme {
    --background-color: #1a1a1a; /* softer than #121212 */
    --background-color-90: rgba(26, 26, 26, 0.9);
    --normal-font-color: #d1d1d1; /* off-white, less harsh */
    --normal-font-color-80: rgba(209, 209, 209, 0.8);
    --normal-font-color-50: rgba(209, 209, 209, 0.5);
    --normal-font-color-30: rgba(209, 209, 209, 0.3);
    --normal-font-color-12: rgba(209, 209, 209, 0.12);
    --hover-color: #404040; /* subtle change for hover */
    --heading-font-color: #5d2121; /* slightly brighter for better readability */
    --top-heading-font-color: #b81010;
    --link-font-color: #b81010;
    --banner-color: #5d2121; /* a cooler shade for the banner */
    --opposite-bg-color: #fafafa; /* off-white */
    --opposite-bg-color-80: rgba(250, 250, 250, 0.8);
    --opposite-bg-color-5: rgba(250, 250, 250, 0.05);
    .row ul li::before {
        background-image: url("../../../../media/arrow-right-darkt.svg") !important;
    }
}

* {
    font-family: "Roboto Condensed", sans-serif;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    height: 100%;
    overflow-x: hidden !important;
}
body {
    color: var(--normal-font-color);
    font-family: "Roboto Condensed", sans-serif;
    background-color: var(--background-color);
    min-height: 100vh;
    display: flex;
    justify-content: center;
}
@media @mobile {
    html {
        font-size: @body-fontsize-mobile;
    }
}
@media @tablet {
    html {
        font-size: @body-fontsize-pc;
    }
}

/* Container */
.container {
    max-width: 960px;
    margin: 0 auto;
}

ul {
    list-style-type: none;
}

ol {
    list-style-type: decimal;
}

/* Links */
a {
    text-decoration: underline;
    color: var(--normal-font-color);
}

/* Tabellen */
table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
* {
    transition: border-color 0.5s ease, max-height 0.5s, height 0.5s ease, width 0.5s ease, flex 0.5s ease,
        opacity 0.5s ease, top 0.5s ease, bottom 0.5s ease, left 0.5s ease, right 0.5s ease, transform 0.5s ease;
}

button {
    background-color: inherit;
    border: none;
    cursor: pointer;
    font-size: inherit;
    color: var(--normal-font-color);
}
input,
select {
    color: var(--normal-font-color);
    width: 100%;
}
