html {
  margin: 0px;
  padding: 0px;
  height: 100vh;
  font-family: Calibri, Arial, Helvetica, sans-serif;
  background-color: var(--background-default-color);
  color: var(--default-color);
}

body {
  margin: 0px;
  padding: 0px;
  height: 100vh;
  font-family: "Product Sans", Calibri, Arial, Helvetica, sans-serif;
}

.zero-margin {
  margin: 0px;
}

.zero-padding {
  padding: 0px;
}

.zero-border {
  border: 0px;
  border-radius: 0px;
  box-shadow: 0px;
  -webkit-box-shadow: 0px;
}

a {
  cursor: pointer;
}

.icon-custom {
  color: var(--customer-blue) !important;
}

form {
  margin: 0px;
}

form.md-dialog-content-form {
  margin-bottom: 20px;
}

textarea {
  margin-bottom: 15px;
}

input,
button,
select,
textarea,
datalist {
  font-family: Calibri, Arial, Helvetica, sans-serif;
  font-size: inherit;
  line-height: inherit;
}

input[type="search"] {
  -webkit-appearance: searchfield;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: searchfield-cancel-button;
  cursor: pointer;
}

input.ng-invalid {
  border-color: var(--customer-red);
}

xlabel {
  margin-top: 15px;
}

select.ng-invalid {
  border-color: var(--customer-red);
}

textarea.ng-invalid {
  border-color: var(--customer-red);
}

.configuration-block {
  background-color: var(--configuration-block-default-color);
  color: var(--default-color);
  height: 100%;
}

.form-group {
  margin: 0px;
}

.btn-sm {
  max-height: 30px;
}

.btn-danger {
  border-color: var(--customer-red);
  background-color: var(--customer-red);
}

.btn-custom {
  color: var(--button-custom-color);
  background-color: var(--button-custom-background-color);
  border-color: var(--button-custom-border-color);
  width: 100%;
}

.btn-custom:hover,
.btn-custom:focus,
.btn-custom:active,
.btn-custom.active,
.open > .dropdown-toggle.btn-custom {
  color: var(--button-custom-color);
  background-color: var(--button-custom-hover-color);
  border-color: var(--button-custom-border-color);
}

.btn-custom:active,
.btn-custom.active,
.open > .dropdown-toggle.btn-custom {
  background-image: none;
}

.btn-custom.disabled,
.btn-custom[disabled],
fieldset[disabled] .btn-custom,
.btn-custom.disabled:hover,
.btn-custom[disabled]:hover,
fieldset[disabled] .btn-custom:hover,
.btn-custom.disabled:focus,
.btn-custom[disabled]:focus,
fieldset[disabled] .btn-custom:focus,
.btn-custom.disabled:active,
.btn-custom[disabled]:active,
fieldset[disabled] .btn-custom:active,
.btn-custom.disabled.active,
.btn-custom[disabled].active,
fieldset[disabled] .btn-custom.active {
  background-color: var(--customer-blue);
  border-color: var(--button-custom-border-color);
}

.field-icon {
  float: right;
  margin-right: 10px;
  margin-top: -25px;
  position: relative;
  z-index: 2;
}

.printonly {
  display: none;
}

@media print {
  .printonly {
    display: block;
  }

  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact; /* para navegadores compatíveis */
  }
}

.has-error .form-control {
  border-color: var(--customer-red);
}

.md-dialog.md-default-theme,
md-dialog {
  background-color: var(--dialog-background-default-color);
  color: var(--dialog-default-color);
  border-radius: 0;
}

.md-toolbar-tools {
  background-color: var(--toolbar-background-default-color);
  color: var(--toolbar-default-color);
  line-height: 32px;
  font-size: 16px;
}

.md-toolbar-tools-inverse {
  background-color: var(--toolbar-default-color);
  color: var(--toolbar-background-default-color);
  line-height: 32px;
  font-size: 16px;
}

md-toolbar.md-default-theme:not(.md-menu-toolbar),
md-toolbar:not(.md-menu-toolbar) {
  background-color: var(--toolbar-background-default-color);
  color: var(--toolbar-default-color);
}

md-progress-linear.md-default-theme .md-bar,
md-progress-linear .md-bar {
  background-color: var(--progress-bar-default-color);
}

md-progress-linear.md-default-theme .md-container,
md-progress-linear .md-container {
  background-color: var(--progress-bar-container-default-color);
}

