/* latin-ext
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(http://rw.polarik.com/ka/apps/rw/fonts/sourcesanspro.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
*/

body {
  padding: 70px 20px 20px 20px;
	font-size: 15px !important;	
	font-family: 'Source Sans Pro', sans-serif !important;
	line-height: 1.2 !important;
}

.footer {
	/*border-top: 1px solid #ccc;*/
	padding-top: 10px;
	margin-top: 10px;
}

.has-error {
	border: 1px solid red;
}

.error {
	color: red;
}

.menu-top a {
	color: #333;
}

.btn {
	font-size: 15px !important;
}

.form-control {
	font-size: 15px !important;
}

.button {
	font-size: 15px !important;
}

.dropdown-menu {
	font-size: 15px !important;
}

.desktop-icon {
	font-size: 60px !important; 
	/*color: #cc5800 !important;*/
}

.desktop-icon-red {
	font-size: 60px !important; 
	/*color: #cc5800 !important;*/
}

.desktop-icon-direct {
	font-size: 60px !important; 
	color: #666 !important;
}

.modal {
  text-align: center;
  padding: 0!important;
}

.modal:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -4px;
}

.modal-dialog {
	width: 50%;
  display: inline-block;
  text-align: left;
  vertical-align: middle;
}

.table td {
	padding: .35rem !important;

}

.table th {
	padding: .35rem !important;
	background: #cde7fe !important;

}


.ka_grid_filters_table td, .ka_grid_filters_table th {
	padding: 0 10 0 0 !important;
	line-height: 1 !important;
}

.pricelists_td {
	width: 50px;
	white-space: nowrap;
	padding-right: 20px;
}

.pricelists td {
	vertical-align: middle !important;
}

.table-responsive td {
	vertical-align: middle !important;
}

.form-control {
	color: black !important;
	border: 1px solid #999 !important;
}

label {
	font-weight: bold;
	color: #444 !important;
}

h1 { font-size: 1.5rem !important; font-weight2: bold !important; }
h2 { font-size: 1.4rem !important; font-weight2: bold !important; }
h3 { font-size: 1.3rem !important; font-weight2: bold !important; }
h4 { font-size: 1.2rem !important; font-weight2: bold !important; }
h5 { font-size: 1.0rem !important; font-weight: bold !important; }

.flat {
	border: 0 !important;
}

.sale_table {
	background: #ededed;
	border-radius: .45rem;	
	width: 100%;
}

.sale_table td {
	padding: 10px 10px 10px 10px;
	border-bottom: 1px solid #dedede;
}

.sale_table th {
	padding: 10px 10px 10px 10px;
	border-bottom: 1px solid #dedede;
	font-weight: bold;
}

.sale_units {
	width: 60px !important;
	text-align: center;
}

.sale_price {
	width: 80px !important;
	text-align: right;
}

.sale_summary td {
	/*font-size: 20px !important;
	font-weight: bold !important;*/
}

.sale_detail {
	font-weight: bold;
	padding-bottom: 5px;
}

.checkbox_al {
	width: 15px;
}

.balance {
	width: 500px;
}

.balance td {
	border-bottom: 1px solid #dedede;
}

.balance_amount {
	text-align: right;
}

.balance_section {
	font-weight: bold !important; 
	padding-top: 30px;
	color: #0275d8;
	font-size: 1.0rem !important;
	padding-bottom: 7px;
}

.stepwizard-step p {
	margin-top: 10px;    
}

.stepwizard-row {
    display: table-row;
}

.stepwizard {
    display: table;     
    width: 100%;
    position: relative;
		padding-top: 10px;
}

/*
.stepwizard-step button[disabled] {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

*/

.stepwizard-row:before {
	top: 26px;
	bottom: 0;
	position: absolute;
	content: " ";
	width: 100%;
	height: 1px;
	background-color: #ccc;
	z-order: 0;
}

.stepwizard-step {    
	display: table-cell;
	text-align: center;
	position: relative;
	width: 25%;
}

.btn-circle-prev {
  width: 36px;
  height: 36px;
  text-align: center;
  padding: 0;
	border: 0px;
  /*font-size: 12px;
  line-height: 1.428571429;*/
  border-radius: 18px !important;
	background: #629fcf !important;
	color: white !important;
}

