/* Researcher access page. Reuses the theme's tokens and gate card. */
.e8ra { display: flex; justify-content: center; }
.e8ra__card { max-width: 32rem; box-shadow: 0 30px 80px rgba(0,0,0,.5); }
.e8ra .e8-gate__title { font-size: clamp(1.5rem, 1.2rem + 1.4vw, 1.875rem); }

.e8ra__tabs {
  display: grid; grid-template-columns: 1fr 1fr; gap: .25rem;
  padding: .25rem; margin-bottom: 1.25rem;
  border: 1px solid var(--line-2); border-radius: 999px; background: rgba(255,255,255,.02);
}
.e8ra__tab {
  display: flex; align-items: center; justify-content: center; min-height: 40px;
  border-radius: 999px; font-size: var(--t-sm); font-weight: 560; color: var(--text-3);
  text-decoration: none;
}
.e8ra__tab:hover { color: var(--text); }
.e8ra__tab[aria-selected="true"] { background: var(--surface-3); color: var(--text); box-shadow: 0 0 0 1px var(--line-3) inset; }

.e8ra__errors {
  margin-bottom: 1rem; padding: .8rem .95rem; border-radius: 14px;
  border: 1px solid rgba(255,122,122,.4); background: rgba(255,122,122,.08);
  color: var(--red); font-size: var(--t-sm); line-height: 1.45;
}
.e8ra__errors p { margin: 0; }
.e8ra__errors p + p { margin-top: .3rem; }

.e8ra__form { display: flex; flex-direction: column; gap: 1rem; }
.e8ra__field { display: flex; flex-direction: column; gap: .4rem; }
.e8ra__field > span { font-size: var(--t-xs); font-weight: 600; letter-spacing: .02em; color: var(--text-2); }
.e8ra__field small { font-size: var(--t-xs); color: var(--text-4); }
.e8ra__field input,
.e8ra__field select {
  width: 100%; min-height: var(--tap); padding: 0 .95rem;
  border: 1px solid var(--line-2); border-radius: 14px;
  background: var(--surface-1); color: var(--text);
  font: inherit; font-size: 1rem; /* 16px stops iOS zoom */
  transition: border-color var(--dur) var(--ease-out);
}
.e8ra__field select {
  appearance: none; -webkit-appearance: none; padding-right: 2.5rem;
  background-image: linear-gradient(45deg, transparent 50%, var(--text-3) 50%), linear-gradient(135deg, var(--text-3) 50%, transparent 50%);
  background-position: calc(100% - 1.2rem) 50%, calc(100% - .9rem) 50%;
  background-size: .3rem .3rem; background-repeat: no-repeat;
}
.e8ra__field select option { background: var(--surface-2); color: var(--text); }
.e8ra__field input:focus,
.e8ra__field select:focus { outline: none; border-color: rgba(52,229,160,.6); box-shadow: 0 0 0 3px rgba(52,229,160,.15); }

.e8ra__checks { margin: 0; }
.e8ra .e8-gate__check a { color: var(--green); text-decoration: underline; text-underline-offset: 2px; }
.e8ra .e8-gate__note a { color: var(--text-2); text-decoration: underline; text-underline-offset: 2px; }
.e8ra__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
