::-webkit-scrollbar {
	width: 0.5rem;
	height: 0.5rem;
}

::-webkit-scrollbar-thumb {
	background: #5d6472;
	border-radius: 10px;
	height: 20px;
}

* {
	scrollbar-width: thin;
}

.dropdown .dropdown-content {
	box-shadow: 0px 1px 3px #040506 !important;
}

/*==========APP==========*/
body {
	overflow: hidden;
}

#app {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	display: grid;
	grid-template-columns: 250px 1fr;
	grid-template-rows: 1fr;
	overflow: hidden;
}

#app>#app-header .navbar {
	border-bottom: 2px solid #242933;
}

#app>#app-body {
	background-color: #efefef;
	overflow: auto;
	position: relative;
}

#app>#app-body .drawer {
	height: 100%;
}

/*==========NAV==========*/
#side-nav-wrapper {
	box-shadow: 0px 3px 10px #000000b3;
	position: relative;
	overflow: hidden;
}

#side-nav-wrapper>#side-nav-background {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	background-image: url('/images/bg-login.jpg');
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: -1;
}

#side-nav {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	overflow: hidden;
	padding: 20px 20px 20px 20px;
	display: grid;
	grid-template-rows: auto 1fr auto;
	position: relative;
	backdrop-filter: blur(9px);
	background-color: #191d24;
}

#side-nav>.header {
	overflow: hidden;
	border-bottom: 1px solid #efefef;
	padding-bottom: 20px;
}

#side-nav>.header>a>h1 {
	font-weight: bold;
	letter-spacing: 0.04em;
	font-size: 35px;
}

#side-nav>.body {
	overflow: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}

#side-nav>.body ul>li {
	position: relative;
	margin-bottom: 7px;
	padding: 5px;
	font-size: 13px;
}

#side-nav>.body ul>li>a:first-of-type {
	display: grid;
	grid-template-columns: 20px 1fr;
	grid-gap: 10px;
	align-items: center;
}

#side-nav>.body ul ul{
	padding-left: 20px;
	border-left: 1px solid #efefef;
	max-height: 0px;
	overflow: hidden;
	margin-right: -5px;
	margin-top: 0px;
}

#side-nav>.body ul ul.active{
	max-height: 1000px;
	margin-top: 10px;
}

#side-nav>.footer {
	padding-top: 20px;
	border-top: 1px solid #efefef;
}

#side-nav>.footer>.account {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-gap: 20px;
	width: 100%;
	align-items: center;
}

#side-nav>.footer>.account>.profile {
	display: grid;
	align-items: center;
	grid-template-columns: 40px 1fr;
	grid-gap: 20px;
}

#side-nav>.footer>.account>.profile>img {
	width: 100%;
	border-radius: 50%;
}

#side-nav>.footer>.account>.profile>.info>.name {
	font-size: 8px;
	font-weight: bold;
	text-transform: uppercase;
}

#side-nav>.footer>.account>.profile>.info>.username {
	font-size: 8px;
}

#side-nav>.footer>.account>a>i {
	font-size: 20px;
	color: #e74c3c;
}

/*==========LOADING==========*/
#loading {
	position: absolute;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 100000;
	background-image: url("/images/loading.gif");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 70px;
}

#loading.prepare {
	visibility: visible;
	opacity: 1;
	transition: opacity 0.5s, visibility 0.5s;
}

#loading.end-loading {
	visibility: visible;
	opacity: 1;
	visibility: hidden;
	opacity: 0;
}

/*==========NOTIFICACIONES==========*/
#notificaciones>li>.card {
	padding: 1.2rem;
	margin-bottom: 20px;
	cursor: pointer;
}

#notificaciones>li>.card>.card-body {
	padding: 0px;
}

#notificaciones>li>.card>.card-body .card-title {
	font-size: 1rem;
}

#notificaciones>li>.card>.card-body p {
	font-size: 0.9rem;
}

