/*Fonts IMPORT */
/* titillium-web-200 - 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: 'Titillium Web';
    font-style: normal;
    font-weight: 200;
    src: url('../Fonts/titillium-web-v17-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-200italic - 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: 'Titillium Web';
    font-style: italic;
    font-weight: 200;
    src: url('../Fonts/titillium-web-v17-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-300 - 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: 'Titillium Web';
    font-style: normal;
    font-weight: 300;
    src: url('../Fonts/titillium-web-v17-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-300italic - 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: 'Titillium Web';
    font-style: italic;
    font-weight: 300;
    src: url('../Fonts/titillium-web-v17-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-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: 'Titillium Web';
    font-style: normal;
    font-weight: 400;
    src: url('../Fonts/titillium-web-v17-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-italic - 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: 'Titillium Web';
    font-style: italic;
    font-weight: 400;
    src: url('../Fonts/titillium-web-v17-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-600 - 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: 'Titillium Web';
    font-style: normal;
    font-weight: 600;
    src: url('../Fonts/titillium-web-v17-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-600italic - 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: 'Titillium Web';
    font-style: italic;
    font-weight: 600;
    src: url('../Fonts/titillium-web-v17-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-700 - 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: 'Titillium Web';
    font-style: normal;
    font-weight: 700;
    src: url('../Fonts/titillium-web-v17-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-700italic - 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: 'Titillium Web';
    font-style: italic;
    font-weight: 700;
    src: url('../Fonts/titillium-web-v17-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-900 - 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: 'Titillium Web';
    font-style: normal;
    font-weight: 900;
    src: url('../Fonts/titillium-web-v17-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

:root {
    --kis-primary: #005BA1;
    --kis-primary-hover: #004F8C;
    --kis-frame: #747474;
    --kis-text: #4A4A4A;
    --kis-line: #EFEFEF;
    --kis-table-head-bg: #DFEAF3;
    --kis-danger: #ff0000;
    --kis-success: #4AA117;
    --kis-success-hover: #449416;
    --kis-muted: #919191;
    --bs-gradient: none !important;
    --bs-primary: var(--kis-primary);
    --bs-primary-rgb: 0, 91, 161;
    --bs-secondary: var(--kis-frame);
    --bs-secondary-rgb: 116, 116, 116;
    --bs-success: var(--kis-success);
    --bs-success-rgb: 74, 161, 23;
    --bs-danger: var(--kis-danger);
    --bs-danger-rgb: 255, 0, 0;
    --bs-gutter-x: 0.5rem; /*  verringert den horizontalen Abstand */
    --bs-body-bg : #ddd ;
    --bs-table-striped-bg: rgba(255,0,0,1) !important;
    --bs-table-bg: white !important;
    --bs-table-hover-bg: rgba(255,0,0,0.5) !important;
}

.row {
    --bs-gutter-x: 8px !important;
    --bs-gutter-y: 0;
}

/*Anpassungen*/

.container, .frame-container {
    max-width: 100% !important;
}
.frame-default {
        margin-top: 0px !important;
        padding-top: 10px !important;
}

/* Aus Extension überschreiben*/
.tx-sm-bita table {
    border-collapse: separate;
    border-spacing: 0px;
    color: #545454;
}

.tx-sm-bita table td {
    vertical-align: middle;
}

body {
    overflow-x: hidden;
    background-color: #ddd;
    font-size: 14px !important;

    font-family:"Titillium Web" , sans-serif  !important;
}

.navbar-fixed-top {
    height:70px;
    padding:0 20px;
}

.body-bg-top {
}

#page-content {
    min-height: calc(100vh - 160px);
    background-color: var(--kis-table-head-bg);
    padding-bottom: 80px;
}


.frame-space-before-none {
    margin-top: 0rem !important;
    padding-top: 7px !important;
    padding-bottom: 0px !important;
}


section.section.footer-section.footer-section-meta {
    position: fixed;
    z-index: 2000;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 8px;

    .frame {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
    }
}

.main-content-navheader {
    height: 40px;
}
h1,h2,h3,.h2 {
    font-weight: 600 !important;
}
.h2 {
    font-size: 1.3em !important;
}
.cursor-pointer {
    cursor: pointer;
}
.table-hover {
    cursor: pointer;
}

.ui-widget-header {
    background: #fff !important;
    font-size: 1.4em;
    border: none !important;
}

.ui-dialog {
    top:50px !important;
    border-radius: 8px;
}

@media (max-width: 700px) {
    .ui-dialog {
        width: 100% !important;
    }
}


.table-striped > tbody > tr:nth-of-type(1n+1) > * {
    --bs-table-color-type: var(--bs-table-striped-color);
    --bs-table-bg-type: rgba(255,255,255,1) !important;
}

.table-striped > tbody > tr:nth-of-type(2n+1) > * {
    --bs-table-color-type: var(--bs-table-striped-color);
    --bs-table-bg-type: rgba(255,255,255,0.7) !important;
}


.ui-dialog .ui-dialog-titlebar-close {
    right: 19px !important;
    top: 19px !important;
    width: 23px;
    margin: -11px 0 0 0 !important;
    padding: 0px !important;
    height: 23px  !important;
    background: none  !important;
    border: none !important;
}

.modal .modal-title,
.ui-dialog .ui-dialog-title,
.kis-dialog-title {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.4;
}

.kis-modal-panel {
    background: #fff;
    width: min(560px, calc(100% - 2rem));
    margin: 50px auto;
    border-radius: 8px;
    box-shadow: 0 8px 32px #0003;
}

.kis-dialog-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border-bottom: 1px solid var(--bs-border-color, #ddd);
}

.modal .btn-close,
.kis-dialog-close {
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
    padding: 0;
    border: 0;
    opacity: 1;
    background: transparent url('../Images/Icons/loeschen-rot-icon.png') center / contain no-repeat;
    cursor: pointer;
}

.modal .btn-close:hover,
.kis-dialog-close:hover {
    opacity: 1;
    transform: none;
}

.anlagen-choice-list .anlageLabel {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: .75rem;
    position: relative;
    width: 100%;
    margin: 0;
    text-align: left;
    padding: .65rem .85rem;
    box-shadow: none;
}

.anlagen-choice-list input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.anlagen-choice-list .anlageLabel:hover,
.anlagen-choice-list .anlageLabel:has(input:checked) {
    background: rgba(var(--bs-primary-rgb), .08);
    color: var(--bs-primary);
    transform: none;
}

.anlagen-choice-list .anlageLabel:focus-within {
    outline: 2px solid var(--bs-primary);
    outline-offset: 2px;
}

