@charset "UTF-8";

:root {
	--blue: 				#2347fb;
	--text-color:			#334155;
	--placeholder-color:	#64748b;
	--bg-color:				#f4f5f7;
	--border-color:			#d8dce2;
	--warning:				#ffcd02;
	--warning-text:			#dbc535;
	--warning-bg:			#fffcda;
	--danger:				#ff5728;
	--danger-text:			#db381d;
	--danger-bg:			#ffe9d3;
	--success:				#44c12e;
	--success-text:			#2ba521;
	--success-bg:			#e7fbd5;
	--info:					#2347fb;
	--info-text:			#2c76ff;
	--info-bg:				#dde7ff;
	--info-pink:			#ff69b4;
	--info-pink-light:      pink;
}

@font-face {
	font-family: "Ravi";
	src: url("../fonts/woff/RaviFaNum-VF.woff") format('woff'),
	url("../fonts/woff2/RaviFaNum-VF.woff2") format('woff2');
	font-display: swap;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}
@media (prefers-reduced-motion: no-preference) {
	:root {
		scroll-behavior: smooth;
	}
}

html, body {
	margin: 0;
	font-family: Ravi;
	font-size: 14px;
	font-weight: 350;
	line-height: 30px;
	direction: rtl;
	text-align: right;
	background-color: var(--bg-color);
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	color: var(--text-color);
}

hr {
	margin: 1rem 0;
	color: inherit;
	border: 0;
	border-top: 1px solid;
	opacity: 0.25;
}

h6, h5, h4, h3, h2, h1 {
	margin-top: 2rem;
	margin-bottom: 0.5rem;
	font-weight: 700;
	line-height: 1.5;
}
h1 {
	font-size: 32px;
	line-height: 50px;
}
h2 {
	font-size: 28px;
	line-height: 40px;
}
h3 {
	font-size: 22px;
	line-height: 34px;
}
h4 {
	font-size: 20px;
	line-height: 32px;
}
h5 {
	font-size: 18px;
	line-height: 30px;
}
h6 {
	font-size: 16px;
	line-height: 28px;
}

p {
	text-align: justify;
}

ol, ul {
	margin: 20px 0;
	padding: 0 20px 0 0;
}

b, strong {
	font-weight: 700;
}

a {
	text-decoration: none;
	transition: all .3s;
	color: var(--blue);
}
a:hover {
	color: var(--text-color);
}

img, svg {
	vertical-align: middle;
	max-width: 100%;
	height: inherit !important;
}
table {
	border-collapse: collapse;
}
th {
	text-align: inherit;
	text-align: -webkit-match-parent;
}
thead, tbody, tfoot, tr, td, th {
	border-color: inherit;
	border-style: solid;
	border-width: 0;
}

label {
	display: block;
	font-weight: 600;
	line-height: 40px;
}
label i {
	float: right;
	display: inline-block;
	line-height: 34px !important;
	margin-left: 7px;
	font-size: 20px;
}

button {
	border-radius: 0;
	cursor: pointer;
	border: 0;
	outline: 0;
}

button:focus:not(:focus-visible) {
	outline: 0;
}

input, button, select, textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	text-align: inherit;
}

button, select {
	text-transform: none;
}

select {
	word-wrap: normal;
}
select:disabled {
	opacity: 1;
}

button, [type=button], [type=reset], [type=submit] {
	-webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
	cursor: pointer;
}

::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

textarea {
	resize: vertical;
}
input, textarea {
	outline: 0;
	border: 1px solid var(--border-color);
	padding: 9px 25px;
	border-radius: 25px;
	color: var(--text-color);
}
input::placeholder, textarea::placeholder {
	color: var(--placeholder-color);
	font-weight: 300;
}

.ltr {
	direction: ltr;
	text-align: left;
}
.relative {
	position: relative;
}
.clear {
	clear: both;
}

.container {
	width: 1350px;
	margin: 0 auto;
}

.no-list-style {
	padding: 0;
	margin: 0;
	list-style: none;
}

