:root {
    --sidebarwidth: 310px;
    --sidebarcollapsedwidth: 105px;
    --colorGray00: #FFFFFF;
    --colorGray10: #F6F8FA;
    --colorGray20: #E3EBF1;
    --colorGray30: #B9C8E3;
    --colorGray40: #9EAFBC;
    --colorGray50: #7D8D9A;
    --colorGray60: #586A77;
    --colorGray80: #3E4E59;
    --colorGray100: #1F2325;
    --colorRed10: #FFF1F5;
    --colorRed50: #E4003A;
    --colorRed70: #b2002D;
    --colorGreen: #37CE85;
    --colorOrange: #FF6D04;
}

/* manrope-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/manrope-v15-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* Spezielle Regel nur Firefox */
@supports (-moz-appearance: none) {
    /* Schriftart im Dropdown wegen Firefox-Problemen */
    select option {
        font-family: 'Manrope', sans-serif;
        font-display: swap;
        font-size: 1rem;
        font-weight: 400;
    }
}

html, body {
    /* manrope-regular - latin */
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
}


.containerside {
    background-color: var(--colorGray00);
    z-index: 3;
}

.capital {
    /* manrope-regular - latin */
    font-display: swap;
    font-family: 'Manrope';
    font-style: normal;
    font-weight: 600;
    color: var(--colorRed50);
}

footer {
    background-color: var(--colorGray00);
    border-top: 0.5px solid var(--colorGray30);
}

.menu {
    position: relative;
    background-color: var(--colorGray00);
    /*to avoid, that background elements can be seen at the sides during scrolling*/
    width: auto;
    overflow-x: hidden;
    z-index: 3;
}

@media (min-width: 1024px) {
    .containersmall {
        margin-right: 10%;
        margin-left: 10%;
    }

    html {
        font-size: 16px;
    }

    /* Spezielle Regel nur  Firefox */
    @supports (-moz-appearance: none) {
        html {
            font-size: 14px;
        }
    }
}

/*=======Definition List===========*/
dl, dt, dd {
    margin: 0;
    padding: 0;
}

dl {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "language coffee";
}

dt {
    font-weight: bold;
    grid-column: language;
}

dd {
    grid-column: coffee;
}
/*=======Definition List End===========*/

th {
    position: relative;
}

    th.insertCol::before {
        font-size: large;
        color: var(--colorRed50);
        content: '\25BC';
        display: block;
        position: absolute;
        left: -10px;
        top: -8px;
    }

    th span.hide {
        font-size: 1.5em;
        color: var(--colorGray50);
        display: inline-block;
        position: absolute;
        top: -10px;
        right: 2px;
        cursor: pointer;
    }

.titel {
    padding-top: 10px;
    padding-bottom: 10px;
}

hr {
    background-color: #e4003a;
}

.btn {
    border-radius: 6px;
}

    .btn:hover {
        transform: scale(1.05);
    }

.badge {
    border-radius: 5px;
}

    .badge:hover {
        transform: scale(1.05);
    }

table {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    border-collapse: separate;
}

.table-header {
    background-color: var(--colorGray20);
    color: var(--colorGray100);
}

.modal-body .table-header {
    background-color: var(--colorRed10);
    color: var(--colorGray100);
}

table th:first-child {
    border-radius: 6px 0 0 6px;
}

table th:last-child {
    border-radius: 0 6px 6px 0;
}

table tr {
    border-color: var(--colorGray00);
    color: var(--colorGray100)
}

.table-marked {
    background-color: var(--colorRed10);
}

table tr td:first-child {
    border-radius: 6px 0 0 6px;
}

table tr td:last-child {
    border-radius: 0 6px 6px 0;
}

.table-run {
    color: var(--colorGray00);
    background-color: var(--colorRed70);
}

.menu-sticky-header {
    background-color: var(--colorGray00);
    position: sticky;
    position: -webkit-sticky;
    z-index: 10;
}

.table-sticky-header {
    position: sticky;
    position: -webkit-sticky;
    transition: 0.4s ease-out;
}