.anlagen-choice-list .anlageAmpel,
.anlagen-choice-list .anlageLabel-all::before {
    flex: 0 0 1rem;
    width: 1rem;
    height: 1rem;
    margin: 0;
}

.anlagen-choice-list .anlageLabel-all::before {
    content: '';
}

.ui-icon-closethick {
    background-image: url('../Images/Icons/loeschen-rot-icon.png') !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: center !important;
    width: 100% !important;
    height: 100% !important;
}

/* Buttons*/
.btn {
    border-radius: 6px !important;
}

.btn-xs {
    padding: 0.05rem 0.15rem;
    font-size: 0.575rem !important;
}
.btn-block {
    width:100%;
}
//Status*/
.bg-ungelesen {
}

.verticaltext {
    position: relative;
    padding-left: 30px;
    margin: 31px -3px 0px 15px;
    min-height: 50px;
}

.rows-less-margin {
    .form-group {
        margin-right: -5px !important;
        margin-left: -5x !important;
    }
}


.rotate {
    white-space: nowrap;
    width: 0;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;


    > div {
        transform:
                translate(0px, 110px)
                rotate(-90deg);
    }
    > div > span {
    }
}

/*
input[type="number"] {
    width: 70px;
    display: initial;
}
*/
.verticaltext_content {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
    left: -44px;
    top: 30%;
    position: relative;
    text-transform: uppercase;
    font-weight: bold;
}

.tx-sm-bita {
  /*  overflow: hidden;*/
}

.tx-sm-bita .table {
    margin-bottom: 0 !important;
}

.tx-sm-bita .table td {
    text-align: inherit;
}

.tx-sm-bita .table td input {
    border: 1px solid #aaa;
}

.tx-sm-bita .form-group {
    margin-bottom: 0.2rem;
    margin-right: -6px ;
    margin-left: -6px ;
}

.tx-sm-bita   .header {
    width: 100%;
    padding: 5px 6px;
    margin-bottom: 7px;
    font-weight: bold;
    font-size: 0.8em;
    text-transform: uppercase;
    background: var(--kis-primary);
    color: white;
    border-bottom: 1px solid #aaa;
}

.tx-sm-bita  label {

    font-size: 14px !important;

}

.tx-sm-bita label::after {
    background: transparent !important;
}


.tx-sm-bita   input[type="radio"],
.tx-sm-bita   input[type="checkbox"] {
}

#filterMenu input[type="checkbox"] {
    accent-color: var(--kis-primary);
}

.tx-sm-bita   input[readonly],
.tx-sm-bita   .form-control[readonly] {
    color: #2b2b2b;
    background: transparent;
}
.tx-sm-bita  .form-control::placeholder,.form-control {

    color: #111 !important;
    background: var(--kis-line);
}
.card {
    background: white !important;
}

.form-control input[type="submit"]{
    background-color: var(--kis-primary);
    color: white;

}
.div-striped {
    .row :nth-child(even) {
    }

    .row :nth-child(odd) {
    }
}

.loading {
    background-image: url("../Images/loading.gif");
    background-repeat: no-repeat;
    background-position: center center;
    height: 200px;


}


@keyframes dots-e3xtdg {
    to {
        clip-path: inset(0 -34% 0 0);
    }
}

@media screen {
    #printSection {
        display: none;
    }
}

@page {
    size: 230mm 297mm;
    margin: 0mm 0mm 0mm 15mm; /* minimaler Lochrand für maximale Breite */
}


