@charset "utf-8";

        @font-face {
            font-family: "Roboto";
            font-weight: 100;
            font-style: normal;
            src: url("roboto/Roboto-Thin.ttf") format('truetype');
        }

        @font-face {
            font-family: "Roboto";
            font-weight: 300;
            font-style: normal;
            src: url("roboto/Roboto-Light.ttf") format('truetype');
        }

        @font-face {
            font-family: "Roboto";
            font-weight: 400;
            font-style: normal;
            src: url("roboto/Roboto-Regular.ttf") format('truetype');
        }

        @font-face {
            font-family: "Roboto";
            font-weight: 500;
            font-style: normal;
            src: url("roboto/Roboto-Medium.ttf") format('truetype');
        }

        @font-face {
            font-family: "Roboto";
            font-weight: 700;
            font-style: bold;
            src: url("roboto/Roboto-Bold.ttf") format('truetype');
        }

        @font-face {
            font-family: "Roboto";
            font-weight: 900;
            font-style: normal;
            src: url("roboto/Roboto-Black.ttf") format('truetype');
        } 


        @font-face {
            font-family: "RobotoCondensed";
            font-weight: 300;
            font-style: normal;
            src: url("roboto/RobotoCondensed-Light.ttf") format('truetype');
        }

        @font-face {
            font-family: "RobotoCondensed";
            font-weight: 400;
            font-style: normal;
            src: url("roboto/RobotoCondensed-Regular.ttf") format('truetype');
        }


        @font-face {
            font-family: "RobotoCondensed";
            font-weight: 700;
            font-style: normal;
            src: url("roboto/RobotoCondensed-Bold.ttf") format('truetype');
        }


* {
	font-family: "Roboto", Sans-Serif;	
	font: 14px;
}

html {
	margin:0; padding:0; overflow: hidden;	
}

body {
	margin:0; padding:0;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  opacity: 0.5; /* Firefox */
}

/*--------------------------------------------*/
/* HEADERS     */

h3 {
	font-size: 19px;
	padding: 4px 12px;
	color: #000;
	margin: 0;
	font-weight: normal;
	display: block;
	box-sizing: border-box;	
}

h4 {
	font-size: 14px;
	padding: 12px;
	color: #000;
	margin: 0;
	font-weight: bold;
	display: block;
	text-align: left;
	box-sizing: border-box;	
}

h5 {
	font-size: 13px ;
	color: #000;
	padding: 6px 12px;
	margin: 0;
	opacity: 0.8;
	font-weight: normal;
	display: block;
	box-sizing: border-box;		
}

h6 {
	font-size: 11px ;
	color: #000;
	padding: 2px 12px;
	margin: 0;
	opacity: .6;
	font-weight: normal;
	display: block;
	box-sizing: border-box;	
}

.white {
	color: #FFF;
}

strong {
	color:#F33;
}

p {
	padding: 4px 2px;
	margin: 0;
	font-size: 13px;
	color:#333;
	display: block;
	width: 100%;
	background-color: #FFF;
	box-sizing: border-box;	
}

p.inputCompuesto {
	background-color: #FFFFFF;
	border-style: solid;
	border-color: #EAEBEC;
	border-width: 1px;
	border-radius: 5px 0 0 5px ;
	box-sizing: border-box;
	display: inline-block;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	min-height: 28px;
	outline: none;
	padding: 2px;
	width: calc( 100% - 40px);	
}

p.inputRadio {
	display: inline-block;
	margin: 0;
	padding: 0;
	min-height: 28px;
	background-color: transparent;
}

p.inputSelected {
	display: inline-block;
	border-bottom: 1px solid #007AFF;
}

div.divInfo {
	max-height: 36px;
	overflow: hidden;
	text-align: center;
	color: rgba(0,0,0,.9);
}

span.spnTitle {
	box-sizing: border-box;
	color: #555;
	display: block;
	font-size: 12px;
	/*height: 20px;*/
	margin: 0;
	margin-bottom: 2px;
	opacity: 1;
	padding: 2px 6px ;
	vertical-align: middle;
	overflow: hidden;
	text-align: center;
}

span.spnTitle b {
	color: #044D94;
	font-weight: bold;	
	padding: 1px 6px;
	border-radius: 6px;
	border: 1px solid #AAA;
}


/*--------------------------------------------*/

/*--------------------------------------------*/
/* ESCRITORIO     */

div.appDesktop {
	width: calc(100vw - 52px);
	height: 100vh;
	margin: 0 0 0 52px;
	padding: 0;
	overflow: hidden;
	border: 2px solid #F33;
	box-sizing: border-box;
}

nav {
	/*background-color: #E7E8EA;*/
	background-color: #ECE7E5;
	box-sizing: border-box;
	color: #555;
	font-size: 11px;
	height: 48px;
	left:52px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	top:0;
	width: calc(100% - 52px);
	z-index: 90;
}

nav table {
	width: 100%;
	margin: 0;
	padding: 0;
	height: 46px;
	border-collapse: collapse;
	border: none;
}

nav table tr {
	width: 100%;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	border: none;
}

nav table td {
	margin: 0;
	height: 100%;
	color: #333;
	text-align: center;
	position: relative;
	padding: 0 32px 0 12px;
	text-overflow: ellipsis	;
	opacity: 1;
	font-size: 13px;
	font-weight: 500;
}

nav table td button {
	width: 26px;
	height: 46px;	
	border: none;
	position: absolute;
	right: 3px;
	top: 0;
	background: url('../_images/ic_clear_black_18dp.png') no-repeat center center;
}

nav table td button:hover {
	background-color: #D33;
	background: url('../_images/ic_clear_black_18dp.png') no-repeat center center;
}

nav table td.tabSelected {
	color: #000;
	/*background-color: #F4F5F7;*/
	background-color: #F7F4F3;
	opacity: 1;
	/*border-radius: 4px 4px 0 0 ;*/
	border-top-color: #0277BD;
}

nav table td table {
	width: auto;
	max-width: 100%;
	height: 48px;
}

nav table td table td {
	border-top: 4px solid transparent;
	color: #000000AA;
}

nav table td table td button {
	opacity: .2;
}

nav table td table td.tabSelected button {
	color: #FFF;
	/*background-color: #4A4D4F;*/
	background: url('../_images/ic_clear_black_18dp.png') no-repeat center center;
	opacity: 1;
}

nav td.tabSelected {
	color: #FFF;
	background-color: #DBDDE1;
	opacity: 1;
}
/*--------------------------------------------*/


/*--------------------------------------------*/
/* LOGIN     */

div.appBlurCover {
	position: absolute;
	width: 100vw;
	height: 100vh;
	left:0px;
	top:0px;
	z-index: 90;
    /*filter: blur(15px);*/
    background-color: rgb(0,0,0,.8);
	transition: all 0.5s;	    
}

div.appLogin {
	position: absolute;
	width: 100vw;
	height: 100vh;
	left:0;
	top:0;
	z-index: 91;
	text-align: center;
}

div.appLogin form {
	position: absolute;
	top: calc(50% - 250px);
	left: calc(50% - 360px);
	width: 720px;
	min-height: 280px;
	box-sizing: border-box;
	padding: 16px 0 6px 0;
	border: 1px solid #CCC;
	border-top:none;
	border-radius: 12px;
	/*background: radial-gradient(circle, #FFF, #EEE);*/
	background-color: #FFFFFFCC;
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
	overflow: hidden;
}

div.appLogin input[type=text] {
	color: #333;
	font-size: 16px;
	padding: 6px;
	width: 300px;
	display: inline-block;
	border: 1px solid #BBB;
	background-color: #FFF;
	outline: none;
	margin:0;
	box-sizing: border-box;
	border-radius: 6px;
	margin-bottom: 12px;
}

div.appLogin hr {
	border-color: #DDD;
}


div.appLogin input[type=password] {
	color: #333;
	font-size: 16px;
	padding: 6px;
	width: 300px;
	display: inline-block;
	border: 1px solid #BBB;
	background-color: #FFF;
	outline: none;
	margin:0;
	box-sizing: border-box;
	border-radius: 6px;
	margin-bottom: 12px;
}

