@font-face {
    font-family: Inter-ExtraLight;
    src: url("../otf/Inter-ExtraLight.otf") format("opentype");
}

@font-face {
    font-family: Inter-Light;
    src: url("../otf/Inter-Light.otf") format("opentype");
}
@font-face {
    font-family: Inter-Regular;
    src: url("../otf/Inter-Regular.otf") format("opentype");
}
@font-face {
    font-family: Inter-Medium;
    src: url("../otf/Inter-Medium.otf") format("opentype");
}
@font-face {
    font-family: Inter-SemiBold;
    src: url("../otf/Inter-SemiBold.otf") format("opentype");
}
@font-face {
    font-family: Inter-Bold;
    src: url("../otf/Inter-Bold.otf") format("opentype");
}       
@font-face {
    font-family: Inter-ExtraBold;
    src: url("../otf/Inter-ExtraBold.otf") format("opentype");
}

@font-face {
    font-family: Inter-UltraBold;
    src: url("../otf/Inter-UltraBold.otf") format("opentype");
}

@font-face {
    font-family: Inter-Black;
    src: url("../otf/Inter-Black.otf") format("opentype");
}

html , body {
    height:100%;
    padding:0;
    margin:0;
    font-variant-numeric: tabular-nums;
}
html {      
    /* scrollbar-color: var(--abm-gray100) transparent; Firefox */
    font-size: 12px;

    --abm-green950: #262626;
    --abm-green950-rgb: 38, 38, 38;

    --abm-green900: #045032;
    --abm-green900-rgb: 4, 80, 50;
    
    --abm-green700: #017b49;
    --abm-green700-rgb: 1, 123, 73;
    
    --abm-green500: #0bb366;
    --abm-green500-rgb: 11, 179, 102;
    --abm-green500-rgb-16: 11 179 102 / 16%;
    
    --abm-green300: #6beaa8;
    --abm-green300-rgb: 107, 234, 168;
    
    --abm-green200: #a5f5c6;
    --abm-green200-rgb: 165, 245, 198;
    
    --abm-green100: #d0fbe0;
    --abm-green100-rgb: 208, 251, 224;

    --abm-blue700: #0062A4;
    --abm-blue700-rgb: 0, 98, 164;

    --abm-blue500: #12a4f5;
    --abm-blue500-rgb: 18, 164, 245;
    
    --abm-blue200: #b9e3fe;
    --abm-blue200-rgb: 185, 227, 254;
    
    --abm-blue100: #dff1ff;
    --abm-blue100-rgb: 185, 227, 254;


    --abm-red900: #8e0e16;
    --abm-red900-rgb: 142, 14, 22;

    --abm-red800: #ac0812;
    --abm-red800-rgb: 172, 8, 18;

    --abm-red700: #e30513;
    --abm-red700-rgb: 227, 5, 19;

    --abm-red300: #ff989e;
    --abm-red300-rgb: 255, 152, 158;

    --abm-red100: #ffdee0;
    --abm-red100-rgb: 255, 222, 224;

    
    --abm-orange600: #dd6a02;
    --abm-orange600-rgb: 221,106,2;

    --abm-orange500: #f99007;
    --abm-orange500-rgb: 249,144,7;

    --abm-orange400: #ffae11;
    --abm-orange400-rgb: 255, 174, 17;
    
    --abm-orange200: #ffe088;
    --abm-orange200-rgb: 255, 224, 136;
    
    --abm-orange100: #fff1c6;
    --abm-orange100-rgb: 255, 241, 198;

    
    
    --abm-gray950: #262626;
    --abm-gray950-rgb: 38, 38, 38;
    
    --abm-gray800: #454545;
    --abm-gray800-rgb: 69, 69, 69;
    
    --abm-gray600: #5e5d5c;
    --abm-gray600-rgb: 94, 93, 92;
    
    --abm-gray500: #6e6d6c;
    --abm-gray500-rgb: 110, 109, 108;
    
    --abm-gray300: #b1b0af;
    --abm-gray300-rgb: 177, 176, 175;
    
    --abm-gray200: #d1d0d0;
    --abm-gray200-rgb: 209, 208, 208;
    
    --abm-gray100: #e7e6e6;
    --abm-gray100-rgb: 231, 230, 230;



    --abm-darkblue: #417db4;
    --abm-darkblue-rgb: 65, 125, 180;

    --abm-teal: #99cbed;
    --abm-teal-rgb: 153, 203, 237;

    --abm-beige: #ded4cb;
    --abm-beige-rgb: 222, 212, 203;

    --abm-lightbrown: #a5988e;
    --abm-lightbrown-rgb: 165, 152, 142;

    /* --abm-gray300: #f0f0f0;
    --abm-gray300-rgb: 240, 240, 240; */

    --abm-brown: #847c75;
    --abm-brown-rgb: 132, 124, 117;

    --abm-forestGreen: #5c7253;
    --abm-forestGreen-rgb: 92, 114, 83;

    --abm-disabled-button: #dddddd;
    --abm-disabled-input: #eeeeee;

}

* {
    font-family: 'Inter-Regular', Tahoma, Geneva, Verdana, sans-serif;
    box-sizing: border-box;
}

::-webkit-scrollbar {
    width: 14px;
    background: transparent;
}
  
::-webkit-scrollbar-thumb {
    background: var(--abm-gray100);
    border-radius: 5px;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    background-clip: content-box;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--abm-gray200);
    border-radius: 5px;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    background-clip: content-box;
}

