:root {
    --green: #B8D540;
    --red: #D54040;
    --light-red: #FFF5F5;

    --box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);

}


/*** OPTION BUTTONS ***/

.checkcontainer {
    display: block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.checkcontainer input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0
}

body .ts-input-radio-icon .checkmark {
    position: absolute;
    top: auto;
    left: auto;
    height: 18px;
    width: 18px;
    border: 0;
    border-radius: 30px;
    margin: -15px
}

.ts-cb-container .checkmark {
    position: absolute;
    top: 10px;
    left: 28px;
    height: 18px;
    width: 18px;
    background-color: #fff;
    border: 3px solid #fff;
    outline: 1px solid #000;
    border-radius: 30px;
    z-index: 5;
}

.ts-input-radio-icon input.css-checkbox {
    display: none
}

.ts-cb-container .checkcontainer input:checked~.checkmark:after {
    display: none
}

body .ts-input-radio-icon input:checked~.checkmark:after {
    display: block
}

body .ts-input-radio-icon input:checked~.checkmark {
    background-color: var(--green);

}

.checkcontainer:hover input~.checkmark {
    background-color: var(--green)
}

.checkcontainer input:checked~.checkmark {
    background-color: var(--green);
    outline: 1px solid var(--green);
}

.checkmark:after {
    content: "";
    position: absolute;
    display: none
}

.checkcontainer input:checked~.checkmark:after {
    display: block
}

body .ts-input-radio-icon .checkmark:after {
    left: 11px;
    top: 7px;
    width: 8px;
    height: 14px;
    border: solid #fff;
    border-width: 0 4px 4px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

input[type=radio]:checked+label {
    opacity: 1;
    border-color: var(--green)
}

#product-dates,
.ts-cb-container-new .css-label {
    border: 1px solid transparent;
    box-shadow: 0 0 10px 0 rgba(110, 110, 110, .2);
    -moz-box-shadow: 0 0 10px 0 rgba(110, 110, 110, .2);
    -webkit-box-shadow: 0 0 10px 0 rgba(110, 110, 110, .2)
}

#product-dates {
    font-weight: 600;
    padding-left: 40px;
    background: transparent url("../images/icons/calendar.svg") no-repeat 15px center / 12px;
    height: 40px;
    line-height: 20px;
    border-color: var(--green);
    margin-bottom: 15px;
}

#product-dates.error {
    border-color: var(--red);
    background: var(--light-red) url("../images/icons/calendar.svg") no-repeat 15px center / 12px;
}

.ts-cb-container .css-label {
    line-height: 20px;
    margin: 0 auto 15px;
    border: 1px solid #fff;
    -webkit-transition: 250ms linear !important;
    -moz-transition: 250ms linear !important;
    -o-transition: 250ms linear !important;
    -ms-transition: 250ms linear !important;
    transition: all 250ms linear !important;
    cursor: pointer;
    display: block;
    padding: 8px 0 8px 55px;
    border-radius: 30px;
    background-color: transparent;
    position: relative;
    z-index: 10;
}


/*** TEMP ***/
body,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body p,
body a,
body ul,
body ol,
body li,
body div,
body strong,
body b {
    font-family: "Open Sans";
}

#testprodukt {
    position: absolute;
    right: 15px;
    top: -36px;
    padding: 5px 20px;
    background: red;
    border-radius: 30px;
}

#testprodukt p strong {
    color: #fff;
    font-size: 14px !important;
}

/*** PRODUKT DETAIL ***/
html body #Kochkurse .wd-single-title {
    width: 100% !important;
    min-width: 100%;
    display: block;
    margin-bottom: 0 !important;
}

html body #Kochkurse .wd-single-title .product_title {
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    display: block;
    text-overflow: ellipsis;
}

#Kochkurse .woocommerce-price-suffix {
    display: none;
}

#Kochkurse.vc_column_container>.vc_column-inner .vc_column-inner {
    padding: 0;
}

.ts-product-fieldset {
    border: 2px solid #000;
    border-radius: 15px;
    padding: 15px 25px;
    position: relative;
    display: block;
    margin-bottom: 30px;
}

