/* [project]/app/auth/auth.css [app-client] (css) */
.auth-screen {
  --auth-bg: #05080c;
  --auth-bg-elev: #0b1015;
  --auth-bg-card: #11171c;
  --auth-bg-soft: #181e24;
  --auth-bg-hover: #21272e;
  --auth-bg-input: #0b1015;
  --auth-border: #262c33;
  --auth-border-soft: #1b2025;
  --auth-border-strong: #363e46;
  --auth-text: #f3f5f8;
  --auth-text-muted: #999fa6;
  --auth-text-dim: #5e646a;
  --auth-accent: #fab72a;
  --auth-accent-deep: #e39000;
  --auth-accent-soft: color-mix(in oklab, var(--auth-accent) 16%, transparent);
  --auth-accent-glow: color-mix(in oklab, var(--auth-accent) 32%, transparent);
  --auth-accent-ink: #221200;
  --auth-good: #3ec87d;
  --auth-good-soft: color-mix(in oklab, var(--auth-good) 16%, transparent);
  --auth-magenta: #d36dea;
  --auth-short: #fc4447;
  --auth-radius-sm: 6px;
  --auth-radius-md: 10px;
  --auth-radius-lg: 14px;
  --auth-radius-xl: 20px;
  --auth-t-fast: .12s cubic-bezier(.2,.7,.3,1);
  --auth-t-base: .2s cubic-bezier(.2,.7,.3,1);
  --auth-font-sans: "Inter Tight", "Inter", system-ui, -apple-system, sans-serif;
  --auth-font-mono: "JetBrains Mono", ui-monospace, monospace;
  --auth-font-serif: "Fraunces", Georgia, serif;
  background: var(--auth-bg);
  width: 100%;
  min-height: 100dvh;
  color: var(--auth-text);
  font-family: var(--auth-font-sans);
  font-feature-settings: "ss01", "cv11";
  -webkit-font-smoothing: antialiased;
  flex-direction: column;
  display: flex;
  position: relative;
  overflow-x: hidden;
}

@supports (color: lab(0% 0 0)) {
  .auth-screen {
    --auth-bg: lab(1.97449% -.392072 -1.91281);
    --auth-bg-elev: lab(4.41937% -.812896 -3.76877);
    --auth-bg-card: lab(7.20331% -1.17743 -4.83751);
    --auth-bg-soft: lab(10.6547% -1.39258 -5.24302);
    --auth-bg-hover: lab(15.2945% -1.51472 -5.60384);
    --auth-bg-input: lab(4.42354% -.727616 -3.18275);
    --auth-border: lab(17.6179% -1.45447 -5.26749);
    --auth-border-soft: lab(11.8203% -1.25089 -4.5612);
    --auth-border-strong: lab(25.7339% -1.75481 -6.3249);
    --auth-text: lab(96.5162% -.553399 -1.78931);
    --auth-text-muted: lab(65.1887% -1.28675 -4.27156);
    --auth-text-dim: lab(41.9875% -1.26275 -4.25921);
    --auth-accent: lab(79.137% 16.9725 73.9414);
    --auth-accent-deep: lab(67.0951% 28.6103 84.4444);
    --auth-accent-ink: lab(7.10029% 9.13489 13.4621);
    --auth-good: lab(71.9138% -51.1358 26.3831);
    --auth-magenta: lab(62.1202% 54.3556 -46.292);
    --auth-short: lab(58.3383% 69.5703 42.8339);
  }
}

.auth-screen:before {
  content: "";
  background: radial-gradient(900px 600px at 80% -10%, var(--auth-accent-soft), transparent 60%),
    radial-gradient(700px 500px at -10% 100%,
      color-mix(in oklab, var(--auth-magenta) 8%, transparent), transparent 60%);
  pointer-events: none;
  z-index: 0;
  position: absolute;
  inset: 0;
}

.auth-screen > * {
  z-index: 1;
  position: relative;
}

