/* Health Access MCP site. One file, no build step. Tokens from the design page (docs/brand.md). */
:root{color-scheme:light;
  --page:#f2f5f6;--surface:#fcfcfd;--ink:#0d1114;--ink2:#4b545a;--ink3:#7f8a91;--rule:#dde3e6;
  --accent:#1c5cab;--warm:#e8632b;--code:#eef2f5;--mark:#0d366b;
  --tag-plan-bg:rgba(232,99,43,.15);--tag-plan-ink:#8f2f0b;
  --tag-live-bg:rgba(12,163,12,.14);--tag-live-ink:#065f06;
  --tag-confirm-bg:rgba(28,92,171,.12);--tag-confirm-ink:#17488a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;
  --page:#0b0e10;--surface:#171b1e;--ink:#f1f4f6;--ink2:#b2bbc1;--ink3:#7d878d;--rule:#2a3135;
  --accent:#6ba4ea;--warm:#f08a5b;--code:#1f262b;
  --tag-plan-bg:rgba(240,138,91,.18);--tag-plan-ink:#f3b094;
  --tag-live-bg:rgba(60,190,90,.18);--tag-live-ink:#8fdc9a;
  --tag-confirm-bg:rgba(107,164,234,.18);--tag-confirm-ink:#a9c9f3}}
:root[data-theme="dark"]{color-scheme:dark;
  --page:#0b0e10;--surface:#171b1e;--ink:#f1f4f6;--ink2:#b2bbc1;--ink3:#7d878d;--rule:#2a3135;
  --accent:#6ba4ea;--warm:#f08a5b;--code:#1f262b;
  --tag-plan-bg:rgba(240,138,91,.18);--tag-plan-ink:#f3b094;
  --tag-live-bg:rgba(60,190,90,.18);--tag-live-ink:#8fdc9a;
  --tag-confirm-bg:rgba(107,164,234,.18);--tag-confirm-ink:#a9c9f3}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--ink);font-family:"IBM Plex Serif",Georgia,"Times New Roman",serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px 64px}
@media (min-width:720px){.wrap{padding:0 24px 80px}}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover{text-decoration-thickness:2px}
h1,h2,h3,h4{font-family:"IBM Plex Sans Condensed",system-ui,-apple-system,sans-serif;margin:0;text-wrap:balance}
h1{font-size:clamp(30px,5vw,52px);line-height:1.04;font-weight:700;letter-spacing:-.01em}
h2{font-size:26px;font-weight:600;margin-bottom:6px}
h3{font-size:17px;font-weight:600}
p{max-width:64ch;margin:0 0 1em}
ul,ol{max-width:64ch;padding-left:22px}
li{margin-bottom:6px}
.label{font-family:"IBM Plex Sans Condensed",sans-serif;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink3);font-weight:600}
header.hero{padding:40px 0 28px;border-bottom:2px solid var(--ink);margin-bottom:36px}
@media (min-width:720px){header.hero{padding-top:56px}}
.dek{font-size:19px;color:var(--ink2);max-width:62ch;margin-top:14px}
section{margin-top:48px}
.lede{color:var(--ink2);font-size:17.5px;max-width:62ch;margin-bottom:22px}
.answer{font-size:19px;line-height:1.5;max-width:62ch}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}
.note{background:var(--surface);border:1px solid var(--rule);padding:18px 20px;font-size:14.5px;line-height:1.55}
.note b{font-family:"IBM Plex Sans Condensed",sans-serif;font-weight:600}
.note p:last-child{margin-bottom:0}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 12px}
table{border-collapse:collapse;width:100%;font-size:14px;background:var(--surface);border:1px solid var(--rule)}
th,td{padding:9px 12px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
th{font-family:"IBM Plex Sans Condensed",sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);white-space:nowrap}
td.unk{color:var(--ink3)}
.mono,code{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:.92em}
code{background:var(--code);padding:1px 5px;border-radius:3px}
pre{background:var(--code);border:1px solid var(--rule);padding:12px 14px;overflow-x:auto;font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5;margin:0 0 12px;max-width:100%}
pre code{background:none;padding:0;font-size:inherit}
pre.wrapcode{white-space:pre-wrap;word-break:break-word}
pre .c{color:var(--ink3)}
.tag{display:inline-block;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:3px;margin-left:8px;vertical-align:middle;white-space:nowrap}
.tag.plan{background:var(--tag-plan-bg);color:var(--tag-plan-ink)}
.tag.live{background:var(--tag-live-bg);color:var(--tag-live-ink)}
.tag.confirm{background:var(--tag-confirm-bg);color:var(--tag-confirm-ink)}
.small{font-size:14px}