@media print {

    html:has(.notfallliste-print),
    body:has(.notfallliste-print) {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body .ui-dialog:has(.notfallliste-print) {
        position: absolute !important;
        inset: 0 auto auto 0 !important;
        transform: none !important;
        float: none !important;
        width: 100% !important;
    }

    .ui-dialog-content:has(.notfallliste-print),
    .tx-sm-bita:has(.notfallliste-print),
    .notfallliste-print {
        display: block !important;
        position: static !important;
        transform: none !important;
        break-before: auto !important;
        break-after: auto !important;
    }

    body:has(.notfallliste-print) > :not(.ui-dialog:has(.notfallliste-print)) {
        display: none !important;
    }

    body:has(.notfallliste-print),
    .ui-dialog:has(.notfallliste-print),
    .ui-dialog-content:has(.notfallliste-print),
    .notfallliste-print {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .notfallliste-print,
    .notfallliste-print * {
        visibility: visible !important;
    }

    .ui-dialog:has(.notfallliste-print) > .ui-dialog-titlebar,
    .notfallliste-print button {
        display: none !important;
    }

    .notfallliste-print th {
        position: static !important;
    }

    .notfallliste-print tr {
        break-inside: avoid;
    }

    .ui-dialog {
        position: relative !important;
        left: 0 !important;
        top: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Rahmen und Padding entfernen für Druck */
    .ui-dialog {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .ui-dialog-content {
        padding: 0 !important;
        margin: 0 !important;
    }

    .print-wrapper {
        visibility: visible !important;
    }

    .print-copy {
        page-break-after: auto;
        break-after: auto;
    }

    .print-copy + .print-copy {
        page-break-before: always;
        break-before: page;
    }

    .print-header {

        position: absolute;

        top: 2mm;

        right: 6mm;




        font-size: 14pt;

        font-weight: bold;

color:#777;

        pointer-events: none;

        z-index: 9999;

        background: none;

        border: none;

        margin: 0;

        padding: 0;

    }

    /* Nur Wrapper anzeigen */
    body * {
        font-size: 13px;
        visibility: hidden;
    }

    .print-wrapper,
    .print-wrapper * {
        visibility: visible !important;
    }

    .print-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important; /* volle Breite nutzen */
        margin: 0 !important;
        padding: 0 !important;
    }

    body *  {
        visibility: hidden;
    }
    body {
        background-color: #fff;
        background-image: none;
    }
    .body-bg-top {
        padding-top: 0px !important;
    }
    .status {
        top: 110px !important;
        background: none !important;
        left: 30% !important;
        right: 30% !important;
    }
    .py-3,px-2{
        padding: 0px !important;
    }


    .col-form-label {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-bottom: 0;
        font-size: inherit;
        line-height: 1.5;
    }

    .img-fluid {
        max-width: 100% !important;
        max-height: 50px !important;
    }


    #page-content {
        padding-bottom: 0px;
    }
    .ui-widget.ui-widget-content {
        top:0px !important;
        border-radius: 8px;
    }
    .tx-sm-bita .form-group input:not([type="checkbox"]):not([type="radio"]),
    .form-select,
    textarea.form-control,
    textarea,
    input[type="text"],
    input[type="password"] {        border: none !important;
        padding: 0px 7px!important;
        font-size: 13px !important;
       color: #000 !important;
        box-shadow: none !important;
        background: none !important;
        margin-top: -3px !important;
    }

    .tx-sm-bita .form-group {
        margin-bottom: 0px !important;
        margin-right: 0px !important;
        margin-left: 0px !important;
        padding: 0px !important;

    }

    .ui-dialog * {
        visibility: visible;
        overflow: visible !important;
    }
    .table thead tr td,.table tbody tr td{

    }


    .no-print,.ui-dialog-buttonpane.ui-widget-content.ui-helper-clearfix, .ui-dialog-titlebar.ui-corner-all.ui-widget-header.ui-helper-clearfix.ui-draggable-handle, .btn {
        display: none !important;
    }


    .border {
        border: none !important;
    }

}

.ui-dialog {
    z-index: 2000 !important;



}
.ui-dialog-title {
    border-bottom: 1px solid #aaa;
    font-weight: normal;
}

.ui-dialog .ui-dialog-title {
    width: 100% !important;
}

.ui-dialog .ui-dialog-titlebar {
    padding: 5px 18px;
}
.ui-dialog-content {
    max-height: 90vh !important;
    min-height: initial !important;
    padding: 0 18px 18px !important;


}
.signature {
    background-image: url('../Images/Ionicons/compose.svg');
    background-color: #ddd;
    width: 85px;
    height: 34px;
    background-repeat: no-repeat;


}
.signature:hover {
    color: inherit !important;
    background-color: var(--kis-muted);
}
.signature-sm {
    height: 25px;
    padding:0px;
    background-size: contain;
    width: 90%;
}
#mainnavigation {
    font-size: 1.7em;
    .navbar-nav {
      /*  height: 100%;*/
        .nav-item {
            height: 100%;
            display: flex;
            .nav-link {
                font-size: 1em;
                color: #F2F5F8;
                &:before {
                    display: none;
                }
            }

        }

            .nav-item.active {
                background: #F2F5F8;
                border-radius: 10px;
                .nav-link,.nav-link-text {
                color: var(--kis-primary);
            }
        }
    }
}

.nav-zustand-dot {
    display: inline-block;
    width: .55em;
    height: .55em;
    margin-left: .35em;
    border-radius: 50%;
    vertical-align: middle;
    border: 1px solid rgba(255, 255, 255, .65);
}

.nav-zustand-dot-stack {
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    margin-left: .35em;
    vertical-align: middle;
}

.nav-zustand-dot-stack .nav-zustand-dot {
    margin-left: 0;
}

.nav-zustand-dot-0 {
    background: #ffc107;
}

.nav-zustand-dot-1 {
    background: #28a745;
}

.nav-zustand-dot-2 {
    background: #17a2b8;
}

.nav-zustand-dot-3 {
    background: #ff3b1f;
}

.nav-item.active .nav-zustand-dot {
    border-color: rgba(0, 0, 0, .15);
}

.btn {
    min-height: 32px;
}

.btn:not(input) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

.btn.active:not(.nav-link) {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--kis-frame);
    --bs-btn-border-color: var(--kis-frame);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-text);
    --bs-btn-hover-border-color: var(--kis-text);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-text);
    --bs-btn-active-border-color: var(--kis-text);
    color: white;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--kis-primary);
    --bs-btn-border-color: var(--kis-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-primary-hover);
    --bs-btn-hover-border-color: var(--kis-primary-hover);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-primary-hover);
    --bs-btn-active-border-color: var(--kis-primary-hover);
    color: white;
}

.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--kis-success);
    --bs-btn-border-color: var(--kis-success);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-success-hover);
    --bs-btn-hover-border-color: var(--kis-success-hover);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-success-hover);
    --bs-btn-active-border-color: var(--kis-success-hover);
}

.btn-secondary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--kis-frame);
    --bs-btn-border-color: var(--kis-frame);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-text);
    --bs-btn-hover-border-color: var(--kis-text);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-text);
    --bs-btn-active-border-color: var(--kis-text);
}

.btn-outline-primary {
    --bs-btn-color: var(--kis-primary);
    --bs-btn-border-color: var(--kis-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-primary);
    --bs-btn-hover-border-color: var(--kis-primary);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-primary-hover);
    --bs-btn-active-border-color: var(--kis-primary-hover);
}

.btn-outline-secondary {
    --bs-btn-color: var(--kis-frame);
    --bs-btn-border-color: var(--kis-frame);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--kis-frame);
    --bs-btn-hover-border-color: var(--kis-frame);
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--kis-text);
    --bs-btn-active-border-color: var(--kis-text);
}
.navbar-mainnavigation .navbar-brand-image img {
    max-height: 100%;
}

.border-2 {
    border-width: 2px;
}
.nav-pills {
    .nav-link {
        border-radius: 6px;
        padding: 0.2rem 0.6rem 0.2rem !important;
    }

}

.nav-btn {
    font-size:1em !important;          /* leicht kleiner, damit optisch wie Textgröße */
    vertical-align: middle !important;     /* mittig zum Text ausgerichtet */
    transform: translateY(-1px); /* optische Feinausrichtung */
    margin-right: 0.4em;        /* gleichmäßiger Abstand vor Text */
}

.nav-tabs {
    background-color: rgba(255,255,255,0.8) !important;
    font-size: 1.2em;
    padding: 3px 12px;
    height: 56px;
}


.nav-tabs .nav-link {
    color: var(--kis-primary);
    background-color: transparent;
    /*  border:none;
    font-weight: bold;*/
    margin: 5px 10px;
}

.nav-tabs .subnav-link {
    color: var(--kis-primary);
    border-radius: 6px !important;
    border: none;
}

.nav-tabs .subnav-link:hover, .subnav-link:focus {
    background-color: var(--kis-primary);
    color: white !important;
}

.active   .subnav-link-text {
    color: white !important;
    background-color: transparent;
}
.nav-tabs .nav-item.active{
    background-color: transparent;
    border:none;
    font-weight: normal;
}

.nav-tabs .nav-link.active {
    background-color: var(--kis-primary);
    color: white !important;
    border:none;
    font-weight: normal;
}

.nav-tabs .nav-item  {
    border-radius: 6px !important;
}

.nav_logo {
    flex: auto;
}

.btn-logout {
    display: inline-flex;
    align-items: center;
    background-color: #fff;
    padding: 5px 7px;
    height: 30px !important;

}

