/* THE REQUEST FORMS (beta signup, investor package request; lane demo-gate, 2026-10-17).
   One stylesheet for every form that posts to the app's request route (request-form.js). Uses the
   page tokens only, so it follows the light and dark themes with the rest of the site. */
.request-form label{display:grid;gap:4px;font-size:.9rem;color:var(--ink)}
.request-form input:not([type="checkbox"]),.request-form select,.request-form textarea{font:inherit;color:var(--ink);
  background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;width:100%;box-sizing:border-box}
.request-form fieldset{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:grid;gap:6px;margin:0}
.request-form legend{font-size:.9rem;color:var(--ink);padding:0 6px}
.request-form fieldset label{display:flex;gap:8px;align-items:center}
.request-form fieldset input[type="checkbox"]{width:auto;flex:none}
.request-form .req-opt{color:var(--ink-muted);font-weight:normal}
.request-form .req-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}
@media (max-width:640px){.request-form .req-grid{grid-template-columns:1fr}}
.request-form .req-grid .req-wide{grid-column:1 / -1}
.request-form .req-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.request-form button{justify-self:start;align-self:flex-start;width:auto;margin-top:6px}
.request-form [aria-invalid="true"]{border-color:#b3261e;outline:2px solid #b3261e;outline-offset:1px}
.request-form .req-result{margin:10px 0 0;font-size:.95rem}
.request-form .req-result[data-state="error"]{color:#b3261e;font-weight:var(--w-medium,500)}
.request-form .req-result[data-state="ok"]{font-weight:var(--w-medium,500)}
@media (prefers-color-scheme:dark){.request-form .req-result[data-state="error"],.request-form [aria-invalid="true"]{color:#ffb4ab;border-color:#ffb4ab;outline-color:#ffb4ab}}
