#page-loader {

  background-color: rgba(0, 0, 0, .8);
  text-align:       center;
  position:         fixed;
  z-index:          9999;
  display:          none;
  height:           100%;
  width:            100%;
  color:            #FFFFFF;
  left:             0;
  top:              0;

}



.automator-tooltip-hover {
  position: relative;
}



.automator-tooltip-hover:hover::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 120%;
  left: 0%;
  transform: translateX(-50%);
  background-color: #1f2937;
  color: white;
  padding: 0.5rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  white-space: nowrap;
  z-index: 9999;
  pointer-events: none;
}



.automator-tooltip-hover:hover::before {
  content: '';
  position: absolute;
  bottom: calc(115% - 8px);
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: #1f2937;
  z-index: 9999;
  pointer-events: none;
}



.automator-input-password {

  -webkit-text-security: disc;
  text-security:         disc;

}



/*
|--------------------------------------------------------------------------
| Automator Toast - Container
|--------------------------------------------------------------------------
*/

.automator-toast-container {
  max-width: 100vw;
  max-height: 100vh;
  overflow: visible;
  pointer-events: none;
}

.automator-toast-container .automator-toast-alert {
  pointer-events: auto;
}



/*
|--------------------------------------------------------------------------
| Centralização personalizada
|--------------------------------------------------------------------------
*/

.automator-toast-container-center-x {
  left: 50%;
}

.automator-toast-container-center-y {
  top: 50%;
}

.automator-toast-container-center-x.automator-toast-container-center-y {
  transform: translate(-50%, -50%);
}

.automator-toast-container-center-x:not(.automator-toast-container-center-y) {
  transform: translateX(-50%);
}

.automator-toast-container-center-y:not(.automator-toast-container-center-x) {
  transform: translateY(-50%);
}



/*
|--------------------------------------------------------------------------
| Containers laterais/topo/bottom
|--------------------------------------------------------------------------
*/

.automator-toast-container.top-0,
.automator-toast-container.bottom-0 {
  width: auto;
  max-width: 100vw;
}

.automator-toast-container.start-0 {
  align-items: flex-start;
}

.automator-toast-container.end-0 {
  align-items: flex-end;
}

.automator-toast-container.top-0 {
  max-height: 100vh;
  overflow-y: auto;
  overflow-x: hidden;
}

.automator-toast-container.bottom-0 {
  max-height: 100vh;
  overflow-y: auto;
  overflow-x: hidden;
}



/*
|--------------------------------------------------------------------------
| Toast responsivo
|--------------------------------------------------------------------------
*/

.automator-toast-alert {
  display: block;
  width: min(420px, calc(100vw - 2rem));
  max-width: calc(100vw - 2rem);
  max-height: calc(100vh - 2rem);
  opacity: 0;
  overflow: hidden;
  transition: opacity .30s ease, transform .30s ease, margin .30s ease;
  will-change: opacity, transform;
  pointer-events: auto;
}

.automator-toast-alert.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.automator-toast-alert.automator-toast-hiding {
  pointer-events: none;
}



/*
|--------------------------------------------------------------------------
| Header / título centralizado
|--------------------------------------------------------------------------
*/

.automator-toast-header {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) 2rem;
  align-items: center;
  gap: .5rem;
  flex-shrink: 0;
  max-width: 100%;
}

.automator-toast-header .btn-close {
  grid-column: 3;
  justify-self: end;
  margin: 0;
}

.automator-toast-header-spacer {
  display: block;
  width: 2rem;
  height: 1rem;
}

.automator-toast-title {
  grid-column: 2;
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}



/*
|--------------------------------------------------------------------------
| Corpo do Toast com scroll vertical
|--------------------------------------------------------------------------
*/

.automator-toast-body {
  max-height: calc(100vh - 8rem);
  overflow-y: auto;
  overflow-x: hidden;
  word-break: normal;
  overflow-wrap: anywhere;
}

