/* global React */ const { useState, useEffect, useRef } = React; // ============================================================================ // SHARED ATOMS — small UI primitives reused across steps // ============================================================================ window.SU = {}; window.SU.Field = function Field({ label, hint, optional, children, error, className = "" }) { return (
{children} {(error || hint) &&
{error || hint}
}
); }; window.SU.Chip = function Chip({ active, onClick, children }) { return ( ); }; window.SU.MultiChip = function MultiChip({ options, value, onChange }) { function toggle(opt) { onChange(value.includes(opt) ? value.filter(v => v !== opt) : [...value, opt]); } return (
{options.map(opt => ( toggle(opt)}>{opt} ))}
); }; window.SU.Drop = function Drop({ uploaded, onUpload, label, hint, accept }) { const ref = useRef(); return (
ref.current?.click()}> onUpload && onUpload()} />
{uploaded ? ( ) : ( )}
{uploaded ? "Uploaded · ready to verify" : label}
{hint}
); }; window.SU.Tip = function Tip({ tone = "default", children }) { return (
{children}
); }; // ============================================================================ // STEP 1 — Welcome / path-pick (Adult vs Guardian-of-Minor) // ============================================================================ window.SU.Step1Welcome = function Step1Welcome({ onPick }) { return ( <>
Step 1 of 12 · Welcome

One account, one health, one ledger.

Conceptual Health is the world's first mathematically unified care platform. Sign up once, and every property — Guardian Orb, Pharmacy, hc.exchange, the chain — knows it's you. Let's start where you fit.

Already have an account? Sign in to Guardian Orb → ); }; // ============================================================================ // STEP 2 — Account basics (email, phone, password) // ============================================================================ window.SU.Step2Account = function Step2Account({ data, set, isMinor }) { const eyebrow = isMinor ? "Step 2 of 12 · Guardian basics" : "Step 2 of 12 · Account basics"; const subject = isMinor ? "your account" : "your account"; return ( <>
{eyebrow}

{isMinor ? <>How can we reach you? : <>How can we reach you?}

{isMinor ? "First, the parent's contact info. We'll add the dependent in a later step. This account holds custody — you can transfer to your child when they turn 18." : "We'll send a verification code to confirm. Both email and phone help us recover the account if you lose access to one."}

set({ email: e.target.value })} placeholder="you@example.com" autoFocus /> set({ phone: e.target.value })} placeholder="(555) 555-0123" /> set({ password: e.target.value })} placeholder="At least 10 characters" />
We salt and hash with Argon2id; we never store the plaintext. You can add a passkey at the end so you don't need a password next time. ); }; // ============================================================================ // STEP 3 — Legal identity (name, DOB, sex/gender, language, state, emergency) // ============================================================================ window.SU.Step3Identity = function Step3Identity({ data, set, isMinor }) { const D = window.SU_DATA; return ( <>
Step 3 of 12 · {isMinor ? "Guardian identity" : "Legal identity"}

Tell us who {isMinor ? "you" : "you"} are.

This is the legal record that ties your care plan, insurance, and HEALTHCOIN™ ledger together. It must match your government ID. You'll add medical history in a later step.

set({ firstName: e.target.value })} /> set({ lastName: e.target.value })} />
set({ middleName: e.target.value })} /> set({ preferredName: e.target.value })} /> set({ dob: e.target.value })} />

Emergency contact

One person we can reach if you become incapacitated. We never share with anyone else.
set({ emergencyName: e.target.value })} /> set({ emergencyRelation: e.target.value })} /> set({ emergencyPhone: e.target.value })} /> set({ emergencyEmail: e.target.value })} />
); }; // ============================================================================ // STEP 3M — Dependent profile (only in minor flow) // ============================================================================ window.SU.Step3Minor = function Step3Minor({ data, set }) { const D = window.SU_DATA; return ( <>
Step 3 of 12 · About your child

Now, your child.

This profile is what lives at guardian-orb.conceptualhealth.com for your dependent. You manage it until they turn 18, then it transfers to them with consent. Children's accounts cannot trade on hc.exchange.

set({ childFirstName: e.target.value })} /> set({ childLastName: e.target.value })} />
set({ childDob: e.target.value })} />
Per COPPA (children under 13) and HIPAA minor-record rules, parents and legal guardians can access their child's medical record. State law varies on adolescent confidentiality (especially around mental health, reproductive health, and substance use) — Guardian Orb honors your state's rules automatically. ); }; // ============================================================================ // STEP 4 — KYC / Identity verification (Tier 2) // ============================================================================ window.SU.Step4KYC = function Step4KYC({ data, set, isMinor }) { const subject = isMinor ? "the guardian" : "you"; return ( <>
Step 4 of 12 · Identity verification

Let's verify {subject === "you" ? "you" : "you"}, securely.

Conceptual Healthcare Corporation is a regulated entity. To unlock telehealth in all 50 states, custody-grade record storage, and trading on hc.exchange, we run a Tier-2 identity check through Identity verification. Your data leaves this page encrypted and never touches our servers in the clear.

Identity verification (in-house orchestration) · KYC tier 2 · FinCEN-aligned

1 · Tax ID

Required to mint a HEALTHCOIN™ wallet and for any future Exchange withdrawal. Encrypted client-side, transmitted to Identity verification only.
set({ taxId: e.target.value })} placeholder="•••-••-••••" />

2 · Government-issued photo ID

US driver's license, passport, or state ID. Identity verification will scan, OCR, and check authenticity.
set({ idUploaded: true })} label="Upload photo of front + back of your ID" hint="Drag and drop or click · JPG, PNG, HEIC · 10 MB max" accept="image/*" />

3 · Selfie liveness check

A short selfie video proves you match the ID. Three head turns, six seconds. We never train on your face — PCI-validated processor deletes the video after the match.
set({ selfieDone: true })} label={data.selfieDone ? "Liveness check complete" : "Start selfie liveness check"} hint="Use front-facing camera · keep face centered" accept="video/*" />

4 · Proof of address

A utility bill, bank statement, or lease — dated within the last 90 days, showing your name and address. Required for OFAC + state-of-residence telehealth.
set({ addrUploaded: true })} label="Upload proof of address" hint="PDF, JPG, PNG · 10 MB max" accept="image/*,.pdf" />
Why so much? Conceptual Healthcare Corporation is a HIPAA covered entity AND operates a money-services business (HCR / HEALTHCOIN™). FinCEN, OFAC, and state insurance commissioners all require Tier-2 KYC before we can prescribe across state lines or move HCR to your wallet. ); };