.lucenri-crystal,
.lucenri-logo {
  display: block;
  flex-shrink: 0;
}

.lucenri-crystal {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.lucenri-crystal--favicon { width: 16px; height: 16px; }
.lucenri-crystal--xs { width: 24px; height: 24px; }
.lucenri-crystal--sm { width: 32px; height: 32px; }
.lucenri-crystal--nav { width: 52px; height: 52px; }
.lucenri-crystal--md { width: 56px; height: 56px; }
.lucenri-crystal--lg { width: 72px; height: 72px; }
.lucenri-crystal--xl { width: 88px; height: 88px; }
.lucenri-crystal--dash { width: 80px; height: 80px; }
.lucenri-crystal--dash-complete { width: 58px; height: 58px; opacity: 0.94; }

.auth-top-logo-mark,
[data-lucenri-logo],
[data-lucenri-crystal] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.auth-top-logo-mark .lucenri-crystal--nav {
  width: 52px;
  height: 52px;
}

.dash-crystal-stage:not(.is-complete) .lucenri-crystal--dash {
  animation: lucenri-crystal-pulse 2.4s ease-in-out infinite;
}

@keyframes lucenri-crystal-pulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.02); opacity: 0.96; }
}

[data-theme="light"] .auth-top-logo-mark {
  padding: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
}

[data-theme="light"] .auth-top-logo-mark .lucenri-crystal--nav {
  width: 52px;
  height: 52px;
}

.auth-top-logo--mark,
.auth-top-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

[data-theme="light"] .auth-top-logo--mark,
[data-theme="light"] .auth-top-logo,
[data-theme="light"] .auth-screen-top .auth-top-logo--mark {
  gap: 14px;
}

.auth-top-logo--mark:hover .lucenri-crystal,
.auth-top-logo:hover .lucenri-crystal {
  transform: scale(1.02);
  transition: transform 220ms ease;
}

.lucenri-wordmark {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
}

@media (prefers-reduced-motion: reduce) {
  .lucenri-crystal {
    animation: none !important;
    transition: none !important;
  }

  .dash-crystal-stage:not(.is-complete) .lucenri-crystal--dash {
    animation: none !important;
  }

  .auth-top-logo--mark:hover .lucenri-crystal,
  .auth-top-logo:hover .lucenri-crystal {
    transform: none;
  }
}
