.finp-control:focus{
	outline:1px dotted #000;
	outline-offset:-3px;
}
.finp-overlay{
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	background:rgba(0,0,0,0);
	z-index:10000;
}
.finp-dialog{
	display:table;
	position:fixed;
	top:0;
	left:0;
	padding:20px;
	background-color:#fff;
	border:1px solid #ccc;
	box-shadow: 5px 5px 10px 0 #444;
	border-radius:5px;
	z-index:10001;
}
.finp-inpbox{
	display:table-cell;
	border:1px solid #337ab7;
}
.finp-inpbox:focus{
	outline:none;
}
.finp-dialog.finp-error{
	animation-name:kf-finp-error;
	animation-duration:0.2s;
	animation-iteration-count:5;
}
@keyframes kf-finp-error{
	25% {
		transform:rotateZ(-5deg);
	}
	75% {
		transform:rotateZ(5deg);
	}
}
.finp-dialog.finp-error .finp-inpbox{
	animation-name:kf-finp-input;
	animation-duration:3s;
	animation-iteration-count:1;
}
@keyframes kf-finp-input{
	0% {
		color:#ff0000;
	}
}
.finp-enter,
.finp-cancel{
	color:#fff;
	background:#337ab7;
	text-align:center;
	vertical-align:middle;
	cursor:pointer;
}
.finp-enter{
	display:table-cell;
	padding:0 6px;
	padding-top:1px;
	font-size:16px;
	border-radius:0 5px 5px 0;
	vertical-align:middle;
}
.finp-enter:before{
	content:"⏎";
}
.finp-cancel{
	position:absolute;
	top:0;
	left:0;
	transform:translate(-50%,-50%);
	width:30px;
	height:30px;
	line-height:30px;
	font-size:16px;
	border-radius:50%;
}
.finp-cancel:before{
	content:"✕";
}
