:root{--nhs-blue:#005eb8;--nhs-dark-blue:#003087;--nhs-light-blue:#41b6e6;--nhs-aqua:#00a499;--nhs-white:#fff;--nhs-pale-grey:#f0f4f5;--nhs-mid-grey:#aeb7bd;--nhs-dark-grey:#425563;--nhs-black:#231f20;--nhs-warm-yellow:#ed8b00;--nhs-error-red:#d5281b;--nhs-success-green:#007f3b;--nhs-focus-yellow:#ffeb3b;--nhs-visited-purple:#330072;--severity-critical-bg:#fee2e2;--severity-critical-text:#7f1d1d;--severity-critical-border:#dc2626;--severity-critical-icon:#dc2626;--severity-major-bg:#fef3c7;--severity-major-text:#92400e;--severity-major-border:#f59e0b;--severity-major-icon:#f59e0b;--severity-moderate-bg:#dbeafe;--severity-moderate-text:#1e40af;--severity-moderate-border:#3b82f6;--severity-moderate-icon:#3b82f6;--severity-resolved-bg:#d1fae5;--severity-resolved-text:#065f46;--severity-resolved-border:#10b981;--risk-critical-text:#7f1d1d;--risk-critical-bg:#fee2e2;--risk-critical-border:#b91c1c;--risk-high-text:#da291c;--risk-high-bg:#fee2e2;--risk-high-border:#da291c;--risk-moderate-text:#92400e;--risk-moderate-bg:#fef3c7;--risk-moderate-border:#ed8b00;--risk-low-text:#14532d;--risk-low-bg:#d1fae5;--risk-low-border:#009639;--highlight-drug:#005eb82e;--highlight-condition:#ed8b002e;--highlight-lab:#007f3b2e;--highlight-active:#ffeb3b;--font-heading:"Inter", "Frutiger W01", Arial, sans-serif;--font-body:"Inter", Arial, "Helvetica Neue", sans-serif;--font-size-body-desktop:19px;--font-size-body-mobile:16px;--nhs-bright-blue:#0072ce;--surface:#f8fafb;--surface-raised:#fff;--motion-instant:.1s;--motion-fast:.2s;--motion-normal:.3s;--motion-slow:.5s;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000a;--shadow-lg:0 10px 30px #0000001a, 0 4px 8px #0000000f;--navbar-height:64px;--header-height-full:120px;--header-height-compact:48px;--sidebar-width:220px;--column-gap:16px;--touch-target-min:48px;--touch-target-primary:56px;--touch-target-spacing:8px;--disclaimer-bg:#fff3cd;--disclaimer-text:#856404;--disclaimer-border:#ffecb5;--step-detect:#005eb8;--step-detect-bg:#e8f0fb;--step-calculate:#00a499;--step-calculate-bg:#e5f7f6;--step-lookup:#854d0e;--step-lookup-bg:#fffbeb;--step-classify:#330072;--step-classify-bg:#f3eef9;--step-combine:#425563;--step-combine-bg:#f0f4f5;--step-output-critical:#7f1d1d;--step-output-critical-bg:#fee2e2;--step-output-low:#14532d;--step-output-low-bg:#d1fae5}@media (prefers-color-scheme:dark){:root.dark{--nhs-pale-grey:#1a1a2e;--nhs-white:#0d1117;--nhs-black:#f0f4f5;--nhs-dark-grey:#c9d1d9}}*{box-sizing:border-box}body{font-family:var(--font-body);font-size:var(--font-size-body-desktop);background-color:var(--nhs-pale-grey);color:var(--nhs-black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums;margin:0;padding:0;line-height:1.65}#root{text-align:left;width:100%;max-width:100%;margin:0}@media (width<=767px){body{font-size:var(--font-size-body-mobile)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--nhs-dark-blue)}.dashboard-grid{grid-template-columns:1fr 1.2fr 1fr var(--sidebar-width);grid-template-rows:auto 1fr auto;height:100vh;display:grid;overflow:hidden}@media (width<=1279px){.dashboard-grid{grid-template-columns:1fr 1fr}}@media (width<=767px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-column{border-right:1px solid #dee2e6;padding:12px;overflow:hidden auto}:focus-visible{outline:3px solid var(--nhs-focus-yellow);outline-offset:2px}.entity-drug{background:var(--highlight-drug);cursor:pointer;border-radius:2px;padding:0 2px}.entity-condition{background:var(--highlight-condition);cursor:pointer;border-radius:2px;padding:0 2px}.entity-lab{background:var(--highlight-lab);cursor:pointer;border-radius:2px;padding:0 2px}.entity-active{outline:2px solid var(--highlight-active)}.severity-critical{background:var(--severity-critical-bg);color:var(--severity-critical-text);border:1px solid var(--severity-critical-border)}.severity-major{background:var(--severity-major-bg);color:var(--severity-major-text);border:1px solid var(--severity-major-border)}.severity-moderate{background:var(--severity-moderate-bg);color:var(--severity-moderate-text);border:1px solid var(--severity-moderate-border)}.severity-resolved{background:var(--severity-resolved-bg);color:var(--severity-resolved-text);border:1px solid var(--severity-resolved-border)}
