/**
 * TradLab Bot Web release-access styles.
 */

.tl-auth-screen {
  min-block-size: 100dvh;
  display: grid;
  place-items: center;
  padding: var(--tl-space-6);
  background: var(--tl-bg-canvas);
}

.tl-auth-card {
  inline-size: min(100%, 30rem);
  display: grid;
  gap: var(--tl-space-5);
  padding: clamp(var(--tl-space-5), 5vw, var(--tl-space-8));
  border: 1px solid var(--tl-border-subtle);
  border-radius: var(--tl-radius-xl);
  background: var(--tl-bg-surface);
}

.tl-auth-brand {
  display: flex;
  align-items: center;
  gap: var(--tl-space-3);
}

.tl-auth-brand img {
  inline-size: 2.75rem;
  block-size: 2.75rem;
}

.tl-auth-copy {
  display: grid;
  gap: var(--tl-space-1);
}

.tl-auth-title {
  margin: 0;
  color: var(--tl-text-primary);
  font-size: var(--tl-font-size-xl);
  font-weight: var(--tl-font-weight-bold);
}

.tl-auth-description,
.tl-auth-note {
  margin: 0;
  color: var(--tl-text-muted);
  line-height: var(--tl-line-height-body);
}

.tl-auth-description {
  font-size: var(--tl-font-size-sm);
}

.tl-auth-note {
  font-size: var(--tl-font-size-xs);
}

.tl-auth-form {
  display: grid;
  gap: var(--tl-space-4);
}

.tl-auth-error {
  padding: var(--tl-space-3);
  border: 1px solid var(--tl-danger-border);
  border-radius: var(--tl-radius-md);
  background: var(--tl-danger-surface);
  color: var(--tl-status-danger);
  font-size: var(--tl-font-size-sm);
}

@media (max-width: 720px) {
  .tl-auth-screen {
    padding: var(--tl-space-4);
  }

  .tl-auth-card {
    padding: var(--tl-space-5);
  }
}