/* top navigation */
nav.top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;padding:14px 0 10px;border-bottom:1px solid var(--rule);font-family:"IBM Plex Sans Condensed",sans-serif;font-size:14px}
nav.top .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--ink);text-decoration:none;margin-right:auto}
nav.top .brand svg{width:28px;height:28px;flex:none}
nav.top .brand span{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--ink3);border:1px solid var(--rule);padding:2px 6px;border-radius:4px}
nav.top a{color:var(--ink2);text-decoration:none}
nav.top a:hover{color:var(--accent);text-decoration:underline}
nav.top a[aria-current="page"]{color:var(--ink);font-weight:600}

/* the order of things */
.flow{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:8px 0 16px}
.step{background:var(--surface);border:1px solid var(--rule);padding:16px 18px}
.step .who{font-family:"IBM Plex Sans Condensed",sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.step .who.you{color:var(--warm)}.step .who.auto{color:#1aa35a}.step .who.ai{color:var(--accent)}
.step ol{margin:0;padding-left:18px;font-size:14.5px}
.step li{margin-bottom:6px}

/* prompts */
.prompt{background:var(--surface);border:1px solid var(--rule);padding:16px 18px;font-size:14px;line-height:1.5}
.prompt h3{margin-bottom:6px}
.prompt .q{color:var(--ink2);font-size:13.5px}
.prompt .id{display:block;margin-top:10px}
.prompt-full{background:var(--surface);border:1px solid var(--rule);padding:18px 20px;margin-top:18px}
.prompt-full h3{font-size:19px;margin-bottom:4px}
.prompt-full .meta{color:var(--ink3);font-size:13px;margin-bottom:10px;font-family:"IBM Plex Sans Condensed",sans-serif}
.prompt-full p,.prompt-full ol{max-width:70ch}
.prompt-full .text{font-size:15px}

/* doc pages */
.doc header.hero{padding:28px 0 20px}
.doc h1{font-size:clamp(28px,4vw,42px)}
.doc h2{margin-top:36px}
.doc h3{margin-top:22px;margin-bottom:6px}
.crumbs{font-family:"IBM Plex Sans Condensed",sans-serif;font-size:13px;color:var(--ink3);margin:16px 0 0}
.crumbs a{color:var(--ink3)}
.faq h3{font-size:19px;margin-top:24px;margin-bottom:6px}
.faq p{color:var(--ink);max-width:66ch}
.screens{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.screen-text{background:var(--surface);border:1px solid var(--rule);padding:18px 20px;font-size:14.5px;line-height:1.55}
.screen-text h3{margin-bottom:8px}
.screen-text ul{padding-left:18px;margin:0}
.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;font-size:14.5px;max-width:70ch}
.kv dt{font-family:"IBM Plex Sans Condensed",sans-serif;font-weight:600}
.kv dd{margin:0}
.next{border-top:1px solid var(--rule);margin-top:40px;padding-top:18px;font-size:14.5px}
.next a{margin-right:16px}

/* footer */
footer.site{margin-top:64px;border-top:2px solid var(--ink);padding-top:22px;font-family:"IBM Plex Sans Condensed",sans-serif;font-size:14px;color:var(--ink2)}
footer.site .cols{display:grid;gap:18px 32px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
footer.site h4{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink3);margin-bottom:8px}
footer.site ul{list-style:none;padding:0;margin:0}
footer.site li{margin-bottom:5px}
footer.site a{color:var(--ink2)}
footer.site .fine{margin-top:22px;font-size:13px;color:var(--ink3);max-width:none}

@media (prefers-reduced-motion:reduce){*{animation:none;transition:none}}
@media print{nav.top,footer.site .cols{display:none}body{background:#fff;color:#000}}
