html{
  overflow-x: hidden;
  overflow-y: scroll;
}
html, body{
  min-height: -webkit-fill-available;
  min-height: 100vh;
  margin: 0;
  position: relative;
  background-color: var(--lighter);
  -webkit-touch-callout: none;
}
#wrapper{
  min-height: -webkit-fill-available;
  min-height: calc(100vh - 60px);
  margin-left: 200px;
  transition: margin 0.2s ease-in-out;

}
#wrapper.small{
  margin-left: 60px;
}
#content{
  position: relative;
  padding-top: 2.5rem;
}
.largura{
  position: relative;
  padding-left: 5%;
  padding-right: 5%;
}
#footer{
  margin-left: 0;
  text-align: center;
  font-size: 12px;
  line-height: 12px;
  padding-top: 24px;
  padding-bottom: 24px;
  position: relative;
  width: 100%;
  transition: all 0.2s ease-in-out;
  padding-left: 200px;
}
#footer.small{
  padding-left: 60px;
}
#footer:before{
  display: block;
  content: "";
  height: 5px;
  background-size: 100%;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.fake-load{
  position: fixed;
  left: -500px;
  top: -500px;
}
.nova-venda{
  position: fixed;
  bottom: 30px;
  right: 15px;
  padding: 1rem 15px;
  background:var(--color);
  color: var(--text-white);
  text-align: center;
  border-radius: 23px;
  z-index: 9;
}
.nova-venda i{
  vertical-align: middle;
}
.nova-venda span{
  width: 0;
  white-space: nowrap;
  display: inline-block;
  overflow: hidden;
  transition: width 0.2s ease-in-out;
  vertical-align: middle;
}
.nova-venda:hover{
  background:var(--color-hover);
}
.nova-venda:hover span{
  width: 115px;
}
.page-login #wrapper{
  display: table;
  width: 100%;
  margin-left: 0;
}
.page-login #wrapper #content{
  display: table-cell;
  vertical-align: middle;
  padding-top: 0;
}
.page-login #footer{
  padding-left: 0;
}

body.home{
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}
.home #wrapper{
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-left: 0;
  min-height: initial;
  flex-grow: 1;
}
.home #wrapper #content{
  display: flex;
  flex-direction: column;
}
.home #footer{
  color: var(--white);
  padding-left: 0;
}
.home .screen{
  height: 40vw;
  overflow: hidden;
  margin-top: -5vw;
}
.home .mobile{
  position: relative;
  height: 100%;
  width: 100%;
}
.home .mobile img{
  position: relative;
  height: 120%;
  max-width: 100%;
  object-fit: contain;
  object-position: top;
}
@media (min-width:576px){
  .home .mobile img{
    margin-top: -20%;
  }
}
.home.bg-black #footer .text-default{
  color: var(--white)!important;
  opacity: .8;
}

/* home */
.floating-container {
  --animate-y: -50px;
  --animate-x: 50px;
  --animate-speed: 15s;
  position: absolute;
  transform: translateY(var(--animate-y)); /* X, Y, Z */
  animation: animateY var(--animate-speed) ease-out infinite;
}
.floating-container .floating-obj {
  animation: animateX var(--animate-speed) ease-in-out infinite alternate;
}
/* KEYFRAMES */
@keyframes animateY {
  0% {
      transform: translateY(0);
  }
  50% {
      transform: translateY(var(--animate-y));
  }
  100% {
      transform: translateY(0);
  }
}

@keyframes animateX {
  0% {
      transform: translateX(0);
  }
  50% {
      transform: translateX(var(--animate-x));
  }
  100% {
      transform: translateX(0);
  }
}

.bg-img-contas{
  border-radius: 10px;
  width: 100%;
  position: relative;
  padding-bottom: 85%;
}
.bg-img-contas > img{
  position: absolute;
  z-index: 2;
}
.bg-img-contas .floating-container{
  position: absolute;
  z-index: 2;
}
.bg-img-contas .floating-container:nth-child(1){
  right: -50px;
  top: 50px;
}
.bg-img-contas .floating-container:nth-child(2){
  left: 5px;
  top: 15px;
}
.bg-img-contas .floating-container:nth-child(3){
  left: -15px;
  top: 60%;
}
.bg-img-contas .floating-container:nth-child(3) img{
  transform: rotate(-15deg);
}
.bg-img-contas .floating-container:nth-child(4){
  left: -45px;
  bottom: -30px;
}
.bg-img-contas .foto{
  opacity: .5; 
  height: 100%;
  width: 100%;
  z-index: 1;
  object-fit: cover;
}

