/* Estilos generales */
html, body {
	height: 100%;
}

body {
	font-family: 'Quicksand', sans-serif;
}

/* Contenedor ancho */
.container-wide {
	margin: 0 auto;
	max-width: 1280px;
	width: 90%;
}

@media only screen and (min-width: 601px) {
	.container-wide {
		width: 90%;
	}
}

@media only screen and (min-width: 993px) {
	.container-wide {
		width: 90%;
	}
}

.breadcrum {
	color: #0a56d6;
}

.breadcrum a {
	color: #666666;
}

.breadcrum a:hover {
	color: #00337b;
}

h5.seccion {
	color: #00337b;
	font-size: 1.45rem;
	text-transform: uppercase;
}

h5.seccion .btn-floating,
p.titulo .btn-floating {
	background-color: #1f99ff;
}

h5.seccion .btn-floating i {
	font-weight: 600;
}

.switch label input[type="checkbox"]:checked + .lever {
	background-color: rgba(31, 153, 255, 0.5);
}

.switch label input[type="checkbox"]:checked + .lever:after {
	background-color: #1f99ff;
}

.switch label .lever:before {
	background-color: rgba(31, 153, 255, 0.15);
}


/* Márgenes y espacios */

/* Padding Zero */
.p0 {
	padding: 0!important
}


/* Padding Top */

.pt10 {
	padding-top: 10px!important
}

.pt15 {
	padding-top: 15px!important
}

.pt20 {
	padding-top: 20px!important
}

.pt30 {
	padding-top: 30px!important
}

.pt40 {
	padding-top: 40px!important
}

.pt50 {
	padding-top: 50px!important
}

.pt60 {
	padding-top: 60px!important
}

.pt70 {
	padding-top: 70px!important
}

.pt80 {
	padding-top: 80px!important
}

.pt90 {
	padding-top: 90px!important
}

.pt100 {
	padding-top: 100px!important
}

.pt110 {
	padding-top: 110px!important
}

.pt120 {
	padding-top: 120px!important
}

.pt130 {
	padding-top: 130px!important
}

.pt140 {
	padding-top: 140px!important
}


/* Padding Bottom */

.pb0 {
	padding-bottom: 0px!important
}

.pb10 {
	padding-bottom: 10px!important
}

.pb15 {
	padding-bottom: 15px!important
}

.pb20 {
	padding-bottom: 20px!important
}

.pb30 {
	padding-bottom: 30px!important
}

.pb40 {
	padding-bottom: 40px!important
}

.pb50 {
	padding-bottom: 50px!important
}

.pb60 {
	padding-bottom: 60px!important
}

.pb70 {
	padding-bottom: 70px!important
}

.pb80 {
	padding-bottom: 80px!important
}

.pb90 {
	padding-bottom: 90px!important
}

.pb100 {
	padding-bottom: 100px!important
}

.pb110 {
	padding-bottom: 110px!important
}

.pb120 {
	padding-bottom: 120px!important
}

.pb130 {
	padding-bottom: 130px!important
}

.pb140 {
	padding-bottom: 140px!important
}


/* Padding Left */

.pl0 {
	padding-left: 0px!important
}

.pl3 {
	padding-left: 3px!important
}

.pl5 {
	padding-left: 5px!important
}

.pl10 {
	padding-left: 10px!important
}

.pl20 {
	padding-left: 20px!important
}

.pl30 {
	padding-left: 30px;
}

.pl40 {
	padding-left: 40px;
}

.pl50 {
	padding-left: 50px;
}

.pl60 {
	padding-left: 60px;
}

.pl70 {
	padding-left: 70px;
}

.pl80 {
	padding-left: 80px;
}

.pl90 {
	padding-left: 90px;
}

.pl100 {
	padding-left: 100px;
}


/* Padding Right */

.pr0 {
	padding-right: 0px!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;
}

.pr50 {
	padding-right: 50px;
}

.pr60 {
	padding-right: 60px;
}

.pr70 {
	padding-right: 70px;
}

.pr80 {
	padding-right: 80px;
}

.pr90 {
	padding-right: 90px;
}

.pr100 {
	padding-right: 100px;
}

.pr110 {
	padding-right: 110px;
}

.pr120 {
	padding-right: 120px;
}

@media (min-width:1200px) {
	.pl-lg-50 {
		padding-left: 50px;
	}
	.pl-lg-80 {
		padding-left: 80px;
	}
}

@media (min-width:992px) {
	.pt-md-50 {
		padding-top: 50px;
	}
}


/* Margin Auto */

.mr-auto {
	margin: auto;
	float: none;
}


/* Margin Top */

.mt0 {
	margin-top: 0!important
}

.mt5 {
	margin-top: 5px!important
}

.mt10 {
	margin-top: 10px!important
}