div.appLogin button {
	background-color: #007AFF;
	border:none;
	border-radius: 6px;
	color: #FFF;
	font-size:16px;
	font-weight: normal;
	height: 32px;
	padding: 0 16px ;
	margin: 0;
	vertical-align: middle;
	outline: none;
	min-width: 88px;
	opacity: .9;
}

div.appLogin button:hover {
	opacity: 1;
}

div.appLogin a {
	font-size: 13px;
	font-weight: 300;
}

span.spnLogin {
	color:#FFF;
	font-size: 32px;
	opacity: 0.8;
	display: block;
}

span.spnErrorLogin {
	background-color:#FFCDD2;
	padding: 11px;
	display: block;
	margin:12px 0 0 0;
	color:#C62828;
	font-weight: bold;
	/*border-top: 1px solid;*/
	border-radius: 0;
}


/*--------------------------------------------*/



/*--------------------------------------------*/
/* MENU     */

div.appMenu {
	position: absolute;
	left: 0;
	top: 0;
	overflow: auto; 
	z-index:91;
	background-color: #354155;
	padding: 0;
	/*box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.7);	*/
	height: 100vh;
	box-sizing: border-box;
	transition: left 0.3s ease;	
	overflow-y: auto;
	overflow-x: hidden;
}

div.appMenu a {
	color: #FFF;
	text-decoration: none;
	display: inline-block;
	padding: 5px 10px;
	margin: 5px;
	vertical-align: middle;
	border-radius: 5px;
	font-size: 13px;
}

div.appMenu img {
	vertical-align: middle;
	margin: 0;
	padding: 0;
}

div.appMenu a:hover {
	opacity: 1;
	background-color: #4A4D4F;
}

table.tblMenu {
	border-collapse: collapse;
	height: calc(100vh - 52px);
}

table.tblMenu tr {
	margin: 0;
	padding: 0;
}

table.tblMenu td {
	margin: 0;
	padding: 0;
	vertical-align: top;
	color: #FFF;
	overflow-y: auto;
	overflow-x: hidden;
	height: 100%;
}

/* Modulos */

div.appModulos {	
	/*background-color: #DBDDE1;*/
	background-color: transparent;
	text-align:left;
	width: 52px;
	height: calc(100vh - 52px);
	margin: 0;
	padding: 0;
	overflow-y: auto;
	overflow-x: hidden;
}

div.appModulos ul {
	margin: 0;
	padding: 0; 
}

div.appModulos ul li {
	background: none;
	display: inline;
	height: 48px;
	list-style: none;
	border-top: solid 1px #DBDDE1;
}

div.appModulos ul li img{
	vertical-align: middle;
	display: inline-block;
	margin: 0 12px 0 3px;
	width: 24px;
}

div.appModulos ul li button {
	background-color: transparent;
	border: none;
	/*border-width: 1px 1px 1px 7px;
	border-color: transparent transparent #DBDDE1 transparent;*/
	color: #FFF;
	display: block;
	font-size: 16px ;
	font-weight: 500;
	margin: 0;
	padding: 12px; 
	text-align: left;
	overflow: hidden;
	outline: none;
	vertical-align: middle;
	overflow: hidden;
	width: 180px;
}

div.appModulos ul li button:hover {
	color: #FFF;
	background-color:#044D94;
}

/* Opciones */

div.appOpciones {
	display: block;
	margin: 0;
	padding: 0;
	text-align: left;
	width: 520px;
	/*height: 50%;*/
}

div.appOpciones ul {
	background-color: #FFFFFF;
	margin: 0;
	padding: 0;
	display: none;
	/*border-radius: 9px;*/
	/*border: 1px solid #00000011;*/
}

div.appOpciones ul li {
	vertical-align: top;
	display: inline-block;
	margin: 0;
	padding: 0;
}

div.appOpciones ul span{
	/*font-family: "OpenSans";*/
	font-size: 11px;
	display: block;
	width: 100%;
	margin: 0;
	padding: 20px 10px 5px 5px;
	color: #1976D2;
	font-weight: bold;
	text-transform: uppercase;
	/*border-bottom: 1px solid #AAA;*/
	vertical-align: middle;
	letter-spacing: 1px;
	line-height: 16px;
}

div.appOpciones ul li img{
	display: inline-block;
	vertical-align: top;
}

div.appOpciones ul li button {
	background-color: #FFF;
	border-style: solid;
	border-radius: 4px;
	border-width: 1px;
	border-color: transparent;
	color: #333538;
	display: block;
	font-size: 13px;
	font-weight: 500;
	margin: 0 6px;
	overflow: hidden;
	padding: 12px;
	text-align: left;
	outline: none;
	text-align: center;
	box-sizing: border-box;
	width: 90px;
	height: 110px;
	vertical-align: top;
}

div.appOpciones ul li button img {
	margin-bottom: 6px;
	width: 48px;
	background-color: #FFCCCC;
	padding: 10px;
	border-radius: 12px;
	box-sizing: border-box;
	vertical-align: top;
	margin-top: 0;
}

div.appOpciones ul li button:hover {
	border-color: #64B5F6;
	color: #000;
	background-color: #E8EAF6;
}

div.appSubOpciones {
	background-color: transparent;
	/*border-left: 1px solid #BBB; */
	display: block;
	margin: 0;
	padding: 0;
	text-align: left;
	width: 100%;
	/*height: 100%;*/
}

div.appSubOpciones ul {
	background-color: transparent;
	margin: 0;
	padding: 0;
	display: none;
	border-bottom: 1px solid #E2E3E5;
}

div.appSubOpciones ul li {
	display: block;
	margin: 0;
	padding: 0;
}

div.appSubOpciones ul li span{
	/*font-family: "OpenSans";*/
	font-size: 11px;
	display: block;
	margin: 0;
	padding: 12px 6px 6px 6px;
	color: #1976D2;
	font-weight: bold;
	text-transform: uppercase;
	vertical-align: middle;
	letter-spacing: 1px;
	line-height: 16px;
}

/*div.appSubOpciones ul li img{
	vertical-align: middle;
	margin-right: 12px;
}*/

div.appSubOpciones ul li button {
	/*font-family: "OpenSans";*/
	background-color: #FFFFFF;
	border: 1px solid ;
	border-color: #E2E3E5 #FFF #FFF #FFF ;
	border-radius:0;
	color: #333538;
	display: block;
	font-size: 13px;
	font-weight: 500;
	margin: 0 6px;
	overflow: hidden;
	padding: 6px 6px 6px 12px;
	text-align: left;
	outline: none;
	width: calc(100% - 12px);
	box-sizing: border-box;
	height: 42px;
}


div.appSubOpciones ul li button:hover {
	/*border-top: 1px solid #BBB;
	border-bottom: 1px solid #BBB;*/
	border-color: #64B5F6;
	color: #000;
	background-color: #E8EAF6;
}

div.appSubOpciones ul li button img {
	/*margin-bottom: 6px;*/
	width: 24px;
	background-color: #F0F0F0;
	padding: 3px;
	border-radius: 6px;
	box-sizing: border-box;
	margin-right: 6px;
}

/*--------------------------------------------*/


/*--------------------------------------------*/
div.appWindow {
	/*background-color:#E7E8EA;*/	
	background-color:#ECE7E5;	
	left: 52px; 
	position:absolute; 
	overflow: hidden; 
	top: 48px; 
	width: calc(100% - 52px); 
	height: calc(100% - 48px);
	z-index:13; 
	/*user-select: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;*/
}

div.appWindowTitle {
	/*background-color: #E9EBEE;*/
	background-color: #DFE2E7;
	color: #333;
	font-size: 13px;
	font-weight: bold;
	height: 20px;
	overflow: hidden;
}

div.appWindowTitle table {
	width: 100%;
	border-collapse: collapse;
}

div.appWindowTitle button {
	padding: 1px 6px;
	background-color: transparent;
	border: none;
	height: 18px;
}