.auth-topbar {
  padding: calc(22px + env(safe-area-inset-top, 0px)) max(32px, env(safe-area-inset-right, 0px)) 22px
    max(32px, env(safe-area-inset-left, 0px));
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.auth-brand {
  letter-spacing: -.015em;
  color: var(--auth-text);
  white-space: nowrap;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 700;
  display: inline-flex;
}

.auth-brand-logo {
  -o-object-fit: contain;
  object-fit: contain;
  border-radius: 9px;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: block;
}

.auth-topbar-right {
  color: var(--auth-text-muted);
  align-items: center;
  gap: 18px;
  font-size: 13px;
  display: inline-flex;
}

.auth-topbar-right a {
  color: inherit;
  transition: color var(--auth-t-fast);
}

.auth-topbar-right a:hover {
  color: var(--auth-text);
}

.auth-topbar-right .auth-sep {
  color: var(--auth-text-dim);
}

.auth-topbar-right .auth-extra-links {
  align-items: center;
  gap: 12px;
  display: inline-flex;
}

.auth-topbar-right .auth-live-pill {
  background: var(--auth-good-soft);
  color: var(--auth-good);
  border: 1px solid color-mix(in oklab, var(--auth-good) 30%, transparent);
  font-family: var(--auth-font-mono);
  letter-spacing: .02em;
  white-space: nowrap;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  padding: 5px 10px 5px 9px;
  font-size: 11px;
  font-weight: 600;
  display: inline-flex;
}

.auth-topbar-right .auth-live-pill .auth-pulse {
  background: var(--auth-good);
  border-radius: 50%;
  width: 6px;
  height: 6px;
  animation: 1.6s ease-in-out infinite auth-pulse;
}

@keyframes auth-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .4;
    transform: scale(.85);
  }
}

@keyframes auth-ring-out {
  0% {
    opacity: 1;
    transform: scale(.8);
  }

  100% {
    opacity: 0;
    transform: scale(1.6);
  }
}

@media (prefers-reduced-motion: reduce) {
  .auth-screen .auth-pulse, .auth-screen .auth-success-icon:before, .auth-screen .auth-success-icon:after {
    animation: none !important;
  }
}

.auth-main {
  flex: 1;
  place-items: center;
  padding: 20px 24px 40px;
  display: grid;
}

.auth-card {
  background: var(--auth-bg-card);
  border: 1px solid var(--auth-border);
  border-radius: var(--auth-radius-xl);
  width: 100%;
  max-width: 440px;
  padding: 32px;
  position: relative;
  box-shadow: 0 24px 80px #00000059, inset 0 0 0 1px #ffffff05;
}

.auth-card.auth-card-wide {
  max-width: 540px;
}

.auth-card-head {
  margin-bottom: 24px;
}

.auth-card-title {
  font-family: var(--auth-font-serif);
  letter-spacing: -.025em;
  color: var(--auth-text);
  margin: 0 0 8px;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.05;
}