.btn-logout img {
    margin-right: 5px; /* Fügen Sie einen kleinen Abstand zwischen dem Bild und dem Text hinzu */
    max-height: 100%;
}

.btn-logout span {
    font-size: 14px; /* Passen Sie die Schriftgröße des Textes an */
}


#filters, #anlagenButton {
    height: 30px !important;
}

.btn-dark,.bg-secondary {
    --bs-btn-color: #ffffff;
    --bs-btn-bg: var(--kis-frame) !important;
    --bs-btn-border-color: var(--kis-frame) !important;
}

.table-dark {
     --bs-table-bg: var(--bs-secondary-bg) !important;
     --bs-table-color:#000 !important;
}
.ui-autocomplete {
    z-index: 2000 !important;
}

/* Autocomplete andere Farke*/
.ui-autocomplete-input {
    /*   background: #22a5f34f !important;
       /* background-image: url("../Images/Ionicons/*ios-loop-strong.svg") !important;
         background-repeat: no-repeat !important;
         background-position: right !important;
         background-size: contain !important;
         background-origin: content-box !important;*/
}
.ui-autocomplete-loading{
    /*  background: #22a5f34f !important; */
    background-image: url("../Images/loading-trans.gif") !important;
    background-repeat: no-repeat !important;
    background-position: right !important;
    background-size: contain !important;
    background-origin: content-box !important;
}




/* Status oben platzieren */
.status {
    position: absolute;
    left: 0;
    right: 0;
    top: 0px;
    padding: 3px;
    background: #ffffb1;color:#111;

}

#typAuswahl .btn.active {
    background-color: var(--kis-primary) !important;
    border-color: var(--kis-primary) !important;
    color: #fff !important;
}

.collapsearrow {
    background-image: url('../Images/Ionicons/ios-arrow-down.svg');
    background-position: right;
    background-size: contain !important;
    background-origin: content-box !important;
    background-repeat: no-repeat;
    width: 86px;
}
.btn-save {
    background-image: url('../Images/Ionicons/android-send.svg');
    background-size: contain !important;
    height: 32px;
    width: 34px;
    margin-left:5px;
    background-repeat: no-repeat;
}

button:focus {
    outline: none !important;
}

.frame-container,.container {
    max-width: none;
    padding-left: 0px !important;
    padding-right: 0px !important;
    width: 100%;
}

.navbar-mainnavigation .navbar-brand-image {
    position: relative;
    padding-top: 5px;
    padding-bottom: 5px;
}
#page-header {
    background-color: var(--bs-primary) !important;
    height:80px;
    z-index: 1000;
}

#page-header .kis-user-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    font-size: 20px;
    line-height: 1;
}

#page-header .kis-user-menu-toggle:focus-visible {
    outline: 2px solid white !important;
    outline-offset: 3px;
}

