.loader-inp-file-wrapper {
    display: inline-flex;
    align-items: center;
    max-width: 0;
    opacity: 0;
}

.loader-inp-file-wrapper.show {
    max-width: unset;
    opacity: 1;
    margin: 12px 0;
}

.loader-inp-file-wrapper .loader-inp-file-outer {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: rotation 1s linear infinite;
}

.loader-inp-file-wrapper .loader-inp-file-inner {
    width: 100%;
    height: 100%;
    border: 4px solid var(--color-green-7);
    border-bottom-color: var(--color-green-1);
    border-radius: 50%;
    box-sizing: border-box;
}

.loader-inp-file-wrapper.show .loader-inp-file-inner {
    animation: scale-up 0.3s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

.loader-inp-file-wrapper:not(.show) .loader-inp-file-inner {
    animation: scale-down 0.3s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

#compose {
  position: relative;
}

#dropzone_overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.5);
  z-index: 1000;
  cursor: not-allowed;
}

@keyframes rotation {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes scale-up {
  0% { transform: scale(0); }
  100% { transform: scale(1); }
}

@keyframes scale-down {
  0% { transform: scale(1); }
  100% { transform: scale(0); }
}