.ts-product-fieldset.vc_row {
    margin-left: auto;
    margin-right: auto;
}

.ts-product-fieldset p>strong>em,
.ts-product-fieldset p>em>strong {
    font-size: 20px;
    font-weight: 900;
    font-style: normal;
    display: block;
    margin-bottom: 20px !important;
}

.ts-product-fieldset .wpb_text_column {
    margin: 0 auto;
}


#Kochkurse .wd-single-price {
    font-weight: 900;
    color: #fff;
    background-color: #000;
    white-space: nowrap;
    border-radius: 30px;
    padding: 10px 15px
}

#Kochkurse .wd-single-price .price,
#Kochkurse .wd-single-price .price .amount {
    color: #fff;
    font-weight: 900;
    font-size: 22px;
}

.ts-credits {
    min-width: 70px;
    background: transparent url("../images/icons/star.svg") no-repeat 5px 50% / 20px;
    padding-left: 35px;
}

.ts-credits+span {
    font-size: 14px;
    display: inline-block;
    padding-right: 5px;
}

.ts-icon-box.active {
    border-color: var(--green)
}

.ts-icon-box-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    min-width: 150px;
    gap: 20px;
}


.ts-icon-box {
    border: 2px solid #000;
    border-radius: 15px;
    padding: 8px 6px 15px 60px;
    cursor: pointer;
    position: relative;
    display: block;
    margin-bottom: 10px;
    flex: 1 1 0;
    width: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    min-height: 97px;
    min-height: 130px;
}

.ts-icon-box span {
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
    display: inline-block;
}


/* extra icons */
.ts-icon-box.ts-coupon {
    background: transparent url("../images/icons/coupon.svg") no-repeat 10px 50px / 30px;
}

.ts-icon-box.ts-flex-tarif {
    background: transparent url("../images/icons/flex.svg") no-repeat 10px 50px / 30px;
}

.ts-icon-box.ts-gift {
    background: transparent url("../images/icons/present.svg") no-repeat 10px 50px / 30px;
}

.ts-icon-box.test2{
    background: transparent url("../images/icons/present.svg") no-repeat 10px 50px / 30px;
}

.ts-icon-box.test3 {
    background: transparent url("../images/icons/books-light.svg") no-repeat 10px 50px / 30px;
}

.ts-icon-box span.dl-description {
    margin-top: 25px;
    margin-left: -50px;
    display: none;
    padding-right: 10px;
}

.dl-btn-container {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 4px;
}

.dl-btn-container button {
    background-color: transparent;
    border-width: 0px;
    padding: 0px;
    height: 18px;
    width: 18px;
    background-image: url("../images/icons/circle-info-light.svg");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.dl-btn-container button:hover {
    box-shadow: none;
}

.ts-icon-box .dl-title,
.ts-icon-box .ts-box-title {
    display: block;
    width: 100%;
}

.ts-icon-box .dl-price {
    white-space: nowrap;
}

.ts-icon-box .dl-subtitle {
    font-size: 9px;
}


@media screen and (max-width: 1230px) {
    .ts-icon-box-container {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: stretch;
    }

    .ts-icon-box {
        display: block;
        min-height: 130px;

        width: 100%;
    }
}


body .kochkurse .wd-single-add-cart {
    margin-top: 0 !important;
}

body .kochkurse .single_variation_wrap {
    margin-top: 0px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    width: calc(100% - 54px) !important;
}


body.single div.quantity input[type="number"],
body.single div.quantity input[type="button"] {
    border-color: #000;
    font-weight: 700;
    font-size: 18px;
}

body .kochkurse .single_add_to_cart_button,
body .kochkurse #select-add-to-cart .button {
    font-weight: 900;
    font-size: 18px;
    text-transform: none;
    margin-left: 7px;
}

#Kochkurse .woocommerce-variation {
    display: none !important;
}

/*** SELECT ***************************************************************************/

body .kochkurse #select-add-to-cart .button {
    margin-left: 11px;
    border-radius: var(--btn-shop-brd-radius);
    color: var(--btn-shop-color);
    box-shadow: var(--btn-shop-box-shadow);
    background-color: var(--btn-shop-bgcolor);
    width: 81%;
}