.btn {
	position: relative;
	display: inline-block;
	padding: 4px 30px;
	border: 1px solid var(--placeholder-color);
	color: #fff;
	background-color: var(--placeholder-color);
	border-radius: 25px;
	cursor: pointer;
	transition: all .3s;
	height: 40px;
	box-shadow: 0 25px 30px -10px rgba(0, 0, 0, 0.1);
	font-weight: 350 !important;
	font-size: 14px;
}
.btn:hover {
	box-shadow: none;
}
.btn i {
	font-size: 18px;
}
.btn .icon-float-right {
	float: right;
	line-height: 30px;
	margin-left: 8px;
	margin-right: -8px;
}
.btn .icon-float-left {
	float: left;
	line-height: 30px;
	margin-right: 8px;
	margin-left: -8px;
}
.btn-o {
	border: 1px solid var(--placeholder-color);
	background-color: transparent;
	color: var(--placeholder-color);
	box-shadow: none;
}
.btn-o:hover {
	background-color: var(--placeholder-color);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(0, 0, 0, 0.1);
}
.btn-lg {
	padding: 9px 30px;
	height: 50px;
}
.btn-block {
	display: block !important;
	text-align: center;
	width: 100%;
}
.btn .badge {
	position: absolute;
	top: -5px;
	left: 5px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background-color: var(--warning);
	color: var(--text-color);
	line-height: 22px;
	text-align: center;
}
.btn .loader {
	float: left;
	margin: 5px 8px 0 -15px;
	border-color: var(--blue);
	display: none;
}

.btn-info {
	background-color: var(--info);
	border-color: var(--info);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(35, 71, 251, 0.25);
}
.btn-info:hover {
	box-shadow: none;
	color: #fff;
}
.btn-info:disabled, .btn-info[disabled] {
	opacity: .5;
	cursor: default;
}
.btn-info .loader {
	border-color: #fff;
}

.btn-info-o {
	background: transparent;
	border-color: #ff69b4;
	color: #ff69b4;
	box-shadow: none;
}
.btn-info-o:hover {
	background: pink;
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(35, 71, 251, 0.25);
}
.btn-info-o:hover .loader {
	border-color: #fff;
}
.btn-info-o:disabled, .btn-info-o[disabled] {
	opacity: .5;
}


.btn-warning {
	background-color: var(--warning);
	border-color: var(--warning);
	color: var(--text-color);
	box-shadow: 0 25px 30px -10px rgba(255, 205, 2, 0.25);
}
.btn-warning:hover {
	box-shadow: none;
}
.btn-warning:disabled, .btn-warning[disabled] {
	opacity: .5;
	cursor: default;
}
.btn-warning .loader {
	border-color: #fff;
}
.btn-warnint-o:hover .loader {
	border-color: #fff;
}

.btn-warning-o {
	background: transparent;
	border-color: var(--warning);
	color: var(--warning);
	box-shadow: none;
}
.btn-warning-o:hover {
	background: var(--warning);
	color: var(--text-color);
	box-shadow: 0 25px 30px -10px rgba(255, 205, 2, 0.25);
}
.btn-warning-o:disabled, .btn-warning-o[disabled] {
	opacity: .5;
}


.btn-success {
	background-color: var(--success);
	border-color: var(--success);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(68, 193, 46, 0.25);
}
.btn-success:hover {
	box-shadow: none;
}
.btn-success:disabled, .btn-success[disabled] {
	opacity: .5;
	cursor: default;
}
.btn-success .loader {
	border-color: #fff;
}
.btn-success-o:hover .loader {
	border-color: #fff;
}

.btn-success-o {
	background: transparent;
	border-color: var(--success);
	color: var(--success);
	box-shadow: none;
}
.btn-success-o:hover {
	background: var(--success);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(68, 193, 46, 0.25);
}
.btn-success-o:disabled, .btn-success-o[disabled] {
	opacity: .5;
}


.btn-danger {
	background-color: var(--danger);
	border-color: var(--danger);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(255, 87, 40, 0.25);
}
.btn-danger:hover {
	box-shadow: none;
	color: #fff;
}
.btn-danger:disabled, .btn-danger[disabled] {
	opacity: .5;
	cursor: default;
}
.btn-danger .loader {
	border-color: #fff;
}
.btn-danger-o:hover .loader {
	border-color: #fff;
}

.btn-danger-o {
	background: transparent;
	border-color: var(--danger);
	color: var(--danger);
	box-shadow: none;
}
.btn-danger-o:hover {
	background: var(--danger);
	color: #fff;
	box-shadow: 0 25px 30px -10px rgba(255, 87, 40, 0.25);
}
.btn-danger-o:disabled, .btn-danger-o[disabled] {
	opacity: .5;
}

.text-center {
	text-align: center;
}
.border-color {
	border-color: var(--border-color);
}