.btn-circle-next {
  width: 36px;
  height: 36px;
  text-align: center;
  padding: 0;
	border: 0px;
  /*font-size: 12px;
  line-height: 1.428571429;*/
  border-radius: 18px !important;
	background: #dedede !important;
	color: black !important;

}

.user {
	padding: 7px;
	/*ackground: #ededed;*/
	border: 1px solid #dedede;
	border-radius: 3px !important;
}

.sn-return {
	width: 250px !important;
}

.bg_blue 		{ background:#629fcf !important; }
.bg_green 	{ background:#379b3c !important; }
.bg_green2 	{ background:#63BE7a !important; }
.bg_yellow 	{ background:#d9c855 !important; } /* #c4b22a; */
.bg_orange 	{ background:#CC6600 !important; }
.bg_red2 		{ background:#bd4646 !important; }
.bg_grey 		{ background:#434343 !important; }
.bg_grey2 	{ background:#6f6f6f !important; }
.bg_grey3 	{ background:#9f9f9f !important; }
.bg_brown 	{ background:#af9c7e !important; }
.bg_black 	{ background:#000000 !important; }

/* -------------------------------------------------------------------------------------------------------------- */
/* KA/Messages
/* -------------------------------------------------------------------------------------------------------------- */

.message_ok {
	background:#e1ffd1 url("../assets/ka_img/alert_ok.png") no-repeat 11px 12px;
	border-top:1px solid #c5f8ac;
	border-bottom:1px solid #c5f8ac;
	margin:10px 0px 10px 0px;
	padding:10px 10px 5px 35px;
	color:#468d3f; font-size:13px; font-weight:400;
	height: 40px;
}

.message_ok h3 { color:#468d3f; font-size:13px; font-weight:400; margin:0; padding:0; }
	
.message_ko {
	background:#ffd1d1 url("../assets/ka_img/alert_ko.png") no-repeat 13px 11px;
	border-top:1px solid #f8acac;
	border-bottom:1px solid #f8acac;
	margin:10px 0px 10px 0px;
	padding:10px 10px 5px 35px;
	color:#cc3300; font-size:13px; font-weight:400;
	height: 40px;
}

.message_ko h3 { color:#8d3f3f; font-size:14px; font-weight:400; margin:0; padding:0; }


/*
 * Global add-ons
 */

.sub-header {
  padding-bottom: 10px;
  border-bottom: 1px solid #eee;
}

/*
 * Top navigation
 * Hide default border to remove 1px line.
 */
.navbar-fixed-top {
  border: 0;
}

/*
 * Sidebar
 */

/* Hide for mobile, show later */
.sidebar {
  display: none;
}
@media (min-width: 768px) {
  .sidebar {
    position: fixed;
    top: 51px;
    bottom: 0;
    left: 0;
    z-index: 1000;
    display: block;
    padding: 20px;
    overflow-x: hidden;
    overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */
    background-color: #f5f5f5;
    border-right: 1px solid #eee;
  }
}

/* Sidebar navigation */
.nav-sidebar {
  margin-right: -21px; /* 20px padding + 1px border */
  margin-bottom: 20px;
  margin-left: -20px;
}
.nav-sidebar > li > a {
  padding-right: 20px;
  padding-left: 20px;
}
.nav-sidebar > .active > a,
.nav-sidebar > .active > a:hover,
.nav-sidebar > .active > a:focus {
  color: #fff;
  background-color: #428bca;
}


/*
 * Main content
 */

.main {
  padding: 20px;
}
@media (min-width: 768px) {
  .main {
    padding-right: 40px;
    padding-left: 40px;
  }
}


/*
 * Placeholder dashboard ideas
 */

.placeholders {
  margin-bottom: 30px;
  text-align: center;
}
.placeholders h4 {
  margin-bottom: 0;
}
.placeholder {
  margin-bottom: 20px;
}
.placeholder img {
  display: inline-block;
  border-radius: 50%;
}

/* -------------------------------------------------------------------------------------------------------------- */
/* KA/Colors
/* -------------------------------------------------------------------------------------------------------------- */

.blue 	{ color: #0275d8 !important; } /* #3366cc; */
.red 		{ color: #DD002E !important; } /* #bd4646 */
.orange { color: #FF6700 !important;} /* #CC6600; } */
.green 	{ color: #379b3c !important; }
.green2 { color: #909139 !important; }
.grey 	{ color: #5F5F5F !important; }
.grey2	{ color: #7D7D7D !important; }
.black 	{ color: #333333 !important; }
.brown 	{ color: #9F6000 !important; }
.yellow { color: yellow !important; }

.bg_blue 		{ background:#629fcf !important; }
.bg_green 	{ background:#379b3c !important; }
.bg_green2 	{ background:#63BE7a !important; }
.bg_yellow 	{ background:#d9c855 !important; } /* #c4b22a; */
.bg_orange 	{ background:#CC6600 !important; }
.bg_red2 		{ background:#bd4646 !important; }
.bg_grey 		{ background:#434343 !important; }
.bg_grey2 	{ background:#6f6f6f !important; }
.bg_grey3 	{ background:#9f9f9f !important; }
.bg_brown 	{ background:#af9c7e !important; }
.bg_black 	{ background:#000000 !important; }


.pt5 { padding-top: 5px !important; }
.pt7 { padding-top: 7px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }

.pb5 { padding-bottom: 5px !important; }
.pb7 { padding-bottom: 7px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }

.pr5 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr20 { padding-right: 20px !important; }
.pr30 { padding-right: 30px !important; }
.pr40 { padding-right: 40px !important; }

.pl5 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl20 { padding-left: 20px !important; }
.pl30 { padding-left: 30px !important; }
.pl40 { padding-left: 40px !important; }

.mt5 { margin-top: 5px !important; }
.mt7 { margin-top: 7px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }

.mb5 { margin-bottom: 5px !important; }
.mb7 { margin-bottom: 7px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }

.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr20 { margin-right: 20px !important; }
.mr30 { margin-right: 30px !important; }

.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml20 { margin-left: 20px !important; }
.ml30 { margin-left: 30px !important; }

.tal { text-align: left !important; }
.tac { text-align: center !important; }
.tar { text-align: right !important; }

.nw {
	white-space: nowrap !important;
}

.dp {
	display: none !important;
}

.w1 { width: 1% !important; }

.w100 {	width: 100% !important; }

.mw { max-width: 1100px !important; }

.wm { max-width: 1100px !important; }

.mw2 { max-width: 600px !important; }

.vat { vertical-align: top !important; }

.vam { vertical-align: middle !important; }

.vab { vertical-align: bottom  !important; }

.cb { clear:both; }

.bold { font-weight: bold; }

.card { border: 0px; }

.button {
	background: #373A3C !important;
	color: white;
	display: inline-block;
	font-weight: 400;
	line-height: 1.25;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid transparent;
	padding: .5rem 1rem;
	font-size: 1rem;
	border-radius: .25rem;
}

.bg-inverse {
    color: #fff!important;
    background-color: #0275d8 !important;
}

.btn {
	margin-bottom: 10px !important;
}


/*
========================================================================================================================
TOP
========================================================================================================================
Definición del elemento superior                                                                                      */

.top {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	background: #555; /* #f96a00; #0275d8; #FF6700*/
	z-index: 9999;
	padding: 0 20px;
}

@media screen and (max-width: 990px){
	.top select.shop_selector,
	.top select.box_selector {		
		width: calc( 50% - 30px);
		display: inline-block;
	}
	#form_payment .sale_table td,
	#form_payment #grid_1_table td {
		display: block;
		width: 100% !important;
	}	
		#form_payment .sale_table td input,
		#form_payment #grid_1_table td input{
			width: 100% !important;
		}
		#form_payment #grid_1_table thead {
			display: none;
		}
}

	/* TOP > TOGGLE
	======================================================================================================================
	Botón de menú que aparece cuando es una pantalla inferior a 1024px                                                  */

	#toggle {
		display: none;
		font-size: 21px;
		color: #fff;
		line-height: 52px;
		border: 0;
		margin: 0;
		background: transparent;
		cursor: pointer;
		outline: none;
	}

	@media screen and (max-width: 1023px) {
		
		#toggle {
			display: inline-block;
		}

	}


	/* TOP > MENÚ
	======================================================================================================================
	Definición de los estilos del menú                                                                                  */

	.menu {
		padding: 0;
		margin: 0;
	}
		.menu li {
			position: relative;
			display: inline-block;
			padding: 0 7px;
		}
			.menu li a {
				color: rgba(255,255,255,0.7);
				line-height: 54px;
				font-weight: 500;
				transition: all 0.3s ease;
				display: block;
			}
			.menu li a {
				cursor: pointer;
			}
			.menu li a:hover,
			.menu li a.actived {
				color: #fff;			
				font-weight: none;
				text-decoration: none;
			}
			.menu li a.actived:after {
				content: '';
				position: absolute;
				bottom: -2px;
				left: 50%;
				margin-left: -14px;
				width: 0;
				height: 0;
				border-style: solid;
				border-width: 0 14px 10px 14px;
				border-color: transparent transparent #fff transparent;
			}


	@media screen and (max-width: 1023px) {
		
																		.stats {
																			display: none;
																		}

		body:not(.opened) .menu {
			display: none;
		}

		body.opened {
			overflow: hidden;
		}
		body.opened .menu {
			position: fixed;
			top: 54px;
			left: 0;
			right: 0;
			bottom: 0;
			background: #fff;
			overflow-y: auto;
			text-align: center;
		}
			body.opened .menu li {
				padding: 0 5px;
				display: block;
				border-bottom: 1px solid #ddd;
			}
			body.opened .menu li a {
				color: #000;
				font-size: 20px;
				padding: 0;
			}
			body.opened .menu li a.actived {
				color: #0275d8;
			}
			body.opened .menu li a.actived:after {
				display: none;
			}

		.box_selector {
			width: calc( 100% - 50px );
		}

		.shop_selector {
			width: calc( 100% - 50px );
		}
		
		.contents_teacher {
			width: calc( 100% - 50px );
		}

	}

	.contents_teacher {
		color: white;
		float: right;
		border: 0;
		height: 25px;
		margin: 12px 0 12px 0;
	}
		
	/* TOP > CENTER SELECTOR
	======================================================================================================================
	Desplegable con los centros Educachild                                                                              */

	.box_selector {
		width: 100px;
		float: right;
		border: 0;
		height: 30px;
		margin: 12px 0 12px 0;
		cursor: pointer;
		margin-right: 20px;
	}
	
	.shop_selector {
		width: 150px;
		float: right;
		border: 0;
		height: 30px;
		margin: 12px 0 12px 0;
		cursor: pointer;
	}

	@media screen and (max-width: 1023px) {

		.box_selector {
			width: calc( 100% - 50px );
		}
		
		.shop_selector {
			width: calc( 100% - 50px );
		}

	}

	.stats_table {
	width: 1000px;
}

.stats_table td {
	padding: 5px 20px 5px 0;
	border-bottom: 1px solid #dedede;
}

.stats_table th {
	padding: 5px 50px 5px 0;
	border-bottom: 1px solid #dedede;
	font-weight: bold;
}

.stats_table a {
	text-decoration: none;
}


.stats {
	-moz-border-radius:5px; border-radius:5px; -webkit-border-radius:5px;
	padding: 5px 10px 10px 5px;
	/*background: #eeeeee; */
	/*width: 1200px;*/
	border: 1px solid #dedede;
	margin-top: 10px;
	margin-left: 0px;
	/*width:50%;*/
}

.stats a {
	text-decoration: none;
}

.btn_reduc {
    display: inline-block;
    font-weight: 400;
    /* line-height: 1.25; */
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: 0.1rem 1rem;
    font-size: 1rem;
    border-radius: .25rem;
}

.btn_reduc {
    margin-bottom: -2px !important;
}

/*
========================================================================================================================
999 HELPERS
========================================================================================================================
Clases de bootstrap que se utilizan de forma frecuente en todos los proyectos                                         */

body.dev:after {
  content: "dev";
  position: fixed;
  bottom: 0;
  left: 0;
  background: rgba(216, 26, 96, 1);
  pointer-events: none;
  color: #fff;
  padding: 3px 10px;
  font-family: Consolas;
  text-transform: uppercase;
  /*text-shadow: 1px 1px #333;*/
  font-size: 10px;
  font-weight: 600;
  z-index: 999;
} 
@media screen and (min-width: 1024px) {
	body.dev:after {
  	padding: 5px 15px;
  	font-size: 13px;
	}
	
}


.title_mobile
{
	padding-bottom:16px;
}