::placeholder {
    color: var(--abm-gray500);
    opacity: 1; /* Firefox */
}
  
::-ms-input-placeholder { /* Edge 12 -18 */
    color: var(--abm-gray500);
}


h1,h2,h3,h4,h5{
    margin: 0px;
    font-weight: normal;
    color: var(--abm-gray950);
}
h1[disabled],h2[disabled],h3[disabled],h4[disabled],h5[disabled]{
   filter: opacity(0.5);
}
h1{
    font-size: 32px;
}
h2{
    font-size: 28px;
}
h3{
    font-size: 24px;
}
h4{
    font-size: 20px;
}
h5{
    font-size: 16px;
}

a{
    color: var(--abm-green500);
}

a:hover,
a:active{
    color: var(--abm-green700);
}

a:visited{
    color: var(--abm-green900);
}

.disable_scrollbar{
    overflow: hidden !important;
}

.pointer{
    cursor: pointer;
}


/* region: Allgemeingültige CSS-Klassen */


/* Category: Icon */

/*
/// <summary>Legt die Größe des Icons in dem Div auf 12px</summary>
/// Img: svg_container.png
*/
.svg_container_12 svg,
.svg_container_s svg{
    height: 12px;
    flex: 0 0 12px;
}
.svg_container_12 svg,
.svg_container_m svg{
    height: 16px;
    flex: 0 0 16px;
}
.svg_container_ml svg{
    height: 20px;
    flex: 0 0 20px;
}
.svg_container_l svg{
    height: 24px;
    flex: 0 0 24px;
}
.svg_container_xl svg{
    height: 32px;
    flex: 0 0 32px;
}
.svg_container_xxl svg{
    height: 40px;
    flex: 0 0 40px;
}

.svg12,
.svg_s{
    height: 12px;
    flex: 0 0 12px;
}
.svg16,
.svg_m{
    height: 16px;
    flex: 0 0 16px;
}
.svg20,
.svg_ml{
    height: 20px;
    flex: 0 0 20px;
}
.svg24,
.svg_l{
    height: 24px;
    flex: 0 0 24px;
}
.svg32,
.svg_xl{
    height: 32px;
    flex: 0 0 32px;
}
.svg40,
.svg_xxl{
    height: 40px;
    flex: 0 0 40px;
}

.white_svg *{
    color: #FFFFFF;
    fill: #FFFFFF;
}
.black_svg *{
    color: #000000;
    fill: #000000;
}
.gray_svg *{
    color: var(--abm-gray300);
    fill: var(--abm-gray300);
}
.green_svg *{
    color: var(--abm-green500);
    fill: var(--abm-green500);
}
.darkgreen_svg *{
    color: var(--abm-green900);
    fill: var(--abm-green900);
}
.blue_svg *{
    color: var(--abm-blue500);
    fill: var(--abm-blue500);
}
.red_svg *{
    color: var(--abm-red700);
    fill: var(--abm-red700);
}
.orange_svg *{
    color: var(--abm-orange400);
    fill: var(--abm-orange400);
}


/* Category: Fonts */

/*
/// <summary>font-family wird auf alle Zeichen angewandt. \nMan kann hier auch noch .number ergänzen um zahlen zwichen 0-9 mit der numbers-Font darzustellen</summary>
/// Img: svg_container.png
*/
.extra-light {
    font-family: 'Inter-ExtraLight', Tahoma, Geneva, Verdana, sans-serif !important;
}
.extra-light-multi *{
    font-family: 'Inter-ExtraLight', Tahoma, Geneva, Verdana, sans-serif !important;
}

.light {
    font-family: 'Inter-Light', Tahoma, Geneva, Verdana, sans-serif !important;
}
.light-multi *{
    font-family: 'Inter-Light', Tahoma, Geneva, Verdana, sans-serif !important;
}

.regular {
    font-family: 'Inter-Regular', Tahoma, Geneva, Verdana, sans-serif !important;
}
.regular-multi *{
    font-family: 'Inter-Regular', Tahoma, Geneva, Verdana, sans-serif !important;
}

.medium {
    font-family: 'Inter-Medium', Tahoma, Geneva, Verdana, sans-serif !important;
}
.medium-multi *{
    font-family: 'Inter-Medium', Tahoma, Geneva, Verdana, sans-serif !important;
}

.semi-bold {
    font-family: 'Inter-SemiBold', Tahoma, Geneva, Verdana, sans-serif !important;
}
.semi-bold-multi *{
    font-family: 'Inter-SemiBold', Tahoma, Geneva, Verdana, sans-serif !important;
}

.bold {
    font-family: 'Inter-Bold', Tahoma, Geneva, Verdana, sans-serif !important;
}
.bold-multi *{
    font-family: 'Inter-Bold', Tahoma, Geneva, Verdana, sans-serif !important;
}

.extra-bold {
    font-family: 'Inter-ExtraBold', Tahoma, Geneva, Verdana, sans-serif !important;
}
.extra-bold-multi *{
    font-family: 'Inter-ExtraBold', Tahoma, Geneva, Verdana, sans-serif !important;
}

.ultra-bold {
    font-family: 'Inter-UltraBold', Tahoma, Geneva, Verdana, sans-serif !important;
}
.ultra-bold-multi *{
    font-family: 'Inter-UltraBold', Tahoma, Geneva, Verdana, sans-serif !important;
}

