/**
 * -----------------------------------------------------------------------------
 * WA Timetable Styles
 * -----------------------------------------------------------------------------
 *
 * @format
 */
/* Global and Navigation */
.wa-timetable-container ul.nav-tabs,
.wa-timetable-container ul.nav-pills,
.nav-pills {
	padding-left: 0 !important;
	padding-bottom: 0 !important;
	list-style-type: none !important;
}
.nav-link {
	display: flex;
	align-items: center;
	justify-content: center;
}
.today-text {
	color: black !important;
}
/* Accordion and Session Headers */
.accordion-button {
	padding: 8px;
	background-color: #fff;
}
.accordion-button.collapsed {
	background-color: #f9f9f9;
}
.session-name {
	font-size: 20px;
	font-weight: 600;
}
.event-count {
	font-size: 14px;
}
/* Events List and Items */
.events-list {
	background-color: #f5f6f7;
	padding: 8px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.event-item {
	padding: 8px;
	border-radius: 6px;
	border: 2px solid #cfd0ff;
	transition: background-color 0.2s ease-in-out;
	background-color: #fff;
}
.event-item:hover,
.event-item:focus,
.event-item:active {
	border: 2px solid lightgreen;
	background-color: #f5f6f7;
}
/* Event Details and Links */
.event-item-content {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 70% 30%;
}
.event-details-left {
	display: flex;
	flex-direction: column;
	gap: 5px;
	width: 100%;
	justify-content: space-between;
}
/* Live Badge Styles */
.live-badge {
	background-color: #dc3545;
	color: white;
	padding: 4px 8px;
	font-size: 10px;
	border-radius: 9999px;
	font-weight: bold;
	display: flex;
	align-items: center;
	gap: 8px;
	max-height: 20px;
}
.pulse-circle {
	width: 8px;
	height: 8px;
	background-color: #fff;
	border-radius: 50%;
	animation: pulse-animation 1.5s infinite;
}
@keyframes pulse-animation {
	0% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
	}
	70% {
		box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
	}
}
.event-name,
.event-time {
	color: rgba(0, 0, 0, 0.85);
	font-size: 18px;
}
.event-phase-container,
.event-links {
	font-size: 13px;
	font-weight: 500;
}
.event-details-right {
	text-align: right;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	justify-content: space-between;
}
.event-livetime-wrapper {
	display: flex;
	align-items: center;
	gap: 5px;
}
.event-links {
	display: flex;
	flex-direction: row;
	gap: 5px;
}
.event-links a {
	color: #663399;
	text-decoration: none;
	transition: color 0.2s ease-in-out;
}
.event-links a:hover {
	color: #441166;
	text-decoration: none;
}
.event-links a span {
	border-radius: 4px;
	padding: 4px 6px;
	line-height: 1;
}
.event-links a span.results-link {
	background-color: #cefbbb;
	color: black;
}
.event-links a span.startlist-link {
	background-color: #fbfbbb;
	color: black;
}
.event-links a span.summary-link {
	background-color: black;
	color: white;
}
/* Utility and Responsive */
.wa-timetable-error {
	color: #dc3545;
	background-color: #f8d7da;
	border: 1px solid #f5c6cb;
	padding: 15px;
	border-radius: 8px;
}
.wa-timetable-message {
	color: #004085;
	background-color: #cce5ff;
	border: 1px solid #b8daff;
	padding: 15px;
	border-radius: 8px;
}
@media (max-width: 576px) {
	.event-name,
	.event-time {
		font-size: 15px;
	}
	.event-phase-container,
	.event-links {
		font-size: 12px;
	}
	.event-links {
		flex-direction: column;
	}
}