/* pin-settings for page header */
.pin {
    font-size: 1.5em;
    cursor: pointer;
    color: #e4003a;
    transform: rotate(-40deg);
}

    .pin:hover {
        translate: 0px 3px;
    }

.sortcol {
    cursor: pointer;
}

.modal-header {
    border: none;
    padding-bottom: 30px;
}

/* Remove text outside the table durcing scrolling within the modal window */
.modal-body {
    padding-top: 0px;
}

.modal-footer {
    border: none;
}

/* Remove default bullets */
ul, #myUL {
    list-style-type: none;
}

/* Remove margins and padding from the parent ul */
/*#myUL {
    margin: 0;
    padding: 0;
}
*/
.green-dot { /* use on empty div */
    width: 12px;
    height: 12px;
    background: var(--colorGreen);
    border-radius: 50%;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}

.grey-dot { /* use on empty div */
    width: 12px;
    height: 12px;
    background: var(--colorGray30);
    border-radius: 50%;
    padding: 0;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}

.yellow-dot { /* use on empty div */
    width: 12px;
    height: 12px;
    background: var(--bs-yellow);
    border-radius: 50%;
    padding: 0;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}

.red-dot { /* use on empty div */
    width: 12px;
    height: 12px;
    background: var(--colorRed70);
    border-radius: 50%;
    padding: 0;
    display: inline-block;
    margin-right: 5px;
    margin-left: 5px;
}

.selectWrapper {
    border-radius: 6px;
    display: inline-block;
    overflow: hidden;
    width: 100%;
    margin-bottom: -7px;
}

select {
    width: 100%;
    border: 0px;
    outline: 0px;
    background: var(--colorGray00);
}


input[type="text"] {
    border-radius: 6px;
}

input[type="number"] {
    border-radius: 6px;
}

input[type="password"] {
    border-radius: 6px;
}

input[type="submit"] {
    border-radius: 6px;
}

input[type="range"] {
    accent-color: var(--colorRed50);
}

input[type="checkbox"] {
    accent-color: var(--colorRed50);
}

/*checkboxes & radiobuttons*/
.form-check-input {
    background-color: var(--colorGray20);
}

    .form-check-input:hover {
        background-color: var(--colorGray30);
    }


    .form-check-input:checked {
        /* Change the color of the toggle when it is checked */
        background-color: var(--colorRed50);
        border-color: var(--colorRed50);
    }

        .form-check-input:checked:hover {
            /* Change the color of the toggle when it is checked */
            background-color: var(--colorRed70);
            border-color: var(--colorRed70);
        }

.switchImport:checked {
    background-color: var(--colorGray60);
    border-color: var(--colorGray60);
}

    .switchImport:checked:hover {
        background-color: var(--colorGray80);
        border-color: var(--colorGray80);
    }

/* Style the caret/arrow */
.caret {
    cursor: pointer;
    user-select: none; /* Prevent text selection */
}

    /* Create the caret/arrow with a unicode, and style it */
    .caret::before {
        content: "\27A4";
        color: var(--colorRed70);
        display: inline-block;
    }

/* Rotate the caret/arrow icon when clicked on (using JavaScript) */
.caret-down::before {
    transform: rotate(90deg);
}


/* Hide the nested list */
.nested {
    display: none;
}

/* Show the nested list when the user clicks on the caret/arrow (with JavaScript) */
.active {
    display: block;
}

/*===============Cherry-Terminal-Darstellung================*/
.slot {
    border: Solid 1.5em gray;
    border-radius: 1.5em;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1em;
    width: 14em;
    height: 3.5em;
    box-shadow: 0 4px 8px 0 rgba(100, 100, 100, 0.2), 0 6px 20px 0 rgba(100, 100, 100, 0.19);
}

.geraet {
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 6px;
}

.terminal {
    position: relative;
    border: Solid 0.3em ivory;
    border-radius: 30px;
    background-color: #212529;
    color: white;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    width: 18.5em;
    height: 31.5em;
    margin-bottom: 6px;
}

