/* keyboard - jQuery UI Widget */
.ui-keyboard { 
padding: .3em; 
position: absolute; 
z-index: 16000; 
border: 1px solid #CCC;-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 0 2px 4px rgba(0,0,0,0.2);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
-webkit-transition: opacity 0.218s;
-moz-transition: opacity 0.218s;
-ms-transition: opacity 0.218s;
-o-transition: opacity 0.218s;
transition: opacity 0.218s;background-color: #fff;
}

.ui-buttonkeyset-default
{
font-weight: bold;
border: 1px solid #FFffff;
color: white;
-webkit-text-shadow: 0 1px rgba(0,0,0,0.1);
text-shadow: 0 1px rgba(0, 0, 0, 0.1);
background-color: #4D90FE;
background-image: -webkit-gradient(linear,left top,left bottom,from(#028BEB),to(#007BD2));
background-image: -ms-linear-gradient(top,#028BEB,#007BD2);
background-image: -webkit-linear-gradient(top,#028BEB,#007BD2);
background-image: -moz-linear-gradient(top,#028BEB,#007BD2);
background-image: -o-linear-gradient(top,#028BEB,#007BD2);
background-image: linear-gradient(top,#028BEB,#007BD2);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#028BEB', endColorstr='#007BD2');
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
-moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
-moz-border-image: initial;
-o-border-image: initial;
-webkit-border-image: initial;
border-image: initial;
}
.ui-buttonkeyset-hover
{
border: 1px solid #fff;
color: #fff;
text-shadow: 0 1px rgba(0,0,0,0.3);
background-color: #357ae8;
background-image: -webkit-gradient(linear,left top,left bottom,from(#4d90fe),to(#357ae8));
background-image: -webkit-linear-gradient(top,#4d90fe,#357ae8);
background-image: -moz-linear-gradient(top,#4d90fe,#357ae8);
background-image: -ms-linear-gradient(top,#4d90fe,#357ae8);
background-image: -o-linear-gradient(top,#4d90fe,#357ae8);
background-image: linear-gradient(top,#4d90fe,#357ae8);    
}
.ui-keyboard-bksp {
border: 1px solid #ffffff;
color: white;
-webkit-text-shadow: 0 1px rgba(0,0,0,0.3);
text-shadow: 0 1px rgba(0, 0, 0, 0.3);
background-color: #C53727;
background-image: -webkit-gradient(linear,left top,left bottom,from(#DD4B39),to(#C53727));
background-image: -webkit-linear-gradient(top,#DD4B39,#C53727);
background-image: -moz-linear-gradient(top,#DD4B39,#C53727);
background-image: -ms-linear-gradient(top,#DD4B39,#C53727);
background-image: -o-linear-gradient(top,#DD4B39,#C53727);
background-image: linear-gradient(top,#DD4B39,#C53727);
-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
-moz-box-shadow: 0 1px 1px rgba(0,0,0,0.2);
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
}
/* (in)valid inputs */
button.ui-keyboard-accept.ui-keyboard-valid-input { 
background-color: #3D9400;
background-image: -webkit-linear-gradient(top,#3D9400,#398A00);
background-image: -moz-linear-gradient(top,#3D9400,#398A00);
background-image: -ms-linear-gradient(top,#3D9400,#398A00);
background-image: -o-linear-gradient(top,#3D9400,#398A00);
background-image: linear-gradient(top,#3D9400,#398A00);
border: 1px solid #ffffff;
color: white; 
}
button.ui-keyboard-accept.ui-keyboard-valid-input:hover {
background-color: #368200;
background-image: -webkit-linear-gradient(top,#3D9400,#368200);
background-image: -moz-linear-gradient(top,#3D9400,#368200);
background-image: -ms-linear-gradient(top,#3D9400,#368200);
background-image: -o-linear-gradient(top,#3D9400,#368200);
background-image: linear-gradient(top,#3D9400,#368200);
border: 1px solid #ffffff;
-webkit-text-shadow: 0 1px rgba(0, 0, 0, 0.3); 
text-shadow: 0 1px rgba(0, 0, 0, 0.3);
}

button.ui-keyboard-accept.ui-keyboard-invalid-input { border-color: #c00; background: #800; color: #fff; }
button.ui-keyboard-accept.ui-keyboard-invalid-input:hover { background: #a00; }
/*** jQuery Mobile definitions ***/
/* jQuery Mobile styles - need wider buttons because of font size and text-overflow:ellipsis */
.ui-bar .ui-keyboard-button { width: 3em; display: inline-block; }
.ui-bar .ui-keyboard-widekey { width: 5.5em; }
.ui-bar .ui-keyboard-space { width: 15em; }
.ui-bar .ui-keyboard-space span { visibility: hidden; } /* hides the ellipsis */
.ui-bar .ui-keyboard-keyset { line-height: 0.5em; }
.ui-bar input.ui-input-text, .ui-bar textarea.ui-input-text { width: 95%; }

/* over-ride padding set by mobile ui theme - needed because the mobile script wraps button text with several more spans */
.ui-bar .ui-btn-inner { height: 2em; padding: 0.2em 0; margin: 0; }
.ui-bar .ui-btn { margin: 0; font-size: 13px; } /* mobile default size is 13px */
.ui-keyboard-has-focus { z-index: 16001; }
.ui-keyboard div { font-size: 1.1em; }
.ui-keyboard-button { height: 32px;width: 32px;margin:0px !important;padding:0px; cursor: pointer; overflow: hidden; line-height: 2em; }
.ui-keyboard-button span { padding: 0; margin: 0; white-space:nowrap; }
.ui-keyboard-button-endrow { clear: left; }
.ui-keyboard-widekey { min-width: 4em; width: auto; }
.ui-keyboard-space { width: 15em; text-indent: -999em; }
.ui-keyboard-preview-wrapper { text-align: center; }
.ui-keyboard-preview { text-align: left; margin: 0 0 3px 0; display: inline; width: 99%;} /* width is calculated in IE, since 99% = 99% full browser width =( */ 
.ui-keyboard-keyset { text-align: center; white-space: nowrap; padding-top:10px}
.ui-keyboard-input { text-align: left; }
.ui-keyboard-placeholder { color: #888; }
.ui-keyboard-nokeyboard { color: #888; border-color: #888; } /* disabled or readonly inputs, or use input[disabled='disabled'] { color: #f00; } */
.ui-keyboard-button.disabled { opacity: 0.5; filter: alpha(opacity=50); } /* used by the acceptValid option to make the accept button appear faded */
.ui-keyboard-spacer { display: inline-block; width: 1px; height: 0; }

/* combo key styling - toggles diacritics on/off */
.ui-keyboard-button.ui-keyboard-combo.ui-state-default { border-color: #ffaf0f; }
/* Media Queries (optimized for jQuery UI themes; may be slightly off in jQuery Mobile themes) */
/* 240 x 320 (small phone)  */
@media all and (max-width: 319px) {
	.ui-keyboard div { font-size: 9px; }
	.ui-keyboard .ui-keyboard-input { font-size: 12px; }
	.ui-bar .ui-btn { margin: 0; font-size: 9px; }
	.ui-bar .ui-keyboard-button { width: 1.8em; height: 2.5em; }
	.ui-bar .ui-keyboard-widekey { width: 4em; }
	.ui-bar .ui-keyboard-space { width: 8em; }
	.ui-bar .ui-btn-inner { height: 2.5em; padding: 0.3em 0; }
}

/* 320 x 480 (iPhone)  */
@media all and (min-width: 320px) and (max-width: 479px) {
	.ui-keyboard div { font-size: 9px; }
	.ui-keyboard .ui-keyboard-input { font-size: 14px; }
	.ui-bar .ui-btn { margin: 0; font-size: 11px; }
	.ui-bar .ui-keyboard-button { width: 1.8em; height: 3em; }
	.ui-bar .ui-keyboard-widekey { width: 4.5em; }
	.ui-bar .ui-keyboard-space { width: 10em; }
	.ui-bar .ui-btn-inner { height: 3em; padding: 0.7em 0; }
}

/* 480 x 640 (small tablet) */
@media all and (min-width: 480px) and (max-width: 767px) {
	.ui-keyboard div { font-size: 13px; }
	.ui-keyboard .ui-keyboard-input { font-size: 14px; }
	.ui-bar .ui-btn { margin: 0; font-size: 10px; }
	.ui-bar .ui-keyboard-button { height: 2.5em; }
	.ui-bar .ui-btn-inner { height: 2.5em; padding: 0.5em 0; }
}