.panel {
  background-color: var(--panel-background-default-color);
  color: var(--default-color);
  border: 0px;
  border-radius: 0px;
  box-shadow: 1px 1px 4px #aaa;
}

.panel > .panel-heading {
  background-color: var(--panel-heading-background-default-color);
  color: var(--panel-heading-default-color);
  border: 0px;
  border-radius: 0px;
  box-shadow: 0px;
  -webkit-box-shadow: 0px;
}

.panel > .panel-body {
  border: 0px;
  border-radius: 0px;
  box-shadow: 0px;
  -webkit-box-shadow: 0px;
}

.carousel-control.left,
.carousel-control.right {
  background: none !important;
  filter: progid:none !important;
}

md-dialog.fullscreen-dialog {
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  border-radius: 0;
}

.md-tab.md-active {
  color: var(--customer-blue) !important;
  font-weight: bold;
}

md-tabs.md-default-theme md-ink-bar,
md-tabs md-ink-bar {
  color: var(--md-tab-default-color);
  background-color: var(--md-tab-default-color);
}

md-tabs > md-tabs-wrapper > md-tabs-canvas > md-pagination-wrapper > md-tab-item:not([disabled]) {
  color: var(--md-tab-default-color);
}

.table {
  /* font-size: 12px; */
}

.table > tbody > tr > td {
  vertical-align: middle;
}

.table > thead > tr > th {
  vertical-align: middle;
  /* cursor: pointer; */
}

/*
  .header {
	position: relative;
	top: 0px;
	left: 0px;
	margin: 0 auto;
	width: 100%;
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
	opacity: 1;
	background-color: var(--customer-gray);
	color: var(--customer-white);
	z-index: 1;
	display: inline-block;
	font-weight: bold;
  }
  
  .footer {
	position: relative;
	vertical-align: middle; 
	background-color: var(--customer-gray); 
	color: var(--customer-white); 
	display: inline-block; 
	font-family: Arial;
	width: 100%;
	text-align: left; 
	font-size: 0.65em; 
	font-weight: 500;
	padding-top: 10px
  }
*/

.float-menu {
  line-height: 30px;
  height: 30px;
  font-size: 13px;
  opacity: 1;
  float: right;
  margin-right: 0px;
  vertical-align: middle;
}

.float-menu a {
  color: var(--customer-white);
  padding: 0px 12px;
  padding-right: 10px;
  text-decoration: none;
  opacity: 1;
  line-height: 32px;
  height: 32px;
}

.float-menu a:hover {
  color: var(--customer-yellow);
  text-decoration: none;
}

/*
  .active {
	color: var(--customer-red);
  }
*/

.btn {
  height: 34px;
}

.btn-lg {
  height: 46px;
}

.btn-group > .btn {
  /*min-width: 150px;*/
  border-radius: 0px;
}

@keyframes fa-blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 0;
  }
}

.fa-blink {
  -webkit-animation: fa-blink 1s linear infinite;
  -moz-animation: fa-blink 1s linear infinite;
  -ms-animation: fa-blink 1s linear infinite;
  -o-animation: fa-blink 1s linear infinite;
  animation: fa-blink 1s linear infinite;
}

.custom-image-container {
  position: relative;
}

.custom-image {
  opacity: 0.8;
  display: block;
  width: 100%;
  cursor: pointer;
  overflow: hidden;
  transition: 0.5s ease;
  backface-visibility: hidden;
  object-fit: contain;
}

.custom-middle {
  transition: 0.5s ease;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
}

.custom-image-container:hover .custom-image {
  opacity: 0.3;
}

.custom-image-container:hover .custom-middle {
  opacity: 0.8;
}

.custom-add-remove-text {
  background-color: var(--button-custom-background-color);
  color: var(--customer-white);
  font-size: smaller;
  padding: 14px;
}

.custom-add-remove-text a {
  color: var(--customer-white);
}

.fa {
  cursor: pointer;
}

.app-toolbar-icon {
  margin-left: 10px;
  transition: transform 0.1s;
  cursor: pointer;
}

.app-toolbar-icon:hover {
  text-shadow: 0px 0px 10px #ddd;
}

