/* =================  Dashboard ========================================= */

.shadow-box {
    position: relative;
    box-shadow: 0 4px 15px #00000029;
    border-radius: 15px;
    margin-bottom: 20px;
    overflow-y: hidden;
    background-color: #FFFFFF;
    color: #1F745A;
}

.shadow-box.focus {
    box-shadow: 0 4px 15px rgba(202, 52, 22, 0.29);
}

.shadow-box .title {
    height: 52px;
    padding: 6px 15px 0 15px;
    font: normal 20px/40px light;
    color: #FFF;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    background-color: #509622;
}

.shadow-box .content {
    padding-left: 15px;
    padding-right: 15px;
    overflow-x: hidden;
    overflow-y: auto;
}

.shadow-box .tablecontent, .tablecontent {
    padding-left: 0px;
    padding-right: 0px;
    overflow: hidden;
    padding-bottom: 0px;
    background: #fff;
}

.shadow-box .footer {
    position: absolute;
    width: 100%;
    font: normal 24px/25px regular;
    height: 47px;
    padding: 10px 15px;
    bottom: 0;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    left: 0px;
    background-color: #FFFFFF;
    text-align: right;
}

.shadow-box .footer i {
    cursor: pointer;
}

.shadow-box .filter {
    font: normal 14px/21px semibold;
    height: 47px;
    padding: 10px 15px;
    background-color: #E6E6E6;
    color: #1F745A;
}

.shadow-box .filter .filtertext:after {
    content: '\f0dd';
    margin-left: 7px;
    font-weight: lighter;
    font-family: 'Font Awesome 6 Pro';
    font-size: 20px;
    padding-bottom: 3px;
}

.filter-wrapper {
    padding-top: 15px;
    width: 95%;
}

.itemlink {
    cursor: pointer;
}

@media (max-width: 1599px) {
    .shadow-box .title {
        font: normal 18px/40px regular;
    }
}


@media (max-width: 1499px) {
    .shadow-box .title {
        font: normal 16px/40px regular;
    }
}


@media (max-width: 1350px) {
    .shadow-box .title {
        font: normal 13px/40px regular;
    }
}

/* =========  icons etc ============================================ */
.pointer {
    cursor: pointer;
}

.action-margin {
    margin: 0 7px;
    cursor: pointer;
    font-size: 16px;
}

.action-margin a, .action-margin a:hover {
    text-decoration: none;
}

.action-margin:hover, .action-margin a:hover i {
    color: #6ce547;
}

.quad-icon {
    position: relative;
    display: inline-block;
    float: left;
    width: 40px;
    height: 40px;
    margin-right: 10px;
    cursor: pointer;
}

.square-icon {
    display: inline-block;
    float: left;
    border-radius: 8px;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
    font: normal 12px/40px proximaregular;
    height: 40px;
    width: 81px;
    margin-left: 20px;
}

/* =========  forms, buttons ============================================ */
.btn {
    box-shadow: none !important;
    text-shadow: none !important;
    outline: 0 none !important;
    font: normal 18px/32px proximaregular;
    border: none;
    border-radius: 4px;
    height: 32px;
    padding: 0 40px;
}

.btn-lg {
    font: normal 25px/60px proximaregular;
    height: 60px;
}

.btn.btn-sm {
    font: normal 12px/20px proximaregular;
    height: 20px;
    padding: 0 20px;
}

.btn.btn-primary {
    background: #509622;
    color: white;
}

.wizzard-form-element .btn.btn-primary {
    width: 100%;
}

.btn.btn-default {
    border: 1px solid #000;
}

.modal-footer .btn.btn-default {
    margin-left: 5px;
}

.btn .fa-spinner {
    width: 18px;
    height: 18px;
    margin-top: 6px;
}

.cm-btn-group .btn-primary {
    background: #fff;
    color: #509622;
    border: 1px solid #1F745A;
}

.cm-btn-group .btn-primary.active {
    background: #509622;
    color: white;
    border-color: #1F745A;
}

.btn.btn-big {
    display: block;
    width: 100%;
    height: 150px;
    line-height: 150px;
    margin-top: 15px;
}

.btn-inline {
    display: inline-block;
}

.btn-file {
    position: relative;
    overflow: hidden;
}