.subscription {
    border: Solid 0.3em ivory;
    border-radius: 30px;
    background-color: #212529;
    color: white;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    min-width: 14em;
    max-width: 18em;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 10px;
    padding-left: 10px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}

.gematiklogo {
    margin-top: 1em;
    margin-left: 11em;
    text-align: center;
}

.vpn {
    position: absolute;
    top: 11em;
    font-size: 0.7em;
    color: lightgreen;
    right: 8em;
}

.net {
    position: absolute;
    top: 11em;
    font-size: 0.7em;
    color: lightgreen;
    right: 4.5em;
}

.ntpDate {
    position: absolute;
    top: 12.5em;
    font-size: 0.7em;
    margin-left: auto;
    margin-right: auto;
    left: 5em;
}


.ntpTime {
    position: absolute;
    top: 12.5em;
    font-size: 0.7em;
    right: 5em;
}

.idle {
    position: absolute;
    top: 16em;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    line-height: 1.15em;
    font-size: 13px;
    font-family: Arial, sans-serif;
}

.cherrymenu {
    position: absolute;
    top: 23em;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
}

    .cherrymenu:hover {
        transform: scale(1.05);
    }



.cherrylogo {
    position: absolute;
    top: 27em;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
    width: 40%;
    filter: brightness(200%) contrast(0%);
}

.package {
    /*border: Solid 0.3em ivory;*/
    border-radius: 30px;
    background-color: #212529;
    color: white;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    width: 35em;
    min-height: 35em;
    padding-top: 15px;
    padding-bottom: 20px;
    padding-right: 15px;
    padding-left: 15px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}


/*==========Paging==========*/
.pagination {
    cursor: pointer;
    float: right;
    padding-right: 50px;
}

    .pagination a {
        color: var(--colorGray100);
        transition: background-color .5s;
        border: 0px;
        font-size: 20px;
        padding-left: 6px;
        padding-right: 6px;
        background-color: var(--colorGray00);
        text-decoration: none;
    }

        .pagination a.active {
            border: 0px;
            color: #e4003a;
            font-weight: bold;
        }

        .pagination a:hover:not(.active) {
            transform: scale(1.10) perspective(5px);
        }

    .pagination #pageprevious:hover {
        color: var(--colorRed50);
    }

    .pagination #pagefirst:hover {
        color: var(--colorRed50);
    }

    .pagination #pagenext:hover {
        color: var(--colorRed50);
    }

    .pagination #pagelast:hover {
        color: var(--colorRed50);
    }

canvas#gSMCKT {
    border: Solid 1px lightgrey;
    border-radius: 0.3cm;
    background-color: Ivory;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    display: Block;
}

/*===============Sidebar================*/
.sidenav {
    height: 100%;
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    overflow-x: hidden;
    padding-top: 20px;
    -webkit-box-shadow: 5px 0px 25px 0px var(--colorGray40);
    box-shadow: 5px 0px 25px 0px var(--colorGray40);
    background-color: var(--colorGray00);
    color: var(--colorGray100);
    font-size: 16px;
}

.red-btn {
    position: fixed;
    top: 6%;
    font-size: 30px;
    color: var(--colorGray100);
    background-color: var(--colorGray00);
    border: none;
    border-radius: 50%;
    padding-right: 12px;
    padding-left: 12px;
    cursor: pointer;
    z-index: 11000;
}

    .red-btn:hover {
        color: var(--colorRed70);
    }

.menutext, .cherrytext {
    display: none;
    margin-left: 8px;
}

.sidenav .arrow {
    transition: transform .5s;
}

.sidenav p {
    cursor: pointer;
}

.sidenav ul {
    list-style-type: none; /* Remove bullets */
    padding-left: 15px;
}

    .sidenav ul li {
        margin-top: 25px;
    }

        .sidenav ul li ul li {
            margin-top: -10px;
        }

.sidenav .divider {
    border-top: 1px solid var(--colorGray50);
    height: 20px;
    width: 75%;
}