/*==========INCIDENCIAS==========*/
#connection-alert {
	display: none;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	color: #ff4d4d;
}

/*==========INCIDENCIAS==========*/
.icon::before {
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
}

.bomberos {
	background-color: #ff4d4d !important;
	color: #FFF !important;
}

.bomberos:hover {
	background-color: #d83d3d !important;
}

.icon-bomberos::before {
	font-family: "FontAwesome";
	content: "\f06d";
}

.policia {
	background-color: #17c0eb !important;
	color: black !important;
}

.policia:hover {
	background-color: #17add3 !important;
}

.icon-policia::before {
	font-family: "FontAwesome";
	content: "\e4f8";
}

.emergencia-medica {
	background-color: #32ff7e !important;
	color: #333 !important;
}

.emergencia-medica:hover {
	background-color: #29df6c !important;
}

.icon-emergencia-medica::before {
	font-family: 'FontAwesome';
	content: "\f0f9";
}

.informacion {
	background-color: #220077 !important;
	color: whitesmoke !important;
}

.informacion:hover {
	background-color: #220077 !important;
}

.icon-informacion::before {
	font-family: "Font Awesome 6 free";
	content: "\f06e";
}

.whatsapp-sos {
	background-color: #25D366 !important;
	color: #FFF !important;
}

.whatsapp-sos:hover {
	background-color: #25D366 !important;
}

.icon-whatsapp-sos::before {
	font-family: "Font Awesome 6 brands";
	content: "\f232";
}

.violencia-genero {
	background-color: #44346D !important;
	color: #FFF !important;
}

.violencia-genero:hover {
	background-color: #44346D !important;
}

.icon-violencia-genero::before {
	font-family: "FontAwesome";
	content: "\f221";
}

.alarma-comunitaria{
	background-color: #db7e40 !important;
	color: #FFF !important;
}

.alarma-comunitaria:hover {
	background-color: #db7e40 !important;
}

.icon-alarma-comunitaria::before {
	font-family: "FontAwesome";
	content: "\f0a1";
}

.adox{
	background-color: #d340db !important;
	color: #000000 !important;
}

.adox:hover {
	background-color: #d340db !important;
}

.icon-adox::before {
	font-family: "FontAwesome";
	content: "\f519";
}

/*========ESTADOS========*/
.pendiente {
	background-color: #fff200;
	color: #333;
}

.enviada {
	background: #4dc352;
	color: #333;
}

.enviada:hover {
	background: #40a345;
}

.pendiente:hover {
	background-color: #e4d800;

}

.en-curso {
	background-color: #7efff5;
	color: #333;
}

.en-curso:hover {
	background-color: #6ce7dd;
}

.finalizada {
	background-color: #4b4b4b;
	color: #FFF;
}

.finalizada:hover {
	background-color: #383838;
}

/*========BTN MINI========*/
.btn-circle.requiere-accion {
	background-color: red;
	color: #fff;
	margin-left: 10px;
}

.btn-mini {
	font-size: 12px;
	padding: 10px;
	line-height: 1;
	height: auto;
	min-height: inherit;
	font-weight: bold;
}

.btn-circle.btn-mini {
	width: auto;
	padding: 15px;
}

@media(max-width: 1400px) {
	.btn-mini {
		font-size: 10px;
	}
}

/*========TABLE SCROLL========*/
.table-scroll {
	position: relative;
	width: 100%;
	z-index: 1;
	margin: auto;
	overflow: auto;
	height: 100%;
	border-radius: 0.5rem;
}

.table-scroll table {
	width: 100%;
}

.table-scroll thead th {
	background-color: #191d24;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 2;
}

/* safari and ios need the tfoot itself to be position:sticky also */
.table-scroll tfoot,
.table-scroll tfoot th,
.table-scroll tfoot td {
	background-color: #191d24;
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	z-index: 4;
}

.table-scroll th:first-child {
	position: -webkit-sticky;
	position: sticky;
	left: 0;
	z-index: 2;
}