.text-info {
	color: var(--info);
}
.text-warning {
	color: var(--warning);
}
.text-danger {
	color: var(--danger);
}
.text-success {
	color: var(--success);
}

.text-center {
	text-align: center !important;
}
.text-right {
	text-align: right !important;
}
.text-left {
	text-align: left !important;
}

.card {
	position: relative;
	padding: 15px 15px 25px;
	background-color: #fff;
	border: 1px solid #fff;
	transition: all .3s !important;
}
.card .img img {
	width: 100%;
	height: inherit !important;
}
.card .percent {
	position: absolute;
	top: 15px;
	left: 0;
}
.card .percent::before {
	font-family: 'icomoon' !important;
	content: "\e92f";
	color: var(--danger);
	font-size: 56px;
}
.card .title {
	text-align: center;
	padding: 15px 0;
}
.card .title a {
	color: var(--text-color);
}
.card .title h2, .card .title h3 {
	font-size: 15px;
	margin: 10px 0;
	font-weight: 400;
	line-height: 26px;
	height: 52px;
	overflow: hidden;
}
.card .scale {
	display: flex;
	height: 34px;
	color: var(--placeholder-color);
	font-size: 12px;
}
.card .scale > span:first-child::before {
	font-family: 'icomoon' !important;
	content: "\e944";
	color: var(--blue);
	float: right;
	font-size: 14px;
	margin-left: 7px;
	line-height: 26px;
}
.card .scale > span:last-child {
	margin-right: auto;
}
.card .options {
	height: 34px;
	text-align: center;
	padding: 0 30px;
	overflow: hidden;
}
.card .name {
	font-weight: 700;
	line-height: 34px;
	color: var(--blue);
}
.card .name > span {
	display: none;
}
.card .name > .active {
	display: inherit;
}
.card .name small {
	font-size: 12px;
	font-weight: 400;
}
.card .increase, .card .decrease {
	display: inline-block;
	width: 28px;
	height: 28px;
	margin-top: 1px;
	border: 1px solid var(--blue);
	border-radius: 50%;
	line-height: 26px;
	font-size: 16px;
	padding-left: 1px;
	cursor: pointer;
	color: var(--blue);
}
.card .increase {
	float: left;
}
.card .increase::before {
	font-family: 'icomoon' !important;
	content: "\e92c";
}
.card .decrease {
	float: right;
}
.card .decrease::before {
	font-family: 'icomoon' !important;
	content: "\e940";
}
.card .disabled {
	opacity: .4;
	cursor: default;
}
.card .remove {
	float: right;
	color: var(--danger);
	cursor: pointer;
	font-size: 18px;
	line-height: 30px;
	width: 30px;
	text-align: center;
}
.card .remove::before {
	font-family: 'icomoon' !important;
	content: "\e94c";
}
.card .price {
	display: flex;
	flex-wrap: nowrap;
	padding-top: 20px;
	height: 60px;
}
.card .price .amount {
	width: 45%;
	height: 40px;
	position: relative;
}
.card .price .amount > div {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	transform: translate(0, -50%);
}
.card .price .amount .discount {
	line-height: 20px;
	font-size: 12px;
	display: block;
	margin: 0;
}
.card .price .amount .discount > span:first-child {
	text-decoration: line-through;
}
.card .price .amount .discount > span:last-child {
	display: inline-block;
	background-color: var(--warning);
	padding: 0 7px;
	border-radius: 10px;
	margin-right: 5px;
}
.card .price .amount .final span {
	font-weight: 600;
}
.card .price .amount .final small {
	font-weight: 300;
	font-size: 12px;
}
.card .price .atc {
	width: 55%;
	text-align: center;
}
.card .price .atc .btn {
	font-size: 12px;
	padding: 4px 0;
	text-align: center;
	display: block;
}

.input {
	padding: 10px 25px 10px 40px;
	background-color: #fff;
	border: 1px solid var(--border-color);
	border-radius: 25px;
	width: 100%;
	margin-bottom: 25px;
}
.input:disabled {
	background-color: var(--bg-color);
	color: #aaa;
	cursor: not-allowed;
}
.input-box {
	position: relative;
}
.input-error .input {
	border-color: var(--danger);
}
.input-error .error-message {
	position: absolute;
	left: 0;
	bottom: 0;
	color: var(--danger);
	font-size: 12px;
}
.input-success::before {
	font-family: 'icomoon' !important;
	content: "\e94f";
	position: absolute;
	left: 15px;
	top: 52px;
	font-size: 24px;
	line-height: 30px;
	color: var(--success);
}
.input-success .input {
	border-color: var(--success);
}
.input:focus {
	border-color: var(--blue);
}