div.appWindowTitle button:hover {
	background-color: #CCC;
}

div.appWindowHeader {
	/*background-color: #F4F5F7;*/
	background-color: #F7F4F3;
	color: #0000077;
	padding: 0;
	vertical-align: middle;
	min-height: 48px;
	overflow: hidden;
	/*border-bottom: 1px solid #DDDDDD;*/
}

div.appWindowHeader table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
	/*background-color: #F0F2F3;*/
	height: 48px;
	/*border-bottom: 4px solid #CCC;*/
	overflow: hidden;
	padding: 0 12px;
/*background-color: #E4E8EB;*/
}

div.appWindowHeader table td {
/*border: 1px solid #3F3;*/
	vertical-align: middle;
	/*border-bottom: 1px solid #AAA;*/
	height: 40px
}

div.appWindowHeader button {
	padding: 1px 2px;
	background-color: transparent;	
	border: none;
	height: 40px;
	width: 42px;
	margin: 0 4px 0 0;
	border-radius: 3px;
	border-color:#33F;
	font-family: "RobotoCondensed";
	font-size: 9px;
	outline: none;
	text-align: center;
	text-transform: uppercase;	
}

div.appWindowHeader button:active {
	box-shadow: inset 0 0 6px #000;	
}

div.appWindowHeader button:hover {
	background-color: #BBDEFB;
}

div.appWindowHeader button:disabled {
	opacity: 0.2;
}

div.appWindowHeader button img {
	width: 24px;
	height: 24px;
}

svg.botonSvg {
	width: 24px;
	height: 24px;
	fill:#00FF00;
}

svg.botonSvg:hover {
	fill:#0000FF;
}


div.divSection {
	/*min-height: 48px;*/
	display: block;
	vertical-align: bottom;
	overflow: hidden;
	text-align: center;
	/*border-bottom: 4px solid #CCC;*/
}


div.appSectionBar {
	width: 100%;
	/*background-color: #4A4D4F;*/
}

div.appSectionBar div {
	display: none;
}

div.appSectionBar label {
 	margin: 0 0 0 4px;
 	text-align: center;
 	color: #01579B;
 	width: 100%;
 	text-overflow: ellipsis;
 	font-size: 10px;
 	text-transform: uppercase;;
 	display: block;
}

div.appSectionBar input[type=radio] {
 	display: none;
}

div.appSectionBar input[type=radio] + label {
	background-color: #ECEEEF;
	border-color: #FFF;
	border-style: solid;
	border-width: 1px;
	border-radius: 0 ;
	color: #555;
	font-size: 13px; 
	font-weight: 600;
	display: inline-block;
	height: 24px;
	margin: 0;
	padding: 3px 9px; 
	text-align: center;
	vertical-align: middle;
	width: auto;
	text-transform: uppercase ;
}

div.appSectionBar input[type=radio]:checked + label {
	background-color: #CBE4FB;
	color: #1565C0;
}

div.appSectionBar input[type=radio]:first-of-type + label {
	border-left: 1px solid transparent;
	border-radius: 8px 0 0 8px  ;
}

div.appSectionBar input[type=radio]:last-of-type + label {
	border-radius: 0 8px 8px 0;
}



div.appSectionBar select {
	background-color: #E2E4E5;
	background-image: none;	
	border-color: #E2E4E5;
	border-style: solid;
	border-width: 1px;	
	color: #333;
	display: inline-block;
	font-size: 13px; 
	font-weight: bold;
	margin: 0;
	padding: 0 3px; 
	text-align: center;
    /*vertical-align: bottom;
    text-align: center;*/
	width: 100%;
	border-radius: 3px;
	height: 24px;
}

div.appSectionBar select:hover {
	background-color: #CCC;
}

div.appSectionBar select option {
	background-color: #FFF;
	color: #222;
	height: 30px;
}

div.appSectionBar button {
	background-color: #E2E4E5;
	background-image: none;	
	border-color: #E2E4E5;
	border-style: solid;
	border-width: 1px;	
	color: #000;
	display: inline-block;
	font-size: 13px; 
	font-weight: bold;
	margin: 0px 2px;
	padding: 3px 2px; 
    vertical-align: bottom;
    text-align: center;
	width: 160px;
	height: 24px;
	border-radius: 5px;
}

/*div.appSectionBar table {
	background-color: #4A4D4F;
}*/

div.appSectionBar table td{
	vertical-align: top;
}

div.appSectionBar span {
	display: inline-block;
	margin: 0;
	padding: 3px;
	vertical-align: top;
	text-align: left;
	/*border-right: 1px solid #CCC;*/
}

div.appButtonBar {
	text-align: right;
	height: 36px;
	background-color: transparent;
}

div.appWindowFooter {
	background-color: #424242;
	color: #333;
	padding: 0;
	height: 36px;
	position: absolute;
	left: 0;
	bottom:0;
	width:100%;
	z-index: 50;
	border-top: 1px solid #212121;
	border-bottom: 1px solid #212121;
	box-sizing: border-box;
	text-align: right;
	overflow: hidden;
}

div.appWindowContextMenu {
	/*background-color: #F4F5F7;*/
	background-color: #F7F4F3;
	display: block;
	height: calc( 100% - 49px);
	position: absolute;
	right:18px;
	top:49px;
	width: 172px;
	z-index: 50;
}


div.appWindowContextMenu ul {
	margin: 0;
	padding: 20px 0;
}

div.appWindowContextMenu ul li {
	display: block;
	margin: 0;
	padding: 0 ;
	/*border-bottom: 1px solid #D4D5D7;*/
}

div.appWindowContextMenu ul li button {
	background-color: transparent;
	/*border: 1px solid ;
	border-color:  transparent transparent #DDD transparent;*/
	border: none;
	color: #222;
	/*display: block;*/
	display: none;
	font-family: "RobotoCondensed";
	font-size: 13px;
	font-weight: 700;
	margin: 0;
	overflow: hidden;
	outline: none;
	opacity: 1;
	padding: 12px 0 12px 12px;
	text-align: left;
	width: 100%;
	vertical-align: middle;
}

div.appWindowContextMenu ul li button:hover {
	opacity: 1;
}

div.appWindowContextMenu ul li button img{
	margin-right: 12px;
	display: inline-block;
	vertical-align: middle;
	width: 24px;
}

div.appWindowContextMenu ul li button span.spnBlock{
	margin-right: 12px;
	display: inline-block;
	vertical-align: middle;
	width: 24px;
	height: 24px;
}

div.appWindowCover {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 60;
	margin:0 ;
	padding: 0;
	background-color: #000000AA;
	display: none;
	opacity: 0;
	/*transition: opacity 500ms linear;	*/
	text-align: center;	
}

div.appWindowCover div {
	position: relative;
	background-color: #1976D2;
	color: #FFF;
	text-align: center;
	padding: 15px;
	height: auto;
	width: 100%;
	top: calc(50% - 80px);
	left: 0;
	box-sizing: border-box;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);	
	/*transition: background-color 300ms linear;*/
}


div.appWindowCoverAlert {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 62;
	margin:0 ;
	padding: 0;
	background-color: #000000AA;
	display: none;
	opacity: 0;
	/*transition: opacity 500ms linear;	*/
	text-align: center;	
}

div.appWindowCoverAlert div {
	position: relative;
	background-color: #1976D2;
	color: #FFF;
	text-align: center;
	padding: 15px;
	height: auto;
	width: 100%;
	top: calc(50% - 80px);
	left: 0;
	box-sizing: border-box;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);	
	/*transition: background-color 300ms linear;*/
}

/*div.appWindowCoverAlert h3 {
	width: 600px;
	text-align: left;
	border: 1px solid #000;
}

div.appWindowCoverAlert h5 {
	width: 600px;
	text-align: left;
	border: 1px solid #000;
}*/

div.appWindowCoverAlert button {
	background-color: transparent;
	border: 1px solid #FFFFFFCC;
	border-radius: 6px;
	color: #FFFFFFEE;
	font-size: 14px;
	font-weight: 500;
	height: 32px;
	vertical-align: middle;
	outline: none;
	padding: 3px 16px;
	margin: 9px;
	min-width: 96px;
	max-width: 192px;
}

