html, body{
  height: 100%;
}
body{
  background: #FAFAFA !important;
  /* background-image: linear-gradient(-45deg, #000 10%, #fff 0);
  background-size: 6px 6px; */
  margin: 0;
  /* font-family: 'Nunito' !important; */
  font-family: Arial, Helvetica, sans-serif !important;
  color: #1B3E6F !important;
  font-size: 14px;
}
*:focus{
  outline: none;
}
:hover{
  transition: 0.3s !important;
}
button:focus{
  outline: 0 !important;
}
/*Bootstrap*/
.custom-control-input:checked ~ .custom-control-label::before{
  border-color: transparent !important;
}
.btn{
  transition: all .2s ease-out !important;
}
.btn-outline-danger{
  background: #fff !important;
  border: solid 1px #ECEDF2 !important;
  color: #FF6469 !important;
}
.btn:disabled:hover{
  cursor: default;
}
.btn.disabled, 
.btn:disabled{
  opacity: .5 !important;
}
.custom-control-label::before{
  border: solid 1px #C3CDDB !important;
  border-radius: 0 !important;
}
.reuiredInput .custom-control-label::before{
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
}

.reuiredInput .custom-control-label::after{
  content: "_";
  color: #C4CEDB !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 6px;
  text-align: center;
}
.reuiredInput .custom-control-input:checked ~ .custom-control-label::after{
  top: 4px !important;
  left: -24px !important; 
  content: "";
}
.reuiredInput .custom-control-input:checked ~ .custom-control-label::before{
  background: #66BB00 !important;
}
.custom-control-input:checked ~ .custom-control-label::before{
  background: #1B3E6F !important;
}
.custom-radio .custom-control-label::before{
  border-radius: 50% !important;
}
.custom-control-label{
  font-size: 13px;
  line-height: 24px;
}
.form-check-input + span{
  display: inline-flex !important;
}
.form-check-input + span i{
  margin-right: 9px !important;
}
.form-control:focus{
  background-color: #F4F9FE !important;
}
.label-input input[type="radio"]{
  width: 14px !important;
  height: 14px;
}
.btn[aria-expanded="true"] > .card{
  overflow: visible;
}
.card-header .btn[aria-expanded="true"],
.card-header .btn[aria-expanded="false"]{
  padding-left: 25px !important;
  padding-right: 25px !important;
  border-radius: 0 !important;
}
.card-header .btn[aria-expanded="true"]{
  background-color:#F4F9FE;
}
.card-header .btn[aria-expanded="false"]{
  background-color:#fff;
}
/*NGX-TOASTR*/
.ngx-toastr{
  border-radius: 2px !important;
  color: #1B3E6F !important;
  font-size: 13px !important;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1) !important;
}
.toast-success{
  border-left: solid 5px #66BB00 !important;
  background: url(/assets/img/icon-required-yes.svg) 12px center #fff no-repeat !important;
}
.toast-error{
  border-left: solid 5px #FF6469 !important;
  background: url(/assets/img/icon-error.svg) 12px center #fff no-repeat !important;
  background-size: 18px !important;
}
.toast-info{
  border-left: solid 5px #1273EB !important;
  background: url(/assets/img/icon-info-color.svg) 12px center #fff no-repeat !important;
}
/*ICONS*/
.icon-menuDots{
  font-size: 3px !important;
  color: #1B3E6F;
  vertical-align: middle;
}
/*Components*/
/* Menu Styles */
.primary-nav{
  /* left: 0; */
  position: fixed;
  z-index: 999;
}
.menu{
  position: relative;
}
.menu ul{
  margin: 0;
  padding: 0;
  list-style: none;
}
.open-panel{
  border: none;
  background-color:#fff;
  padding: 0;
}
.logo-icon{
  background: #fff;
  position: relative;
  display: block;
  text-align: center;
  padding: 16px 0;
  width: 50px;
  height: 60px;
  left: 0;
  top: 0;
  z-index: 1000;
  cursor: pointer;
}
.primary-nav .menu li{
  position: relative;
}
.menu .icon{
  position: absolute;
  top: 12px;
  right: 10px;
  pointer-events: none;
  width: 30px;
  height: 30px;
  color: #fff;
  text-align: center;
}
.menu .icon .fa{
  vertical-align: middle;
}
.menu,
.menu a,
.menu a:visited{
  color: #fff;
  text-decoration: none!important;
  position: relative;
}
.menu a{
  display: block;
  white-space: nowrap;
  padding: 10px 1em;
  font-size: 12px;
  font-weight: bold;
  height: 52px;
  line-height: 30px;
}
.menu a:hover{
  color: #fff;
}
.menu-dropdown li .icon{
  text-align: center;
  font-size: 16px;
  color: #fff;
  line-height: 33px;
}
.menu-dropdown a{
  cursor: pointer;
}
.menu-dropdown li.active .icon{
  color: #fff;
  background: #265699;
  border-radius: 50%;
}
.menu-dropdown li:hover{
  background: #172B4D;
}
.menu label{
  margin-bottom: 0;
  display: block;
}
.menu label:hover{
  cursor: pointer;
}
.menu input[type="checkbox"]{
  display: none;
}
input#menu[type="checkbox"]{
  display: none;
}
.sub-menu-dropdown{
  display: none;
}
.new-wrapper{
  position: absolute;
  left: 50px;
  width: calc(100% - 50px);
  transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
}
#menu:checked + ul.menu-dropdown{
  left: 0;
  -webkit-animation: all .45s cubic-bezier(0.77, 0, 0.175, 1);
  animation: all .45s cubic-bezier(0.77, 0, 0.175, 1);
}
.sub-menu-checkbox:checked + ul.sub-menu-dropdown{
  display: block!important;
  -webkit-animation: grow .45s cubic-bezier(0.77, 0, 0.175, 1);
  animation: grow .45s cubic-bezier(0.77, 0, 0.175, 1);
  border-top: solid 2px #1B3E6F;
}
.openNav .new-wrapper{
  position: absolute;
  transform: translate3d(200px, 0, 0);
  width: calc(100% - 250px);
  transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
}
.downarrow{
  background: transparent;
  position: absolute;
  right: 50px;
  top: 12px;
  color: #fff;
  width: 24px;
  height: 24px;
  text-align: center;
  display: block;
}
.downarrow:hover{
  color: #fff;
}
.menu{
  position: absolute;
  display: block;
  left: -200px;
  top: 0;
  width: 250px;
  height: 100vh;
  transition: all 0.45s cubic-bezier(0.77, 0, 0.175, 1);
  background-color: #1B3E6F;
  z-index: 999;
}
.menu-dropdown{
  top: 0;
  overflow-y: auto;
}
.overflow-container{
  position: relative;
  height: calc(100vh - 50px)!important;
  overflow-y: auto;
  border-top: 60px solid #fff;
  z-index: -1;
  display:block;
}

.menu .logotype{
  position: absolute !important;
  top: 16px;
  left: 55px;
  display: block;
}
/* .sub-menu-dropdown{
background-color: #333;
}   */
.menu:hover{
  position: absolute;
  left: 0;
  top: 0;
}
.openNav .menu:hover{
  position: absolute;
  left: -200px;
  top: 60px;
}
.openNav .menu{
  top: 60px;
  transform: translate3d(200px, 0, 0);
  transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
}
@-webkit-keyframes grow{
  0% {
    display: none;
    opacity: 0;
  }
  50% {
    display: block;
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
@keyframes grow{

  0% {
    display: none;
    opacity: 0;
  }
  50% {
    display: block;
    opacity: 0.5;
  }
  100% {
    opacity: 1
  }
}
/*User Profile*/
.userProfile .dropdown{
  width: 99.5%;
}
.userProfile .dropdown:hover{
  background: #172B4D !important;
}
.userProfile .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  font-size: 13px;
  line-height: 40px;
}
.import-container-all{
  width: 100%;
  padding-bottom: 20px;
}
.import-container{
  width: 100%;
  background: #E7F1FC;
  margin-bottom: 20px;
  padding: 9px 18px;
  border: solid 1px #EEF4F9;
}
.import-container-input{
  width: 40%;
  position: relative;
  display: inline-block;
  margin-right: 20px;
}
.import-container-input input{
  width: 100%;
  height: 36px;
  padding: 5px 40px 5px 12px;
  border: 0px;
  border-radius: 2px;
  -webkit-box-shadow: 0px 0px 42px -27px rgba(0,0,0,0.75);
  -moz-box-shadow: 0px 0px 42px -27px rgba(0,0,0,0.75);
  box-shadow: 0px 0px 42px -27px rgba(0,0,0,0.75);
  font-size: 13px;
  color: #172B4D;
}
.import-container-input input:focus{
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.18);
}
.import-container-input input::placeholder{
  color: #959DA8 !important;
}
.enter-link{
  position: absolute;
  right: 12px;
  font-size: 20px;
  top: 6px;
  color: #1273EB;
}
.enter-link:hover{
  text-decoration: none;
}
.import-container-input input::placeholder{
  color: #CFD7E5;
}
.import-container-span{
  font-size: 12px;
}
.import-container-all .accordion .card-header{
  padding: 0 !important;
  background: #fff !important;
  border-bottom: 0 !important;
}
.import-container-all .collapse.show{
  border-top: solid 1px #ECEDF2;
}
.import-container-all .card-header .accordion-delete{
  display: none;
  position: absolute;
  right: 15px;
  background: #F4F9FE;
}
.import-container-all .card-header:hover .accordion-delete{
  display: inline;
}
.accordion-delete{
  color: #FF6469;
  font-size: 18px;
  margin-top: 11px;
}
.accordion-delete:hover{
  text-decoration: none;
}
/* .userProfile .dropdown-toggle{
height: 40px;
} */
.userProfile .dropdown-toggle:hover ~ .dropdown-text,
.userProfile .dropdown-toggle:focus ~ .dropdown-text{
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.userProfile .dropdown-text::after {
  right: 14px;
  top: 8px;
  width: 24px;
  height: 24px;
  background: url(/assets/img/img-userProfile.png) center center no-repeat;
}
.packagesFilter .custom-checkbox{
  margin-left: 8px;
}
.packagesFilter .custom-control-label{
  line-height: 28px !important;
  font-size: 14px !important;
  text-indent: 6px !important;
}
.packagesFilter .reset-filter{
  margin-top: 6px;
  padding-top: 6px;
  padding-left: 9px;
  border-top: solid 1px #ECEDF2;
  font-size: 13px;
}
.packagesFilter .reset-filter a:hover{
  background: none !important;
  text-decoration: none;
  color: #1B3E6F;
}
.tags-filter-list{
  max-height: 260px;
  overflow-y: auto; 
}
/**Packages Sort**/
.sort-packages{
  font-size: 12px;
  font-weight: bold;
  color: #C3CDDB;
}
.sort-packages .dropdown{
  width: 88px;
}
.sort-packages .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #1B3E6F;
}
.sort-packages .dropdown-text::after{
  right: 18px !important;
  border: solid !important;
  border-color: #1B3E6F transparent transparent transparent !important;
}
.sort-packages .dropdown-toggle:focus ~ .dropdown-text::after{
  top: 12px !important;
  border-color: transparent transparent #1B3E6F transparent !important;
}
.sort-packages .dropdown-toggle:hover ~ .dropdown-text,
.sort-packages .dropdown-toggle:focus ~ .dropdown-text{
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
  background: #fff;
}
.sort-packages .dropdown-content:hover,
.sort-packages .dropdown-toggle:focus ~ .dropdown-content{
  top: 30px;
}
.sort-packages .dropdown-content{
  width: 88px;
  padding: 6px 0;
  background: #fff;
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
}
.sort-packages .dropdown-content a{
  color: #1B3E6F;
  font-size: 12px;
}
.sort-packages .dropdown-content a:hover{
  color: #1B3E6F;
  background-color: #F4F9FE;
  text-decoration: unset;
  cursor: pointer;
}
/**Pagination**/
.page-item{
  margin: 3px 2px 0;
}
.page-item .page-link,
.page-item.disabled .page-link{
  padding: 5px 9px;
  background: transparent !important;
  border: 0;
  color: #1B3E6F !important;
  font-size: 13px;
  font-weight: bold;
}
.page-item.active .page-link,
.page-link:hover{
  color: #1B3E6F !important;
  background-color: #fff !important;
  border-radius: 100% !important;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
  outline: 0;
}
/**Packages Cards***/
/***Package Info Card***/
.packages-card .card{
  width: 100%;
  margin: 0;
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
}
.packages-card .card:hover .packageName{
  color: #1273EB !important;
}
.packages-card .card-title{
  margin-bottom: 0 !important;
  font-size: 13px;
  font-weight: bold;
  color: #1B3E6F;
}
.packages-card .card-title span{
  color: #1B3E6F;
  font-size: 11px;
  vertical-align: bottom;
}
.packages-card p{
  font-size: 12px;
  color: #D0D7E4;
}
.packages-card p.package-desc{
  margin-top: 6px;
  font-size: 13px;
  text-align: left;
  display: -webkit-box;  
  -webkit-line-clamp: 1; 
  -webkit-box-orient: vertical;   
  overflow: hidden;
  color: #1B3E6F;
}
.packages-card p.package-desc:hover{
  color: #1B3E6F !important;
  text-decoration: underline;
}

