/* Links */
a {
    color: #bb6bd9 !important;
    text-decoration: none !important;
}

    a:hover {
        color: #d69de5 !important;
        text-decoration: none !important;
    }

/* Buttons */
.btn:not(.ignore){
    background-color: #9b59b6 !important;
    border-color: #8e44ad !important;
    color: #fff !important;
}
.btn:hover:not(.ignore) {
    background-color: #8e44ad !important;
    border-color: #7d3c98 !important;
}
.btn:focus:not(.ignore), .btn:active:focus:not(.ignore) {
    box-shadow: 0 0 0 0.1rem #1a1a1a, 0 0 0 0.25rem #bb6bd9 !important;
}
/* Form Controls */
.form-control, .form-select {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
    border-color: #7d3c98 !important;
} .form-control::placeholder {
        color: #aaa !important;
    } .form-control:focus {
        border-color: #bb6bd9 !important;
        box-shadow: 0 0 0 0.1rem #1e1e1e, 0 0 0 0.25rem #bb6bd9 !important;
    }
/* Checkboxes, Radios */
.form-check-input {
    background-color: #1e1e1e !important;
    border-color: #7d3c98 !important;
}
/* Modal (Bootbox) */
.bootbox .modal-content, .modal-content {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
    border-color: #7d3c98 !important;
} .modal-header, .modal-footer {
    border-color: #333 !important;
}
/* Select2 */
.select2-container--default .select2-selection--single {
    background-color: #1e1e1e !important;
    border: 1px solid #7d3c98 !important;
    color: #e0e0e0 !important;
} .select2-container--default .select2-selection__rendered {
    color: #e0e0e0 !important;
} .select2-container--default .select2-results__option {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
} .select2-container--default .select2-results__option--highlighted {
    background-color: #7d3c98 !important;
    color: #fff !important;
} .box-header {
    background: #8e44ad !important;
    color: white !important;
}

  .ignore:hover{
      text-decoration: none !important;
  }

  td > .btn{
      width:50px;
  }

td.button-area {
    text-align: center;
}

.bell-link:hover {
    background-color: #7d3c98;
    cursor: pointer;
    color: #fff !important;
}

/* Dropdown Divider Farbe anpassen */
#notificationMenu .dropdown-divider {
    border-color: #7d3c98 !important;
}



.sidebar {
    max-height: 85vh;
    overflow:hidden;
    
}

.select2-container .select2-selection--single {
    height: calc(2.25rem + 2px) !important;
}

.filepond--drop-label {
    color: transparent !important;
    user-select: none !important;
}

    .filepond--drop-label .filepond--label-action {
        display: none !important;
    }

body {
    background-color: #1e1e2f;
    color: #f8f9fa;
}

.card {
    background-color: #2c2f4a;
    color: #fff;
}

.nav-tabs .nav-link {
    color: #bbb;
}

    .nav-tabs .nav-link.active {
        background-color: #6f42c1;
        color: #fff;
        border-color: #6f42c1 #6f42c1 #2c2f4a;
    }

.progress {
    background-color: #444;
}

.progress-bar {
    background-color: #6f42c1;
}

.btn-primary, .btn-success, .btn-outline-primary, .btn-warning, .btn-danger {
    border: none;
}

.btn-outline-primary {
    color: #6f42c1;
    border-color: #6f42c1;
}

    .btn-outline-primary:hover {
        background-color: #6f42c1;
        color: white;
    }

.input-group-text {
    background-color: #3a3d5a;
    color: #fff;
    border: none;
}

.form-control {
    background-color: #2e304b;
    color: #fff;
    border: 1px solid #444;
}

    .form-control:focus {
        background-color: #2e304b;
        color: #fff;
        border-color: #6f42c1;
        box-shadow: none;
    }

.list-group-item {
    background-color: #2e304b;
    color: #fff;
    border: 1px solid #3a3d5a;
}

.btn {
    border-radius: 0.3rem;
}

canvas {
    background-color: #1a1b2e;
    border-radius: 8px;
}

#tempChart {
    width: 100%;
    max-width: 700px;
    height: 250px;
    margin: 0 auto;
    display: block;
}

#contextMenu {
    position: fixed; /* WICHTIG: fixed, nicht absolute */
    display: none;
    z-index: 9999; /* sicher über allem */
}

.modal-body {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

#progress-bar {
    transition: width 0.3s ease-in-out;
}


/* JS setzt die Höhe dynamisch */
:root {
    --vh: 100vh;
}

html, body {
    height: calc(var(--vh, 1vh) * 100);
}

    body.d-flex {
        display: flex;
        flex-direction: column;
        min-height: calc(var(--vh, 1vh) * 100);
    }

.content-wrapper {
    flex: 1 0 auto; /* Content füllt Platz */
}

.footer {
    flex-shrink: 0; /* Footer bleibt unten */
    padding: 0.5rem 0;
}