.mt20 {
	margin-top: 20px!important
}

.mt30 {
	margin-top: 30px!important
}

.mt40 {
	margin-top: 40px!important
}

.mt50 {
	margin-top: 50px!important
}

.mt60 {
	margin-top: 60px!important
}

.mt70 {
	margin-top: 70px!important
}

.mt80 {
	margin-top: 80px!important
}

.mt90 {
	margin-top: 90px!important
}

.mt100 {
	margin-top: 100px!important
}

.mt110 {
	margin-top: 110px!important
}

.mt120 {
	margin-top: 120px!important
}


/* Margin Bottom */

.mb0 {
	margin-bottom: 0!important
}

.mb5 {
	margin-bottom: 5px!important
}

.mb10 {
	margin-bottom: 10px!important
}

.mb15 {
	margin-bottom: 15px!important
}

.mb20 {
	margin-bottom: 20px!important
}

.mb30 {
	margin-bottom: 30px!important
}

.mb40 {
	margin-bottom: 40px!important
}

.mb50 {
	margin-bottom: 50px
}

.mb60 {
	margin-bottom: 60px
}

.mb70 {
	margin-bottom: 70px
}

.mb80 {
	margin-bottom: 80px
}

.mb90 {
	margin-bottom: 90px
}

.mb100 {
	margin-bottom: 100px
}

.mb110 {
	margin-bottom: 110px
}

.mb120 {
	margin-bottom: 120px
}


/* Margin Left */

.ml0 {
	margin-left: 0!important;
}

.ml15 {
	margin-left: 5px;
}

.ml10 {
	margin-left: 10px;
}

.ml20 {
	margin-left: 20px;
}

.ml30 {
	margin-left: 30px;
}

.ml40 {
	margin-left: 40px;
}

.ml50 {
	margin-left: 50px;
}

.ml60 {
	margin-left: 60px;
}

.ml70 {
	margin-left: 70px;
}

.ml80 {
	margin-left: 80px;
}

.ml90 {
	margin-left: 90px;
}

.ml100 {
	margin-left: 100px;
}

.ml110 {
	margin-left: 110px;
}


/* Margin Right */

.mr0 {
	margin-right: 0!important
}

.mr5 {
	margin-left: 5px!important
}

.mr10 {
	margin-right: 10px!important
}

.mr20 {
	margin-right: 20px!important
}

.mr30 {
	margin-right: 30px!important
}

.mr40 {
	margin-right: 40px!important
}

.mr50 {
	margin-right: 50px!important
}

.mr60 {
	margin-right: 60px!important
}

.mr70 {
	margin-right: 70px!important
}

.mr80 {
	margin-right: 80px!important
}

.mr90 {
	margin-right: 90px!important
}

.mr100 {
	margin-right: 100px;
}

.mr110 {
	margin-right: 110px;
}

/* Botones */
.btn {
	height: 32px;
	line-height: 30px;
	text-transform: none;
	font-weight: 600;
}

.btn.width {
	width: 7rem;
}

.btn.default {
	background-color: #f7f7f7;
	color: #00337B;
}

.btn.default:hover {
	background-color: #1f99ff;
	color: #ffffff;
}

.btn.primary {
	background-color: #1f99ff;
}

.btn.primary {
	background-color: #1f99ff;
}

.btn.primary i {
	color: #ffffff !important;
}

.btn.secondary {
	background-color: #666666;
}

.dark-blue {
	background-color: #00337b;
	color: #ffffff;
}

a.dark-blue:hover, 
a.dark-blue:active {
	background-color: #0a56d6;
}

.mobile-fab-tip {
	position: fixed;
	right: 85px;
	width: auto;
	padding: 0px 0.5rem;
	text-align: right;
	background-color: #323232;
	color: #ffffff;
	border-radius: 2px;
}

datalist {
	position: absolute;
	width: 94%;
	margin-top: -0.5rem;
	background-color: #ffffff;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	z-index: 100;
}

datalist option {
	padding: 1rem;
	cursor: pointer;
}

datalist option:hover {
	background-color: rgba(0,0,0,0.08);
}

input[type="text"]:not(.browser-default).validate + label,
input[type="password"]:not(.browser-default).validate + label,
input[type="number"]:not(.browser-default).validate + label, 
input[type="email"]:not(.browser-default).validate + label {
	top: 0;
}

input[type="text"]:not(.browser-default):focus:not([readonly]) + label,
input[type="password"]:not(.browser-default):focus:not([readonly]) + label,
input[type="number"]:not(.browser-default):focus:not([readonly]) + label,
input[type="email"]:not(.browser-default):focus:not([readonly]) + label,
.input-field .prefix.active {
	color: #0a56d6;
}