#page-header .kis-user-menu-toggle,
#page-header .kis-user-menu-toggle:hover,
#page-header .kis-user-menu-toggle:focus,
#page-header .kis-user-menu-toggle:active {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}
.navbar-mainnavigation .navbar-brand {
    height: 65px;
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.navbar-mainnavigation > .container > .collapse > .navbar-nav:last-child {
    margin-left: initial;
}
.nav-link-text {
    color:white;
}


.tx-sm-bita .form-group {
    margin-bottom: 0.2rem;
    margin-right: -6px !important;
    margin-left: -6px !important;
    padding: 0px 3px 5px
}

.form-group > * {
    padding: 5px 4px 0px 8px;
}

.form-control {
    /*   border-radius: 0;*/
}

.tx-sm-bita .form-group textarea.form-control, .tx-sm-bita textarea.form-control, textarea,  input[type="text"],  input[type="password"],input[type="date"], .form-control , .form-select  {
    border: 1px solid #aaa ;
    color:#111 !important;
background-color: #ECECEC !important;    ;
    border-radius: 5px !important;
}

.form-control, .form-select {
    /*  padding: 10px;*/
    border-radius: 5px;
}
.form-control::placeholder, .form-group input[type="file"]::placeholder {
    color:#555;
}
.nav-pills .nav-link.active {
    /* border-bottom-left-radius: 0px;

     border-bottom-right-radius: 0px;*/
    background-color: var(--kis-primary);
    color: #fff;
}

.status {
    position: absolute;
    left: 0;
    right: 0;
    top: 0px;
    padding: 3px;
    background: #ffffb1;
    color: #111;
}

.tx-sm-bita .form-group .header {
    width: 100%;
    padding: 5px 6px;
    margin-bottom: 7px;
    font-weight: bold;
    font-size: 0.8em;
    text-transform: uppercase;
    background: var(--kis-primary);
    color: white;
    border-bottom: 1px solid #aaa;
}
.tx-sm-bita .form-group input[type="checkbox"] {
    font-size: 14px !important;
}


.footer-copyright a {
    color:white !important;
    text-decoration: none;
}
.footer-menu-section + .footer-info-section {
    margin-top:5px !important;
}
.footer-sociallinks {
    display: none;
}
.col-form-label {
    padding: 10px 6px 0px 6px;
}


.bg-light,.alert-light {
    background-color: #E9E9E9 !important;
}

.alert{

}

th {
    position: sticky;
    top: 0;
}

.footer-section-content {
    display: none;
}


.footer-section-meta .frame {
    padding:0px !important;

}


.support-container {
    position: absolute;
    display: inline-block;
    top: 80px;
    right: 0px;
    height: 55px;
padding: 9px 6px;
    transition: right 0.5s ease-out; /* hinzugefügt */
    border-top: 1px solid #fff;
}

.icon-support {
    height: 100%;
    cursor: pointer;
    float: left;
    position: relative;
}

.hover-text {
    position: absolute;
    left: 100%;
    top: 0;
    width: 340px;
    height: 54px;
    padding: 4px;
    text-align: center;
}

.support-container:hover {
    right: 340px; /* geändert */
}


.frame-type-felogin_login {
    max-width: 712px;
    margin: 5% auto;
}


.ui-widget-overlay {
    background: #111 !important;
    opacity: 0.5 !important;
    -ms-filter: Alpha(Opacity=70);
}

.form-floating > .form-control:focus ~ label::after, .form-group .form-floating > input[type="file"]:focus ~ label::after, .form-floating > .form-control:not(:placeholder-shown) ~ label::after, .form-group .form-floating > input[type="file"]:not(:placeholder-shown) ~ label::after, .form-floating > .form-control-plaintext ~ label::after, .form-floating > .form-select ~ label::after {
    background-color: transparent;
    border:none;
}

.form-floating > label {
    color: var(--kis-text);
}

.form-floating > .form-control,
.form-floating > .form-select {
    min-height: 51px;
    padding-top: 1.625rem;
    padding-bottom: 0.625rem;
}

.form-floating > .form-control-sm {
    min-height: 44px;
    padding-top: 1.35rem;
    padding-bottom: 0.35rem;
}

.form-floating > .form-control-sm ~ label {
    padding-top: 0.45rem;
    padding-bottom: 0.25rem;
    font-size: 0.8rem !important;
}

.revision-header-field {
    width: 220px;
}

.revision-header-date {
    width: 150px;
}

.form-check-input:checked {
    background-color: var(--kis-primary);
    border-color: var(--kis-primary);
}

.preview-container {
    display: flex;
    flex-wrap: wrap; /* Zeilenumbruch bei vielen Dateien */
    gap: 10px; /* Abstand zwischen den Thumbnails */
    margin-left: 15px;
}

.preview-container img {
    width: 75px; /* Einheitliche Breite */
    height: 75px; /* Einheitliche Höhe */
    object-fit: cover; /* Zuschneiden, ohne Verzerrung */
    border: 1px solid #ccc; /* Optional: Rahmen */
    border-radius: 5px; /* Optional: Abgerundete Ecken */
}
input[type="date"],input[type="text"],input[type="password"], .form-select , .form-date ,.form-submit{
   /* height: 51px;*/
}

.form-check-input:checked + .form-check-label img {
    transform: scale(1.2);
    opacity: 1.0 !important;

}
@media (min-width: 992px) {
     .maincontent-wrap {
        width: 100% !important;
         padding: 0 5px;
    }
}

@media (min-width: 992px) {
    .backendlayout-subnavigation_left .subnav-wrap {
        order: 1;
        width: 100%;
    }
}

.table-wartungsplan {
    table-layout: fixed;
    width: 100%;
}

.tablesorter-header-inner {
    float: left;
}
.table-wartungsplan td, .table-wartungsplan th{
    vertical-align:middle !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.table-sortierbar thead th.tablesorter-headerAsc:after,
.table-sortierbar thead th.tablesorter-headerDesc:after {
    content: " ↑"; /* Aufsteigend */
    display: inline; /* Verhindert Zeilenumbruch */
    margin-left: 5px; /* Abstand zwischen Text und Pfeil */
    font-size: 0.8em;
    vertical-align: middle; /* Richtet den Pfeil aus */
    float:left;
}

.table-sortierbar thead th.tablesorter-headerDesc:after {
    content: " ↓"; /* Absteigend */
}

.sticky-header {
    position: sticky;
    top: 0;
    z-index: 1020;

}

th[data-sort] {
    white-space: nowrap;
}

th[data-sort] .filter-icon {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    flex-wrap: nowrap;
}

th[data-sort].has-active-filter {
    background-color: #FFE28A !important;
    color: #000 !important;
}

th[data-sort].has-active-filter .filter-icon {
    font-weight: 600;
}

th[data-sort] .column-filter-indicator {
    display: inline-block;
    width: 0.55rem;
    height: 0.55rem;
    margin-left: 0.35rem;
    border-radius: 50%;
    background-color: var(--kis-primary);
    vertical-align: middle;
}

th[data-sort] .sort-indicator {
    display: inline-block;
    white-space: nowrap;
    vertical-align: middle;
}


.ui-autocomplete {
    overflow-y: scroll;
    overflow-x: hidden;
    max-height: 200px;
}

.gantt-container {
    border-radius: 0px !important;
}

#gantt-chart {
    background: white;
}

.gantt-container .side-header select {
    width: 100px !important;
}



.alert.alert-light {
    color: #8c8c8c;
}
.taskcolor_1 .bar {
    fill: #FFFFFF !important; /* Hellrosa */
}

.taskcolor_2 .bar {
    fill: #90EE90 !important; /* Hellgrün */
}

.taskcolor_3 .bar {
    fill: #ADD8E6 !important; /* Hellblau */
}

.taskcolor_4 .bar {
    fill: #FFD700 !important; /* Goldgelb */
}

.taskcolor_5 .bar {
    fill: #FFA07A !important; /* Hellorangerot */
}

.taskcolor_6 .bar {
    fill: #DDA0DD !important; /* Pflaume (Lila) */
}


.color-grid {
    display: flex;
    flex-wrap: wrap; /* Bricht die Farben nach 3 pro Zeile um */
    max-width: 80px; /* Breite für 3 Kreise */
}

.color-picker {
    width: 20px;
    height: 20px;
    border-radius: 20%;
    border: 2px solid #aaa;
    cursor: pointer;
    display: inline-block;
}

.color-picker.active {
    border: 3px solid black; /* Aktive Farbe mit schwarzem Rand */
}
.color-picker input:checked + & {
    border: 2px solid #000;
}
#qrcode img{
    max-width: 100%;
}

.artikel-item.hidden{display: none !important;}

.form-check-input:focus {
    box-shadow: none !important;
}



    span.ml-1.text-light {
        color: #999 !important;
        text-decoration: line-through;
    }


.position-locked .form-control[readonly]{
    background-color:#f8f9fa;
    opacity:1;
    cursor:not-allowed;
}
.position-locked .material-remove,
.position-locked .contract-remove{
    display:none !important;
}
.banf-badge{
    font-size: .65rem !important;
    position: absolute;
    left: -12px;
    top: -9px;

}

.banf-separator {
    border-top:  var(--bs-list-group-border-width) solid var(--bs-list-group-border-color) !important;
    margin-top: 20px; /* Abstand zwischen Gruppen */
}

.new-position {
    border-top:  var(--bs-list-group-border-width) solid var(--bs-list-group-border-color) !important;
    border-radius: 8px 8px 0 0;

    margin-top: 0.75rem; /* Abstand nach oben nur bei der ersten neuen Position */
}

.scrollable-1 {
    display: block;
    max-height: 40vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.scrollable-0 {
    display: block;
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(70vh - 30px);
}

.besucherbuch-table .scrollable-0 {
    display: table-row-group;
    max-height: none;
}

.besucherbuch-table th:last-child,
.besucherbuch-table td:last-child {
    width: 32px;
}

tr.meldung td.meldung-child {
    padding-left: 3rem;
}
tr.meldung td.meldung-node:not(.meldung-master) {
    padding-left: 1.7rem;
}
tr.meldung td.meldung-master span.child-fold {
    transform: rotate(90deg);
}


.kks-split {
    row-gap: 1rem;
    padding: 10px;
}

#kks-search-input {
    height: 41px !important;
    min-height: unset;
    padding-top: 18px !important;
}

