@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;700&family=Roboto:wght@400;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Momo+Trust+Sans:wght@200..800&display=swap');

.roboto {
	font-family: 'Roboto', sans-serif;
}

/*:root {
	--bs-primary-rgb: 139,61,255;
	--bs-btn-bg: #8b3dff;
	--bs-body-font-size: 0.9rem;
}
.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: #8b3dff;
	--bs-btn-border-color: #8b3dff;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #7634d9;
	--bs-btn-hover-border-color: #6f31cc;
	--bs-btn-focus-shadow-rgb: 156,90,255;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #6f31cc;
	--bs-btn-active-border-color: #682ebf;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(2,6,23,.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #8b3dff;
	--bs-btn-disabled-border-color: #8b3dff;
}*/

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "Momo Trust Sans", sans-serif;
}

body{
	background-image: url('../img/EMF-2-BG.jpg');
	background-size: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100svw;
	height: 100svh;
}

/*
X1283684P
44147806L
00830317V
*/

#mainCtn{
	width: 85svw;
	height: max-content;
}

#penalesImgs{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 100%;
}

#penalesImgs div {
	width: 90%;
	margin-bottom: 1rem;
}

h4.m-0 {
    margin-top: 1rem !important;
    padding-top: 1rem;
    font-weight: 700;
	font-size: 1.75rem;
}

p.mb-3 {
    font-size: 1.2rem;
}

.hidden{
	display: none !important;
}

.card-subtitle{
	font-weight: 700;
}

.container{
	background: rgb(240 240 240 / 61%);
	border-radius: 1rem;
	box-shadow: 0 2px 16px rgba(0,0,0,0.2);
	backdrop-filter: blur(10px);
}

.card{
	background-color: transparent !important;
	border: none !important;
}

#dfxStartBtn{
	font-size: 1.2rem;
	padding: 0.5rem 2rem;
    background: linear-gradient(132.79deg, #4EA7FF 19.39%, #0482FF 69.48%);
    border-radius: 1rem;
    border: none;
}

.btn-primary{
	background: linear-gradient(132.79deg, #4EA7FF 19.39%, #0482FF 69.48%) !important;
    border-radius: 1rem !important;
    border: none !important;
}

#dfxDniRow{
	margin-top: 1rem;
	border-top: 1px solid rgba(0,0,0,0.1);
}

#dfxPfxCard{
	margin-top: 1rem;
	border-top: 1px solid rgba(0,0,0,0.1) !important;
}

.alert{
	margin-top: 1rem;
}

.loadingOverlay {
	position: absolute;
	top: 0;
	left: 0;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #ffffff;
	z-index: 999;
	min-height: 60px;
}
.valign-wrapper {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
		 -ms-flex-align: center;
			align-items: center;
}
.valign-wrapper .valign {
	display: block;
}
.pointer {
	cursor: pointer;
}

header {
	height: 56px;
}
main {
	transition: 0.5s;
}
.navbar > .container-fluid {
	justify-content: normal;
}
.l-navbar {
	position: fixed;
	top: 64px;
	height: -moz-calc(100% - 64px);
	height: -webkit-calc(100% - 64px);
	height: calc(100% - 64px);
	padding: 0.5rem 1rem 0.5rem 0;
	transition: 0.5s;
	z-index: 1000;
	width: 224px;
}
.l-navbar .nav_link,
.offcanvas .nav_link {
	position: relative;
	color: rgba(255, 255, 255, 0.8);
	transition: 0.3s;
	display: grid;
	grid-template-columns: max-content max-content;
	align-items: center;
	column-gap: 1rem;
	padding: 0.5rem 0 0.5rem 1.5rem;
	text-decoration: none;
}
.l-navbar .nav_link:hover,
.offcanvas .nav_link:hover,
.l-navbar .nav_link.active,
.offcanvas .nav_link.active {
	color: #ffffff;
}
.l-navbar .nav,
.offcanvas .nav {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
}
#mobileNavBar {
	width: 224px;
}
.profileOption .row {
	width: 208px;
}
.profileOption .avatar-autor {
	width: 30px;
	height: 30px;
	border: 0px;
	color: #fff;
	line-height: 29px;
	background-position: center;
	background-repeat: no-repeat;
	-o-background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
	background-image: url("../img/bg-avatar-header.jpg");
	border-radius: 50%;
	font-size: 12px;
	text-align: center;
	font-weight: 700;
	display: inline-block;
	vertical-align: middle;
}
.profileOption a,
.profileOption p {
	color: white;
	font-size: 12px;
	line-height: 1;
}


th.sort-asc::after  { content: " ▲"; }
th.sort-desc::after { content: " ▼"; }
.table tr.in-facturacion{
  --bs-table-bg:#e8f5e9;
  --bs-table-striped-bg:#e8f5e9;
  --bs-table-hover-bg:#e8f5e9;
}