/* Gated download component — built on tokens.css */

.download-gate {
  background: var(--bg-raised);
  border: 1px solid var(--line-subtle);
  border-radius: var(--radius-lg);
  padding: var(--space-8);
  box-shadow: var(--shadow-sm);
}

.download-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  max-width: var(--container-tight);
}

.download-form[hidden] { display: none; }

.download-form label {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: var(--weight-medium);
  color: var(--fg-1);
}

.download-form input {
  font: inherit;
  color: var(--fg-1);
  background: var(--bg-raised);
  border: 1px solid var(--line-1);
  border-radius: var(--radius-sm);
  padding: var(--space-3) var(--space-4);
}

.download-form input:focus {
  outline: none;
  border-color: var(--brand-teal);
  box-shadow: var(--shadow-focus);
}

.download-form .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.download-form__status {
  font-size: var(--text-sm);
  color: var(--fg-3);
  min-height: 1.2em;
}

.download-form__status--error { color: var(--status-danger); }

.download-result h3 {
  margin-top: 0;
}