div.appWindowCoverAlert button:hover {
	background-color: #00000033;
}

div.appWindowCoverAlert div.MsjNotifica {
	background-color: #2E7D32;
	color: #FFF;
}

div.appWindowCoverAlert div.MsjError {
	background-color: #D32F2F;
	color: #FFF;
}


div.appWindowCoverAlert div.MsjAlerta {
	background-color: #FBC02D;
	color: #FFF;
}

div.appWindowCoverAlert div.MsjAlerta button {
	border: 1px solid #000000CC;
	color: #000000CC;
}




div.appFormCover {
	background-color: rgba(0,0,0,0.4);
	width: 100%;
	/*height: calc(100% - 20px);*/
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 55;
	margin:0 ;
	padding: 0;
	display: none;
}

div.appFormCover form {
	position: relative;
	background-color: #F7F4F3;
	top: 100px;
	left: 100px;
	border-radius: 5px;
	box-sizing: border-box;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);	
}



/*--------------------------------------------*/
form {
	/*background-color: #F4F5F7;*/
	background-color: #F7F4F3;
	/*border-top: 1px solid #FFF;*/
	text-align: center;
	box-sizing: border-box;
	overflow: auto;
	/*padding: 6px; */
	-webkit-overflow-scrolling: touch;
}

form.formRPRT {

}

form.formINPT {
	
}

form.formCNSL {
	
}

form div {
	background-color: #FFFFFF;
	/*border: 1px solid #EAEBED;*/
	border: 1px solid #FFFFFF;
	border-radius: 9px;
	box-sizing: border-box;
	display: inline-block;
	margin: 6px;
 	text-align: center;
	vertical-align: top;
}

form.formRPRT div {
	margin: 0;
	border-radius: 0;
}


form.formINPT div {
	/*background-color: #F4F5F7;*/
	background-color: #F7F4F3;
	border-color: transparent;
}

form p {
	display: block;
	/*background-color: #FFFFAA;*/
	color: #333;
	font-size: 13px;
	min-height: 18px;
	margin:0;
}

form em {
	font-size: 13px;
	background-color: transparent;
	color: #333;
	padding: 2px 4px;	
	display: inline-block;
	border: 1px solid #CCC;
	border-radius: 3px;
	font-style: normal;
}

form big {
	font-size: 21px;
	color: #000;
	padding: 3px 0;	
	opacity: 0.8;
}

form samp {
	font-size: 14px;
	color: #00000077;
	font-weight: normal;
	padding: 3px 0;	
}

/*form small {
	font-size: 11px;
	color: #333;
	padding: 3px 0;	
	opacity: 0.8;
}*/

span.txtIndex {
	font-size: 48px;
	color: #222;
	padding: 3px 0;		
}

form button {
	background-color: #E8EAF655;
	border: 1px solid #3F51B555;
	border-radius: 5px;
	color: #3F51B5;
	font-size:12px;
	font-weight: bold;
	height: 28px;
	padding: 6px 12px ;
	margin: 0;
	vertical-align: middle;
	outline: none;
	text-align: center;
	min-width: 64px;
	max-width: 240px;
	width: auto;
	text-transform: uppercase;
	/*transition: background-color 0.5s ease, color 0.5s ease ;*/
}


form button:hover {
	background-color: #3F51B5;
	color: #FFFFFFEE;
}

form button:active {
	border-color: #5C6BC0;
	background-color: #283593;
}


form button:disabled {
	opacity: .2;
	background-color: transparent;
}


div.divSearchClose {
	border: none;
	background-color: transparent;
	width: 24px;
	height: 24px;
	position: absolute;
	top:0;
	left:0;
	display: none;
	overflow: hidden;
	margin:0;
	padding: 0;
	text-align: left;
}

div.divSearchClose button {
	background-color: transparent;
	margin:0;
	min-width: 24;
	width: 24px;
	height: 24px;
	padding: 0;
	box-sizing: border-box;
	opacity: 1;
}

div.divSearch {
	/*border: 1px solid #B5BBBE;*/
	background-color: #FFF;
	border: 1px solid #1F76E2;
	border-top-color: #FFF;
	border-radius: 0 0 7px 7px;
	/*width: 600px;
	height: 300px;*/
	min-width: 200px;
	max-height: 360px;
	min-height: 34px;
	position: absolute;
	top:0;
	left:0;
	display: none;
	overflow: hidden;
	box-shadow: 0px 3px 6px 1px rgba(0,0,0,.4);	
}

div.divSearch table {
	background-color: transparent;
}

div.divSearch table td {
	vertical-align: middle;
}

div.divSearch button {
	min-width: 32px;
	width: 32px;
}

div.divSearch b {
	background-color: #FFEB3B;
	color: #111;
}

div.divSearchTitle {
	background-color: transparent;
	border: none;
	box-sizing: border-box;	
	color: #000;
	display: block;
	font-size: 14px;
	font-weight: bold;
	margin: 0;
	padding: 3px;
	text-align: left;
	width: 100%;
}

div.divSearch span {
	display: inline-block;
	vertical-align: middle;
}

div.divSearch input[type="checkbox"] {
	display: inline-block;
	vertical-align: middle;
}

div.divSearchTitle button {
	background-color: transparent;
	border: none;
	height: 18px;
	float: right;
	padding: 0 3px;
}

div.divSearchFilter {
	border: none;
	border-top: 1px solid #CCC;
	background-color: #FFF;
	bottom: 0;
	box-sizing: border-box;
	display: none;
	font-size: 12px
	font-weight: bold;
	height: 68px;
	left:0;
	margin:0;
	overflow: hidden;
	padding: 0 6px;
	position: absolute;
	text-align: left;
	width: 200px;
}

div.divSearchFilter span {
	display: inline-block;
	width: 50%;
	vertical-align: middle;
	height: 30px;
}

div.divSearchFilter span p {
	display: inline-block;
	width: 50%;
	vertical-align: middle;
	color: #333;
	background-color: transparent;
	font-weight: bold;
}

div.divSearchFilter button {
	height: 30px;
	background-color: #EEE;
	margin: 0 0 0 6px;
	font-size: 12px;
	font-weight: bold;
	width: auto;
	min-width: 30px;
	vertical-align: middle;
}

div.divSearchFilter button:hover {
	background-color: #1193FF;
	color: #FFF;
}

/*div.appButtonBar button.btnSave {
	border:none;
	border-radius: 4px;
	color: #EEE;
	font-size:14px;
	vertical-align: middle;
	outline: none;
	padding: 0 16px;
	min-width: 64px;
	max-width: 240px;
	width: auto;
}*/



button.btnAuxClose {
	background-color: #555555;
	border: none;
	height: 22px;
	width: 22px;
	padding: 0 3px;
	position: absolute;
	/*border-radius: 0 0 0 4px;*/
	right: 0;
	top: 0;
	text-transform: none;
	opacity: .8;
}

button.btnAuxClose:hover {
	opacity: 1;
}


div.divFilter {
	text-align: center;
	background-color: transparent;
	box-shadow: none;
	margin: 0;
	padding: 0;
	margin-bottom: 6px;
	border: none;
}

div.divFilter fieldset {
	margin-top: 0;
	padding-top: 0;
	background-color: transparent;
	box-shadow: none;
	margin-bottom: 0;
	width: auto;
	border: none;
}

div.divFilter legend {
	border: none;
	box-sizing: border-box;
	color: #00a6e3;
	font-size: 11px;
	font-weight: 500;
	margin: 0 0 0 0;
	padding: 3px;  
	text-align: left;
	letter-spacing: 2px;
	width: 100% ;
	opacity: 1;
	text-transform: uppercase;
	background-color: transparent;
	margin-bottom: 0;
}

div.divFilter span {
	padding: 1px 3px;
	background-color: transparent;
	border-color: transparent;
}

div.divFilter label {
	text-align: center;
	color: #000000BB;
}

