.mt-72 {
  margin-top: var(--space-px-72) !important;
}

.mt-48 {
  margin-top: var(--space-px-48) !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mt-32 {
  margin-top: var(--space-px-32) !important;
}

.mt-24 {
  margin-top: var(--space-px-24) !important;
}

.mt-16 {
  margin-top: var(--space-px-16) !important;
}

.mt-8 {
  margin-top: var(--space-px-8) !important;
}

.mt-4 {
  margin-top: var(--space-px-4) !important;
}

.mt-2 {
  margin-top: var(--space-px-2) !important;
}

.mb-16 {
  margin-bottom: var(--space-px-16) !important;
}

.mb-48 {
  margin-bottom: var(--space-px-48) !important;
}

.b-radius-4 {
  border-radius: var(--borders-radius-px-4) !important;
}

.d-none {
  display: none !important;
}

html, button {
  font-family: 'DM Sans', sans-serif;
}

/* Create corresponding view components */

.qr-button {
    border-radius: var(--borders-radius-px-2) !important;
}

.qr-button {
    font-weight: var(--font-weights-semibold);
    font-size: var(--font-sizes-px-14);
    border: none;
    cursor: pointer;
    transition: background-color 0.3s;
    -webkit-appearance: none;
}

.qr-button--block {
    width: 100%;
}

.qr-button--primary:hover {
    background-color: #A473CC;
}

.qr-button--primary:active {
    background-color: #835CA3;
}

.qr-button:focus-visible {
  outline: solid black;
}

.qr-form__field, .qr-form {
    width: 100%;
}

.qr-form__label {
    display: block;
    font-size: var(--font-sizes-px-16);
    font-weight: var(--font-weights-semibold);
    margin-bottom: 8px;
}

.qr-form__input {
    width: 100%;
    height: var(--heights-input-md);
    background: #FFFFFF;
    border: 1px solid #BFBFBF;
    border-radius: var(--borders-radius-px-2);
    padding-left: 8px;
    padding-right: 8px;
}

.qr-link {
    font-weight: var(--font-weights-regular);
    color: #7c0364;
    font-size: 14px;
    text-decoration: none;
    display: inline-block;
    text-align: center;
}

.qr-link:hover {
    text-decoration: underline;
    color: color-mix(in srgb, var(--colors-link) 10%, transparent);
}

.qr-link__group {
    display: flex;
    justify-content: center;
    width: 100%;
}

.qr-link__divider {
    display: inline-block;
    height: 18px;
    width: 1px;
    margin: 0 8px;
    background: #545454;
}

.qr-link:focus-visible {
  outline: solid black;
}

@media all and (max-width: 1000px) {
  .qr-link, .qr-link__divider {
    color: #ffffff;
  }
}

.qr-login__error__wrapper {
  border-radius: var(--borders-radius-px-2);
  padding: var(--space-px-8) var(--space-px-32) var(--space-px-8) var(--space-px-8);
  position: absolute;
  background-color: black;
  bottom: var(--space-px-16);
  left: var(--space-px-16);
  color: white;
  max-width: 300px;
}

.qr-login__close {
  position: absolute;
  right: 0;
  border: none;
  background-color: black;
  color: white;
  cursor: pointer;
}

.qr-login__close:focus-visible {
  outline: solid white;
}

@media all and (max-width: 1000px) {
  .qr-login__error__wrapper, .qr-login__close {
    background: #fff;
    color: #000;
  }
}

:root {
  --toastify-color-light: #fff;
  --toastify-color-dark: #121212;
  --toastify-color-info: #3498db;
  --toastify-color-success: #07bc0c;
  --toastify-color-warning: #f1c40f;
  --toastify-color-error: #e74c3c;
  --toastify-color-transparent: rgba(255, 255, 255, 0.7);
  --toastify-icon-color-info: var(--toastify-color-info);
  --toastify-icon-color-success: var(--toastify-color-success);
  --toastify-icon-color-warning: var(--toastify-color-warning);
  --toastify-icon-color-error: var(--toastify-color-error);
  --toastify-toast-width: 320px;
  --toastify-toast-background: #fff;
  --toastify-toast-min-height: 64px;
  --toastify-toast-max-height: 800px;
  --toastify-font-family: sans-serif;
  --toastify-z-index: 9999;
  --toastify-text-color-light: #757575;
  --toastify-text-color-dark: #fff;
  --toastify-text-color-info: #fff;
  --toastify-text-color-success: #fff;
  --toastify-text-color-warning: #fff;
  --toastify-text-color-error: #fff;
  --toastify-spinner-color: #616161;
  --toastify-spinner-color-empty-area: #e0e0e0;
  --toastify-color-progress-light: linear-gradient(
    to right,
    #4cd964,
    #5ac8fa,
    #007aff,
    #34aadc,
    #5856d6,
    #ff2d55
  );
  --toastify-color-progress-dark: #bb86fc;
  --toastify-color-progress-info: var(--toastify-color-info);
  --toastify-color-progress-success: var(--toastify-color-success);
  --toastify-color-progress-warning: var(--toastify-color-warning);
  --toastify-color-progress-error: var(--toastify-color-error);
}

.Toastify__toast-container {
  z-index: 9999;
  z-index: var(--toastify-z-index);
  -webkit-transform: translate3d(0, 0, 9999);
  -webkit-transform: translate3d(0, 0, var(--toastify-z-index));
  position: fixed;
  padding: 4px;
  width: 320px;
  width: var(--toastify-toast-width);
  box-sizing: border-box;
  color: #fff;
}

.Toastify__toast-container--top-left {
  top: 1em;
  left: 1em;
}

.Toastify__toast-container--top-center {
  top: 1em;
  left: 50%;
  transform: translateX(-50%);
}

.Toastify__toast-container--top-right {
  top: 1em;
  right: 1em;
}

.Toastify__toast-container--bottom-left {
  bottom: 1em;
  left: 1em;
}

.Toastify__toast-container--bottom-center {
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
}

.Toastify__toast-container--bottom-right {
  bottom: 1em;
  right: 1em;
}

@media only screen and (max-width : 480px) {
  .Toastify__toast-container {
    width: 100vw;
    padding: 0;
    left: 0;
    margin: 0;
  }
  .Toastify__toast-container--top-left, .Toastify__toast-container--top-center, .Toastify__toast-container--top-right {
    top: 0;
    transform: translateX(0);
  }
  .Toastify__toast-container--bottom-left, .Toastify__toast-container--bottom-center, .Toastify__toast-container--bottom-right {
    bottom: 0;
    transform: translateX(0);
  }
  .Toastify__toast-container--rtl {
    right: 0;
    left: auto;
    left: initial;
  }
}

.Toastify__toast {
  position: relative;
  min-height: 64px;
  min-height: var(--toastify-toast-min-height);
  box-sizing: border-box;
  margin-bottom: 1rem;
  padding: 8px;
  border-radius: 4px;
  box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.1), 0 2px 15px 0 rgba(0, 0, 0, 0.05);
  display: flex;
  justify-content: space-between;
  max-height: 800px;
  max-height: var(--toastify-toast-max-height);
  overflow: hidden;
  font-family: sans-serif;
  font-family: var(--toastify-font-family);
  cursor: default;
  direction: ltr;
  /* webkit only issue #791 */
  z-index: 0;
}

