.zt-obiski-login-form{
    margin-bottom: 15px;
    clear: both;
}

.elementor-shortcode:has(.henkel-termin-ogrodje) {
    display: flex;
    justify-content: center;
    align-items: center;
    /* height: 100vh; */
}
button.done {
    width: 100%;
}
button:disabled {
    cursor: not-allowed!important;
    opacity: 0.6;
}

/* AUTHENTICATION SPINNER */
    .spinner {
        width: 30px;
        height: 30px;
        border: 3px solid white;
        border-top: 3px solid transparent;
        border-radius: 50%;
        animation: spin 1s linear infinite;
        display: inline-flex;
        align-self: center;
        margin: 0px auto;
    }
    
    @keyframes spin {
        0% { transform: rotate(0deg); }
        100% { transform: rotate(360deg); }
    }
    
    .loading .spinner {
        display: inline-block;
    }


.henkel-form {
	text-align: center;
}
.henkel-form button{
	font-size: 30px;
	float: left;
	text-wrap: auto;
}
.henkel-form button.red{
	background: red;
}
.henkel-form .grayBlock {
    color: black; 
    padding: 2vw;   
    background-color: #a4afb7; 
    margin-top: 1vw; 
    font-size: 3vw; 
    border: 1vw solid white;
    margin-top: 15px;
}
.henkel-form .grayBlock.mini {
    font-size: 16px; 
    margin-top: 15px; 
}
.henkel-form .danger {border-color: #d9534f; }
.henkel-form .warning{border-color: orange; }
.henkel-form .success{border-color: #5cb85c; }
.henkel-form .adminInfo{border-color: #5bc0de; font-size:1vw; word-break: break-word;}

.login-wrapper, .submit-wrapper{
    text-align:left; margin-top:20px;clear:both; display: flex;
}
#zt-najave-obiskov-quickpass-results{	
	clear:both; 
	margin-top:1vw;
	width:100%;
	margin-bottom: 1.6em;
}

.zt-najave-boardingpass-logo{
    max-height: 16vh!important;
    max-width: 75vw!important;
    width: fit-content;
    align-self: center;
}

#zt-najave-obiskov-quickpass-form{
    clear:both; 
	margin-top:1vw;
	width:100%;
	margin-bottom: 1.6em;
}


.henkel-termin-ogrodje .danger {border-color: #d9534f; }
.henkel-termin-ogrodje {
    max-width: 500px;
    align-self: center;
    margin: 2vh 2vw;
    padding: 1vh;
    text-align: center;
    box-shadow: 0vh 0vh 1vw 1px black, 0vh 0vh 2vw 0px inset black;
    inset: 3vh;
    border-radius: 1vw;
}

.no-wrap-elipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.henkel-termin-ogrodje .block1{
    height: 18vh;
    border-radius: 1vh 1vh 0vh 0vh;
    background: #ffffff82;
    display: flex;
    justify-content: center;
    align-items: center;
}
.henkel-termin-ogrodje .visitor{
	background: #ffffff82;
	height: 13vh;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.henkel-termin-ogrodje .visitor .title{	
	font-size: 4vw;
	font-size: 4vmin;
	padding-left: 1vw;
    padding-right: 1vw;
}
.henkel-termin-ogrodje .visitor .data{	
	font-size: 4vw;
	font-size: 5vmin;
	padding-left: 1vw;
    padding-right: 1vw;
}

.henkel-termin-ogrodje .contact{
	background: #ffffff82;
	height: 11vh;
	display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 1vw;
    padding-right: 1vw;
}
.henkel-termin-ogrodje .contact .title{	
	font-size: 3vw;
	font-size: 3vmin;
	padding-left: 1vw;
    padding-right: 1vw;	
}
.henkel-termin-ogrodje .contact .data{	
	font-size: 4vw;
	font-size: 4vmin;
	padding-left: 1vw;
    padding-right: 1vw;
}

.henkel-termin-ogrodje .error .title{	
	font-size: 5vw;
	font-size: 5vmin;
	padding-left: 1vw;
    padding-right: 1vw;
}
.henkel-termin-ogrodje .error .data{	
	font-size: 3vw;
	font-size: 3vmin;
	padding-left: 1vw;
    padding-right: 1vw;
}

.henkel-termin-ogrodje .arrival{
	background: #008246;
	height: 16vh;
	font-size: 4vw;
	font-size: 4vmin;
	display: flex;
    flex-direction: column;
    justify-content: center;
    color: white;
    padding-left: 1vw;
    padding-right: 1vw;
}

.henkel-termin-ogrodje .departure{
	background: #afb4b9;
	height: 16vh;
	font-size: 4vw;
	font-size: 4vmin;
	display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 1vw;
    padding-right: 1vw;
}
.henkel-termin-ogrodje .qr_and_parking {
	height: 20vh;
    background: #ffffff82;
    display: flex;
    flex-direction: column;
    justify-content: center;	
	border-radius: 0vh 0vh 1vh 1vh;
}
.henkel-termin-ogrodje .qr_and_parking .parking {
	font-size: 3vh;	
}
.henkel-termin-ogrodje .qr img{
	max-height: 20vh;
	height: 20vh;
}

.col-form-label {
    padding-top: calc(.375rem + 1px)!important;
    padding-bottom: calc(.375rem + 1px)!important;
    margin-bottom: 0!important;
    font-size: inherit!important;
    line-height: 1.5!important;
    text-align: left!important;
    font-weight: 700!important;
}

.form-group {
    margin-bottom: 1rem;
}

.form-control {
    display: block;
    width: 100%;
    height: calc(2.25rem + 2px);
    padding: .375rem .75rem!important;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da!important;
    border-radius: .25rem!important;
    box-shadow: inset 0 0 0 transparent;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
