:root{--brand-blue-deep:#19406b;--brand-teal:#00cfb7;--brand-blue-action:#0067ea;--brand-orange:#ff9e00;--brand-surface-light:#f5f5f5;--brand-logo-blue:var(--brand-blue-deep);--brand-logo-teal:var(--brand-teal);--rosalind-green:var(--brand-teal);--rosalind-green-dark:#00a89a;--rosalind-green-light:#b9f2ec;--rosalind-blue:var(--brand-blue-action);--rosalind-blue-dark:var(--brand-blue-deep);--rosalind-blue-light:#cce0ff;--rosalind-orange:var(--brand-orange);--rosalind-orange-dark:#cc7e00;--rosalind-red:#d23a3a;--rosalind-red-light:#ffd6d6;--rosalind-teal:var(--brand-teal);--rosalind-purple:#7b1fa2;--gray-900:#1a1a1a;--gray-800:#2d2d2d;--gray-700:#4a4a4a;--gray-600:#6b6b6b;--gray-500:#8c8c8c;--gray-400:#aaa;--gray-300:#ccc;--gray-200:#e5e5e5;--gray-150:#ededed;--gray-100:var(--brand-surface-light);--gray-50:#fafafa;--white:#fff;--sidebar-bg:#1a1a1a;--sidebar-bg-gradient:linear-gradient(180deg, #1a1a1a 0%, #2d2d2d 100%);--sidebar-text:#fff;--sidebar-text-muted:#999;--sidebar-active-accent:var(--brand-teal);--sidebar-active-bg:#00cfb71f;--sidebar-width:240px;--sidebar-collapsed-width:60px;--topbar-height:56px;--topbar-bg:var(--white);--topbar-border:var(--gray-200);--topbar-accent:var(--brand-blue-deep);--score-high:var(--brand-teal);--score-medium:var(--brand-orange);--score-low:var(--rosalind-red);--score-na:var(--gray-300);--di-evidence-strong:var(--brand-teal);--di-evidence-moderate:var(--brand-blue-action);--di-evidence-weak:var(--brand-orange);--di-gap:var(--rosalind-red);--di-ai-suggestion:var(--rosalind-purple);--color-tier-recommended:var(--brand-teal);--color-tier-moderate:var(--brand-blue-action);--color-tier-exploratory:var(--brand-orange);--color-tier-not-recommended:var(--gray-500);--color-success:var(--brand-teal);--color-info:var(--brand-blue-action);--color-warning:var(--brand-orange);--color-danger:var(--rosalind-red);--color-surface:var(--white);--color-surface-alt:var(--brand-surface-light);--color-border:var(--gray-200);--color-text-primary:var(--gray-900);--color-text-secondary:var(--gray-600);--color-text-link:var(--brand-blue-action);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--font-family:"Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-base:var(--font-family);--font-mono:"SF Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-weight-regular:400;--font-weight-bold:700;--font-weight-black:900;--letter-spacing-wordmark:.2em;--letter-spacing-wide:.05em;--letter-spacing-normal:0;--letter-spacing-tight:-.01em;--text-xs:10px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--text-3xl:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--border-color:var(--gray-200);--border:1px solid var(--gray-200);--shadow-sm:0 1px 3px #19406b14;--shadow-md:0 2px 8px #19406b1f;--shadow-lg:0 4px 16px #19406b29;--transition-fast:.15s ease;--transition-normal:.25s ease;--gradient-brand-flow:linear-gradient(90deg, var(--brand-blue-deep) 0%, var(--brand-teal) 100%);--gradient-brand-soft:linear-gradient(135deg, #19406b0a 0%, #00cfb70f 100%)}html,body,#root{font-family:var(--font-family);font-weight:var(--font-weight-regular)}:root{--r-deep-blue:var(--brand-blue-deep);--r-deep-blue-2:#0f2a48;--r-deep-blue-3:#081a30;--r-teal:var(--brand-teal);--r-teal-deep:#009e8d;--r-teal-shadow:#006e62;--r-action:var(--brand-blue-action);--r-orange:var(--brand-orange);--r-orange-deep:#c47a00;--r-purple:#7b5cff;--r-purple-deep:#5a3fd6;--r-magenta:#d6216a;--verdict-yes:#009e8d;--verdict-yes-bg:#009e8d1a;--verdict-yes-line:#009e8d52;--verdict-mixed:#c47a00;--verdict-mixed-bg:#ff9e001f;--verdict-mixed-line:#c47a005c;--verdict-insufficient:#6b7a91;--verdict-insufficient-bg:#6b7a911a;--verdict-insufficient-line:#6b7a914d;--verdict-no:#b3304a;--verdict-no-bg:#b3304a14;--verdict-no-line:#b3304a47;--mod-rna:#009e8d;--mod-chip:#7b5cff;--mod-prot:#d6216a;--mod-sc:#ff9e00;--mod-clin:#0067ea;--paper:#fdfcf9;--paper-2:#f5f3ec;--paper-3:#ecead9;--ink:#0e1a2b;--ink-2:#2a3a52;--ink-3:#4a5a72;--muted:#6b7a91;--muted-2:#8b97a8;--rule:#d8dee8;--rule-soft:#e8eaf0;--rule-softer:#f1f2f6;--tint:#f7f8fb;--font-sans:var(--font-family);--font-serif:"Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;--font-display:var(--font-family);--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--t-display:56px;--t-h1:40px;--t-h2:28px;--t-h3:20px;--t-h4:16px;--t-body:15px;--t-small:13px;--t-micro:11px;--t-mono:13px;--density:1;--pane-pad:calc(20px * var(--density));--row-pad-y:calc(10px * var(--density));--gap:calc(16px * var(--density));--r-sm:4px;--r-md:6px;--r-lg:10px;--r-xl:14px;--shadow-1:0 1px 0 #0e1a2b0a, 0 1px 2px #0e1a2b0a;--shadow-2:0 1px 0 #0e1a2b0a, 0 4px 16px #0e1a2b0f;--shadow-3:0 8px 24px #0e1a2b1a, 0 24px 64px #0e1a2b14;--shadow-rail:-8px 0 24px #0e1a2b0f;--max-content:1500px;--max-narrow:1200px;--max-prose:720px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-soft:cubic-bezier(.4, 0, .2, 1);--d-fast:.12s;--d-base:.22s;--d-slow:.42s}.color-dim{--paper:#f1efe7;--paper-2:#e8e6dd;--paper-3:#ddd9cb;--tint:#ecead9}.color-dark{--paper:#0a1628;--paper-2:#0f1f38;--paper-3:#142a48;--ink:#f0f4fb;--ink-2:#c5cdda;--ink-3:#97a2b6;--muted:#6b7a91;--muted-2:#5a697f;--rule:#ffffff14;--rule-soft:#ffffff0d;--rule-softer:#ffffff08;--tint:#0f1f38;--shadow-1:0 1px 0 #0006, 0 1px 2px #0000004d;--shadow-2:0 1px 0 #0006, 0 4px 16px #0006;--shadow-3:0 8px 24px #00000080, 0 24px 64px #00000073;--shadow-rail:-8px 0 24px #0006;--verdict-yes-bg:#00cfb724;--verdict-mixed-bg:#ff9e0024;--verdict-no-bg:#d6216a1f;--verdict-insufficient-bg:#ffffff0f}.density-compact{--density:.85}.density-standard{--density:1}.density-spacious{--density:1.15}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-family);font-size:var(--text-md);color:var(--gray-900);background:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--rosalind-blue);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.gene-symbol{font-family:var(--font-mono);letter-spacing:-.02em;font-weight:600}:focus-visible{outline:2px solid var(--rosalind-blue);outline-offset:2px}.app-shell{grid-template-areas:"topbar topbar""sidebar content";grid-template-columns:var(--sidebar-width) 1fr;grid-template-rows:var(--topbar-height) 1fr;height:100vh;display:grid;overflow:hidden}.topbar{height:var(--topbar-height);padding:0 var(--space-4);background:var(--white);border-bottom:1px solid var(--topbar-border);z-index:100;grid-area:topbar;justify-content:space-between;align-items:center;display:flex}.topbar-left{align-items:center;gap:var(--space-3);display:flex}.sidebar-toggle{cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--gray-600);transition:background var(--transition-fast);background:0 0;border:none;font-size:18px}.sidebar-toggle:hover{background:var(--gray-100)}.topbar-logo{align-items:center;gap:var(--space-2);display:flex}.topbar-logo-img{width:auto;height:28px;display:block}.topbar-ask-btn{background:var(--brand-blue-action,#0067ea);color:#fff;transition:background var(--transition-fast,.15s ease);border-radius:4px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.topbar-ask-btn:hover{background:var(--brand-blue-deep,#19406b)}.topbar-brand{font-size:var(--text-lg);color:var(--gray-900);font-weight:700}.topbar-separator{color:var(--gray-300);font-weight:300}.topbar-context{font-size:var(--text-base);color:var(--gray-600);font-weight:500}.topbar-right{align-items:center;gap:var(--space-2);display:flex}.topbar-icon-btn{cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none;font-size:16px;position:relative}.topbar-icon-btn:hover{background:var(--gray-100)}.topbar-notification{position:relative}.notification-badge{background:var(--rosalind-orange);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:9px;font-weight:700;display:flex;position:absolute;top:2px;right:2px}.topbar-avatar{background:var(--gradient-brand-flow,var(--brand-blue-deep,#19406b));color:#fff;width:32px;height:32px;font-size:var(--text-sm);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:flex}.sidebar{background:var(--sidebar-bg-gradient);transition:width var(--transition-normal);width:var(--sidebar-width);grid-area:sidebar;overflow:hidden auto}.sidebar--collapsed{width:var(--sidebar-collapsed-width)}.sidebar--collapsed~.content{margin-left:var(--sidebar-collapsed-width);grid-column:1/-1}.sidebar-nav{padding:var(--space-4) 0}.sidebar-section{margin-bottom:var(--space-4)}.sidebar-section-label{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);letter-spacing:.08em;color:var(--sidebar-text-muted);text-transform:uppercase;font-weight:600}.sidebar-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);color:var(--sidebar-text-muted);font-size:var(--text-base);transition:all var(--transition-fast);cursor:pointer;border-left:3px solid #0000;text-decoration:none;display:flex}.sidebar-item:hover{color:var(--sidebar-text);background:var(--sidebar-active-bg);text-decoration:none}.sidebar-item--active{color:var(--sidebar-text);background:var(--sidebar-active-bg);border-left-color:var(--sidebar-active-accent)}.sidebar-icon{text-align:center;flex-shrink:0;width:20px;font-size:18px}.sidebar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.content{padding:var(--space-6) var(--space-8);background:var(--white);grid-area:content;overflow-y:auto}.content>*{max-width:var(--content-max-width,1600px)}.content--expanded{margin-left:0}.content-breadcrumb{font-size:var(--text-sm);color:var(--gray-500);margin-bottom:var(--space-4)}.app-shell:has(.sidebar--collapsed){grid-template-columns:var(--sidebar-collapsed-width) 1fr}