.bg-img-categorias {
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 10px;
  width: 100%;
  position: relative;
  padding-bottom: 80%;
}
.bg-img-categorias .floating-container{
  position: absolute;
  z-index: 2;
}
.bg-img-categorias .floating-container:nth-child(1){
  left: 70px;
  bottom: 0px;
  z-index: 1;
}
.bg-img-categorias .floating-container:nth-child(2){
  right: -15px;
  top: 15px;
}
.bg-img-categorias .floating-container:nth-child(3){
  left: -45px;
  top:20%;
}
.bg-img-categorias .floating-container:nth-child(3) img{
  transform: rotate(-15deg);
}
.bg-img-categorias .floating-container:nth-child(4){
  right: 15px;
  bottom: -10px;
}
.bg-img-categorias .floating-container:nth-child(4) img{
  transform: rotate(15deg);
}
.bg-img-categorias .floating-container:nth-child(5){
  left: -55px;
  bottom: -20px;
}
.bg-img-categorias .foto {
  opacity: .5;
  height: 100%;
  width: 100%;
  z-index: 0;
  position: absolute;
  object-fit: cover;
}


.bg-img-relatorios{
  border-radius: 10px;
  width: 100%;
  position: relative;
  padding-bottom: 85%;
}
.bg-img-relatorios > img{
  position: absolute;
  z-index: 2;
}
.bg-img-relatorios .floating-container{
  position: absolute;
  z-index: 2;
}
.bg-img-relatorios .floating-container:nth-child(1){
  left: 40px;
  top: 50px;
}
.bg-img-relatorios .floating-container:nth-child(2){
  left: 5px;
  top: 15px;
}
.bg-img-relatorios .floating-container:nth-child(3){
  left: -15px;
  top: 60%;
}
.bg-img-relatorios .floating-container:nth-child(3) img{
  transform: rotate(-15deg);
}
.bg-img-relatorios .floating-container:nth-child(4){
  left: -45px;
  bottom: -30px;
}
.bg-img-relatorios .floating-container:nth-child(5){
  left: -45px;
  bottom: -30px;
}
.bg-img-relatorios .foto{
  opacity: .5;  
  height: 100%;
  width: 100%;
  z-index: 1;
  object-fit: cover;
}

/* left */
#left{
  --inverted-corners-size: 1.5rem;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 200px;
  z-index: 10;
  background: var(--color);
  -webkit-box-shadow: 0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  -moz-box-shadow:    0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  box-shadow:         0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  padding-top: 80px;
  transition: width 0.2s ease-in-out;
}
#left::before {
  content: '';
  /* Absolute position */
  top: 0;
  right: calc(-1 * var(--inverted-corners-size));
  position: absolute;
  /* Size */
  height: calc(2 * var(--inverted-corners-size));
  width: var(--inverted-corners-size);
  /* Border */
  background-color: transparent;
  border-top-left-radius: var(--inverted-corners-size);
  box-shadow: var(--color) 0px calc(-1 * var(--inverted-corners-size)) 0px 0px;
}
#left::after {
  content: '';
  /* Absolute position */
  right: calc(-1 * var(--inverted-corners-size));
  bottom: 0;
  position: absolute;
  /* Size */
  height: calc(2 * var(--inverted-corners-size));
  width: var(--inverted-corners-size);
  /* Border */
  background-color: transparent;
  border-bottom-left-radius: var(--inverted-corners-size);
  box-shadow: var(--color) 0px calc(var(--inverted-corners-size)) 0px 0px;
}
.dark #left{
  background: var(--light);
}
.dark #left::before {
  box-shadow: var(--light) 0px calc(-1 * var(--inverted-corners-size)) 0px 0px;
}
.dark #left::after {
  box-shadow: var(--light) 0px calc(var(--inverted-corners-size)) 0px 0px;
}
#left .abre-menu{
  display: block;
  z-index: 3;
  position: absolute;
  right: -15px;
  width: 30px;
  height: 30px;
  line-height: 26px;
  color: var(--text-white);
  background: var(--color);
  border: 3px solid var(--light);
  text-align: center;
  border-radius: 50%;
  top: 50px;
  transition: opacity .3s ease;
  opacity: 0;
}
#left:hover .abre-menu{
  opacity: 1;
}
#left .abre-menu:hover{
  background: var(--color-hover);
}
#left h3{
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  height: 62px;
  background: url('../images/logo-branca.png') center;
  background-size: auto 80%;
  background-repeat: no-repeat;
  text-indent: -9999px;
  transition: all .3s ease;
}
#left .menu{
  height: calc(100vh - 140px);
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  overflow-x: hidden;
}
#left .menu ul{
  display: block;
}
#left .menu ul li{
  display: block;
  padding: 5px 0;
}
#left .menu ul li a{
  display: block;
  line-height: 30px;
  font-weight: 600;
  white-space: nowrap;
  text-decoration:none;
  padding: 5px 1rem;
  color: #FFF;
  border-left: 4px solid transparent;
  opacity: .5;
  position: relative;
}
#left .menu ul li.active a{
  border-left: 4px solid #FFF
}
#left .menu ul li a > i{
  margin-right: .5rem!important;
}
#left .menu ul li a:hover{
  opacity: 1;
}
#left .menu ul li.active a{
  opacity: 1;
  background: rgba(var(--white-rgb),.1);
}
#left .menu ul li a > .badge{
  position: absolute;
  right: -4px;
  top: 2px;
}
#left:not(.small) .menu ul li a > .badge{
  position: sticky;
  top: initial;
  right: 0;
  margin-left: 5px;
}
#left .logout{
  position: absolute;
  bottom: 10px;
  left: 0;
  display: inline;
  line-height: 30px;
  font-weight: 600;
  text-decoration:none;
  padding: 5px 1rem;
  color: #FFF;
  width: 100%;
  border-left: 4px solid transparent;
}
#left .logout:hover{
  background: rgba(var(--white-rgb),.1);
}
#left .logout i{
  margin-right: .5rem;
}

