.otc {
	position: relative;
	width: 268px;
	margin: 2em auto;
}

.otc fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}

.otc fieldset div {
	display: flex;
	align-items: center;
}

.otc legend {
	margin: -1.5em auto 0em;
	color: #666;
	position: fixed;
	width: auto;
	left: 50%;
	transform: translateX(-50%);
}

.otc input[type="number"] {
	width: 1em;
	line-height: 1;
	margin: .1em;
	padding: 8px 0 4px;
	font-size: 2.65em;
	text-align: center;
	appearance: textfield;
	-webkit-appearance: textfield;
	border: 2px solid #999;
	border-radius: 5px;
}

.otc input::-webkit-outer-spin-button,
.otc input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* From: https://gist.github.com/ffoodd/000b59f431e3e64e4ce1a24d5bb36034 */
.otc label {
	border: 0 !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	-webkit-clip-path: inset(50%) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: absolute !important;
	width: 1px !important;
	white-space: nowrap !important;
}
