@font-face {
	font-family: Open Sans;
	src: url('../fonts/OpenSans-Regular.ttf') format("truetype");
}

@font-face {
	font-family: Noto Sans;
	src: url('../fonts/NotoSans-Regular.ttf') format("truetype");
}

body {
	font-size: 14px;
	font-family: Open Sans, Arial, Helvetica sans-serif;
	/*font-family: Noto Sans, sans-serif;*/
	color: #454545;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
    hyphens: auto;
}

.smallest {
	font-size: .7em;
	line-height: 1.3em;
}

button {
  background: none repeat scroll 0 0 transparent;
  border: medium none;
  cursor: pointer;
  height: auto;
  margin: 0;
  padding: 0;
  width: auto;
}

.btn-ivmrot, .btn-danger {
    color: #fff;
    background-color: #e1003a;
    border-color: #e1003a;
    opacity: 1;
    transition: 0.3s;
}

.btn-ivmrot:hover, .btn-danger:hover {
    opacity: 0.8;
    color: #fff;
}

.form-control, .form-select {
    padding: .2rem .75rem;
}

div.pleaseWait {

	display: none;
	position: fixed;
	z-index: 1070;
	background-color: rgba(0,0,0,0.2);
}

div.pleaseWait div {

	position: absolute;
	width: 64px;
	height: 64px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50%;
	display: inline-block;
	top: 50%;
	left: 50%;
	transform: translate(-100%, -100%);
}

@keyframes loader-rotate-left  { 0% { transform:rotate(360deg) } 100% { transform:rotate(0deg)   } }
@keyframes loader-rotate-right { 0% { transform:rotate(0deg)   } 100% { transform:rotate(360deg) } }