#left.small{
  width: 60px;
  text-align: center;
}
#left.small h3{
  background-size: 50% auto;
}
#left.small .menu ul li a{
  display: inline-block;
  border: none;
  width: 40px;
  padding-left: 0;
  padding-right: 0;
  border-radius: 4px;
}
#left.small .menu ul li a > span{
  display: none;
}
#left.small .menu ul li a > i{
  margin-right: 0!important;
}
#left.small .logout{
  display: inline-block;
  border: none;
  width: 40px;
  padding-left: 0;
  padding-right: 0;
  border-radius: 4px;
  left: 10px;
}
#left.small .logout span{
  display: none;
}
#left.small .logout > i{
  margin-right: 0;
}
#left .abre-menu span{
  display: none;
}
#left.small .abre-menu i:before{
  content:"\f105"
}



/**HEADER***/
#header{
  position: sticky;
  top: 0;
  -webkit-backdrop-filter: blur(0.5rem);
  backdrop-filter: blur(0.5rem);
  top: 0;
  left: 0;
  right: 0;
  background: rgba(var(--black-rgb), 0.2);
  z-index: 9;
  padding: 1rem 0;
  -webkit-box-shadow: 0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  -moz-box-shadow:    0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  box-shadow:         0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  transition: top .3s ease;
}
.nav-up #header{
  top: -70px;
}
#header .menu ul{
  display: inline-block;
}
#header .menu ul li{
  display: inline-block;
}
#header .menu ul li a{
  display: inline-block;
  line-height: 30px;
  font-weight: 600;
  text-decoration:none;
  padding: 0 20px;
  color: var(--white);
}
#header .menu ul li a:hover,
#header .menu ul li a.active{
  color: var(--hover);
}
#header .user-image{
  display: inline-block;
  background-size: cover;
  overflow: hidden;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid var(--border);
  vertical-align: middle;
  margin-right: 5px;
}
#header .user-image img{
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}
#header a:hover .user-image{
  border-color:var(--color);
}


.footer-buttons{
  position: sticky;
  bottom: 0;
  left: 60px;
  right: 0;
  padding: 10px 0 30px 0;
  background: -moz-linear-gradient(0deg, rgba(var(--lighter-rgb),1) 0%, rgba(var(--lighter-rgb),0) 100%);
  background: -webkit-linear-gradient(0deg, rgba(var(--lighter-rgb),1) 0%, rgba(var(--lighter-rgb),0) 100%);
  background: linear-gradient(0deg, rgba(var(--lighter-rgb),1) 0%, rgba(var(--lighter-rgb),0) 100%);
  z-index: 5;
}


