.dl-block-form {

}

.dl-block-form .dlform-front-grid .form-fields-container, .dl-block-form .dlform-front-grid .repeater-container .repeater-fields{
	display:flex;
	flex-wrap:wrap;
	box-sizing: border-box;
	gap:10px;
	margin-block:20px;
}

.dl-block-form .dl-field {
	box-sizing: border-box;
	width:100%;
}

@media screen and (min-width:700px){
	.dl-block-form .dl-field[data-width='33']{flex:33;}
	.dl-block-form .dl-field[data-width='50']{flex:50;}
}

.dl-field .field-3-column {
	display:grid;
}

@media screen and (min-width:500px){
	.dl-field .field-3-column {
		grid-template-columns: 1fr 1fr 1fr;
		gap:10px;
	}
}

.dl-field .field-2-column {
	display:grid;
}

@media screen and (min-width:500px){
	.dl-field .field-2-column {
		grid-template-columns: 1fr 1fr;
		gap:10px;
	}
}

.dl-block-form  label {display:block; margin-block:5px 0;}

.dl-block-form label[class^=label-] span {font-size:16px; font-weight: bold;}
.dl-block-form label[class^=label-] span[class^=field-required-badge-] {color:darkred;}
.dl-block-form .dl-field input[class^=field-] {margin:5px 0 0;box-sizing: border-box;}
.dl-block-form .dl-field select[class^=field-] {margin:5px 0 0;font-size:inherit;box-sizing: border-box;}

.dl-block-form .dl-field small{font-style:italic;color:gray;padding-inline:5px;}
.dl-block-form .dl-field small.field-description-below {font-style:italic;color:gray;padding-inline:5px;}
.dl-block-form .dl-field small.field-description-above {font-style:italic;color:gray;padding-inline:0;}
.dl-block-form .dl-field small:empty{display:none;}

.dl-block-form .dlform-descriptions-below .field-description-above{display:none;}
.dl-block-form .dlform-descriptions-above .field-description-below{display:none;}

.dl-block-form .dl-field input,
.dl-block-form .dl-field textarea {
	width:100%;
	padding:6px 10px;
	border:1px solid #aaa;
	color:#444;
	border-radius:5px;
	resize:none;
	box-sizing: border-box;
}
.dl-block-form .dl-field input[type=checkbox], .dl-block-form  .dl-field input[type=radio]{width:auto;}


.dl-field select {
	width:100%;max-width:100%;
	padding:5px 10px;
	border:1px solid #aaa;
	border-radius:5px;
	background-color: unset;
}
.dl-field select:invalid {color:lightgray;}

.dl-block-form .dl-field input:not(:placeholder-shown):invalid {background-color:rgb(255, 240, 240);}
.dl-block-form .dl-field input[type=email]:invalid:not(:empty) {background-color:rgb(255, 240, 240);}

.dl-block-form .dlform-front-grid .repeater-container {
	display:grid;grid-template-columns: 1fr;
	border:1px solid lightgray;
	width:100%;
	padding-block:10px;
}
.dl-block-form .dlform-front-grid .repeater-container > *,.dl-block-form .dlform-front-grid .repeater-container .repeater-fields {
	padding-inline:10px;
}
.dl-block-form .dlform-front-grid .repeater-container .dl-repeater-remove-button button,
.dl-block-form .dlform-front-grid .repeater-container button.repeater-add {
	margin-top:12px;
	border-width:0;
	background-color: transparent;
	cursor: pointer;
}
.dl-block-form .dlform-front-grid .repeater-container .repeater-fields {
	order:1; margin-block:0;
	border:none;

}
.dl-block-form .dlform-front-grid .repeater-container .description {margin-bottom:10px;}
.dl-block-form .repeater-buttons {
	order:999999;
}

.dl-block-form .dlform-front-grid .repeater-container .repeater-fields:first-of-type .dl-repeater-remove-button {
	visibility: hidden;
}
.dl-block-form .dlform-front-grid .repeater-container .repeater-fields {
	border-bottom:1px solid lightgray;
	padding-bottom:10px;
}
.dl-block-form .form-tasty {display:none;}