.sidenav p {
    padding-top: 5px;
    padding-bottom: 5px;
}

    .sidenav p.active {
        color: var(--colorRed50);
    }

    .sidenav p:hover {
        color: var(--colorRed70);
    }

.sidenav .visible {
    color: var(--colorRed70);
}

.sidenav img {
    padding-top: 0;
    padding-left: 20px;
    margin-bottom: 30px;
}

.sidenav .collapse-item {
    padding-top: 5px;
    padding-bottom: 5px;
}

.sidenav .foot {
    position: fixed;
    bottom: 0;
    padding-left: 10px;
    margin: 0;
    width: var(--sidebarwidth);
    background-color: var(--colorGray00);
    border-top: .5px solid var(--colorGray30);
}

/*===============Bricks================*/
.brick {
    background-color: #212529;
    color: var(--colorGray00);
    border-radius: 12px;
    margin: 10px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.brickcompatibility {
    margin-right: 20px;
}

.brickdelete {
    margin-left: 25px;
    cursor: pointer;
}

.brickcopy {
    cursor: pointer;
}

.brick-header {
    display: flex;
    padding: 20px;
}

.brick-body {
    border-top: 0.5px solid var(--colorGray00);
    padding: 20px;
}

.brick-header h6 {
    flex: 1;
    margin-bottom: 0;
}

/*===============Orga-Terminal-Darstellung================*/

.ORGA-terminal {
    width: 7.85cm;
    height: 11.3cm;
    border: 3px solid #cccccc;
    border-radius: 13.56px;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #F5F5F5;
    position: relative;
    font-family: Arial, sans-serif;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    margin-bottom: 6px;
}

.ORGA-card-slot {
    width: 4cm;
    height: 0.12cm;
    background-color: black;
    border-radius: 4px;
    border: 2px solid lightgrey;
    position: absolute;
    top: 0.88cm;
    left: 2.7cm;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.19);
}

.ORGA-screen {
    width: 4.4cm;
    height: 2.64cm;
    background-color: #0033cc;
    color: white;
    display: flex;
    justify-content: center;
    letter-spacing: 0.5px;
    border: 2px solid black;
    border-radius: 3.4px;
    position: absolute;
    top: 1.42cm;
    left: 1.7cm;
    font-family: Courier;
    font-weight: bolder;
    font-size: 0.69em;
    line-height: 1.15em;
    word-break: break-all;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.19);
}

.ORGA-gematiktext {
    position: absolute;
    top: 0.61cm;
    left: 1.02cm;
    font-size: 0.37em;
    font-family: Arial;
}

.ORGA-gematiklogo {
    position: absolute;
    top: 0.85cm;
    left: 0.95cm;
    font-size: 0.68em;
    font-family: Arial;
    border-bottom: 1.5px solid black;
}

.ORGA-orga-text {
    position: absolute;
    top: 4.2cm;
    left: 5.2cm;
    font-size: 0.7em;
    font-family: Arial, sans-serif;
}

.ORGA-frame {
    width: 6.25cm;
    height: 5.6cm;
    border-radius: 0 0 10px 10px;
    border: 2px solid lightgrey;
    border-top: 0;
    position: absolute;
    top: 0cm;
    left: 0.7cm;
}


.ORGA-arrow-key {
    width: 0.5cm;
    height: 0.5cm;
    background: #dddddd;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.75em;
    position: absolute;
    font-family: Arial, sans-serif;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.19);
}

    .ORGA-arrow-key.left {
        top: 4.65cm;
        left: 1.7cm;
    }

    .ORGA-arrow-key.right {
        top: 4.65cm;
        left: calc(1.7cm + 0.5cm + 0.3cm);
    }

    .ORGA-arrow-key.up {
        top: 4.65cm;
        left: calc(1.7cm + 0.5cm + 2.6cm);
    }

    .ORGA-arrow-key.down {
        top: 4.65cm;
        left: calc(1.7cm + 0.5cm + 3.4cm);
    }