#toggle-credits {
    font-size: 12px;
    text-align: center;
    margin-top: 30px;
    margin-left: 15px;
}

#toggle-credits span {
    background: transparent url("../images/icons/arrow.svg") no-repeat 5px 50% / 20px;
    padding-left: 35px;
}

body .kochkurse button.disabled {
    opacity: 0.2;
}


#select-checkout input {
    margin-bottom: 15px;
}

#select-checkout button {
    border-radius: var(--btn-shop-brd-radius);
    color: var(--btn-shop-color);
    box-shadow: var(--btn-shop-box-shadow);
    background-color: var(--btn-shop-bgcolor);
    width: 100%;
    font-weight: 900;
    font-size: 18px;
    text-transform: none;
}

.select-checkout-info {
    background: #f7f7f7;
    padding: 20px;
    max-width: calc(100% - 45px);
    margin-left: 15px;
    margin-top: 0;
    font-size: 14px;
    margin-bottom: 30px;
}

.select-checkout-fields {
    max-width: calc(100% - 45px);
    margin-left: 15px;
}

label[for="select-terms"] {
    font-size: 12px;
    margin-bottom: 0;
    margin-top: 0;
}

#select-checkout #select-terms {
    margin: 0 10px 0 0;
}

#select-checkout .error {
    color: #D54040;
    border-color: #D54040;
    background-color: var(--light-red);
}

.error-text {
    color: #D54040;
    font-size: 14px;
    font-weight: 700;
}

#select-checkout-button {
    margin-top: 15px;
}

/*** LOGIN ***/

.ts-select-login-container {
    background-color: #000;
    color: #fff;
    border-radius: 15px;
    padding: 15px 27px 27px;
}

.ts-close {
    position: absolute;
    right: 30px;
    top: auto;
    color: #fff;
    width: 15px;
    height: 15px;
    background: transparent url("../images/icons/close.svg") no-repeat center / 12px;
}

.ts-select-login-container .headline {
    font-size: 28px;
    font-weight: 900;
    text-transform: uppercase;
}

.btn.ts-button {
    border-radius: 30px;
    text-transform: none;
    font-weight: 700;
    padding: 10px 30px;
    border: 1px solid #000;
}

.btn.ts-button.ts-button-secondary,
.ts-select-login-container .btn.ts-button.ts-button-secondary {
    border-color: #fff;
    background-color: #000;
    color: #fff;
}

.ts-select-login-container .btn.ts-button.ts-button-secondary {
    margin-left: 20px;
}

.ts-select-login-container .btn.ts-button {
    background-color: #fff;
    color: #000;
}


/** select dashboard header **/
.select-dashboard-header {
    margin-bottom: 30px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.select-dashboard-header>div {
    display: flex;
    flex-direction: column;
}

.select-dashboard-header .title-container h2 {
    margin: 0px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 5px;
}

.select-dashboard-header .title-container h2::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url("../images/icons/hat-chef-light.svg");
    margin-right: 5px;
}

.select-dashboard-header .credits-container .credits {
    background: #000;
    color: #fff;
    border-radius: 30px;
    display: inline-block;
    padding: 7px 15px;
    margin-right: 5px;
    text-align: center;
}

/*** data ***/
.data-list {}

.data-list-entry {
    margin-bottom: 15px;
    padding: 10px;
    border-radius: 30px;
    box-shadow: var(--box-shadow);
    border: 1px solid transparent;
}

.data-list-entry:hover {
    background: #f5f5f5;
    border-color: #e6e6e6;
}

.data-list-entry span {
    font-weight: 600;
    font-size: 14px;
}

.dl-user,
.dl-credits {
    background: #000;
    color: #fff;
    border-radius: 30px;
    display: inline-block;
    padding: 7px 15px 7px 35px;
    margin-right: 5px;
}

.dl-user {
    background: #000 url("../images/icons/user.svg") no-repeat 15px center / 12px;
}