input[type="text"]:not(.browser-default):focus:not([readonly]),
input[type="password"]:not(.browser-default):focus:not([readonly]),
input[type="number"]:not(.browser-default):focus:not([readonly]),
input[type="email"]:not(.browser-default):focus:not([readonly]) {
	border-color: #0a56d6;
	box-shadow: 0 1px 0 0 #0a56d6;
}

[type="radio"]:checked + span::after, 
[type="radio"].with-gap:checked + span::after {
	background-color: #1f99ff;
	border-color: #1f99ff;
}

.input-field.file-field {
	margin-top: 0;
}

.input-field.file-field .btn {
	margin-top: 12px;
	height: 32px;
	line-height: 30px;
	background-color: #1f99ff;
}

.input-field .postfix {
	position: absolute;
	right: 0;
	width: 3rem;
	font-size: 2rem;
	transition: color .2s;
}

.modal {
	width: 40%;
	max-height: 80%;
}

.nowrap {
	white-space: nowrap;
}

.page-announce nav {
	background-color: transparent;
	box-shadow: unset;
}

.z-depth-4 {
	box-shadow: 0 8px 10px 1px rgba(0,0,0,0.5), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.3);
}

.side-nav a {
	color: #666666;
}

.side-nav .collapsible-header, 
.side-nav.fixed .collapsible-header {
	padding: 0 32px;
}

.side-nav .userView {
	padding-bottom: 50px;
}

/* Input group */
.input-group {
	display: table;
}

.input-group input, .suffix {
    display: table-cell;
}

.suffix {
    width:1%;
}

.suffix a {
	height: 2.6rem;
}

.suffix a i {
	font-size: 1.4rem;
}


/* Datatables */
.dataTables_filter {
	display: none;
}

.dataTables_processing {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	margin-left: -50%;
	margin-top: -15%;
	padding-top: 8rem;
	background-color: rgba(255, 255, 255, 0.8);
	color: #0a56d6;
	font-size: 2rem;
	text-align: center;
}

.dataTable tbody tr td {
	border-bottom: 1px solid #999999;
}

.dataTables_paginate {
	text-align: right;
}

.dataTables_paginate .paginate_button  {
	cursor: pointer;
	padding: 0.1rem 0.5rem;
	margin: 0.2rem;
	border: 1px solid #1f99ff;
	border-radius: 4px;
}

.dataTables_paginate .current {
	background-color: #0a56d6;
	color: #ffffff;
	border-color: #0a56d6;
}


/* Validación */
#errores {
	display: none;
	color: #f44336;
	border: 1px solid #f44336;
	border-radius: 15px;
}

#errores ul {
	padding-left: 2rem; 
}

#errores ul li {
	list-style: disc;
	font-size: 1rem;
}

#errores ul li span {
	font-size: 1rem;
}

.input-field label {
	top: 0;
}

input.error {
	border-bottom-color: #f44336 !important;
	box-shadow: 0 1px 0 0 #f44336 !important;
}

span.error {
	color: #f44336;
	font-size: 0.9rem;
}


/* Página login */
body.login .container {
	height: 100%;
}