.kks-search-row label {
    padding: 7px !important;
}
.scheinverwaltung-layout {
    align-items: stretch;
}

.scheinverwaltung-action-col .nav-item {
    display: flex;
    width: 100%;
}

.schichtbuch-side-btn {
    min-height: 40px;
    padding-top: .65rem !important;
    padding-bottom: .65rem !important;
    justify-content: flex-start !important;
}

.schichtbuch-side-btn > .d-flex {
    width: 100%;
    align-items: center !important;
    justify-content: flex-start !important;
}

.scheinverwaltung-add-btn {
    align-self: flex-start;
    margin-top: 35px;
    margin-bottom: 0 !important;
}

.revisionen-layout {
    align-items: stretch;
}

.revisionen-action-col {
    display: flex;
    align-items: flex-start;
}

.revisionen-content-panel {
    border-radius: 6px !important;
    overflow: hidden;
    min-height: calc(100vh - 260px);
}

.revisionen-content-body {
    overflow-y: auto;
    height: calc(100vh - 260px);
    border-radius: inherit;
}

.search-content-panel {
    min-height: calc(100vh - 260px);
}

.anlageInput[type="radio"] {
    display: none;
}

.anlageAmpel {
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    cursor: pointer;
    vertical-align: middle;
    border: 2px solid rgba(0,0,0,.2);
    margin-right: 8px;
}

.ampel-red {
    background: #dc3545;
}

.ampel-yellow {
    background: #ffc107;
}

.ampel-green {
    background: #198754;
}

.anlageInput[type="radio"]:checked + .anlageAmpel {
    box-shadow: 0 0 0 1px #0d6efd;
    transform: scale(1.15);
}

.anlagenzustand-page {
    padding-right: 8px;
    padding-left: 8px;
    min-height: calc(100vh - 220px);
}

.anlagenzustand-show-page {
    min-height: calc(100vh - 120px);
}

.anlagenzustand-dot {
    display: inline-block;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    flex: 0 0 34px;
}

.anlagenzustand-dot-sm {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    vertical-align: middle;
}

.anlagenzustand-dot-xs {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    vertical-align: middle;
}

.anlagenzustand-dot-0 {
    background: #ffc107;
}

.anlagenzustand-dot-1 {
    background: #28a745;
}

.anlagenzustand-dot-2 {
    background: #17a2b8;
}

.anlagenzustand-dot-3 {
    background: #ff3b1f;
}

.anlagenzustand-choice {
    min-height: 56px;
    font-size: 1.15rem;
    text-transform: uppercase;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="0"] {
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
    color: #111 !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="0"]:hover,
.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="0"]:focus {
    background-color: #e0a800 !important;
    border-color: #d39e00 !important;
    color: #111 !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="1"] {
    background-color: #28a745 !important;
    border-color: #28a745 !important;
    color: #fff !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="1"]:hover,
.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="1"]:focus {
    background-color: #218838 !important;
    border-color: #1e7e34 !important;
    color: #fff !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="2"] {
    background-color: #17a2b8 !important;
    border-color: #17a2b8 !important;
    color: #fff !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="2"]:hover,
.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="2"]:focus {
    background-color: #138496 !important;
    border-color: #117a8b !important;
    color: #fff !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="3"] {
    background-color: #ff3b1f !important;
    border-color: #ff3b1f !important;
    color: #fff !important;
}

.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="3"]:hover,
.anlagenzustand-choice.anlagenzustand-choice-selected[data-zustand-value="3"]:focus {
    background-color: #d92f18 !important;
    border-color: #d92f18 !important;
    color: #fff !important;
}

.anlagenzustand-card {
    min-height: 108px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
}

.anlagenzustand-card:hover,
.anlagenzustand-card:focus {
    border-color: #b9c4cc;
}

.anlagenzustand-card-title {
    font-size: 1.1rem;
    line-height: 1.25;
}

.anlagenzustand-card-subtitle {
    margin-top: 8px;
    font-size: 1rem;
    line-height: 1.25;
}

.anlagenzustand-card-lines {
    margin-top: 10px;
    padding-top: 8px;
    border-top: 1px solid #e3e6e8;
}

.anlagenzustand-card-line {
    display: grid;
    grid-template-columns: 10px minmax(0, 1fr);
    gap: 6px;
    align-items: center;
    color: #545454;
    font-size: .82rem;
    line-height: 1.2;
}

.anlagenzustand-card-line + .anlagenzustand-card-line {
    margin-top: 5px;
}

.anlagenzustand-card-line-title {
    display: inline;
    overflow: hidden;
    text-overflow: ellipsis;
}

.anlagenzustand-card-line-status {
    color: #777;
}

.anlagenzustand-card-line-status::before {
    content: " ";
}

.anlagenzustand-line-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: flex-end;
    margin-bottom: -1px;
}

.anlagenzustand-line-tab {
    display: inline-flex;
    min-width: 112px;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 14px;
    color: var(--kis-text);
    background: #f6f6f6;
    border: 1px solid #c5cbd0;
    border-bottom: none;
    border-radius: 6px 6px 0 0;
    text-decoration: none;
}

.anlagenzustand-line-tab:hover,
.anlagenzustand-line-tab:focus {
    color: var(--kis-text);
    background: #fff;
    text-decoration: none;
}

.anlagenzustand-line-tab-active {
    background: #fff;
    border-color: #b8c0c7;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, .08);
}