.btn-file input[type=file] {
    position: absolute;
    top: 0;
    right: 0;
    min-width: 100%;
    min-height: 100%;
    font-size: 100px;
    text-align: right;
    filter: alpha(opacity=0);
    opacity: 0;
    outline: none;
    background: white;
    cursor: inherit;
    display: block;
}

.form-row {
    margin-bottom: 10px;
}

.form-control-label {
    font-weight: 300;
    color: #1F745A;
    font-size: 14px;
    padding-left: 3px;
}

.form-control {
    border-color: #1F745A;
}

.form-control.big-input {
    height: 60px;
    font: normal 25px/60px proximaregular;
    position: relative;
}

.form-group.width70 {
    width: 69%;
    float: left;
}

.form-group.width30 {
    width: 29%;
    float: left;
}

.form-group.width50 {
    width: 49%;
    float: left;
}

.form-group.last {
    margin-left: 2%;
}

.input-group .form-control {
    box-shadow: none !important;
}

.euro {
    position: relative;
    display: inline-block;
    width: 50%;
}

.euro input {
    padding-right: 15px;
    width: 100%;
}

.euro:after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin: auto;
    content: "€";
    right: 20px;
}


input[type="date"].form-control, input[type="datetime-local"].form-control, input[type="month"].form-control, input[type="time"].form-control {
    line-height: 16px;
}