/**BOX**/
.box{
  display: block;
  position: relative;
  background: var(--white);
  -webkit-box-shadow: 0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  -moz-box-shadow:    0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  box-shadow:         0px 0px 30px 0px rgba(var(--black-rgb), 0.05);
  border-radius: 20px;
}
a.box{
  text-decoration: none;
  transition: all .3s ease,  text-indent 1ms ease;
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, 0);
}
a.box:hover{
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  box-shadow: 0px 2px 6px -1px rgba(0, 0, 0, .2);
}
.box-login{
  max-width: 400px;
  margin: 0 auto;
  border-left: 30px solid var(--color);
}
.box-login .icon{
  position: absolute;
  font-size: 100px;
  right: 10px;
  top: 10px;
  opacity: .05;
}
.dark .box-login img{
  filter: invert();
}
.equal-height .box,
.equal-boxes .box {
  min-height: calc(100% - 1.5rem);
}
.equal-height .box.mb-0,
.equal-boxes .box.mb-0 {
  min-height: 100%;
}

/**DASHBOARD**/
.scroll-metas:not(.flickity-enabled){
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
}
.scroll-metas .carousel-cell{
  min-width: 100%;
  width: 100%;
  display: flex;
  align-items: stretch;
  min-height: 100%;
}
.scroll-metas .carousel-cell .box{
  width: 100%;
}
.scroll-metas .flickity-page-dots{
  /* bottom: 10px; */
}
.scroll-metas .flickity-page-dots .dot{
  background-color: var(--gray);
}
.progress-meta{
  background-color: rgba(var(--white-rgb),.2);
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
}