.Toastify__toast--rtl {
  direction: rtl;
}

.Toastify__toast--close-on-click {
  cursor: pointer;
}

.Toastify__toast-body {
  margin: auto 0;
  flex: 1 1 auto;
  padding: 6px;
  display: flex;
  align-items: center;
}

.Toastify__toast-body > div:last-child {
  word-break: break-word;
  flex: 1;
}

[dir="ltr"] .Toastify__toast-icon {
          margin-right: 10px;
}

.Toastify__toast-icon:dir(ltr) {
          margin-right: 10px;
}

[dir="rtl"] .Toastify__toast-icon {
          margin-left: 10px;
}

.Toastify__toast-icon:dir(rtl) {
          margin-left: 10px;
}

.Toastify__toast-icon {
  margin-inline-end: 10px;
  width: 20px;
  flex-shrink: 0;
  display: flex;
}

.Toastify--animate {
  animation-fill-mode: both;
  animation-duration: 0.7s;
}

.Toastify--animate-icon {
  animation-fill-mode: both;
  animation-duration: 0.3s;
}

@media only screen and (max-width : 480px) {
  .Toastify__toast {
    margin-bottom: 0;
    border-radius: 0;
  }
}

.Toastify__toast-theme--dark {
  background: #121212;
  background: var(--toastify-color-dark);
  color: #fff;
  color: var(--toastify-text-color-dark);
}

