.justcrm-optionstable {
	padding-top:10px;
}
.justcrm-total-price{
	padding-top:10px;
}
.justcrm-price_notice p {
	display:inline-block;
}
.justcrm-select2 {
	display:none!Important;
}		
.select2-search__field:placeholder-shown {
	width: 100% !important;
}				
.justcrm-image-selector {
  display: flex!Important;
  flex-wrap: wrap!Important; 
  gap: 10px;
  text-align: center;
  max-height:500px;
  overflow-y: auto;
  padding: 10px;
}			
.justcrm-image-selector label {
  display: grid!Important;
  align-items: flex-end!Important;
  justify-content: center;
  position: relative;
  cursor: pointer;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  width: 165px;
  height: auto;
  border: 4px solid transparent;
  border-radius: 4px;
  transition: border 0.3s ease; 
}
.justcrm-image-selector input[type="checkbox"] {
  display: none;
}
.justcrm-image-selector label:hover {
  border: 4px dashed #666;
}	
.justcrm-image-selector input[type="checkbox"]:checked + label {
  border: 4px solid #666;
}

.justcrm-accordion-button {
	margin-top:15px;
}

.justcrm-accordion-header {
  width: 100%;
  padding: 10px;
  text-align: left;
  border: 2px solid transparent;
  outline: none;
  cursor: pointer;
  font-size: 16px;
  margin: 1px;
}	
.justcrm-accordion-container {
  width: 100%;
  margin: auto;
  border: 1px solid #ddd;
  border-radius: 5px;
}
.justcrm-accordion-item {
  border-bottom: 1px solid #ddd;
}
.justcrm-accordion-item:last-child {
  border-bottom: none;
}
.justcrm-accordion-content {
  max-height: 0;
  overflow: hidden;
  background: #ffffff;
}
.justcrm-accordion-item.active .justcrm-accordion-content {
  max-height: 100%;
  padding: 10px;
}
			
.justcrm-3d-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    width: 350px;
    height: 200px;
}
.justcrm-3d-modal-content {
    background-color: #DFDFDF;
    margin: auto;
    padding: 5px;
    border-radius: 10px;
}
.justcrm-3d-modal-close {
    position:absolute!important;
	top: 0px;
	left: 0px;
	z-index:9998;
	padding:0!important;
	margin:0!important;
	font-size:35px!important;
	width:25px;
	height:100%;
	border-top-left-radius: 10px!important;
	border-bottom-left-radius: 10px!important;
}	
.justcrm-3d-modal-show {
    position:absolute!important;
	top: 0px;
	right: 0px;
	z-index:9998;
	padding:0!important;
	margin:0!important;
	font-size:35px!important;
	width:25px;
	height:100%;
	border-top-right-radius: 10px!important;
	border-bottom-right-radius: 10px!important;
}	
.justcrm-3d-button {
	z-index:9998;
	padding:0!important;
	font-size:18px!important;
	width:46px;
	height:46px;
	position:fixed!important;
	margin-top:-150px!important;
	right:5px;
	border-radius:99px!important;
}	



.justcrm-calendar {
  width: 100%;
  max-width: 350px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  padding: 15px;
}
.justcrm-calendar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.justcrm-non-seletable {	
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.justcrm-calendar-header button {
  border: none;
  padding: 1px;
  margin: 0;
  margin-bottom: 4px;
  border-radius: 4px;
  cursor: pointer;
  width: 42px;
  height: 42px;
  aspect-ratio: 1;
}
.justcrm-calendar-header button:hover {
  background: #000000;
}
.justcrm-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 4px;
}

.justcrm-monthYear {
	text-align: center;					
}

/* Basis fuer alle Zellen */
.justcrm-day,
.justcrm-weekday {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 1;
  text-align: center;
  border-radius: 6px;
  position: relative;
  font-size: 12px;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.justcrm-weekday {
  font-weight: bold;
  background: #d6d8db;
  cursor: default;
}

/* Standard-Hover nur, wenn Tag anklickbar */
.justcrm-day:not(.justcrm-disabled):not(.justcrm-outside):hover {
  background: #d6d8db!important;
  cursor: pointer!important;
} 

.justcrm-day span {
  font-size: 12px;
  display: block;
}

/* Legenden-Stile */
.justcrm-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  max-width: 350px;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.justcrm-legend-item {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid #dee2e6;
  padding: 3px 6px;
  border-radius: 4px;
  font-size: 12px;
}
.justcrm-legend-color {
  width: 14px;
  height: 14px;
  display: inline-block;
  border-radius: 2px;
}

.justcrm-timeslot-container {
  width: 100%;
  min-height: 80px;
  display: block;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.justcrm-timeslot-container h4 {
  margin: 0 0 8px 0;
  font-size: 14px;
}
.justcrm-timeslot-item {
  display: inline-block;
  padding: 3px 6px;
  margin: 2px;
  font-size: 12px;
  border-radius: 4px;
  cursor: pointer;
}
.justcrm-timeslot-item:hover {
  background: #d6d8db;
}
.justcrm-full-day-msg {
  font-size: 14px;
  color: #dc3545;
  margin: 0;
}
.justcrm-full-day-available {
  font-size: 14px;
  color: #28a745;
  margin: 0;
}	
.justcrm-timeslot-item.justcrm-booked {
  background: #dc3545;
  color: #fff;
  cursor: not-allowed;
}

.container-justcrm-kalender {
	display: flex;
	flex-wrap: wrap; 
	gap: 10px;
}

.column-justcrm-kalender {
	flex: 1;
	width: 350px;
}
.column-justcrm-options {
	flex: 2;
	min-width: 350px;
}

@media (max-width: 700px) {
	.container-justcrm-kalender {
		flex-direction: column;
	}
}		

.justcrm-btn-terminanfrage {
	margin-top:10px;
}

.justcrm-container {
  position: relative;
  width: 300px;
  height: 200px;
  border: 1px solid #ddd;
  background: #fff;
  padding: 10px;
}

.justcrm_container_half {
	display:inline-block;
	width: 100%;
	max-width:45%;
	min-width:100px!important;
	margin: 5px;
	margin-top:10px;
}