:root{--ink:#0b1a18;--ink2:#112623;--teal:#0fb5ba;--mint:#27c4a6;--ice:#7fe3e6;--paper:#f6faf8;--line:#e2ece7;--text:#14211d;--muted:#6c8479;--brand:var(--teal)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Avenir Next,system-ui,-apple-system,Segoe UI,sans-serif}.page{flex-direction:column;min-height:100vh;display:flex}.topbar{background:linear-gradient(120deg, var(--ink), var(--ink2));color:#fff;align-items:center;gap:10px;padding:16px 20px;display:flex}.wordmark{letter-spacing:4px;font-size:15px;font-weight:800}.badge{letter-spacing:.4px;color:var(--brand,var(--ice));border:1px solid #7fe3e659;border-radius:999px;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:600}.page:not(.branded) .badge{color:var(--ice)}.content{flex:1;width:100%;max-width:760px;margin:0 auto;padding:28px 20px 48px}.patient h1{letter-spacing:-.5px;margin:0 0 10px;font-size:30px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);color:var(--text);background:#fff;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600}.chip.blood{color:#b4453a;border-color:#f0cfca}.chip.dx{color:#0e3d54;background:#eef6f9;border-color:#d4e7ee}.chip.rx{color:#0c6b54;background:#ecfaf4;border-color:#cdeee0}.chip .code{font-variant-numeric:tabular-nums;opacity:.6;font-weight:500}.note{color:#314b42;margin:12px 0 4px;font-style:italic}h2{letter-spacing:-.3px;margin:28px 0 8px;font-size:18px}.card{border:1px solid var(--line);background:#fff;border-radius:14px;margin-top:16px;padding:18px}.card.error{border-color:#f0cfca}.worked{margin:10px 0 0;padding:0;list-style:none}.worked li{border-top:1px solid var(--line);align-items:center;gap:8px;padding:8px 0;display:flex}.worked li:first-child{border-top:0}.med{font-weight:700}.code{color:var(--muted);font-size:12px}.spacer{flex:1}.timeline{margin:10px 0 0;padding:0;list-style:none}.encounter{border-top:1px solid var(--line);gap:14px;padding:14px 0;display:flex}.encounter:first-child{border-top:0}.enc-date{color:#0e3d54;border-right:2px solid var(--line);flex:0 0 96px;padding-right:12px;font-size:13px;font-weight:700}.enc-body{flex-direction:column;flex:1;gap:8px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.outcome{gap:10px}.eff{color:var(--brand,var(--mint));letter-spacing:2px;font-size:12px}.eff .muted{color:var(--line)}.muted{color:var(--muted)}.small{font-size:12.5px}.disclaimer{color:var(--muted);border:1px dashed var(--line);background:#fff;border-radius:12px;margin-top:28px;padding:12px 14px;font-size:12.5px}.footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;width:100%;max-width:760px;margin:0 auto;padding:16px 20px;font-size:12px;display:flex}.bg-block{flex-direction:column;gap:6px;margin-top:10px;display:flex}.bg-block:first-of-type{margin-top:6px}.bg-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.bg-label.alert{color:#b4453a}.chip.allergy{color:#8f2f27;background:#fdecea;border-color:#f0cfca}.enc-provider{color:#314b42;font-size:13px;font-weight:600}.enc-block{flex-direction:column;gap:4px;display:flex}.enc-block-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.med-list{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.med-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.narrative{color:#22332e;margin:0;font-size:13.5px;line-height:1.5}.narrative-label{color:#0e3d54;font-weight:600}.lab-table{border-collapse:collapse;width:100%;font-size:13px}.lab-table td{border-top:1px solid var(--line);vertical-align:top;padding:4px 8px 4px 0}.lab-table tr:first-child td{border-top:0}.lab-table .val{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.lab-table tr.abn .val{color:#b4453a}.flag-badge{color:#7a5a12;background:#f4efe0;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:700}.flag-badge.high,.flag-badge.critical{color:#b4453a;background:#fdecea}.flag-badge.low{color:#2b5b9e;background:#eef3fb}@media (width<=520px){.enc-date{flex-basis:70px}.patient h1{font-size:24px}}.brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.topbar-account{align-items:center;gap:12px;margin-left:auto;display:flex}.topbar-email{color:var(--ice);font-size:12.5px;font-weight:600}.link-btn{cursor:pointer;color:var(--teal);font:inherit;text-underline-offset:2px;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:600;text-decoration:underline}.topbar-account .link-btn{color:var(--ice)}.btn{appearance:none;cursor:pointer;font:inherit;border:1px solid var(--line);color:var(--text);background:#fff;border-radius:10px;padding:10px 16px;font-weight:700;transition:filter .12s}.btn:hover:not(:disabled){filter:brightness(.97)}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:linear-gradient(120deg, var(--teal), var(--mint));color:#fff;border-color:#0000}.auth-card{border:1px solid var(--line);background:#fff;border-radius:16px;max-width:420px;margin:8px auto 0;padding:26px}.auth-card h1{letter-spacing:-.4px;margin:0 0 18px;font-size:22px}.form{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:5px;display:flex}.field>span{color:#314b42;font-size:13px;font-weight:600}.field input{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--text);border-radius:10px;padding:10px 12px}.field input:focus{outline:2px solid var(--ice);outline-offset:0;border-color:var(--teal)}.field .hint{color:var(--muted);font-size:12px}.form-error{color:#b4453a;background:#fbeeec;border:1px solid #f0cfca;border-radius:8px;margin:0;padding:8px 10px;font-size:13px;font-weight:600}.auth-ack{flex-direction:column;gap:10px;display:flex}.auth-links{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.reset-inline{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.center{text-align:center}a{color:var(--brand,var(--teal))}.dash-head h1{margin:0 0 8px}.dash-head .disclaimer{margin-top:8px}.patient-list{flex-direction:column;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:flex}.patient-row{color:var(--text);border:1px solid var(--line);background:#fff;border-radius:14px;padding:16px 18px;text-decoration:none;transition:border-color .12s,box-shadow .12s;display:block}.patient-row:hover{border-color:var(--ice);box-shadow:0 1px 0 var(--line)}.patient-row-main{align-items:center;gap:10px;display:flex}.patient-label{font-size:16px;font-weight:700}.patient-row .note{margin:8px 0 0}.patient-row-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.back-link{margin:0 0 12px}.back-link a{font-size:13px;font-weight:600;text-decoration:none}.keep-cta{border:1px solid var(--line);background:#fff;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:14px 16px;display:flex}.org-title-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.org-title-row h1{margin:0 0 4px}.btn.nav-orgs{margin-left:auto;padding:8px 14px;font-size:13px}.field.inline{gap:0}.field select,.add-patient input{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--text);border-radius:10px;padding:10px 12px}.field select:focus{outline:2px solid var(--ice);outline-offset:0;border-color:var(--teal)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.org-patient-li{position:relative}.org-unshare{position:absolute;top:16px;right:18px}.member-list{flex-direction:column;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:flex}.member-row{flex-direction:column;gap:6px;display:flex}.member-main{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.member-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.member-actions{align-items:center;gap:12px;margin-top:6px;display:flex}.billing-head{align-items:center;gap:10px;display:flex}.billing-card .meter{margin:12px 0 6px;font-size:15px}.meter-formula strong{color:#0c6b54}.billing-meta{flex-direction:column;gap:3px;margin:8px 0 0;padding:0;list-style:none;display:flex}.billing-notice{color:#8a5a00;background:#fff7e8;border:1px dashed #f0dcae;border-radius:10px;margin-top:12px;padding:10px 12px;font-size:12.5px}.brand-wordmark{align-items:center;gap:10px;display:flex}.brand-logo{object-fit:contain;max-width:180px;max-height:28px;display:block}.branded-footer{align-items:center}.powered-by{font-weight:600}.powered-by a{color:inherit;font-weight:700;text-decoration:none}.powered-by a:hover{text-decoration:underline}.brand-support{margin-left:auto;text-decoration:none}.brand-preview{border:1px solid var(--line);border-radius:14px;margin-top:16px;overflow:hidden}.brand-preview .page{min-height:0}.brand-preview .content{padding:20px}.brand-preview .topbar{padding:12px 16px}.preview-label{color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin:0 0 6px;font-size:12px;font-weight:600}.color-field{align-items:center;gap:10px;display:flex}.color-field input[type=color]{appearance:none;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:40px;height:36px;padding:0}.color-field input[type=text]{font-variant-numeric:tabular-nums;flex:1}.readonly-row{background:var(--paper);border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;padding:10px 12px;display:flex}.readonly-row code{word-break:break-all;flex:1;min-width:0;font-size:12.5px}.copy-btn{padding:6px 12px;font-size:12.5px}.key-list{flex-direction:column;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:flex}.key-row{flex-direction:column;gap:6px;display:flex}.key-main{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.key-prefix{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12.5px}.key-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.key-actions{align-items:center;gap:12px;margin-top:6px;display:flex}.chip.revoked{color:#b4453a;border-color:#f0cfca}.key-reveal{background:#fff7e8;border:1px solid #f0dcae;border-radius:12px;margin-top:16px;padding:14px 16px}.key-reveal h3{margin:0 0 6px;font-size:15px}.key-reveal .key-value{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;display:flex}.key-reveal code{border:1px solid var(--line);word-break:break-all;background:#fff;border-radius:8px;flex:1;min-width:0;padding:8px 10px;font-size:13px}.key-warn{color:#8a5a00;margin:0;font-size:12.5px;font-weight:600}