div.pleaseWait div.one   { border-top: 2px solid #036;       animation: loader-rotate-left 1s linear infinite;  }
div.pleaseWait div.two   { border-right: 2px solid #5cb85c;  animation: loader-rotate-right 1s linear infinite; }
div.pleaseWait div.three { border-bottom: 2px solid #f0ad4e; animation: loader-rotate-right 1s linear infinite; }
div.pleaseWait div.four  { border-left: 2px solid #e1003a;   animation: loader-rotate-right 1s linear infinite; }

div.separator {

	position: relative;
	border-bottom: 1px solid #dee2e6;
	margin: 10px 0px 35px 0px;
}

div.separator > div {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #999999;
	max-width: 300px;
	text-align: center;
	border-radius: 20px;
	border: 1px solid #dee2e6;
	color: #ffffff;
	padding: 3px 15px;
	font-size: 18px;
}

div.separator-moreoffers {

	position: relative;
	border-bottom: 2px solid #dee2e6;
	margin: 10px 0px 0px 0px;
}

div.separator-moreoffers > div {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #e1e1e1;
	max-width: 300px;
	text-align: center;
	border-radius: 20px;
	color: #2c2c2c;
	padding: 3px 15px;
}

h1 {
	font-size: 32px;
}

h2 {
	font-size: 24px;
}

h3 {
	font-size: 18px;
	font-weight: bold;
}

h4 {
	font-size: 16px;
}

h5 {
	font-size: 16px;
}

.gruen {
	color: #4ecac2;
}
.btn.btn-small{
	font-size: .7rem;
	padding: .2rem .4rem;
}
.btn-ivmblau, .btn-primary {
    color: #fff;
    background-color: #003366!important;
    border-color: #003366;
    opacity: 1;
    transition: 0.3s;
}

.btn-primary:hover {
  background-color: #003366;
  border-color: #003366;
}

.ui-dialog-buttonset button{
    border-radius: .25rem;
    padding: .375rem .75rem;
}

.btn-ivmblau:hover {
    opacity: 0.8;
    color: #fff;
}

.btn-ivmblau.disabled,
.btn-ivmblau.disabled:hover{
    opacity:0.3!important;
}

.btn-annehmen {
  color: #fff;
  background-color: #3db8b0;
  border-color: #3db8b0;
}
.btn-annehmen:hover {
  color: #fff;
  background-color: #2aa49c;
  border-color: #2aa49c;
}
.btn-check:focus + .btn-annehmen, .btn-annehmen:focus {
  color: #fff;
  background-color: #2aa49c;
  border-color: #2aa49c;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-check:checked + .btn-annehmen, .btn-check:active + .btn-annehmen, .btn-annehmen:active, .btn-annehmen.active, .show > .btn-annehmen.dropdown-toggle {
  color: #fff;
  background-color: #2aa49c;
  border-color: #2aa49c;
}
.btn-check:checked + .btn-annehmen:focus, .btn-check:active + .btn-annehmen:focus, .btn-annehmen:active:focus, .btn-annehmen.active:focus, .show > .btn-annehmen.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-annehmen:disabled, .btn-annehmen.disabled {
  color: #fff;
  background-color: #8ab7b4;
  border-color: #8ab7b4;
}

.btn-ablehnen {
  color: #fff;
  background-color: #dc357b;
  border-color: #dc357b;
}
.btn-ablehnen:hover {
  color: #fff;
  background-color: #c42d6d;
  border-color: #c42d6d;
}

.btn-login,
.btn-transfer {
  color: #fff;
  background-color: #003366;
  border-color: #003366;
}
.btn-login:hover,
.btn-transfer:hover {
  color: #fff;
  background-color: #003366;
  border-color: #003366;
}
.btn-check:focus + .btn-ablehnen, .btn-ablehnen:focus {
  color: #fff;
  background-color: #c42d6d;
  border-color: #c42d6d;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-check:checked + .btn-ablehnen, .btn-check:active + .btn-ablehnen, .btn-ablehnen:active, .btn-ablehnen.active, .show > .btn-ablehnen.dropdown-toggle {
  color: #fff;
  background-color: #dc357b;
  border-color: #dc357b;
}
.btn-check:checked + .btn-ablehnen:focus, .btn-check:active + .btn-ablehnen:focus, .btn-ablehnen:active:focus, .btn-ablehnen.active:focus, .show > .btn-ablehnen.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-ablehnen:disabled, .btn-ablehnen.disabled {
  color: #fff;
  background-color: #dc357b;
  border-color: #dc357b;
}

.btn-details {
  color: #606060;
  background-color: #dcdcdc;
  border-color: #dcdcdc;
}
.btn-details:hover {
  color: #606060;
  background-color: #bfbfbf;
  border-color: #bfbfbf;
}
.btn-check:focus + .btn-details, .btn-details:focus {
  color: #606060;
  background-color: #bfbfbf;
  border-color: #bfbfbf;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-check:checked + .btn-details, .btn-check:active + .btn-details, .btn-details:active, .btn-details.active, .show > .btn-details.dropdown-toggle {
  color: #606060;
  background-color: #dcdcdc;
  border-color: #dcdcdc;
}
.btn-check:checked + .btn-details:focus, .btn-check:active + .btn-details:focus, .btn-details:active:focus, .btn-details.active:focus, .show > .btn-details.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-details:disabled, .btn-details.disabled {
  color: #606060;
  background-color: #dcdcdc;
  border-color: #dcdcdc;
}


.btn-transparent {
  color: #454545;
  background-color: transparent;
  border-color: transparent;
}
.btn-transparent:hover {
  color: #454545;
  background-color: transparent;
  border-color: transparent;
}
.btn-check:focus + .btn-transparent, .btn-transparent:focus {
  color: #454545;
  background-color: transparent;
  border-color: transparent;
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}

.btn-check:checked + .btn-transparent, .btn-check:active + .btn-transparent, .btn-transparent:active, .btn-transparent.active, .show > .btn-transparent.dropdown-toggle {
  color: #454545;
  background-color: transparent;
  border-color: transparent;
}
.btn-check:checked + .btn-transparent:focus, .btn-check:active + .btn-transparent:focus, .btn-transparent:active:focus, .btn-transparent.active:focus, .show > .btn-transparent.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
.btn-transparent:disabled, .btn-transparent.disabled {
  color: #454545;
  background-color: transparent;
  border-color: transparent;
}

.btn-merken {
	fill: red;
	width: 2em;
	height: 2em;
	background-image: url("../images/heart.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

.btn-merken:hover {
  background-image: url("../images/heart-fill.svg");
}

.btn-gemerkt {
	fill: red;
	width: 2em;
	height: 2em;
	background-image: url("../images/heart-fill.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

.btn-gemerkt:hover {
  background-image: url("../images/heart.svg");
}
.btn-teilen {
	fill: red;
	width: 2em;
	height: 2em;
	background-image: url("../images/share.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

.btn-teilen:hover {
  background-image: url("../images/share-fill.svg");
}


.btn-maxrounded {
	border-radius: 40px;
}

a, .nav-link {
	color: #454545;
	text-decoration: none;
}

a:hover, .nav-link:hover {
	color: #000000;
	text-decoration: none;
}

.nav-tabs .nav-item.active{
	border: 1px solid #e9ecef;
	background: #f7f7f7;
}

.nav-tabs .nav-link.active {
	color:  #454545;
	text-decoration: none;
	background-color:  #dee2e6;
}

a svg {
	margin-bottom: 5px;
}

textarea {
 	resize: none; /* disables resizability */
}

.form-check-input {

  width: 1.2em;
  height: 1.2em;
}

.bg-grey { background-color: #f0f0f0; }
.bg-hinweis { background-color: #f9eef3; }

.fg-turquoise { color: #3db8b0; }
.fg-magenta { color: #dc357b; }

/*** Ergebnisliste ***/

div.ergebnisbox h3.title {
	/*min-height: 45px;*/
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

img.cover {

	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}

img.hover {

	transition: all 0.3s;
}

img.hover:hover {

	opacity: .7;
}

div.ergebnisbox img {

	padding: 5px;
	border: 1px solid #e8e8e8;
	margin-bottom: 10px;
	height: 200px;
	width: 100%;
}

/*** Modal (Overlay) ***/

#staticBackdrop_annehmen .modal-title,
#staticBackdrop_Favorit .modal-title {
	color: #3db8b0;
}

#staticBackdrop_ablehnen .modal-title {
	color: #dc357b;
}

#staticBackdrop_annehmen .modal-body img,
#staticBackdrop_ablehnen .modal-body img,
#staticBackdrop_Favorit .modal-body img {

	height: 100px;
	width: 100%;
	object-fit: cover;
}

/*** Detailansicht ***/

.button_expose {
	background-image: url(../images/icons/icon_expose.svg);
}

.button_grundriss {
	background-image: url(../images/icons/icon_grundriss.svg);
}

.button_energiepass {
	background-image: url(../images/icons/icon_energie.svg);
}

.button_objektdetails {
	width: 55px;
	height: 55px;
	display: inline-block;
	margin-bottom: 5px;
	background-color: #f9f9f9;
	border-radius: 4px;
	border: 1px solid #f0f0f0;
	background-size: 2.8em;
	background-position: center;
	background-repeat: no-repeat;
}

div.detailansicht .btn-merken {

	fill: red;
	width: 3em;
	height: 3em;
	background-image: url("../images/heart.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

div.detailansicht .btn-merken:hover {
  background-image: url("../images/heart-fill.svg");
}

div.detailansicht .btn-gemerkt {

	fill: red;
	width: 3em;
	height: 3em;
	background-image: url("../images/heart-fill.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

div.detailansicht .btn-gemerkt:hover {
  background-image: url("../images/heart.svg");
}

div.detailansicht .btn-teilen {
	fill: red;
	width: 3em;
	height: 3em;
	background-image: url("../images/share.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70%;
}

div.detailansicht .btn-teilen:hover {
  background-image: url("../images/share-fill.svg");
}

div.detailansicht img {
	padding: 5px;
	border: 1px solid #e8e8e8;
	margin-bottom: 15px;
	width: 100%;
}

div.detailansicht .galerie img {
	padding: 3px;
	border: 1px solid #e8e8e8;
	margin-bottom: 3px;
	width: 80px;
	/* height: 80px; */
}

div.detailansicht .objektmerkmal {

	padding-top: 5px;
	padding-bottom: 5px;
	border-bottom: 1px solid #e8e8e8;
}

div.detailansicht .objektmerkmal:first-child {
	padding-left: 3px;
}

div.detailansicht .objektmerkmal:last-child {
	padding-right: 3px;
}

.lb-nav a.lb-prev 	{ background-image: url(../images/prev.png); 	}
.lb-nav a.lb-next 	{ background-image: url(../images/next.png); 	}
.lb-data .lb-close 	{ background-image: url(../images/close.png); 	}
.lb-cancel 			{ background-image: url(../images/loading.gif); }

/*** Objektwunsch ***/

#objektwunsch-form h3 {
	font-size: 18px;
}

#districts_container .form-check-inline {
	min-width: 15em;
}

.errmsg_label {
  border: 0px solid red !important;
  color: red;
  /*background-color: #da521b;*/
}

#objektwunsch-form .form-control {
	font-size: .7rem;
}

div.object-box {

	position: relative;
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10+ */
    user-select: none;
}

div.object-box div.disabled-box {

	position: absolute;
	left: 0px;
	top: 0px;
	right: 0px;
	bottom: 0px;
	background-color: rgba(255,255,255,.6);
	pointer-events: none;
	z-index: 100;
}

div.object-box div.disabled-box > div {

  	position: absolute;
	font-size: 36px;
	font-weight: 900;
	color: #FFFFFF;
	background-color: #00000090;
	text-align: center;
	width: 100%;
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -moz-transform: translate(-50%, -50%) rotate(-45deg);
    -o-transform: translate(-50%, -50%) rotate(-45deg);
    border-radius: 40px / 50%;
    padding: 5px 0px 5px 0px;
}

div.object-box div.disabled-box > div > span {

	font-size: 10px;
	font-weight: normal;
	display: block;
	padding: 0px 0px 0px 5px;
}

div.modal-content div.object-box div.disabled-box > div {

	font-size: 14px;
	border-radius: 20px;
	font-weight: normal;
}

div.modal-content div.object-box div.disabled-box > div > span {

	font-size: 8px;
}

/*** abgelehnt ***/
div.object-box div.disabled-box.danger > div {

	color: #ffffff;
	background-color: #c42d6dba;
	border-color: #c42d6d;
}

/*** abgelaufen ***/
div.object-box div.disabled-box.secondary > div {

	color: #ffffff;
	background-color: #686868ba;
	border-color: #c42d6d;
}

/*** vermietet ***/
div.object-box div.disabled-box.warning > div {

	color: #ffffff;
	background-color: #cb3f3f;
	border-color: #2aa49c;
}

/*** angefragt ***/
div.object-box div.disabled-box.success > div {

	color: #ffffff;
	background-color: #3db8b0ba;
	border-color: #2aa49c;
}

.ellipsis{
	display: inline-block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}


.checkmark {
	border: none;
	padding-left: 5px;
	padding-right: 8px;
	color: #4f4f4f;
	user-select: none;
	/* white-space: nowrap; */
}

.checkmark.disabled {
	opacity: .5;
	text-decoration: line-through;
}


.w_85p{
	max-width: 85%;
}
.w_80p{
	max-width: 80%;
}

.valid-check.fa-xmark{
	color: red;
}
.valid-check.fa-check{
	color: green;
}

.login-label{
	min-width: 80px;
}

.forgotten-link{
	display: inline-block;
	padding-left: 40px;
	color: blue;
	cursor: pointer;
}

.data_label{
	display: inline-block;
	width: 150px;
	padding-left: 5px;
}

.data_label.ellipsis{

}

.data_text{
	display: inline-block;
	min-width: 100px;
}

#cPic{
	display: inline-block;
	min-width: 100px;
	min-height: 50px;
}

#share_link{
	display: inline-block;
	border: 1px solid black;
	padding: 5px;
	white-space: nowrap;
}

#copy_message{
 display: none;
}


/* Termine */
/*Spalten allgemeinen*/
.event_list .date{

}

.event_list .type{

}

.event_list .user{

}

.event_list .user{

}

/*Zeilen*/
.event_list .head{
	margin-bottom: 5px;
	font-weight: bold;
	background-color: #e8e8e8;
}

.event_list .event{
	margin-bottom: 5px;
	border-bottom: 1px solid #dee2e6 !important;
}

/*Felder*/
.event_list .head .date,
.event_list .head .type,
.event_list .head .user,
.event_list .head .object {
	text-transform: uppercase;
	/*text-align: center;*/
	margin: 5px 0;
}
.event_list .event .date,
.event_list .event .type,
.event_list .event .user{
	/*text-align: center;*/
	margin: calc(var(--bs-gutter-x) * .5) 0;
}

.event_list .event.running .type,
.event_list .event.active .type,
.event_list .event.running .user,
.event_list .event.active .user,
.event_list .event.running .object,
.event_list .event.active .object{
	font-weight: bold;
}

.event_list .event .date .datebox{
	max-width: 120px;
	text-align: center;
	border-radius: .25rem;
	padding: 5px 15px 5px 15px;
}

.event_list .event.running .datebox{
	background-color: #DCEE9C;
}

.event_list .event.active .datebox{
	background-color: #ffe8aa;
}

.event_list .event.expired .datebox{
	background-color: #ffd2d2;
}


.event_list .event .date .datebox .time{
	border-top: 1px solid #a8a8a8;
	padding-top: 5px;
	margin-top: 5px;
}

.event_list .event .keynumber{
 display: inline-block;
 vertical-align: middle;
 margin-right: 5px;
 margin-top: calc(var(--bs-gutter-x) * .5);
}

.event_list .event img{
	float: right;
	max-width: 80px;
	margin: calc(var(--bs-gutter-x) * .5) 0;
	border-radius: .25rem;
}

#chat_frame{
	width: 100%;
	height: 100%;
}

#menu-badge-documents{
	background-color: red!important;
}


#installAsApp {

	-webkit-user-select: none;
  	-ms-user-select: none;
  	user-select: none;
	display: none;
	position: fixed;
	bottom: 10px;
	left: 0px;
	right: 0px;
	margin: auto 0;
}

#installAsApp > div {

	width: 100%;
	max-width: 360px;
	margin: 0 auto;
	background-color: #e5e5e5;
	padding: 10px 10px 0px 10px;
	border-radius: 10px;
}

#installAsApp > div > small {

	font-size: 12px;
}

#installAsApp > div > span {

	color: #003788;
}

#installAsApp > div a.close {

	float: right;
	font-size: 20px;
	margin-top: -5px;
}

#installAsApp > div img {

	float: left;
	padding: 5px;
	margin: 0 10px 0 0;
	background-color: #BFBFBF;
	border: 1px solid #B0B0B0;
	border-radius: 10px;
	width: 48px;
	height: 48px;
}

.media-container-bordered {

    padding: .2rem;
    border: 7px solid #fff;
    box-shadow: 0 0 2px 1px #d3d3d3;
    border-radius: .25rem;
}

.media-container {
    position: relative;
    width: 100%;
}

.media-container .media-container-buttons {

    position: absolute;
    right: 10px;
    top: 10px;
    z-index: 10;
}

.media-container .media-container-label {

    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-align: center;
    font-size: 12px;
    line-height: 1;
    height: 25px;
    margin-top: 3px;
    word-break: break-all;
}

.media-container img.media {

    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: .25rem;
}

.media-container img.media.contain {
    background-size: contain;
    background-color: #e8e8e8;
}

.media-container.iframe {
    padding-bottom: 56.25%;
}

.media-container.iframe iframe.media {

    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    border: 0;
    border-radius: .25rem;
}

@media (max-width: 992px) {

/*
div.detailansicht .objektmerkmal {

	padding: 0;
	border-bottom: 0px solid #e8e8e8;
}
*/
	div.separator > div {
		font-size: 14px;
	}

	.nav-item{
		min-width: 115px;
	}
}