.dl-credits {
    background: #000 url("../images/icons/credits.svg") no-repeat 15px center / 12px;
}

.dl-date {
    background: #e6e6e6;
    color: #555;
    border-radius: 30px;
    display: inline-block;
    padding: 7px 25px;
    margin-right: 5px;
}

.dl-title {
    color: #555;
    display: inline-block;
    padding: 7px 15px 7px 35px;
    margin-right: 5px;
}

.dl-actions {
    display: inline-block;
    width: 15px;
    position: absolute;
    right: 60px;
    margin-top: 7px;
}

a.edit {
    background: transparent url("../images/icons/edit.svg") no-repeat center left / 20px;
    display: inline-block;
    width: 20px;
    height: 20px;
}


#toggle-credits>span {
    color: black;
    background-color: white;
    border: 1px solid black;
    border-radius: 35px;
    padding: 12px 20px;
    padding-left: 30px;
}

@media screen and (max-width: 1199px) {
    .wpb_wrapper .wd-rs-620a710637feb {
        width: 80% !important;
    }
}

/*
#ts-product-date, #ts-product-extras, .variations, .wapf{
	display: block !important;
}
*/


body.product-template-default.single-product .wd-single-price {
    margin-top: 15px;
}


/*** FIX PRE SELECT ***/

.vc_custom_1693906599632,
.vc_custom_1693906638250 {
    padding: 0 15px;
}

@media screen and (max-width:767px) {

    body #Kochkurse .vc_column-inner {
        margin-right: 0px !important;
        max-width: calc(100% - 15px);
        margin-left: 0px !important;
        box-shadow: none;
    }

    body #Kochkurse .vc_column-inner .vc_column-inner {
        max-width: 100%;
    }

    body.single-product .wd-single-add-cart.wd-design-justify .variations_form>* {
        margin-left: 25px;
    }

    body .kochkurse .single_add_to_cart_button {
        width: 72%;
        margin-top: 0px;
    }

    body.single-product .attribute_ort_Berlin:after,
    body.single-product .attribute_ort_Bremen:after {
        font-size: 10px !important;
    }
}






.lacocina-product-single #price-container .wd-single-price {
    margin-top: -5px;
}

.lacocina-product-single #price-container {
    text-align: right;
    padding-right: 15px;
}

.lacocina-product-single #price-container .wd-wpb,
.lacocina-product-single #price-container .wpb_content_element {
    margin-bottom: 0;
}

@media (min-width: 1025px) {
    body.single-product .whb-overcontent:not(.whb-custom-header) {
        padding-top: 150px;
    }
}

@media screen and (max-width:767px) {

    .lacocina-product-single #price-container {
        margin-top: 15px;
        text-align: left;
    }

    #Kochkurse .wd-single-price .price,
    #Kochkurse .wd-single-price .price .amount {
        color: #fff;
        font-weight: 900;
        font-size: 16px;
    }

    body .lacocina-product-single #Kochkurse .vc_column-inner {
        max-width: 100%;
    }

    /*
	body .lacocina-product-single .ts-cb-container > .checkcontainer {
		padding-left: 0;padding-right: 0;
	}
	*/
    body .lacocina-product-single .ts-cb-container .css-label {
        padding-right: 10px;
    }

    body .lacocina-product-single .ts-cb-container .checkmark {
        top: 20px;
    }

    body .lacocina-product-single.kochkurse .single_variation_wrap {
        width: 100% !important;
    }

    body .lacocina-product-single .ts-product-fieldset p>strong>em,
    body .lacocina-product-single .ts-product-fieldset p>em>strong {
        font-size: 16px;
    }

    body .lacocina-product-single .product_title {
        font-size: 24px;
    }

    body.single-product .lacocina-product-single .wd-single-add-cart.wd-design-justify .variations_form>* {
        margin-left: 30px;
    }

    body .lacocina-product-single.kochkurse .vc_col-sm-4 {
        margin-left: auto !important;
    }

    body .lacocina-product-single .vc_custom_1681373960879 {
        padding-top: 0 !important;
    }

    body .lacocina-product-single .variations_form {
        margin-top: 15px;
    }
}