.black {
    font-family: 'Inter-Black', Tahoma, Geneva, Verdana, sans-serif !important;
}
.black-multi *{
    font-family: 'Inter-Black', Tahoma, Geneva, Verdana, sans-serif !important;
}


/* Category: Layout */

/*
/// <summary>null</summary>
/// Img: null
*/
.flex {
    display: flex;
}

.flexInputs>.abmInputContainer {
    flex: 1;
}

.flexChilds>* {
    flex: 1;
}
.flexCol {
    display: flex;
    flex-direction: column;
}
.colFlex {
    display: flex;
    flex-direction: column;
}
.flexFill {
    flex: 1;
    min-width: 0;
    min-height: 0;
}
.flexWrap {
    flex-wrap: wrap;
}
.fillHeight {
    height: 100%
}
.fillWidth{
    width: 100%;
}
.divider-vertical{
    height: 100%;
    border-left: 1px solid var(--abm-gray100);
}
.divider-horizontal{
    width: 100%;
    border-top: 1px solid var(--abm-gray100); 
}
.divider-vertical-effect
{
    width: 3px;
    background: linear-gradient(to right, rgba(204,204,204,0) 0%, rgba(204,204,204,0.75) 25%, rgba(204,204,204,1) 50%, rgba(204,204,204,0.75) 75%, rgba(204,204,204,0) 100% );
}
.divider-horizontal-effect
{
    height: 3px;
    background: linear-gradient(to right, rgba(204,204,204,0) 0%, rgba(204,204,204,0.75) 25%, rgba(204,204,204,1) 50%, rgba(204,204,204,0.75) 75%, rgba(204,204,204,0) 100% );
}
.scroll{
    overflow: auto;
}


/* Category: Alignment */

/*
/// <summary>null</summary>
/// Img: null
*/
.flex.alignItemsCenter, .colFlex.alignItemsCenter {
    align-items: center;
}

.flex.alignCenter, .colFlex.alignCenter{
    justify-content: center;
    align-items: center;
}

