/************************** Overrides de frameworks CSS **************************/
/* Inicio overrides Bootstrap y/o Materialize */

.navbar { /* Bootstrap */
	padding-top: 0;
	padding-bottom: 0;
}

.navbar-toggler { /* Bootstrap */
	padding: 0;
	font-size: 1.75rem;
	background-color: transparent;
	border: none;
	border-radius: 0;
}

nav { /* Materialize */
	box-shadow: 0 0 0 0 rgba(0,0,0,0); /* Para no afectar al selector original */
	color: #000000;
	background-color: #ffffff;
	width: 100%;
	height: 56px;
	line-height: 1;
}

nav a { /* Materialize */
	color: #008AD8; /* Color de laguía de estilos */
}

nav i,
nav .sidenav-trigger,
nav .sidenav-trigger i { /* Materialize */
	height: auto;
}

nav .sidenav-trigger { /* Materialize */
	float: none;
	margin: 0;
	z-index: 20;
}

nav .sidenav-trigger i { /* Materialize */
	line-height: 1;
}

nav i.material-icons { /* Materialize */
	font-size: 40px;
}

.sidenav { /* Materialize (offcanvas) */
	width: 80%;
	background-color: #0085DC;
	height: 100%;
}

.sidenav li {  /* Materialize */
	line-height: 1;
}

.sidenav li > a { /* Materialize */
	color: #ffffff;
	font-size: 14px;
	font-weight: 300;
	height: auto;
	line-height: 1;
	padding: 0;
}

.sidenav li > a:hover, /* Materialize */
.sidenav li.active > a { /* Selector original .sidenav li.active */
	background-color: #1a79c2;
}

.sidenav-overlay { /* Materialize */
	z-index: 40; 
}

.collapsible { /* Materialize */
	border: none;
	margin: 0;
	box-shadow: 0 0 0 0 transparent; /* Para no afectar al selector original */
}

.collapsible-header { /* Materialize */
	display: block;
}

.sidenav .collapsible-header,
.sidenav.fixed .collapsible-header { /* Materialize */
	height: auto;
	padding: 0;
}

.sidenav .collapsible-header:hover,
.sidenav.fixed .collapsible-header:hover { /* Materialize */
	background-color: transparent;
}

button:focus { /* Materialize */
	background-color: transparent;
}

.breadcrumb { /* Materialize */
	font-size: 0;
	color: transparent;
}

.breadcrumb i,
.breadcrumb [class^="mdi-"],
.breadcrumb [class*="mdi-"],
.breadcrumb i.material-icons { /* Materialize */
	float: none;
	font-size: 13px;
}

.breadcrumb { /* Bootstrap */
	padding: 0;
	margin-bottom: 0;
	background-color: transparent;
	border-radius: 0;
}

.collection {
	margin: 0;
}

.modal { /* Bootstrap */
	left: 50%;
	overflow: visible; /* Aplica para móvil */
}

.modal-dialog { /* Bootstrap */
	margin-right: auto;
	margin-left: auto;
}

.modal-header .close { /* Bootstrap */
	padding: 0;
	margin: 0;
}

.modal-content { /* Bootstrap */
    border: none;
	border-radius: 0;
}

