/*
* @version      1.0.0 11.09.2020
* @author       MAXXmarketing GmbH
* @package      addon_single_product_checkout
* @copyright    Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license      GNU/GPL
*/
.schufa_form {
  border: 2px solid #000;
  border-radius: 5px;
  padding: 8px;
}
.row_agb {
   position: relative;
}
#error_ch_msg {
    position: absolute;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    background: #fff;
    padding: 5px;
    top: 10px;
    left:20px;
    display: none;
    font-size: 12px;
    }
.jshop_prod_attributes .row {
  flex-direction: column;
  align-items: flex-start;
}
.productlandoc .tmpl_adreess .personal_info > .control-group {
  flex-direction: column;
  align-items: flex-start;
  max-width: 440px;
} 
.productlandoc.productkirchen .personal_info > .control-group{
    max-width: 440px;
    width: 100%;
}
.productlandoc.productkirchen .personal_info > .control-group.gbname{
    max-width: 100%;
    width: 100%;
}
.productlandoc.productkirchen .personal_info > .control-group.gbname > .controls{
    max-width: 70%;
}
.productlandoc.productkirchen .tmpl_adreess .personal_info > .control-group {
  flex-direction: row;
}  
.productlandoc.productkirchen .firma_fields.control-group > .controls, .productlandoc.productkirchen .personal_info > .control-group > .controls {
  width: 100%;
  max-width: 315px;
}
.firma_fields.control-group > .controls, .personal_info > .control-group > .controls {
  width: 100%;
  max-width: 440px;
}  
.productview select.form-select, .productview input.form-control {
  max-width: 100%;
}
.productlandoc.productschufa .tmpl_adreess .personal_info {
  display: flex;
}
.productfull .my_address .control-group.usertype {
    display: block;
}

.productfull .landoc_product_schufa .my_address .control-group.usertype {
    min-height: 20px;
}

.productfull .my_address .control-group.usertype .control-label {
    margin-bottom: 0.5rem;
}

.productfull .my_address .control-group.usertype .note {
    font-weight: normal;
}

.productfull .landoc_product_default .my_address .control-group.usertype .note {
    font-size: 0.75rem;
}

.productfull .aspc_landoc_certificated_wrap input,
.productfull .aspc_landoc_user_person input {
    display: none;
}

.productfull .aspc_landoc_certificated_wrap label,
.productfull .aspc_landoc_user_person label {
    position: relative; /* for ticks */
    margin-bottom: 20px;
    padding-left: 50px;
    font-weight: bold;
}

.productfull .aspc_landoc_user_person label {
    font-weight: normal;
}

.productfull .aspc_landoc_certificated_wrap label:before,
.productfull .aspc_landoc_certificated_wrap input:checked + label:after,
.productfull .aspc_landoc_user_person label:before,
.productfull .aspc_landoc_user_person input:checked + label:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-45%);
    display: block;
    width: 36px;
    height: 36px;
    border: 1px solid #B6B6B6;
    border-radius: 1px;
    background: #F7F7F7;
}

.productfull .aspc_landoc_certificated_wrap input:checked + label:after,
.productfull .aspc_landoc_user_person input:checked + label:after {
    left: 5px;
    transform: translateY(-70%);
    width: 50px;
    height: 50px;
    border: none;
    background: url(../../images/addon_single_product_checkout/order_box_tick.png) no-repeat center;
    background-size: contain;
}

.productfull .aspc_landoc_certificated_wrap input:invalid + label:before,
.productfull .aspc_landoc_user_person input:invalid + label:before {
    border: 2px solid #DC3545;
}

.productfull .deferred_order_btn {
    margin-bottom: 25px;
}

.productfull .aspc_landoc_user_person label:before,
.productfull .aspc_landoc_user_person input:checked + label:after {
    top: -0.25rem;
    transform: none;
}

.productfull .aspc_landoc_user_person input:checked + label:after {
    transform: translateY(-40%);
}

