@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/cormorant-garamond-latin-ext-italic-400-500-BHKGGtrv.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/cormorant-garamond-latin-italic-400-500-C6MJWnjX.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300 600;font-display:swap;src:url(/assets/cormorant-garamond-latin-ext-300-600-DkewdGEa.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300 600;font-display:swap;src:url(/assets/cormorant-garamond-latin-300-600-vTYAbwjx.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/eb-garamond-latin-ext-italic-400-500-DGk6fVQ7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:italic;font-weight:400 500;font-display:swap;src:url(/assets/eb-garamond-latin-italic-400-500-CcH06-ci.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/eb-garamond-latin-ext-400-700-DVjXSTkF.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/eb-garamond-latin-400-700-DJEpPxNl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-latin-ext-400-C05TWSE2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-latin-400-BJoXLJYV.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-mono-latin-ext-500-BQJS6Ovj.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/ibm-plex-mono-latin-500-C820gu2e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-tight-latin-ext-400-700-BIlDi9F-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-tight-latin-400-700-4AtXCUT1.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:oklch(100% 0 0);--paper-2:oklch(91.5% .024 90);--paper-tint:oklch(98.02% .003 90);--paper-cool:oklch(96.6% .016 90);--ink:oklch(24.5% .005 75);--ink-2:oklch(32% .007 75);--ink-mute:oklch(43.5% .0115 75);--ink-faint:oklch(63.5% .022 75);--rule:oklch(24.5% .005 75/.92);--rule-mute:oklch(24.5% .005 75/.32);--rule-faint:oklch(24.5% .005 75/.12);--pigment-indigo-pale:oklch(89% .04 264);--pigment-indigo-light:oklch(80% .068 261);--pigment-indigo-soft:oklch(70% .1 258);--pigment-indigo:oklch(61% .122 255);--pigment-indigo-bright:oklch(54% .128 253);--pigment-indigo-deep:oklch(46% .116 251);--pigment-indigo-dark:oklch(37% .097 249);--pigment-indigo-contour:oklch(29% .076 247);--pigment-rust-pale:oklch(89% .05 20);--pigment-rust-light:oklch(80% .085 25);--pigment-rust-soft:oklch(70% .122 30);--pigment-rust:oklch(61% .15 35);--pigment-rust-bright:oklch(54% .158 38);--pigment-rust-deep:oklch(46% .14 34);--pigment-rust-dark:oklch(37% .116 30);--pigment-rust-contour:oklch(29% .092 27);--pigment-gold-pale:oklch(89% .046 90);--pigment-gold-light:oklch(80% .078 88);--pigment-gold-soft:oklch(70% .108 86);--pigment-gold:oklch(61% .122 83);--pigment-gold-bright:oklch(54% .108 80);--pigment-gold-deep:oklch(46% .094 76);--pigment-gold-dark:oklch(37% .077 71);--pigment-gold-contour:oklch(29% .062 67);--pigment-verde-pale:oklch(89% .036 168);--pigment-verde-light:oklch(80% .06 165);--pigment-verde-soft:oklch(70% .085 161);--pigment-verde:oklch(61% .1 156);--pigment-verde-bright:oklch(54% .104 153);--pigment-verde-deep:oklch(46% .096 156);--pigment-verde-dark:oklch(37% .08 159);--pigment-verde-contour:oklch(29% .063 162);--serif-display:"Cormorant Garamond", "EB Garamond", "Source Serif Pro", Georgia, "Times New Roman", serif;--serif-text:"EB Garamond", "Source Serif Pro", Georgia, "Times New Roman", serif;--sans:"Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-size-root:112.5%;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-feature-settings-ui:"kern", "liga", "calt", "ss01";--font-feature-settings-tabular:"tnum", "lnum";--font-feature-settings-lining:"lnum";--letter-spacing-normal:0;--letter-spacing-tight:-.003em;--letter-spacing-tighter:-.005em;--letter-spacing-ui:.01em;--letter-spacing-relaxed:.02em;--letter-spacing-caps-dense:.14em;--letter-spacing-caps-narrow:.16em;--letter-spacing-caps:.18em;--letter-spacing-caps-roomy:.2em;--letter-spacing-caps-wide:.22em;--font-size-2xs:.62rem;--font-size-xs:.68rem;--font-size-sm:.72rem;--font-size-md:.78rem;--font-size-lg:.84rem;--font-size-ui:.95rem;--font-size-body:.98rem;--font-size-base:1rem;--font-size-title:1.05rem;--font-size-h1:clamp(2.6rem, 4.6vw, 4.1rem);--font-size-h2:clamp(1.3rem, 1.95vw, 1.7rem);--font-size-lede:clamp(1.05rem, 1.3vw, 1.2rem);--font-size-panel-title:clamp(1.55rem, 2vw, 2rem);--line-height-tight:1.04;--line-height-snug:1.05;--line-height-heading:1.18;--line-height-ui:1.35;--line-height-body:1.55;--line-height-relaxed:1.6;--text-decoration-thickness:1px;--text-underline-offset:3px;--accent:var(--pigment-indigo-deep);--accent-soft:color-mix(in oklch, var(--pigment-indigo-deep) 16%, transparent);--accent-rubric:var(--pigment-rust-deep);--accent-taxon:var(--pigment-verde-deep);--accent-figure:var(--pigment-gold-deep);--accent-formula:var(--pigment-indigo-dark);--wash-formula:color-mix(in oklch, var(--pigment-indigo-dark) 6%, transparent);--accent-positive:var(--pigment-verde-bright);--accent-negative:var(--pigment-rust-bright);--accent-caution:var(--pigment-gold-bright);--status-positive-border:color-mix(in oklch, var(--accent-positive) 34%, transparent);--status-negative-border:color-mix(in oklch, var(--accent-negative) 34%, transparent);--wash-control-positive:color-mix(in oklch, var(--accent-positive) 18%, transparent);--wash-control-negative:color-mix(in oklch, var(--accent-negative) 16%, transparent);--wash-control-caution:color-mix(in oklch, var(--accent-caution) 18%, transparent);--edge-plate:color-mix(in oklch, var(--pigment-indigo-deep) 14%, transparent);--edge-plate-strong:color-mix(in oklch, var(--pigment-indigo-deep) 18%, transparent);--edge-plate-emphasis:color-mix(in oklch, var(--pigment-indigo-deep) 22%, transparent);--edge-plate-accent:color-mix(in oklch, var(--pigment-indigo-deep) 28%, transparent);--wash-interactive-hover:color-mix(in oklch, var(--pigment-indigo-deep) 6%, transparent);--wash-tab-hover:color-mix(in oklch, var(--pigment-indigo-deep) 5%, transparent);--wash-focus-ring:color-mix(in oklch, var(--pigment-indigo-deep) 22%, transparent);--scrim-ink:color-mix(in oklch, var(--ink) 55%, transparent);--plot-annotation-bg:color-mix(in oklch, var(--paper-cool) 72%, transparent);--plot-oracle-band-99:color-mix(in oklch, var(--ink) 48%, transparent);--plot-oracle-band-95:color-mix(in oklch, var(--ink) 58%, transparent);--plot-grid:color-mix(in oklch, var(--ink) 8%, transparent);--plot-marker-rim:color-mix(in oklch, var(--paper-cool) 45%, var(--paper));--plot-band-positive:color-mix(in oklch, var(--pigment-verde) 10%, transparent);--plot-band-negative:color-mix(in oklch, var(--pigment-rust) 10%, transparent);--plot-colorscale-0:color-mix(in oklch, var(--paper) 72%, var(--paper-tint));--plot-colorscale-25:var(--pigment-indigo-pale);--plot-colorscale-50:var(--pigment-indigo);--plot-colorscale-75:color-mix(in oklab, var(--pigment-indigo-deep) 62%, var(--ink));--plot-colorscale-100:var(--ink);--paper-wash-intensity:4;--paper-base-intensity:4;--paper-wash-base:color-mix(in oklch, var(--paper) calc(100% - 35% * max(0, var(--paper-base-intensity) - 1)), var(--paper-tint));--wash-cool:color-mix(in oklch, var(--pigment-indigo) 60%, var(--pigment-verde));--wash-warm:color-mix(in oklch, var(--pigment-gold) 55%, var(--pigment-rust));--paper-wash: radial-gradient(95% 85% at 18% 14%, oklch(from var(--wash-cool) .9 calc(c * .4) h / min(.16, calc(.115 * var(--paper-wash-intensity)))), transparent 68%),  radial-gradient(90% 80% at 90% 84%, oklch(from var(--wash-warm) .89 calc(c * .44) h / min(.17, calc(.12 * var(--paper-wash-intensity)))), transparent 66%),  radial-gradient(72% 64% at 6% 96%, oklch(from var(--wash-cool) .9 calc(c * .38) h / min(.12, calc(.085 * var(--paper-wash-intensity)))), transparent 64%),  radial-gradient(135% 105% at 46% -8%, oklch(from var(--wash-warm) .92 calc(c * .34) h / min(.24, calc(.18 * var(--paper-wash-intensity)))), transparent 72%),  radial-gradient(125% 120% at 50% 44%, transparent 56%, oklch(from var(--wash-warm) .9 calc(c * .3) h / min(.15, calc(.11 * var(--paper-wash-intensity)))) 100%), var(--paper-wash-base);--parchment-backdrop:blur(12px) contrast(1.05) brightness(1.05) saturate(1.5) hue-rotate(20deg);--parchment-background:linear-gradient(90deg, color-mix(in oklch, var(--pigment-indigo) 8%, transparent) 0%, transparent 35%, transparent 65%, color-mix(in oklch, var(--pigment-rust) 8%, transparent) 100%);font-family:var(--sans);font-size:var(--font-size-root);line-height:var(--line-height-body);font-feature-settings:var(--font-feature-settings-ui);color:var(--ink);-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;text-rendering:optimizelegibility}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:oklch(0% .004 80);--paper-2:oklch(22.5% .007 80);--paper-tint:oklch(19.5% .006 80);--paper-cool:oklch(17% .005 80);--ink:oklch(93% .011 75);--ink-2:oklch(86% .013 75);--ink-mute:oklch(73.5% .016 75);--ink-faint:oklch(54% .019 75);--rule:oklch(93% .011 75/.78);--rule-mute:oklch(93% .011 75/.29);--rule-faint:oklch(93% .011 75/.12);--pigment-indigo-pale:oklch(40% .058 258);--pigment-indigo-light:oklch(50% .072 248);--pigment-indigo-soft:oklch(60% .082 236);--pigment-indigo:oklch(67% .085 226);--pigment-indigo-bright:oklch(86% .052 210);--pigment-indigo-deep:oklch(78% .075 216);--pigment-indigo-dark:oklch(56% .081 242);--pigment-indigo-contour:oklch(48% .07 252);--pigment-rust-pale:oklch(40% .064 42);--pigment-rust-light:oklch(50% .078 37);--pigment-rust-soft:oklch(60% .086 32);--pigment-rust:oklch(67% .088 28);--pigment-rust-bright:oklch(86% .052 18);--pigment-rust-deep:oklch(78% .075 22);--pigment-rust-dark:oklch(56% .09 34);--pigment-rust-contour:oklch(48% .08 38);--pigment-gold-pale:oklch(40% .077 85);--pigment-gold-light:oklch(50% .083 85);--pigment-gold-soft:oklch(60% .099 85);--pigment-gold:oklch(67% .11 85);--pigment-gold-bright:oklch(86% .066 85);--pigment-gold-deep:oklch(78% .094 85);--pigment-gold-dark:oklch(56% .105 85);--pigment-gold-contour:oklch(48% .093 85);--pigment-verde-pale:oklch(40% .056 156);--pigment-verde-light:oklch(50% .062 159);--pigment-verde-soft:oklch(60% .075 164);--pigment-verde:oklch(67% .08 166);--pigment-verde-bright:oklch(86% .05 172);--pigment-verde-deep:oklch(78% .072 169);--pigment-verde-dark:oklch(56% .076 162);--pigment-verde-contour:oklch(48% .068 158);--accent:var(--pigment-indigo-deep);--accent-soft:color-mix(in oklch, var(--pigment-indigo-deep) 24%, transparent);--accent-figure:var(--pigment-gold);--scrim-ink:oklch(8% .003 80/.8);--paper-wash-intensity:5;--paper-base-intensity:0;--wash-cool:color-mix(in oklch, var(--pigment-indigo) 58%, var(--pigment-verde));--wash-warm:color-mix(in oklch, var(--pigment-gold) 58%, var(--pigment-rust));--paper-wash: radial-gradient(98% 88% at 16% 10%, oklch(from var(--wash-cool) l calc(c * .82) h / min(.2, calc(.1 * var(--paper-wash-intensity)))), transparent 74%),  radial-gradient(88% 78% at 88% 86%, oklch(from var(--wash-warm) l calc(c * .8) h / min(.13, calc(.065 * var(--paper-wash-intensity)))), transparent 72%),  radial-gradient(70% 62% at 8% 94%, oklch(from var(--wash-cool) l calc(c * .72) h / min(.11, calc(.055 * var(--paper-wash-intensity)))), transparent 70%),  radial-gradient(130% 80% at 50% -14%, oklch(from var(--pigment-indigo-deep) l calc(c * .6) h / min(.07, calc(.035 * var(--paper-wash-intensity)))), transparent 72%),  radial-gradient(125% 120% at 50% 44%, transparent 56%, oklch(from var(--wash-cool) l calc(c * .55) h / min(.09, calc(.045 * var(--paper-wash-intensity)))) 100%), var(--paper-wash-base);--parchment-backdrop:blur(28px) contrast(1.08) brightness(1.55) saturate(1.25);--parchment-background:oklch(17.5% .006 80/.62)}}*{box-sizing:border-box}html,body{color:var(--ink);margin:0;padding:0}body{background-color:var(--paper-tint)}#root{background:var(--paper-wash);min-width:320px;min-height:100vh}body.modal-open{overflow:hidden}a{color:inherit;text-decoration-thickness:var(--text-decoration-thickness);text-underline-offset:var(--text-underline-offset)}a:hover{color:var(--accent)}button,input,select{font:inherit;color:inherit}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.chip.active{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}}.shell{width:min(1180px,100vw - 56px);margin:0 auto;padding:56px 0 96px}.loading-state,.error-state{text-align:center;min-height:100vh;color:var(--ink-mute);font-family:var(--sans);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-relaxed);place-content:center;display:grid}.pulse{background:var(--accent);transform-origin:top;width:1px;height:56px;margin:0 auto 22px;animation:1.5s cubic-bezier(.4,0,.2,1) infinite pen-line}@keyframes pen-line{0%{opacity:.25;transform:scaleY(.15)}50%{opacity:1;transform:scaleY(1)}to{opacity:.25;transform:scaleY(.15)}}.hero{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:56px;margin-bottom:44px;display:grid}.hero-card{border-left:1px solid var(--edge-plate-accent);align-content:start;padding:10px 0 0 32px;display:grid}.hero-card:before{content:"Specimen counts";color:var(--accent-rubric);font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-caps-wide);text-transform:uppercase;margin:0 0 12px;display:block}.eyebrow{color:var(--accent-rubric);font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-caps-wide);text-transform:uppercase;margin:0 0 14px}h1,h2,h3{color:var(--ink);margin:0}h1{font-family:var(--serif-display);font-weight:var(--font-weight-medium);font-style:normal;font-size:var(--font-size-h1);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tighter);max-width:18ch}h2{font-family:var(--serif-display);font-weight:var(--font-weight-medium);font-style:normal;font-size:var(--font-size-h2);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight)}.lede{max-width:38em;color:var(--ink-2);font-family:var(--serif-text);font-size:var(--font-size-lede);line-height:var(--line-height-relaxed);margin:44px 0}.hero-actions{flex-wrap:wrap;gap:26px;margin-top:30px;display:flex}.hero-actions a{border-bottom:1px solid var(--ink);color:var(--ink);font-family:var(--sans);font-size:var(--font-size-ui);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-ui);cursor:pointer;padding:0 0 2px;text-decoration:none}.hero-actions a:after{content:" →";color:var(--ink-mute);margin-left:4px;transition:color .15s}.hero-actions a:hover{color:var(--accent);border-color:var(--accent)}.hero-actions a:hover:after{color:var(--accent)}.hero-card .metric{border-bottom:1px dotted var(--rule-mute);grid-template-columns:1fr auto;align-items:baseline;gap:18px;padding:12px 0;display:grid}.hero-card .metric:last-child{border-bottom:0}.hero-card .metric span{color:var(--ink-mute);font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-caps);text-transform:uppercase}.hero-card .metric strong{font-family:var(--mono);font-weight:var(--font-weight-regular);font-size:var(--font-size-base);letter-spacing:var(--letter-spacing-normal);font-feature-settings:var(--font-feature-settings-tabular);color:var(--ink);margin:0;display:inline}.hero-card .metric small{display:none}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.panel{border:1px solid var(--edge-plate);background:0 0;min-width:0;padding:28px 28px 32px}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.split-row{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;min-width:0;display:grid}.section-title{border-bottom:1px solid var(--edge-plate-strong);margin-bottom:22px;padding-bottom:12px}.section-title .eyebrow{margin-bottom:8px}.section-title h2{margin:0}.section-title p:last-child{max-width:60em;color:var(--ink-mute);font-family:var(--serif-text);font-size:var(--font-size-body);line-height:var(--line-height-body);margin:10px 0 0}.metric-grid{border-top:1px solid var(--rule-faint);border-left:1px solid var(--rule-faint);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric-grid .metric{border-right:1px solid var(--rule-faint);border-bottom:1px solid var(--rule-faint);padding:16px 18px 18px}.metric span,.metric small{color:var(--ink-mute);display:block}.metric span{font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-caps);text-transform:uppercase}.metric strong{font-family:var(--serif-display);font-weight:var(--font-weight-medium);font-size:var(--font-size-panel-title);letter-spacing:var(--letter-spacing-tighter);line-height:var(--line-height-snug);color:var(--ink);font-feature-settings:var(--font-feature-settings-lining);margin:8px 0 0;display:block}.metric small{font-family:var(--sans);font-size:var(--font-size-lg);letter-spacing:var(--letter-spacing-ui);margin-top:6px}.plot{width:100%;height:430px}.controls{flex-wrap:wrap;align-items:flex-end;gap:28px 32px;display:flex}.controls>label,.controls>.metric{flex:200px;min-width:180px}.controls>.metric span{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-caps)}.controls>.metric strong{font-family:var(--mono);font-weight:var(--font-weight-regular);font-size:var(--font-size-title);letter-spacing:var(--letter-spacing-normal);font-feature-settings:var(--font-feature-settings-tabular);margin-top:4px}label{color:var(--ink-mute);font-family:var(--sans);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-caps);font-size:var(--font-size-sm);text-transform:uppercase;gap:6px;display:grid}input,select{border:0;border-bottom:1px solid var(--rule);width:100%;color:var(--ink);font-family:var(--sans);font-weight:var(--font-weight-regular);font-size:var(--font-size-body);letter-spacing:var(--letter-spacing-normal);text-transform:none;background:0 0;border-radius:0;padding:8px 2px}input::placeholder{color:var(--ink-mute);opacity:1}input:focus,select:focus{border-bottom-color:var(--accent)}input:focus-visible,select:focus-visible{border-bottom-color:var(--accent);box-shadow:0 1px 0 0 var(--accent);outline:none}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 7px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:22px}.table-wrap{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);max-height:520px;overflow:auto}table{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:var(--font-size-lg);font-feature-settings:var(--font-feature-settings-tabular);color:var(--ink-2)}th,td{text-align:left;white-space:nowrap;border:0;padding:9px 14px}thead th{z-index:1;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-caps-narrow);text-transform:uppercase;border-bottom:1px solid var(--rule);font-feature-settings:normal;position:sticky;top:0}tbody tr+tr td{border-top:1px solid var(--rule-faint)}tbody td{color:var(--ink-2)}tbody tr:hover td{background:var(--wash-interactive-hover)}.compact-table{max-height:430px}.asset-grid{counter-reset:figure;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px 24px;display:grid}.asset-strip{counter-reset:figure;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;display:grid}.asset-strip.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.asset-card{border:1px solid var(--edge-plate);background:var(--paper-cool);counter-increment:figure;overflow:hidden}.asset-card-link{width:100%;color:inherit;cursor:zoom-in;text-align:left;background:0 0;border:0;margin:0;padding:0;text-decoration:none;display:block}.asset-card img,.modal-image-frame img{object-fit:contain;width:100%;display:block}.asset-card img{aspect-ratio:4/3;background:var(--paper-cool);border-bottom:1px solid var(--rule-faint);padding:14px}.asset-card div{gap:4px;padding:14px 16px 18px;display:grid}.asset-card div:before{content:"Fig. " counter(figure) ".";color:var(--ink-mute);font-family:var(--sans);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-caps);font-size:var(--font-size-xs);text-transform:uppercase;margin-bottom:4px;display:block}.asset-card strong{font-family:var(--sans);font-weight:var(--font-weight-semibold);font-style:normal;font-size:var(--font-size-ui);line-height:var(--line-height-ui);color:var(--ink);letter-spacing:var(--letter-spacing-normal)}.asset-card span,.link-list span{color:var(--ink-mute);font-family:var(--mono);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-normal)}.modal-backdrop{z-index:100;background:var(--scrim-ink);place-items:center;padding:32px;display:grid;position:fixed;inset:0}.image-modal{border:1px solid var(--ink);background:var(--paper);grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,100vw - 32px);max-height:calc(100vh - 32px);display:grid;overflow:hidden}.image-modal header,.image-modal footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:18px 24px;display:flex}.image-modal header{border-bottom:1px solid var(--rule-faint);align-items:start}.image-modal header>div{gap:4px;min-width:0;display:grid}.image-modal header h2{margin:4px 0 0}.image-modal header p:last-child{color:var(--ink-mute);font-family:var(--mono);font-size:var(--font-size-md);word-break:break-all;margin:6px 0 0;font-style:normal}.image-modal footer{border-top:1px solid var(--rule-faint)}.image-modal footer a,.modal-close{border:0;border-bottom:1px solid var(--ink);color:var(--ink);font-family:var(--sans);font-size:var(--font-size-ui);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-ui);cursor:pointer;background:0 0;padding:4px 0;text-decoration:none}.image-modal footer a:hover,.modal-close:hover{color:var(--accent);border-color:var(--accent)}.modal-image-frame{background:var(--paper-cool);min-height:0;padding:24px;overflow:auto}.modal-image-frame img{max-height:calc(100vh - 220px);margin:0 auto}.link-list{gap:16px;max-height:520px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.link-list li{border-bottom:1px dotted var(--rule-mute);gap:4px;padding-bottom:14px;display:grid}.link-list a{width:max-content;max-width:100%;color:var(--ink);font-family:var(--sans);font-weight:var(--font-weight-medium);font-style:normal;font-size:var(--font-size-ui);border-bottom:1px solid var(--ink);word-break:break-word;padding-bottom:2px;text-decoration:none;display:inline-block}.link-list a:hover{color:var(--accent);border-color:var(--accent)}.chip-row{flex-wrap:wrap;gap:6px;margin:12px 0 18px;display:flex}.chip{border:1px solid var(--rule-faint);color:var(--ink-mute);font-family:var(--mono);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-normal);text-transform:none;cursor:pointer;background:0 0;padding:6px 12px;transition:color .15s,background .15s,border-color .15s}.chip:hover{color:var(--ink);border-color:var(--accent)}.chip.active{color:var(--paper);background:var(--accent);border-color:var(--accent)}.control-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.control-button{--control-pigment:var(--accent);--control-wash:var(--accent-soft);border:1px solid var(--control-pigment);width:max-content;max-width:100%;color:var(--control-pigment);font-family:var(--sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-caps);text-transform:uppercase;cursor:pointer;background:0 0;padding:8px 14px}.control-button:hover:not(:disabled){background:var(--control-wash)}.control-button:disabled{cursor:wait;opacity:.55}.control-sampling{--control-pigment:var(--accent-positive);--control-wash:var(--wash-control-positive)}.control-stop{--control-pigment:var(--accent-negative);--control-wash:var(--wash-control-negative)}.control-transition{--control-pigment:var(--accent-caution);--control-wash:var(--wash-control-caution)}.connection-pill{border:1px solid var(--rule);font-family:var(--sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-caps-narrow);text-transform:uppercase;background:0 0;border-radius:999px;align-items:center;padding:5px 10px;display:inline-flex}.connection-pill.open{border-color:var(--status-positive-border);color:var(--accent-positive)}.connection-pill.error,.connection-pill.closed{border-color:var(--status-negative-border);color:var(--accent-negative)}.glossary{gap:18px;margin:4px 0 0;display:grid}.glossary div{border-bottom:1px dotted var(--rule-mute);grid-template-columns:160px minmax(0,1fr);align-items:baseline;gap:16px;padding:14px 0;display:grid}.glossary div:last-child{border-bottom:0}.glossary dt{font-family:var(--serif-display);font-weight:var(--font-weight-medium);font-style:italic;font-size:var(--font-size-title);letter-spacing:var(--letter-spacing-tight);color:var(--accent-taxon);margin:0}.glossary dd{color:var(--ink-2);font-family:var(--serif-text);font-size:var(--font-size-body);line-height:var(--line-height-body);gap:6px;margin:0;display:grid}.glossary dd p{margin:0}.glossary-mapping{color:var(--ink-mute);font-family:var(--mono);font-size:var(--font-size-md)}.formula{border-left:2px solid var(--accent-formula);background:var(--wash-formula);gap:4px;padding:12px 14px;display:grid}.formula-label{font-family:var(--sans);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-caps);text-transform:uppercase;color:var(--accent-formula)}.formula code{font-family:var(--mono);font-size:var(--font-size-ui);color:var(--ink)}.footnote-list{color:var(--ink-2);font-family:var(--serif-text);font-size:var(--font-size-body);line-height:var(--line-height-body);gap:8px;margin:0;padding:0;list-style:none;display:grid}.footnote-list li{padding-left:22px;position:relative}.footnote-list li:before{content:"§";color:var(--accent-rubric);font-family:var(--serif-display);font-weight:var(--font-weight-medium);position:absolute;top:0;left:0}.empty-state{border:1px dashed var(--rule-mute);min-height:220px;color:var(--ink-mute);font-family:var(--sans);font-size:var(--font-size-ui);letter-spacing:var(--letter-spacing-ui);text-align:center;place-items:center;padding:24px;display:grid}@media (width<=1100px){.hero,.section-grid{grid-template-columns:1fr}.hero-card{border-left:0;border-top:1px solid var(--edge-plate-emphasis);padding-top:28px;padding-left:0}.span-2,.span-3{grid-column:auto}.split-row{grid-template-columns:1fr}.metric-grid,.asset-strip,.asset-strip.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){:root{--font-size-h1:clamp(2.2rem, 9vw, 2.6rem)}.shell{width:min(100vw - 24px,1180px);padding:28px 0 56px}.hero{gap:28px;margin-bottom:28px;padding-bottom:28px}.panel{padding:22px 20px 26px}.metric-grid,.asset-strip,.asset-strip.compact{grid-template-columns:1fr}.plot{height:360px}}:root{--scrollbar-size:5px;--scrollbar-track:transparent;--scrollbar-thumb:color-mix(in oklch, var(--ink-mute) 38%, transparent);--scrollbar-thumb-hover:color-mix(in oklch, var(--accent) 72%, transparent)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);border-radius:1px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:0 0}:root{--tab-pad-block:17px;--tab-pad-inline:22px;--tab-label-size:var(--font-size-md);--tabs-primary-height:calc(var(--tab-label-size) + 2 * var(--tab-pad-block) + 2px)}.tabs{z-index:20;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);-webkit-backdrop-filter:var(--parchment-backdrop);backdrop-filter:var(--parchment-backdrop);flex-wrap:nowrap;justify-content:center;display:flex;position:sticky;top:0;overflow-x:auto}.tabs-secondary{z-index:19;top:var(--tabs-primary-height);background:color-mix(in oklch, var(--paper) 50%, transparent);-webkit-backdrop-filter:var(--parchment-backdrop);backdrop-filter:var(--parchment-backdrop);border-top:0;justify-content:flex-start;padding-inline:max(28px,50% - 590px);position:sticky}.tab{padding:var(--tab-pad-block) var(--tab-pad-inline);color:var(--ink);font-family:var(--sans);font-weight:var(--font-weight-medium);font-size:var(--tab-label-size);letter-spacing:var(--letter-spacing-caps-roomy);text-transform:uppercase;cursor:pointer;background:0 0;border:0;flex:none;line-height:1;text-decoration:none;transition:color .15s,background .15s}.tab:hover{color:var(--ink);background:var(--wash-tab-hover)}.tab.active{color:var(--ink);box-shadow:inset 0 -2px 0 0 var(--accent)}.tabs-primary .tab{font-weight:var(--font-weight-semibold);color:var(--ink-mute)}.tabs-primary .tab:hover,.tabs-primary .tab.active{color:var(--ink)}.tabs-secondary .tab{font-weight:var(--font-weight-medium);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-caps-narrow);color:var(--ink-mute);padding:9px 16px}.tabs-secondary .tab:hover{color:var(--ink-2);background:var(--wash-tab-hover)}.tabs-secondary .tab.active{color:var(--ink);box-shadow:inset 0 -1px 0 0 var(--accent)}.tab-fallback{place-items:center;min-height:12rem;padding:2rem 0;display:grid}@media (forced-colors:active){.tab.active{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}}@media (width<=640px){:root{--tab-pad-block:12px;--tab-pad-inline:14px;--tab-label-size:var(--font-size-sm)}.tab{letter-spacing:var(--letter-spacing-caps-narrow)}}