.alignCenterGlobal{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.alignCenterGlobalH{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.alignCenterGlobalV{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.alignBottom{
    margin-top: auto;
    justify-content: end;
}

.allowBreak{
    white-space: break-spaces;
}

.spaceBetween{
    justify-content: space-between;
}

.spaceAround{
    justify-content: space-around;
}

.selfAlignCenter{
    align-self: center;
    justify-self: center;
}


/* Category: Gap */

/*
/// <summary>null</summary>
/// Img: null
*/
.gap0,
.noGap{
    gap: 0px !important;
}
.gap3,
.gapS {
    gap: 3px;
}
.gap5,
.gapM {
    gap: 5px;
}

.gap10,
.gapL {
    gap: 10px;
}
.gap15{
    gap: 15px;
}
.gap20,
.gapXL {
    gap: 20px;
}
.gap24 {
    gap: 24px;
}


/* Category: Margin */

/*
/// <summary>null</summary>
/// Img: null
*/
.noMargin{
    margin: 0px !important;
}
.noMarginV {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}
.noMarginH {
    margin-left: 0px !important;
    margin-right: 0px !important;
}
.marginAuto {
    margin: auto;
}
.marginAutoV {
    margin-top: auto;
    margin-bottom: auto;
}
.marginAutoH {
    margin-left: auto;
    margin-right: auto;
}
.margin3,
.marginS {
    margin: 3px;
}
.margin5,
.marginM {
    margin: 5px;
}
.margin10,
.marginL {
    margin: 10px;
}
.margin15,
.marginXL {
    margin: 15px;
}
.margin20,
.marginXXL {
    margin: 20px;
}
.margin25,
.marginXXXL {
    margin: 25px;
}
.margin30 {
    margin: 30px;
}

.marginTopAuto {
    margin-top: auto;
}
.marginTop0 {
    margin-top: 0px !important;
}
.marginTop3,
.marginTopS {
    margin-top: 3px;
}
.marginTop5,
.marginTopM {
    margin-top: 5px;
}
.marginTop10,
.marginTopL {
    margin-top: 10px;
}
.marginTop15,
.marginTopXL {
    margin-top: 15px;
}
.marginTop20,
.marginTopXXL {
    margin-top: 20px;
}
.marginTop25,
.marginTopXXXL {
    margin-top: 25px;
}
.marginTop30 {
    margin-top: 30px;
}

.marginLeftAuto {
    margin-left: auto;
}
.marginLeft0 {
    margin-left: 0px !important;
}
.marginLeft3,
.marginLeftS {
    margin-left: 3px;
}
.marginLeft5,
.marginLeftM {
    margin-left: 5px;
}
.marginLeft10,
.marginLeftL {
    margin-left: 10px;
}
.marginLeft15,
.marginLeftXL {
    margin-left: 15px;
}
.marginLeft20,
.marginLeftXXL {
    margin-left: 20px;
}
.marginLeft25,
.marginLeftXXXL {
    margin-left: 25px;
}
.marginLeft30 {
    margin-left: 30px;
}

.marginRightAuto {
    margin-right: auto;
}
.marginRight0 {
    margin-right: 0px !important;
}
.marginRight3,
.marginRightS {
    margin-right: 3px;
}
.marginRight5,
.marginRightM {
    margin-right: 5px;
}
.marginRight10,
.marginRightL {
    margin-right: 10px;
}
.marginRight15,
.marginRightXL {
    margin-right: 15px;
}
.marginRight20,
.marginRightXXL {
    margin-right: 20px;
}
.marginRight25,
.marginRightXXXL {
    margin-right: 25px;
}
.marginRight30 {
    margin-right: 30px;
}

.marginBottomAuto {
    margin-bottom: auto;
}
.marginBottom0 {
    margin-bottom: 0px !important;
}
.marginBottom3,
.marginBottomS {
    margin-bottom: 3px;
}
.marginBottom5,
.marginBottomM {
    margin-bottom: 5px;
}
.marginBottom10,
.marginBottomL {
    margin-bottom: 10px;
}
.marginBottom15,
.marginBottomXL {
    margin-bottom: 15px;
}
.marginBottom20,
.marginBottomXXL {
    margin-bottom: 20px;
}
.marginBottom25,
.marginBottomXXXL {
    margin-bottom: 25px;
}
.marginBottom30 {
    margin-bottom: 25px;
}


/* Category: Padding */

/*
/// <summary>null</summary>
/// Img: null
*/

.noPadding{
    padding: 0px !important;
}
.noPaddingV {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}
.noPaddingH {
    padding-left: 0px !important;
    padding-right: 0px !important;
}
.padding3,
.paddingS {
    padding: 3px;
}
.padding5,
.paddingM {
    padding: 5px;
}
.padding10,
.paddingL {
    padding: 10px;
}
.padding15,
.paddingXL {
    padding: 15px;
}
.padding24,
.paddingXXL {
    padding: 24px;
}

.paddingTop3,
.paddingTopS {
    padding-top: 3px;
}
.paddingTop5,
.paddingTopM {
    padding-top: 5px;
}
.paddingTop10,
.paddingTopL {
    padding-top: 10px;
}
.paddingTop15,
.paddingTopXL {
    padding-top: 15px;
}

.paddingLeft3,
.paddingLeftS {
    padding-left: 3px;
}
.paddingLeft5,
.paddingLeftM {
    padding-left: 5px;
}
.paddingLeft10,
.paddingLeftL {
    padding-left: 10px;
}
.paddingLeft15,
.paddingLeftXL {
    padding-left: 15px;
}

.paddingRight3,
.paddingRightS {
    padding-right: 3px;
}
.paddingRight5,
.paddingRightM {
    padding-right: 5px;
}
.paddingRight10,
.paddingRightL {
    padding-right: 10px;
}
.paddingRight15,
.paddingRightXL {
    padding-right: 15px;
}

.paddingBottom3,
.paddingBottomS {
    padding-bottom: 3px;
}
.paddingBottom5,
.paddingBottomM {
    padding-bottom: 5px;
}
.paddingBottom10,
.paddingBottomL {
    padding-bottom: 10px;
}
.paddingBottom15,
.paddingBottomXL {
    padding-bottom: 15px;
}


/* Category: Modal */

/*
/// <summary>null</summary>
/// Img: null
*/
.modal-header.flex, .modal-header.colFlex {
    display: flex !important;
}

.modal-header img.icon {
    position: absolute;
    left: 8px;
    width: 24px;
    height: 24px;
}

.modal-header img.icon+* 
{
    margin-left: 28px;
}

.modalheadericon {
    position: absolute;
    left: 8px;
}
.modalheadericon+* 
{
    margin-left: 28px;
}


/* Category: General */

/*
/// <summary>null</summary>
/// Img: null
*/
img.small{
    width: 12px;
    height: 12px;
}
img.medium{
    width: 16px;
    height: 16px;
}
img.large{
    width: 24px;
    height: 24px;
}
img[disabled]{
    filter: opacity(0.2);
}
.noDisplay{
    display: none !important;
}
.hidden{
    visibility:  hidden;
}


/* Category: Font */

/*
/// <summary>null</summary>
/// Img: null
*/

.ellipsis {
    overflow: hidden;
    text-wrap: nowrap;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex: 0 1 auto;
    min-width: 0px;
}
.noWrap{
    white-space: nowrap;
}

.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-left {
    text-align: left;
}
label {
    font-size: 12px;
}
span {
    font-size: 12px;
}
p {
    font-size: 12px;
}


/* endregion Allgemeingültige CSS-Klassen */

.abm-card.currentCard{
    background-color: var(--abm-green100);
}
.statusIconContainer > img{
    width: 24px;
    height: 24px;
}
.nestedRowTopBorder .nested_row > .table_row:not(.invalid_subrow) ~ .table_row:not(.invalid_subrow){
    border-top: 1px solid var(--abm-gray100);
}

.unselectable {
    -webkit-user-select: none;
       -moz-user-select: -moz-none;
        -ms-user-select: none;
            user-select: none;
}

.abmLabel {
    color: var(--abm-gray950);
    font-size: 12px;
}

.abmLabelTop,
.abmLabelLeft {
    display: flex;
}

.abmLabelContainer {
    flex: 1;
    display: flex;
    min-width: 0;
    max-width: 100%;
    background-color: #FFFFFF;
    border-radius: 4px;
}

.abmLabelContainer[disabled]{
    background-color: #fff;
}
    


.abmLabelContainer[disabled] .form_element_border {
    background-color: #f9f9f94f !important;
    border-color: var(--abm-gray200) !important;
}

.abmLabelContainer[disabled] > *.lock_svg {
    order: 2;
}
.abmLabelContainer[disabled] > *.copy_svg {
    order: 1;
}

.abmLeftTitleContainer {
    display: flex;
    align-items: center;
}

@media (max-width: 639px) {
    .abmLabelLeftContainer {
        flex: 1 1 auto;
    }

    .abmLeftTitleContainer {
        flex: 1 !important;
    }
}

@media (min-width: 640px) {
    .abmLabelLeftContainer {
        margin-right: 10px;
    }
}

input[type=text],
input[type=password],
input[type=number],
input[type=date],
textarea,
select {
    padding: 8px;
    border: 1px solid var(--abm-gray100);
    border-radius: 4px;
    color: #222222;
    justify-content: start;
    flex-direction: row;
    flex-wrap: nowrap;
    /* height: fit-content; */
    height: 32px;
    font-size: 12px;
    vertical-align: baseline;
    min-width: 0;
    box-sizing: border-box;
}

input[type=text]:disabled,
input[type=password]:disabled,
input[type=number]:disabled,
input[type=date]:disabled,
textarea:disabled,
select:disabled {
    color: black;
}

input[type=button],
button {
    display: inline-block;
    outline: 0;
    text-align: center;
    padding: 1px 7px;
    border-radius: 2px;
    background-color: rgb(255, 255, 255);
    color: rgb(50, 49, 48);
    font-size: 12px;
    font-weight: 400;
    box-sizing: border-box;
    border: 1px solid var(--abm-gray600);
    position: relative;
    font-family: 'Inter';
}

input[type=button].untitled,
button.untitled {
    width: 25px;
    height: 25px;
    padding: 0px;
}

input[type=button]:focus,
input[type=button]:active,
button:focus,
button:active {
    border: 1px solid white !important;
    outline: 2px solid var(--abm-green100);
}

input[type=button]:hover,
button:hover {
    border-color: var(--abm-green500) !important;
    cursor: pointer;
}

input[type=text]:hover,
input[type=password]:hover,
input[type=number]:hover,
input[type=date]:hover,
textarea:hover,
select:hover {
    border-color: var(--abm-green300) !important;
}



.btnPrimary {
    background-color: var(--abm-green500);
    border: 0px;
    color: white;
}

.btnPrimary:hover {
    background-color: rgba(var(--abm-green500-rgb), 0.6);
}

.btnPrimary:focus {
    border: 1px solid rgba(var(--abm-green500-rgb), 0.6);
    padding: 0px 15px;
}

.btnSecondary {
    background-color: var(--abm-gray600);
    border: 0px;
    color: white;
}

.btnSecondary:hover {
    background-color: rgba(var(--abm-gray600-rgb), 0.6);
}

.btnSecondary:focus {
    border: 1px solid rgba(var(--abm-gray600-rgb), 0.6);
    padding: 0px 15px;
}

.btnBad {
    background-color: var(--abm-red700);
    border: 0px;
    color: white;
}

.btnBad:focus {
    border: 1px solid var(--red700-red);
    padding: 0px 15px;
}

.btnBad:hover {
    background-color: rgba(var(--abm-red700-rgb), 0.6);
}

.iconButton {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    padding: 6px 6px !important;
}


input[type=text],
input[type=password],
input[type=number],
input[type=date] {
    flex-grow: 1;
}

select {
    flex-grow: 1;
}

select>option {
    color: initial;
}

textarea {
    height: 6em;
    flex-grow: 1;
    resize: none;
}

.abmInputLabel {
    color: var(--abm-gray200);
    border-left: 1px solid var(--abm-gray200);
    padding: 0px 5px;
    box-sizing: border-box;
    line-height: 25px;
    height: 100%;
    display: flex;
    align-items: center;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    order: 3;
}

input[type=text]:disabled,
input[type=password]:disabled,
input[type=number]:disabled,
input[type=date]:disabled,
textarea:disabled,
select:disabled {
    /* color: #666; */
    opacity: 0.7;
    /* background-color: var(--abm-disabled-input); */
    background-color: #fff;
    border-color: #aaa !important;
}

input[type=text]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=date]:focus,
select:focus,
textarea:focus {
    outline: none;
    border: 2px solid var(--abm-green300);
}

input[type=text]:focus+.abmInputLabel,
input[type=password]:focus+.abmInputLabel,
input[type=number]:focus+.abmInputLabel,
input[type=date]:focus+.abmInputLabel,
select:focus+.abmInputLabel,
textarea:focus+.abmInputLabel {
    /* outline: none;
    border-right: 1px solid var(--abm-green500);
    border-top: 1px solid var(--abm-green500);
    border-bottom: 1px solid var(--abm-green500); */
}

.abm-modal {
    position: relative;
    background-color: white;    
    box-shadow: 0 0 8px 8px #00000030;
    width: auto;
    height: auto;
}

.modal-header {
    display: flow-root;
    padding: 12px 12px 0 12px;
    border-radius: 8px 8px 0 0;
    background: #fff;
}

.modal-body {
    padding: 12px;
}

.modal-footer {
    padding: 12px;
    border-radius: 0 0 8px 8px;
    background: #fff;
    border-top: 1px solid #e5e5e5;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.abm-modal.overlay{
    width: 100%;
    height: 100%;
    background-color: var(--abm-gray100);
    box-shadow: none;
}

abm-tooltip {
    visibility: hidden;
    background-color: var(--abm-gray950);
    color: #ffffff !important;
    border-radius: 4px;
    opacity: 0;
    transition: visibility 0s, opacity 0.25s linear;
    padding: 4px;
    font-size: 12px;
    z-index: 300;
    position: absolute;
}

abm-tooltip.visible {
    visibility: visible;
    opacity: 1;
}

abm-tooltip.visible.abmToolTipDelay {
    transition-delay: 0.25s;
}


input[type='checkbox'],
input[type='radio'] {
    --active: #fff;
    --active-inner: var(--abm-green500);
    --focus: 2px var(--abm-green500);
    --border: var(--abm-gray200);
    --border-hover: var(--abm-green500) !important;
    --background: #fff;
    --disabled: var(--abm-disabled-input);
    --disabled-inner: var(--abm-disabled-input);
    -webkit-appearance: none;
    -moz-appearance: none;
    height: 22px;
    outline: none;
    display: inline-block;
    vertical-align: top;
    position: relative;
    margin: 0;
    cursor: pointer;
    border: 1px solid var(--bc, var(--border));
    border-radius: 4px;
    background: var(--b, var(--background));
    transition: background .3s, border-color .3s, box-shadow .2s;
}

input[type='checkbox']:after,
input[type='radio']:after {
    content: '';
    display: block;
    left: 0;
    top: 0;
    position: absolute;
    transition: transform var(--d-t, .3s) var(--d-t-e, ease), opacity var(--d-o, .2s);
}



input[type='checkbox']:focus,
input[type='radio']:focus {
    background-color: white;
}

input[type='checkbox']:checked,
input[type='radio']:checked {
    --b: var(--active);
    --bc: var(--active-inner);
    --d-o: .3s;
    --d-t: .6s;
    --d-t-e: cubic-bezier(.2, .85, .32, 1.2);
}

input[type='checkbox']:disabled,
input[type='radio']:disabled {
    --b: var(--disabled);
    cursor: not-allowed;
    opacity: .9;
    pointer-events: none;
}

input[type='checkbox']:checked:disabled,
input[type='radio']:checked:disabled {
    --b: var(--disabled-inner);
    --bc: var(--border);
}

input[type='checkbox']:checked:disabled+label,
input[type='radio']:checked:disabled+label {
    cursor: not-allowed;
}

input[type='checkbox']:hover:not(:checked):not(:disabled),
input[type='radio']:hover:not(:checked):not(:disabled) {
    --bc: var(--abm-green500);
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher):after,
input[type='radio']:not(.switch):not(.nullableSwitcher):after {
    opacity: var(--o, 0);
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher):checked,
input[type='radio']:not(.switch):not(.nullableSwitcher):checked {
    --o: 1;
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher):checked,
input[type='radio']:not(.switch):not(.nullableSwitcher):checked {
    --o: 1;
}

input[type='checkbox']+label,
input[type='radio']+label {
    font-size: 1.05em;
    line-height: 22px;
    display: inline-block;
    vertical-align: top;
    cursor: pointer;
    margin-left: 4px;
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher) {
    border-radius: 4px;
    width: 16px;
    height: 16px;
}

input[type='radio'] {
    width: 16px;
    height: 16px;
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher):after {
    width: 3.5px;
    height: 7px;
    border: 0.9px solid var(--active-inner);
    border-top: 0;
    border-left: 0;
    left: 5px;
    top: 1.5px;
    transform: rotate(var(--r, 20deg));
}

input[type='checkbox']:not(.switch):not(.nullableSwitcher):checked {
    --r: 43deg;
}

input[type='radio'] {
    border-radius: 50%;
}

input[type='radio']:after {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--active-inner);
    opacity: 0;
    transform: scale(var(--s, .7));
}

input[type='radio']:hover:after {
    background: var(--abm-green300) !important;
}

input[type='checkbox']:hover:after {
    border-color: var(--abm-green300) !important;
}

input[type='radio']:checked {
    --s: .7;
}

.abmLabelInfo {
    color: var(--abm-gray600);
}

.abmLabelInfoTop {
    display: flex;
    flex-grow: 0;
    flex-shrink: 1;
}

.abmLabelInfoLeft {
    margin: 1px 10px;
    display: flex;
    flex-grow: 0;
    flex-shrink: 1;
}

@keyframes abm-notify-fadein {
    0% {
        opacity: 0;
        transform: translateY(40%);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes abm-dialog-fadein {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

@keyframes abm-dialog-fadeout {
    0% { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes dialog-slidein-left {
    0% {
        opacity: 0;
        transform: translateX(-100%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes dialog-slideout-left {
    0% {
        opacity: 1;
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateX(-100%);
    }
}

@keyframes dialog-slidein-right {
    0% {
        opacity: 0;
        transform: translateX(100%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}
@keyframes dialog-slideout-right {
    0% {
        opacity: 1;
        transform: translateX(0);
    }
    100% {
        opacity: 0;
        transform: translateX(100%);
    }
}
@keyframes pingpong {
    0% {
        left: 0;
    }
    50% {
        left: 80%;
    }
    100% {
        left: 0;
    }
}


.modal-body>:last-child,
.modal-footer>:last-child,
.modal-header>:last-child {
    margin-bottom: 0;
}

#trumbowyg{
    font-size: 12px;
    white-space: initial !important;
}

.rightAlign{
    text-align: right;
}

.colorInherit{
    color: inherit !important;
}

.datenschutzBody div, .datenschutzBody p{
    font-family: Helvetica, Arial, sans-serif;
    font-size: 12px;
}

@keyframes flipdown {
    0% {
        opacity: 0;
        transform-origin: top center;
        transform: rotateX(-90deg);
    }

    5% {
        opacity: 1;
    }

    80% {
        transform: rotateX(8deg);
    }

    83% {
        transform: rotateX(6deg);
    }

    92% {
        transform: rotateX(-3deg);
    }

    100% {
        transform-origin: top center;
        transform: rotateX(0deg);
    }
}

@keyframes fillAndEmptyLoaderAnimation {
    0% {
        width: 0;
        x: 0;
    }

    25% {
        width: 630px;
        x: 0;
    }

    50% {
        width: 0;
        x: 630px;
    }

    75% {
        width: 630px;
        x: 0;
    }

    100% {
        width: 0;
        x: 0;
    }
}

.relative_parent{
    position: relative !important;
}

.relative_loading_indicator_parent{
    position: relative !important;
}

.abm-contextmenu {
    display:flex;
    flex-direction: column;
    position: fixed;
    background: #ffffff;
    font-size: .875rem;
    color: #3C3C3C;
    padding: 4px;
    border-radius: 8px;
    cursor: default;
    /* min-width: 150px; */
    min-width: fit-content;
    z-index: 200;
    border: 1px solid var(--abm-gray100);
    outline: none;
    box-shadow: 4px 4px 16px 0px rgba(0,0,0,0.40);
}
.abm-contextmenu-container{
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
    flex:auto;
    height:100%;
}

.abm-contextmenu-container::-webkit-scrollbar{
    display:none;
}

.abm-contextmenu .abm-menuentry {
    padding: 4px 10px;
    width: 100%;
    display: flex;
}

.abm-contextmenu .abm-menuentry[disabled] {
    color: var(--abm-gray300);
}

.abm-contextmenu .abm-menuentry.red[disabled] {
    color: var(--abm-red300);
}

.abm-contextmenu .abm-menuentry.orange[disabled] {
    color: var(--abm-orange200);
}

.abm-contextmenu-filter{
    padding: 10px;
    width: inherit;
    min-width: 100%;
}

.abm-contextmenu-scroll{
    display:none;
    justify-content: center;
}

.abm-contextmenu-scrollbottom{
    border-top: 1px solid #efefef;
    padding-top: 2px;
}

.abm-contextmenu-scrolltop{
    border-bottom: 1px solid #efefef;
    padding-bottom: 2px;
}

.abm-contextmenu-scroll>svg{
    fill: #787878;
}

.abm-contextmenu-scrollvisible{
    display: flex;
}

.abm-contextmenu-scrolldisabled{
    opacity:0.5;
}

.abm-contextmenu .abm-menuentry-hidden {
    display:none;
}

.abm-contextmenu .abm-menuentry-active {
    background-color: var(--abm-green200);
    color: var(--abm-green500);
    border-radius: 3px;
}
.abm-contextmenu .abm-menuentry-active.red {
    background-color: var(--abm-red100);
    color: var(--abm-red700);
}

.abm-contextmenu .abm-menushortcut {
    padding-left: 10px;
    flex: 1 0 auto;
    text-align: end;
    pointer-events: none;
}

.abm-contextmenu .abm-menuarrow{
    width: 5px;
    height: 10px;
    background: #535353;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    margin: auto;
    flex: 0 0 5px;
    margin-left: 5px;
    pointer-events: none;
}

.abm-contextmenu .abm-menuarrow.hidden{
    background: transparent;
}

/* Muss position:absolute da hr sonst nicht über die komplette breite geht, da parent parent element padding hat */
.abm-contextmenu hr {
    margin: 2px 0;
    border-top: none;
    border-color: var(--abm-gray200);
    position: absolute;
    width: 100%;
    left: 0;
}

.abm-contextmenu hr + span{
    margin-top: 6px;
}

.hide_scrollbar::-webkit-scrollbar{
    display: none;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes shake {
    0%, 100% {
        transform: translateX(0);
    }
    25% {
        transform: translateX(-5px);
    }
    50% {
        transform: translateX(5px);
    }
    75% {
        transform: translateX(-5px);
    }
}



[hidden],
.abm-hidden {
  display: none !important;
}
@media (min-width: 640px) {
  .abm-hidden-s {
    display: none !important;
  }
}
@media (min-width: 960px) {
  .abm-hidden-m {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .abm-hidden-l {
    display: none !important;
  }
}
@media (min-width: 1600px) {
  .abm-hidden-xl {
    display: none !important;
  }
}


@media (max-width: 639px) {
  .abm-visible-s {
    display: none !important;
  }
  .tab_container_icon_s {
    margin: 0 !important;
  }
}
@media (max-width: 959px) {
  .abm-visible-m {
    display: none !important;
  }
}
@media (max-width: 1199px) {
  .abm-visible-l {
    display: none !important;
  }
}
@media (max-width: 1599px) {
  .abm-visible-xl {
    display: none !important;
  }
}

.notify_container{
    position: fixed;
    display: flex;
    flex-direction: column;
    pointer-events: none;
    overflow: scroll;
    z-index: 210;
    gap: 4px;
}

.notify_container .x_svg_container
{
    pointer-events: auto;
}

/*AUS TAB CONTAINER*/

div.hideTabHeader > ul.tabHeader{
    display: none;
}

ul.tabHeader{
    overflow: auto hidden;
    flex-wrap: nowrap;
    height: 36px;
    padding: 6px;
    margin: 0px;
    border-radius: 30px;
    background-color: var(--abm-gray300);
    font-size: 12px;
}
ul.tabHeader.big{
    height: 58px;
    padding: 9px;
    background-color: white;
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
    font-size: 14px;
}
ul.tabHeader.big > li{
    height: 40px;
    padding: 8px 32px;
}

.abm-tab > li{
    padding: 0px 32px;
    margin: 0px 2px;
    border-radius: 30px;
    width: fit-content;
    height: 24px;
    cursor: pointer;
}

ul.abm-tab > li.abm-active{
    background-color: var(--abm-green500) !important;
    color: #FFFFFF !important;
}

ul.tabHeader > li > a{
    color: inherit;
    background-position: 0;
    background-repeat: no-repeat;
    background-size: 15px;
}

div.tabBody {
    padding: 0px;
    margin: 0px;
}

div.tabBody-left {
    min-width: 1px;
    flex: 1;
    height: 100% !important;
}


ul.abm-tab > li.abm-active div svg,
ul.abm-tab > li.abm-active div svg g,
ul.abm-tab > li.abm-active div svg path,
ul.abm-tab > li.abm-active div svg polygon{
    fill: white !important;
    color: white !important;
}

ul.abm-tab > li > a{
    text-decoration: none;
}



ul.abm-tab > li:not(.abm-active):hover{
    background-color: var(--abm-green100) !important;
}

.abm-tab{
    display: flex;
    padding: 0;
    list-style: none;
    position: relative;
}

.abm-tab-left{
    border-bottom: unset !important;
    flex-direction: column;
}

.abm-tab div{
    align-self: center;
}

.abm-tab-left div{
    align-self: auto;
}

.flexDisplay{
    display: flex;
}

.icon_header_left{
    display: flex; 
    margin-right: 8px; 
    align-items: center;
}

.icon_header_right{
    order: 1;
    display: flex; 
    margin-left: 8px; 
    align-items: center;
}

.abm-card {
    border-radius: 5px;
    padding: 15px;
    margin: 15px;
    background-color: #ffffff;
    max-width: 100%;
    display: flex;
    flex-direction: column;    
}

.greyCard {
    border: 1px solid #d1d0d0;
}

.whiteCard {
    border: 1px solid #ffffff;
}

.alignRight {
    margin-left: auto;
    text-align: end;
    justify-content: flex-end;
}

.alignCenter {
    margin-left: auto;
    margin-right: auto;
}
.alignLeft{
    margin-right: auto;
}

/* form_element_border */

.form_element_border{
    pointer-events: none;
    width: 100%;
    height: 100%;
    position: absolute;
    border: 1px solid var(--abm-gray200);
    border-radius: 4px;
    top: 0;
    left: 0;
}

.form_element_container:hover .form_element_border{
    border-color: var(--abm-green300);
}
.form_element_container *:hover .form_element_border-valid{
    border-color: var(--abm-green300);
}
.form_element_container *:focus ~ .form_element_border{
    outline: 2px solid var(--abm-green100);
    border: 1px solid var(--abm-green500);
}
.focus ~ .form_element_border{
    outline: 2px solid var(--abm-green100);
    border: 1px solid var(--abm-green500);
}
.form_element_container *:active ~ .form_element_border{
    outline: 2px solid var(--abm-green100);
    border: 1px solid var(--abm-green300);
}


/* Validation FormElement Controls */

.validate-valid {
    border-color: var(--abm-green500);
}
.form_element_container:hover .validate-valid{
    border-color: var(--abm-green300);
}
.form_element_container *:hover .validate-valid{
    border-color: var(--abm-green300);
}
.form_element_container *:focus ~ .validate-valid{
    outline: 2px solid var(--abm-green100);
    border-color: var(--abm-green500);
}
.focus ~ .form_element_border.validate-valid{
    outline: 2px solid var(--abm-green100);
    border: 1px solid var(--abm-green500);
}
.form_element_container *:active ~ .validate-valid{
    outline: 2px solid var(--abm-green100) !important;
    border-color: var(--abm-green300) !important;
}


.validate-warning {
    border-color: var(--abm-orange400);
}
.form_element_container:hover .validate-warning{
    border-color: var(--abm-orange200);
}
.form_element_container *:hover .validate-warning{
    border-color: var(--abm-orange200);
}
.form_element_container *:focus ~ .validate-warning{
    outline: 2px solid var(--abm-orange100);
    border-color: var(--abm-orange600);
}
.focus ~ .form_element_border.validate-warning{
    outline: 2px solid var(--abm-orange100);
    border-color: var(--abm-orange600);
}
.form_element_container *:active ~ .validate-warning{
    outline: 2px solid var(--abm-orange100) !important;
    border-color: var(--abm-orange200) !important;
}


.validate-error {
    border-color: var(--abm-red700);
}
.form_element_container:hover .validate-error{
    border-color: var(--abm-red300);
}
.form_element_container *:hover .validate-error{
    border-color: var(--abm-red300);
}
.form_element_container *:focus ~ .validate-error{
    outline: 2px solid var(--abm-red100);
    border-color: var(--abm-red900);
}
.focus ~ .form_element_border.validate-error{
    outline: 2px solid var(--abm-red100);
    border-color: var(--abm-red900);
}
.form_element_container *:active ~ .validate-error{
    outline: 2px solid var(--abm-red100) !important;
    border-color: var(--abm-red300) !important;
}