*[data-toggle="buttons"] > .btn input[type="radio"] {
	position:absolute;
	clip:rect(0,0,0,0);
	pointer-events:none;
}

.connectionstate-switch,
.trackingstate-switch {
	width:8.25rem;
	padding:.375rem .75rem .375rem 2.75rem;
	border-radius:.25rem;
}
.connectionstate-switch.connected, 
.trackingstate-switch.enabled {
	background-color:#00bc8c;
}
.connectionstate-switch.disconnected,
.trackingstate-switch.disabled {
	background-color:#2b4764;
}

.row.checkboxes .form-check-input {
	margin-left:0;
}
.row.checkboxes .form-check-label {
	margin-left:1.5em;
}

.progress {
	height:20px;
}
.progress.with-stats {
	float:left;
	width:calc(100% - 150px);
}
.progress.with-correct-stats {
	width:calc(100% - 175px);
}

.stats {
	float:right;
	width:150px;
	text-align:right;
	height:20px;
	font-size:90%;
}
.stats.with-correct-stats {
	width:175px;
}
.stats.with-time-stats.with-correct-stats {
	margin-top:-0.75em;
}
.stats .time-stats,
.stats .correct-stats {
	display:none;
}
.stats.with-time-stats .time-stats {
	display:block;
}
.stats.with-correct-stats .correct-stats {
	display:block;
}

.morse-string {
	font-family:monospace;
	font-size:2em;
	word-wrap:break-word;
	word-break:break-all;
	line-break:anywhere;
}
.morse-string .missing {
	color:grey;
}
.morse-string .correct {
	color:#26a269;
}
.morse-string .incorrect {
	color:#e12e1c;
}

.character-button:focus {
	background-color:#375a7f;
	border-color:#375a7f;
	box-shadow:none;
}

.no-margin-left-right {
	margin-left:0;
	margin-right:0;
}

.statistics-character-table thead th {
	cursor:pointer;
	width:25%;
}