.Toastify__toast-theme--light {
  background: #fff;
  background: var(--toastify-color-light);
  color: #757575;
  color: var(--toastify-text-color-light);
}

.Toastify__toast-theme--colored.Toastify__toast--default {
  background: #fff;
  background: var(--toastify-color-light);
  color: #757575;
  color: var(--toastify-text-color-light);
}

.Toastify__toast-theme--colored.Toastify__toast--info {
  color: #fff;
  color: var(--toastify-text-color-info);
  background: #3498db;
  background: var(--toastify-color-info);
}

.Toastify__toast-theme--colored.Toastify__toast--success {
  color: #fff;
  color: var(--toastify-text-color-success);
  background: #07bc0c;
  background: var(--toastify-color-success);
}

.Toastify__toast-theme--colored.Toastify__toast--warning {
  color: #fff;
  color: var(--toastify-text-color-warning);
  background: #f1c40f;
  background: var(--toastify-color-warning);
}

.Toastify__toast-theme--colored.Toastify__toast--error {
  color: #fff;
  color: var(--toastify-text-color-error);
  background: #e74c3c;
  background: var(--toastify-color-error);
}

.Toastify__progress-bar-theme--light {
  background: linear-gradient(
    to right,
    #4cd964,
    #5ac8fa,
    #007aff,
    #34aadc,
    #5856d6,
    #ff2d55
  );
  background: var(--toastify-color-progress-light);
}

.Toastify__progress-bar-theme--dark {
  background: #bb86fc;
  background: var(--toastify-color-progress-dark);
}

.Toastify__progress-bar--info {
  background: #3498db;
  background: var(--toastify-color-progress-info);
}

.Toastify__progress-bar--success {
  background: #07bc0c;
  background: var(--toastify-color-progress-success);
}

.Toastify__progress-bar--warning {
  background: #f1c40f;
  background: var(--toastify-color-progress-warning);
}

.Toastify__progress-bar--error {
  background: #e74c3c;
  background: var(--toastify-color-progress-error);
}

.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--success, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning, .Toastify__progress-bar-theme--colored.Toastify__progress-bar--error {
  background: rgba(255, 255, 255, 0.7);
  background: var(--toastify-color-transparent);
}

.Toastify__close-button {
  color: #fff;
  background: transparent;
  outline: none;
  border: none;
  padding: 0;
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s ease;
  align-self: flex-start;
}

.Toastify__close-button--light {
  color: #000;
  opacity: 0.3;
}

.Toastify__close-button > svg {
  fill: currentColor;
  height: 16px;
  width: 14px;
}

.Toastify__close-button:hover, .Toastify__close-button:focus {
  opacity: 1;
}

@keyframes Toastify__trackProgress {
  0% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}

.Toastify__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  z-index: 9999;
  z-index: var(--toastify-z-index);
  opacity: 0.7;
  transform-origin: left;
}

.Toastify__progress-bar--animated {
  animation: Toastify__trackProgress linear 1 forwards;
}

.Toastify__progress-bar--controlled {
  transition: transform 0.2s;
}

