.egt-auth {
  position: relative;
  overflow: hidden;
  width: min(100%, 520px);
  margin: 24px auto;
  padding: clamp(24px, 5vw, 44px);
  border: 1px solid rgba(23, 23, 27, .12);
  border-radius: 28px;
  background: #fff;
  color: #17171b;
  box-shadow: 0 18px 50px rgba(23, 23, 27, .08);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.egt-auth::before { content: ""; display: block; width: 86px; height: 6px; margin-bottom: 28px; border-radius: 999px; background: linear-gradient(90deg, #ff5638, #d44ad6, #4c5be8); }
.egt-auth::after { content: ""; position: absolute; width: 180px; height: 180px; right: -82px; top: -82px; border: 1px solid rgba(95,77,232,.18); border-radius: 50%; box-shadow: -34px 34px 0 -1px rgba(95,77,232,.05); pointer-events: none; }
.egt-auth__eyebrow { color: #6b6972; font-size: 12px; font-weight: 800; letter-spacing: .16em; }
.egt-auth h2 { margin: 12px 0 8px; font-size: clamp(28px, 5vw, 42px); line-height: 1; letter-spacing: -.05em; }
.egt-auth__muted { color: #6b6972; line-height: 1.5; }
.egt-auth__form { display: grid; gap: 16px; margin-top: 24px; }
.egt-auth label { display: grid; gap: 8px; color: #6b6972; font-size: 13px; font-weight: 700; }
.egt-auth input { width: 100%; border: 1px solid rgba(23,23,27,.16); border-radius: 14px; padding: 13px 14px; color: #17171b; background: #faf9f7; }
.egt-auth button { cursor: pointer; border-radius: 999px; padding: 13px 18px; font-weight: 800; }
.egt-auth__button { border: 0; background: #17171b; color: #fff; }
.egt-auth__button:disabled { opacity: .55; cursor: wait; }
.egt-auth__message { margin: 16px 0 0; color: #6b6972; font-size: 14px; }
.egt-auth__message--error { color: #b42318; }
.egt-auth__message--success { color: #18794e; }
.egt-auth__switch, .egt-auth__sub-link, .egt-auth__links a { color: #5f4de8; font-size: 14px; font-weight: 800; text-decoration: none; }
.egt-auth__switch { display: inline-block; margin-top: 18px; }
.egt-auth__sub-link { display: block; margin-top: 10px; }
.egt-auth__links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 18px; margin-top: 18px; }
.egt-auth__continue { display: block; margin-top: 18px; border: 1px solid rgba(23,23,27,.16); border-radius: 999px; padding: 13px 18px; color: #17171b; font-size: 14px; font-weight: 800; text-align: center; text-decoration: none; }
.egt-auth--loading { display: flex; min-height: 180px; align-items: center; justify-content: center; gap: 12px; color: #6b6972; }
.egt-auth--loading::before, .egt-auth--loading::after { display: none; }
.egt-auth__loading-dot { width: 12px; height: 12px; border-radius: 50%; background: #42c990; box-shadow: 0 0 0 7px rgba(66,201,144,.14); animation: egt-auth-pulse 1.2s ease-in-out infinite; }
@keyframes egt-auth-pulse { 50% { transform: scale(.72); opacity: .62; } }
@media (max-width: 560px) {
  .egt-auth { margin: 14px auto; border-radius: 22px; }
  .egt-auth__links { display: grid; }
}