body.login {
	background: #1363cf;
	background: -moz-linear-gradient(left,  #1363cf 0%, #3e9ff7 100%);
	background: -webkit-linear-gradient(left,  #1363cf 0%,#3e9ff7 100%);
	background: linear-gradient(to right,  #1363cf 0%,#3e9ff7 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1363cf', endColorstr='#3e9ff7',GradientType=1 );
}

.card-login {
	display: flex;
}

.card-login-splash {
	position: relative;
	width: 100%;
}

.card-login-splash img {
	width: 100%;
	height: 100%;
}

.info-wrapper {
	position: absolute;
	display: flex;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.25);
	color: #00337b;
	justify-content: center;
	align-items: center;
}

.info-wrapper h3 {
	margin-bottom: 2rem;
	font-size: 2rem;
	font-weight: 600;
}

.info-wrapper p {
	font-size: 1.35rem;
}

.login-wrapper {
	height: 100%;
}

.login-wrapper .logo {
	margin: 1.8rem 0 3rem;
}

.login-wrapper .logo img {
	max-width: 60%;
}

.login-wrapper h4 {
	color: #00337b;
	font-size: 1.75rem;
	font-weight: 600;
}

.login-wrapper h5 {
	font-size: 1.35rem;
}

.login-wrapper form {
	margin-top: 3rem;
}


/* Home */
.intro {
	color: #00337b;
}

.intro:nth-child(2) {
	margin-top: -20px;
}

.intro .material-icons {
	color: #1f99ff !important;
	vertical-align: bottom;
}

.intro .saludo {
	margin-bottom: 0.8rem;
	color: #666666;
	font-size: 1.4rem;
}

.intro .usuario {
	margin-top: 0.8rem;
	font-size: 1.5rem;
	font-weight: 600;
}

.intro .firma {
	color: #333333;
	font-size: 0.85rem;
	line-height: 1rem;
}


/* Órdenes de servicio */
.card.orden .row {
	margin-bottom: 0;
}

.card.orden .titulo {
	margin-bottom: 0.5rem;
	color: #00337b !important;
	font-weight: 600;
	font-size: 1.25rem;
	text-transform: uppercase;
}

.card.orden .txt-info {
	padding: 0.4rem 1.2rem;
	margin-right: 3rem;
	background-color: #e3f2fc;
	font-size: 1.25rem;
	font-weight: 600;
	color: #00337b;
	border-radius: 8px;
}

.card.orden .txt-info span {
	margin-left: 0.5rem;
	color: #1f99ff;
}

.card.orden .instrucciones {
	color: #999999 !important;
}

.card.orden .tabs .tab, 
.card.modelos .tabs .tab,
.reportes_datos .tabs .tab {
	text-transform: none;
}

.card.orden .tabs .tab a, 
.card.modelos .tabs .tab a, 
.reportes_datos .tabs .tab a {
	color: #666666;
	font-size: 1rem;
	font-weight: 600;
}

.card.orden .tabs .tab span, 
.card.modelos .tabs .tab span,
.reportes_datos .tabs .tab span {
	display: inline-flex;
	width: 1.4rem;
	height: 1.35rem;
	background-color: #999999;
	border-radius: 50%;
	justify-content: center;
	align-items: center;
}

.card.orden .tabs .tab a.active, 
.card.modelos .tabs .tab a.active, 
.reportes_datos .tabs .tab a.active {
	color: #0a56d6;
}

.card.orden .tabs .tab a:focus, 
.card.orden .tabs .tab a:focus.active, 
.card.modelos .tabs .tab a:focus, 
.card.modelos .tabs .tab a:focus.active, 
.reportes_datos .tabs .tab a:focus, 
.reportes_datos .tabs .tab a:focus.active {
	background-color: transparent;
}

.card.orden .tabs .tab a.active span {
	background-color: #0a56d6;
	color: #ffffff;
}

.card.orden .tabs .indicator, 
.card.modelos .tabs .indicator, 
.reportes_datos .tabs .indicator {
	background-color: transparent;
}

.card.orden .dataTable th {
	color: #0a56d6;
}

.card.filtros .select-wrapper + label {
	top: -37px !important;
}

.rfc { 
	text-transform: uppercase;
}

.orden-servicio {
	color: #999999;
}

.orden-servicio h6 {
	padding-bottom: 0.25rem;
	border-bottom: 1px solid;
	color: #00337b;
	font-size: 1.1rem;
}

.orden-servicio strong {
	color: #333333;
}

.modal.bottom-sheet {
	background-color: #ffffff;
}

.modal.bottom-sheet h5 {
	margin-bottom: 0.5rem;
	color: #00337b !important;
	font-size: 1.25rem;
	font-weight: 600;
	text-transform: uppercase;
}

.modal.bottom-sheet h5 {
	color: #666666;
}

.modal.bottom-sheet .collapsible-header {
	background-color: #0a56d6;
	color: #ffffff;
	font-weight: 600;
}

.modal.bottom-sheet .collapsible-header span {
	padding: 0 1rem;
	font-size: 1.8rem;
	font-weight: 200;
}

.modal.bottom-sheet .collapsible-body {
	padding: 1.2rem 2rem;
	background-color: #e3f2fc;
	font-size: 0.9rem;
}

.modal.bottom-sheet .collapsible-body table tr {
	border-bottom: none;
}

.modal.bottom-sheet .collapsible-body table tr th {
	width: 12%;
	color: #666666;
	font-weight: 400;
}

.modal.bottom-sheet .collapsible-body table tr th, 
.modal.bottom-sheet .collapsible-body table tr td {
	padding: 8px 5px;
}


/* Mantenimiento */
.modal .select-wrapper + label {
	top: -37px !important;
}

.card.modelos .titulo {
	color: #999999;
	font-size: 1.15rem;
}

.card.modelos p.titulo .btn-floating {
	margin-top: -10px;
}

#foto-container > i {
	color: #cfd8dc;
}


/* Reportes */
.card-panel {
	position: relative;
	height: 220px;
}

.card-panel .titulo {
	font-weight: 600;
	text-transform: uppercase;
}

.card-panel .btn {
	position: absolute;
	bottom: 30px;
}

.card .card-content table div .ph-reporte {
	color: #999999;
}

.fecha_reporte {
	padding: 0.2rem 1.2rem;
	background-color: #00337b;
	color: #ffffff;
	font-size: 1.25rem;
}

.reportes_datos h6 {
	color: #00337b;
	font-weight: 600;
}