.fotos-produto .add-photo{
  cursor: pointer;
}
.fotos-produto .add-photo:hover{
  border-color: var(--gray);
  background-color: var(--light);
}
.fotos-produto ul li{
	display: inline-block;
	width: 100px;
	height: 100px;
	line-height: 95px;
	border:1px solid var(--border);
	-moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  position: relative;
  text-align: center;
  margin-right: 5px;
  margin-bottom: 5px;
}
.fotos-produto ul li.active{
	border-color: var(--color);
}
.fotos-produto ul li a{
	background:#FFF;
	border-left:1px solid var(--border);
	border-bottom:1px solid var(--border);
  width: 30px;
  text-align: center;
  color: var(--gray);
  display: none;
  z-index: 1;
}
.fotos-produto ul li:hover a{
  display: block;
}
.fotos-produto ul li a:hover{
	color: var(--gray);
}
.fotos-produto ul li a.excluir{
	position: absolute;
	right: 0;
	top: 0;
	line-height: initial;
	padding: 5px;
}
.fotos-produto ul li a.destacar-foto{
	position: absolute;
	right: 30px;
	top: 0;
	line-height: initial;
	padding: 5px;
}
.fotos-produto ul li.active a.destacar-foto{
	color: var(--yellow);
	cursor: default;
}
.fotos-produto ul li a.handle{
	position: absolute;
	left: 0;
	top: 0;
	border-left:initial;
	border-right:1px solid var(--border);
	border-bottom:1px solid var(--border);
	line-height: initial;
	padding: 5px;
}
.fotos-produto ul li img{
	display: inline-block;
	vertical-align: middle;
	width: 90%;
	height: 90%;
  object-fit: cover;
}
.fotos-produto ul li .progress-bar{
  position: absolute;
  width: 90%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
/* img[data-original-src]{
  cursor: zoom-in;
} */


/* IMAGEM UPLOAD */
.imagem-upload{
	position: relative;
	text-align: center;
	height: 196px;
}
.imagem-upload img{
	position: absolute;
	left: 0;
	bottom: 0;
	top: 0;
	right: 0;
	margin:auto; 
	height: 100%;
}
.imagem-upload .upload-foto{
	position: absolute;
  cursor: pointer;
	top: 0;
	left: 0;
	width: 100%;
	height: 196px;
	z-index: 2;
	padding: 0;
	border: none;
	background: none;
	overflow: hidden;
}
.imagem-upload .upload-foto .dz-message {
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  height: 60px;
  line-height: 20px;
  padding: 10px 0;
  overflow: hidden;
  display: none;
  background: rgba(var(--white-rgb), .8)
}
.imagem-upload .upload-foto:hover .dz-message{
   display: block;
}
.imagem-upload .upload-foto .dz-preview{
  display: none;
}

/** Custom Legend**/
.custom-legend .item-hover{
  transition: all 0.2s ease-in-out;
}
.custom-legend:hover > .item-hover{
  opacity: .5;
}
.custom-legend:hover > .item-hover:hover,
.custom-legend > .item-hover.active{
  opacity: 1;
  background: var(--light);
  margin-right: -1.5rem;
  margin-left: -1.5rem;
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

/**INPUT MOEDA**/
.input.moeda{
  min-width: 65px;
}
/**LISTA ATRIBUTOS**/
.lista-atributos .editar{
  cursor: pointer;
}
.lista-atributos .editar .dz-preview{
  display: none;
}
.lista-atributos .editar:before{
  content: "\f040";
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  color: var(--color);
}

/**KIT**/
.remove-kit{
  position: absolute;
  left: 7px;
  top: 10px;
  padding: 10px;
}


/**RECIBO**/
.box.recibo{
  max-width: 1200px;
  margin: 0 auto;
}
.recibo-table{
  width: 100%;
}
.cancelada{
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 2;
  background: rgba(var(--white-rgb),.3);
  text-align: center;
}
.cancelada > div{
  position: absolute;
  width: 100%;
  top: 50%;
  height: 1px;
}
.cancelada p{
  font-size: clamp(50px, 10vw, 150px);
  color: var(--red);
  display: inline-block;
  border-top: clamp(10px, 1vw, 15px) solid var(--red);
  border-bottom: clamp(10px, 1vw, 15px) solid var(--red);
  font-family: Georgia, 'Times New Roman', Times, serif;
  transform-origin: center center;
  transform: rotateZ(-45deg);
  margin-top: clamp(-50px, -10vw, -150px);
  opacity: .3;
}

/**MAP**/
#map.loading:before{
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 99999;
  background:rgba(var(--white-rgb),.6); 
}
#map.loading:after{
  display: block;
  content: "";
  position: absolute;
  background: url('../images/loading.png') no-repeat center center;
  background-size: 50%;
  top: 50%;
  left: 50%;
  width: 100px;
  height: 100px;
  margin: -50px 0 0 -50px;
  cursor: default;
  -webkit-animation:fa-spin 1s steps(8) infinite;
  animation:fa-spin 1s steps(8) infinite;
}
.dark #loading .fa{
  filter: invert();
}
.marker span {
  display:flex;
  justify-content:center;
  align-items:center;
  box-sizing:border-box;
  width: 30px;
  height: 30px;
  color:#fff;
  border:solid 2px;
  border-radius: 0 70% 70%;
  box-shadow:0 0 2px #000;
  cursor: pointer;
  transform-origin:0 0;
  transform: rotateZ(-135deg);
}
.marker b {
  transform: rotateZ(135deg)
}
td .marker,
.place-marker .marker{
  height: 0;
  width: 22px;
}
td .marker span,
.place-marker .marker span{
  margin-left: 20px;
  margin-top: 34px;
}
.mapboxgl-popup {
  max-width: 200px;
  margin-left: -15px;
  margin-top: -30px;
}
.mapboxgl-popup-content h3{
  padding-right: 25px;
}
.rotas-list .move-map{
  position: relative;
}
.rotas-list .move-map:before{
  display: block;
  content: "";
  border-left: 2px dashed var(--border);
  height: 100%;
  position: absolute;
  left: 32px;
  z-index: -1;
}
.rotas-list .move-map:first-child::before{
  height: 50%;
  bottom: 0;
}
.rotas-list .move-map:last-child::before{
  height: 50%;
  top: 0;
}
.rotas-list .move-map .show-distance .border{
  min-width: 34px;
  text-align: center;
}
.box #print-route{
  width:300px;
  position:absolute; 
  z-index:5; 
  top:2rem;
  left:2rem;
  user-select: none;
}

/**CALENDARIO**/
.status-venda{
  width: 3px;
  position:absolute;
  top:0;
  left:0;
  bottom:0;
  transition: all 0.2s ease-in-out;
}
tr:hover .status-venda{
  width: 10px;
}
.legenda{
  display: inline-block;
  padding: 1rem;
  margin-bottom: 1rem;
  background: rgba(var(--white-rgb),.9);
  border-radius: var(--border-radius);
}
.dark .legenda{
  background: rgba(var(--lighter-rgb),.9);
}
#calendar a:hover{
  text-decoration: none;
}
.fc-theme-standard td.fc-daygrid-day{
  cursor: pointer;
}
.fc-theme-standard td.fc-daygrid-day:hover{
  background: var(--hover)!important;
}
.fc-daygrid-event:hover{
  opacity: .8;
}
.fc-direction-ltr .fc-daygrid-event.fc-event-end, 
.fc-direction-rtl .fc-daygrid-event.fc-event-start{
  padding: 5px;
}
.fc-h-event.dark{
  border: 1px solid var(--dark);
  background-color: var(--dark);
  --fc-event-text-color: var(--white);
}
.fc-h-event.blue{
  border: 1px solid var(--blue);
  background-color: var(--blue);
}
.fc-h-event.yellow{
  border: 1px solid var(--yellow);
  background-color: var(--yellow);
}
.fc-h-event.red{
  border: 1px solid var(--red);
  background-color: var(--red);
}
.fc-h-event.green{
  border: 1px solid var(--green);
  background-color: var(--green);
}
.fc-h-event.pink{
  border: 1px solid var(--pink);
  background-color: var(--pink);
}
.fc-h-event.purple{
  border: 1px solid var(--purple);
  background-color: var(--purple);
}
.fc .fc-daygrid-day.fc-day-today{
  --fc-today-bg-color: var(--color-light);
}
.fc .fc-button-primary{
  --fc-button-bg-color: var(--dark);
  --fc-button-hover-bg-color: var(--text);
  --fc-button-border-color: var(--dark);
  --fc-button-hover-border-color: var(--text);
  --fc-button-active-bg-color: var(--text);
}