.truncate-text {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.truncate-text-2-lines {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.truncate-text-3-lines {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.truncate-text-4-lines {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.notification-side-bar {
  width: 50%;
}

.search-label {
  font-size: 0.9em;
}
.print-only {
  display: none;
}

.printable {
  font-family: Calibri, Arial, Helvetica;
  font-size: 0.9em;
  margin-bottom: 0px;
}

.page-panel-header {
  font-size: 1em;
  padding: 0px 15px;
  line-height: 32px;
}

.master {
  margin-top: 50px;
}

.visibled-print {
  display: none;
}

@media print {
  .master {
    margin-top: 0px;
  }

  .visibled-print {
    display: block;
  }

  .printable {
    font-family: Courier;
    font-size: 0.7em;
  }

  .no-print {
    display: none;
  }
  .print-only {
    display: inline-block;
  }

  a[href]:after {
    content: none !important;
  }

  .col-print-3 {
    width: 25%;
    margin-left: 0px;
  }

  .col-print-6 {
    width: 50%;
    margin-left: 0px;
  }

  .col-print-12 {
    width: 100%;
    margin-left: 0px;
  }
}

input[type="checkbox"] {
  margin: 6px 0px 0px;
  width: 10px;
  height: 10px;
  margin-top: 0px;
}

#navbar {
  transition: top 0.3s;
}

.dropdown-menu {
  transition: top 0.3s;
}

.file-drop-zone {
  display: block;
  margin: 0px auto;
  border: 5px dashed #aaa;
  width: 100%;
  padding: 20px;
  cursor: pointer;
  font-size: 12px;
}

.document-drop-zone {
  display: block;
  margin: 0px auto;
  border: 5px dashed #aaa;
  width: 100%;
  padding: 20px;
  cursor: pointer;
  font-size: 12px;
}

.logo-drop-zone {
  display: block;
  margin: 0px auto;
  border: 5px dashed #aaa;
  width: 100%;
  padding: 30px;
  cursor: pointer;
  font-size: 12px;
}

.image-drop-zone {
  display: block;
  margin: 0px auto;
  border: 5px dashed #aaa;
  width: 100%;
  padding: 30px;
  cursor: pointer;
  font-size: 12px;
}

.img-responsive:hover img {
  -moz-transform: scale(1.1);
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.overlay {
  position: absolute;
  bottom: 0;
  background: rgb(0, 0, 0);
  background: rgba(0, 0, 0, 0.5); /* Black see-through */
  color: #f1f1f1;
  width: 100%;
  transition: 0.5s ease;
  opacity: 0;
  color: white;
  font-size: 20px;
  padding: 20px;
  text-align: center;
}

.img-responsive:hover .overlay {
  opacity: 1;
}

.post-it-title {
  font-size: 15px;
  font-weight: bold;
}

.post-it-text {
  font-size: 12px;
}

.post-it {
  cursor: pointer;
}

.post-it:nth-child(even) {
  transform: rotate(1deg);
  position: relative;
}

.post-it:nth-child(2n) {
  transform: rotate(1.5deg);
  position: relative;
}

.post-it:nth-child(3n) {
  transform: rotate(-1deg);
  position: relative;
}

.post-it:nth-child(7n) {
  transform: rotate(-1.5deg);
  position: relative;
}

.draggable:hover {
  cursor: grab;
}

.stepper-wrapper {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  margin: 10px 0px;
}

.stepper-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  @media (max-width: 768px) {
    font-size: 12px;
  }
}

.stepper-item::before {
  position: absolute;
  content: "";
  border-bottom: 2px solid #ccc;
  width: 100%;
  top: 20px;
  left: -50%;
  z-index: 2;
}

.stepper-item::after {
  position: absolute;
  content: "";
  border-bottom: 2px solid #ccc;
  width: 100%;
  top: 20px;
  left: 50%;
  z-index: 2;
}

.stepper-item .step-counter {
  position: relative;
  z-index: 5;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #ccc;
  margin-bottom: 6px;
  color: var(--customer-white);
}

.stepper-item.active {
  font-weight: bold;
  color: var(--customer-gray);
}

.stepper-item.completed .step-counter {
  background-color: var(--customer-blue);
}

.stepper-item.completed::after {
  position: absolute;
  content: "";
  border-bottom: 2px solid var(--customer-blue);
  width: 100%;
  top: 20px;
  left: 50%;
  z-index: 3;
}

.stepper-item:first-child::before {
  content: none;
}
.stepper-item:last-child::after {
  content: none;
}

.toast-top-center {
  margin-top: 20px;
}

.show-print {
  display: none;
}

/* PRINT */
@media print {
  .no-print,
  .no-print * {
    display: none !important;
  }

  tr {
    font-size: 0.8em !important;
  }

  .show-print {
    display: flex !important;
  }

  .toast {
    display: none !important;
  }
}