div.divFilter label strong {
	font-size: 12px;
}

div.divFilter select {
	font-size: 13px;
	background-color: #FFFFFF;
	border-color: #EAEBED;
}

div.divFilter input {
	font-size: 13px;
	background-color: #FFffff;
	border-color: #EAEBED;
}

div.divFilter span {
	background-color: transparent;
}

div.divFilter span p {
	background-color: transparent;
}


div.divFilter button {
	font-size: 13px;
	font-weight: normal;
	background-color: #FFFFFF;
	color: #303538;
	padding: 1px 2px;
	text-transform: none;
	height: 25px;
	margin: 0 1px;
	border-color: #EAEBED;
}

div.divFilter button:hover {
	background-color: #E8EAF6;
}

div.divFilter button.btnCompuestoLeft {
	margin:0;
	padding: 0;
	border-style: solid none solid solid;
	background-color: #FFFFFF;
	opacity: 1;
}

div.divFilter button.btnCompuesto {
	margin: 0;
	padding: 0;
	border-style: solid solid solid none;
	background-color: #FFFFFF;
	opacity: 1;
}


span.spnDivAuxFooter {
	display: block;
	background-color: #CCC;
	position: absolute;
	bottom: 0px;
	left: 0px;
	padding: 3px;
	width: 100%;
}

div.divEditorToolBar {
	background-color: transparent;
	padding: 0;
	border:none;
	width: 100%;
	text-align: right;
	box-sizing: border-box;
}

div.divEditorToolBar button {
	background-color: transparent;
	border: none;
	border-radius: 50%;
	height:32px;
	padding: 4px ;
	margin: 0;
	vertical-align: middle;
	outline: none;
	text-align: center;
	min-width: 32px;
	width: 32px;
}

div.divEditorToolBar button:hover {
	background-color: #E8EAF6;
}

div.divEditorToolBar button:active {
	background-color: #0043AA;
}

div.divEditorRtf {
	background-color: #F2F4F5;
	border-style: solid;
	border-color: transparent transparent #B5BBBE transparent;
	border-width: 1px;
	border-radius: 4px 4px 0 0;
	box-sizing: border-box;
	color: #333;
	font-size: 14px;
	font-weight: 500;
	margin: 0;
	min-height: 400px;
	padding: 6px;
	width: 100%;
	max-height: 70%;
	overflow-y: auto;
	text-align: left;
	box-sizing: border-box;
}

div.divEditorRtf img {
	max-width: 100%
}

/*--------------------------------------------*/


/*--------------------------------------------*/

table.appDataTable {
	background: #FFF;
	border: none;
	border-collapse: collapse;
	box-sizing: border-box;	
	color: #303538;
	margin: 0;
	opacity: 1;
	table-layout: fixed;
	width: 100%;
}

table.appDataTable th {
    position: sticky;
    top: 0;
    background-color: #FFFFFF;
	border-bottom: 1px solid #CCC;
    color: #333;
    font-size: 13px;
    font-weight: 500;
    padding: 9px 6px;
	text-align: left;
}

table.appDataTable th a {
	color: #111;
	vertical-align: middle;
}

table.appDataTable th a img {
	vertical-align: middle;
	padding-bottom: 2px;
}

table.appDataTable tbody tr {
	border-bottom: 1px solid #DDD;
	padding: 0;
	margin: 0;
}

table.appDataTable tbody tr:hover {
	background-color: #E8EAF6;
	/*background-color: #EEEEEE;*/
}

table.appDataTable tbody tr.trSelected {
	background-color: #DAECFF;
}

table.appDataTable td {
	font-size: 13px;
    font-weight: 400;
	text-align: left;
	vertical-align: top;
	padding: 9px 6px;
	border-left: none;
}

table.appDataTable td img {
	max-width: 100%;
}

/*-------*/

table.appObjectTable {
	background: #FFF;
	border: none;
	border-collapse: collapse;
	box-sizing: border-box;	
	color: #303538;
	margin: 0;
	opacity: 1;
	table-layout: fixed;
	width: 100%;
}

table.appObjectTable th {
    position: sticky;
    top: 0;
    background-color: #FFFFFF;
	border-bottom: 1px solid #CCC;
    color: #333;
    font-size: 13px;
    font-weight: 500;
    padding: 9px 6px;
	text-align: left;
	/*z-index: 54;*/
}

table.appObjectTable th a {
	color: #111;
	vertical-align: middle;
}

table.appObjectTable th a img {
	vertical-align: middle;
	padding-bottom: 2px;
}

/*table.appDataTable tbody tr {
	border-bottom: 1px solid #DDD;
	padding: 0;
	margin: 0;
}

table.appDataTable tbody tr:hover {
	background-color: #E8EAF6;
}

table.appDataTable tbody tr.trSelected {
	background-color: #DAECFF;
}*/


table.appObjectTable td {
	font-size: 14px;
    font-weight: 500;
	text-align: left;
	vertical-align: top;
	padding: 2px 4px;
}

table.appObjectTable td img {
	max-width: 100%;
}


/*-----*/

table.appGridTable {
	background: transparent;
	border: none;
	border-collapse: collapse;
	box-sizing: border-box;	
	color: #222;
	margin: 0;
	opacity: 1;
	table-layout: fixed;
	width: 100%;
}

table.appGridTable tr {
	/*border-bottom: 1px solid #FFF;*/
	padding: 0;
	margin: 0;
}

table.appGridTable th {
	font-size: 12px;
	font-weight: bold;
	padding: 9px 3px;
	text-align: left;
}

table.appGridTable td {
	font-size: 15px;
	text-align: left;
	vertical-align: top;
	padding: 1px;
	background-color: transparent;
}

table.appGridTable td input {
	border-radius: 0;
}

table.appGridTable td select {
	border-radius: 0;
}

table.appGridTable td textarea {
	border-radius: 0;
}

table.appGridTable td p {
	background-color: transparent;
	padding: 6px;
}
/*--------------------------------------------*/


/*--------------------------------------------*/
fieldset {
	background-color: transparent;
	box-shadow: none;
	margin: 12px 0;
	box-sizing: border-box;
	display: inline-block;
	overflow-y: visible;
	margin: 0;
	padding: 0;
	text-align: left;
	vertical-align: top;
	border: none;
	border-bottom: 1px solid #EAEBED;
	padding-bottom: 6px;
}

form.formINPT fieldset{
	border-bottom: none;	
}


fieldset div.divTableObj {
	display: inline-block;
	margin: 0;
	padding: 0;
}

fieldset div.divTableCnt {
	overflow: auto;
	margin: 0;
	box-shadow: none;
	border: none;
}

tfoot {
	text-align: left;
}

tfoot caption {
	border: none;	
	width: auto;
	margin: 1px;
	text-align: left;
}

span.appFormLegend {
	box-sizing: border-box;
	color: #3F51B5;
	display: block;
	font-size: 14px;
	font-weight: 500;
	margin: 0 0 3px 0;
	padding: 12px 9px 6px 9px ;  
	text-align: left;
	width: 100% ;
	text-transform: uppercase;
}

form.formINPT span.appFormLegend{
	border-bottom: 1px solid #3F51B5;	
}



span.appFormFltFooterLft {
	display: inline-block;
	/*border-top: 1px solid #AAA;*/
	width: 50%;
	/*height: 48px;*/
	padding-left: 12px;
	text-align: left;
	box-sizing: border-box;
}

span.appFormFltFooterRght {
	display: inline-block;
	/*border-top: 1px solid #AAA;*/
	width: 50%;
	/*height: 48px;*/
	padding-right: 12px;
	text-align: right;
	box-sizing: border-box;
}

span.appFormCnsFooterLeft {
	display: inline-block;
	width: 30%;
	text-align: left;
}

span.appFormCnsFooterCenter {
	display: inline-block;
	width: 40%;
	text-align: center;
}

span.appFormCnsFooterRight {
	display: inline-block;
	width: 30%;
	text-align: right;
}