/* modal app */
.bg-icons {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 70 70' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23F0F0F0' d='M65,17C65,10.377 59.623,5 53,5L17,5C10.377,5 5,10.377 5,17L5,53C5,59.623 10.377,65 17,65L53,65C59.623,65 65,59.623 65,53L65,17Z' /%3E%3C/svg%3E%0A") center center / 70px 70px repeat-x;
}
.bg-icons .app-icon {
  border-radius: 12px;
  display: block;
  margin: 0 auto;
  width: 60px;
}


/**CONQUISTAS**/
.meta,
.icone-js{
  border-radius: 50%;
  width: 80px;
  position: relative;
  height: 80px;
  line-height: 80px;
  text-align: center;
  font-size: 35px;
  background: var(--color);
  display: inline-block;
  color: white;
}
.meta:before,
.icone-js:before{
  border: 2px solid var(--white);
  width: 72px;
  height: 72px;
  content: "";
  display: block;
  position: absolute;
  left: 2px;
  top: 2px;
  border-radius: 50%;
}
#metas-list .o-5:hover{
  opacity: 1;
}

.trofeu{
  margin-top: -60px;
}
/** MEDIA QUERIES **/    
@media only screen and (max-width: 2000px) {
} 
@media only screen and (max-width: 1599px) {
  .trofeu{
    margin-top: 0;
  }
}
@media only screen and (max-width: 1400px) {
}

@media only screen and (max-width: 1199px) {
}

