:root{--bone: #f5f2ec;--bone-2: #efeae1;--paper: #ffffff;--ink: #1c1a17;--ink-2: #3b3833;--muted: #6f685e;--faint: #9a9388;--line: #e6e0d5;--line-2: #d9d2c5;--coral: #e2683c;--coral-strong: #c8552c;--coral-soft: #fbe6da;--coral-ink: #8f3e20;--ok: #2e7d52;--ok-soft: #e6f1ea;--ok-line: #aed3bf;--warn: #a9701f;--warn-soft: #f7eed8;--warn-line: #e3cb92;--danger: #b23b2f;--danger-soft: #fbe9e6;--danger-line: #e8b4ac;--info: #2f6db0;--info-soft: #e9f0fa;--info-line: #b0cbe8;--diet: #7a5e9c;--diet-soft: #f1ebf8;--diet-line: #c8b9e2;--r-pill: 999px;--r-card: 18px;--r-sm: 12px;--r-xs: 9px;--shadow-sm: 0 1px 2px rgba(28, 26, 23, .04), 0 6px 18px rgba(28, 26, 23, .05);--shadow-card: 0 1px 3px rgba(28, 26, 23, .05), 0 16px 40px rgba(28, 26, 23, .07);--shadow-lift: 0 2px 6px rgba(28, 26, 23, .08), 0 26px 50px rgba(28, 26, 23, .12);--shadow-nav: 0 12px 34px rgba(28, 26, 23, .22);--font-display: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-body: "Hanken Grotesk", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;color-scheme:light;font-family:var(--font-body);background:var(--bone);color:var(--ink);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(900px 520px at 82% -8%,rgba(226,104,60,.1),transparent 60%),radial-gradient(760px 480px at -6% 6%,rgba(28,26,23,.05),transparent 55%),var(--bone)}button,select,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--coral-ink);text-underline-offset:2px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em}.eyebrow,.hero-kicker,.view-header p,.consent-eyebrow,.summary-label,.overview-eyebrow{font-family:var(--font-mono);margin:0 0 4px;color:var(--coral);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.14em}.app-shell{min-height:100vh;display:flex;flex-direction:column}.banner{display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 16px;background:transparent;border-bottom:1px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.02em}.banner svg{color:var(--coral);flex:0 0 auto}.topnav{position:sticky;top:14px;z-index:20;width:min(1280px,calc(100% - 32px));margin:16px auto 0}.topnav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px 10px 18px;background:var(--ink);color:#f6f3ee;border-radius:var(--r-pill);box-shadow:var(--shadow-nav)}.brandmark{display:inline-flex;align-items:center;gap:11px;min-width:0}.brand-dot{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--coral);color:#fff;flex:0 0 auto}.brand-text{display:flex;flex-direction:column;line-height:1;min-width:0}.brand-name{font-family:var(--font-display);font-weight:800;font-size:18px;letter-spacing:-.01em}.brand-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b7afa3;margin-top:3px}.topnav-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.mode-toggle{display:inline-flex;border-radius:var(--r-pill);background:#ffffff14;padding:3px}.mode-toggle button{border:0;border-radius:var(--r-pill);background:transparent;color:#d9d3c8;font-family:var(--font-mono);font-weight:600;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding:7px 15px;transition:background .18s ease,color .18s ease}.mode-toggle button.active{background:var(--coral);color:#fff}.scenario-picker{display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;border-radius:var(--r-pill);padding:7px 12px;min-width:168px;color:#efe9df}.scenario-picker svg{color:var(--coral);flex:0 0 auto}.scenario-picker select{width:100%;border:0;outline:0;background:transparent;color:#efe9df;font-size:13px}.scenario-picker select option{color:#1c1a17}.privacy-link{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.18);border-radius:var(--r-pill);background:transparent;padding:7px 13px;font-size:12.5px;font-weight:600;color:#efe9df}.privacy-link:hover{background:#ffffff1a}.workspace{display:grid;grid-template-columns:196px minmax(0,1fr);gap:30px;width:min(1280px,calc(100% - 32px));margin:26px auto 56px;flex:1}.rail{position:sticky;top:86px;align-self:start;display:grid;gap:6px}.nav-button{display:flex;align-items:center;gap:11px;width:100%;min-height:44px;border:1px solid transparent;border-radius:var(--r-pill);padding:10px 16px;background:transparent;color:var(--muted);font-weight:600;font-size:14px;text-align:left;transition:background .16s ease,color .16s ease,border-color .16s ease}.nav-button svg{flex:0 0 auto;color:var(--faint);transition:color .16s ease}.nav-button:hover{background:var(--paper);color:var(--ink)}.nav-button.active{background:var(--ink);color:#f6f3ee;border-color:var(--ink)}.nav-button.active svg{color:var(--coral)}.content,.view-stack{display:grid;gap:18px;min-width:0;animation:rise .5s cubic-bezier(.22,.8,.3,1) both}.notice{display:flex;align-items:center;gap:10px;border-radius:var(--r-sm);padding:12px 14px;font-size:14px}.notice.error{border:1px solid var(--danger-line);background:var(--danger-soft);color:var(--danger)}.notice.info{border:1px solid var(--info-line);background:var(--info-soft);color:var(--info)}.view-header{display:flex;align-items:center;gap:14px;padding-bottom:4px}.view-header h2{margin:0;font-size:clamp(23px,3vw,31px);line-height:1.06;font-weight:800}.view-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:var(--coral-soft);color:var(--coral);flex:0 0 auto}.overview{display:grid;gap:22px}.overview-hero{display:grid;gap:12px;border:1px solid var(--line);border-radius:26px;padding:clamp(24px,4vw,40px);background:radial-gradient(620px 360px at 100% 0%,rgba(226,104,60,.12),transparent 62%),linear-gradient(180deg,var(--paper),#fffdf9);box-shadow:var(--shadow-card)}.overview-hero h1{margin:0;font-size:clamp(30px,5vw,48px);line-height:1.02;font-weight:800;max-width:18ch}.overview-hero h1 .accent{color:var(--coral)}.overview-lead{margin:4px 0 0;color:var(--muted);font-size:clamp(15px,1.6vw,17px);line-height:1.55;max-width:62ch}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(244px,1fr));gap:14px}.overview-card{display:flex;flex-direction:column;gap:8px;text-align:left;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:20px;min-height:176px;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;animation:rise .55s cubic-bezier(.22,.8,.3,1) both}.overview-icon{margin-bottom:2px}.overview-value{margin-top:2px}.overview-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:var(--line-2)}.overview-card:nth-child(1){animation-delay:.04s}.overview-card:nth-child(2){animation-delay:.1s}.overview-card:nth-child(3){animation-delay:.16s}.overview-card:nth-child(4){animation-delay:.22s}.overview-card:nth-child(5){animation-delay:.28s}.overview-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--bone-2);color:var(--ink)}.overview-card.tone-ok .overview-icon{background:var(--ok-soft);color:var(--ok)}.overview-card.tone-warn .overview-icon{background:var(--warn-soft);color:var(--warn)}.overview-card.tone-accent .overview-icon{background:var(--coral-soft);color:var(--coral)}.overview-label{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.overview-value{font-family:var(--font-display);font-size:25px;line-height:1.1;font-weight:800;color:var(--ink);align-self:start}.overview-card.tone-ok .overview-value{color:var(--ok)}.overview-card.tone-warn .overview-value{color:var(--warn)}.overview-hint{color:var(--muted);font-size:13px;line-height:1.45}.overview-go{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:8px;color:var(--coral);font-weight:700;font-size:13px;transition:gap .16s ease}.overview-card:hover .overview-go{gap:9px}.sample-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(214px,1fr));gap:12px}.sample-button{display:flex;align-items:center;gap:11px;min-height:56px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);color:var(--ink);font-weight:600;padding:12px 16px;box-shadow:var(--shadow-sm);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.sample-button svg:first-child{color:var(--coral);flex:0 0 auto}.sample-button>span{flex:1}.sample-button:hover{transform:translateY(-2px);border-color:var(--coral);box-shadow:var(--shadow-card)}.upload-button{border-style:dashed;border-color:var(--coral);color:var(--coral-ink)}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;min-width:150px;border:1px solid var(--coral);border-radius:var(--r-pill);background:var(--coral);color:#fff;font-weight:700;padding:12px 22px;box-shadow:0 10px 22px #e2683c42;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.primary-button:hover:not(:disabled){background:var(--coral-strong);border-color:var(--coral-strong);transform:translateY(-1px)}.secondary-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--ink);border-radius:var(--r-pill);background:transparent;color:var(--ink);padding:10px 16px;font-weight:600;white-space:nowrap;transition:background .16s ease,color .16s ease}.secondary-button:hover{background:var(--ink);color:#f6f3ee}.summary-action,.overview-go-btn{display:inline-flex;align-items:center;gap:5px;margin-top:8px;border:1px solid var(--line-2);border-radius:var(--r-pill);padding:8px 13px;background:var(--paper);color:var(--coral-ink);font-weight:700;font-size:13px;justify-self:start;transition:border-color .16s ease,background .16s ease}.summary-action:hover{border-color:var(--coral);background:var(--coral-soft)}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.toggle{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper);padding:10px 16px;color:var(--ink-2);font-weight:600}.toggle input{accent-color:var(--coral)}.demo-cta{display:flex;align-items:center;gap:16px;width:100%;text-align:left;border:0;border-radius:20px;padding:20px 22px;color:#fff;background:linear-gradient(135deg,#e2683c,#c8552c);box-shadow:0 16px 36px #c8552c4d;transition:transform .18s ease,box-shadow .18s ease}.demo-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 22px 46px #c8552c5c}.demo-cta:disabled{opacity:.85}.demo-cta-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#fff3;flex:0 0 auto}.demo-cta-body{display:grid;gap:3px;flex:1}.demo-cta-body strong{font-family:var(--font-display);font-size:17px;font-weight:800}.demo-cta-body span{font-size:13px;color:#ffffffe6}.demo-guide{display:flex;align-items:flex-start;gap:11px;border:1px solid var(--coral-soft);background:linear-gradient(180deg,#fff8f3,#fffdfb);border-radius:var(--r-card);padding:14px 16px;color:var(--coral-ink)}.demo-guide>svg{color:var(--coral);flex:0 0 auto;margin-top:1px}.demo-guide-body{display:grid;gap:3px;flex:1;font-size:13.5px;color:var(--ink-2)}.demo-guide-body strong{color:var(--ink)}.demo-guide-body button{border:none;background:none;padding:0;font:inherit;font-weight:700;color:var(--coral-ink);cursor:pointer}.demo-guide-body button:hover{text-decoration:underline}.demo-guide-close{border:none;background:none;color:var(--faint);cursor:pointer;padding:2px;flex:0 0 auto}.data-section{display:grid;gap:14px;padding:22px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);box-shadow:var(--shadow-sm)}.section-heading,.gene-topline,.result-head,.strain-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.section-heading h2,.strain-card h2,.result-card h3{margin:0;font-size:18px;line-height:1.25;font-weight:800}.section-heading span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;color:var(--muted);text-align:right;flex:0 0 auto;max-width:46%}.gene-topline span,.muted-text,.result-card p,.strain-card p,.metric-card p,.empty-state span{color:var(--muted)}.muted-text{font-size:13.5px;line-height:1.5}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-sm)}table{width:100%;border-collapse:collapse;min-width:780px}th,td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:13.5px}th{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:var(--bone-2)}tr.recognized td{background:#e2683c0f}.gene-grid,.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(222px,1fr));gap:12px}.gene-card,.metric-card,.strain-card,.result-card,.fallback-card,.empty-state{border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:18px;box-shadow:var(--shadow-sm)}.big-value{margin:14px 0 4px;font-family:var(--font-display);font-size:32px;line-height:1;font-weight:800;color:var(--coral)}.metric-card{display:grid;gap:10px;min-height:144px}.metric-card div:first-child{display:flex;justify-content:space-between;gap:10px}.metric-card div:first-child span{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.metric-card strong{white-space:nowrap;font-family:var(--font-display);font-size:17px;font-weight:800}.baseline-bar{display:grid;gap:7px;width:100%}.baseline-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.baseline-status.ok{color:var(--ok)}.baseline-status.warn{color:var(--warn)}.baseline-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex:0 0 auto}.baseline-track{position:relative;height:14px;border-radius:999px;background:var(--bone-2);overflow:visible}.baseline-band{position:absolute;top:0;bottom:0;border-radius:999px;background:#e2683c2e}.baseline-threshold{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;border-radius:2px;background:var(--warn);opacity:.8}.baseline-marker{position:absolute;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:2px solid var(--paper);box-shadow:0 1px 4px #1c1a1759}.baseline-marker.ok{background:var(--ok)}.baseline-marker.warn{background:var(--warn)}.baseline-labels{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted)}.baseline-labels .baseline-mean{font-weight:700;color:var(--ink-2)}.baseline-note{margin:2px 0 0;font-size:12.5px;color:var(--muted)}.consent-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:#1c1a1780;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.consent-card{width:min(540px,100%);background:var(--paper);border-radius:24px;padding:30px;box-shadow:0 30px 70px #1c1a1766;display:grid;gap:12px;animation:rise .4s cubic-bezier(.22,.8,.3,1) both}.consent-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--coral-soft);color:var(--coral)}.consent-card h1{margin:0;font-size:28px;line-height:1.1;font-weight:800}.consent-lead{margin:0;color:var(--ink-2);line-height:1.55;font-size:14.5px}.consent-points{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:10px}.consent-points li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink-2)}.consent-points svg{color:var(--coral);flex:0 0 auto;margin-top:2px}.consent-accept{margin-top:8px;width:100%}.consent-fine{margin:2px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;color:var(--faint)}.intake-card{display:grid;gap:16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:22px;box-shadow:var(--shadow-sm)}.intake-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.intake-field{display:grid;gap:7px;align-content:start}.intake-field>label{font-size:14px;font-weight:700;color:var(--ink)}.intake-help{font-size:12px;color:var(--muted)}.intake-field input[type=number]{border:1px solid var(--line-2);border-radius:var(--r-xs);padding:10px 12px;font:inherit;background:var(--bone);max-width:160px}.intake-field input[type=number]:focus,.meds-input-row input:focus,.labs-input-field:focus-within{outline:2px solid rgba(226,104,60,.4);outline-offset:1px;border-color:var(--coral)}.intake-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.intake-toggle input,.labs-input input,.meds-input-row input{accent-color:var(--coral)}.intake-chips{display:flex;flex-wrap:wrap;gap:8px}.intake-chip{border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper);padding:8px 14px;font-size:13px;font-weight:600;color:var(--ink-2);transition:border-color .15s ease,background .15s ease,color .15s ease}.intake-chip:hover{border-color:var(--coral)}.intake-chip.active{border-color:var(--coral);background:var(--coral-soft);color:var(--coral-ink)}.intake-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.intake-saved{font-size:12.5px;color:var(--ok);font-weight:700}.context-note{display:grid;gap:6px;border:1px solid var(--line);border-left-width:4px;border-radius:var(--r-sm);background:var(--paper);padding:15px 16px}.context-note strong{font-size:15px}.context-note p{margin:0;font-size:13.5px;color:var(--ink-2);line-height:1.5}.context-note.info{border-left-color:var(--info)}.context-note.warn{border-left-color:var(--warn);background:#fffdf7}.wearable-upload{display:flex;align-items:center;gap:14px;border:1px dashed var(--line-2);border-radius:var(--r-card);background:var(--bone);padding:16px 18px}.wearable-upload>div{display:grid;gap:3px;flex:1}.wearable-upload strong{font-size:14.5px}.wearable-upload span{font-size:12.5px;color:var(--muted)}.meds-card,.labs-card{display:grid;gap:14px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:20px;box-shadow:var(--shadow-sm)}.meds-input-row{display:flex;gap:8px}.meds-input-row input,.labs-input-field{border:1px solid var(--line-2);border-radius:var(--r-xs);background:var(--bone)}.meds-input-row input{flex:1;min-width:0;padding:11px 13px;font:inherit}.meds-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}.med-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--bone-2);padding:6px 12px;font-size:13px;font-weight:600;color:var(--ink-2)}.med-chip button{display:inline-flex;align-items:center;border:none;background:none;padding:0;cursor:pointer;color:var(--muted)}.med-chip.suggest{cursor:pointer;border-style:dashed;background:var(--paper)}.med-chip.suggest:hover{border-color:var(--coral);color:var(--coral-ink)}.meds-list{display:flex;flex-wrap:wrap;gap:8px}.meds-results{display:grid;gap:8px}.med-result{display:flex;gap:10px;align-items:flex-start;border-radius:var(--r-sm);padding:13px;font-size:13.5px}.med-result p{margin:2px 0 0}.med-result.urgent{border:1px solid var(--danger-line);background:var(--danger-soft);color:var(--danger)}.med-result.ok{border:1px solid var(--ok-line);background:var(--ok-soft);color:var(--ok)}.med-result.muted{border:1px solid var(--line);background:var(--bone);color:var(--ink-2)}.labs-input-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.labs-input{display:grid;gap:7px;font-size:13px;font-weight:700;color:var(--ink)}.labs-input-field{display:flex;align-items:center;gap:6px;padding:0 11px 0 0}.labs-input-field input{flex:1;min-width:0;border:none;background:none;padding:10px 11px;font:inherit}.labs-input-field input:focus{outline:none}.labs-unit{font-family:var(--font-mono);font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap}.labs-results{display:grid;gap:12px}.labs-result{display:grid;gap:8px;border:1px solid var(--line);border-left-width:4px;border-radius:var(--r-sm);background:var(--paper);padding:15px}.labs-result.ok{border-left-color:var(--ok)}.labs-result.warn{border-left-color:var(--warn)}.labs-result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.labs-result-head strong{display:block;font-size:16px;font-weight:800}.labs-value{font-family:var(--font-mono);font-size:13px;color:var(--ink-2);font-weight:600}.labs-range{margin:0;font-size:12.5px;color:var(--muted)}.vertical-list,.result-list{display:grid;gap:12px}.strain-card{display:grid;gap:14px}.status-badge,.grade-badge{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border-radius:var(--r-pill);padding:6px 11px;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.02em}.status-badge.baseline,.grade-E1,.grade-E2,.grade-E3{border:1px solid var(--ok-line);background:var(--ok-soft);color:var(--ok)}.status-badge.active,.grade-E4,.grade-FLAG{border:1px solid var(--danger-line);background:var(--danger-soft);color:var(--danger)}.grade-G{border:1px solid var(--info-line);background:var(--info-soft);color:var(--info)}.grade-D{border:1px solid var(--diet-line);background:var(--diet-soft);color:var(--diet)}.grade-RISK{border:1px solid var(--warn-line);background:var(--warn-soft);color:var(--warn)}.result-card{display:grid;gap:12px}.result-card.verified{border-left:4px solid var(--ok)}.result-card.dropped,.result-card.flagged{border-left:4px solid var(--danger)}.result-card.risk-card{border-left:4px solid var(--warn)}.result-card.diet-result{border-left:4px solid var(--diet)}.result-head h3{font-size:19px}.result-head p{margin:6px 0 0}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.detail-pill{display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--r-xs);padding:10px 12px;background:var(--bone)}.detail-pill span,.metric-strip span{color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;text-transform:uppercase}.detail-pill strong{font-size:15px}.metric-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.metric-strip{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}.path-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.path-list li{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(160px,1.3fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--bone);padding:9px 11px;font-size:13px}.path-list strong{color:var(--coral-ink);font-family:var(--font-mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.evidence-row{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:12.5px}.evidence-row span,.evidence-row a{border:1px solid var(--line);border-radius:var(--r-pill);padding:4px 10px;background:var(--bone);font-family:var(--font-mono);font-size:11.5px}.evidence-row a{color:var(--coral-ink);text-decoration:none}.evidence-row a:hover{border-color:var(--coral)}.fallback-card{display:flex;gap:12px;border-color:var(--info-line);background:var(--info-soft)}.fallback-card svg{color:var(--info);flex:0 0 auto}.fallback-card p{margin:6px 0 0}.inline-details,.trace-panel{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);padding:13px 15px}.inline-details summary,.trace-panel summary,.whatis summary{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--coral-ink);font-weight:700;font-size:13.5px}.inline-details p{color:var(--ink-2)}.trace-grid{display:grid;gap:12px;margin-top:12px}.trace-block{display:grid;gap:6px}.trace-block strong{font-family:var(--font-mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.trace-block p,.trace-block pre,pre{margin:0;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--bone);color:var(--ink);padding:12px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono);font-size:12px}.empty-state{display:grid;place-items:center;gap:10px;min-height:240px;text-align:center}.empty-state svg{color:var(--coral)}.empty-state strong{font-family:var(--font-display);font-size:18px;font-weight:800}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,.content,.view-stack,.overview-card,.consent-card{animation:none!important;transition:none!important}}.summary-band{display:grid;grid-template-columns:repeat(auto-fit,minmax(192px,1fr));gap:12px}.summary-tile{display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:18px;box-shadow:var(--shadow-sm)}.summary-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--coral-soft);color:var(--coral);margin-bottom:6px}.summary-value{font-family:var(--font-display);font-size:25px;line-height:1.1;font-weight:800;color:var(--ink)}.summary-hint{color:var(--muted);font-size:12px}.summary-tile.tone-warn .summary-value{color:var(--warn)}.summary-tile.tone-ok .summary-value{color:var(--ok)}.gene-card.activated{border-left:4px solid var(--ok)}.formulation-hero{display:grid;gap:16px;padding:22px;border:1px solid var(--coral-soft);border-radius:var(--r-card);background:radial-gradient(420px 220px at 100% 0%,rgba(226,104,60,.12),transparent 64%),var(--paper);box-shadow:var(--shadow-sm)}.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:14px}.hero-stats div{display:grid;gap:3px}.hero-stats strong{font-family:var(--font-display);font-size:30px;font-weight:800;color:var(--coral);line-height:1}.hero-stats span{color:var(--muted);font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.hero-note{display:flex;align-items:flex-start;gap:8px;border-top:1px solid var(--line);padding-top:14px;color:var(--ink-2);font-size:13px}.hero-note svg{color:var(--coral);flex:0 0 auto;margin-top:1px}.ingredient-title{display:flex;align-items:flex-start;gap:10px}.ingredient-title svg{color:var(--coral);flex:0 0 auto;margin-top:2px}.ingredient-title h3{margin:0}.dose-row{display:flex;flex-wrap:wrap;gap:8px}.dose-tag{border-radius:var(--r-pill);padding:5px 11px;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.02em;border:1px solid var(--ok-line);background:var(--ok-soft);color:var(--ok)}.dose-tag.muted{border-color:var(--warn-line);background:var(--warn-soft);color:var(--warn)}.dose-note{margin:0;color:var(--muted);font-size:12.5px}.checkout-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:22px;box-shadow:var(--shadow-sm)}.checkout-card h3{margin:0 0 4px;font-size:19px;font-weight:800}.checkout-card p{margin:0 0 4px;color:var(--muted);max-width:60ch}.print-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.print-hint{color:var(--muted);font-size:12.5px;max-width:52ch}.hero-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:26px;padding:clamp(22px,4vw,36px);background:radial-gradient(560px 320px at 100% 0%,rgba(226,104,60,.13),transparent 60%),linear-gradient(180deg,var(--paper),#fffdf9);box-shadow:var(--shadow-card)}.hero-card.dark{border-color:var(--ink);background:linear-gradient(135deg,#211e1a,#322c26);color:#f3efe9}.hero-card.dark .hero-kicker{color:var(--coral)}.hero-card.dark .hero-sub{color:#c9c1b5}.hero-title{margin:0;font-family:var(--font-display);font-size:clamp(26px,3.8vw,40px);line-height:1.05;font-weight:800;letter-spacing:-.02em;max-width:22ch}.hero-sub{margin:0;color:var(--muted);font-size:15.5px;line-height:1.55;max-width:62ch}.hero-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.hero-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper);color:var(--ink);font-weight:700;font-size:13.5px;padding:10px 16px;transition:transform .15s ease,border-color .15s ease}.hero-chip:hover{transform:translateY(-1px);border-color:var(--coral)}.hero-chip.ok{border-color:var(--ok-line);color:var(--ok)}.hero-chip.warn{border-color:var(--warn-line);color:var(--warn)}.simple-list{display:grid;gap:12px}.simple-card{display:grid;gap:11px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--paper);padding:20px 22px;box-shadow:var(--shadow-sm)}.simple-card.accent{border-left:4px solid var(--ok)}.simple-card.doctor-card{border-left:4px solid var(--info)}.simple-card.risk-simple{border-left:4px solid var(--warn)}.simple-card.diet-card{border-left:4px solid var(--diet)}.simple-card.muted-card{background:var(--bone)}.simple-card h3{margin:0;font-size:21px;line-height:1.2;font-weight:800}.simple-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.simple-card-head strong{font-size:16px}.simple-card-head .ingredient-title strong{font-size:17px}.simple-card-gene{margin-left:8px;color:var(--faint);font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:6px 13px;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.pill.ok{border:1px solid var(--ok-line);background:var(--ok-soft);color:var(--ok)}.pill.info{border:1px solid var(--info-line);background:var(--info-soft);color:var(--info)}.pill.warn{border:1px solid var(--warn-line);background:var(--warn-soft);color:var(--warn)}.pill.diet{border:1px solid var(--diet-line);background:var(--diet-soft);color:var(--diet)}.explain{margin:0;color:var(--ink-2);font-size:14.5px;line-height:1.6;max-width:72ch}.explain.action{display:flex;align-items:flex-start;gap:8px;border-radius:var(--r-sm);background:var(--coral-soft);color:var(--coral-ink);padding:11px 13px}.explain.action svg{flex:0 0 auto;margin-top:2px;color:var(--coral)}.whatis{border-top:1px solid var(--line);padding-top:9px}.whatis summary{cursor:pointer;color:var(--coral-ink);font-weight:700;font-size:13.5px}.whatis p{margin:8px 0 0;color:var(--ink-2);font-size:14px;line-height:1.55}.detail-foot{color:var(--faint);font-family:var(--font-mono);font-size:11.5px}.quiet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.quiet-card{display:grid;gap:6px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bone);padding:15px 16px}.quiet-card strong{font-size:15px}.quiet-card>span{color:var(--faint);font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase}.quiet-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.quiet-foot{color:var(--ok)!important;text-transform:none!important;font-family:var(--font-body)!important}.body-head{display:flex;align-items:center;gap:16px}.body-head strong{color:var(--muted);font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.body-head h3{margin:2px 0 4px;font-size:24px;font-weight:800}.state-ring{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;flex:0 0 auto}.state-ring.ok{background:conic-gradient(var(--ok) 0deg 360deg);color:#fff;box-shadow:inset 0 0 0 5px #fff6,0 8px 20px #2e7d524d}.state-ring.warn{background:conic-gradient(var(--coral) 0deg 360deg);color:#fff;box-shadow:inset 0 0 0 5px #fff6,0 8px 20px #e2683c52}.print-only{display:none}@media print{body{background:#fff}.app-shell{display:none!important}.print-only{display:block!important}}@page{margin:18mm 16mm}.report{color:#111;font-family:var(--font-body);font-size:12px;line-height:1.5}.report-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:3px solid var(--coral);padding-bottom:10px;margin-bottom:12px}.report h1{margin:0;font-size:21px;font-weight:800}.report-sub{margin:3px 0 0;color:#3c3a35;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.report-meta{display:grid;gap:2px;text-align:right;color:#555;font-family:var(--font-mono);font-size:11px}.report-disclaimer{border:1.5px solid #111111;padding:8px 10px;font-weight:700;margin-bottom:14px}.report section{margin-bottom:16px;break-inside:avoid-page}.report h2{font-size:15px;margin:0 0 6px;border-bottom:1px solid #cccccc;padding-bottom:3px}.report h3{font-size:13px;margin:12px 0 4px}.report table{width:100%;min-width:0;border-collapse:collapse;margin:6px 0}.report th,.report td{border:1px solid #bbbbbb;padding:5px 7px;font-size:11px;text-align:left;vertical-align:top;font-family:var(--font-body)}.report th{background:#f3ece6;text-transform:none;letter-spacing:0;color:#222}.report ul{margin:4px 0;padding-left:18px}.report li{margin-bottom:4px}.report-finding{margin-bottom:10px}.report-finding p{margin:3px 0}.report-fine{color:#555;font-size:11px}.report-legend li{font-size:11px}.report-footer{border-top:1px solid #cccccc;margin-top:14px;padding-top:8px;color:#444;font-size:10.5px}.report-footer p{margin:3px 0}@media(max-width:880px){.workspace{grid-template-columns:1fr;width:min(100% - 24px,760px);gap:18px}.rail{position:static;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;overflow-x:auto;padding-bottom:4px}.nav-button{justify-content:center;padding:10px 8px}.nav-button span{display:none}.topnav-inner{flex-wrap:wrap;border-radius:22px;gap:10px}.topnav-controls{width:100%}.scenario-picker{flex:1}.section-heading,.result-head,.strain-head{align-items:stretch;flex-direction:column}.section-heading span{text-align:left;max-width:100%}.path-list li{grid-template-columns:1fr}}.boot-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--bone);color:var(--coral)}.intake-field input[type=date],.onboarding-grid input[type=date]{border:1px solid var(--line-2);border-radius:var(--r-xs);padding:10px 12px;font:inherit;background:var(--bone);max-width:200px;color:var(--ink)}.intake-field input[type=date]:focus{outline:2px solid rgba(226,104,60,.4);outline-offset:1px}.auth-card{width:min(440px,100%);text-align:left}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin-top:6px;background:var(--bone-2);border-radius:var(--r-pill)}.auth-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:var(--r-pill);padding:10px 12px;font:inherit;font-weight:700;color:var(--muted);background:transparent;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.auth-tabs button.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm)}.auth-form{display:grid;gap:13px;margin-top:4px}.auth-field{display:grid;gap:6px}.auth-field>span{font-size:12px;font-weight:700;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.auth-field input{border:1px solid var(--line-2);border-radius:var(--r-sm);padding:11px 13px;font:inherit;background:var(--bone);color:var(--ink)}.auth-field input:focus{outline:2px solid rgba(226,104,60,.4);outline-offset:1px}.auth-error{margin:0;padding:9px 12px;border-radius:var(--r-xs);background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger);font-size:13px}.auth-submit{width:100%;margin-top:2px}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--faint);font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin:4px 0 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-explore{width:100%;justify-content:center;min-height:46px}.onboarding-card{width:min(560px,100%);text-align:left;max-height:calc(100vh - 48px);overflow-y:auto}.onboarding-progress{display:flex;gap:8px;margin-bottom:4px}.onboarding-pip{display:inline-flex;align-items:center;gap:7px;flex:1;font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:var(--faint);padding-bottom:8px;border-bottom:2px solid var(--line)}.onboarding-pip span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--bone-2);color:var(--muted);font-size:11px;font-weight:700}.onboarding-pip.active{color:var(--ink);border-bottom-color:var(--coral)}.onboarding-pip.active span{background:var(--coral);color:#fff}.onboarding-pip.done span{background:var(--ok);color:#fff}.onboarding-step{display:grid;gap:12px}.onboarding-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.onboarding-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:6px}.onboarding-upload{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:1px dashed var(--line-2);border-radius:var(--r-card);background:var(--bone);padding:16px 18px;cursor:pointer;color:var(--ink);transition:border-color .16s ease,background .16s ease}.onboarding-upload:hover:not(:disabled){border-color:var(--coral);background:var(--coral-soft)}.onboarding-upload .demo-cta-mark,.onboarding-upload>svg:first-child{color:var(--coral);flex:0 0 auto}.onboarding-upload span:nth-child(2){display:grid;gap:2px;flex:1}.onboarding-upload span:nth-child(2)>span{font-size:12.5px;color:var(--muted)}.onboarding-samples{display:grid;gap:8px}.onboarding-dev-note,.account-devnote{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:var(--coral-ink)}.onboarding-loaded{margin:0}.text-button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:600;padding:10px 14px;cursor:pointer;border-radius:var(--r-pill)}.text-button:hover:not(:disabled){color:var(--ink);background:var(--bone-2)}.account-menu{position:relative}.account-trigger{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-2);border-radius:var(--r-pill);background:var(--paper);padding:6px 12px 6px 6px;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.account-trigger:hover{border-color:var(--coral)}.account-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;font-size:13px;flex:0 0 auto}.account-avatar.lg{width:38px;height:38px;font-size:16px}.account-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;border:0;background:transparent;cursor:default}.account-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:41;width:260px;display:grid;gap:3px;padding:8px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow-lift);animation:rise .18s ease both}.account-head{display:flex;align-items:center;gap:10px;padding:6px 8px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.account-head strong{display:block;font-size:14px}.account-head span{font-size:12px;color:var(--muted);word-break:break-all}.account-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;border-radius:var(--r-xs);padding:9px 10px;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;text-align:left;transition:background .14s ease,color .14s ease}.account-item svg{color:var(--muted);flex:0 0 auto}.account-item:hover{background:var(--bone-2)}.account-item.danger{color:var(--danger)}.account-item.danger svg{color:var(--danger)}.account-item.danger:hover{background:var(--danger-soft)}.account-item.dev-toggle span:first-of-type{flex:1}.account-devnote{padding:0 10px 4px 32px}.account-divider{height:1px;background:var(--line);margin:4px 2px}.dev-switch{width:34px;height:19px;border-radius:var(--r-pill);background:var(--line-2);position:relative;flex:0 0 auto;transition:background .16s ease}.dev-switch span{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #1c1a174d;transition:transform .16s ease}.dev-switch.on{background:var(--coral)}.dev-switch.on span{transform:translate(15px)}.diet-section{margin-top:28px}.diet-demo-banner{font-size:.85rem}.diet-guidance-grid,.connector-grid,.metric-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.connector-card{border:1px solid var(--line, #e5e0d8);border-radius:12px;padding:14px}.connector-card.connected{border-color:var(--coral, #ff6b5e)}.connector-head{display:flex;justify-content:space-between;align-items:center}.connector-actions{display:flex;gap:10px;align-items:center;margin-top:10px}.badge.demo{font:600 .65rem/1 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.05em;background:var(--coral, #ff6b5e);color:#fff;padding:3px 6px;border-radius:6px}.manual-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.manual-field{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.manual-field input{padding:8px;border:1px solid var(--line, #e5e0d8);border-radius:8px}.metric-tile{border:1px solid var(--line, #e5e0d8);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:4px}.metric-tile.status-low{border-left:3px solid var(--coral, #ff6b5e)}.metric-tile.status-high{border-left:3px solid #d98324}.metric-value{font-size:1.25rem;font-weight:700}.metric-source{font-size:.72rem;color:var(--muted, #8a8175)}.context-note.tone-warn{border-left:3px solid var(--coral, #ff6b5e)}.apple-dropzone{margin-top:8px;padding:14px;border:1px dashed var(--line, #b9b2a6);border-radius:10px;text-align:center;font-size:13px;color:var(--muted, #6b6357)}.apple-summary{margin-top:6px;font-size:12px;color:var(--muted, #6b6357)}