.anlagenzustand-line-tab-title {
    overflow: hidden;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.anlagenzustand-history-scroll {
    max-height: 40vh;
    overflow-y: auto;
}

@media (max-width: 767.98px) {
    .anlagenzustand-card {
        min-height: 122px;
    }

    .anlagenzustand-card-title {
        font-size: 1rem;
    }

    .anlagenzustand-card-subtitle {
        font-size: .9rem;
    }

    .anlagenzustand-line-tab {
        min-width: 86px;
        min-height: 48px;
        padding: 8px 10px;
    }

    .anlagenzustand-line-tab-title {
        font-size: 1rem;
    }
}

.modal .anlagenzustand-show-page {
    background: transparent;
    min-height: auto;
    padding: 0;
}

.anlagenzustand-dialog-modal {
    --bs-modal-border-radius: 8px;
    --bs-modal-header-padding: 5px 18px;
    --bs-modal-padding: 0;
    --bs-modal-width: 760px;
}

.anlagenzustand-dialog-modal .modal-content {
    border: 1px solid #c5c5c5;
    box-shadow: 0 4px 18px rgba(0, 0, 0, .25);
}

.anlagenzustand-dialog-modal .modal-header {
    min-height: 38px;
    border-bottom: 1px solid #aaa;
}

.anlagenzustand-dialog-modal .modal-title {
    width: 100%;
    color: var(--kis-text);
    font-size: 1.45rem;
    font-weight: 400;
}

.anlagenzustand-dialog-modal .btn-close {
    width: 23px;
    height: 23px;
    padding: 0;
    margin: 0;
    opacity: 1;
    background: transparent url('../Images/Icons/loeschen-rot-icon.png') center / contain no-repeat;
    border: none;
    border-radius: 0;
}

.anlagenzustand-dialog-modal .modal-body {
    max-height: 90vh;
    padding: 0 18px 18px !important;
}

.anlagenzustand-dialog-modal .anlagenzustand-show-page {
    color: var(--kis-text);
}

.anlagenzustand-dialog-modal .anlagenzustand-show-page h1,
.anlagenzustand-dialog-modal .anlagenzustand-show-page h2,
.anlagenzustand-dialog-modal .anlagenzustand-show-page strong,
.anlagenzustand-dialog-modal .anlagenzustand-show-page .fw-semibold {
    color: var(--kis-text);
}

.anlagenzustand-dialog-modal .anlagenzustand-show-page .text-muted {
    color: #545454 !important;
}

.modal .anlagenzustand-show-page .row {
    margin-right: 0;
    margin-left: 0;
}

.modal .anlagenzustand-show-page .col-12 {
    padding-right: 0;
    padding-left: 0;
}

.modal .anlagenzustand-show-page .bg-white.p-4 {
    padding: 1rem !important;
}

.modal .anlagenzustand-show-page .text-white {
    color: var(--kis-text) !important;
}

.modal .anlagenzustand-back-link {
    display: none;
}

.modal .anlagenzustand-history-scroll {
    max-height: 220px;
}

/* The icon itself owns its red fill and white outline. */
.table-filter-reset,
.table-filter-reset:hover,
.table-filter-reset:focus-visible,
.table-filter-reset:active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 1.5rem !important;
    min-height: 1.5rem !important;
    max-height: 1.5rem !important;
    line-height: 1;
    border-radius: 0 !important;
    vertical-align: middle;
}

.table-filter-reset-icon {
    display: block;
    width: 80%;
    height: 80%;
    margin: auto;
}

.table-filter-reset,
.table-filter-reset:hover,
.table-filter-reset:active,
.table-filter-reset-icon {
    transform: none !important;
    scale: none !important;
    filter: none !important;
    opacity: 1 !important;
    transition: none !important;
    animation: none !important;
}

/* Keep the icon out of the header text's line box. */
th:has(> .table-filter-reset) {
    padding-right: calc(1.5rem + 1rem) !important;
}

th > .table-filter-reset {
    position: absolute;
    top: 0;
    bottom: 0;
    right: .5rem;
    margin: auto 0 !important;
    float: none !important;
}

/* Keep opted-in table headers above the body's native scrollbar. */
.fixed-table-head {
    overflow: hidden !important;
}
table.fixed-table-body-scroll {
    display: block;
    margin-bottom: 0;
}
table.fixed-table-body-scroll > thead {
    display: block;
    padding-right: var(--fixed-table-scrollbar-width, 0px);
}
table.fixed-table-body-scroll > tbody {
    display: block;
    height: var(--fixed-table-body-height);
    max-height: none !important;
    overflow-y: scroll;
    overflow-x: hidden;
}
table.fixed-table-body-scroll > thead > tr,
table.fixed-table-body-scroll > tbody > tr {
    display: grid;
    grid-template-columns: var(--fixed-table-columns);
}
table.fixed-table-body-scroll > thead > tr > th,
table.fixed-table-body-scroll > tbody > tr > td {
    width: auto !important;
    min-width: 0;
    overflow-wrap: anywhere;
}
table.fixed-table-body-scroll > thead > tr > th {
    position: relative;
    top: auto;
}
table.fixed-table-body-scroll .infinite-table-error > td {
    grid-column: 1 / -1;
}

table.fixed-table-body-scroll > tbody > tr.collapse:not(.show) {
    display: none;
}
table.fixed-table-body-scroll > tbody > tr > td[colspan="2"] {
    grid-column: span 2;
}

/* The date field is visually joined to the "Diese Schicht" control. */
input[type="date"].ereignis-visible-until-date {
    border-left: 0;
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}

/* Keep the Schichtbuch message table reachable on narrow displays instead of
   clipping its right-hand columns. The scope must not affect other fixed tables. */
@media (max-width: 767.98px) {
    .fixed-table-head:has(#table_protokoll_meldungen) {
        overflow-x: auto !important;
    }

    .fixed-table-head:has(#table_protokoll_meldungen) #table_protokoll_meldungen {
        min-width: 1100px;
    }
}