.table-scroll thead th:first-child,
.table-scroll tfoot th:first-child {
	z-index: 5;
}

@media(max-width: 1400px) {
	.table th, .table td {
		font-size: 13px;
	}
}

.table-scroll .acciones {
	width: 1px;
	white-space: nowrap;
}

/*========AUTOCOMPLETE========*/
.autoComplete_wrapper>input {
	background-image: none;
}

.autoComplete_wrapper>ul>li {
	color: #FFF;
}

.input-group {
	position: relative;
	display: grid;
	grid-template-columns: 1fr auto;
}

.input-group :where(span) {
	background-color: #252b36 !important;
}

.input-group :where(span):hover {
	background-color: #191d24 !important;
}

.autoComplete_wrapper>ul {
	background-color: #252b36;
}

.autoComplete_wrapper>ul>li {
	background-color: #252b36 !important;
	margin: 0;
	font-size: 14px;
}

.autoComplete_wrapper>input {
	border: 0.06rem solid hsl(var(--bc)/var(--tw-border-opacity));
	padding-inline: 15px;
	width: 100%;
	color: #a6adba !important;
}

.autoComplete_wrapper>input {
	background: none;
}

.autoComplete_wrapper>input:hover {
	color: #949baa !important;
}

.autoComplete_wrapper>input::placeholder {
	color: rgb(166 173 186);
}

.autoComplete_wrapper>input:hover::placeholder {
	color: rgb(148, 155, 170);
}

.autoComplete_wrapper>input:focus {
	color: rgb(166 173 186);
	border: 0.06rem solid rgb(166 173 186);
}

.autoComplete_wrapper>input:focus::placeholder {
	color: rgb(166 173 186);
}

.autoComplete_wrapper>input::selection {
	background-color: rgb(153 163 183 / 30%) !important;
}

/*========MENU========*/
.floating-new-tab {
	position: absolute;
	right: 5px;
	top: 6px;
}

/*========BTN========*/
.btn {
	flex-wrap: nowrap;
}

.btn-enviar {
	color: #4dc352;
}

.btn-editar {
	color: #6caae4;
}

.btn-borrar {
	color: #f34437;
}

.btn-desactivar {
	color: #f34437;
}

.btn-activar {
	color: #4dc352;
}

/*========ESTADOS========*/
.inactivo {
	background-color: #ff4d4d;
	color: #FFF;
}

.inactivo:hover {
	background-color: #ff4d4d;
}

.activo {
	background-color: #40a345;
	color: #FFF;
}

.activo:hover {
	background-color: #40a345;
}

/*========CARD CON TITULO========*/
.card-color-fondo {
	background-color: #2e3440;
}

.card-con-titulo {
	display: grid;
	overflow: hidden;
	grid-template-rows: auto 1fr;
	grid-gap: 20px;
	padding: 20px;
}

.card-con-titulo .header {
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.04em;
}

.card-con-titulo .header>i {
	margin-right: 10px;
}

.card-con-titulo .body {
	overflow: auto;
	padding-right: 5px;
}

/*========GROUPS========*/
.leaflet-control-layers-list {
	position: absolute;
	z-index: 10000;
	right: 10px;
	top: 10px;
	background-color: #efefef;
	color: #000;
	border-radius: 5px;
}

.leaflet-control-layers-list>* {
	padding: 10px;
	border-bottom: 1px solid gray;
	cursor: pointer;
}

.leaflet-control-layers-list>*.active {
	background-color: rgba(46, 204, 113, 0.4);
}

.leaflet-control-layers-list>*:last-of-type {
	border-bottom: 0px;
}

.leaflet-control-layers-list img {
	width: 20px;
}

/*========POPUP========*/
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: #353d4c !important;
	color: #fff !important;
}

#popup {
	display: none;
	width: 200px;
}

.leaflet-popup #popup {
	display: block;
}

.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus,
.leaflet-container a.leaflet-popup-close-button {
	color: #fff;
}

