:root{--indigo:#4b3fa6;--rose:#e2557a;--rose-text:#be4766;--ink:#1c1840;--lilac:#b9b1f0;--surface-page:#f7f6fb;--surface-card:#fff;--surface-dark:#1c1840;--text-primary:#1c1840;--text-muted:#55507a;--text-on-dark:#fff;--text-on-dark-muted:#c9c4ec;--hairline:#e4e2ef;--control-border:#94939b;--radius-sm:.5rem;--radius-md:1rem;--radius-lg:1.25rem;--radius-pill:999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--font:"Readex Pro", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}body{background:var(--surface-page);color:var(--text-primary);font-family:var(--font);margin:0;font-size:1rem;line-height:1.5}a{color:var(--indigo);text-decoration:none}a:hover{text-decoration:underline}.topbar{align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--surface-dark);color:var(--text-on-dark);display:flex}.mark{align-items:baseline;gap:.2rem;font-size:1.25rem;font-weight:600;display:flex}.mark .dot{border-radius:var(--radius-pill);background:var(--rose);width:.5rem;height:.5rem;display:inline-block}.topbar nav{gap:var(--space-4);align-items:center;margin-inline-start:auto;display:flex}.topbar nav a,.topbar nav button{color:var(--text-on-dark);font-size:.875rem}.container{max-width:68rem;padding:var(--space-6) var(--space-5) var(--space-7);margin:0 auto}h1{margin:0 0 var(--space-2);font-size:2rem;line-height:1.2}h2{margin:var(--space-6) 0 var(--space-3);font-size:1.125rem}.lede{color:var(--text-muted);margin:0 0 var(--space-5)}.card{background:var(--surface-card);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4)}table{border-collapse:collapse;width:100%;font-size:.9375rem}th{text-align:start;color:var(--text-muted);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--hairline);white-space:nowrap;font-size:.875rem;font-weight:600}td{padding:var(--space-3);border-bottom:1px solid var(--hairline);vertical-align:top}tr:last-child td{border-bottom:none}code{color:var(--text-muted);font-family:ui-monospace,monospace;font-size:.8125rem}.pill{border-radius:var(--radius-pill);white-space:nowrap;padding:.125rem .625rem;font-size:.8125rem;font-weight:500;display:inline-block}.pill-restricted{border:1px solid var(--control-border);color:var(--text-muted)}.pill-read{color:var(--indigo);background:#eceafa}.pill-write{background:var(--indigo);color:var(--text-on-dark)}.pill-sensitive{border:1px solid var(--rose-text);color:var(--rose-text)}.source{color:var(--text-muted);font-size:.8125rem}.source-clinic{color:var(--indigo);font-weight:500}label{margin-bottom:var(--space-1);font-size:.875rem;font-weight:500;display:block}input[type=email],input[type=password],input[type=number]{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);font:inherit;color:var(--text-primary);background:var(--surface-card);border:1px solid var(--control-border);border-radius:var(--radius-sm)}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}button{min-height:44px;padding:var(--space-2) var(--space-5);font:inherit;color:var(--text-on-dark);background:var(--indigo);border-radius:var(--radius-sm);cursor:pointer;border:none;font-weight:500}button.link{color:inherit;cursor:pointer;background:0 0;border:none;min-height:0;padding:0;text-decoration:underline}.field{margin-bottom:var(--space-4)}.checkbox{align-items:center;gap:var(--space-2);display:flex}.checkbox input{width:1.125rem;height:1.125rem;accent-color:var(--indigo)}.checkbox label{margin:0;font-weight:400}.notice{border-inline-start:3px solid var(--rose-text);color:var(--rose-text);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-4);background:#fdf2f5;font-size:.9375rem}.muted{color:var(--text-muted)}.stack{gap:var(--space-5);flex-wrap:wrap;display:flex}.stack>div{min-width:10rem}.stat-label{color:var(--text-muted);margin-bottom:var(--space-1);font-size:.8125rem}.stat-value{font-size:1.125rem;font-weight:500}code{overflow-wrap:anywhere}.card{overflow-x:auto}
