:root{--bg-deep:#0a0e1a;--panel-a:#221b14d1;--panel-b:#121016db;--panel:linear-gradient(160deg, var(--panel-a), var(--panel-b));--panel-blur:9px;--well-a:#2c221ae6;--well-b:#0c0a09f2;--raise-1:#fff0dc0d;--raise-2:#fff0dc17;--raise-3:#fff0dc24;--hairline:#fff0dc1a;--ink:#f6efe0;--ink-body:#e4d9c4;--ink-muted:#a99e8a;--ink-faint:#7d7263;--accent:#d98d5a;--accent-bright:#e8a978;--accent-line:#d98d5a38;--accent-mid:#d98d5a80;--accent-soft:#d98d5a29;--accent-ink:#241b12;--font-display:"Fraunces", Georgia, serif;--font-ui:"Space Grotesk", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;--t-eyebrow:10px;--t-micro:10.5px;--t-small:11px;--t-body:12px;--t-value:13px;--t-display:21px;--track-eyebrow:.22em;--track-label:.06em;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--r-sm:6px;--r-md:9px;--r-lg:14px;--shadow-panel:0 10px 34px #00000073, inset 0 1px 0 var(--raise-1);--shadow-pop:0 16px 48px #0000008c;--dur-fast:.12s;--dur:.2s;--ease:cubic-bezier(.2, .7, .3, 1);--focus-ring:0 0 0 2px var(--bg-deep), 0 0 0 4px var(--accent-bright);--data-creatures:#c9a6e0;--data-plants:#6fbf5a;--data-herbivore:#3f8f6b;--data-carnivore:#c56b5a;--data-carrion:#9e632a;--data-sick:#d9b45a;--data-injured:#b8788f;--data-ok:#9ed99e;--data-warn:#f0c07a;--data-bad:#d597ac;--data-hydrophobic:#f0c07a;--data-polar:#8fd9b2;--data-positive:#93cbe9;--data-negative:#eb949a;--data-special:#b9c6d4;--data-vital-energy:#7fc77f;--data-vital-age:#c9b06a;--data-vital-disease:#c56b8a;--data-vital-injury:#c98a5a;--data-event-era:#e6d6a8;--data-event-life:#a6d99a;--data-event-climate:#9bc4dd;--data-event-extinction:#e0a0a8;--data-inner-core:#f7e690}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur:0s}}*,:before,:after{box-sizing:border-box}html,body,#root{background:var(--bg-deep);height:100%;font-family:var(--font-ui);color:var(--ink-body);margin:0;overflow:hidden}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{box-shadow:var(--focus-ring);border-radius:var(--r-sm);outline:none}.ui-scroll{scrollbar-width:thin;scrollbar-color:var(--accent-line) transparent}.ui-scroll::-webkit-scrollbar{width:6px}.ui-scroll::-webkit-scrollbar-thumb{background:var(--accent-line);border-radius:3px}.ui-scroll::-webkit-scrollbar-track{background:0 0}.hud-rule{background:linear-gradient(90deg, transparent, var(--accent-mid), transparent);height:1px;margin:11px -16px}.hud-controls{flex-wrap:wrap;gap:5px;display:flex}.hud-btn{font-family:inherit;font-size:var(--t-body);color:var(--ink-body);background:var(--raise-1);border:1px solid var(--hairline);border-radius:var(--r-md);cursor:pointer;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);padding:5px 9px;font-weight:500}.hud-btn:hover{background:var(--accent-soft);color:var(--ink)}.hud-btn.is-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.hud-btn.hud-play{flex:auto}.hud-btn{justify-content:center;align-items:center;gap:5px;display:inline-flex}.ui-icon{vertical-align:-.12em;flex:none}.hud-atmo .ui-icon{opacity:.75}.hud-audio{align-items:center;gap:8px;display:flex}.hud-audio input[type=range]{appearance:none;background:var(--raise-3);cursor:pointer;border-radius:2px;flex:1;height:3px}.hud-audio input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);border-radius:50%;width:11px;height:11px}.hud-audio input[type=range]:disabled{opacity:.35;cursor:default}.hud-grid{gap:var(--s-1) 14px;grid-template-columns:1fr 1fr;display:grid}.hud-stat{align-items:baseline;gap:7px;display:flex}.hud-dot{border-radius:50%;flex:none;width:7px;height:7px}.hud-label{font-size:var(--t-micro);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-muted);flex:1}.hud-val{font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--t-value);color:var(--ink)}.hud-stat-spark{grid-column:1/-1}.spark,.spark-empty{flex:none;align-self:center;width:54px;height:14px}.spark{opacity:.9}.hud-atmo{font-size:var(--t-body);color:var(--ink-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:8px;display:flex}.hud-atmo b{color:var(--ink);font-weight:600}.hud-sep{color:var(--accent-mid)}.hud-keys{width:100%;font:inherit;font-size:var(--t-small);color:var(--ink-muted);text-align:left;cursor:pointer;background:0 0;border:none;padding:0;line-height:1.5;display:block}.hud-keys b{color:var(--ink);font-weight:600}.hud-keys:hover{color:var(--ink-body)}[data-panel=inspector] .panel-body{flex-direction:column;display:flex;overflow:hidden}.insp-title-row{align-items:center;gap:8px;display:flex}.insp-dot{border-radius:50%;flex:none;width:12px;height:12px;box-shadow:0 0 8px}.insp-close{color:var(--ink-muted);cursor:pointer;font-size:var(--t-value);border-radius:var(--r-sm);background:0 0;border:none;padding:2px 4px}.insp-close:hover{background:var(--raise-2);color:var(--ink)}.insp-grid{gap:var(--s-1) 14px;grid-template-columns:1fr 1fr;display:grid}.insp-row{justify-content:space-between;gap:8px;display:flex}.insp-k{color:var(--ink-muted)}.insp-v{color:var(--ink);font-variant-numeric:tabular-nums}.insp-rule{background:var(--accent-soft);height:1px;margin:10px 0}.insp-bars{flex-direction:column;gap:6px;display:flex}.insp-bar{align-items:center;gap:8px;display:flex}.insp-bar-label{width:52px;color:var(--ink-muted)}.insp-bar-track{background:var(--raise-2);border-radius:3px;flex:1;height:6px;overflow:hidden}.insp-bar-fill{border-radius:3px;height:100%}.insp-bar-pct{text-align:right;width:34px;color:var(--ink-body);font-variant-numeric:tabular-nums}.insp-dead{color:var(--data-bad);padding:6px 0}.insp-tabs{gap:var(--s-1);flex-wrap:wrap;flex:none;margin-bottom:10px;display:flex}.insp-tab{background:var(--raise-1);color:var(--ink-muted);cursor:pointer;font:inherit;font-size:var(--t-small);border-radius:var(--r-sm);border:1px solid #0000;padding:4px 9px}.insp-tab:hover{color:var(--ink-body);background:var(--raise-2)}.insp-tab-on{color:var(--ink);background:var(--accent-soft);border-color:var(--accent-line)}.insp-body{flex:1;min-height:0;padding-right:4px;overflow:hidden auto}.insp-section-title{font-size:var(--t-small);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:baseline;margin-bottom:7px;font-weight:600;display:flex}.insp-unit{text-transform:none}.insp-note{color:var(--ink-faint);font-size:var(--t-eyebrow);letter-spacing:0;text-transform:none;margin-top:6px;font-weight:400;line-height:1.45}.insp-mini-track{background:var(--raise-2);border-radius:3px;flex:1;height:5px;overflow:hidden}.insp-mini-fill{border-radius:3px;height:100%}.insp-costs{gap:var(--s-1);flex-direction:column;display:flex}.insp-cost{grid-template-columns:108px 1fr 56px;align-items:center;gap:8px;display:grid}.insp-cost .insp-v{text-align:right;font-size:var(--t-small)}.insp-locus{width:100%;color:inherit;font:inherit;border-radius:var(--r-sm);cursor:pointer;text-align:left;background:0 0;border:none;grid-template-columns:1fr 22px 22px 60px 34px auto;align-items:center;gap:7px;padding:3px 4px;display:grid}.insp-locus:hover{background:var(--accent-soft)}.insp-locus-name{color:var(--ink-body);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.insp-locus .insp-v{text-align:right;font-size:var(--t-small)}.insp-chip{font-size:var(--t-eyebrow);text-align:center;border-radius:var(--r-sm);font-variant-numeric:tabular-nums;padding:1px 0}.insp-chip.ok{background:color-mix(in srgb, var(--data-ok) 18%, transparent);color:var(--data-ok)}.insp-chip.bad{background:color-mix(in srgb, var(--data-bad) 18%, transparent);color:var(--data-bad)}.insp-het{color:var(--accent);background:var(--accent-soft);border-radius:var(--r-sm);padding:1px 4px;font-size:9px}.insp-selectrow{align-items:center;gap:8px;margin-bottom:8px;display:flex}.insp-select{background:var(--raise-2);color:var(--ink);font:inherit;font-size:var(--t-small);border:1px solid var(--accent-line);border-radius:var(--r-sm);padding:3px 6px}.insp-helices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.insp-helix{border-radius:var(--r-md);background:radial-gradient(circle at 50% 35%, var(--well-a), var(--well-b));border:1px solid var(--accent-soft);height:190px;position:relative;overflow:hidden}.insp-helix-label{font-size:var(--t-eyebrow);color:var(--accent);position:absolute;top:6px;left:8px}.insp-helix-scale{font-size:var(--t-eyebrow);color:var(--ink-faint);position:absolute;bottom:6px;right:8px}.insp-codons{flex-wrap:wrap;gap:3px;display:flex}.insp-codon{border-radius:var(--r-sm);background:var(--raise-1);flex-direction:column;align-items:center;padding:2px 4px;line-height:1.25;display:flex}.insp-codon b{font-family:var(--font-mono);font-size:var(--t-eyebrow);color:var(--ink);font-weight:500}.insp-codon i{color:var(--ink-muted);font-size:9px;font-style:normal}.insp-codon.start{background:color-mix(in srgb, var(--data-ok) 18%, transparent)}.insp-codon.stop{background:color-mix(in srgb, var(--data-bad) 18%, transparent)}.insp-codon.out{color:var(--ink-faint);font-family:var(--font-mono);font-size:var(--t-eyebrow);background:0 0;padding-top:6px}.insp-codon.diff{outline:1px solid color-mix(in srgb, var(--accent) 60%, transparent)}.insp-het.klass-nonsense,.insp-het.klass-frameshift{color:var(--data-bad);background:color-mix(in srgb, var(--data-bad) 15%, transparent)}.insp-het.klass-missense,.insp-het.klass-inframe-indel{color:var(--data-warn);background:color-mix(in srgb, var(--data-warn) 15%, transparent)}.insp-het.klass-silent{color:var(--data-ok);background:color-mix(in srgb, var(--data-ok) 15%, transparent)}.insp-broken{color:var(--data-bad)}.insp-residues{flex-wrap:wrap;gap:2px;margin-bottom:6px;display:flex}.insp-res{border-radius:var(--r-sm);width:17px;height:17px;font-family:var(--font-mono);font-size:var(--t-eyebrow);place-items:center;font-weight:600;display:grid}.insp-res.hydrophobic{background:color-mix(in srgb, var(--data-hydrophobic) 22%, transparent);color:var(--data-hydrophobic)}.insp-res.polar{background:color-mix(in srgb, var(--data-polar) 20%, transparent);color:var(--data-polar)}.insp-res.positive{background:color-mix(in srgb, var(--data-positive) 22%, transparent);color:var(--data-positive)}.insp-res.negative{background:color-mix(in srgb, var(--data-negative) 22%, transparent);color:var(--data-negative)}.insp-res.special{background:var(--raise-3);color:var(--data-special)}.insp-hydro{background:linear-gradient(to bottom, transparent 49.5%, var(--accent-line) 50%, transparent 50.5%);gap:2px;height:34px;margin-bottom:8px;display:flex}.insp-hydro-cell{width:17px;position:relative}.insp-hydro-bar{border-radius:2px;position:absolute;left:4px;right:4px}.insp-hydro-bar.up{background:var(--data-hydrophobic)}.insp-hydro-bar.down{background:var(--data-positive)}.insp-schematic{border-radius:var(--r-md);background:var(--raise-1);border:1px solid var(--accent-soft);width:100%;height:auto;margin-bottom:10px}.insp-chain{flex-direction:column;gap:2px;display:flex}.insp-chain-row{align-items:baseline;gap:8px;display:flex}.insp-chain-row .insp-v{font-size:var(--t-eyebrow);color:var(--ink-muted)}.tl-era-row{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.tl-emerge{font-size:var(--t-small);color:var(--ink-muted);font-variant-numeric:tabular-nums}.tl-track{background:var(--raise-2);border-radius:3px;height:5px;margin-bottom:10px;position:relative}.tl-fill{background:linear-gradient(90deg, var(--accent), var(--accent-bright));border-radius:3px;position:absolute;top:0;bottom:0;left:0}.tl-tick{background:var(--raise-3);border-radius:2px;width:3px;height:9px;margin-left:-1px;position:absolute;top:-2px}.tl-tick.is-on{background:var(--accent-bright)}.tl-feed{flex-direction:column;gap:5px;max-height:168px;display:flex;overflow-y:auto}.tl-empty{color:var(--ink-muted);font-style:italic}.tl-item{align-items:baseline;gap:7px;display:flex}.tl-ico{display:inline-flex}.tl-text{color:var(--ink-body)}.tl-extinction .tl-text,.tl-extinction .tl-ico{color:var(--data-event-extinction)}.tl-era .tl-text,.tl-era .tl-ico{color:var(--data-event-era)}.tl-life .tl-text,.tl-life .tl-ico{color:var(--data-event-life)}.tl-climate .tl-text,.tl-climate .tl-ico{color:var(--data-event-climate)}.slice-actions{align-items:baseline;gap:7px;display:flex}.slice-age{font-size:var(--t-small);color:var(--ink-muted);font-variant-numeric:tabular-nums}.slice-grow{font-size:var(--t-small);color:var(--data-inner-core);font-variant-numeric:tabular-nums;margin-top:2px}.slice-line{font-size:var(--t-eyebrow);color:var(--ink-muted);font-variant-numeric:tabular-nums;gap:5px;margin-top:1px;display:flex}.slice-sep{opacity:.45}.slice-scrub{align-items:center;gap:6px;margin-top:6px;display:flex}.slice-scrub input{flex:1;min-width:0;height:3px}.slice-live{background:var(--raise-1);color:var(--ink-body);border:1px solid var(--accent-soft);border-radius:var(--r-sm);font-family:inherit;font-size:var(--t-small);cursor:pointer;padding:1px 6px}.slice-live:hover:not(:disabled){background:var(--raise-3)}.slice-live:disabled{opacity:.3;cursor:default}.slice-preview-tag{letter-spacing:var(--track-label);text-transform:uppercase;color:var(--accent-ink);background:var(--data-inner-core);border-radius:var(--r-sm);padding:0 5px;font-size:9px}.slice-canvas{width:100%;display:block}.dock{padding:var(--s-4);gap:var(--s-3);pointer-events:none;z-index:5;transition:opacity var(--dur) var(--ease);grid-template-rows:auto 1fr auto;grid-template-columns:auto 1fr auto;display:grid;position:fixed;inset:0}.dock[data-hidden=true]{opacity:0;pointer-events:none}.dock[data-hidden=true] .dock-region>*{pointer-events:none}.dock-region{gap:var(--s-3);flex-direction:column;min-height:0;display:flex}.dock-region>*{pointer-events:auto}.dock-region[data-region=top-left]{grid-area:1/1;align-items:start}.dock-region[data-region=top-right]{grid-area:1/3;align-items:end}.dock-region[data-region=bottom-left]{grid-area:3/1;justify-content:end;align-items:start}.dock-region[data-region=bottom-right]{grid-area:3/3;justify-content:end;align-items:end}.panel{min-height:0;padding:var(--s-3) var(--s-4) var(--s-4);color:var(--ink-body);font:var(--t-body) / 1.45 var(--font-ui);background:var(--panel);border:1px solid var(--accent-line);border-radius:var(--r-lg);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(var(--panel-blur));-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}.panel-head{align-items:flex-start;gap:var(--s-2);margin-bottom:var(--s-3);flex:none;display:flex}.panel-heading{flex:1;min-width:0}.panel-eyebrow{font-size:var(--t-eyebrow);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--accent);margin-bottom:3px;font-weight:600}.panel-title{font-family:var(--font-display);font-optical-sizing:auto;font-size:var(--t-display);letter-spacing:-.01em;color:var(--ink);font-weight:560;line-height:1.1}.panel-toggle{color:var(--ink-muted);cursor:pointer;border-radius:var(--r-sm);transition:color var(--dur-fast) var(--ease);background:0 0;border:none;flex:none;margin:-2px;padding:2px}.panel-toggle:hover{color:var(--ink)}.panel-collapse{transition:grid-template-rows var(--dur) var(--ease);flex:auto;grid-template-rows:1fr;min-height:0;display:grid}.panel-collapse[data-open=false]{grid-template-rows:0fr}.panel-body{min-height:0;overflow:hidden auto}.sheet-scrim{z-index:20;background:color-mix(in srgb, var(--bg-deep) 62%, transparent);-webkit-backdrop-filter:blur(3px);place-items:center;display:grid;position:fixed;inset:0}.sheet{max-width:720px;max-height:80vh;padding:var(--s-4) var(--s-5) var(--s-5);background:var(--panel);border:1px solid var(--accent-line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);font:var(--t-body) / 1.45 var(--font-ui);color:var(--ink-body);overflow-y:auto}.sheet-cols{gap:var(--s-4);margin-top:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.sheet-group-title{margin:0 0 var(--s-2);font-size:var(--t-eyebrow);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--accent);font-weight:600}.sheet-row{align-items:baseline;gap:var(--s-2);padding:2px 0;display:flex}.sheet-keys{flex:none;gap:3px;display:flex}.sheet-label{color:var(--ink-muted)}.sheet kbd{font:500 var(--t-small) var(--font-ui);color:var(--ink);background:var(--raise-2);border:1px solid var(--hairline);border-radius:var(--r-sm);padding:1px 6px}.cinematic-toggle{border:1px solid var(--hairline);background:var(--panel-b);color:var(--ink-body);font:inherit;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;pointer-events:auto;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:12px;display:flex}.cinematic-toggle:hover,.cinematic-toggle[aria-pressed=true]{border-color:var(--accent-bright);background:var(--panel-a)}.cinematic-toggle:focus-visible{outline:2px solid var(--accent-bright);outline-offset:3px}.cinematic-toggle kbd{opacity:.55;font-size:10px}.inspect-hud{z-index:4;border:1px solid var(--hairline);background:color-mix(in srgb, var(--panel-b) 88%, transparent);max-width:min(440px,62vw);color:var(--ink-body);font-size:var(--t-small);pointer-events:none;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:999px;padding:8px 16px 10px;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.inspect-hud-rung{color:var(--accent);font-size:var(--t-eyebrow);letter-spacing:.08em;text-transform:uppercase}.inspect-hud-scale{font-family:var(--font-mono);font-size:var(--t-value);color:var(--ink);margin:2px 0 4px}.inspect-hud-line{color:var(--ink-body)}.inspect-hud-note{color:var(--ink-muted);font-size:var(--t-eyebrow);margin-top:6px;line-height:1.4}.inspect-legend{font-family:var(--font-mono);font-size:var(--t-eyebrow);color:var(--ink-body);flex-wrap:wrap;justify-content:center;gap:8px 12px;margin-top:7px;display:flex}.inspect-legend-item{align-items:center;gap:5px;display:inline-flex}.inspect-swatch{width:8px;height:8px;box-shadow:0 0 0 1px var(--hairline);border-radius:50%;display:inline-block}.inspect-hud-focus{color:var(--ink-muted)}.insp-allele-toggle{gap:var(--s-1);display:inline-flex}.insp-allele-toggle .insp-tab{white-space:nowrap;padding-block:2px}.insp-sample{font-variant-numeric:tabular-nums;grid-template-columns:1.2fr 1.4fr 1fr .8fr .6fr;align-items:center;gap:2px 8px;display:grid}.insp-sample-row{display:contents}.insp-sample-row.on>span{color:var(--accent)}.insp-strip{flex:none;align-items:center;gap:8px;margin:-4px 0 10px;display:flex}.insp-strip-track{border-bottom:1px solid var(--hairline);flex:1;height:26px;position:relative}.insp-strip-stop{cursor:pointer;color:var(--ink-muted);white-space:nowrap;background:0 0;border:0;padding:0 2px;font-size:10px;position:absolute;bottom:4px;transform:translate(-50%)}.insp-strip-stop:first-of-type{transform:none}.insp-strip-stop:last-of-type{transform:translate(-100%)}.insp-strip-stop:hover{color:var(--ink-body)}.insp-strip-marker{background:var(--accent);border-radius:50%;width:6px;height:6px;transition:left 60ms linear;position:absolute;bottom:-3px;transform:translate(-50%)}.insp-strip-mag{text-align:right;min-width:7.5em;color:var(--ink-muted);font-variant-numeric:tabular-nums;flex:none;font-size:10px}
