/* Google Font Import - Noto Sans Hebrew */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Hebrew:wght@100..900&display=swap');
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "Noto Sans Hebrew", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-variation-settings:"wdth" 100;
}

pre {
	position: absolute;
	z-index: 1000;
	color: white;
	background: #000000aa;
	direction: ltr;
	left: 0;
	padding: 16px;
}

:root {
	/* ===== Colors ===== */
	/* --body-color: #E4E9F7; */
	--body-color: #fffefd;
	--sidebar-color: #fff6f2;
	/* --primary-color: #e7c977; */
	--primary-color: #f25160;
	--primary-color-light: #f9eae5;
	--red: #ff3e3e;
	--toggle-color: #181d4e;
	--text-color: #181d4e;

	/* ====== Transition ====== */
	--tran-03: all 0.2s ease;
	--tran-03: all 0.3s ease;
	--tran-04: all 0.3s ease;
	--tran-05: all 0.3s ease;
}

body {
	min-height: 100vh;
	background-color: var(--body-color);
	transition: var(--tran-05);
}

::selection {
	background-color: var(--primary-color);
	color: #fff;
}

.light{
	--body-color: #fffefd;
	--sidebar-color: #fff6f2;
	--primary-color: #f25160;
	--primary-color-light: #f9eae5;
	--red: #ff3e3e;
	--toggle-color: #181d4e;
	--text-color: #181d4e;

	--sidebar-bg:linear-gradient(90deg, #f9ede8 0, #fff6f3 10px);
	--mobile-shadow: rgb(229 209 202 / 45%) 0px -1px 0px 0px inset;
}

.dark {
	--body-color: #181d4e;
	--sidebar-color: #0e1232;
	--primary-color: #f25160;
	--primary-color-light: #00031b;
	--red: #ff3e3e;
	--toggle-color: #f7f7f7;
	--text-color: white;

	--sidebar-bg:linear-gradient(90deg, #0b0e25 0, #0e1231 10px);
	--mobile-shadow: #090c2b 0px -1px 0px 0px inset;

}

.light .dark{
	display:none;
}

/* .dark .light{
	display:none;
} */

.dark-input{
	color-scheme: dark;
}

a {
	font-weight: 700;
	color: var(--primary-color);
	text-decoration: none;
	padding: 0 2px;
	cursor: pointer;
}

.btn {
	height: 30px;
	border-radius: 6px;
	background-color: var(--primary-color);
	color: var(--sidebar-color);
	cursor: pointer;
	transition: var(--tran-05);
	font-size: 16px;
	font-weight: 700;
	outline: none;
	border: none;
	margin-top: 10px;
	padding: 0 20px;
	cursor: pointer;
}

.hidden {
	display: none !important;
}

.ta-c {
	text-align: center;
}

.mt-8 {
	margin-top: 10px;
}

.mt-16 {
	margin-top: 20px;
}

.mb-30{
	margin-bottom: 30px;
}


.dialog-overlay {
	width: 100vw;
	height: 100vh;
	background: #0c0d2d73;
	z-index: 10000;
	position: fixed;
	top:0;
	left:0;
	display: none;
}

.dialog-container {
	width: 80%;
	height: 90%;
	background: var(--body-color);
	color: var(--text-color);
	padding: 20px;
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	position: relative;
}

.dialog-header {
	display: flex;
	align-items: center;
	font-size: 24px;
	font-weight: 800;
}

.dialog-header .close-btn {
	padding: 8px 0 8px 8px;
	font-size: 28px;
}

.modal-container {
	display: none;
}

.dialog-header .text {
	width: 100%;
	margin-bottom: 6px;
}

.dialog-overlay.open {
	display: flex;
	justify-content: center;
	align-items: center;
}

.dialog-data {
	height: 100%;
	overflow: auto;
}

.dialog-btn {
	display: flex;
	justify-content: center;
	align-items: center;
}

.dialog-btn button {
	min-height: 36px;
	height: 100%;
	border-radius: 6px;
	background-color: var(--primary-color);
	color: var(--sidebar-color);
	cursor: pointer;
	transition: var(--tran-05);
	font-size: 16px;
	font-weight: 700;
	outline: none;
	border: none;
	margin-top: 10px;
	padding: 0px 30px;
}

.col {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.f-w {
	width: 100%;
}

.socials-editor input[type="text"] {
	border: none;
	outline: none;
	border-bottom: 1px solid var(--text-color);
	background: transparent;
	height: 30px;
	color: var(--text-color);
}

.socials-editor svg {
	width: 30px;
	height: 30px;
}

.socials-editor svg path {
	fill: var(--text-color);
}

.socials-editor,
.worktime-editor,
.services-editor,
.reviews-editor {
	display: flex;
	align-items: center;
	padding: 10px 20px;
	background: var(--body-color);
	margin: 8px;
	border-radius: 6px;
	gap: 32px;
}

.worktime-editor-container,
.services-editor-container,
.reviews-editor-container {
	display: flex;
	flex-direction: column;
}

.worktime-editor,
.services-editor,
.reviews-editor {
	justify-content: center;
}

.btn.add-worktime,
.btn.add-services,
.btn.add-reviews {
	margin: auto;
}

.worktime-editor {
	gap: 32px;
	justify-content: space-between;
}

.worktime-editor select,
.worktime-editor input[type="time"],
.services-editor input,
.reviews-editor input {
	border: none;
	padding: 4px 20px;
	border-radius: 6px;
	outline: none;
	color: var(--text-color);
	background: var(--sidebar-color);
	font-weight: 700;
	width: 120px;
	font-size: 14px;
}

.worktime-editor input[type="time"] {
	padding-left: 0px;
}

body.dark input[type="time"]::-webkit-calendar-picker-indicator {
	filter: invert(100%);
}

.input-group label:not(.regular) {
    position: absolute;
    right: 50px;
    top: 2px;
    font-size: 11px;
}

.input-group .preview-container {
	width: 60px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 5px;
}

.input-group .preview-container .preview-image {
	max-height: 100%;
	object-fit: contain;
	width: 60px;
}

.reviews-editor .review-image {
	width: 50px;
	height: 50px;
	object-fit: contain;
}

body.dark .review-image[src*="profile.png"] {
	filter: invert(1);
}

.services-editor input {
	width: auto;
	text-align: center;
}

.reviews-editor input {
	width: auto;
}

.form {
	margin: 0 20%;
	display: flex;
	flex-direction: column;
}

.row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	align-items: center;
}

.row .input-group {
	width: 100%;
}

.input-group {
	position: relative;
	border-radius: 6px;
	background-color: var(--sidebar-color);
	cursor: pointer;
	transition: var(--tran-05);

	min-height: 50px;
	list-style: none;
	display: flex;
	align-items: center;
	margin-top: 10px;
	padding-left: 16px;
}

.input-group .icon {
	min-width: 60px;
	border-radius: 6px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}

.input-group input {
	height: 100%;
	width: 100%;
	outline: none;
	border: none;
	background-color: var(--sidebar-color);
	color: var(--text-color);
	/* border-radius: 6px; */
	font-size: 17px;
	font-weight: 500;
	transition: var(--tran-05);
}

.input-group:has(input:required):before,
.input-group:has(select:required):before {
	content: "*";
    position: absolute;
    left: 4px;
    top: 4px;
    background: var(--primary-color);
    height: 10px;
    width: 10px;
    text-align: center;
    border-radius: 50%;
    padding: 1px;
    padding-right: 1px;
    font-family: sans-serif;
    color: white;
	line-height: 17px;
}

.input-group input::placeholder {
	color: gray;
}

.input-group input.ltr {
	direction: ltr;
	text-align: right;
}

.input-group.open-modal {
	cursor: pointer;
}

.input-group textarea,
.input-group span.textarea {
	margin: 15px 0;
	height: 100%;
	width: 100%;
	margin-left: 27px;
	outline: none;
	border: none;
	background-color: var(--sidebar-color);
	color: var(--text-color);
	/* border-radius: 6px; */
	font-size: 17px;
	font-weight: 500;
	transition: var(--tran-05);
}

.input-group .select {
	border: none;
	border-radius: 6px;
	outline: none;
	color: var(--text-color);
	background: var(--sidebar-color);
	font-weight: 500;
	font-size: 17px;
	width: 100%;
}

span.textarea.review-text {
	width: auto;
	display: block;
	border-radius: 6px;
	max-width: 100%;
	margin: 10px 0;
	outline: none;
	border: none;
	background-color: var(--sidebar-color);
	color: var(--text-color);
	transition: var(--tran-05);
	padding: 4px 20px;
	font-size: 14px;
}

.input-group span.textarea {
	width: calc(100% - 85px);
	margin-left: 0;
}

.input-group span.textarea.about[contenteditable]:empty::before {
	content: "אודות";
	color: gray;
}

span.textarea.review-text[contenteditable]:empty::before {
	content: "המלצה";
	color: gray;
}

.input-group span.textarea.addons[contenteditable]:empty::before {
	content: "תוספות מנהל";
	color: gray;
}

.form .btn {
	height: 50px;
	border-radius: 6px;
	background-color: var(--primary-color);
	color: var(--sidebar-color);
	cursor: pointer;
	transition: var(--tran-05);
	font-size: 16px;
    font-weight: 700;
	outline: none;
	border: none;
	margin-top: 10px;
}

input.apple-switch {
	position: relative;
	appearance: none;
	outline: none;
	width: 50px;
	height: 30px;
	background-color: #ffffff;
	border: 1px solid #d9dadc;
	border-radius: 50px;
	box-shadow: inset -20px 0 0 0 #ffffff;
	transition-duration: 200ms;
}

input.apple-switch:after {
	content: "";
	position: absolute;
	top: 1px;
	left: 1px;
	width: 26px;
	height: 26px;
	background-color: transparent;
	border-radius: 50%;
	box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.2);
}

input.apple-switch:checked {
	border-color: var(--primary-color);
	box-shadow: inset 20px 0 0 0 var(--primary-color);
}

input.apple-switch:checked:after {
	left: 20px;
	box-shadow: -2px 4px 3px rgba(0, 0, 0, 0.05);
}


.loader {
	border: 5px solid #f3f3f3;
	border-radius: 50%;
	border-top: 5px solid var(--primary-color);
	width: 50px;
	height: 50px;
	-webkit-animation: spin 2s linear infinite; /* Safari */
	animation: spin 2s linear infinite;
	top: calc(50vh - 25px);
	left: calc(50vw - 25px);
}


/* PANELS */

.panels{
	display:flex;
	flex-wrap:wrap;
	gap:18px;

}

.w-1\/3{
	width: 30%;
}

.w-1\/2{
	width: 48%;
}

.w-1{
	width: 100%;
}

@media (max-width: 500px) {
	.w-1\/3, .w-1\/2{
		width: 100%;
	}
	
}


.panel-container {
    border: 3px solid var(--sidebar-color);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    justify-content: center;
}

.panel-header {
    height: 50px;
    padding: 10px;
    position: initial;
    font-size: 22px;
    background: var(--sidebar-color);
    max-height: 50px;
    border-bottom: none !important;
    margin-bottom: 0px;
    display: flex;
    justify-content: space-between;
    flex-grow: 0;
    max-width: 100%;
    flex-basis: 100%;
	align-items:center;
}

.panel-header-title{
	display: flex;
    align-items: center;
    gap: 15px;
}

.panel-header-badge {
    font-size: 14px;
    padding: 0 8px;
    background: var(--primary-color);
    color: white;
    height: fit-content;
    border-radius: 8px;
}

.panel-body {
    padding: 10px;
    flex-basis: 100%;
}



/* Safari */
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(0deg); }
	100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* Hidden by default */
.loading-overlay {
	display: none;
	position: fixed;
	z-index: 99999;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.5);
	justify-content: center;
	align-items: center;
}

@media (max-width: 500px) {
	.form {
		margin: 0;
	}

	.dialog-container {
		width: 96%;
		height: 90%;
	}

	.worktime-editor {
		gap: 16px;
		flex-direction: column;
		justify-content: center;
	}
}