.packages-card [data-tooltip]::before,
.packages-card .tooltip::before{
  border: 0 !important;
}
.packages-card .tooltip:after,
.packages-card [data-tooltip]:after {
  padding: 9px;
  font-size: 11px;
  background: #C3CDDB;
  border: solid 1px #E6EDF5;
  box-shadow: 0 0 12 rgba(0,0,0,0.8);
  border-radius: 3px;
}
/***Add Package Card***/
.addPaackage-card{
  padding: 10px 0;
  background: #F4F9FE !important;
  border: solid 1px #D7E7F9 !important;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.18) !important;
}
.addPaackage-card .card-body img{
  width: 30%;
  vertical-align: text-top;
}
.addPaackage-card a{
  margin: 0;
  padding: 7px 15px;
  font-weight: bold;
  font-size: 12px;
  border-radius: 18px;
  border-width: 0px;
  border-style: solid;
  background-position: 15px center;
  background-repeat: no-repeat;
  text-align: left;
}
.addPaackage-card a:hover{
  text-decoration: unset;
}
.btn-create-package i,
.btn-import-package i{
  margin-right: 9px;
  font-size: 14px;
  vertical-align: middle;
}
.btn-create-package,
.btn-create-package:hover{
  background-color: #1B3E6F;
  color: #fff;
}
.btn-import-package,
.btn-import-package:hover{
  background: #C3CDDB;
  color: #1B3E6F;
}
/***Actions Menu***/
.packages-card .dropdown{
  width: auto;
  float: right;
}
.packages-card .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  text-indent: 0;
  line-height: unset;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  opacity: .6;
}
.packages-card .dropdown-text:hover{
  opacity: 1;
}
.packages-card .dropdown-text::after{
  display: none;
}
.packages-card .dropdown-text img{
  padding: 9px 7px;
}
.packages-card .dropdown-content{
  right: 0;
  width: 120px;
  padding: 6px 0;
  border: 0;
  border-radius: 50%;
}
/* .userProfile .dropdown-content{
  bottom: 40px !important;
  top: unset !important;
  width: 100%;
} */
/**Tab Nav**/
.nav-tabs{
  border-bottom-color: #ECEDF2 !important;
}
.nav-link{
  padding: 15px 20px 15px 20px !important;
  text-transform: uppercase !important;
  font-size: 12px;
  font-weight: bold;
  color: #C3CDDB !important;
  border: none !important;
}
.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover{
  border: 0 !important;
  transition: 0.3s;
}
.nav-tabs .nav-link:hover{
  color: #1B3E6F !important;
}
.nav-tabs .nav-link.active{
  color: #1B3E6F !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: solid 2px #1B3E6F !important;
}
.nav-tabs .nav-link::before{
  content: "|";
  padding-right: 20px !important;
  color: #C3CDDB;
  font-weight: normal;
  position: absolute;
  left: 0px;
}
.nav-tabs .nav-link:first-child::before{
  content: none;
}
.nav-tabs .nav-link:first-child{
  padding-left: 20px !important;
}
.nav-item.nav-link.complete,
.nav-item.active.complete{
  padding: 15px 20px 15px 44px !important;
  background: url(/assets/img/icon-required-yes.svg) 20px center no-repeat !important;
}
.tabs-no-content{
  font-size: 13px;
  font-weight: bold;
}
/**Sliding Search Input**/
.searchBox{
  position: absolute;
  top: 0%;
  right: 0%;
  transform: translate(0%,-0%);
  height: 40px;
}
.searchButton{
  float: right;
  margin-top: 18px;
  padding-left: 0 !important;
  padding-right: 24px !important;
  width: 60px;
  height: 20px;
  background: url(../src/assets/img/icon-search.svg) center center no-repeat;
  background-size: 24%;
  border: 0 !important;
  border-right: solid 1px #1B3E6F !important;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
}
.searchBox:hover > .searchInput{
  width: 240px;
  border-bottom: solid 1px #C3CDDB;
}
.searchBox:hover > .searchInput::placeholder{
  color: #C3CDDB;
}
.searchBox > .searchInput:focus{
  border-bottom: solid 1px #1B3E6F !important;
  -webkit-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
  -moz-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
  box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
}
.searchBox:hover > .searchButton{
  color: #1B3E6F;
}
.searchInput{
  border: none;
  background: none;
  outline: none;
  float: left;
  padding: 0;
  color: #1B3E6F;
  font-size: 12px;
  transition: 0.4s;
  line-height: 49px;
  width: 0px;
}
.searchInput::placeholder{
  color: #BABBC3;
}
.searchBox-expanded{
  width: 240px;
  border-bottom: solid 1px #C3CDDB;
}
/**Drop Down Menu**/
.dropdown{
  position: relative;
  display: inline-block;
  text-align: left;
  width: 132px;
  z-index: 200;
}
.dropdown-text{
  cursor: pointer;
  position: relative;
  text-indent: 10px;
  line-height: 32px;
  background-color: #eee;
  border: 1px solid #ccc;
  border-radius: 3px;
  box-shadow: 0 1px 0 rgba(255,255,255, .9) inset, 0 1px 3px rgba(0,0,0, .1);
  width: 100%;
}
.dropdown-text:after{
  position: absolute;
  right: 6px;
  top: 15px;
  content: '';
  width: 0px;
  height: 0px;
  border-style: solid;
  /* border-width: 5px 4px 0 4px;
  border-color: #555 transparent transparent transparent; */
  border:0px
}
.dropdown-toggle{
  font-size: 0;
  z-index: 1;
  cursor: pointer;
  position: absolute;
  top: 0;
  border: none;
  padding: 0;
  margin: 0 0 0 1px;
  background: transparent;
  text-indent: -10px;
  height: 34px;
  width: 100%;
}
.dropdown-toggle:focus{
  outline: 0;
}
.dropdown-content{
  position: absolute;
  top: 32px;
  width: 140px;
  margin: 0;
  padding: 0;
  opacity: 0;
  visibility:hidden;
  -webkit-transition: all .25s ease;
  -moz-transition: all .25s ease;
  -ms-transition: all .25s ease;
  -o-transition: all .25s ease;
  transition: all .25s ease;
  list-style-type: none;
  border-radius: 3px;
  text-indent: 10px;
  line-height: 28px;
  background-color: #eee;
  border: 1px solid #ccc;
}
.dropdown-content a{
  display: block;
}
.dropdown-content a:hover{
  background: #e8e8e8;
}
.dropdown-toggle:hover ~ .dropdown-text,
.dropdown-toggle:focus ~ .dropdown-text{
  background-color: #e8e8e8;
}
.dropdown-toggle:focus ~ .dropdown-text{
  box-shadow: 0 1px 3px rgba(0,0,0, .2) inset, 0 1px 0 rgba(255,255,255, 0.8);
  z-index: 2;
}
.dropdown-toggle:focus ~ .dropdown-text:after{
  border-width: 0 4px 5px 4px;
  border-color: transparent transparent #555 transparent;
}
.dropdown-content:hover,
.dropdown-toggle:focus ~ .dropdown-content{
  opacity: 1;
  visibility:visible;
  top: 42px;
}
/**Card**/
/* Hover Shadow */
@keyframes hover {
  50% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(-6px);
  }
}
@keyframes card {
  0% {
    transform: translateY(6px);
    opacity: .3;
  }
  50% {
    transform: translateY(3px);
    opacity: .8;
  }
  100% {
    transform: translateY(6px);
    opacity: .3;
  }
}
.card {
  /* display: inline-block;
  position: relative;
  transition-duration: 0.2s;
  transition-property: transform;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateZ(0); */
  margin-bottom: 25px !important;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
/* .card:before {
  pointer-events: none;
  position: absolute;
  z-index: -1;
  content: '';
  top: 100%;
  left: 5%;
  height: 10px;
  width: 90%;
  opacity: 0;
  background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0) 70%);
  transition-duration: 0.2s;
  transition-property: transform opacity;
} */
/* .card:hover {
  transform: translateY(-3px);
  animation-name: hover;
  animation-duration: 1s;
  animation-delay: 0.2s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
  animation-direction: alternate;
}
.card:hover:before {
  opacity: .4;
  transform: translateY(3px);
  animation-name: card;
  animation-duration: 1s;
  animation-delay: .2s;
  animation-timing-function: linear;
  animation-iteration-count: 1;
  animation-direction: alternate;
} */
.card-body{
  padding: 10px 20px 20px !important;
}

/*Main Container*/
.main-container{
  padding: 0 !important;
}
/*Profile & Help Area*/
.profile-help .navbar{
  padding: 0 !important;
}
.profile-help .dropdown{
  width: 50px;
}
.profile-help .dropdown-text{
  border: 0;
  background: transparent;
  box-shadow: none;
  font-size: 13px;
  /* text-indent: -999px; */
}
.profile-help .dropdown-text img{
  width: 33px;
  height: 33px;
  border: solid 1px #fff;
  object-fit: cover;
  border-radius: 50%;
}
.profile-help .dropdown-toggle:hover ~ .dropdown-text{
  background: #fff;
}
.profile-help .dropdown-toggle:hover ~ .dropdown-text img{
  box-shadow: 0 2px 6px 6px rgba(47, 83, 151, .17);
}
.profile-help .dropdown-content{
  right: 0;
  top: 47px;
  padding: 4px 0;
  background-color: #fff;
  border: 1px solid #ECEDF2;
  border-radius: 2px;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.12) !important;
}
.profile-help .dropdown-content li:hover{
  background-color: #ECEDF2;
}
.profile-help .dropdown-content a{
  padding: 3px;
  color: #1B3E6F;
  font-size: 13px;
}
.profile-help .dropdown-content a:hover{
  text-decoration: none;
  background-color: transparent;
}
.userMenu.dropdown{
  margin-left: 9px;
  border-left: solid 1px #ECEDF2;
}
.helpMenu.dropdown{
  width: 32px !important;
}
.helpMenu .dropdown-text{
  text-indent: unset;
  text-align: center;
}
.helpMenu li:hover,
.helpMenu li:hover i,
.helpMenu li:hover p{
  cursor: pointer;
}
.helpMenu li:not(:last-child){
  margin-bottom: 9px;
}
.helpMenu .dropdown-text i{
  text-align: center;
  font-size: 19px;
  color: #C3CDDB;
  vertical-align: middle;
}
.helpMenu:hover .dropdown-text i{
  color: #1B3E6F;
}
.helpMenu .dropdown-content{
  padding: 6px;
}
.helpMenu .dropdown-content a{
  padding: 5px 12px !important;
  text-align: left;
  text-indent: 0;
  font-size: 14px;
  line-height: 22px;
}
.helpMenu .dropdown-content p{
  display: inline;
  line-height: 15px;
  font-weight: bold;
}
.helpMenu .dropdown-content p:hover{
  cursor: pointer;
}
.helpMenu .dropdown-content p label{
  display: inline;
}
.helpMenu .dropdown-content p input{
  display: none;
}
.helpMenu .dropdown-content span{
  display: inline-block;
  padding-left: 18px;
  font-size: 13px;
  color: #C1CDDD;
  font-weight: normal;
}
.helpMenu .dropdown-toggle:focus ~ .dropdown-text{
  background-color: #F4F9FE;
  border-radius: 50%;
}
.helpMenu .dropdown-content{
  width: 262px;
}
.help-btn{
  border-right: solid 1px #ECEDF2;
}
.help-btn .nav-link{
  padding: 7px 8px 0 !important;
}
.help-btn i{
  font-size: 19px;
  color: #C3CDDB;
}
.help-btn a:hover i{
  color: #1B3E6F;
}
.header-button-save button{
  border-radius: 50px;
}
/*Page Title*/
.page-title{
  padding: 20px 30px;
  background:#fff;
  border-left: solid 1px #FAFAFA;
  margin-bottom: 21px;
  -webkit-box-shadow: 0 4px 10px 0 #eef0f5;
  box-shadow: 0 4px 10px 0 #eef0f5;
  position: relative;
  z-index: 300;
  /* position: fixed;
  width: calc(100% - 50px); */
}
.page-title h2{
  font-size: 16px;
  font-weight: bold;
  padding-top: 1px;
}
.page-title h2 span{
  color: #C3CDDB;
  font-size: 14px;
}
/*Content*/
.body-container{
  padding: 0 30px !important;
}
.body-container > .container{
  padding: 0;
}
.search-filter-col{
  padding-right: 0 !important;
  border-bottom: solid 1px #ECEDF2 !important;
}
/**Packages Filter**/
.packagesFilter{
  margin-top: 12px;
  margin-bottom: 7px;
  z-index: 220 !important;
}
.packagesFilter .dropdown-toggle{
  height: 36px !important;
}
.packagesFilter .dropdown-toggle:focus ~ .dropdown-text::after{
  border-color: transparent transparent #1B3E6F transparent;
}
.packagesFilter .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  text-indent: 14px;
  line-height: 30px;
  font-size: 12px;
}
.packagesFilter .dropdown-text::after{
  right: 12px;
  border: solid !important;
  border-width: 5px 4px 0 4px !important;
  border-color: #1B3E6F transparent transparent transparent !important;
}
.packagesFilter .dropdown-toggle:hover ~ .dropdown-text,
.packagesFilter .dropdown-toggle:focus ~ .dropdown-text{
  background-color: transparent;
  box-shadow: none;
  border-radius: 0;
}
.packagesFilter .dropdown-toggle:focus ~ .dropdown-text{
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
}
.packagesFilter .dropdown-text::after{
  top: 12px;
}
.packagesFilter .dropdown-content{
  padding: 6px 0;
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
  border: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}
