html {
	font-size: 14px;
}

@media (min-width: 768px) {
	html {
		font-size: 16px;
	}
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
	box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
	position: relative;
	min-height: 100%;
}

body {
	margin-bottom: 60px;
}

#connections-table {
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
}

#connections-table th,
#connections-table td {
	border: 1px solid #ccc;
	padding: 8px;
	overflow: hidden;
	text-overflow: ellipsis;
	word-wrap: break-word;
	white-space: normal;
}

#connections-table td.data-cell {
	max-width: 300px;
	word-wrap: break-word;
	white-space: pre-wrap;
}

@keyframes highlight-update {
	0% {
		background-color: #e7f3ff;
	}
	100% {
		background-color: inherit;
	}
}

.flash {
	animation: highlight-update 1s ease-in-out;
}

tr.missing {
	background-color: #fff3cd; /* yellowish */
}
tr.unexpected {
	background-color: #f8d7da; /* reddish */
}

.login { max-width: 420px; margin: 40px auto; }