.productfull .landoc_params .line {
    display: flex;
    margin: 20px 0;
    margin-top: 20px;
    justify-content: space-between;
    align-items: center;
}
.productfull .landoc_params .line.line_new {
    margin: 0;
}

.productfull .landoc_params .line div {
	margin-right: 10px;
}

.productfull .landoc_params .line div:last-child {
	margin-right: 0;
}

.productfull .aspc_landoc_address {
    display: flex;
    margin-bottom: 20px;
    justify-content: space-between;
    align-items: center;
}

.productfull .aspc_landoc_address .control-label {
    margin-right: 20px;
    white-space: nowrap;
}

.productfull .aspc_landoc_address .controls {
    width: 100%;
}

.productfull .landoc_address {
    margin-bottom: 20px;
}

.productfull .schufa_product_default .landoc_address .input {
    background-color: #fafafa;
}

.productfull .aspc_landoc_user_firm.hidden {
	display: none;
}

.productfull .aspc_landoc_user_persons_wrap {
    display: flex;
    justify-content: space-between;
    align-items: top;
}

.productfull .aspc_landoc_user_person {
    white-space: nowrap;
}

.productfull .aspc_landoc_user_person * {
    white-space: normal;
}

.productfull .aspc_landoc_user_person input {
    margin-top: 0.4rem;
    vertical-align: top;
}

.productfull .aspc_landoc_user_person_text {
	width: 100%;
}

.productfull .aspc_landoc_user_signature_wrap > * {
    display: inline-block;
    vertical-align: top;
}

.productfull .aspc_landoc_user_signature_wrap .control-label {
    margin-right: 10px;
}

.productfull .aspc_landoc_user_signature_wrap.invalid .controls input {
    box-shadow: none;
}

.productfull .aspc_landoc_user_signature {
    width: 1px;
    height: 1px;
    border: none;
    box-shadow: none;
}

.productfull .signature_img {
	max-height: 60px;
	margin-bottom: 20px;
}

.productfull .modal-body {
	padding: 20px;
}

.productfull .modal.fullsize .modal-body {
	padding: 20px !important;
}

.productfull .modal-footer {
	flex-wrap: wrap;
}

.productfull #drawingCanvas {
	width: 100%;
	height: 100%;
    border: 1px solid #CCCCCC;
}

@media (min-width: 768px) {
    .productfull .my_address .control-group {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
    .productfull .my_address .control-group .controls {
		width: 70%;
	}
	.productfull .aspc_user_firm_name-wrap {
		display: flex;
		justify-content: space-between;
		align-items: top;
	}
	.productfull .landoc_address {
		margin-top: 37px;
	}
	.productfull .landoc_address .control-group {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.productfull .landoc_address .control-group .controls {
		width: 70%;
	}
	.productfull .usr_fields_wrap .row .control-group {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.productfull .usr_fields_wrap .row .control-group .controls {
		width: 70%;
	}
	.productfull .modal-dialog {
		max-width: 100%;
	}
}

@media (max-width: 767px) {
    .productfull .landoc_params .line {
        flex-wrap: wrap;
        margin-bottom: 0;
    }
    .productfull .landoc_params .line > div {
        width: 100%;
        margin: 0;
    }
    .productfull .landoc_params .line > div:nth-child(even) {
        margin-bottom: 1rem;
    }
    .productfull .landoc_params_aspc_landoc_address,
    .productfull .landoc_params_aspc_landoc_address > *,
    .productfull .aspc_landoc_user_persons_wrap,
    .productfull .aspc_landoc_user_persons_wrap > * {
        display: block;
    }
	.productfull .modal-footer .btn {
		order: 1;
	}
	.productfull .modal-footer .savedata.btn {
		order: 0;
	}
    .productfull .modal-footer button {
		display: block;
		width: 100%;
		margin-bottom: 20px;
	}
}