.packagesFilter .dropdown-content li:hover .custom-checkbox{
  cursor: pointer;
}
.packagesFilter .dropdown-content:hover,
.packagesFilter .dropdown-toggle:focus ~ .dropdown-content{
  top: 30px;
}
.packagesFilter .form-control{
  padding: 12px 9px 12px 38px !important;
  border: 0 !important;
  border-bottom: solid 1px #D7E7F9 !important;
  background: url(../src/assets/img/icon-search.svg) 15px center no-repeat;
  background-size: 4%;
  border-radius: 0 !important;
  color: #1B3E6F;
  font-size: 13px;
}
.packagesFilter .form-control::placeholder{
  color: #BABBC3;
}
.packagesFilter .form-control:focus{
  box-shadow: none !important;
  border-bottom: solid 1px #1B3E6F !important;
}
.packagesFilter .custom-checkbox{
  margin-left: 8px;
}
.packagesFilter .custom-control-input{
  left: 10px;
}
.packagesFilter .custom-control-label{
  line-height: 28px !important;
  font-size: 13px !important;
  text-indent: 6px !important;
}
.fillteredTags{
  margin-left: 3px;
  padding: 3px 3px;
  background: #C3CDDB;
  color: #1B3E6F;
  font-weight: bold;
  border-radius: 4px;
}
/**Packages Sort**/
.sort-packages{
  font-size: 12px;
  font-weight: bold;
  color: #C3CDDB;
}
.sort-packages .dropdown{
  width: 88px;
}
.sort-packages .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  color: #1B3E6F;
}
.sort-packages .dropdown-text::after{
  border-color: #1B3E6F transparent transparent transparent;
}
.sort-packages .dropdown-toggle:focus ~ .dropdown-text::after{
  border-color: transparent transparent #1B3E6F transparent;
}
.sort-packages .dropdown-toggle:hover ~ .dropdown-text,
.sort-packages .dropdown-toggle:focus ~ .dropdown-text{
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
  background: #fff;
}
.sort-packages .dropdown-content:hover,
.sort-packages .dropdown-toggle:focus ~ .dropdown-content{
  top: 30px;
}
.sort-packages .dropdown-content{
  width: 88px;
  padding: 6px 0;
  background: #fff;
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, .15);
}
.sort-packages .dropdown-content a{
  color: #1B3E6F;
  font-size: 12px;
}
.sort-packages .dropdown-content a:hover{
  background-color: #F4F9FE;
  text-decoration: unset;
}
/**Pagination**/
.page-item .page-link,
.page-item.disabled .page-link{
  background: transparent !important;
  border: 0;
  color: #1B3E6F !important;
  font-size: 14px;
}
.page-link:hover{
  color: #1B3E6F !important;
  background-color: #fff !important;
  border-radius: 100%;
  transition: 0.3s;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.12);
}
.page-item.disabled{
  opacity: .3;
}
/**Packages Cards***/
/***Package Info Card***/
.packages-card .card{
  margin: 0;
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.12);
}
.packages-card .card:hover{
  box-shadow: 0 2px 13px 6px rgba(47, 83, 151, .17);
  transition: all 0.5s ease;
  cursor: pointer;
}
.packages-card .card:hover .card-title,
.packages-card .card:hover .card-title span{
  color: #1273EB !important;
}
.packages-card .card-title{
  margin-bottom: 0 !important;
  font-size: 14px;
  font-weight: bold;
}
.packages-card .card-title .packageName{
  margin-bottom: 0;
  display: inline-block;
  width: auto;
  max-width: 64%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 13px;
  vertical-align: bottom;
  color: #1B3E6F;
}
.packages-card .card-title:hover,
.packages-card .card-title:hover .packageName{
  text-decoration: none;
  color: #1273EB;
}
.packages-card .card-body{
  padding-bottom: 0 !important;
}
.packages-card .card-footer .col{
  padding-left: 3px !important;
  text-align: left;
}

/***Add Package Card***/
.addPaackage-card{
  background: #F4F9FE !important;
  border: solid 1px #D7E7F9 !important;
}
.addPaackage-card:hover{
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1) !important;
}