.Toastify__progress-bar--rtl {
  right: 0;
  left: auto;
  left: initial;
  transform-origin: right;
}

.Toastify__spinner {
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 2px solid;
  border-radius: 100%;
  border-color: #e0e0e0;
  border-color: var(--toastify-spinner-color-empty-area);
  border-right-color: #616161;
  border-right-color: var(--toastify-spinner-color);
  animation: Toastify__spin 0.65s linear infinite;
}

@keyframes Toastify__bounceInRight {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    transform: translate3d(10px, 0, 0);
  }
  90% {
    transform: translate3d(-5px, 0, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0);
  }
}

@keyframes Toastify__bounceInLeft {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0);
  }
  75% {
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    transform: translate3d(5px, 0, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0);
  }
}

@keyframes Toastify__bounceInUp {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  75% {
    transform: translate3d(0, 10px, 0);
  }
  90% {
    transform: translate3d(0, -5px, 0);
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0);
  }
}

@keyframes Toastify__bounceInDown {
  from, 60%, 75%, 90%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0);
  }
  75% {
    transform: translate3d(0, -10px, 0);
  }
  90% {
    transform: translate3d(0, 5px, 0);
  }
  to {
    transform: none;
  }
}

@keyframes Toastify__bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0);
  }
}

.Toastify__bounce-enter--top-left, .Toastify__bounce-enter--bottom-left {
  animation-name: Toastify__bounceInLeft;
}

.Toastify__bounce-enter--top-right, .Toastify__bounce-enter--bottom-right {
  animation-name: Toastify__bounceInRight;
}

.Toastify__bounce-enter--top-center {
  animation-name: Toastify__bounceInDown;
}

.Toastify__bounce-enter--bottom-center {
  animation-name: Toastify__bounceInUp;
}

.Toastify__bounce-exit--top-left, .Toastify__bounce-exit--bottom-left {
  animation-name: Toastify__bounceOutLeft;
}

.Toastify__bounce-exit--top-right, .Toastify__bounce-exit--bottom-right {
  animation-name: Toastify__bounceOutRight;
}

.Toastify__bounce-exit--top-center {
  animation-name: Toastify__bounceOutUp;
}

.Toastify__bounce-exit--bottom-center {
  animation-name: Toastify__bounceOutDown;
}

@keyframes Toastify__zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}

@keyframes Toastify__zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}

.Toastify__zoom-enter {
  animation-name: Toastify__zoomIn;
}

.Toastify__zoom-exit {
  animation-name: Toastify__zoomOut;
}

@keyframes Toastify__flipIn {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}

@keyframes Toastify__flipOut {
  from {
    transform: perspective(400px);
  }
  30% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}

.Toastify__flip-enter {
  animation-name: Toastify__flipIn;
}

.Toastify__flip-exit {
  animation-name: Toastify__flipOut;
}