.ORGA-keys {
    position: absolute;
    top: 6.27cm;
    left: 1.7cm;
    display: grid;
    grid-template-columns: repeat(3, 0.6cm);
    grid-template-rows: repeat(3, 0.6cm);
    gap: 0.47cm;
    font-family: Arial, sans-serif;
}

.ORGA-key {
    width: 0.6cm;
    height: 0.6cm;
    background: #dddddd;
    border: .5px solid darkgray;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 0.6em;
    position: relative;
    font-weight: bold;
    font-family: Arial, sans-serif;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.19);
}

    .ORGA-key span {
        font-size: 0.55em;
        font-weight: normal;
        margin-top: -0.1cm;
        font-weight: bold;
        font-family: Arial, sans-serif;
    }

.ORGA-vertical-text {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    position: absolute;
    left: 13.6px;
    top: 301.44px;
    font-size: 24.48px;
    font-family: Arial, sans-serif;
}

.ORGA-vertical-text-neo {
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    position: absolute;
    left: 13.6px;
    top: 251.12px;
    font-size: 24.48px;
    font-weight: bold;
    font-family: Arial, sans-serif;
}

.ORGA-function-key {
    width: 1.3cm;
    height: 0.58cm;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.5em;
    border: 2px solid transparent;
    position: absolute;
    color: black;
    font-weight: bold;
    background-color: white;
    font-family: Arial, sans-serif;
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.2), 0 3px 3px 0 rgba(0, 0, 0, 0.19);
}

    .ORGA-function-key.stop {
        top: 6.27cm;
        left: 5.0cm;
        border-color: red;
        color: red;
        background: #dddddd;
    }

    .ORGA-function-key.clear {
        top: 7.34cm;
        left: 5.0cm;
        border-color: #ff9f33;
        color: black;
        background: #dddddd;
    }

    .ORGA-function-key.menue {
        top: 8.41cm;
        left: 5.0cm;
        border-color: blue;
        color: black;
        background: #dddddd;
    }

.orgaktdetails:hover {
    cursor: pointer;
    transform: scale(1.05) perspective(5px);
}

.ORGA-function-key.ok {
    top: 9.46cm;
    left: 5.0cm;
    border-color: green;
    color: green;
    background: #dddddd;
}

.ORGA-function-key.stop::before {
    content: "\2716";
    font-size: 1.0em;
    margin-right: 0.2cm;
    color: red;
    font-weight: bold;
    font-family: Arial, sans-serif;
}

.ORGA-function-key.clear::before {
    content: "\2190";
    font-size: 1.2em;
    margin-right: 0.10cm;
    color: #ff9f33;
    background-color: #dddddd;
    padding: 0.068cm;
    border-radius: 2.04px;
    font-weight: bold;
    font-family: Arial, sans-serif;
}

.ORGA-function-key.menue::before {
    content: "";
    display: inline-block;
    width: 0.16cm;
    height: 0.22cm;
    border: 1px solid blue;
    background-color: #dddddd;
    position: relative;
    top: -0.04cm;
    left: -0.11cm;
    font-family: Arial, sans-serif;
}

.ORGA-function-key.menue::after {
    content: "";
    display: inline-block;
    width: 0.16cm;
    height: 0.22cm;
    border: 1px solid blue;
    background-color: #dddddd;
    position: absolute;
    margin-right: 0.136cm;
    margin-bottom: 0.068cm;
    top: 0.18cm;
    left: 0.12cm;
    font-family: Arial, sans-serif;
}

.ORGA-function-key.menue: {
}

.ORGA-function-key.ok::before {
    content: "\2714";
    font-size: 0.88em;
    margin-right: 0.20cm;
    color: green;
    font-family: Arial, sans-serif;
}

.ORGA-logo-container {
    position: absolute;
    bottom: 0.25px;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
}

    .ORGA-logo-container svg {
        width: 100%;
        height: auto;
    }

.ORGA-subscription {
    border: Solid 0.3em #cccccc;
    border-radius: 30px;
    background-color: white;
    color: black;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    min-width: 14em;
    max-width: 18em;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 10px;
    padding-left: 10px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}