.addPaackage-card a:hover{
  text-decoration: unset;
}
.addPaackage-card .card-footer .col{
  padding: 0;
  text-align: right;
}
.addPaackage-card .card-footer .col:last-child{
  text-align: left;
}
.btn-create-package,
.btn-import-package{
  width: auto;
}
.btn-create-package{
  margin-bottom: 6px !important;
}
.btn-import-package{
  margin-bottom: 15px !important;
}
.btn-create-package,
.btn-create-package:hover{
  background-color: #1B3E6F;
  border-color: #1B3E6F;
  color: #fff;
}
.btn-import-package,
.btn-import-package:hover{
  color: #1B3E6F;
}
/***Actions Menu***/
.packages-card .dropdown{
  width: auto;
  float: right;
}
.packages-card .dropdown-text{
  background: transparent;
  border: 0;
  box-shadow: none;
  text-indent: 0;
  line-height: unset;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  opacity: .6;
}
.packages-card .dropdown-text::after{
  display: none;
}
.packages-card .dropdown-text img{
  padding: 9px 7px;
}
.packages-card .dropdown-content{
  right: 0;
  width: 120px;
  padding: 6px 0;
  border: 0;
  text-indent: 0;
  border-radius: 4px;
  border-top-right-radius: 0;
  background: #1B3E6F;
}
.packages-card .dropdown-content a{
  padding-left: 12px;
  color: #fff;
  font-size: 12px;
  /* background-position: 14px center;
  background-size: 10%;
  background-repeat: no-repeat; */
}
.packages-card .dropdown-content a i{
  margin-right: 4px;
}
.packages-card .dropdown-content a:hover{
  background-color: #172B4D;
  text-decoration: unset;
  color: #fff;
}
.packages-card .dropdown-content:hover,
.packages-card .dropdown-toggle:focus ~ .dropdown-content{
  top: 22px;
}
.packages-card .dropdown-toggle:focus ~ .dropdown-text .icon-menuDots{
  color: #D0D7E4;
}
.packages-card .dropdown-toggle:hover ~ .dropdown-text{
  background: transparent;
  opacity: 1;
}
.packages-card .dropdown-toggle:focus ~ .dropdown-text{
  width: 27px;
  text-align: center;
  opacity: 1;
  background: #1B3E6F;
  box-shadow: none;
}

.package-version::before{
  content: "|";
  margin-left: 8px;
  margin-right: 6px;
  vertical-align: text-bottom;
}