#popup>.incidencia,
#popup>.punto-fijo {
	overflow: auto;
}

#popup>.incidencia a.btn-incidencia,
#popup>.punto-fijo a.btn-punto-fijo {
	border: 1px solid #fff;
	padding: 4px;
	border-radius: 5px;
	color: #fff;
	display: block;
	text-align: center;
	font-size: 12px;
	margin-top: 5px;
}

#popup>.incidencia>p,
#popup>.punto-fijo>p {
	display: flex;
	align-items: center;
	gap: 8px;
	padding-inline: 5px;
}

#popup>.punto-fijo .device {
	display: flex;
	align-items: center;
	gap: 8px;
	padding-inline: 5px;
	margin-bottom: 10px;
}

#popup>.punto-fijo .device img {
	height: 18px;
}

/*========GENERAL========*/
.flex {
	width: 100%;
	height: 100%;
	background: #2a303c;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.flex>.overflow {
	width: 100%;
	height: auto;
	overflow: auto;
	max-height: 100%;
	padding: 20px;
}

/*========GENERAL========*/
.auto-columns {
	margin-bottom: 10px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
	grid-gap: 20px;
	width: 100%;
}

.auto-columns>div {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

/*========MOBILE========*/
@media (max-width: 500px) {
	.navbar-center a {
		font-size: 1rem;
		line-height: 1.25rem;
	}

	.navbar-end .btn-circle {
		width: 2rem;
		height: 2rem;
		min-height: inherit;
	}

	.navbar-end .progress {
		width: 2rem;
	}
}

/*========ESTADOS DISPOISITIVOS========*/
.estado-dispositivo.activo {
	background: #36d399;
	color: #2e3440;
}

.estado-dispositivo.en-reparacion {
	background: #fbbd23;
	color: #2e3440;
}

.estado-dispositivo.inactivo {
	background: #f87272;
	color: #2e3440;
}

/*========CARS========*/
.new-patent {
	background: #fff;
	display: inline-block;
	color: #000;
	padding: 0 5px;
	border-radius: 2px;
	border-top: 6px solid #4668bc;
	letter-spacing: 1px;
	font-weight: 600;
	text-transform: uppercase;
	font-size: 16px;
	font-family: 'Rubik', sans-serif !important;
}

.old-patent {
	background: #000;
	display: inline-block;
	color: #fff;
	padding: 0 5px;
	border-radius: 3px;
	border-top: 8px solid #fff !important;
	letter-spacing: 1px;
	font-weight: 600;
	text-transform: uppercase;
	border: 2px solid #fff;
	font-size: 16px;
	font-family: 'Rubik', sans-serif !important;
}

/*========CARS========*/
.no-files {
	position: relative;
}

.no-files::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
	z-index: 2;
	background-image: url('/images/empty-folder.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 300px;
}

/*========BLOQUEADO========*/
.bloqueado {
	position: relative;
	z-index: 0;
}

.bloqueado::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
	background-image: url("/images/locked.png");
	background-size: 50px;
	background-repeat: no-repeat;
	background-position: center;
}
/*========TOGGLE PASSWORD========*/
.toggle-password{
	cursor: pointer;
	position: absolute;
	right: 15px;
	bottom: 15px;
	z-index: 2;
}
/*=============================REPORTS=============================*/
#report-wrapper {
	position: absolute;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 20px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto 1fr;
	justify-content: center;
	grid-gap: 20px;
	align-items: center;
}
#report-wrapper > #report-filters{

}
#report-wrapper > #report-content{
	display: grid;
	justify-content: center;
	grid-gap: 20px;
	align-items: center;
	overflow: hidden;
	width: 100%;
	height: 100%;
}
#report-wrapper > #report-content > div {
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 20px;
	box-shadow: 0px 1px 3px #040506 !important;
	background-color: #191d24;
	padding: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
}
#report-wrapper > #report-content > div > canvas{
	width: 100%;
	height: 100%;
	overflow: hidden;
}