button.btnLink {
	border-style: none;
	color: #007Aff;
	font-size:11px;
	font-weight: bold;
	height:24px;
	padding: 6px;
	margin: 6px 0;
	vertical-align: middle;
	outline: none;
	text-align: left;
	opacity: 1;
}

button.btnLink:active {
	text-decoration: underline;
}

button.btnLink:focus {
	text-decoration: underline;
}

button.btnLink:hover {
	text-decoration: underline;
}


button.btnDelete {
	background-color: transparent;
	/*border-style: solid;
	border-width: 1px 1px 2px 1px;
	border-color: #D33 #A33 #D33 #D33 ;
	border-color: #AAA #AAA #999 #AAA ;*/
	border:none;
	/*border-right: 1px solid #BBB;*/
	border-radius: 0;
	color: #FFF;
	font-size:15px;
	height:36px;
	padding: 6px 0;
	width: 40px;
	margin: 0;
	vertical-align: middle;
	outline: none;
}

button.btnDelete:active {
	background-color: #D4D4D4;
	box-shadow: inset 0 0 6px #777;	
}

button.btnDelete:hover {
	background-color: #D4D4D4;
}


div.appButtonBar button.btnDiscard {
	background-color: transparent;
	border: 1px solid #1F76E2;
	border-radius: 5px;
	color: #1F76E2;
	font-size: 13px;
	font-weight: 500;
	height:32px;
	padding: 0px 16px ;
	margin: 2px;
	vertical-align: middle;
	outline: none;
	text-align: center;
	min-width: 64px;
	max-width: 240px;
	width: auto;
}

div.appButtonBar button.btnDiscard:active {
	box-shadow: inset 0 0 6px #555;	
}

div.appButtonBar button.btnDiscard:hover {
	background-color: #E8EAF6;
}

div.appButtonBar button.btnSave {
	background-color: #1F76E2;
	border:none;
	border-radius: 5px;
	color: #EEE;
	font-size: 13px;
	font-weight: 700;
	height: 32px;
	vertical-align: middle;
	outline: none;
	padding: 0 16px;
	margin: 2px;
	min-width: 64px;
	max-width: 240px;
	width: auto;
}

div.appButtonBar button.btnSave:hover {
	background-color: #1193FF;
	color: #FFF;
}

div.appButtonBar button.btnSave:active {
	box-shadow: inset 0 0 6px #333;	
}



button.btnSave {
	background-color: #1F76E2;
	border:none;
	border-radius: 4px;
	color: #EEE;
	font-size:14px;
	vertical-align: middle;
	outline: none;
	min-width: 64px;
	max-width: 240px;
	width: auto;
}

button.btnSave:hover {
	background-color: #1193FF;
	color: #FFF;
}

button.btnSave:active {
	box-shadow: inset 0 0 6px #333;	
}



button.btnAddRow {
	border-style: solid;
	border-radius: 5px;
	border-color: transparent;
	border-width: 1px;
	color: #007Aff;
	font-size:11px;
	font-weight: bold;
	height: 28px;
	width: 128px;
	padding: 6px 6px 6px 24px ;
	margin: 1px 30px;
	vertical-align: middle;
	outline: none;
	text-align: left;
	background: #E8EAF6 url('../_images/add_blue_18dp.png') no-repeat 4px center ;
	opacity: 1;
}

button.btnAddRow:active {
	background-color: #E8EAF6;
	text-decoration: underline;
}

button.btnAddRow:focus {
	background-color: #E8EAF6;
	border-color: #007Aff;
	color: #007Aff;
	/*background-color: #EEE;
	text-decoration: underline;
	border-color: #AAA;*/
}

button.btnAddRow:hover {
	border-color: #007Aff;
	color: #007Aff;
	background-color: #E8EAF6;
	/*background-color: #FFF;
	color: #007Aff;
	text-decoration: underline;*/
}

button.btnEditRow {
	border: 1px solid transparent;
	border-radius: 5px;
	background: #E8EAF6 url('../_images/pencil-circle-outline_on-light_24dp.png') no-repeat center center ;
	color: #007Aff;
	font-size:11px;
	font-weight: bold;
	min-height: 28px;
	height: calc(100% - 2px);
	margin: 1px 0;
	outline: none;
	text-align: left;
	opacity: 1;
	width: 28px;
	min-width: 28px;
}

button.btnEditRow:active {
	box-shadow: inset 0 0 6px #777;	
}

button.btnEditRow:focus {
	background: #E8EAF6 url('../_images/pencil-circle_on-light_24dp.png') no-repeat center center ;
	border-color: #E8EAF6;
	color: #007Aff;
}

button.btnEditRow:hover {
	background: #E8EAF6 url('../_images/pencil-circle_on-light_24dp.png') no-repeat center center ;
	/*background-color: #E8EAF6;*/
	/*text-decoration: underline;*/
}
/*--------------------------------------------*/


/*--------------------------------------------*/
/* CONTROLES */

span.spnInput {
	background-color: transparent;
	border-bottom: 1px solid #E1E2E4;
	box-sizing: border-box;
	display: inline-block;
	margin: 0;
	padding: 6px;
	vertical-align: top;
	width: 100%;
}

span.spnDisabled {
	background-color: transparent;
}

span.spnError {
	background-color: transparent;
}

span.spnError label {
	color: #B00020;
}

span.spnError input {
	border-color: #EF9A9A;
	background-color: #FFEBEE;
	/*padding-bottom: 4px;*/
}

span.spnError select {
	/*border-color: #D32F2F;*/
	background-color: #FFEBEE;
}

span.spnError textarea {
	/*border-color: #D32F2F;*/
	background-color: #FFEBEE;
}

span.spnSelected {
	background-color: transparent;
}

.cllDisabled {
	background-color: #F0F0F0;
}

.cllSelected {
	background-color: #FFFFFF;	
}

span.spnOutput {
	display: inline-block;
	margin: 1px 0;
	padding: 0 12px;
	width: 100%;
	background-color: transparent;
	box-sizing: border-box;
	font-size: 14px;
}

ul.ulDatos {
	width: 100%;
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: #FFF;
	box-sizing: border-box;
}

ul.ulDatos li {
	text-align: left;
	border-bottom: 1px solid #DDD;
	margin:0;
 	padding: 0 12px;	
	background: url('img/chevron-right_blue_24dp.png') no-repeat right center;
	box-sizing: border-box;
}

ul.ulDatos li a {
	display: block;
	font: 15px;
	padding: 10px 30px 10px 0;
	text-decoration: none;
}

td.spnError {
	background-color: #FFF;
}

td.spnError label {
	color: #B00020;
}

td.spnError input {
	border-color: #D32F2F;
	background-color: #FFEBEE;
	padding-bottom: 5px;
}

td.spnError select {
	border-color: #D32F2F;
	background-color: #FFEBEE;
}

td.spnError textarea {
	border-color: #D32F2F;
	background-color: #FFEBEE;
}


span.spnFilter {
	display: inline-block;
	margin: 0 0 0 1px;
	padding: 2px 12px;
	background-color: transparent;
	box-sizing: border-box;
	font-size: 12px;
	color: #222;
	max-width: 180px;
	height: 38px;
	overflow: hidden;
	text-overflow: ellipsis;
}

label {
	border: none;
	box-sizing: border-box;
	display: inline-block ;	
	color: #00000077;
	font-size: 11px;
	margin: 0;
	padding: 5px 6px;
	text-align:left;
	width: 100%;
	overflow: hidden;
	vertical-align: top;
}

label strong {
	color: #00000077;
	font-size: 13px;
	font-weight: 400;
}


span.spnInput label {
	color: #000000AA;
}

/*span.spnInput label strong {
	margin: 0;
	padding: 0 3px;
	color: #555B5E;
	font-weight: 500;
	font-size: 13px;
}*/


span.spnFilter label {
	font-size: 10px;
	color: #BBB;
	width: auto;
	display: block;
}

span.spnInput label.labelFocus {
	color: #05A;
}

span.spnInput label.labelFocus strong {
	color: #05A;
}


span.spnInput label.labelBlur {
	color: #000000AA;
}