/***Contributers***/
ul.package-contributers{
  margin-bottom: 9px !important;
  padding-left: 0 !important;
}
.package-contributers li{
  list-style: none;
  display: inline-block;
}
.package-contributers li{
  margin-left: -5px;
}
.package-contributers li:first-child{
  margin-left: 0;
}
.package-contributers li:last-child{
  margin-left: 9px;
}
.package-modifier,
.package-contributers button{
  height: 20px !important;
  padding: 0 !important;
  border-radius: 100%;
  border: 0 !important;
  /*Hover Effect*/
  -webkit-transition: box-shadow 0.2s ease;
  -moz-transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: inline-block;
  position: relative;
}
.package-modifier:before,
.package-contributers button:before{
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border-radius: 50%;
  bottom: 0;
  box-shadow: 0 0 0 2px #fff;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.package-modifier:hover,
.package-contributers button:hover{
  box-shadow: 0 0 0 2px #D7E7F9;
  text-decoration: none;
}
.package-modifier:hover:before,
.package-contributers button:hover:before{
  -webkit-transform: scale(0.925);
  -moz-transform: scale(0.925);
  -ms-transform: scale(0.925);
  -o-transform: scale(0.925);
  transform: scale(0.925);
  box-shadow: 0 0 0 1px #D7E7F9;
  opacity: 0.5;
}
.package-modifier img,
.package-contributers button img{
  width: 20px;
  height: 20px;
  object-fit: cover;
  vertical-align: top;
  border-radius: 100%;
}
.package-contributers a{
  font-size: 12px;
  color: #1273EB;
}
.package-contributers a:hover{
  text-decoration: unset;
}
/***Package Footer***/
.packages-card .card-footer{
  padding: 0 !important;
  background: transparent !important;
  border-top-color: #F7F6F6 !important;
}
.packages-card .card-footer .col{
  text-align: center;
}
.packages-card .card-footer .col:first-child{
  border-right: solid 1px #F7F6F6;
}
.packages-card .card-footer .btn{
  padding: 10px 0 10px 0 !important;
  background-color: transparent !important;
  color: #1B3E6F !important;
  border: 0;
  font-size: 13px;
  text-align: left;
  opacity: .4;
}
.packages-card .card-footer .btn:hover{
  opacity: 1;
}
.packages-card .card-footer i{
  margin-right: 6px;
}
.icon-deployed-active,
.icon-deploy-inactive{
  margin-right: 9px;
  display: inline;
  background-image: url(/assets/img/icon-deploy-active.svg);
  background-position: center center;
  background-repeat: no-repeat;
  vertical-align: baseline;
}
.icon-deploy-inactive{
  background-image: url(/assets/img/icon-deploy-inactive.svg);
}


/*CREATE NEW ACTION MODAL*/
.createActionModal .modal-dialog{
  max-width: 85%;
}
.createActionModal .modal-header{
  padding-top: 21px !important;
  padding-bottom: 0 !important;
  border-bottom: 0;
}
.createActionModal .close{
  margin: 0 !important;
  padding: 6px 13px 10px !important;
  width: auto;
  opacity: 1 !important;
  border-radius: 100%;
}
.createActionModal .close:hover{
  background-color: #E0E8F2;
}
.createActionModal .icon-action-close{
  font-size: 14px;
  font-weight: bold;
}
.createActionModal .modal-body{
  padding-top: 0 !important;
  padding-bottom: 10px !important;
}
.createActionModal .modal-body .carousel-item{
  padding-left: 20px;
  padding-right: 10px;
}
@keyframes fadeInScale {
  0% {
    opacity: 0;
    -webkit-transform: scale(0) translateY(50%);
            transform: scale(0) translateY(50%);
  }
  90% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(0);
            transform: scale(1) translateY(0);
  }
}
.card.actionType{
  margin-bottom: 25px !important;
  padding: 220px 25px 50px;
  box-shadow: none;
  border-radius: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.card.actionType:hover{
  box-shadow: 0 10px 20px 0 rgba(27,62,111,.1);
  transition: 0.3s !important;
}
.createActionModal h3.mainHead{
  text-transform: uppercase;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  color: #C1CDDD;
}
.createActionModal h1{
  margin-bottom: 21px;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
.createActionModal .carousel-inner{
  height: 510px;
}
.createActionModal .skip-btn{
  float: unset;
  width: auto;
  color: #1273EB;
  font-weight: normal !important;
  font-size: 13px;
  border: solid 1px #F1F2FA;
  border-radius: 2px;
}
.createActionModal .skip-btn:hover{
  background: #1273EB;
  color: #fff;
  box-shadow: 0 10px 20px 0 rgba(27,62,111,.1);
}

.actionType,
.actionType:hover{
  text-align: center;
  line-height: 40px;
  background-position: center 40px;
  background-repeat: no-repeat;
  background-size: 144px 172px;
}
.actionType h3,
.actionType p{
  margin: 0;
}
.actionType h3{
  text-transform: uppercase;
  font-size: 13px;
  font-weight: bold;
}
.actionType p{
  font-size: 13px !important;
  line-height: 24px;
}
.actionType .btn,
.actionType:hover .btn{
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 30% !important;
  margin-bottom: 26px;
  width: 100px;
  height: 30px;
  line-height: 15px;
  background: #1B3E6F;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 15px !important;
  -webkit-transform: translateY(-20%);
          transform: translateY(-20%);
          -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.actionType:hover .btn{
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.actionType.custom{
  background-image: url(/assets/img/icon-action-custom.svg);
}
.actionType.custom:hover{
  cursor: pointer;
  background-image: url(/assets/img/icon-action-custom-hover.svg);
}
.actionType.default{
  background-image: url(/assets/img/icon-action-default.svg);
}
.actionType.default:hover{
  cursor: pointer;
  background-image: url(/assets/img/icon-action-default-hover.svg);
}
.actionType.recent{
  background-image: url(/assets/img/icon-action-recent.svg);
}
.actionType.recent:hover{
  cursor: pointer;
  background-image: url(/assets/img/icon-action-recent-hover.svg);
}
.actionType.import{
  background-image: url(/assets/img/icon-action-import.svg);
}
.actionType.import:hover{
  cursor: pointer;
  background-image: url(/assets/img/icon-action-import-hover.svg);
}
.createActionModal .carousel-indicators{
  margin: 0;
}
.createActionModal .carousel-indicators li{
  margin: 0;
  padding: 0;
  text-indent: 0;
  border: 0;
}
.createActionModal .back{
  position: fixed !important;
  top: 83px;
  width: auto;
  padding:0 !important;
}

.actionFormWrapper{
  width: 60%;
  margin: 0 auto;
}
.createActionModal .form-control.customAction{
  width: 55%;
  margin: 70px auto;
  padding-left: 0;
  border-radius: 0;
  border: 0;
  border-bottom: solid 1px #E0E8F2;
  color: #1B3E6F !important;
  font-size: 14px;
}
.createActionModal .form-control:focus{
  border-bottom: solid 1px #1B3E6F;
  background: transparent !important;
  -webkit-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  -moz-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  text-shadow: none;
}
.createActionModal .form-control::placeholder{
  color: #C3CDDB;
  
}
.createActionModal .submit,
.createActionModal .submit:hover{
  float: unset;
  width: 100px;
  height: 30px;
  background: #1B3E6F;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 15px !important;
}
.actionlabel{
  margin-right: 2px;
  color: #C3CDDB;
  font-size: 11px;
  font-weight: bold;
}
.form-control.searchInput,
.form-control.searchInput:focus{
  float: right;
  width: 250px !important;
  height: 30px !important;
  padding-left: 32px !important;
  border: solid 1px #E0E8F2 !important;
  border-radius: 2px !important;
  background: url(../src/assets/img/icon-search-light.svg) 9px center no-repeat !important;
  font-size: 13px !important;
  color: #1B3E6F;
}
.actionsListScroll{
  height: 228px;
  max-height: 228px;
  overflow: auto;
}
.createActionModal .actionName{
  margin-bottom: 15px;
  padding: 9px 18px;
  box-shadow: 0 2px 6px rgba(47,83,151,0.15);
}
.createActionModal p.selectedActions{
  margin-top: 20px;
  margin-bottom: 10px;
  color: #8D9FB7;
  font-size: 13px;
}
.createActionModal .sort-packages .dropdown{
  width: 60%;
}
.createActionModal .sort-packages .dropdown-text::after {
  right: 6px;
}
.createActionModal .sort-packages .dropdown-content{
  width: 100%;
}
.createActionModal .folder-upload-text button{
  float: unset;
}
/* Border Fade */
.border-fade {
  display: inline-block;
  transition-duration: 0.3s;
  transition-property: box-shadow;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateZ(0);
  box-shadow: inset 0 0 0 4px #ececec, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
.border-fade:hover {
  box-shadow: inset 0 0 0 4px #666, 0 0 1px rgba(0, 0, 0, 0);
  /* Hack to improve aliasing on mobile/tablet devices */
}
/*Content*/

/**Title Action Buttons**/
.page-title-actions li{
  display: inline-block;
  text-align: center;
}
.title-action{
  -webkit-transition: box-shadow 0.2s ease;
  -moz-transition: box-shadow 0.2s ease;
  transition: box-shadow 0.2s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 50%;
  color: #6a75eb;
  display: inline-block;
  font-size: 0.889em;
  height: 4em;
  margin: 0 1em 1em;
  position: relative;
  text-align: center;
  text-transform: lowercase;
  width: 4em;
  line-height: 4em;
}
.title-action:before{
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border-radius: 50%;
  bottom: 0;
  box-shadow: 0 0 0 1px #000;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.title-action:hover{
  box-shadow: 0 0 0 7px #07819b;
  text-decoration: none;
}
.title-action:hover:before{
  -webkit-transform: scale(0.925);
  -moz-transform: scale(0.925);
  -ms-transform: scale(0.925);
  -o-transform: scale(0.925);
  transform: scale(0.925);
  box-shadow: 0 0 0 1px #07819b;
  opacity: 0.5;
}

/*Animation Button*/
/**Float**/
.float {
  display: inline-block;
  transition-duration: 0.3s;
  transition-property: transform;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.float:hover {
  transform: translateY(-5px);
}

/*TOOLTIP*/
/* Base styles for the element that has a tooltip */
[data-tooltip],
.tooltip {
  position: relative;
  cursor: pointer;
  text-align: center;
}

/* Base styles for the entire tooltip */
[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after {
  position: absolute;
  visibility: hidden;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition:
          opacity 0.2s ease-in-out,
          visibility 0.2s ease-in-out,
          -webkit-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -moz-transition:
          opacity 0.2s ease-in-out,
          visibility 0.2s ease-in-out,
          -moz-transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  transition:
          opacity 0.2s ease-in-out,
          visibility 0.2s ease-in-out,
          transform 0.2s cubic-bezier(0.71, 1.7, 0.77, 1.24);
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform:    translate3d(0, 0, 0);
  transform:         translate3d(0, 0, 0);
  pointer-events: none;
}

/* Show the entire tooltip on hover and focus */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after {
  visibility: visible;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1;
}

/* Base styles for the tooltip's directional arrow */
.tooltip:before,
[data-tooltip]:before {
  z-index: 1001;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Base styles for the tooltip's content area */
.tooltip:after,
[data-tooltip]:after {
  z-index: 1000;
  padding: 8px 20px !important;
  width: max-content;
  background-color: #C3CDDB !important;
  color: #1B3E6F;
  content: attr(data-tooltip);
  font-size: 12px;
  font-weight: bold !important;
  line-height: 1.2;
  border-radius: 3px;
}

/* Directions */

/* Top (default) */
[data-tooltip]:before,
[data-tooltip]:after,
.tooltip:before,
.tooltip:after,
.tooltip-top:before,
.tooltip-top:after {
  bottom: 100%;
  left: 50%;
}

[data-tooltip]:before,
.tooltip:before,
.tooltip-top:before {
  margin-left: 0;
  margin-bottom: -12px;
  border-bottom-color: #DEE8F3;
  border-bottom-color: rgba(222, 232, 243, 1.0);
}

/* Horizontally align top/bottom tooltips */
[data-tooltip]:after,
.tooltip:after,
.tooltip-top:after {
  margin-left: -50%;
}

[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltip]:focus:before,
[data-tooltip]:focus:after,
.tooltip:hover:before,
.tooltip:hover:after,
.tooltip:focus:before,
.tooltip:focus:after,
.tooltip-top:hover:before,
.tooltip-top:hover:after,
.tooltip-top:focus:before,
.tooltip-top:focus:after {
  -webkit-transform: translateY(-12px);
  -moz-transform:    translateY(-12px);
  transform:         translateY(-12px);
}

/* Left */
.tooltip-left:before,
.tooltip-left:after {
  right: 100%;
  bottom: 50%;
  left: auto;
}

.tooltip-left:before {
  margin-left: 0;
  margin-right: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-left-color: #C3CDDB;
  /* border-left-color: hsla(0, 0%, 20%, 0.9); */
}

.tooltip-left:hover:before,
.tooltip-left:hover:after,
.tooltip-left:focus:before,
.tooltip-left:focus:after {
  -webkit-transform: translateX(-12px);
  -moz-transform:    translateX(-12px);
  transform:         translateX(-12px);
}

/* Bottom */
.tooltip-bottom:before,
.tooltip-bottom:after {
  top: 100%;
  bottom: auto;
  left: 20%;
}

.tooltip-bottom:before {
  margin-top: -12px;
  margin-bottom: 0;
  border-top-color: transparent;
  border-bottom-color: #C3CDDB;
  border-bottom-color: rgba(195, 205, 219, 1.0);
}

.tooltip-bottom:hover:before,
.tooltip-bottom:hover:after,
.tooltip-bottom:focus:before,
.tooltip-bottom:focus:after {
  -webkit-transform: translateY(12px);
  -moz-transform:    translateY(12px);
  transform:         translateY(12px);
}

/* Right */
.tooltip-right:before,
.tooltip-right:after {
  bottom: 50%;
  left: 20%;
}

.tooltip-right:before {
  margin-bottom: 0;
  margin-left: -12px;
  border-top-color: transparent;
  border-right-color: #C3CDDB;
  /* border-right-color: hsla(0, 0%, 20%, 0.9); */
}

.tooltip-right:hover:before,
.tooltip-right:hover:after,
.tooltip-right:focus:before,
.tooltip-right:focus:after {
  -webkit-transform: translateX(12px);
  -moz-transform:    translateX(12px);
  transform:         translateX(12px);
}

/* Move directional arrows down a bit for left/right tooltips */
.tooltip-left:before,
.tooltip-right:before {
  top: 3px;
}

/* Vertically center tooltip content for left/right tooltips */
.tooltip-left:after,
.tooltip-right:after {
  margin-left: 0;
  margin-bottom: -16px;
}

/*TooltipModule - Shady*/
.tooltip.in {
  opacity: 1.0 !important;
  filter:alpha(opacity=100) !important;
}
.tooltip:before,
.tooltip:after{
  width: 100% !important;
}
.tooltip .tooltip-inner{
  width: max-content !important;
  text-align: left!important;
  /* color:#1B3E6F;
  background-color: #fff !important; */
  color:#1B3E6F;
  background-color: #C3CDDB !important;
  border: solid 1px #C3CDDB;
  border-radius: 1px !important;
  /* border-top-left-radius: 0 !important; */
  font-size: 12px;
  opacity: 1.0 !important;
} 

.bs-tooltip-auto[x-placement^=top] .arrow::before, 
.bs-tooltip-top .arrow::before {
  border-top-color: #C3CDDB !important;
}
.bs-tooltip-auto[x-placement^=right] .arrow::before, 
.bs-tooltip-right .arrow::before {
  border-right-color: #C3CDDB !important;
}
.bs-tooltip-auto[x-placement^=bottom] .arrow::before, 
.bs-tooltip-bottom .arrow::before {
  border-bottom-color: #C3CDDB !important;
}
.bs-tooltip-auto[x-placement^=left] .arrow::before, 
.bs-tooltip-left .arrow::before {
  border-left-color: #C3CDDB !important;
}

.btn{
padding-right: 20px !important;
padding-left: 20px !important;
  
}
.btn.border-radius{
  border-radius: 20px !important;
}
.btn-primary{
  background-color: #1273EB !important;
  border-color: #1273EB !important;
}
.btn-primary:hover {
  background-color: #0069d9 !important;
  border-color: #0062cc !important;
}
.btn + .btn{
  margin-left: 10px;
}
.package-view-button button{
  width: 150px; 
  float: right;
}
.package-view-button{
  margin-top: 6px;
}
.package-view-button .btn{
  padding: 6px 21px;
  border-radius: 18px;
  font-size: 13px !important;
}
.package-view-button .btn:hover{
  opacity: .9;
}
.package-view-button .btn-primary{
  background-color: #1B3E6F !important;
  border-color: #1B3E6F !important;
}
.package-view-button .btn-enrich,
.package-view-button .btn-enrich:focus,
.modal-footer .btn-primary.btn-enrich{
  background: #EB9A34 !important;
  border-color: #EB9A34 !important;
  color: #fff;
  outline: none !important;
}
.package-view-button .btn-deploy{
  background-color: #1273EB !important;
  border-color: #1273EB !important;
  color: #fff !important;
  /* background-color: #fff !important;
  border-color: #D0DFF1 !important;
  color: #1B3E6F !important; */
}
.package-view-title {
  font-size: 11px;
  color: #1B3E6F;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 20px;
}
.package-view-title+p{
  font-size: 11px;
  margin-bottom: 0px;
}
.package-view-title+ul{
  margin-bottom: 0px;
}
.package-view-button .btn-outline-secondary i{
  font-size: 18px;
  margin-right: 4px;
}
.card.creat-card{
  margin: 0;
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
}
.card.creat-card .single-line{
  padding: 15px 25px 15px;
}
.card.creat-card .single-line-model{
  padding: 0px;
}
.card.creat-card .editor-container{
  padding: 25px;
}
.single-line label{
  margin-bottom: 0px;
}
.single-line-model label{
  margin-bottom: 0px;
  border-bottom: 1px solid #FAFAFA;
  padding: 15px 25px;
}
.single-line-model .label-name{
  width: 325px;
}
.single-line-model .label-input{
  width: calc(100% - 325px);
}
.single-line-model input{
  border-bottom: 1px solid #FAFAFA !important;
  padding: 15px 25px 15px 0px;
}
.customKeyTitle span{
  color: #C3CDDB !important;
  font-size: 11px;
}
.single-line-model input:focus,
.single-line-custom-key input:focus{
  border-bottom-color: #1B3E6F !important;
  -webkit-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
  -moz-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
  box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .6);
}
.model-note-container{
  width: calc(100% - 325px);
  padding: 0px 25px 0px 0px ;
  margin-left: 325px;
}
.error-message{
  font-size:11px ;
  color: #FF6469;
}
.tages-container{
  margin-bottom: 25px;
}
.tag-notes{
  font-size: 11px;
  color: #C3CDDB;
  padding: 5px 25px 5px 0px;
  margin-bottom: 5px;
}
  .single-tage{
    background: #E0E8F2;
    font-size: 13px;
    color: #1B3E6F;
    border-radius: 50px;
    padding: 5px 10px;
    margin-right:10px;
    margin-bottom: 10px;
  }
  .single-tage a{
    color: #1B3E6F;
    font-size: 14px;
  }
  .label-name{
    width: 300px;
    display: inline-block;
    margin-bottom: 0px;
    font-size: 13px;
    font-weight: bold;
  }
  .label-name span{
    color:#FF6469 ;
  }
  .delete-key{
    color: #FF6469;
    font-size: 10px;
    background: #FFE6E7;
    border: 1px solid #FFC9CB;
    padding: 3px 10px 2px;
    margin-left: 10px;
    border-radius: 5px;
  }
  .delete-key:hover{
    color: #C94448;
    background: #FFC9CB;
    border: 1px solid #FF6469;
    text-decoration: none;
  }
  .label-input{
    width: calc(100% - 300px);
    display: inline-block;
  }
.form-check-input{
  margin-left: 0px !important;
  margin-top: 2px !important;
}
.form-check-input+span{
  margin-left: 20px;
  margin-right: 50px;
  font-size: 13px;
  display: flex;
}
.form-check-input+span i{
  margin-right: 5px;
  margin-left: 5px;
}

.label-input input{
  margin-bottom: 0px;
  outline: 0px;
  border: 0px;
  font-size: 14px;
  width: 100%;
  color: #1B3E6F;
  transition: all 250ms ease-out;
}
.label-input input:focus{
  border-bottom: solid 1px #1B3E6F;
  background: transparent !important;
  -webkit-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  -moz-box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  box-shadow: 0 4px 6px -6px rgba(18, 115, 235, .8);
  text-shadow: none;
}
.label-input input:disabled{
  background: #fff;
  opacity: .5;
}
.label-input input[type=radio]{
  width: auto;
}
.label-input input[type=radio]+span{
  font-size: 12px;
  display: block;
  margin-right: 100px;
}
.single-line select{
  margin-bottom: 0px;
  padding-left: 10px;
  padding-right: 50px;
  outline: 0px;
  border: solid 1px #EEF4F9;
  background: none;
  background: url(/assets/img/arrow.svg) 90% center #F4F9FE no-repeat;
  background-size: 10px;
  width: auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 0;
  text-overflow: '';
  font-size: 13px;
  color: #1B3E6F;
}
.single-line select:focus{
  box-shadow: 0 0 0 0;
}
.single-line select option:first-child{
  color: #C3CDDB;
}
.single-line-model input::placeholder{
  font-size: 14px;
  color: #C3CDDB;
}
.single-line-model.error{
  color:#FF6469;
}
.single-line-model.error input,
.label-input input.ng-invalid{
  box-shadow: none;
  color:#FF6469;
  border-bottom: 1px solid #FF6469 !important;
}
.single-line .custom-key{
  background: none;
  border: 0px;
  color:#1273EB ;
  font-size: 15px;
}
.single-line .custom-key:focus{
  outline: none;
}
.creat-container{
  padding:70px 100px 70px 70px;
  position: relative;
}
.single-custom-key{
  width: 100%;
}
.single-line-custom-key{
  width: 45%;
  display: inline-block;
}
.single-line-custom-key-delete{
  width: 10%;
  display: inline-block;
  border-bottom: 1px solid #FAFAFA;
  padding: 13px 12px 14px;
}
.single-line-custom-key label{
  width: 150px;
  margin-bottom: 0px;
  border-bottom: 1px solid #FAFAFA;
  padding: 15px 25px;
}
.single-line-custom-key input{
  border-bottom: 1px solid #FAFAFA !important;
  padding: 15px 25px 15px 0;
}
.single-line-custom-key input::placeholder{
  font-size: 14px;
  color: #C3CDDB;
}
.single-line-custom-key .label-input{
  width: calc(100% - 150px);
}
.single-line-custom-key .label-name span{
  color: #C3CDDB !important;
  margin-right: 20px;
}
.custom-key-delete{
  background: transparent;
  color: #FF6469;
  outline: 0px;
  border: 0px;
}
.custom-key-delete:focus{
  outline: 0px;
  border: 0px;
}
hr{
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
  border-top: 1px solid #efefef !important;
}
.creat-action-container{
  position: fixed;
  right: 0px;
  top: 104px;
  width: 130px;
  text-align: center;
}
.action-button{
  display: inline-block;
  width: 70px;
  margin-bottom: 12px;
  color: #BABBC3 !important;
  font-size: 10px;
  font-weight: bold;
  background: transparent;
  border: 0;
  padding: 0;
}
.action-button:disabled,
.action-button:disabled:hover{
  cursor: unset;
  opacity: .5 !important;
}
.action-button:hover{
  text-decoration: none;
  cursor: pointer;
}
.action-button i{
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  border-radius: 40px;
  color: #1B3E6F;
  font-size: 17px;
  display: inline-block;
}
.action-button i:hover{
  background: #dee2e6;
}
.action-button i.icon-save-sm{
  background: #1273EB;
  color: #fff;
  font-size: 11px;
}
.action-button i.icon-discard-sm{
  font-size: 11px;
  color: #C3CDDB;
}
/* .action-button.save{
  color: #1273EB !important;
}
.action-button.save:hover{
  opacity: .9;
} */


.action-button.save{
  color: #66BB00 !important;
}
/*Flash Glowing button style*/
.action-button.save i{
background-color: #66BB00;
-webkit-animation: glowing 1500ms infinite;
-moz-animation: glowing 1500ms infinite;
-o-animation: glowing 1500ms infinite;
animation: glowing 1500ms infinite;
}
@-webkit-keyframes glowing {
  0% { background-color: #66BB00; -webkit-box-shadow: 0 0 3px #66BB00; }
  50% { background-color: #7CD116; -webkit-box-shadow: 0 0 40px #7CD116; }
  100% { background-color: #66BB00; -webkit-box-shadow: 0 0 3px #66BB00; }
}

@-moz-keyframes glowing {
  0% { background-color: #66BB00; -moz-box-shadow: 0 0 3px #66BB00; }
  50% { background-color: #7CD116; -moz-box-shadow: 0 0 40px #7CD116; }
  100% { background-color: #66BB00; -moz-box-shadow: 0 0 3px #66BB00; }
}

@-o-keyframes glowing {
  0% { background-color: #66BB00; box-shadow: 0 0 3px #66BB00; }
  50% { background-color: #7CD116; box-shadow: 0 0 40px #7CD116; }
  100% { background-color: #66BB00; box-shadow: 0 0 3px #66BB00; }
}

@keyframes glowing {
  0% { background-color: #66BB00; box-shadow: 0 0 3px #66BB00; }
  50% { background-color: #7CD116; box-shadow: 0 0 40px #7CD116; }
  100% { background-color: #66BB00; box-shadow: 0 0 3px #66BB00; }
}


/* .action-button.delete i{
  color: #BABBC3;
} */
.action-button.delete,
.action-button.delete i,
.action-button.delete:hover,
.action-button.delete:hover .icon-delete-sm{
  color: #FF6469 !important;
}
.mode-icon{
  font-size: 20px;
}

/*MODAL*/
.modal-dialog{
  margin-top: 60px !important;
}
.modal{
  z-index: 11000000 !important;
  background: rgba(27, 62, 111, 0.10) !important;
}
.modal-content{
  border-radius: 2px !important;
  border: 0 !important;
  box-shadow: 0 2px 6px rgba(47, 83, 151, .10);;
}
.modal-title{
  font-size: 14px !important;
}
.modal-body{
  padding: 1.5rem 1.5rem 1rem !important;
}
.enrichModal .modal-dialog{
  max-width: 60% !important;
}
.modal-body p{
  font-size: 14px;
}
.modal-body p span{
  color: #FF6469;
}
.modal-header{
  border-bottom-color: #ECEDF2 !important;
  padding: .7rem 1.5rem !important;
}
.modal-footer{
  padding-top: 0 !important;
  border-top: 0 !important;
}
.modal-footer .btn{
  padding: 8px 15px;
  font-weight: bold;
  font-size: 12px;
  border: 0 !important;
}
.modal-footer .btn-primary{
  background-color: #1B3E6F !important;
}
.modal-footer .btn-secondary,
.modal-footer .btn-secondary:hover{
  background-color: transparent;
  color: #1273EB;
  opacity: .8;
}
.modal-footer .btn-secondary:hover{
  opacity: 1;
}
.modal-footer .btn-secondary:active{
  background-color: #E7F1FC !important;
  color: #1B3E6F !important;
}
.btn-modal-remove-file:hover{
  cursor: pointer;
}
.action-button span{
  width: 100%;
  display: inline-block;
  margin-top: 5px;
}
.creat-action-container hr{
  margin: 0 46px;
  padding-bottom: 18px;
}
.btn-link:hover, .btn-link:focus{
  text-decoration: none !important;
}
.btn-link::before{
  content: "\f107";
  font-family:'FontAwesome';
  position: relative;
  margin-right: 20px;
}
.btn-link.collapsed::before{
  content: "\f105";
  font-family:'FontAwesome';
  position: relative;
  margin-right: 25px;
}
.btn-link i{
  margin-right: 10px;
}
.ngx-file-drop__content{
  background: #F4F9FE;
  padding: 20px;
  height: auto !important;
  display: inline-block !important;
  width: 100%;
}
.ngx-file-drop__drop-zone{
  border: 1px dashed #D7E7F9 !important;
  border-radius: 0px !important;
  height: auto !important;
}
.folder-upload{
  width: 100%;
  margin: 15px auto 18px;
  display: inline-block;
  text-align: center;
}
.btn-group-sm>.btn, .btn-sm{
  font-size: 12px;
}
.create-title{
  margin-bottom: 0;
  font-size: 14px;
  font-weight: bold;
  /* text-transform: uppercase; */
  line-height: 32px;
}
.folder-upload-text{
  margin-top: 10px;
  width: 100%;
  display: inline-block;
  text-align: center;
  color:#242424 ;
  font-size: 14px;
}
.folder-upload-text button{
  margin-left: 10px;
  font-size: 12px;
}
.folder-upload-type{
  color:#A4B2C6 ;
  font-size: 10px;
  font-weight: bold;
  width: 100%;
  display: inline-block;
  text-align: center;
}
.upload-table{
  margin: 15px 0 0;
}
.upload-table tr{
  border: dashed 1px #D7E7F9; 
}
.upload-table tr th{
  border-bottom: solid 1px #F4F9FE !important;
}
.upload-table .table thead th{
  padding: 6px 9px;
  border-top: 0px !important;
  font-weight: normal;
  font-size: 13px;
}
.upload-table .table thead th:first-child{
  width: 24px;
  padding-right: 0;
}
.upload-table tr:last-child th{
  border-bottom: 0 !important;
}
.upload-table .table{
  margin-bottom: 0px !important;
}
.nav-tabs .nav-link{
  position: relative;
}
.nav-tabs .nav-link.tab-done{
  padding-left: 40px !important;
}
.nav-tabs .nav-link.tab-done::after{
  content: "\f058";
  position: absolute;
  font-family: 'FontAwesome';
  left: 17px;
  font-size: 16px;
  top: 11px;
  color: #66BB00;
}
.authentication-container-all{
  background: #F4F9FE;
  border:1px solid #D0DFF1 ;
  flex: 1;
  width: 100%;
}
.authentication-header{
  width: 100%;
  background: #fff;
  font-size: 12px;
  color: #C3CDDB;
  font-weight: bold;
  padding: 10px 20px ;
}
.authentication-search{
  width: 100%;
  background: #fff;
  font-size: 12px;
  color: #C3CDDB;
  font-weight: bold;
  position: relative;
}
.authentication-search::after{
  content: "\f002";
    font-family: 'FontAwesome';
    position: absolute;
    left: 20px;
    top: 11px;
}
.authentication-search input{
  width: 100%;
  background: #fff;
  font-size: 12px;
  color: #C3CDDB;
  font-weight: bold;
  padding: 10px 20px 10px 35px;
  border: 0px;
  border-top: 1px solid #D7E7F9;
}
.authentication-search input::placeholder{
  color: #D0D7E4;
  font-size: 10px;
  font-weight:100;
}
.authentication-accordion{
  width: 100%; 
  padding: 20px;
  max-height: 300px;
  overflow: auto;
}
.authentication-accordion .card{
  border-radius: 0px !important;
  margin-bottom: 10px !important;
}
.authentication-accordion .card-header{
  padding: 0px !important;
  background: #fff !important;
  border-radius: 0px !important;
  font-size: 18px;
  font-weight: bold;
}
.authentication-accordion .card-header .btn-link{
  color: #1B3E6F;
  width: 100%;
  text-align: left;
  padding: 9px 0px !important;
  font-size: 13px;
  font-weight: bold;
}
.authentication-accordion .custom-control{
  display: inline-block;
}
.authentication-accordion .btn-link::before{
  margin-right: 10px;
}
.authentication-accordion .btn-link.collapsed::before{
  margin-right: 14px;
}
.template-mapping-accordion{
  width: 100%;
}
.templateNote{
  font-size: 12px;
  color: #C1CDDD;
}
.card-header .btn.regularTitle{
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: #1B3E6F;
  font-size: 13px;
  font-weight: bold;
}
.template-mapping-accordion .accordian-title{
  color: #C3CDDB !important;
  font-size: 12px !important;
  font-weight: normal !important;
}
.card{
  border-radius: 2px;
  border: 0;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
  border: 0px !important;
}
.card-header{
  padding: 0px 25px !important;
  background: #F4F9FE !important;
  border-radius: 0px !important;
  border-bottom: 1px solid #ECEDF2 !important;
}
.template-mapping-accordion .card-body{
  padding: 20px 26px 0 !important;
  font-size: 14px;
}
.card-header .btn-link{
  color: #1B3E6F;
  width: 100%;
  text-align: left;
  padding: 9px 0px !important;
  font-size: 13px;
  font-weight: bold;
}
.accordion .card{
  margin-bottom: 0px !important;
  border-top: 1px solid #ECEDF2 !important;
}
.accordion > .card > .card-header{
  padding: 0 !important;
}
.template-mapping-accordion .card{
  margin-bottom: 25px !important;
}
.custom-control{
  display: inline-block;
}
.btn-link::before{
  margin-right: 10px;
}
.btn-link.collapsed::before{
  margin-right: 14px;
}
.drap-drop-action{
  padding: 12px 20px 9px 20px;
  color: #C3CDDB;
  cursor:move;
  font-size: 15px;
}
.modal-title {
  font-size: 13px;
  font-weight: bold;
}
.select-type{
  background: #F4F9FE;
  border: 1px solid #D7E7F9;
  padding: 10px;
  text-align: center;
  color: #1273EB;
  font-size: 15px;
  width: 100%;
  position: relative;
}
.select-type:hover, .select-type.active{
  background: #1B3E6F;
  border: 1px solid #D7E7F9;
  color: #fff; 
  text-decoration: none;
}
.select-type-icon{
  font-size: 35px;
}
.select-type::before{
  content: '';
  border: 1px solid #1273EB;
  width: 18px;
  height: 18px;
  border-radius: 18px;
  display: inline-block;
  left: 10px;
  position: absolute;
}
.select-type:hover::before, .select-type.active::before{
  border: 1px solid #fff;
}
.select-type.active::after{
  content: '';
  background: #fff;
  width: 12px;
  height: 12px;
  border-radius: 18px;
  display: inline-block;
  left: 13px;
  position: absolute;
  top: 13px;
}
.ace_print-margin{
  left: 100% !important;
  background: #eee !important;
}
.ace_content{
  width: 100% !important;
}
.ace_editor{
  height: 55vh !important;
  line-height: 25px;
  border: 1px solid #ECEDF2;
  background-color: #fff;
  color: #1B3E6F !important;
}
.ace_gutter{
  background: #E0E8F2 !important;
  border-right: 0px !important;
  color: #1B3E6F !important;
}
.ace_gutter-active-line{
  background-color: #265699 !important;
  color: #fff;
}
.ace_cursor{
  color: #265699 !important;
}
.ace-tm .ace_marker-layer .ace_active-line{
  background: #F4F9FE !important;
}
.breadcrumb-header{
  padding: 0px;
  margin: 0px;
}
.breadcrumb-header li{
  list-style: none;
  display: inline-block;
  font-size: 14px;
}

.breadcrumb-header li:last-child::after{
  display: none;
}

.breadcrumb-header li:last-child{
/* background: #F4F9FE; */
border-radius: 50px;
color: #C3CDDB;
padding: 0 10px 0 0;
}
.breadcrumb-header li:first-child, 
.breadcrumb-header li:first-child a{
  font-size: 16px;
  font-weight: bold;
  padding: 0px; 
  color: #1B3E6F !important;
  border-radius: 0px;
  background: transparent;
}
.create-template-import{
  width: 100%;
  margin: 30px 0px 10px ;
}

.create-template-import a:hover{
  text-decoration: none;
}
.mapping-source-load{
  color: #1B3E6F;
  font-size: 10px;
  font-weight: bold;
  display: inline-block;
  vertical-align: top;
  margin-top: 20px;
  margin-bottom: 10px;
  margin:15px 30px 20px;
}
.mapping-source-load:hover{
  text-decoration: none;
}
.mapping-source-load i {
  color: #1B3E6F;
  font-size: 36px;
  padding: 10px;
  border-radius: 100px;
  width: 70px;
  height: 70px;
  display: inline-block;
  line-height: 52px;
  margin-bottom: 20px;
}
.mapping-source-load:hover i{
  background: #F4F9FE;
}
.mapping-source-load:hover span{
  color: #1273EB;
}
.source-load-note{
  color:#C3CDDB ;
  font-size: 8px;
}
.mapping-source-load.hover-disable{
  opacity: .5;
}
.mapping-source-load.hover-disable:hover span{
  color: #1B3E6F;
}
.mapping-source-load.hover-disable:hover i{
  background: transparent;
}
.mapping-editBar{
  margin-top: 6px;
}
.mapping-editBar .selectedAttributes{
  margin-left: 6px;
  line-height: 35px;
  font-size: 10px;
  font-weight: bold;
}
.selectedAttributes .totalAtt{
  color: #C4CEDB;
}
.mapping-editBar .custom-checkbox,
.mapping-editBar .btn{
  margin: 0 4px !important;
  padding: 9px !important;
  width: 36px;
  height: 36px;
  background: #F4F9FE;
  border-radius: 50% !important;
  text-align: center;
  line-height: 14px;
}
.mapping-editBar .custom-checkbox{
  margin-left: 0 !important;
}
.mapping-editBar .custom-control-label{
  top: -2px;
  left: 16px;
}
.mapping-editBar .btn i{
  color: #1B3E6F;
  font-size: 18px;
  /* opacity: .5; */
}
.mapping-editBar .custom-checkbox:hover,
.mapping-editBar .btn:hover i{
  opacity: .8;
}
.template-mapping-list{
  background: #F4F9FE;
  border: 1px solid #E9F3FF;
  padding: 5px 10px;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
  width: 100%;
  display: inline-block;
  margin-bottom: 20px;
  color: #1B3E6F;
}
.template-mapping-list:hover, 
.template-mapping-list.active {
  cursor: pointer;
  /* background: #1B3E6F;  */
  text-decoration: none;
  /* color: #fff !important; */
  border-radius: 4px;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.3);
}
.template-mapping-list p,
.template-mapping-list:hover p{
  margin-bottom: 0;
  width: 60%;
  display: inline-block !important;
}
.template-mapping-list:hover p{
  width: 90%;
}
.template-mapping-list:hover{
  opacity: .9;
}

.template-mapping-list span{
  background: #fff;
  border: solid 1px #E9F3FF;
  color: #2A81ED;
  font-size: 9px;
  float: right;
  border-radius: 50px;
  padding: 3px 10px;
  margin-left: 5px;
}
.template-mapping-list:hover span{
  display: none;
}
.deleteTemplate{
  display: none;
  position: absolute;
  right: 21px;
  top: 2px;
  border: 0;
  background: transparent;
}
.deleteTemplate i{
  color: #FF6469 !important;
  font-size: 16px;
}
.template-mapping-list:hover .deleteTemplate{
  display: inline;
}
.max-height-list{
  max-height: 232px;
  padding-bottom: 5px !important;
  overflow: auto;
}
.create-template-mapping-button{
  background: #C3CDDB;
  border-radius: 50px;
  font-size: 12px;
  font-weight: bold;
  padding: 10px 20px;
  margin-bottom: 20px;
    display: inline-block;
    cursor: pointer;
}
.create-template-mapping-button i{
margin-right: 5px;
  }
.view-package-container{
  padding: 20px 56px;
}
.package-type-icon{
  color: #1B3E6F;
  background: #C1CDDD;
  width: 48px;
  height: 48px;
  border-radius: 48px;
  display: inline-block;
  text-align: center;
  line-height: 48px;
  font-size: 20px;
  /* margin-right: 20px; */
}
.defintionsNote{
  padding-left: 0;
}
.defintionsNote li{
  line-height: 24px;
  list-style: none;
  font-size: 13px;
}
.package-name-container{
  width: calc(100% - 60px);
  display: inline-block;
}
.package-name{
  font-size: 16px;
  color: #1B3E6F;
  font-weight: bold;
  margin-top: 3px;
}
.package-name span{
  font-size: 11px;
}
.package-name i{
  font-size: 12px;
  color: #C3CDDB;
  margin-left: 5px;
}
.deply-status-icon{
  margin-right: 4px;
  width: 1.6%;
  vertical-align: baseline;
}
.package-description{
  color: #D0D7E4;
  font-size: 12px;
  font-weight: normal;
}
.package-auth-info{
  font-size: 11px;
}
.package-auth-info p{
  margin-bottom: 5px;
}
.package-auth-info div{
  padding-left: 25px;
  border-right: solid 1px #F4F9FE;
}
.package-auth-info div:first-child{
  padding-left: 15px;
}
.package-auth-info .col-4:first-child{
  padding-left: 15px;
}
.package-auth-info div:last-child{
  border-right: 0;
}
.package-auth-info .package-contributers{
  margin-bottom: 0 !important;
}
.package-auth-info .package-contributers button img{
  width: 20px;
  height: 20px;
}
.template-mapping-action{
  margin-bottom: 20px;
}
.template-mapping-action button{
  border-radius: 50px;
  padding: 4px 20px;
  font-size: 13px;
}
.template-mapping-action .btn-primary{
  background:#66BB00 !important ;
  border-color:#66BB00 !important ;
  color: #fff !important ;
}
.template-mapping-action .btn-outline-secondary{
  background:#fff !important ;
  border-color:#ECEDF2 !important ;
  color: #1B3E6F !important ;
}
.table-container{
  width: 100%;
}
/*
   server-side-angular-way.component.css
*/
.no-data-available {
  text-align: center;
}

/*
   src/styles.css (i.e. your global style)
*/
.dataTables_empty {
  display: none;
}
.dataTables_length,
.dataTables_filter{
  margin-bottom: 6px;
  color: #1B3E6F !important;
  font-size: 13px;
  /* font-weight: bold; */
}
/*Mat Table*/
.mat-elevation-z8{
  box-shadow: none !important;
}
.mat-table,
.mat-paginator{
  background: #fff !important;
  color: #1B3E6F !important;
}
.mat-table{
  border-top: solid 1px #ECEDF2;
}
.mat-paginator{
  /* display: inline-block; */
  width: 36%;
  float: right;
}
.mat-input-element{
  font-size: 13px !important;
  line-height: 20px !important;
}
tr.mat-header-row{
  background: #f4f9fe;
  border-bottom: 1px solid #ecedf2;
}
.mat-sort-header-button{
  text-align: left;
}
.mat-cell, .mat-footer-cell{
  color: #1B3E6F !important;
}
.mat-form-field-appearance-legacy .mat-form-field-wrapper{
  padding-bottom: 0;
}
.mat-paginator-page-size-select .mat-form-field-wrapper{
  padding-bottom: 14px;
}
.mat-form-field-infix,
.dataTables_filter input{
  color: #1B3E6F;
  padding: 4px 9px !important;
  border: solid 1px #ECEDF2 !important;
  border-radius: 4px;
}
.mat-focused .mat-form-field-infix{
  border-bottom: 0 !important;
}
.tableFilter{
  margin-top: 9px;
}
.tableFilter .mat-form-field-wrapper{
  padding-bottom: 0;
}
.tableFilter .mat-form-field-infix{
  background: url(../src/assets/img/icon-search.svg) 9px center no-repeat;
  padding-left: 24px !important;
}
.dataTables_filter input:focus{
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
}
.mapping-table th,
.mapping-table td{
  width: auto !important;
  padding: 7px 20px 7px 0 !important;
  border-bottom: solid 1px #ECEDF2 !important;
  font-size: 13px;
}
.mapping-table th:first-child,
.mapping-table td:first-child{
  padding-left: 20px !important;
}
.mapping-table thead th{
  padding: 4px 20px 4px 0 !important;
  border-bottom-color: #ECEDF2 !important;
  color: #1B3E6F;
  font-weight: bold;
  font-size: 12px;
}
.mapping-table tbody tr:hover{
  background-color: #F4F9FE !important;
}
.mat-form-field-label{
  color: #1B3E6F !important;
  font-size: 13px !important;
  padding-left: 26px;
  line-height: 20px !important;
}
.mat-select-value,
.mat-select-arrow{
  color: #1B3E6F !important;
}
.mapping-table th{
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  /* background: #F4F9FE; */
}
.mapping-table td{
  border-top: 0 !important;
}
table.dataTable.no-footer{
  margin-bottom: 9px;
  border-bottom: solid 1px #ECEDF2 !important;
}
.mat-paginator-container{
  padding-right: 0;
}
.dataTables_info{
  padding-top: 12px;
  color: #1B3E6F !important;
  font-size: 13px;
  font-weight: bold;
}
.dataTables_wrapper .dataTables_paginate,
.dataTables_wrapper .dataTables_paginate a.paginate_button,
.dataTables_wrapper .dataTables_paginate a.paginate_button.current,
.dataTables_wrapper .dataTables_paginate a.paginate_button.disabled{
  margin-bottom: 3px;
  color: #1B3E6F !important;
  font-size: 13px;
  font-weight: bold;
  border: 0 !important;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button:hover{
  border: 0;
  color: #1B3E6F !important;
  background: none !important;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button{
  padding: 0.4em .9em !important;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button.current{
  color: #1B3E6F !important;
  background: #F4F9FE !important;
  border: solid 1px #EEF4F9 !important;
  border-radius: 100% !important;
  box-shadow: 0 2px 6px 0 rgba(47, 83, 151, 0.1);
  outline: 0;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button.disabled{
  opacity: .6;
}
.dataTables_wrapper .dataTables_paginate a.paginate_button.disabled:hover{
  cursor: default;
  background: none !important;
  border: 0 !important;
}
.mapping-table .form-control,
.mapping-table .custom-select{
  padding: 10px 6px;
  border-color: #EEF4F9;
  font-size: 14px;
  line-height: 12px;
  color: #1B3E6F;
}
.mapping-table .form-control{
  box-shadow: 0 2px 4px rgba(47,83,151,0.1);
}
.mapping-table tbody tr:hover .form-control:focus,
.mapping-table tbody tr:hover .custom-select{
  background-color: #fff !important;
}
.mapping-table .custom-select{
  background-color: #F4F9FE;
  color: #1B3E6F;
}
.mapping-table .form-control:disabled{
  padding-left: 0;
  box-shadow: none;
  border: 0;
  background: transparent !important;
  color: #1B3E6F;
}

/* Windows View as 150% */
@media (resolution: 150dpi) {
  /* @media (-webkit-device-pixel-ratio: 1.5) { */
  .body-container > .container{
    max-width: 960px !important;
  }
}
/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
  .page-title{
    padding: 18px;
  }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767.98px) {

}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991.98px) {

}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199.98px) {

}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {

}






/* Package Wizard panel */
.packageWizard.panel-wrap{
  position: fixed;
  top: 100px;
  bottom: 0;
  right: 0;
  width: 350px;
  height: 200px;
  transform: translateX(100%);
  transition: .3s ease-out;
  z-index: 2000;
}
.packageWizard .panel{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: auto;
  padding: 20px;
  padding-top: 9px;
  background: #1B3E6F;
  color: #fff;
  border-top: solid 6px #1273EB;
  box-shadow: 0 2px 13px 6px rgba(47, 83, 151, .17) !important;
  border-radius: 3px !important;
  /* border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important; */
  text-align: center;
}

/* simulate panel state control --
this can also be triggered by a 
class name added to the body tag. 
Just using a checkbox sibling here
for simplicity
*/ 
[type="checkbox"]:checked ~ .panel-wrap {
  transform: translateX(0%);
}
.packageWizard h3{
  margin-bottom: 15px;
  font-weight: bold !important;
  font-size: 16px;
}
.packageWizard p{
  margin-bottom: 12px;
  font-size: 14px;
}
.packageWizard span{
  font-size: 13px;
  color: #C3CDDB;
}
.startTour{
  margin-top: 15px;
  padding: 9px 21px;
  font-weight: bold;
  font-size: 12px;
  border: 0;
  border-radius: 18px;
  background-color: #1273EB;
  color: #fff;
}
.closeWizard{
  margin-top: 12px;
  border: 0;
  background: none;
  font-weight: normal;
  color: #E0E8F2;
  font-size: 12px;
}
/*Wizard Content*/
.mat-menu-panel{
  box-shadow: 0 2px 13px 6px rgba(47, 83, 151, .17) !important;
  border-radius: 3px !important;
  border-top: solid 3px #1273EB;
}
.mat-menu-panel::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid #1273EB;
  left: 9px;
  top: -8px;
}
.mat-card{
  background: #1B3E6F !important;
  color: #fff !important;
  font-family: inherit !important;
  border-radius: 0 !important;
}
.mat-card-content, 
.mat-card-subtitle{
  font-size: 13px;
}
.mat-card-title{
  margin-bottom: 9px !important;
  font-weight: bold !important;
  font-size: 16px !important;
}
.mat-icon-button[disabled]{
  color: rgba(224, 232, 242, .5) !important;
}