.modal-header,
.modal-body { /* Bootstrap */
	padding: 0;
	border-bottom: none;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.modal .modal-footer {  /* Materialize */
	border-radius: 0;
	background-color: transparent;
	padding: 0;
	height: auto;
	width: auto;
	text-align: left;
}

.modal-footer { /* Bootstrap */
	padding: 0;
	border-top: none;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.modal-footer > * {
	margin: 0;
}

input:not([type]),
input[type="text"]:not(.browser-default),
input[type="password"]:not(.browser-default),
input[type="email"]:not(.browser-default),
input[type="url"]:not(.browser-default),
input[type="time"]:not(.browser-default),
input[type="date"]:not(.browser-default),
input[type="datetime"]:not(.browser-default),
input[type="datetime-local"]:not(.browser-default),
input[type="tel"]:not(.browser-default),
input[type="number"]:not(.browser-default),
input[type="search"]:not(.browser-default),
textarea.materialize-textarea { /* Materialize */
    border: none;
	height: 32px;
	font-size: 14px;
	margin: 0;
	padding: 0;
}

input:not([type]):focus:not([readonly]),
input[type="text"]:not(.browser-default):focus:not([readonly]),
input[type="password"]:not(.browser-default):focus:not([readonly]),
input[type="email"]:not(.browser-default):focus:not([readonly]),
input[type="url"]:not(.browser-default):focus:not([readonly]),
input[type="time"]:not(.browser-default):focus:not([readonly]),
input[type="date"]:not(.browser-default):focus:not([readonly]),
input[type="datetime"]:not(.browser-default):focus:not([readonly]),
input[type="datetime-local"]:not(.browser-default):focus:not([readonly]),
input[type="tel"]:not(.browser-default):focus:not([readonly]),
input[type="number"]:not(.browser-default):focus:not([readonly]),
input[type="search"]:not(.browser-default):focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]) { /* Materialize */
	border-bottom: none;
	-webkit-box-shadow: 0;
	box-shadow: 0;
}

select { /*Materialize */
	background-color: transparent;
	width: 100%;
	padding: 0;
	border: none;
	border-radius: 0;
	height: 32px !important;
}

.form-control:disabled, .form-control[readonly],
.form-control { /* Bootstrap */
	background-color: transparent;
}

.custom-select { /* Bootstrap */
	padding: 0;
	line-height: 1;
	vertical-align: middle;
	background: transparent url("../img/svg/down.svg") no-repeat right 0 center/10px 6px;
	border: none;
	border-radius: 0;
}

.custom-select[multiple],
select[multiple*="multiple"] { /* Bootstrap */
	height: 235px !important;
	padding-right: 0;
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) { /* Bootstrap */
	background-image: url("../img/svg/down.svg");
}

.input-field { /* Materialize */
	margin-top: 0;
	margin-bottom: 0;
}

.custom-control { /*Bootstrap */
	display: inline-block;
	min-height: 0;
}

.custom-control-label::before,
.custom-control-label::after { /* Bootstrap */
	top: .08rem;
	border: 1px solid #9e9e9e8c;
}

.custom-control-label:hover,
.custom-control-label:hover { /* Bootstrap */
	cursor: pointer;
}

.custom-switch .custom-control-label {
	padding-left: 2.5rem;
}

.custom-switch .custom-control-label::before,
.custom-switch .custom-control-input:checked ~ .custom-control-label::after { /* Bootstrap */
	border: none; /* Agregado para no afectar al selector genérico */
	top: -.08rem;
	left: -1.25rem;
	width: 66px; /* Definido por el svg */
	height: 20px; /* Definido por el svg */
	pointer-events: all;
	border-radius: .5rem;
	background: transparent url("../img/svg/off.svg") no-repeat right 0 center/66px 20px;
}

.custom-switch .custom-control-label::after,
.custom-switch .custom-control-input:checked ~ .custom-control-label::after { /* Bootstrap */
	border: none;
	background-color: transparent;
}


.custom-switch .custom-control-input:checked ~ .custom-control-label::after { /* Bootstrap */
	left: -2rem;
	background: transparent url("../img/svg/on.svg") no-repeat right 0 center/66px 20px;
}

.custom-control-input:focus ~ .custom-control-label::before { /* Bootstrap */
	box-shadow: none;
}

[type="radio"]:not(:checked),
[type="radio"]:checked {
    position: relative;
    opacity: 1;
    pointer-events: visiblePainted; /* Permite que sean marcados */
    width: 16px !important;
    height: 16px;
    cursor: pointer;
}

