@mixin header-style {
	font-family: Manrope;
	font-size: 24px;
	font-weight: 700;
	line-height: 32px;
	letter-spacing: 0px;
	text-align: left;
}

@mixin flex-end {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

@mixin flex-row {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
}

.cancel-appointment-form-layout {
	display: flex;
	flex-direction: column;
	row-gap: 16px;
	position: absolute;
	top: 120%;
	left: 180%;
	//transform: translate(71%, 100%);
	width: 620px;
	height: auto;
	padding: 0px 32px 32px 32px;
	border-radius: 12px;
	background-color: white;

	@media screen and (max-width: 1300px) {
		top: 100%;
		left: 140%;
	}
	@media screen and (max-width: 900px) {
		top: 128%;
		left: 41%;
	}

	.cancell-appointment-error-message {
		@include flex-row();
		width: 556px;
		padding: 0;
		text-align: center;
		color: red;
		padding-top: 20px;
	}

	.cancell-header {
		@include header-style();
		@include flex-end();
		width: 556px;
		height: 64px;
		padding: 0;
		text-align: center;
	}

	& > .cancell-body {
		@include flex-end();
		text-align: center;
	}

	& > .cancell-controls {
		display: flex;
		flex-direction: row;
		column-gap: 16px;
	}
}

@mixin flex-row {
	display: flex;
	flex-direction: row;
}

@mixin grey-header {
	width: 556px;
	height: 48px;
	padding: 16px 0px 8px 0px;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	letter-spacing: 0px;
	text-align: left;
	color: rgba(60, 60, 67, 0.6);
}

.consultation-form-layout {
	position: absolute;
	top: 0%;
	left: 0%;
	transform: translate(71%, 60%);
	width: 620px;
	height: auto;
	padding: 0px 32px 32px 32px;
	border-radius: 12px;
	background-color: white;

	.consultation-base-block {
		& > div:nth-child(1) {
			@include header-style();
			@include flex-end();
			width: 556px;
			height: 64px;
		}

		& > div:nth-child(2) {
			@include grey-header;
		}

		& > div:nth-child(3) {
			width: 556px;
			height: 64px;
			padding: 12px 16px 12px 16px;
			border-radius: 16px;           
		}

		& > div:nth-child(4) {
			@include grey-header;
		}

		& > div:nth-child(6) {
			width: 556px;
			height: 64px;
			padding: 0px 0px 12px 12px;
			display: flex;
			flex-direction: column;
			justify-content: flex-end;         
		}

		.save-changes-block {
			@include flex-row();
			column-gap: 16px;
		}

		.controls-block{
			@include flex-row();
			justify-content: space-around;
			width: 556px;
			height: 58px;
			padding: 12px 16px 12px 16px;
			border-radius: 16px;
			column-gap: 12px;
		}

	}

	.time-picker-block {
		@include flex-row();
		column-gap: 16px;
	}

	& > div:nth-child(2) {
		@include flex-row();
		
		column-gap: 16px;
	}
}

.schedule-form-layout {
	position: absolute;
	top: 5vw;
	left: 30vw;
	transform: translate(0%, 5%);
	width: 620px;
	height: auto;
	padding: 0px 32px 32px 32px;
	border-radius: 12px;
	background-color: white;
	
	&.response {
		top: 10vw;
	}

	.success-message {
		@include flex-row();
		padding-top: 28px;
		justify-content: space-around;
		column-gap: 16px;
	}

	& > div:nth-child(2) {
		@include flex-row();
		
		column-gap: 16px;
	}
}

.controls-button-label {
	@include flex-row();

	& > div:nth-child(1) {
		@include flex-row();
		align-items: center;
		margin-right: 8px;
	  }
}

.rc-calendar-cell{
	width: 74px;
	height: 34px;
	padding: 0px 2px 5px 2px;

	& > button {
		height: 32px;
	}
}

.calendar-common {
	width: auto;
	height: 300px;
	box-shadow: none;
	border: none;

	.rc-calendar-header {
		border: none;

		& > div {
			& > a {
				text-decoration: none;
			}

			& > span {
				& > a {
					font-family: Manrope;
					font-size: 24px;
					font-weight: 700;
					line-height: 32px;
					letter-spacing: 0em;
					text-align: left;
					text-decoration: none;
				}
			}
		}
	}

	.rc-calendar-body {
		& > .rc-calendar-table > tbody > tr > td > button {
			background-color: rgba(0, 0, 0, 0);
			&:hover{
				background-color: rgba(255, 255, 255, 1);
			}
		}
	}

	.rc-calendar-column-header {
		.rc-calendar-column-header-inner {
			text-align: left;
			padding: 8px;
			font-family: Manrope;
			font-size: 14px;
			font-weight: 500;
			line-height: 20px;
			letter-spacing: 0px;	
		}
	}

	.current-date {				
		width: auto;
		height: auto;
		top: 8px;
		left: 9px;
		padding: 5px 10px 5px 9px;
		border-radius: 8px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;

		@media screen and (max-width: 1466px) {
			width: auto;
			height: auto;
			transition: width 0.2s ease-in-out;
			transition: height 0.2s ease-in-out;
			}

		& > div:nth-child(1) {
			font-family: Manrope;
			font-size: 16px;
			font-weight: 500;
			line-height: 24px;
			letter-spacing: 0px;
			text-align: left;
		}

		&.other-month {
			color: rgba(60, 60, 67, 0.3);
		}

		&.selected-day {
			color: rgba(255, 255, 255, 1);
			background-color: rgba(44, 121, 206, 1);
		}

		&.current-day {
			top: 8px;
			left: 9px;
			padding: 8px;
			border-radius: 8px;
			border: 1px solid rgba(44, 121, 206, 1);
		}
	}
}