.loader {
    width: 20px;
    height: 20px;
    border: 2px solid var(--blue);
    border-bottom-color: transparent !important;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: rotation .7s linear infinite;
}

@keyframes rotation {
	0% {
	    transform: rotate(0deg);
	}
	100% {
	    transform: rotate(360deg);
	}
}

.checkbox {
	position: relative;
	display: inline-block !important;
	width: inherit;
	width: 16px;
	height: 16px;
	margin-left: 10px;
	float: right;
	margin-top: 10px;
	visibility: hidden;
}
.checkbox::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	visibility: visible;
	border: 1px solid var(--border-color);
	border-radius: 3px;
}
.checkbox:checked::before {
	font-family: 'icomoon' !important;
	content: "\e951";
	border-color: var(--blue);
	background-color: var(--blue);
	line-height: 16px;
	color: #fff;
	font-size: 10px;
	text-align: center;
	padding-left: 1px;
}

.radio {
	position: relative;
	display: inline-block !important;
	width: inherit;
	width: 20px;
	height: 20px;
	margin-left: 10px;
	margin-top: 5px;
	float: right;
	visibility: hidden;
}
.radio::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	visibility: visible;
	border: 1px solid var(--border-color);
	border-radius: 50%;
	z-index: 1;
	cursor: pointer;
}
.radio:checked::before {
	content: '';
	border-color: var(--info);
	background-color: var(--info);
}
.radio:checked::after {
	content: '';
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	border-radius: 50%;
	background-color: var(--warning);
	z-index: 2;
	visibility: visible;
}

.on-off {
	position: relative;
	display: inline-block !important;
	width: inherit;
	width: 40px;
	height: 16px;
	margin-left: 10px;
	margin-right: 10px;
	margin-top: 8px;
	visibility: hidden;
	cursor: pointer;
}
.on-off::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	visibility: visible;
	background-color: var(--border-color);
	border-radius: 8px;
	transition: all .3s;
}
.on-off:checked::before {
	background-color: #c3f387;
}
.on-off::after {
	content: '';
	position: absolute;
	top: -2px;
	left: -10%;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #fff;
	border: 1px solid var(--blue);
	visibility: visible;
	transition: all .3s;
	box-shadow: 0 5px 15px 0 rgba(51, 65, 85, 0.2)
}
.on-off:checked::after {
	left: inherit;
	left: 65%;
	background-color: #7bc91c;
	border-color: #7bc91c;
}

.label {
	display: inline-block;
	padding: 0 10px;
	margin: 0 5px;
	background-color: var(--placeholder-color);
	color: #fff;
	border-radius: 15px;
	font-size: 12px;
	text-align: center;
}
.label-block {
	display: block;
}
.label-info {
	background-color: var(--info);
}
.label-warning {
	background-color: var(--warning);
	color: var(--text-color);
}
.label-danger {
	background-color: var(--danger);
}
.label-success {
	background-color: var(--success);
}

.form {
	display: flex;
	flex-wrap: wrap;
}
.form .half {
	width: 50%;
	padding: 0 25px;
}
.form .full {
	width: 100%;
}

.alert {
	padding: 15px 25px;
	border-radius: 10px;
	color: #fff;
	margin-bottom: 20px;
}
.alert-success {
	background-color: var(--success);
}
.alert-info {
	background-color: var(--info);
}
.alert-warning {
	background-color: var(--warning);
	color: var(--text-color);
}
.alert-danger {
	background-color: var(--danger);
}

.sans-serif {
	font-family: sans-serif;
}

/* کلاس دکمه سفارشی با رنگ صورتی */
.btn-pink {
	background-color: #d63384;
	border-color: #d63384;
	color: #fff;
	transition: all 0.3s ease;
}

.btn-pink:hover {
	background-color: #b82b6e;
	border-color: #b82b6e;
}

.btn-pink:focus {
	box-shadow: 0 0 0 0.2rem rgba(214, 51, 132, 0.5);
}

/* کلاس دکمه سفارشی با رنگ بنفش */
.btn-purple {
	background-color: #6f42c1;
	border-color: #6f42c1;
	color: #fff;
}

.btn-purple:hover {
	background-color: #5a32a3;
	border-color: #5a32a3;
}