/* Основной шрифт */
body {
	font-family: 'Inter', sans-serif;
	background-color: #F3F4F6;
}

/* Анимации */
.step-enter {
	animation: slideFadeUp 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.step-exit {
	display: none;
}

@keyframes slideFadeUp {
	from { opacity: 0; transform: translateY(10px) scale(0.98); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

/* Скроллбар */
.custom-scrollbar::-webkit-scrollbar { width: 5px; }
.custom-scrollbar::-webkit-scrollbar-track { background: transparent; }
.custom-scrollbar::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; }
.custom-scrollbar::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Карточки */
.option-card {
	transition: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1);
	border: 2px solid transparent;
	height: 100%;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	position: relative;

}

.option-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 20px -5px rgba(0, 0, 0, 0.08);
	border-color: #e2e8f0;
	z-index: 10;
}

.option-card:active {
	transform: scale(0.99);
}

/* Активное состояние */
.option-card.selected {
	border-color: #3B82F6;
	background-color: #EFF6FF;
	box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
	z-index: 5;
}

.option-card.selected::after {
	content: '✓';
	position: absolute;
	top: 8px;
	right: 8px;
	width: 18px;
	height: 18px;
	background: #3B82F6;
	color: white;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	font-weight: bold;
	box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3);
}

/* Кнопки дней */
.day-btn {
	transition: all 0.2s ease;
	border: 1px solid #e2e8f0;
	background-color: white;
}
.day-btn:hover {
	border-color: #3B82F6;
	background-color: #f8fafc;
}
.day-btn.selected {
	background-color: #3B82F6;
	color: white;
	border-color: #3B82F6;
	box-shadow: 0 4px 10px rgba(59, 130, 246, 0.3);
}

/* Степпер */
.stepper-item {
	position: relative;
	cursor: pointer;
	z-index: 20;
}
.stepper-circle {
	transition: all 0.3s ease;
	background-color: white;
	z-index: 20;
}
.stepper-text {
	transition: color 0.3s ease;
	z-index: 20;
	position: relative;
	background-color: white;
	padding: 0 4px;
	border-radius: 4px;
}

.stepper-item.active .stepper-circle {
	background-color: #3B82F6;
	color: white;
	border-color: #3B82F6;
	transform: scale(1.1);
}
.stepper-item.active .stepper-text {
	color: #2563EB;
	font-weight: 700;
}

.stepper-item.completed .stepper-circle {
	background-color: #10B981;
	color: white;
	border-color: #10B981;
}
.stepper-item.completed .stepper-text {
	color: #059669;
	font-weight: 600;
}

/* Фон линии степпера */
.stepper-line-bg {
	position: absolute;
	top: 18px; /* Центрирование по вертикали кружков */
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #E5E7EB;
	z-index: 0;
}
.stepper-line-fill {
	height: 100%;
	background-color: #10B981;
	transition: width 0.5s ease;
}

/* Уведомления */
@keyframes bounceIn {
	0% { opacity: 0; transform: scale(0.95) translateY(-5px); }
	100% { opacity: 1; transform: scale(1) translateY(0); }
}
.animate-bounce-in { animation: bounceIn 0.3s forwards; }