span.spnInput label.lblHint {
	font-size: 10px;
	opacity: 1;
	margin-top: -2px;
	width: 30%;
	text-align: right;
}

span.spnInput label.lblError {
	color: #D50000;
}

span.spnInput label.lblError strong {
	color: #D50000;
}

/*span.spnInput button {
	border: none;
	padding: 0;
	margin: 0;
	background-color: transparent;
}

span.spnInput button:hover {
	text-decoration: underline;
}*/

/*span.spnOutput label {
	padding: 9px 0 0 3px;
	margin: 0;
}*/

span.spnOutput p {
	display: inline-block;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: 500;
	min-height: 16px;
	padding: 4px 6px;
	color: #414447;
	margin: 0;
	background-color: transparent;
	/*border: 1px solid #777;*/
}

span.spnOutput p img{
	max-width: 100%;
}

span.spnStatus {
	box-sizing: border-box;
	font-size: 11px;
	font-weight: bold;
	border: none;
	border-radius: 10px;
	padding: 1px 8px;
	/*margin: 6px;*/
	/*min-height: 20px;
	max-height: 40px;
	height: auto;*/
	display: inline-block;
	max-width: 200px;
	text-align: center;
	text-transform: uppercase;
}

span.spnStatusLst {
	font-size: 11px;
	font-weight: normal;
	border-radius: 9px;
	margin: 0;
	padding: 2px 10px;
	display: inline-block;
	text-transform: uppercase;
}
/*input[type=text]:focus + label {
	color: #F33;
}*/

input[type=hidden] {
	display: none;
}

input[type=text] {
	background-color: #FFFFFF;
	border-color: #EAEBED;
	border-style: solid;
	border-width: 1px;
	border-radius: 5px;
	box-sizing: border-box;
	color: #000000AA;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	outline: none;
	padding: 4px 7px;
	width: 100%;
}

input[type=text]:focus {
	border-color: #1F76E2;
	background-color: #E8EAF6;	
}

input[type=text]:disabled {
	background-color: transparent;
	border-color: #F0F1F3;
	color: #00000077;
}

input.inputFecha {
	background-repeat: no-repeat;
	background-position: calc(100% - 4px) 50%;
	background-image: url(../_images/calendar_black_18dp.png);
	padding-right: 26px;
}

input.inputBusqueda {
	background-repeat: no-repeat;
	background-position: calc(100% - 4px) 50%;
	background-image: url(../_images/magnify_on-light_18dp.png);
	padding-right: 26px;
}

input.inputBusquedaFocus {
	border: 1px solid #1F76E2;
	background-repeat: no-repeat;
	background-position: calc(100% - 4px) 50%;
	background-image: none;
	background-color: #FFF;
	padding-right: 26px;
	border-radius: 5px 5px 0 0;
	border-bottom-color: #FFF;
	box-shadow: 0px 3px 5px 1px rgba(0,0,0,.5);
}

input.inputBusquedaFocus:focus {
	background-color: #E8EAF6;	
	border-bottom-color: #FFF;
}

input.inputCompuesto {
	width: calc( 100% - 40px);	
	border-radius: 5px 0 0 5px;
	vertical-align: middle;
}

input[type=numeric] {
	border-style: solid;
	background-color: #FFFFFF;
	border-color: #EAEBEC;
	border-width: 1px;
	border-radius: 5px;
	box-sizing: border-box;
	color: #000000AA;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	outline: none;
	padding: 4px 7px;
	width: 100%;
	text-align: right;
	/*direction: rtl;*/
}

input[type=numeric]:focus {
	background-color: #E8EAF6;	
}

input[type=numeric]:disabled {
	background-color: transparent;
	color: #00000077;
}

input[type=numeric].inputSpinner {
	border-radius: 0;
	width: calc( 100% - 72px);
}


input[type=password] {
	background-color: #F4F4F4;
	border-color: #D4D4D4;
	border-style: solid;
	border-width: 1px;
	border-radius: 5px;
	box-sizing: border-box;
	color: #303538;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	outline: none;
	padding: 4px 7px;
	width: 100%;
}

input[type=password]:focus {
	background-color: #E8EAF6;	
}


input[type=file] {
	width: 120px;
	height: 30px;
	outline: none;
}

input[type=file]::before {
	content: 'SELECCIONAR';
	display: inline-block;
	background-color: #F2F4F5;
	border: 1px solid #2196F3;
	border-radius: 4px;
	color: #2196F3;
	font-size:12px;
	font-weight: bold;
	height:30px;
	padding: 8px 16px ;
	margin: 0 2px;
	vertical-align: middle;
	outline: none;
	text-align: center;
  	width: 118px;
	white-space: nowrap;
	box-sizing: border-box;
	-webkit-user-select: none;
}

input[type=file]:focus::before {
	background-color: #E8EAF6;
}

input[type=file]:hover::before {
	background-color: #E8EAF6;
}

input[type=file]:active::before {
	box-shadow: inset 0 0 6px #1976D2;
	background-color: #BBDEFB;	
}

input.listSearch {
	/*background-color: #ECEEEF;*/
	background-color: #FFF;
	background-repeat: no-repeat;
	background-position: 98% 50%;
	background-image: url(../_images/magnify_on-light_18dp.png);
	border-style: solid;
	border-color: #CCC;
	border-width: 1px;
	border-radius: 14px;
	box-sizing: border-box;
	color: #303538;
	margin: 0;
	outline: none;
	padding: 3px 30px 3px 12px;
	width: 100%;
	max-width: 300px;
	opacity: 1;
	font-size: 14px;
	font-weight: 500;
}

input.listSearch:focus {
	border: 1px solid #1F76E2;
	background-color: #FFF;	
}

select {
	-khtml-appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: #FFFFFF;
	background-image: url(../_images/chevron-down_black_24dp.png);
	background-repeat: no-repeat;
	background-position: right center;
	border-width: 1px;
	border-style: solid;
	border-color: #EAEBED;
	border-radius: 5px;
	box-sizing: border-box;
	color: #000000AA;
	font-size: 15px;
	font-weight: 500;
	margin: 0;
	outline: none;
	padding: 4px 26px 4px 7px;
	width: 100%;
}

select.sclNoValue {
	color: #F33;	
	background-color: #999;
}

select:focus {
	border-color: #1F76E2;
	background-color: #E8EAF6;
}

select:disabled {
	background-image: none;	
	background-color: transparent;
	border-color: #D5D8DA;
}

button.btnImagen {
	background-color: transparent;
	border-radius: 3px;
	padding: 1px 2px;	
	border: 1px solid transparent;
	height: 24px;
	overflow: hidden;
	vertical-align: middle;
}

button.btnImagen:hover {
	background-color: #D7D7D7;
}

button.btnCompuesto {
	background-color: #FFF;
	border-radius: 0 5px 5px 0;
	padding: 4px 3px;	
	border-style: solid;
	border-color: transparent;
	border-width: 1px;
	margin: 0 0 0 2px;
	height: 28px;
	width: 30px;
	max-width: 30px;
	min-width: 30px;
	display: inline-block;
	overflow: hidden;
	vertical-align: top;
	box-sizing: border-box;
	opacity: 0.5;
}

button.btnCompuesto:focus {
	border-color: #1F76E2;
	background-color: #E8EAF6;
}

button.btnCompuesto:hover {
	border: 1px solid #1F76E2;
	background-color: #E8EAF6;	
}

button.btnCompuestoLeft {
	background-color: #FFF;
	border-radius: 5px 0 0 5px;
	padding: 4px 3px;	
	border-style: solid;
	/*border-color: #DBDDE1 #ECEEEF #DBDDE1 #DBDDE1 ;*/
	border-color: transparent;
	border-width: 1px;
	margin: 0 1px 0 0;
	height: 28px;
	width: 31px;
	min-width: 31px;
	display: inline-block;
	overflow: hidden;
	vertical-align: top;
	box-sizing: border-box;
	opacity: 0.5;
}