@keyframes Toastify__slideInRight {
  from {
    transform: translate3d(110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__slideInLeft {
  from {
    transform: translate3d(-110%, 0, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__slideInUp {
  from {
    transform: translate3d(0, 110%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__slideInDown {
  from {
    transform: translate3d(0, -110%, 0);
    visibility: visible;
  }
  to {
    transform: translate3d(0, 0, 0);
  }
}

@keyframes Toastify__slideOutRight {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(110%, 0, 0);
  }
}

@keyframes Toastify__slideOutLeft {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(-110%, 0, 0);
  }
}

@keyframes Toastify__slideOutDown {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, 500px, 0);
  }
}

@keyframes Toastify__slideOutUp {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    transform: translate3d(0, -500px, 0);
  }
}

.Toastify__slide-enter--top-left, .Toastify__slide-enter--bottom-left {
  animation-name: Toastify__slideInLeft;
}

.Toastify__slide-enter--top-right, .Toastify__slide-enter--bottom-right {
  animation-name: Toastify__slideInRight;
}

.Toastify__slide-enter--top-center {
  animation-name: Toastify__slideInDown;
}

.Toastify__slide-enter--bottom-center {
  animation-name: Toastify__slideInUp;
}

.Toastify__slide-exit--top-left, .Toastify__slide-exit--bottom-left {
  animation-name: Toastify__slideOutLeft;
}

.Toastify__slide-exit--top-right, .Toastify__slide-exit--bottom-right {
  animation-name: Toastify__slideOutRight;
}

.Toastify__slide-exit--top-center {
  animation-name: Toastify__slideOutUp;
}

.Toastify__slide-exit--bottom-center {
  animation-name: Toastify__slideOutDown;
}

@keyframes Toastify__spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.strength-meter__progress-bar {
  background: linear-gradient(
    90deg,
    hsl(var(--colors-important)) 0%,
    hsl(var(--colors-warning)) 50%,
    hsl(var(--colors-success)) 100%
  ) !important;
}

.password-requirements__strength-container {
  margin-bottom: var(--space-px-16);
}

.password-requirements__strength--weak {
  color: hsl(var(--colors-important));
}

.password-requirements__strength--weak:after {
  content: '✕';
  font-size: var(--font-sizes-px-20);
  margin-left: var(--space-px-4);
  vertical-align: text-bottom;
}

.password-requirements__strength--strong {
  color: hsl(var(--colors-success));
}

.password-requirements__strength--strong:after {
  content: '✔';
  font-size: var(--font-sizes-px-20);
  margin-left: var(--space-px-4);
  vertical-align: text-bottom;
}

.progress-bar__container {
  background: #ECECEC;
  border-radius: var(--borders-radius-px-4);
}

.progress-bar__container-gradient {
  display: flex;
  justify-content: flex-end;
}

.progress-bar__meter {
  transition: width 0.5s;
  border-radius: var(--borders-radius-px-4);
}

.progress-bar__meter-primary {
  background: hsl(var(--colors-primary));
}

.progress-bar__meter-inverted {
  background: #ECECEC;
  border-radius: 0;
}

.progress-bar--xs {
  height: 5px;
}

.progress-bar--sm {
  height: 8px;
}

.password-requirements--success {
  color: hsl(var(--colors-success));
}

.password-requirements--success:before {
  content: '✔';
  font-size: var(--font-sizes-px-20);
  margin-right: var(--space-px-4);
  margin-left: var(--space-px-2);
  vertical-align: text-bottom;
}

.password-requirements--danger {
  color: hsl(var(--colors-important));
}

.password-requirements--danger:before {
  content: '✕';
  font-size: var(--font-sizes-px-20);
  margin-right: var(--space-px-4);
  margin-left: var(--space-px-2);
  vertical-align: text-bottom;
}

@media all and (max-width: 1000px) {
  .password-requirements--danger {
    color: hsl(var(--colors-important));
  }
}

.safe-password-article__url {
    color: rgb(0, 82, 204);
}

@media all and (max-width: 1000px) {
    .safe-password-article__url {
        color: hsl(var(--colors-link));
    }
}

.password-input__container {
  position: relative;
}

.password-input__input {
  padding-right: var(--space-px-32) !important;
}

.password-input__toggle {
  position: absolute;
  top: 7px;
  right: 7px;
}

.password-input__toggle-text {
  top: 7px;
}

.password-input__toggle-password {
  top: 9px;
}

/* Fill viewport: avoid a black band when html/body height: 100% is shorter than the visible area */
html[\:has\(.sign-in__container\)],
body[\:has\(.sign-in__container\)] {
    margin: 0;
    min-height: 100vh;
    min-height: 100dvh;
}
html:has(.sign-in__container),
body:has(.sign-in__container) {
    margin: 0;
    min-height: 100vh;
    min-height: 100dvh;
}
.sign-in__container {
    background: #000000;
    position: relative;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    overflow: hidden;
}
.sign-in__content {
    box-sizing: border-box;
    flex: 0 0 auto;
    width: min(100%, 670px);
    max-width: 670px;
    min-height: 100vh;
    min-height: 100dvh;
    align-self: stretch;
    overflow-y: auto;
    background: #ffffff;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 115px;
}
.sign-in__logo {
    width: 125px;
}
.sign-in__logo_white {
    width: 100px;
    display: none;
}
.sign-in__side-content {
    flex: 1 1 0%;
    min-width: 0;
    min-height: 100vh;
    min-height: 100dvh;
    align-self: stretch;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sign-in__mission {
    max-height: min(40vh, 200px);
    width: min(80%, 420px);
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
}
@media all and (max-width: 1000px) {
  .sign-in__content {
      flex: 1 1 auto;
      width: 100%;
      max-width: 100%;
      background-color: #000000;
      color: #ffffff;
      padding-top: var(--space-px-32);
  }
  .sign-in__side-content {
      display: none;
  }
  .sign-in__logo {
      display: none;
  }
  .sign-in__logo_white {
      display: block;
  }
}
@media all and (max-width: 600px) {
  .sign-in__content {
      padding: 0 24px;
   }
}
@media all and (min-height: 1200px) {
    .sign-in__content {
      justify-content: center;
    }
}
/* React Auth full screen mode */
body.react-auth {
    min-height: 100vh;
}
body.react-auth #auth-root {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
body.react-auth .sign-in__content {
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
    background-color: #000000;
    color: #ffffff;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
body.react-auth .sign-in__side-content {
    display: none;
}
/* React login has its own logo in the card; layout logos + mt/mb utilities must not reserve space */
body.react-auth .sign-in__logo,
body.react-auth .sign-in__logo_white {
    display: none !important;
    margin: 0 !important;
}
body.react-auth .qr-link__group {
    display: none;
}
/* Placeholder até o React montar em #auth-root */
#auth-root > .auth-root__placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    gap: 16px;
}
.auth-root__spinner {
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    border: 3px solid #e8e8e8;
    border-top-color: #7a0362;
    border-radius: 50%;
    animation: auth-root-spin 0.75s linear infinite;
}
@keyframes auth-root-spin {
    to {
        transform: rotate(360deg);
    }
}
.auth-root__visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.new_session {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.new_session__divider-group {
    color: #BFBFBF;
    display: flex;
    align-items: center;
    width: 100%;
}

.new_session__divider-text {
    font-weight: var(--font-weights-semibold);
    margin: 0 12px;
}

.new_session__divider {
    width: 100%;
    height: 1px;
    background: #BFBFBF;
}

.new_session__icon-button {
    display: flex;
    cursor: pointer;
    align-items: center;
    text-decoration: none;
    font-weight: var(--font-weights-semibold);
    color: #545454;
    font-size: 15px;
    border: none;
    padding: 0px var(--space-px-8);
    background-color: var(--colors-transparent);
}

.new_session__icon-button:focus-visible {
    outline: solid black;
}

.new_session__icon-button__icon {
    height: 20px;
    margin-right: 8px;
}

.qr-button--primary {
    background-color: #CD90FF;
    height: var(--heights-button-md);
}

@media all and (max-width: 1000px) {
    .new_session__icon-button {
        width: 100%;
        height: var(--heights-button-md);
        min-height: var(--heights-button-md);
        justify-content: center;
        color: #000000;
        border-radius: var(--borders-radius-px-2);
        background-color: #ffffff;
        transition: background-color 0.3s;
    }

    .new_session__divider-text {
        color: #ffffff;
    }
}

/* Font sizes */
.f-13 {
  font-size: var(--font-sizes-px-13);
}
.f-16 {
  font-size: var(--font-sizes-px-16);
}
.f-20 {
  font-size: var(--font-sizes-px-20);
}
/* Line heights */
.lh-18 {
  line-height: var(--line-heights-px-18);
}
/* font weights */
.fw-regular {
  font-weight: var(--font-weights-regular);
}
.fw-bold {
  font-weight: var(--font-weights-bold);
}
.fw-semibold {
  font-weight: var(--font-weights-semibold);
}

