/**
 * ODM Events Timeline Styles
 * Vertical timeline design for yearly events
 */

/* Import Roboto Font */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

/* Timeline Container */
.odm-timeline {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 20px;
	font-family: 'Roboto', sans-serif;
}

/* Left Vertical Line */
.odm-timeline__line {
	position: absolute;
	left: 59px;
	top: 0;
	bottom: 0;
	width: 2px;
	background: #E7EEF2;
	z-index: 0;
}

/* Month Section */
.odm-timeline__month {
	position: relative;
	margin-bottom: 60px;
}

.odm-timeline__month:last-child {
	margin-bottom: 0;
}

/* Month Title */
.odm-timeline__month-title {
	text-align: left;
	font-size: 32px;
	font-weight: 700;
	font-family: 'Roboto', sans-serif;
	color: #456882;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin: 0 0 20px 80px;
	padding: 0 0 12px 0;
	background: transparent;
	border-bottom: 2px solid #ddd;
	display: block;
	box-shadow: none;
}

/* Timeline Item */
.odm-timeline__item {
	position: relative;
	display: flex;
	align-items: flex-start;
	margin-bottom: 20px;
	opacity: 1;
	transition: all 0.3s ease;
	flex-direction: row;
}

.odm-timeline__item:last-child {
	margin-bottom: 0;
}

/* Past events styling */
.odm-timeline__item--past {
	opacity: 0.6;
}

.odm-timeline__item--past .odm-timeline__content {
	background: #f0f0f0;
}

.odm-timeline__item--past .odm-timeline__dot {
	background: #999;
	box-shadow: 0 0 0 4px rgba(153, 153, 153, 0.2);
}

/* Timeline Marker (Dot) */
.odm-timeline__marker {
	position: absolute;
	left: 32px;
	top: 20px;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
}

.odm-timeline__dot {
	width: 16px;
	height: 16px;
	background: #456882;
	border-radius: 50%;
	box-shadow: 0 0 0 4px rgba(69, 104, 130, 0.2);
	transition: all 0.3s ease;
}

.odm-timeline__item:hover .odm-timeline__dot {
	transform: scale(1.3);
	box-shadow: 0 0 0 6px rgba(69, 104, 130, 0.3);
}

/* Timeline Content */
.odm-timeline__content {
	flex: 1;
	max-width: 100%;
	background: #E7EEF2;
	border-radius: 12px;
	padding: 24px;
	transition: all 0.3s ease;
	position: relative;
	margin-left: 80px;
}

.odm-timeline__item:hover .odm-timeline__content {
	transform: translateY(-4px);
}

/* Arrow pointing to timeline */
.odm-timeline__content::before {
	content: '';
	position: absolute;
	top: 20px;
	left: -9px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 10px 0;
	border-color: transparent #E7EEF2 transparent transparent;
}

/* Date Section */
.odm-timeline__date {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	color: #456882;
	font-weight: 600;
	font-size: 14px;
}

.odm-timeline__date-text {
	text-transform: capitalize;
}

/* Title */
.odm-timeline__title {
	font-size: 20px;
	font-weight: 700;
	font-family: 'Roboto', sans-serif;
	color: #2c3e50;
	margin: 0 0 12px 0;
	line-height: 1.4;
}

/* Location */
.odm-timeline__location {
	display: flex;
	align-items: center;
	gap: 8px;
	color: #7f8c8d;
	font-size: 14px;
}

/* Icons */
.odm-timeline__icon {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
	.odm-timeline {
		padding: 0;
	}
	.odm-timeline__month {
		margin-bottom: 30px;
	}
	.odm-timeline__line {
		left: 19px;
	}

	.odm-timeline__marker {
		left: 2px;
	}

	.odm-timeline__content {
		max-width: calc(100% - 45px);
		margin-left: 45px;
	}

	.odm-timeline__month-title {
		font-size: 24px;
		padding: 0 0 10px 0;
		margin-bottom: 30px;
		margin-left: 45px;
		letter-spacing: 1.5px;
	}

	.odm-timeline__title {
		font-size: 18px;
	}

	.odm-timeline__item {
		margin-bottom: 10px;
	}
}

@media (max-width: 480px) {
	.odm-timeline {
		padding: 20px 10px;
	}

	.odm-timeline__content {
		padding: 16px;
	}

	.odm-timeline__month-title {
		font-size: 20px;
		padding: 0 0 8px 0;
		margin-bottom: 10px;
		letter-spacing: 1px;
	}

	.odm-timeline__title {
		font-size: 15px;
	}

	.odm-timeline__date,
	.odm-timeline__location {
		font-size: 13px;
	}
}

/* Animation for timeline items */
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.odm-timeline__item {
	animation: fadeInUp 0.6s ease-out backwards;
}

.odm-timeline__item:nth-child(1) { animation-delay: 0.1s; }
.odm-timeline__item:nth-child(2) { animation-delay: 0.2s; }
.odm-timeline__item:nth-child(3) { animation-delay: 0.3s; }
.odm-timeline__item:nth-child(4) { animation-delay: 0.4s; }
.odm-timeline__item:nth-child(5) { animation-delay: 0.5s; }