.custom-checkbox .custom-control-label::before {
	border-radius: 0;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
	background-image: url("../img/svg/ok.svg");
	background-size: cover;
}

.custom-control-input:checked ~ .custom-control-label::before {
	border-color: transparent;
	background-color: transparent;
}

.custom-radio .custom-control-label::after {
	border: none; /* Agregado para no afectar al selector genérico */
	border-radius: 50%; /* Agregado para no afectar al selector genérico */
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
	background-image: url('../img/svg/radiobutton.svg');
	border: 1px solid #9e9e9e8c; /* Agregado para no afectar al selector genérico */
}

.table__container--2 thead {
    background-color: transparent;
    border: none;
}

.table__container--2 tbody td {
    font-weight: 600;
}

.table__container--1 .table td,
.table__container--1 .table th,
.table__container--1 tr,
.table__container--2 .table td,
.table__container--2 .table th,
.table__container--2 tr {
    padding: .6rem;
    border-top: none;
    border-bottom: none;
}

.table__container--1 .table tr:nth-child(odd),
.table__container--2 .table tr:nth-child(odd) {
background-color: #F5F5F5;
}

.table__container--2 .table thead tr:first-child {
    background-color: transparent;
}
.nav-tabs,
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active,
.nav-tabs .nav-link {
    border: none;
    border-radius: 0;
    padding: 0;
}

.nav-tabs .nav-item {
    margin-bottom: 0;
}

.nav-tabs .nav-link.active {
    color: #75767E;
}

.nav-tabs .nav-link {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-tabs .nav-link i:before {
    font-size: 24px;
}

.card .card-content {
	padding: 20px;
	border-radius: 0;
}

.card .card-content .card-title,
.card .card-content .card-title i {
	line-height: 1;
	margin-bottom: 0;
}

.card .card-action a:not(.btn):not(.btn-large):not(.btn-small):not(.btn-large):not(.btn-floating),
.card .card-action a:not(.btn):not(.btn-large):not(.btn-small):not(.btn-large):not(.btn-floating):hover {
    color: #0085dc;
	text-transform: none;
	margin-right: 0;
}

.card .card-action {
	border-top: none;
	padding: 0;
}

.card .card-action:last-child {
	border-radius: 0;
}

textarea {
	height: auto; /* Permite que la altura se adapte de acuerdo al valor del atributo "rows" */
}
/* Fin overrides Bootstrap y/o Materialize */


/* Inicio overrides Vuetify */
.v-data-table > .v-data-table__wrapper > table > tbody > tr > td {
	padding-right: 5px !important; /* Para poder aplicar el override */
	padding-left: 5px !important; /* Para poder aplicar el override */
	height: auto !important; /* Cuando el texto en muy largo en móvil, evitará el desbordamiento */
}

.v-data-table__wrapper .v-text-field {
	padding-top: 0;
	margin-top: 0;
}

.v-data-table-header-mobile__wrapper .v-select {
	margin-bottom: 0 !important; /* Para poder aplicar el override */
}

.v-data-table-header-mobile__wrapper .theme--light.v-text-field > .v-input__control > .v-input__slot:before,
input[type=text]:not(.browser-default)[readonly="readonly"] {
	border: none !important; /* Aplica al selecte de la tabla (thead) */
}

.v-data-table__mobile-row {
	align-items: flex-start !important; /* Sólo aplica para vista móvil (Aliniación vertical) */
}

.v-data-table__mobile-row:first-child {
	align-items: center !important;
	justify-content: flex-start;
}

.v-data-table__mobile-row__cell {
	text-align: right;
	max-width: 160px;
	margin-bottom: 5px;
}

.v-menu__content.theme--light.menuable__content__active {
	top: 450px !important; /* Desplegable del "thead" en móvil */
}

.v-text-field .v-label--active { /* desplegable de la tabla (state: active) */
	transform: none !important;
}

/* Fin overrides Vuetify */