@media only screen and (max-width: 991px) {

}
@media only screen and (max-width: 960px) {
  #wrapper{
    margin-left: 60px;
  }
  #left{
    width: 60px;
    text-align: center;
  }
  #left .abre-menu{
    display: none;
  }
  #left .menu ul li a{
    display: inline-block;
    border: none;
    width: 40px;
    padding-left: 0;
    padding-right: 0;
    border-radius: 4px;
  }
  #left .menu ul li.active a{
    border: none;
  }
  #left .menu ul li a > span{
    display: none;
  }
  #left .menu ul li a > i{
    margin-right: 0!important;
  }
  #left:not(.small) .menu ul li a > .badge{
    position: absolute;
    right: -4px;
    top: 2px;
  }
  #left .logout{
    display: inline-block;
    border: none;
    width: 40px;
    padding-left: 0;
    padding-right: 0;
    border-radius: 4px;
    left: 10px;
    border-left: none;
  }
  #left .logout span{
    display: none;
  }
  #left .logout > i{
    margin-right: 0;
  }
  #left .abre-menu i:before{
    content:"\f105"
  }  
  #left h3{
    background-size: 50% auto;
  }
  #footer{
    padding-left: 60px;
  }
}
@media only screen and (max-width: 767px) {
  #wrapper,
  #wrapper.small{
    margin-left: 0;
  }
  body:not(.home) #content{
    padding-top: 100px;
  }
  .pace .pace-progress{
    background: var(--white);
  }
  .pace .pace-activity {
    border-top-color: var(--white);
    border-left-color: var(--white);
    top: 10px;
    right: 10px;
  }
  #left,
  #left.small{
    bottom: initial;
    width: initial;
    height: 60px;
    right: 0;
    padding-left: 60px;
    padding-right: 60px;
    padding-top: 0;
    text-align: center;
    border-radius: 0;
  }
  #left::before {
    left: 0;
    right: initial;
    top: initial;
    bottom: calc(-2 * var(--inverted-corners-size));
    border-top-left-radius: var(--inverted-corners-size);
    box-shadow: var(--color) 0px calc(-1 * var(--inverted-corners-size)) 0px 0px;
    z-index: -1;
  }
  #left::after {
    left: initial;
    right: 0;
    top: initial;
    bottom: calc(-2 * var(--inverted-corners-size));
    border-top-right-radius: var(--inverted-corners-size);
    box-shadow: var(--color) 0px calc(-1 * var(--inverted-corners-size)) 0px 0px;
  }
  .dark #left::before {
    box-shadow: var(--light) 0px calc(-1 * var(--inverted-corners-size)) 0px 0px;
  }
  .dark #left::after {
    box-shadow: var(--light) 0px calc(-1* var(--inverted-corners-size)) 0px 0px;
  }
  #left h3{
    top: 0;
    width: 60px;
    height: 60px;
    background-size: 50% auto;
  }
  #left .menu{
    max-height: initial;
    overflow-y: hidden;
    height: initial;
  }
  #left .menu ul li{
    border-bottom: 2px solid transparent;
    display: inline-block;
    height: 60px;
    padding-top: 10px;
  }
  #left .menu ul li.active{
    border-bottom: 2px solid #FFF;
    border-right:initial;
  }
  #left .menu ul li a{
    display: inline-block;
    border: none;
    width: 40px;
    padding-left: 0;
    padding-right: 0;
    border-radius: 4px;
  }
  #left .menu ul li.active a{
    border-left: none;
  }
  #left .menu ul li a > span{
    display: none;
  }
  #left .menu ul li a > i{
    margin-right: 0!important;
  }
  #left .logout,
  #left.small .logout{
    display: inline-block;
    border: none;
    width: 40px;
    padding-left: 0;
    padding-right: 0;
    border-radius: 4px;
    bottom: initial;
    left: initial;
    right: 10px;
    top: 10px;
  }
  #left .logout span{
    display: none;
  }
  #left .logout > i{
    margin-right: 0;
  }
  #left .abre-menu{
    display: none;
  }
  #left .abre-menu i:before{
    content:"\f105"
  }
  #footer,
  #footer.small{
    padding-left: 0;
  }

}

@media only screen and (max-width: 640px) {
  #left .abre-menu{
    display: inline-block;
    position: relative;
    opacity: 1;
    margin: initial;
    left: initial;
    right: initial;
    top: initial;
    border: none;
    height: initial;
    width: initial;
    margin-top: 12px;
    border-radius: initial;
    text-decoration: none;
    padding: 5px 1rem;
    border-radius: 4px;
  }
  .dark #left .abre-menu{
    background-color: var(--light);
  }
  #left .abre-menu:hover{
    background: rgba(var(--white-rgb),.1);
  }
  #left .abre-menu span{
    display: initial;
  }
  #left .abre-menu i{
    margin-right: .5rem;
  }
  #left .abre-menu i:before,
  #left.small .abre-menu i:before{
    content:"\f0c9"
  }
  #left .abre-menu.active i:before,
  #left.small .abre-menu.active i:before{
    content:"\f00d"
  }
  #left .menu{
    display: block;
    position: fixed;
    top: -100%;
    left: 0;
    right: 0;
    background:var(--color);
    transition: top 0.2s ease-in-out;
  }
  .dark #left .menu{
    background:var(--black);
  }
  #left.active .menu{
    top: 60px;
  }
  #left .menu ul,
  #left.small .menu ul{
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100vh - 60px);
    padding-bottom: 15px;
  }
  #left .menu ul li,
  #left.small .menu ul li{
    display: block;
    height: auto;
    padding: 0;
  }
  #left .menu ul li a,
  #left.small .menu ul li a{
    width: auto;
    display: flex;
    justify-content: flex-end;
    text-align: left;
    padding-top: 15px;
    padding-bottom: 15px;
  }
  #left .menu ul li a > span,
  #left.small .menu ul li a > span{
    display: initial;
    margin-left: .5rem;
    width: 52%;
  }
  #left .menu ul li a > .badge{
    right: calc(50% + 40px);
    top: 16px;
  }
}

@media only screen and (max-width: 575px) {
  
}

@media only screen and (max-width: 480px){

}

@media only screen and (max-width: 370px) {

}

@media (min-width: 992px) {
}