button.btnCompuestoLeft:hover {
	border: 1px solid #1F76E2;
	background-color: #E8EAF6;	
}

textarea {
	background-color: #FFFFFF;
	border-style: solid;
	border-color: #EAEBED;
	border-width: 1px;
	border-radius: 5px;
	box-sizing: border-box;
	color: #303538;
	font-size: 14px;
	font-weight: 500;
	margin: 0;
	min-width: 150px;
	min-height: 96px;
	outline: none;
	padding: 6px;
	resize: none;
	width: 100%;
}

textarea:disabled {
	background-color: transparent;
	border-color: #F1F2F4;
	color: #00000077;
}

textarea:focus {
	border: 1px solid #1F76E2;
	padding-bottom: 5px;
	background-color: #E8EAF6;
}



option.optDefault {
	color: #999;
}

input[type=checkbox] {
	-khtml-appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url(../_images/checkbox-blank-outline_grey_24dp.png);
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	height: 28px;
	width: 28px;
	margin: 0;
	padding: 0;
	outline: none;
	vertical-align: middle;
}

label.lblCheck {
	display: inline-block;
	height: 28px;
	padding: 6px 2px 2px 2px;
	/*border: 1px solid #777;*/
	vertical-align: middle;
	color: #555;
	font-weight: 400;
	font-size: 14px;
	width: auto;
}


input[type=checkbox]:checked	 {
	background-image: url(../_images/checkbox-marked_blue_24dp.png);
}

input[type=checkbox].switch {
	-khtml-appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-image: url(../_images/toggle-switch-off_grey_32dp.png);
	background-repeat: no-repeat;
	background-position: center;
	display: inline-block;
	height: 24px;
	width: 28px;
	margin: 0;
	padding: 0;
	outline: none;
}

input[type=checkbox].switch:checked	 {
	background-image: url(../_images/toggle-switch_blue_32dp.png);
}

input[type=checkbox].chkGridDelete	 {
	background-image: url(../_images/minus-circle-outline_red_18dp.png);
	height: 28px;
	width: 28px;
}

input[type=checkbox].chkGridDelete:checked	 {
	background-image: url(../_images/minus-circle_red_18dp.png);	
}


input[type=radio] {
 	display: none;
}

input[type=radio] + label {
	background-color: #FFFFFF;
	border-color: #00000033;
	border-style: solid;
	border-width: 1px;
	color: #000000AA;
	font-size: 13px; 
	font-weight: 500;
	display: inline-block;
	margin: 0 1px;
	padding: 4px 18px; 
	text-align: center;
	vertical-align: middle;
	width: auto;
	height: 25px;
}

input[type=radio]:first-of-type + label {
	border-radius: 6px 0 0 6px;
}

input[type=radio]:last-of-type + label {
	border-radius: 0 6px 6px 0;
	border-style: solid;
}

input[type=radio]:checked + label {
	background-color: #E8EAF6;
	color: #303F9F;
	border-color: #303F9F;
}

output {
	background-color: #FFD;
	border-width: 1px 1px 2px 1px;
	border-style: solid;
	border-color: transparent;
	box-sizing: border-box;
	color: #111;
	font-size: 14px;
	margin: 0;
	outline: none;
	padding: 4px 0;
	width: 100%;
	height: 20px;
}

span.spnBlockValue {
	background-color: #E8EAF6;
	border: 1px solid #1F76E2;
	border-radius: 3px;
	color: #1F76E2;
	display: inline-block;
	font-size: 14px;
	margin: 1px 3px 1px 0;
	padding: 3px 0 3px 6px;
}

span.spnBlockValue button {
	border: none;
	padding: 2px;
	margin: 0;
	min-width: 14px;
	width: 14px;
	height: 14px;
	background: url(../_images/close_grey_12dp.png) no-repeat center center;
	outline: none;		
}

span.spnBlockValue button:hover {
	background: url(../_images/close_red_12dp.png) no-repeat center center;		
}



/*--------------------------------------------*/
/* CALENDARIO */
table.appCalendar {
	/*border: 2px solid #DDD;*/
	border-collapse: collapse;
	box-sizing: border-box;	
	color: #333;
	margin: 0;
	opacity: 1;
	padding-top: 6px;
	table-layout: fixed;
	width: 100%;
}

table.appCalendar button {
	min-width: 32px;
}

table.appCalendar tr {
	border-bottom: 1px solid #777;
}

table.appCalendar tbody tr {
	border-bottom: 1px solid #EEE;
}

table.appCalendar td {
	font-size: 13px;
	text-align: right;
	vertical-align: top;
	padding: 2px 0;
	text-align: right;
	background-color: #FFF;
	margin: 1px;
}

table.appCalendar td.clnDayName {
	font-size: 12px;
	font-weight: bold;
	padding: 4px 3px;
	text-align: center;
}

table.appCalendar td a {
	font-size: 13px;
	vertical-align: top;
	padding: 4px 3px;
	display: block;
	text-decoration: none;
	font-weight: normal;
	color: #333;
}

table.appCalendar td a:hover {
	background-color: #D0E0FF;
}

table.appCalendar td button {
	font-size: 13px;
	vertical-align: top;
	padding: 6px;
	display: block;
	text-decoration: none;
	color: #222;
	width: 32px;
	min-width: 28px;
	text-align: center;
	border: none;
	background-color: transparent;
	font-weight: normal;
	outline: none;
	opacity: 1;
	border-radius: 50%;
}

table.appCalendar td button:hover {
	background-color: #D0E0FF;
}

table.appCalendar td button:disabled {
	opacity: 0.5;
}

/*table.appCalendar td button.clnSelected {
	background-color: #CCC;
}*/

table.appCalendar td button.clnToday {
	font-weight: bold;
	background-color: #F1F2F4;
	color: #0077FF;
}

table.appCalendar td button.clnSelected {
	font-weight: bold;
	background-color: #0077FF;
	color: #FFF;
}

div.appCalendar {
	text-align: center;
	width: 320px;
	display: none;
}

div.appCalendar input[type=radio] {
 	display: none;
}

div.appCalendar input[type=radio] + label {
	background-color: transparent;
	border: 1px solid #CCC;
	border-radius: 3px ;
	color: #555;
	font-size: 13px; 
	height: 42px;
	display: inline-block;
	margin: 2px;
	padding: 12px 3px; 
	text-align: center;
	text-transform: uppercase ;
	vertical-align: middle;
	width: 86px;
}

div.appCalendar input[type=radio] + label:hover {
	background-color: #D0E0FF;
}

div.appCalendar input[type=radio]:checked + label {
	background-color: #CBE4FB;
	border-color: #044D94;
	color: #1565C0;
	/*opacity: 1;*/
}

/*--------------------------------------------*/

.inputRtfFile {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
	margin:0;
}

.labelRtfFile {
	margin:0;
	padding: 3px 6px;
	background-color: transparent;	
	border: none;
	height: 36px;
	width: 36px;
	border-radius: 50%;
	border-color:#33F;
	opacity: 0.8;
	outline: none;
	content: url(../_images/image_black_24dp.png) ;

	/*background: url('../_images/ic_clear_white_18dp.png') no-repeat center center;*/

}


/* GRAFICAS */
.graph .labels.x-labels {
  text-anchor: middle;
}

.graph .labels.y-labels {
  text-anchor: end;
}


.graph {
  height: 370px;
  width: 500px;
}

.graph .grid {
  stroke: #aaa;
  stroke-dasharray: 0;
  stroke-width: 1px;
}

.labels {
  font-size: 13px;
}

.label-title {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 12px;
  fill: black;
}


/*-----------------*/

td.cellAzul {
	color: #3333FF;
}

td.cellRojo {
	color: #FF3333 ;
}

/*-----------------*/
td.tdNok {
	background-color: #FF174444;
	color: #B71C1C;
}

td.tdOk {
	background-color: #00C85344;
	color: #1B5E20;
}

td.tdNull {
	background-color: #DDDDDD77;
}

td.tdNa {
	background-color: #70747877;
}

td.tdProg {
	background-color: #1E88E5;
}