/* Radiobox Style */
.promo .radiobox {
    margin-top: 0;
    display: block;
    position: relative;
    padding-left: 25px;
    padding-top: 12px;
    margin-bottom: 8px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.promo .radiobox.zahlungs_radio {
    padding: 12px 0 25px 25px;
    background: #509622;
    border-radius: 6px;
    height: 80px;
}

.promo .radiobox input {
    position: absolute;
    opacity: 0;
    top: 0;
    left: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.promo .radiomark {
    position: absolute;
    top: 12px;
    left: 0;
    height: 16px;
    width: 16px;
    background-color: #fff; /*#ececec;*/
    border-radius: 10px;
    border: 1px solid #1F745A;
}

.promo .radiobox.ba-bj .radiomark {
    top: 30px;
    left: 16px;
}

.promo .radiobox.payment_conclusion .radiomark {
    top: 26px;
    left: 16px;
}


.promo .radiobox.zahlungs_radio .radiomark {
    top: 28px;
    left: 10px;
}

.promo .radiomark:after {
    content: "";
    position: absolute;
    display: none;
}

.promo .radiobox input:checked ~ .radiomark:after {
    display: block;
}

.promo .radiobox .radiomark:after {
    top: 2px;
    left: 2px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #1F745A;
}


.promo .radiobox label {
    font-size: 15px;
    color: #1F745A;
    font-weight: normal;
    line-height: 8px;
    padding-left: 8px;
}


.promo .radiobox.ba-bj label {
    font-size: 20px;
    height: 55px;
    line-height: 60px;
    color: #FFF;
    padding-left: 0;
    text-align: center;
    width: 90%;
}

.promo .radiobox.zahlungs_radio label {
    font-size: 28px;
    height: 55px;
    line-height: 55px;
    color: #FFF;
    padding-left: 0;
    width: 90%;
    text-align: center;
}

.promo .radiobox.payment_conclusion label {
    font-size: 20px;
    height: 55px;
    line-height: 55px;
    color: #1F745A;
    padding-left: 0;
    width: 90%;
    text-align: center;
}


.promo .radiobox label.disabled {
    font-size: 15px;
    color: #ccc;
}

/* Checkbox Style */
.promo .checkbox {
    margin-top: 0;
    display: block;
    position: relative;
    margin-bottom: 8px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.promo .checkbox input {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    cursor: pointer;
}

.promo .checkmark {
    position: absolute;
    top: 5px;
    left: 5px;
    height: 12px;
    width: 12px;
    background-color: #fff;
    border: 1px solid #1F745A;
}

.promo .checkmark:after {
    content: "";
    position: absolute;
    transition: opacity .2s ease-in-out;
    opacity: 0;
}

.promo .checkbox input:checked ~ .checkmark:after {
    opacity: 1;
    transition: opacity .2s ease-in-out;
}

.promo .checkbox .checkmark:after {
    left: 2px;
    top: -7px;
    width: 8px;
    height: 16px;
    border: solid #1F745A;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.promo label a, .promo label a:hover, .promo label a:visited {
    color: #fff;
    text-decoration: underline;
    font-size: 14px;
}

.promo .checkbox label {
    font-size: 14px;
    padding-left: 25px;
    margin-bottom: 12px;
    color: #1F745A;
}

.promo .checkbox label.disabled {
    color: #ccc;
}

.promo-radio-group-title {
    color: #1F745A;
    font-size: 16px;
    font-weight: normal;
}

.promo-radio-float {
    display: inline-block;
    margin-right: 20px;
}

p.helptext {
    font: normal 14px/24px proximaregular;
}

.modal-md {
    width: 850px;
    max-width: 90%;
}

/* Checkbox Schalter grün / rot */
.switch .checkbox {
    margin-top: 0;
    display: block;
    position: relative;
    margin-bottom: 8px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.switch .checkbox input {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    cursor: pointer;
}

.switch .checkmark {
    position: absolute;
    top: 0;
    left: 10px;
    height: 30px;
    width: 60px;
    border-radius: 15px;
    background-color: #cfcfcf;
    border: 2px solid #cfcfcf;
}

.switch .checkmark:after {
    content: "";
    position: absolute;
    left: -6px;
    background: radial-gradient(circle, rgba(250, 104, 83, 1) 49%, rgba(250, 75, 52, 1) 100%);
    transition: left .2s ease-in-out;
}

.switch .checkbox input:checked ~ .checkmark:after {
    left: 23px;
    background: radial-gradient(circle, rgba(83, 179, 71, 1) 49%, rgba(21, 117, 9, 1) 100%);
    transition: left .2s ease-in-out;
}

.switch .checkbox .checkmark:after {
    top: -7px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
}


select option.negativ {
    color: red;
}

select option.positiv {
    color: green;
}


.fehlerhinweis {
    color: red;
    font-size: 12px;
}


.icon-error {
    color: #e1402b;
}

/* =============  spezielles für den Dashboardfilter ================= */

.dashboard-filter .subdivision-text {
    margin-bottom: 5px;
}

.dashboard-filter .form-group {
    margin-bottom: 0;
}

.dashboard-filter .promo checkbox {
    margin-bottom: 0;
}

.dashboard-filter .promo .checkbox label {
    margin-bottom: 0;
}

.dashboard-filter .btn {
    height: 30px;
    line-height: 15px;
}




/* =============  tablesorter ================= */


td.middle {
    vertical-align: middle !important;
}


.showicons .tablesorter-headerAsc, .tablesorter-headerDesc {
    position: relative;
}

.showicons .tablesorter-headerAsc:after {
    content: '\f0de';
    font-family: 'Font Awesome 6 Pro';
    font-size: 16px;
    position: absolute;
    top: 8px;
    right: 10px;

}

.showicons .tablesorter-headerDesc:after {
    content: '\f0dd';
    font-family: 'Font Awesome 6 Pro';
    font-size: 16px;
    position: absolute;
    top: 4px;
    right: 10px;
}

.tablesorter-filter {
    line-height: 1;
    height: 24px;
    padding: 3px 12px;
    font-size: 14px;
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    padding: 5px 10px;
    line-height: 1.15;
}

td.ts-pager.tablesorter-pager .btn, th.ts-pager.tablesorter-pager .btn {
    height: 30px;
}

.tablesorter-scroller-bar-spacer {
    background: #eee;
}

/* add border to right side (LTR pages) of fixed column */
.tablesorter-scroller-fixed:after {
    content: '';
    border-right: 1px solid #444;
    width: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 2;
    /* set to zero for non-jquery ui themes; use "left" here for RTL pages */
    right: 0;
    /* match the margins set to the table to keep the border the same height as the table */
    margin: 10px 0 15px;
}


/* using-x-theme added by the demo code */
.using-jui-theme .tablesorter-scroller-fixed:after {
    /* use "left" here for RTL pages */
    right: 0;
}

.using-green-theme .tablesorter-scroller-fixed:after,
.using-black-ice-theme .tablesorter-scroller-fixed:after,
.using-dark-theme .tablesorter-scroller-fixed:after,
.using-dropbox-theme .tablesorter-scroller-fixed:after {
    /* match the margins set to the table to keep the border the same height as the table */
    margin: 0;
}


/* =====================  jquery ui ================  */

.ui-autocomplete .ui-menu-item-wrapper {
    font-size: 14px;
}

.ui-autocomplete {
    z-index: 1052 !important
}
