:root {
	--wdm-primary: #2e5aac;
	--wdm-primary-dark: #1f3f7a;
	--wdm-sidebar-w: 230px;
}

body {
	background-color: #f4f6f9;
}

.app-topbar {
	background-color: var(--wdm-primary-dark);
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 56px;
}

.app-wrapper {
	display: flex;
	min-height: calc(100vh - 56px);
}

.app-sidebar {
	width: var(--wdm-sidebar-w);
	flex-shrink: 0;
	background-color: #fff;
	border-right: 1px solid #e3e6ec;
	padding-top: 1rem;
}

.app-sidebar .nav-link {
	color: #495057;
	padding: .65rem 1.25rem;
	border-left: 3px solid transparent;
}

.app-sidebar .nav-link i {
	width: 22px;
	display: inline-block;
}

.app-sidebar .nav-link:hover {
	background-color: #f1f4f9;
	color: var(--wdm-primary);
}

.app-sidebar .nav-link.active {
	background-color: #eaf0fb;
	color: var(--wdm-primary);
	border-left-color: var(--wdm-primary);
	font-weight: 600;
}

.app-content {
	flex-grow: 1;
	padding: 1.5rem;
	max-width: 100%;
	overflow-x: hidden;
}

.card-metric {
	border: none;
	border-radius: .6rem;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
}

.card-metric .metric-icon {
	width: 48px;
	height: 48px;
	border-radius: .6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	color: #fff;
}

.card-metric .metric-value {
	font-size: 1.6rem;
	font-weight: 700;
}

/* Timeline (historico do destinatario) */
.timeline {
	position: relative;
	padding-left: 2.5rem;
}

.timeline::before {
	content: '';
	position: absolute;
	left: .65rem;
	top: .3rem;
	bottom: .3rem;
	width: 2px;
	background-color: #dee2e6;
}

.timeline-item {
	position: relative;
	padding-bottom: 1.75rem;
}

.timeline-item:last-child {
	padding-bottom: 0;
}

.timeline-marker {
	position: absolute;
	left: -2.5rem;
	top: 0;
	width: 1.3rem;
	height: 1.3rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: .75rem;
}

.timeline-marker.evento-abertura {
	background-color: #0d6efd;
}

.timeline-marker.evento-clique {
	background-color: #198754;
}

.timeline-time {
	font-size: .8rem;
	color: #6c757d;
}

@media (max-width: 991.98px) {
	.app-sidebar {
		position: fixed;
		z-index: 1030;
		top: 56px;
		bottom: 0;
		left: -240px;
		transition: left .2s ease-in-out;
	}

	.app-sidebar.show {
		left: 0;
	}
}