.dl-block-form .dl-repeater-remove-button {width:100%; text-align:right;}

.dl-block-form .repeater-fields {transition: background-color .5s;}
.dl-block-form .repeater-fields:has(.dl-repeater-remove-button button:hover){
	background-color: #fafafa;
}

.dl-block-form .dl-field .checkboxes label:has(input[type=checkbox]),
.dl-block-form .dl-field .checkboxes label:has(input[type=radio])
{
	display:flex;
	align-items:center;
	gap:10px;
}

.dl-field .style-sidebyside {
	display:flex; gap:20px;
}

.dl-field .g-recaptcha {
	margin-block:20px;
}

.form-notification {
	border:1px solid lightgray;
	padding: 10px;
	border-left-width: 7px;
	margin-bottom:20px;
}

.form-notification.form-success {border-color: green;background-color: rgba(0,255,0,.1);}
.form-notification.form-failure {border-color: darkred;background-color: rgba(255,0,0,.1);}

.dl-block-form button.save-form {
	padding:5px 10px;
	border-radius:10px;
	border:2px solid #2271b1 ;
	text-decoration: none;
	color:white ;
	background-color:#2271b1 ;
	cursor:pointer;
}
.dl-block-form button.save-form:hover:not(:disabled) {
	background-color:white ;
	color:#2271b1 ;
}
.dl-block-form button.save-form:disabled{
	opacity:.5;cursor:unset;
}

.dl-block-form .showhide-hide {display:none;}

/* File Uploader */

.multiple-uploader {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    border-radius: 15px;
    border: 2px dashed #858585;
    min-height: 150px;
    margin: 0 auto 0px auto;
    cursor: pointer;
	transition: background-color .5s;
}
.multiple-uploader svg {
	pointer-events:none;
}
.multiple-uploader .uploader-filetypes:not(.filetypes-images) {
	display:none !important;
}
.multiple-uploader .mup-main-msg.dragdrop {display:none;}
.multiple-uploader.dragover {border-color:#2271b1;background-color:#4481b41a;}
.multiple-uploader.dragover .mup-main-msg {display:none;}
.multiple-uploader.dragover .mup-main-msg.dragdrop {display:block;}

.mup-msg {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}


.mup-msg .mup-main-msg {
    color: #606060;
    font-size: 1.6rem;
    font-weight: 700;
}

.mup-msg .mup-msg {
    color: #737373;
}

.image-container{
    margin: 1rem;
    width: 120px;
    height: 120px;
    position: relative;
    cursor: auto;
    pointer-events: unset;
}

.image-container:before {
    z-index: 3;
    content: "\2716";
    align-content: center;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    line-height: 22px;
    color: white;
    position: absolute;
    top: -5px;
    left: -5px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #e50000;
    pointer-events: all;
    cursor: pointer;
}



.image-preview {
    position: absolute;
    width: 120px;
    height: 120px;
	object-fit:cover;
    border-radius: 12px;
}

.image-size {
    position: absolute;
    z-index: 1;
    height: 120px;
    width: 120px;
    backdrop-filter: blur(4px);
	color:white;
    font-weight: bolder;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    opacity: 0;
    pointer-events: unset;
	text-shadow: 0 0 5px black;
}

.image-size:hover {
    opacity: 1;
}

.exceeded-size{
    position: absolute;
    z-index: 2;
    height: 120px;
    width: 120px;
    display: flex;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: white;
    background: rgba(255, 0, 0, 0.6);
    pointer-events: unset;
}

.uploader-file-icon {
	width:100%;
	height:100%;
	background-color: rgba(0,0,0,.1);
	border-radius:12px;
	position:absolute;
	display:flex;
	align-items:center;
}
.uploader-file-icon svg {margin:0 auto 23px;}
.uploader-file-icon .filename {
	font-size:14px;
	max-height:25%;
	overflow:hidden;
	position:absolute;
	bottom:0;left:0;right:0;
	padding:2px 5px;
	border-bottom-left-radius:12px;
	border-bottom-right-radius:12px;
	background-color:rgba(0,0,0,.1);
	line-height: 18px;
	max-height: 23px;
	word-break: break-all;
}