.auth-card-title em {
  color: var(--auth-accent);
  background-image: linear-gradient(135deg, var(--auth-accent) 0%, #ffb98e 100%);
  font-style: italic;
  -webkit-text-fill-color: transparent !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}

@supports (color: lab(0% 0 0)) {
  .auth-card-title em {
    background-image: linear-gradient(135deg, var(--auth-accent) 0%, lab(81.6027% 42.1929 58.093) 100%);
  }
}

.auth-card-sub {
  color: var(--auth-text-muted);
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
}

.auth-card-sub a {
  color: var(--auth-accent);
  font-weight: 600;
}

.auth-card-sub a:hover {
  text-decoration: underline;
}

.auth-form {
  flex-direction: column;
  gap: 16px;
  display: flex;
}

.auth-screen .auth-btn {
  border-radius: var(--auth-radius-md);
  letter-spacing: -.005em;
  height: 44px;
  transition: all var(--auth-t-fast);
  white-space: nowrap;
  cursor: pointer;
  color: inherit;
  background: none;
  border: 1px solid #0000;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 0 18px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  display: inline-flex;
}

.auth-screen .auth-btn:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.auth-btn-lg {
  border-radius: 12px;
  height: 50px;
  font-size: 14.5px;
}

.auth-btn-primary {
  background: var(--auth-accent);
  color: var(--auth-accent-ink);
  box-shadow: 0 1px 0 #ffffff2e inset,
    0 8px 22px var(--auth-accent-soft);
}

.auth-btn-primary:hover:not(:disabled) {
  background: var(--auth-accent-deep);
  box-shadow: 0 1px 0 #fff3 inset,
    0 12px 32px var(--auth-accent-glow);
  transform: translateY(-1px);
}

.auth-btn-primary:active:not(:disabled) {
  transform: translateY(0);
}

.auth-btn-ghost {
  background: var(--auth-bg-soft);
  color: var(--auth-text);
  border-color: var(--auth-border);
}

.auth-btn-ghost:hover:not(:disabled) {
  background: var(--auth-bg-hover);
  border-color: var(--auth-border-strong);
}

.auth-btn-social {
  background: var(--auth-bg-soft);
  color: var(--auth-text);
  border: 1px solid var(--auth-border);
  font-weight: 500;
}

.auth-btn-social:hover:not(:disabled) {
  background: var(--auth-bg-hover);
  border-color: var(--auth-border-strong);
}

.auth-btn-block {
  width: 100%;
}

.auth-screen .auth-btn:focus-visible {
  outline: 2px solid var(--auth-accent);
  outline-offset: 2px;
}

.auth-field {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.auth-field-label {
  color: var(--auth-text);
  letter-spacing: -.005em;
  justify-content: space-between;
  align-items: center;
  font-size: 12.5px;
  font-weight: 600;
  display: flex;
}

.auth-field-label .auth-hint {
  color: var(--auth-text-dim);
  font-size: 12px;
  font-weight: 500;
}

.auth-field-label .auth-hint a {
  color: var(--auth-accent);
  text-decoration: none;
}

.auth-field-label .auth-hint a:hover {
  text-decoration: underline;
}

.auth-field-input {
  background: var(--auth-bg-input);
  border: 1px solid var(--auth-border);
  border-radius: var(--auth-radius-md);
  height: 48px;
  transition: all var(--auth-t-fast);
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  display: flex;
}

.auth-field-input:focus-within {
  border-color: var(--auth-accent);
  box-shadow: 0 0 0 3px var(--auth-accent-soft);
  background: color-mix(in oklab, var(--auth-bg-input) 80%, var(--auth-bg-elev));
}

.auth-field-input .auth-ic {
  color: var(--auth-text-dim);
  flex-shrink: 0;
  display: inline-flex;
}

.auth-field-input:focus-within .auth-ic {
  color: var(--auth-accent);
}

.auth-field-input input {
  color: var(--auth-text);
  background: none;
  border: 0;
  outline: 0;
  flex: 1;
  min-width: 0;
  padding: 0;
  font-family: inherit;
  font-size: 14.5px;
}

.auth-field-input input::placeholder {
  color: var(--auth-text-dim);
}

.auth-field-input input:disabled {
  opacity: .6;
}

.auth-field-input .auth-suffix-btn {
  color: var(--auth-text-dim);
  cursor: pointer;
  transition: color var(--auth-t-fast), background var(--auth-t-fast);
  background: none;
  border: 0;
  border-radius: 6px;
  padding: 4px;
  display: inline-flex;
}

.auth-field-input .auth-suffix-btn:hover {
  color: var(--auth-text);
  background: var(--auth-bg-hover);
}

.auth-field-input .auth-suffix-btn:focus-visible {
  outline: 2px solid var(--auth-accent);
  outline-offset: 1px;
}

.auth-field-help {
  color: var(--auth-text-dim);
  font-size: 11.5px;
  line-height: 1.4;
}

.auth-field-help.auth-ok {
  color: var(--auth-good);
  align-items: center;
  gap: 4px;
  display: inline-flex;
}

.auth-seg {
  background: var(--auth-bg-input);
  border: 1px solid var(--auth-border);
  border-radius: var(--auth-radius-md);
  grid-template-columns: 1fr 1fr;
  gap: 0;
  padding: 3px;
  display: grid;
  position: relative;
}

.auth-seg button {
  border-radius: calc(var(--auth-radius-md) - 3px);
  height: 36px;
  color: var(--auth-text-muted);
  transition: all var(--auth-t-fast);
  white-space: nowrap;
  cursor: pointer;
  background: none;
  border: 0;
  justify-content: center;
  align-items: center;
  gap: 6px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}

.auth-seg button[aria-pressed="true"] {
  background: var(--auth-bg-elev);
  color: var(--auth-text);
  box-shadow: inset 0 1px #ffffff0a, 0 1px 3px #0003;
}

.auth-seg button:focus-visible {
  outline: 2px solid var(--auth-accent);
  outline-offset: 1px;
}

.auth-divider {
  color: var(--auth-text-dim);
  font-family: var(--auth-font-mono);
  letter-spacing: .16em;
  text-transform: uppercase;
  align-items: center;
  gap: 12px;
  font-size: 10.5px;
  display: flex;
}

.auth-divider:before, .auth-divider:after {
  content: "";
  background: var(--auth-border-soft);
  flex: 1;
  height: 1px;
}

.auth-error {
  color: var(--auth-short);
  background: color-mix(in oklab, var(--auth-short) 10%, transparent);
  border: 1px solid color-mix(in oklab, var(--auth-short) 30%, transparent);
  border-radius: var(--auth-radius-md);
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 1.45;
}

.auth-legal {
  color: var(--auth-text-dim);
  text-align: center;
  margin: 0;
  font-size: 11.5px;
  line-height: 1.5;
}

.auth-legal a {
  color: var(--auth-text-muted);
  text-decoration: underline;
  -webkit-text-decoration-color: var(--auth-border-strong);
  text-decoration-color: var(--auth-border-strong);
  text-underline-offset: 2px;
}

.auth-legal a:hover {
  color: var(--auth-accent);
}

.auth-strength {
  gap: 4px;
  margin-top: 4px;
  display: flex;
}

.auth-strength-bar {
  background: var(--auth-bg-soft);
  border-radius: 2px;
  flex: 1;
  height: 3px;
  overflow: hidden;
}

.auth-strength-bar.on-1 {
  background: var(--auth-short);
}

.auth-strength-bar.on-2 {
  background: #ff9c3e;
  background: lab(73.8254% 33.482 64.1888);
}

.auth-strength-bar.on-3 {
  background: var(--auth-accent);
}

.auth-strength-bar.on-4 {
  background: var(--auth-good);
}

.auth-strength-label {
  font-family: var(--auth-font-mono);
  letter-spacing: .06em;
  color: var(--auth-text-dim);
  text-transform: uppercase;
  margin-top: 4px;
  font-size: 10.5px;
}

.auth-strength-label.s-1 {
  color: var(--auth-short);
}

.auth-strength-label.s-2 {
  color: #ff9c3e;
  color: lab(73.8254% 33.482 64.1888);
}

.auth-strength-label.s-3 {
  color: var(--auth-accent);
}

.auth-strength-label.s-4 {
  color: var(--auth-good);
}

.auth-success-icon {
  background: var(--auth-accent-soft);
  width: 64px;
  height: 64px;
  color: var(--auth-accent);
  border-radius: 50%;
  place-items: center;
  margin: 0 auto 18px;
  display: grid;
  position: relative;
}

.auth-success-icon:before {
  content: "";
  border: 1px solid var(--auth-accent-soft);
  border-radius: 50%;
  animation: 2.6s ease-out infinite auth-ring-out;
  position: absolute;
  inset: -8px;
}

.auth-success-icon:after {
  content: "";
  border: 1px solid color-mix(in oklab, var(--auth-accent) 10%, transparent);
  border-radius: 50%;
  animation: 2.6s ease-out .4s infinite auth-ring-out;
  position: absolute;
  inset: -16px;
}

.auth-success-icon.good {
  background: var(--auth-good-soft);
  color: var(--auth-good);
}

.auth-success-icon.good:before, .auth-success-icon.good:after {
  border-color: color-mix(in oklab, var(--auth-good) 20%, transparent);
}

.auth-email-helper {
  background: var(--auth-bg-soft);
  border: 1px solid var(--auth-border-soft);
  border-radius: var(--auth-radius-md);
  text-align: left;
  align-items: flex-start;
  gap: 12px;
  margin-top: 18px;
  padding: 14px 16px;
  display: flex;
}

.auth-email-helper .auth-ic-box {
  background: var(--auth-bg-card);
  width: 30px;
  height: 30px;
  color: var(--auth-accent);
  border-radius: 8px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.auth-email-helper .auth-body {
  color: var(--auth-text-muted);
  flex: 1;
  min-width: 0;
  font-size: 12.5px;
  line-height: 1.5;
}

.auth-email-helper b {
  color: var(--auth-text);
  font-weight: 600;
}

.auth-email-helper a {
  color: var(--auth-accent);
  font-weight: 600;
}

.auth-email-helper a:hover {
  text-decoration: underline;
}

.auth-back-link {
  color: var(--auth-text-muted);
  transition: color var(--auth-t-fast);
  cursor: pointer;
  background: none;
  border: 0;
  align-items: center;
  gap: 6px;
  margin-bottom: 20px;
  padding: 0;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  display: inline-flex;
}

.auth-back-link:hover {
  color: var(--auth-text);
}

.auth-otp-input {
  text-align: center;
  width: 100%;
  font-family: var(--auth-font-mono);
  letter-spacing: .4em;
  background: var(--auth-bg-input);
  border: 1px solid var(--auth-border);
  border-radius: var(--auth-radius-md);
  height: 60px;
  color: var(--auth-accent);
  font-variant-numeric: tabular-nums;
  transition: all var(--auth-t-fast);
  outline: 0;
  font-size: 28px;
  font-weight: 700;
}

.auth-otp-input:focus {
  border-color: var(--auth-accent);
  box-shadow: 0 0 0 3px var(--auth-accent-soft);
  background: var(--auth-bg-elev);
}

.auth-footer {
  font-family: var(--auth-font-mono);
  color: var(--auth-text-dim);
  letter-spacing: .04em;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 18px 32px;
  font-size: 11px;
  display: flex;
}

.auth-footer-links {
  flex-wrap: wrap;
  gap: 18px;
  display: flex;
}

.auth-footer a {
  color: inherit;
  transition: color var(--auth-t-fast);
}

.auth-footer a:hover {
  color: var(--auth-text-muted);
}

@media (max-width: 720px) {
  .auth-topbar {
    padding: 18px 20px;
  }

  .auth-footer {
    padding: 16px 20px;
  }

  .auth-main {
    padding: 16px 16px 32px;
  }

  .auth-card {
    padding: 28px 22px;
  }

  .auth-card-title {
    font-size: 26px;
  }
}

@media (max-width: 520px) {
  .auth-topbar {
    gap: 10px;
    padding: 16px;
  }

  .auth-topbar-right {
    gap: 12px;
    font-size: 12px;
  }

  .auth-topbar-right .auth-live-pill {
    padding: 4px 8px 4px 7px;
    font-size: 10.5px;
  }

  .auth-topbar-right .auth-extra-links {
    display: none;
  }

  .auth-main {
    padding: 12px 12px 28px;
  }

  .auth-card {
    border-radius: 16px;
    padding: 24px 18px;
  }

  .auth-card-title {
    font-size: 24px;
    line-height: 1.1;
  }

  .auth-card-sub {
    font-size: 13px;
  }

  .auth-footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 14px 16px 18px;
    font-size: 10.5px;
  }

  .auth-footer-links {
    gap: 14px;
  }

  .auth-otp-input {
    letter-spacing: .3em;
    font-size: 24px;
  }
}

@media (max-width: 360px) {
  .auth-card {
    padding: 22px 14px;
  }

  .auth-card-title {
    font-size: 22px;
  }

  .auth-topbar-right .auth-live-pill {
    display: none;
  }
}

/*# sourceMappingURL=app_auth_auth_13tib.t.css.map*/