/* Frontend-Auswertungen */
.kis-evaluations .card { border-radius: .6rem; }
.kis-evaluations .card-header { border-bottom-color: rgba(0,0,0,.08); }
.kis-evaluations .list-group-item { min-height: 3rem; }
.kis-dashboard-widget > .card { display: flex; flex-direction: column; max-height: 26rem; overflow: visible; }
.kis-dashboard-grid:not(.kis-dashboard-ready) > .kis-dashboard-widget { display: none; }
.kis-dashboard-widget > .card > .card-body { overflow-y: auto; overscroll-behavior: contain; }
.kis-dashboard-widget [data-kis-panel="list"] { max-height: 22rem; overflow-y: auto; overscroll-behavior: contain; }
.kis-dashboard-widget .card-body > .table-responsive { max-height: 22rem; overflow-y: auto; overscroll-behavior: contain; }
.kis-dashboard-widget { cursor: grab; transition: opacity .15s ease, transform .15s ease; }
.kis-dashboard-widget:active { cursor: grabbing; }
.kis-dashboard-widget.is-dragging { opacity: .45; transform: scale(.98); }
.kisRemoveDashboardWidget { position: absolute; top: .55rem; right: 1rem; z-index: 2; opacity: 0; transition: opacity .15s ease; }
.kis-dashboard-tabs .nav-tabs { overflow-x: auto; flex-wrap: nowrap; gap: .35rem; background: transparent; background-color: transparent !important; }
.kis-dashboard-tabs .nav-link { white-space: nowrap; }
.kis-dashboard-tab { display: inline-flex; align-items: center; margin-bottom: -1px; border: 1px solid transparent; border-bottom: 0; border-radius: .7rem .7rem 0 0; background: rgba(255,255,255,.45); }
.kis-dashboard-tab.active { background: #fff; border-color: var(--bs-border-color); box-shadow: 0 -1px 3px rgba(0,0,0,.06); }
.kis-dashboard-tab .nav-link { border: 0 !important; background: transparent !important; color: var(--bs-body-color); padding-right: .65rem; }
.kis-dashboard-tab.active .nav-link { color: var(--bs-primary); font-weight: 600; }
.kis-dashboard-tab-close { display: inline-flex; align-items: center; justify-content: center; width: 1.3rem; height: 1.3rem; margin-right: .35rem; padding: 0; border: 0; border-radius: .3rem; color: var(--bs-secondary-color); background: transparent; opacity: 0; transition: opacity .15s ease, background .15s ease; }
.kis-dashboard-tab:hover .kis-dashboard-tab-close, .kis-dashboard-tab:focus-within .kis-dashboard-tab-close { opacity: 1; }
.kis-dashboard-tab-close:hover, .kis-dashboard-tab-close:focus { color: var(--bs-danger); background: rgba(var(--bs-danger-rgb), .1); }
.kis-widget-filter-badges { display: flex; flex-wrap: wrap; gap: .25rem; margin-top: .35rem; }
.kis-widget-filter-badges .badge { font-size: .68rem; font-weight: 500; color: var(--bs-secondary-color); background: var(--bs-tertiary-bg); border: 1px solid var(--bs-border-color); }
.kisExportDashboardWidget { position: absolute; top: .55rem; right: 3.35rem; z-index: 2; opacity: 0; transition: opacity .15s ease; }
.kisFilterDashboardWidget { position: absolute; top: .55rem; right: 10rem; z-index: 2; opacity: 0; transition: opacity .15s ease; border: 0; color: var(--bs-primary); padding: .2rem .4rem; background: transparent; }
.kis-dashboard-widget > .kisWidgetSizeToggle { position: absolute !important; display: block !important; top: .55rem !important; right: 6.7rem !important; bottom: auto !important; left: auto !important; z-index: 3; opacity: 0; transform: none !important; transition: opacity .15s ease; }
.kis-dashboard-widget > .card > .card-header { padding-right: 12.5rem; }
.kis-dashboard-widget > .card > .kis-view-toggle,
.kis-dashboard-widget > .card > .card-header .kis-view-toggle { display: flex !important; align-items: center; flex: 0 0 auto; margin-left: auto; z-index: 4; visibility: hidden; opacity: 0; transform: none !important; transition: opacity .15s ease; }
.kis-dashboard-widget:hover .kisRemoveDashboardWidget,
.kis-dashboard-widget:focus-within .kisRemoveDashboardWidget,
.kis-dashboard-widget:hover .kisExportDashboardWidget,
.kis-dashboard-widget:focus-within .kisExportDashboardWidget,
.kis-dashboard-widget:hover .kisWidgetSizeToggle,
.kis-dashboard-widget:focus-within .kisWidgetSizeToggle,
.kis-dashboard-widget:hover .kisFilterDashboardWidget,
.kis-dashboard-widget:focus-within .kisFilterDashboardWidget,
.kis-dashboard-widget:hover .kis-view-toggle,
.kis-dashboard-widget:focus-within .kis-view-toggle,
.kis-dashboard-widget > .card:hover .kis-view-toggle { visibility: visible; opacity: 1; }
.kis-dashboard-widget:hover > .card > .card-header .kis-view-toggle,
.kis-dashboard-widget:focus-within > .card > .card-header .kis-view-toggle,
.kis-dashboard-widget:hover > .card > .kis-view-toggle,
.kis-dashboard-widget:focus-within > .card > .kis-view-toggle { visibility: visible; opacity: 1; }
.kis-view-toggle .btn { border: 0; color: var(--bs-primary); padding: .2rem .4rem; }
.kis-view-toggle .btn.active { background: rgba(var(--bs-primary-rgb), .12); }
.kis-view-toggle .dropdown-menu { z-index: 1080; }
.kis-line-chart { position: relative; display: block; width: 100% !important; height: 15rem !important; }
.kis-line-chart-svg { position: absolute; inset: 0 0 2.8rem; width: 100%; height: calc(100% - 2.8rem); overflow: visible; }
.kis-line-chart-path { fill: none; stroke: var(--bs-primary); stroke-width: 1.4; vector-effect: non-scaling-stroke; }
.kis-line-chart-dot { fill: #fff; stroke: var(--bs-primary); stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.kis-line-chart-labels { position: absolute; inset: auto 0 0; display: flex; justify-content: space-between; gap: .15rem; height: 2.6rem; overflow: hidden; }
.kis-line-chart-label { color: var(--bs-secondary-color); font-size: .7rem; line-height: 1; writing-mode: vertical-rl; transform: rotate(180deg); text-decoration: none; white-space: nowrap; }
.kis-line-chart-label-hidden { visibility: hidden; }
.kis-line-chart-label:hover { color: var(--bs-primary); }
.kisExportDashboardWidget { border: 0; color: var(--bs-primary); padding: .2rem .4rem; background: transparent; }
.kisExportDashboardWidget:hover, .kisExportDashboardWidget:focus { color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .12); }
.kisFilterDashboardWidget:hover, .kisFilterDashboardWidget:focus { color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .12); }
.kisWidgetSizeButton { border: 0; color: var(--bs-primary); padding: .2rem .4rem; background: transparent; }
.kisWidgetSizeButton:hover, .kisWidgetSizeButton:focus { color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .12); }
.kis-widget-handle { cursor: grab; }
.kis-widget-choice { width: 100%; display: flex; gap: .75rem; align-items: center; padding: .75rem; text-align: left; color: inherit; background: #fff; border: 1px solid var(--bs-border-color); border-radius: .5rem; transition: border-color .15s ease, background .15s ease; }
.kis-widget-choice:hover, .kis-widget-choice:focus { border-color: var(--bs-primary); background: rgba(var(--bs-primary-rgb), .04); }
.kis-widget-choice > i { font-size: 1.5rem; }
.kis-widget-choice strong, .kis-widget-choice small { display: block; }
.kis-widget-choice small { color: var(--bs-secondary-color); margin-top: .1rem; }
.kis-widget-choice.is-present { border: 2px solid var(--bs-primary); box-shadow: 0 0 0 .15rem rgba(var(--bs-primary-rgb), .12); }
.kis-widget-choice.is-present:disabled { color: inherit; background: #fff; opacity: 1; cursor: default; }