@page {
  size: A4;
  margin: 1cm;
}
@media print {
  html, body {
    width: 210mm;
    margin: 0 auto;
    height: auto!important;
    background: var(--white);
    position: relative;
  }
  * {
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
  }
  #left, 
  .footer-buttons, 
  #footer,
  .pace{
    display: none;
  }
  #wrapper{
    margin-left:0;
  }
  #content{
    padding-top: 0;
  }
  .largura{
    width: auto;
    padding: 0;
  }
  .box.recibo{
    box-shadow: none;
    padding: 0!important;
    border: none;
  }
  .box.recibo .cancelada{
    position: fixed;
  }
  .box.recibo .recibo-header{
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
  }
  .box.recibo .recibo-header img{
    width: auto;
    height: 1.5cm!important;
  }
  .box.recibo .recibo-footer{
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
  }
  .box.recibo .recibo-content .row,
  .box.recibo .recibo-content .accordion {
    page-break-inside: avoid;
  }
  .header-space {
    height: 2.5cm;
  }
  .footer-space {
    height: 2cm;
  }
  hr{
    margin: 1rem 0;
  }
}

/* highcharts */
.spline-shadow .highcharts-graph.highcharts-shadow{
  stroke: var(--white)!important;
}

/* workshop */
.ribbon {
  --bgcolor: var(--color);
  position: absolute;
  top: -6.1px;
  right: 10px;
}
.ribbon:before, .ribbon:after {
  position: absolute;
  content: "";
}
.ribbon:before {
 height: 6px;
 width: 6px;
 left: -6px;
 top: 0;
 background: var(--bgcolor);
}
.ribbon:after {
 height: 6px;
 width: 8px;
 left: -8px;
 top: 0;
 border-radius: 8px 8px 0 0;
 background: var(--dark);
}
.ribbon p {
  position: relative;
  display: block;
  text-align: center;
  color: var(--white);
  font-size: 14px;
  line-height: 1;
  padding: 12px 12px 20px;
  border-top-right-radius: 8px;
  overflow: hidden;
}
.ribbon p:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  left:50%;
  transform: translateX(-50%);
  margin-right:-50px;
  bottom:0;
  border-left: 500px solid transparent;
  border-right: 500px solid transparent;
  border-top: 170px solid var(--bgcolor);
  z-index: 0;
}
.ribbon p span{
  position: relative;
  z-index: 1;
}
.ribbon.red {
  --bgcolor: var(--red);
}
.ribbon.yellow {
  --bgcolor: var(--yellow);
}

/**BANNER**/
.banner{
  position: relative;
  height: 100%;
  display: block;
  background-size:cover;
}
.banner:hover{
  background-size:cover;
}
.banner .row{
  min-height: 100%;
}
.banner .icone{
  font-size: 200px;
  position: absolute;
  right: 15px;
  bottom: 15px;
  z-index: 0;
  opacity: .1;
  transition: all 0.2s ease-in-out;
}
.banner .img-banner{
  position: absolute;
  right: -15px;
  bottom: 0;
  z-index: 0;
  max-width: 60%;
  transition: all 0.2s ease-in-out;
  transform-origin: bottom right;
}
.banner:hover .img-banner{
  transform: scale(1.1);
}
.banner:hover .icone{
  font-size: 220px;
}
a.banner{
  text-decoration: none;
  color: var(--text);
  overflow: hidden;
}
.banner :not(img){
  position: relative;
  z-index: 1;
}
.banner.full img{
  object-fit:cover;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 0;
  left: 0;
  top: 0;
  transition: all 0.2s ease-in-out;
}
.banner.full:hover img{
  transform: scale(1.1);
  opacity: .8;
  -webkit-filter: blur(3px);
	filter: blur(3px);
}

.banner.full .row {
  z-index: 2;
  position: relative;
}

#notifications .notification.novo-pedido{
  width: 300px;
  max-width: 100%;
  min-width: 52%;
}
@media only screen and (max-width: 960px) {
  .banner.full:before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: linear-gradient(90deg, rgba(255, 255, 255, .8) 0%, rgba(255, 255, 255, 0) 100%);
      z-index: 1;
      border-radius: 10px;
  }

  .banner.full.dark:before {
      background: linear-gradient(90deg, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%);
  }
}


@media print{
  .box{
    -webkit-box-shadow:none;
    -moz-box-shadow:none;
    box-shadow:none;
    border-radius: 20px;
    border: 1px solid var(--border);
  }
}

/* camera  barcode */
#camera {
  position: relative;
}
#camera canvas,
#camera video {
  width: 100%!important;
  height: 100%!important;
}
canvas.drawing,
canvas.drawingBuffer {
  position: absolute;
  left: 0;
  top: 0;
}