.automator-toast-message {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

.automator-toast-message p:last-child {
  margin-bottom: 0;
}

.automator-file-library-modal .automator-file-library-item {
  padding: 0;
  min-width: 0;
  transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.automator-file-library-modal .automator-file-library-item:hover,
.automator-file-library-modal .automator-file-library-item:focus {
  border-color: var(--bs-primary) !important;
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .12);
  transform: translateY(-2px);
}

.automator-file-library-modal .automator-file-library-preview {
  min-height: 0;
  overflow: hidden;
}

.automator-file-library-modal .card-header,
.automator-file-library-modal .card-footer {
  font-size: .8rem;
}

.automator-toast-alert.automator-ajax-response-toast .automator-toast-message {
  text-align: center;
}

.automator-toast-footer {
  position: sticky;
  bottom: 0;
  background: inherit;
  padding-top: .75rem;
}



/*
|--------------------------------------------------------------------------
| Backdrop
|--------------------------------------------------------------------------
*/

.automator-toast-backdrop {
  cursor: default;
}

.automator-toast-backdrop-transparent {
  background-color: transparent;
}

.automator-toast-backdrop-hidden {
  opacity: 0;
  transition: opacity .30s ease;
}

.automator-toast-backdrop-show {
  opacity: 1;
}



/*
|--------------------------------------------------------------------------
| Centro da tela: fadeIn / fadeOut
|--------------------------------------------------------------------------
*/

.automator-toast-animation-fade {
  opacity: 0;
  transform: scale(.96);
}

.automator-toast-animation-fade.automator-toast-show {
  opacity: 1;
  transform: scale(1);
}

.automator-toast-animation-fade.automator-toast-hiding {
  opacity: 0;
  transform: scale(.96);
}



/*
|--------------------------------------------------------------------------
| Topo centro: slideDown / slideUp
|--------------------------------------------------------------------------
*/

.automator-toast-animation-top-center {
  opacity: 0;
  transform: translate3d(0, -20px, 0);
}

.automator-toast-animation-top-center.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-top-center.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(0, -20px, 0);
}



/*
|--------------------------------------------------------------------------
| Bottom centro: slideUp / slideDown
|--------------------------------------------------------------------------
*/

.automator-toast-animation-bottom-center,
.automator-toast-animation-bottom {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

.automator-toast-animation-bottom-center.automator-toast-show,
.automator-toast-animation-bottom.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-bottom-center.automator-toast-hiding,
.automator-toast-animation-bottom.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}



/*
|--------------------------------------------------------------------------
| Esquerda topo: slideRight / slideLeft
|--------------------------------------------------------------------------
*/

.automator-toast-animation-top-left {
  opacity: 0;
  transform: translate3d(-30px, 0, 0);
}

.automator-toast-animation-top-left.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-top-left.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(-30px, 0, 0);
}



/*
|--------------------------------------------------------------------------
| Direita topo: slideLeft / slideRight
|--------------------------------------------------------------------------
*/

.automator-toast-animation-top-right {
  opacity: 0;
  transform: translate3d(30px, 0, 0);
}

.automator-toast-animation-top-right.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-top-right.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(30px, 0, 0);
}



/*
|--------------------------------------------------------------------------
| Esquerda bottom: slideUp / slideDown
|--------------------------------------------------------------------------
*/

.automator-toast-animation-bottom-left {
  opacity: 0;
  transform: translate3d(-30px, 20px, 0);
}

.automator-toast-animation-bottom-left.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-bottom-left.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(-30px, 20px, 0);
}



/*
|--------------------------------------------------------------------------
| Direita bottom: slideUp / slideDown
|--------------------------------------------------------------------------
*/

.automator-toast-animation-bottom-right {
  opacity: 0;
  transform: translate3d(30px, 20px, 0);
}

.automator-toast-animation-bottom-right.automator-toast-show {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.automator-toast-animation-bottom-right.automator-toast-hiding {
  opacity: 0;
  transform: translate3d(30px, 20px, 0);
}



/*
|--------------------------------------------------------------------------
| Ajustes mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 575.98px) {

  .automator-toast-container {
    width: 100vw;
    max-width: 100vw;
    padding-left: .75rem !important;
    padding-right: .75rem !important;
  }

  .automator-toast-container.start-0,
  .automator-toast-container.end-0,
  .automator-toast-container-center-x {
    left: 0;
    right: 0;
    transform: none;
  }

  .automator-toast-container-center-x.automator-toast-container-center-y {
    left: 50%;
    right: auto;
    transform: translate(-50%, -50%);
    width: calc(100vw - 1.5rem);
  }

  .automator-toast-container-center-x:not(.automator-toast-container-center-y) {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    width: calc(100vw - 1.5rem);
  }

  .automator-toast-alert {
    width: 100%;
    max-width: 100%;
    max-height: calc(100vh - 1.5rem);
  }

  .automator-toast-body {
    max-height: calc(100vh - 7rem);
  }

}



.automator-password-group {

  border-radius: var(--bs-border-radius, .375rem);

}



.automator-password-group .form-floating > .form-control {

  border-top-right-radius:    0;
  border-bottom-right-radius: 0;

}



.automator-password-group .form-control:focus {

  box-shadow: none;

}



.automator-password-group:focus-within {

  box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);

}



.automator-password-group:focus-within .form-control,
.automator-password-group:focus-within .input-group-text {

  border-color: #86b7fe !important;

}
